{"version":3,"file":"main.js","mappings":"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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;;;;;;;;;AC1OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;;;;;;;;;;ACZA;AACA,4CAA4C,mBAAO,CAAC,qEAA0D;AAC9G,kCAAkC,mBAAO,CAAC,8DAAmD;AAC7F;AACA;AACA;AACA;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qBAAqB,mBAAmB,+BAA+B,oBAAoB,qBAAqB,GAAG,0BAA0B,8BAA8B,+BAA+B,oBAAoB,qBAAqB,GAAG,qBAAqB,wBAAwB,4BAA4B,0BAA0B,GAAG,mBAAmB,gBAAgB,yBAAyB,sBAAsB,uBAAuB,wBAAwB,4BAA4B,0BAA0B,kBAAkB,gCAAgC,KAAK,oBAAoB,gCAAgC,KAAK,GAAG,wBAAwB,eAAe,yBAAyB,oBAAoB,GAAG,2BAA2B,kCAAkC,yBAAyB,GAAG,yBAAyB,eAAe,qBAAqB,qBAAqB,yBAAyB,sBAAsB,sBAAsB,GAAG,mBAAmB;AACj4F;AACA;;;;;;;;;;;AC1HA;AACA,4CAA4C,mBAAO,CAAC,wEAA6D;AACjH,kCAAkC,mBAAO,CAAC,iEAAsD;AAChG;AACA;AACA;AACA;AACA;AACA,CAAC,OAAO,oHAAoH,UAAU,UAAU,6CAA6C,mBAAmB,gBAAgB,GAAG,mBAAmB;AACtP;AACA;;;;;;;;;;;ACVA;AACA,4CAA4C,mBAAO,CAAC,wEAA6D;AACjH,kCAAkC,mBAAO,CAAC,iEAAsD;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC,OAAO,gJAAgJ,WAAW,WAAW,WAAW,WAA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CA;;;;;;;;;;;AC1BA;AACA,4CAA4C,mBAAO,CAAC,wEAA6D;AACjH,kCAAkC,mBAAO,CAAC,iEAAsD;AAChG;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/components/brand/brand.component.ts","./src/components/components.module.ts","./src/components/event-filter/event-filter.component.ts","./src/components/hierarchy-cell/hierarchy-cell.component.ts","./src/components/hierarchy/hierarchy.component.ts","./src/components/hierarchylist-withnotes/hierarchylist-withnotes.component.ts","./src/components/image-viewer/image-viewer.ts","./src/components/loading/loading.component.ts","./src/components/no-notes/no-notes.component.ts","./src/components/note-detail/note-detail.component.ts","./src/components/note-list-cell/note-list-cell.component.ts","./src/components/note-list/note-list.component.ts","./src/components/photo/photo-only.ts","./src/data/AppError.ts","./src/data/EntityIndex.ts","./src/data/EntityManagerIndex.ts","./src/data/EntityServiceIndex.ts","./src/data/InternalTypes.ts","./src/data/User.ts","./src/data/entity/AppBaseEntity.ts","./src/data/entity/AppBaseEntityD.ts","./src/data/entity/dexie/Attachment.dexie.ts","./src/data/entity/dexie/CODE.dexie.ts","./src/data/entity/dexie/Event.dexie.ts","./src/data/entity/dexie/Hierarchy.dexie.ts","./src/data/entity/dexie/LeasonLearnt.dexie.ts","./src/data/entity/dexie/Note.dexie.ts","./src/data/entity/dexie/NoteComment.dexie.ts","./src/data/entity/dexie/NoteTag.dexie.ts","./src/data/entity/dexie/OBS.dexie.ts","./src/data/entity/dexie/Summary.dexie.ts","./src/data/entity/dexie/SyncLog.dexie.ts","./src/data/entity/dexie/User.dexie.ts","./src/data/entityManager/AppBaseEntityManager.ts","./src/data/entityManager/code-entity-manager.service.ts","./src/data/entityManager/hierarchy-entity-manager.service.ts","./src/data/entityManager/note-attachment-entity-manager.service.ts","./src/data/entityManager/note-comment-entity-manager.service.ts","./src/data/entityManager/note-entity-manager.service.ts","./src/data/entityManager/note-lessonlearnt-entity-manager.service.ts","./src/data/entityManager/note-tag-entity-manager.service.ts","./src/data/entityManager/obs-entity-manager.service.ts","./src/data/entityManager/summary-entity-manager.service.ts","./src/data/entityManager/synclog-entity-manager.service.ts","./src/data/entityManager/user-entity-manager.service.ts","./src/data/entityService/AppBaseService.ts","./src/data/entityService/code.service.ts","./src/data/entityService/hierarchy.service.ts","./src/data/entityService/notes.service.ts","./src/data/entityService/obs.service.ts","./src/data/entityService/summary.service.ts","./src/data/entityService/user.service.ts","./src/data/helper/attachment-helper.service.ts","./src/data/helper/hierarchy-helper.service.ts","./src/data/helper/profile-helper.service.ts","./src/data/helper/user-helper.service.ts","./src/data/model/Profile.ts","./src/data/otherService/EventService.ts","./src/data/otherService/IdentityService.ts","./src/data/otherService/ProfileService.ts","./src/data/otherService/event-entity-manager.service.ts","./src/environments/environment.test.ts","./src/guard/DBGuard.ts","./src/guard/NoticeGuard.ts","./src/guard/ProfileGuard.ts","./src/guard/SyncGuard.ts","./src/inteceptors/token.interceptor.ts","./src/interface/SyncConfig.ts","./src/main.ts","./src/pages/hierarchy/hierarchy.module.ts","./src/pages/hierarchy/hierarchy.page.ts","./src/pages/notice/notice.module.ts","./src/pages/notice/notice.page.ts","./src/services/applicationInsights.service.ts","./src/services/auth.service.ts","./src/services/check-version-update.service.ts","./src/services/dexie.service.ts","./src/services/loading.service.ts","./src/services/network.service.ts","./src/services/sync/SyncService.ts","./src/shared/MTAErrorHandler.ts","./src/shared/adal/adal-model.ts","./src/shared/adal/adal.ts","./src/shared/appStorage/app-storage.ts","./src/shared/constants.ts","./src/shared/event.ts","./src/shared/loading-controller-handler.ts","./src/shared/platform.ts","./src/shared/services/camera.provider.ts","./src/shared/shared.module.ts","./node_modules/@ionic/core/dist/esm/ lazy ^\\.\\/.*\\.entry\\.js$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$ namespace object","./node_modules/@stencil/core/internal/client/ lazy ^\\.\\/.*\\.entry\\.js.*$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$ strict namespace object","./src/app/app.component.scss","./src/components/brand/brand.component.scss","./src/components/event-filter/event-filter.component.scss","./src/components/hierarchy-cell/hierarchy-cell.component.scss","./src/components/hierarchy/hierarchy.component.scss","./src/components/hierarchylist-withnotes/hierarchylist-withnotes.component.scss","./src/components/loading/loading.component.scss","./src/components/no-notes/no-notes.component.scss","./src/components/note-detail/note-detail.component.scss","./src/components/note-list-cell/note-list-cell.component.scss","./src/components/note-list/note-list.component.scss","./src/components/photo/photo-only.scss","./src/pages/hierarchy/hierarchy.page.scss","./src/pages/notice/notice.page.scss","./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { PreloadAllModules, RouterModule, Routes } from '@angular/router';\nimport { syncGuard } from 'src/guard/SyncGuard';\nimport { profileGuard } from 'src/guard/ProfileGuard';\nimport { noticeGuard } from 'src/guard/NoticeGuard';\nimport { dbGuard } from 'src/guard/DBGuard';\nimport { MsalGuard } from '@azure/msal-angular';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'home', pathMatch: 'full' },\n {\n path: 'home',\n canActivate: [MsalGuard, dbGuard, noticeGuard],\n loadChildren: () =>\n import('../pages/home/home.module').then((m) => m.HomePageModule),\n },\n {\n path: 'home/:provider/:eventId/:id',\n canActivate: [MsalGuard, dbGuard],\n loadChildren: () =>\n import('../pages/home/home.module').then((m) => m.HomePageModule),\n },\n\n {\n path: 'view-history/:provider/:eventId',\n canActivate: [MsalGuard, syncGuard, profileGuard],\n loadChildren: () =>\n import('../pages/view-history/view-history.module').then(\n (m) => m.ViewHistoryPageModule\n ),\n },\n {\n path: 'view-notes/:provider/:eventId/:id',\n canActivate: [MsalGuard, syncGuard, profileGuard],\n loadChildren: () =>\n import('../pages/view-notes/view-notes.module').then(\n (m) => m.ViewNotesPageModule\n ),\n },\n {\n path: 'add-notes/:provider/:eventId',\n canActivate: [MsalGuard, syncGuard, profileGuard],\n loadChildren: () =>\n import('../pages/add-notes/add-notes.module').then(\n (m) => m.AddNotesPageModule\n ),\n },\n\n {\n path: 'update-lessonlearnt/:provider/:eventId',\n canActivate: [MsalGuard, syncGuard, profileGuard],\n loadChildren: () =>\n import('../pages/update-lessonlearnt/update-lessonlearnt.module').then(\n (m) => m.UpdateLessonLearntPageModule\n ),\n },\n\n {\n path: 'add-notes-id/:provider/:eventId/:id',\n canActivate: [MsalGuard, syncGuard, profileGuard],\n loadChildren: () =>\n import('../pages/add-notes/add-notes.module').then(\n (m) => m.AddNotesPageModule\n ),\n },\n\n {\n path: 'note-details/:provider/:eventId/:id',\n canActivate: [MsalGuard, dbGuard, profileGuard],\n loadChildren: () =>\n import('../pages/note-details/note-details.module').then(\n (m) => m.NoteDetailsPageModule\n ),\n },\n {\n path: 'action-image',\n canActivate: [MsalGuard, dbGuard, profileGuard],\n loadChildren: () =>\n import('../pages/action-image/action-image.module').then(\n (m) => m.ActionImagePageModule\n ),\n \n },\n {\n path: 'hierarchy/:provider/:eventId',\n canActivate: [MsalGuard, syncGuard],\n loadChildren: () =>\n import('../pages/hierarchy/hierarchy.module').then(\n (m) => m.HierarchyPageModule\n ),\n },\n {\n path: 'events',\n loadChildren: () =>\n import('../pages/events/events.module').then((m) => m.EventsPageModule),\n },\n {\n path: 'notice',\n loadChildren: () =>\n import('../pages/notice/notice.module').then((m) => m.NoticePageModule),\n },\n {\n path: 'settings',\n loadChildren: () =>\n import('../pages/settings/settings.module').then(\n (m) => m.SettingsPageModule\n ),\n },\n];\n\n@NgModule({\n imports: [\n RouterModule.forRoot(routes, {\n preloadingStrategy: PreloadAllModules,\n \n }),\n ],\n exports: [RouterModule],\n})\nexport class AppRoutingModule {}\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { Platform } from '@ionic/angular';\n\nimport { AppPlatform } from 'src/data/InternalTypes';\nimport { LoadingService } from 'src/services/loading.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { CheckVersionUpdateService } from 'src/services/check-version-update.service';\nimport { MSAL_GUARD_CONFIG, MsalBroadcastService, MsalGuardConfiguration, MsalService } from '@azure/msal-angular';\nimport { Subject, filter, takeUntil } from 'rxjs';\nimport { AuthenticationResult, EventMessage, EventType, InteractionStatus } from '@azure/msal-browser';\nimport { AuthService } from 'src/services/auth.service';\nimport { ApplicationInsightsService } from 'src/services/applicationInsights.service';\n\n@Component({\n selector: 'app-root',\n templateUrl: 'app.component.html',\n styleUrls: ['app.component.scss']\n})\nexport class AppComponent implements OnInit {\n\n constructor(\n @Inject(MSAL_GUARD_CONFIG) private msalGuardConfig: MsalGuardConfiguration,\n private platform: Platform, \n private authService: MsalService,\n private msalBroadcastService: MsalBroadcastService,\n private translate: TranslateService,\n private update: CheckVersionUpdateService,\n private auth:AuthService,\n private appInsightsService: ApplicationInsightsService\n ) {\n this.update.checkForVersionUpdates();\n const user = this.authService.instance.getAllAccounts();\n if(user && user.length===1){ \n this.appInsightsService.setUser(user[0].name);\n } \n }\n\n ngOnInit(): void {\n this.initializeApp();\n this.register();\n }\n private readonly _destroying$ = new Subject();\n\n register(){\n if(this._checkLoginValid()){\n this.msalBroadcastService.msalSubject$\n .pipe(\n filter((msg: EventMessage) => msg.eventType === EventType.LOGIN_SUCCESS),\n )\n .subscribe((result: EventMessage) => {\n const payload = result.payload as AuthenticationResult;\n this.authService.instance.setActiveAccount(payload.account);\n this.auth.loginWithAD();\n this._destroying$.next();\n this._destroying$.complete(); \n });\n \n this.msalBroadcastService.inProgress$\n .pipe(\n filter((status: InteractionStatus) => status === InteractionStatus.None),\n takeUntil(this._destroying$)\n )\n .subscribe(() => {\n this._destroying$.next();\n this._destroying$.complete();\n })\n }\n }\n\n private _checkLoginValid(): boolean {\n\t\t// added to satisy edge case where:\n\t\t// there's a valid login, but the settingsservice user context disappeared.\n\t\tconst accountsMsal = this.authService.instance.getAllAccounts();\n if(accountsMsal.length > 0){\n return false\n }\n return true;\n }\n\n\n initializeApp() {\n this.platform.ready().then(() => {\n \n this.translate.addLangs(['en', 'ru', 'kaz']);\n this.translate.setDefaultLang('en');\n\n const lang = localStorage.getItem('language');\n\n if (lang) {\n this.translate.use(lang);\n } else {\n this.translate.use('en');\n }\n });\n }\n\n}\n","import {\n HttpClient,\n HttpClientModule,\n HTTP_INTERCEPTORS\n} from '@angular/common/http';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { NgModule, APP_INITIALIZER, ErrorHandler, isDevMode, Component } from '@angular/core';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { RouteReuseStrategy } from '@angular/router';\nimport { IonicModule, IonicRouteStrategy } from '@ionic/angular';\nimport { ComponentsModule } from 'src/components/components.module';\nimport { TokenInterceptor } from '../inteceptors/token.interceptor';\nimport { AuthService } from './../../src/services/auth.service';\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { environment } from 'src/environments/environment';\nimport { HierarchyPageModule } from 'src/pages/hierarchy/hierarchy.module';\nimport { InAppBrowser } from '@ionic-native/in-app-browser/ngx';\nimport { NoticePageModule } from 'src/pages/notice/notice.module';\nimport { SharedModule } from 'src/shared/shared.module';\nimport { MTAErrorHandler } from 'src/shared/MTAErrorHandler';\nimport { CameraProvider } from 'src/shared/services/camera.provider';\nimport { File } from '@ionic-native/file/ngx';\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { SharedPlatformProvider } from 'src/shared/platform';\nimport { MsalBroadcastService, MsalGuard, MsalGuardConfiguration, MsalInterceptor, MsalInterceptorConfiguration, MsalModule, MsalRedirectComponent, MsalService, MSAL_GUARD_CONFIG, MSAL_INSTANCE, MSAL_INTERCEPTOR_CONFIG } from '@azure/msal-angular';\nimport { BrowserCacheLocation, InteractionType, IPublicClientApplication, LogLevel, PublicClientApplication } from '@azure/msal-browser';\nimport { ServiceWorkerModule } from '@angular/service-worker';\nimport { IonicSelectableComponent } from 'ionic-selectable';\n\nexport function createTranslateLoader(http: HttpClient): TranslateHttpLoader {\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\n}\n\nconst isIE = window.navigator.userAgent.indexOf('MSIE') > -1 || window.navigator.userAgent.indexOf('Trident/') > -1; // Remove this line to use Angular Universal\n\nexport function loggerCallback(logLevel: LogLevel, message: string) {\n console.log( message );\n}\n\nexport function MSALInstanceFactory(): IPublicClientApplication {\n return new PublicClientApplication({ \n\t\tauth: {\n clientId: environment.adalConfig.clientId,\n authority: environment.adalConfig.authority,\n redirectUri: '/',\n postLogoutRedirectUri: '/',\t\n\t\t},\n\t\tcache: { \n cacheLocation: BrowserCacheLocation.LocalStorage, \n\t\t\tstoreAuthStateInCookie: isIE, // set to true for IE 11. Remove this line to use Angular Universal\n\t\t},\n\t\tsystem: { \n\t\t\tallowRedirectInIframe: true, \n\t\t\tloggerOptions: { \n\t\t\t\tloggerCallback, \n\t\t\t\tlogLevel: LogLevel.Info, \n\t\t\t\tpiiLoggingEnabled: false, \n\t\t\t}, \n\t\t}, \n\t}); \n} \n\nexport function MSALInterceptorConfigFactory(): MsalInterceptorConfiguration {\n\tconst protectedResourceMap = new Map>();\n\tprotectedResourceMap.set('https://graph.microsoft.com/v1.0/me', [\"openid\", \"offline_access\", environment.scope]\n\t);\n\treturn {\n\t\tinteractionType: InteractionType.Redirect,\n\t\tprotectedResourceMap,\n\t};\n}\n\nexport function MSALGuardConfigFactory(): MsalGuardConfiguration {\n\treturn {\n\t\tinteractionType: InteractionType.Redirect,\n\t\tauthRequest: {\n\t\t\tscopes: [\"openid\", \"offline_access\", environment.scope],\n\t\t},\n\t\tloginFailedRoute: \"/login-failed\",\n\t};\n}\n\n@NgModule({\n declarations: [AppComponent],\n imports: [\n BrowserModule,\n IonicModule.forRoot(),\n AppRoutingModule,\n HttpClientModule,\n BrowserAnimationsModule,\n ComponentsModule,\n HierarchyPageModule,\n NoticePageModule,\n IonicSelectableComponent,\n SharedModule,\n MsalModule,\n TranslateModule.forRoot({\n defaultLanguage: 'en',\n loader: {\n provide: TranslateLoader,\n useFactory: (createTranslateLoader),\n deps: [HttpClient]\n }\n }),\n ],\n providers: [\n\n AuthService,\n SharedPlatformProvider,\n \n HttpClient, \n InAppBrowser, \n CameraProvider, \n File,\n { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },\n { provide: ErrorHandler, useClass: environment.useappInsights? MTAErrorHandler: ErrorHandler }, \n {\n provide: HTTP_INTERCEPTORS,\n useClass: TokenInterceptor,\n multi: true\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: MsalInterceptor,\n multi: true\n },\n {\n provide: MSAL_INSTANCE,\n useFactory: MSALInstanceFactory,\n },\n {\n provide: MSAL_GUARD_CONFIG,\n useFactory: MSALGuardConfigFactory,\n },\n {\n provide: MSAL_INTERCEPTOR_CONFIG,\n useFactory: MSALInterceptorConfigFactory,\n },\n MsalService,\n MsalGuard,\n MsalBroadcastService,\n ],\n bootstrap: [AppComponent, MsalRedirectComponent],\n exports:[TranslateModule,IonicSelectableComponent]\n})\nexport class AppModule { }\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'app-brand',\n templateUrl: './brand.component.html',\n styleUrls: ['./brand.component.scss'],\n})\nexport class BrandComponent {\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { HierarchyCellComponent } from './hierarchy-cell/hierarchy-cell.component';\nimport { NoteDetailComponent } from './note-detail/note-detail.component';\nimport { HierarchyListWithnotesComponent } from './hierarchylist-withnotes/hierarchylist-withnotes.component';\nimport { SelectButtonModule } from 'primeng/selectbutton';\nimport { LoadingComponent } from './loading/loading.component';\nimport { BlockUIModule } from 'primeng/blockui';\nimport { NoteListComponent } from './note-list/note-list.component';\nimport { FormsModule } from '@angular/forms';\nimport { BrandComponent } from './brand/brand.component';\nimport { NoNotesComponent } from './no-notes/no-notes.component';\nimport { HierarchyComponent } from './hierarchy/hierarchy.component';\nimport { NoteListCellComponent } from './note-list-cell/note-list-cell.component';\nimport { EventFilterComponent } from './event-filter/event-filter.component';\nimport { QuillModule } from 'ngx-quill';\nimport { PhotoOnlyComponent } from './photo/photo-only';\nimport { ImageViewerComponent } from './image-viewer/image-viewer';\nimport { SharedModule } from 'src/shared/shared.module';\nimport { ButtonModule } from \"primeng/button\";\nimport { WebcamModule } from 'ngx-webcam';\n@NgModule({\n declarations: [\n HierarchyCellComponent,\n HierarchyListWithnotesComponent,\n NoteDetailComponent,\n LoadingComponent,\n NoteListComponent,\n BrandComponent,\n NoNotesComponent,\n HierarchyComponent,\n NoteListCellComponent,\n EventFilterComponent,\n PhotoOnlyComponent,\n ImageViewerComponent,\n ],\n imports: [\n IonicModule,\n CommonModule,\n SelectButtonModule,\n BlockUIModule,\n ButtonModule,\n QuillModule.forRoot(),\n FormsModule,\n SharedModule,\n WebcamModule\n ],\n exports: [\n NoteListComponent,\n HierarchyCellComponent,\n HierarchyListWithnotesComponent,\n NoteDetailComponent,\n SelectButtonModule,\n ButtonModule,\n LoadingComponent,\n BrandComponent,\n NoNotesComponent,\n HierarchyComponent,\n NoteListCellComponent,\n EventFilterComponent,\n PhotoOnlyComponent,\n ]\n})\nexport class ComponentsModule { }\n","\nimport { Component, EventEmitter } from '@angular/core';\nimport { PopoverController, NavParams } from '@ionic/angular';\n\n@Component({\n selector: 'app-event-filter',\n templateUrl: './event-filter.component.html',\n styleUrls: ['./event-filter.component.scss'],\n})\nexport class EventFilterComponent {\n\n public archive = [{ val: 'Archived projects', isChecked: false }];\n private filterChecked: EventEmitter< any >;\n\n constructor(private popoverCtrl: PopoverController, navParams: NavParams) {\n this.filterChecked = navParams.data.theEmitter;\n this.archive[0].isChecked = navParams.data.status;\n }\n\n applyFilter(value: boolean) {\n this.filterChecked.emit(value);\n }\n\n closePopover() {\n this.popoverCtrl.dismiss();\n }\n\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n OnChanges,\n SimpleChanges,\n DoCheck,\n} from '@angular/core';\nimport { HierarchySelectionMode } from 'src/data/InternalTypes';\nimport { Observable, from } from 'rxjs';\nimport { HierarchyEntityManagerService } from 'src/data/entityManager/hierarchy-entity-manager.service';\nimport { Router } from '@angular/router';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\n\n@Component({\n selector: 'app-hierarchy-cell',\n templateUrl: './hierarchy-cell.component.html',\n styleUrls: ['./hierarchy-cell.component.scss'],\n})\nexport class HierarchyCellComponent implements OnChanges, DoCheck {\n @Input() hierarchy: HierarchyDexie;\n @Input() mode: HierarchySelectionMode = HierarchySelectionMode.single;\n @Input() hideDeleted: boolean;\n @Output() selectedHierarchy = new EventEmitter();\n @Output() expandedHierarchy = new EventEmitter();\n noteCount$: Observable;\n isDisplayed = false;\n\n constructor(\n private router: Router,\n private hierarchyEntityManager: HierarchyEntityManagerService\n ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n for (const propName in changes) {\n if (propName === 'hierarchy') {\n const chng = changes[propName];\n this.hierarchy = chng.currentValue;\n this.updateView();\n }\n }\n }\n\n ngDoCheck() {\n this.updateView();\n }\n\n expandArrow() {\n this.hierarchy.isExpanded = !this.hierarchy.isExpanded;\n this.expandedHierarchy.emit(this.hierarchy);\n }\n\n getStyle() {\n return this.hierarchy.isExpanded ? 'selected' : 'unselected';\n }\n\n checkHierarchy() {\n this.selectedHierarchy.emit(this.hierarchy);\n }\n\n updateView() {\n this.isDisplayed =\n (this.hierarchy.parent === undefined ||\n this.hierarchy.parent.isExpanded) &&\n (this.hierarchy.isMatched === undefined || this.hierarchy.isMatched);\n\n if (\n this.mode === HierarchySelectionMode.viewWithNotes &&\n this.noteCount$ === undefined &&\n (this.hierarchy.parent === undefined || this.hierarchy.parent.isExpanded)\n ) {\n this.noteCount$ = from(\n this.hierarchyEntityManager.getNotesCountForHierarchy(this.hierarchy)\n );\n }\n }\n\n viewHierarchyNotes() {\n this.router.navigate([\n 'view-notes',\n this.hierarchy.Provider,\n this.hierarchy.EventId,\n this.hierarchy.ForeignId,\n ]);\n }\n}\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { HierarchySelectionMode } from 'src/data/InternalTypes';\nimport { Observable, from } from 'rxjs';\nimport { HierarchyHelperService } from 'src/data/helper/hierarchy-helper.service';\nimport { LoadingController } from '@ionic/angular';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ProfileHelperService } from 'src/data/helper/profile-helper.service';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\n\n@Component({\n selector: 'app-hierarchy-component',\n templateUrl: './hierarchy.component.html',\n styleUrls: ['./hierarchy.component.scss'],\n})\nexport class HierarchyComponent implements OnInit {\n @Input() eventId: number;\n @Input() provider: string;\n @Input() onlyActiveHierarchies: boolean;\n @Input() isFromSavedFilter: boolean;\n\n // hierarchy view mode, single selection or multi-selection\n @Input() mode: HierarchySelectionMode = HierarchySelectionMode.single;\n\n // multi-selection mode used fields\n @Input() selectedHierarchies: HierarchyDexie[]; // all selected hierarchies\n\n // multi-selection mode used fields\n @Input() selectedCategories: string[]; // all selected categories\n\n @Input() hideDeleted: boolean;\n\n @Output() changedHierarchies: EventEmitter =\n new EventEmitter();\n\n // Hierarchy view used fields\n hierarchyObservable: Observable;\n flattenedHierarchyArray: HierarchyDexie[];\n treeItems = true;\n filterHierarchyList: HierarchyDexie[];\n\n initialHierarchyList: HierarchyDexie[];\n searchQuery: string;\n\n // single-selection mode used fields\n selectedHierarchyId: string; // selected hierarchy id for the single-selection mode\n selectedHierarchy: HierarchyDexie; // selected hierarchy object for the single-selection mode\n selectedHierarchyPath: HierarchyDexie[]; // hierarchy path for selected hierarchy in the single-selection mode\n\n constructor(\n private hierarchyHelper: HierarchyHelperService,\n private loadingController: LoadingController,\n private translate: TranslateService,\n private profileService: ProfileHelperService\n ) {}\n\n ngOnInit() {\n this.selectedHierarchies = this.selectedHierarchies\n ? this.selectedHierarchies\n : [];\n this.flattenedHierarchyArray = [];\n this.selectedHierarchyPath = [];\n this.hierarchyObservable = from(\n this.hierarchyHelper.lazyLoadingFlattenHierarchy(\n this.provider,\n this.eventId,\n this.onlyActiveHierarchies,\n this.eventId\n )\n );\n\n this.hierarchyObservable.subscribe((hList) => {\n this.flattenedHierarchyArray = hList;\n if (this.isFromSavedFilter) {\n let storedHierarchyArray = JSON.parse(\n localStorage.getItem('hierarchyArray')\n );\n storedHierarchyArray =\n storedHierarchyArray === null ? [] : storedHierarchyArray;\n storedHierarchyArray = storedHierarchyArray.find(\n (x) => x.projectId === this.profileService.profile.preferredEventId\n );\n if (storedHierarchyArray) {\n this.flattenedHierarchyArray = storedHierarchyArray.hierarchy;\n this.hierarchyHelper.flattenedHierarchyArray =\n storedHierarchyArray.hierarchy;\n }\n }\n from(\n this.hierarchyHelper.getHierarchyForEnvent(this.provider, this.eventId)\n ).subscribe((hList2) => {\n this.initialHierarchyList = hList2;\n });\n });\n }\n\n async searchWbs() {\n if (this.searchQuery === '') {\n this.filterHierarchyList = [];\n this.treeItems = true;\n } else {\n this.filterHierarchyList = [];\n this.treeItems = false;\n this.initialHierarchyList.forEach((element) => {\n if (this.isMatch(element, this.searchQuery)) {\n this.filterHierarchyList.push(element);\n }\n });\n }\n }\n\n isMatch(item: HierarchyDexie, toFind: string): boolean {\n if (\n (item.Name === null || typeof item.Name === 'undefined'\n ? ''\n : item.Name.toLowerCase()\n ).includes(toFind.toLowerCase()) ||\n (item.Category === null || typeof item.Category === 'undefined'\n ? ''\n : item.Category.toLowerCase()\n ).includes(toFind.toLowerCase())\n ) {\n return true;\n }\n\n return false;\n }\n\n async selectWbs(hierarchy?: HierarchyDexie) {\n if (this.selectedHierarchyId) {\n this.filterHierarchyList.forEach((element) => {\n if (\n this.selectedHierarchyId !== undefined &&\n element.ForeignId === parseInt(this.selectedHierarchyId, 10)\n ) {\n this.selectedHierarchy = element;\n }\n });\n\n this.selectedHierarchies = [this.selectedHierarchy];\n this.changedHierarchies.emit(this.selectedHierarchies);\n }\n }\n\n async searchItemList() {\n // Note: Loading service does not work in model controller\n const loading = await this.loadingController.create({\n message: this.translate.instant('SHARED.Searching'),\n });\n loading.present();\n this.hierarchyHelper\n .filter(this.searchQuery, this.onlyActiveHierarchies)\n .then(() => {\n loading.dismiss();\n });\n }\n\n async selectHierarchy(hierarchy?: HierarchyDexie) {\n switch (this.mode) {\n case HierarchySelectionMode.single:\n this._onSingleHierarchySelected();\n break;\n case HierarchySelectionMode.multiple:\n this._onMultipleHierarchySelected(hierarchy);\n break;\n default:\n break;\n }\n }\n\n private _onSingleHierarchySelected(): void {\n if (!this.selectedHierarchyId) {\n this.selectedHierarchyPath = [];\n }\n // get hierarchy from selected hierarchy id\n for (const flattenedHierarchy of this.flattenedHierarchyArray) {\n if (flattenedHierarchy.isExpanded) {\n this.selectedHierarchyPath.push(flattenedHierarchy);\n }\n if (\n this.selectedHierarchyId !== undefined &&\n flattenedHierarchy.ForeignId === parseInt(this.selectedHierarchyId, 10)\n ) {\n this.selectedHierarchy = flattenedHierarchy;\n break;\n }\n }\n\n if (this.selectedHierarchyId !== undefined) {\n this.selectedHierarchies = [this.selectedHierarchy];\n this.changedHierarchies.emit(this.selectedHierarchies);\n }\n }\n\n private _onMultipleHierarchySelected(hierarchy?: HierarchyDexie): void {\n let foundFlag = false;\n for (let index = 0; index < this.selectedHierarchies.length; index++) {\n const element = this.selectedHierarchies[index];\n if (element.ForeignId === hierarchy.ForeignId) {\n foundFlag = true;\n if (!hierarchy.isChecked) {\n // remove the hierarchy from the array since it is un-checked\n this.selectedHierarchies.splice(index, 1);\n break;\n }\n }\n }\n if (!foundFlag) {\n this.selectedHierarchies.push(hierarchy);\n } else {\n hierarchy.isChecked = false;\n }\n this.changedHierarchies.emit(this.selectedHierarchies);\n }\n\n expandHierarchy(hierarchy: HierarchyDexie) {\n switch (this.mode) {\n case HierarchySelectionMode.single:\n // only get the selected hierarchy path for the single mode\n this.selectedHierarchyPath = [];\n this.hierarchyHelper.getHierarchyPathForHierarchy(\n hierarchy,\n this.selectedHierarchyPath\n );\n break;\n case HierarchySelectionMode.multiple:\n break;\n\n default:\n break;\n }\n\n // TODO: Loading sign does not working on pop up\n\n this.hierarchyHelper\n .lazyLoadingFlattenHierarchy(\n this.provider,\n hierarchy.EventId,\n this.onlyActiveHierarchies,\n hierarchy.ForeignId\n )\n .then((ret) => {\n if (!hierarchy.isExpanded) {\n this.cllapseChildHierarchyPath(hierarchy);\n } else {\n // collapse all other hierarchy path\n const parentHierarchy = hierarchy.parent;\n if (parentHierarchy && parentHierarchy.children) {\n parentHierarchy.children.forEach((childHierarchy) => {\n if (childHierarchy.ForeignId !== hierarchy.ForeignId) {\n // sibling hierarchy\n childHierarchy.isExpanded = false;\n this.cllapseChildHierarchyPath(childHierarchy);\n }\n });\n }\n }\n\n this.flattenedHierarchyArray = ret;\n });\n }\n\n cllapseChildHierarchyPath(hierarchy: HierarchyDexie) {\n if (hierarchy.children) {\n hierarchy.children.forEach((childHierarchy) => {\n childHierarchy.isExpanded = false;\n this.cllapseChildHierarchyPath(childHierarchy);\n });\n } else {\n return;\n }\n }\n}\n","import { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\nimport { NoteEntityManagerService } from 'src/data/entityManager/note-entity-manager.service';\nimport { NoteFilterAuthorType } from 'src/data/InternalTypes';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { NoteCommentEntityManagerService } from 'src/data/entityManager/note-comment-entity-manager.service';\nimport { NoteLessonlearntEntityManagerService } from 'src/data/entityManager/note-lessonlearnt-entity-manager.service';\nimport { NoteTagEntityManagerService } from 'src/data/entityManager/note-tag-entity-manager.service';\nimport { Constants } from '../../shared/constants';\nimport { LoadingService } from 'src/services/loading.service';\nimport { NoteAttachmentEntityManagerService } from 'src/data/EntityManagerIndex';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { NoteDexie } from 'src/data/entity/dexie/Note.dexie';\n\n@Component({\n selector: 'app-hierarchylist-withnotes',\n templateUrl: './hierarchylist-withnotes.component.html',\n styleUrls: ['./hierarchylist-withnotes.component.scss'],\n})\nexport class HierarchyListWithnotesComponent implements OnInit {\n constructor(\n private noteEntityManager: NoteEntityManagerService,\n private noteCommentEntityManager: NoteCommentEntityManagerService,\n private noteLessonLearntEntityManager: NoteLessonlearntEntityManagerService,\n private noteTagEntityManager: NoteTagEntityManagerService,\n private adalService: ADALProvider,\n private loagingService: LoadingService,\n private noteAttachmentEntityManager: NoteAttachmentEntityManagerService\n ) {}\n\n @Input() hierarchy: HierarchyDexie;\n @Input() noteAuthor: NoteFilterAuthorType;\n @Input() showEvenIfNoNotes = false;\n @Input() isCompleted = false;\n @Input() isListItemOpened: boolean;\n @Output() addNote: EventEmitter =\n new EventEmitter();\n notes: NoteDexie[];\n sliceNotes: NoteDexie[];\n firstNote: NoteDexie;\n\n notesCount: number;\n offset: number;\n showAddMoreButton: boolean;\n // tslint:disable-next-line: no-inferrable-types\n @Input() expand: boolean = false;\n @Input() collapse = true;\n\n ngOnInit() {\n this.offset = 0;\n if (\n this.hierarchy &&\n this.hierarchy.notes &&\n this.hierarchy.notes.length > 0\n ) {\n this.notes = this.hierarchy.notes;\n this.notesCount = this.notes.length;\n if (this.notesCount > Constants.pagingSize) {\n this.showAddMoreButton = true;\n }\n this.getNotesCommentAndTagFirst();\n } else {\n this.getNotesForHierarchy().then((res) => {\n this.notes = res;\n this.notesCount = this.notes.length;\n if (this.notesCount > Constants.pagingSize) {\n this.showAddMoreButton = true;\n }\n this.getNotesCommentAndTagFirst();\n });\n }\n }\n\n async viewNotes() {\n this.loagingService.present();\n if (this.expand === false) {\n await this.getNotesCommentAndTag();\n }\n this.loagingService.dismiss();\n this.expand = true;\n this.collapse = false;\n }\n\n async hideNotes() {\n await this.hideNotesCommentAndTag();\n this.expand = false;\n this.collapse = true;\n }\n\n async showMore() {\n this.sliceNotes = this.sliceNotes.concat(\n this.notes.slice(this.offset, Constants.pagingSize + this.offset)\n );\n this.offset = this.offset + Constants.pagingSize;\n if (this.notesCount <= this.offset) {\n this.showAddMoreButton = false;\n }\n }\n\n async getNotesCommentAndTagFirst() {\n if (this.sliceNotes === undefined) {\n if (this.notes !== undefined) {\n // just one query to get all comment\n const comments =\n await this.noteCommentEntityManager.getCommentsForNotes(this.notes);\n // just one query to get all lesson Learnts\n const lessonlearnts =\n await this.noteLessonLearntEntityManager.getLessonLearntForNotes(\n this.notes\n );\n // just one query to get all tags\n const tags = await this.noteTagEntityManager.getTagsForNotes(\n this.notes\n );\n // just one query to get all attachments\n const attachments =\n await this.noteAttachmentEntityManager.getAttachmentsForNotes(\n this.notes\n );\n for (const note of this.notes) {\n note.Comments = comments.filter(\n (comment) => comment.NoteId === note.Id\n );\n note.Lessonlearnt = lessonlearnts.filter(\n (lessonlearnt) => lessonlearnt.NoteId === note.Id\n );\n note.Tags = tags\n .filter((tag) => tag.NoteId === note.Id)\n .map((tag) => tag.Tag);\n note.Attachments = attachments.filter(\n (attachment) => attachment.NoteId.toString() === note.Id\n );\n }\n this.firstNote = this.notes[0];\n this.offset = this.offset + 1;\n }\n }\n }\n\n async getNotesCommentAndTag() {\n if (this.notes !== undefined) {\n if (this.sliceNotes === undefined) {\n // just one query to get all comment\n const comments =\n await this.noteCommentEntityManager.getCommentsForNotes(this.notes);\n // just one query to get all lesson learnt\n const lessonlearnts =\n await this.noteLessonLearntEntityManager.getLessonLearntForNotes(\n this.notes\n );\n // just one query to get all tags\n const tags = await this.noteTagEntityManager.getTagsForNotes(\n this.notes\n );\n // just one query to get all attachments\n const attachments =\n await this.noteAttachmentEntityManager.getAttachmentsForNotes(\n this.notes\n );\n for (const note of this.notes) {\n note.Comments = comments.filter(\n (comment) => comment.NoteId === note.Id\n );\n note.Lessonlearnt = lessonlearnts.filter(\n (lessonlearnt) => lessonlearnt.NoteId === note.Id\n );\n note.Tags = tags\n .filter((tag) => tag.NoteId === note.Id)\n .map((tag) => tag.Tag);\n note.Attachments = attachments.filter(\n (attachment) => attachment.NoteId.toString() === note.Id\n );\n }\n }\n this.sliceNotes = this.notes.slice(this.offset, Constants.pagingSize);\n this.offset = this.offset + Constants.pagingSize;\n }\n }\n\n async hideNotesCommentAndTag() {\n this.sliceNotes = [];\n this.offset = 1;\n }\n\n async getNotesForHierarchy(): Promise {\n try {\n const user =\n this.noteAuthor === NoteFilterAuthorType.me\n ? this.adalService.getUPN()\n : null;\n const res = await this.noteEntityManager\n .getNotesForHierarchy(this.hierarchy, user);\n return res;\n } catch(error){\n throw error;\n }\n\n}\n\n addNotes() {\n this.addNote.emit(this.hierarchy);\n }\n}\n","import { NavParams, ModalController } from '@ionic/angular';\nimport { Component } from '@angular/core';\nimport { AttachmentDexie } from 'src/data/entity/dexie/Attachment.dexie';\n\n@Component({\n selector: 'image-viewer',\n templateUrl: 'image-viewer.html',\n})\nexport class ImageViewerComponent {\n id: string | number;\n b64: string;\n\n private attachment: AttachmentDexie;\n\n constructor(private modalController: ModalController, navParams: NavParams) {\n this.attachment = navParams.data as AttachmentDexie;\n this.b64 = this.attachment\n ? this.attachment.FormatedFile\n : navParams.get('b64');\n }\n\n close(): void {\n this.modalController.dismiss();\n }\n}\n","import { Component } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { LoadingService } from 'src/services/loading.service';\n\n@Component({\n selector: 'app-loading',\n templateUrl: './loading.component.html',\n styleUrls: ['./loading.component.scss']\n})\nexport class LoadingComponent {\n private _title = '';\n public get title() {\n this._title = this.translate.instant('SHARED.Loading');\n return this._title;\n }\n\n private _isVisible = false;\n public get isVisible(): boolean {\n this._isVisible = this.loadingService.isVisible();\n return this._isVisible;\n }\n\n constructor(private loadingService: LoadingService, private translate: TranslateService) {\n this._title = this.translate.instant('SHARED.Loading');\n this._isVisible = this.loadingService.isVisible();\n }\n}\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { ProfileHelperService } from 'src/data/helper/profile-helper.service';\n\n@Component({\n selector: 'app-no-notes',\n templateUrl: './no-notes.component.html',\n styleUrls: ['./no-notes.component.scss'],\n})\nexport class NoNotesComponent implements OnInit {\n @Input() hierarchy: HierarchyDexie;\n @Output()\n addNote: EventEmitter =\n new EventEmitter();\n isCompleted = false;\n\n get displayMessage(): string {\n const message = this.translate.instant('SHARED.NoTurnover');\n return this.hierarchy && this.hierarchy.Name\n ? message +\n this.translate.instant('SHARED.For') +\n this.hierarchy.Name +\n this.translate.instant('SHARED.MayAdd')\n : message;\n }\n constructor(\n private translate: TranslateService,\n private profileService: ProfileHelperService\n ) {}\n\n ngOnInit() {\n this.isCompleted = this.profileService.profile.isCompleted;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { UserHelperService } from 'src/data/helper/user-helper.service';\nimport { Observable, from } from 'rxjs';\nimport { NoteDexie } from 'src/data/entity/dexie/Note.dexie';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { UserDexie } from 'src/data/entity/dexie/User.dexie';\n\n@Component({\n selector: 'app-note-detail',\n templateUrl: './note-detail.component.html',\n styleUrls: ['./note-detail.component.scss'],\n})\nexport class NoteDetailComponent implements OnInit {\n @Input() note: NoteDexie;\n @Input() hierarchy: HierarchyDexie;\n user$: Observable;\n\n action: string;\n constructor(private router: Router, private userHelper: UserHelperService) {}\n\n ngOnInit() {\n this.action = localStorage.getItem('action');\n this.user$ = from(this.userHelper.getUserInfo(this.note.CreatedByUPN));\n }\n\n navigateToNoteDetails(note: NoteDexie) {\n this.router.navigate([\n 'note-details',\n this.hierarchy.Provider,\n note.EventId,\n note.Id,\n ]);\n }\n\n getUser(note: NoteDexie): Observable {\n return from(this.userHelper.getUserInfo(note.CreatedByUPN));\n }\n\n getNoteFirstCommentForType(note: NoteDexie, commentType: string): string {\n let commentText = '';\n for (const comment of note.Comments) {\n const language = localStorage.getItem('language');\n if (comment.Type === commentType) {\n commentText = comment.Text;\n // if (language === 'kaz') {\n // commentText = comment.KazakText;\n // }\n // if (language === 'ru') {\n // commentText = comment.RussianText;\n // }\n break;\n }\n }\n return commentText;\n }\n}\n","import { Component, OnInit, Input } from '@angular/core';\nimport { UserHelperService } from 'src/data/helper/user-helper.service';\nimport { Observable, from } from 'rxjs';\nimport { UserDexie } from 'src/data/entity/dexie/User.dexie';\nimport { NoteDexie } from 'src/data/entity/dexie/Note.dexie';\n\n@Component({\n selector: 'app-note-list-cell',\n templateUrl: './note-list-cell.component.html',\n styleUrls: ['./note-list-cell.component.scss'],\n})\nexport class NoteListCellComponent implements OnInit {\n @Input() note: NoteDexie;\n user$: Observable;\n constructor(private userHelper: UserHelperService) {}\n\n ngOnInit() {\n this.user$ = from(this.userHelper.getUserInfo(this.note.CreatedByUPN));\n }\n}\n","import { Component, Input, SimpleChanges, OnChanges } from '@angular/core';\nimport { Observable, from, of } from 'rxjs';\nimport { NoteEntityManagerService } from 'src/data/entityManager/note-entity-manager.service';\nimport { Router } from '@angular/router';\nimport { UserHelperService } from 'src/data/helper/user-helper.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { NoteFilterAuthorType } from 'src/data/InternalTypes';\nimport { LoadingService } from 'src/services//loading.service';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { NoteDexie } from 'src/data/entity/dexie/Note.dexie';\nimport { UserDexie } from 'src/data/entity/dexie/User.dexie';\n\n@Component({\n selector: 'app-note-list',\n templateUrl: './note-list.component.html',\n styleUrls: ['./note-list.component.scss'],\n})\nexport class NoteListComponent implements OnChanges {\n notes$: Observable;\n @Input() hierarchy$: Observable;\n hierarchy: HierarchyDexie;\n noteAuthor = NoteFilterAuthorType.other;\n NoteFilterAuthorType = NoteFilterAuthorType;\n\n user$: Observable;\n\n isHierarchyObsSubscribed = false;\n\n constructor(\n private noteEntityManager: NoteEntityManagerService,\n private router: Router,\n private userHelper: UserHelperService,\n private adalService: ADALProvider,\n private loadingService: LoadingService\n ) {}\n\n ngOnChanges(changes: SimpleChanges) {\n for (const propName in changes) {\n if (propName === 'hierarchy$') {\n if (!this.isHierarchyObsSubscribed && this.hierarchy$) {\n this.isHierarchyObsSubscribed = true;\n this.hierarchy$.subscribe((ret) => {\n this.hierarchy = ret;\n });\n }\n const chng = changes[propName];\n this.hierarchy$ = of(chng.currentValue);\n }\n }\n }\n\n getUser(note: NoteDexie): Observable {\n return from(this.userHelper.getUserInfo(note.CreatedByUPN));\n }\n\n getNoteForAuthor(noteAuthor: NoteFilterAuthorType) {\n let user = null;\n if (this.noteAuthor === NoteFilterAuthorType.me)\n user = this.adalService.getUPN();\n this.loadingService.present();\n this.notes$ = from(\n this.noteEntityManager.getNotesForHierarchy(this.hierarchy, user)\n );\n\n this.notes$.subscribe(() => {\n this.loadingService.dismiss();\n });\n }\n\n navigateToNoteDetails(note: NoteDexie) {\n this.router.navigate([\n 'note-details',\n this.hierarchy.Provider,\n note.EventId,\n note.Id,\n ]);\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport {\n Platform,\n LoadingController,\n AlertController,\n ModalController,\n} from '@ionic/angular';\nimport { CameraProvider } from 'src/shared/services/camera.provider';\nimport { File } from '@ionic-native/file/ngx';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { AttachmentHelperService } from 'src/data/helper/attachment-helper.service';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { ImageViewerComponent } from '../image-viewer/image-viewer';\nimport { NetworkService } from 'src/services/network.service';\nimport { NoteAttachmentEntityManagerService } from 'src/data/EntityManagerIndex';\nimport { EventService } from 'src/shared/event';\nimport { WebcamImage } from 'ngx-webcam';\nimport { Observable, Subject, map } from 'rxjs';\nimport { AttachmentDexie } from 'src/data/entity/dexie/Attachment.dexie';\nimport { db } from 'src/services/dexie.service';\n@Component({\n selector: 'photo-only',\n templateUrl: 'photo-only.html',\n styleUrls: ['./photo-only.scss'],\n})\nexport class PhotoOnlyComponent implements OnInit {\n @Input() noteId: any;\n @Input() createMode = true;\n @Input() mode: number;\n attachments = new Array();\n private attachmentsToDelete = new Array();\n private loader: any;\n downloading: boolean;\n cameraOn: boolean = false;\n images: { base64: string }[] = [];\n\n public webcamImage: WebcamImage = null;\n private trigger: Subject = new Subject();\n\n public triggerSnapshot(): void {\n this.trigger.next();\n }\n\n delay(ms: number) {\n return new Promise((resolve) => setTimeout(resolve, ms));\n }\n\n async openCamera() {\n if (this.cameraOn) {\n this.cameraOn = !this.cameraOn;\n this.webcamImage = null;\n } else {\n this.loader = await this.loadingController.create({\n cssClass: 'my-custom-class',\n message: 'Loading Camera...',\n });\n await this.loader.present();\n this.cameraOn = !this.cameraOn;\n await this.delay(14000);\n\n await this.loader.dismiss();\n }\n }\n\n handleImage(webcamImage: WebcamImage) {\n this.webcamImage = webcamImage;\n }\n\n confirmImage(): void {\n this._openPhotoEditor(this.webcamImage.imageAsBase64);\n }\n\n public get triggerObservable(): Observable {\n return this.trigger.asObservable();\n }\n\n constructor(\n private router: Router,\n private platform: Platform,\n private cameraProvider: CameraProvider,\n\n private events: EventService,\n public loadingController: LoadingController,\n private adalService: ADALProvider,\n private file: File,\n private attachmentService: AttachmentHelperService,\n private sanitizer: DomSanitizer,\n private alert: AlertController,\n private modal: ModalController,\n private networkService: NetworkService,\n private noteAttachmentEntityManagerService: NoteAttachmentEntityManagerService\n ) {}\n\n ngOnInit() {\n this.loadAttachments();\n }\n async loadAttachments() {\n // ionic upgrade commit\n this.attachments =\n await this.noteAttachmentEntityManagerService.getAttachmentsForNote(\n this.noteId\n );\n\n for (const attachment of this.attachments) {\n attachment.FormatedFile = attachment.FileURI\n ? await this.blobToBase64(\n attachment.FileURI.substring(\n 0,\n attachment.FileURI.lastIndexOf(attachment.FileName)\n ),\n attachment.FileName\n )\n : null;\n }\n }\n\n async photo() { \n // workaround to simulate take picture on camera\n this._openPhotoEditor(this.webcamImage.imageAsDataUrl); \n }\n\n onFileSelected(event: any) {\n const files = event.target.files;\n for (const file of files) {\n if (!file.type.startsWith('image/')) {\n alert('Please select only image files.');\n return;\n }\n const reader = new FileReader();\n reader.onload = () => {\n const base64 = reader.result as string;\n this._openPhotoEditor(base64);\n };\n reader.readAsDataURL(file);\n }\n }\n\n async filePick() { \n const message = await this.alert.create({\n header: 'Something went wrong',\n message: 'This feature is only available on mobile',\n buttons: [\n {\n text: 'Ok',\n },\n ],\n });\n await message.present();\n await message.onDidDismiss(); \n } \n\n async onImageClick(attachment: AttachmentDexie) {\n const modal = await this.modal.create({\n component: ImageViewerComponent,\n cssClass: 'hierarchy-modal',\n componentProps: attachment,\n });\n modal.present();\n }\n\n async removeImage(attachment: AttachmentDexie) {\n const attachmentRepository = db.attachment;\n const index = this.attachments.indexOf(attachment, 0);\n if (attachment.Id === '') {\n this.attachments.splice(index, 1);\n const att = await attachmentRepository\n .where('TimeStamp')\n .equals(attachment.TimeStamp);\n if (att) {\n await att.delete();\n }\n } else {\n attachment.IsDeleted = true;\n attachment.IsUploaded = false;\n }\n }\n\n enablebuttons() {\n return this.attachments.filter((att) => !att.IsDeleted).length === 2;\n }\n\n hideViewImages(): boolean {\n const attachmentLength = this.attachments.length;\n const downloadedImagesLength = this.attachments.filter(\n (attachment) => attachment.FileURI\n ).length; \n return false; \n }\n\n private async _openPhotoEditor(photo: string): Promise {\n this.events.formRefreshSource$.pipe(\n map(async (saveImage: any) => {\n if (saveImage !== 'cancel') {\n this.webcamImage = null;\n this.cameraOn = false;\n this.loader = await this.loadingController.create({\n cssClass: 'my-custom-class',\n message: 'Saving Picture...',\n });\n await this.loader.present();\n await this.save(saveImage);\n }\n return;\n })\n ).toPromise(); \n \n this.cameraProvider.setImage(photo);\n this.router.navigate(['action-image']);\n }\n\n private async save(photo: string) {\n try {\n const attachment = new AttachmentDexie();\n attachment.Id = '';\n attachment.Format = 'image';\n attachment.NoteId = this.noteId;\n attachment.TimeStamp = new Date().getTime();\n attachment.FileName = `note_image_${attachment.TimeStamp}.png`;\n attachment.IsDeleted = false;\n attachment.IsUploaded = false;\n attachment.IsDownloaded = false;\n\n attachment.UpdatedDate = new Date().toISOString();\n attachment.UpdatedByUPN = this.adalService.getUPN();\n attachment.CreatedByUPN = attachment.UpdatedByUPN;\n attachment.CreatedDate = attachment.UpdatedDate; \n const contentType = this.getContentType(photo);\n const DataBlob = this.base64toBlob(photo, contentType);\n attachment.FormatedFile = photo;\n attachment.BlobFile = DataBlob;\n this.attachments.push(attachment);\n this.loader.dismiss(); \n } catch (err) {\n this.loader.dismiss();\n }\n }\n\n // here is the method is used to write a file in storage\n public async writeFile(base64Data: any, attachment: AttachmentDexie) {\n const contentType = this.getContentType(base64Data);\n const DataBlob = this.base64toBlob(base64Data, contentType);\n // here iam mentioned this line this.file.externalRootDirectory is a native pre-defined file path storage. You can change a file path whatever pre-defined method.\n let filePath = '';\n filePath = this.file.dataDirectory + 'attachments/user/';\n this.file\n .checkDir(filePath, attachment.NoteId.toString())\n .then(async () => {\n filePath += attachment.NoteId.toString();\n this.saveImageBlobAndAttachmentEntity(\n filePath,\n attachment.FileName,\n DataBlob,\n contentType,\n attachment\n );\n })\n .catch(async () => {\n this.file\n .createDir(filePath, attachment.NoteId.toString(), false)\n .then(() => {\n filePath += attachment.NoteId.toString();\n this.saveImageBlobAndAttachmentEntity(\n filePath,\n attachment.FileName,\n DataBlob,\n contentType,\n attachment\n );\n })\n .catch(() => {\n this.saveImageBlobAndAttachmentEntity(\n filePath,\n attachment.FileName,\n DataBlob,\n contentType,\n attachment\n );\n });\n });\n }\n\n saveImageBlobAndAttachmentEntity(\n filePath: string,\n fileName: string,\n DataBlob: any,\n contentType: any,\n attachment: AttachmentDexie\n ) {\n this.file\n .writeFile(filePath, fileName, DataBlob, contentType)\n .then(async (fileEntry) => {\n attachment.FileURI = fileEntry.nativeURL;\n attachment.FormatedFile = await this.blobToBase64(\n filePath + '/',\n fileEntry.name\n );\n attachment.BlobFile = DataBlob;\n this.attachments.push(attachment);\n if (this.downloading) {\n attachment.IsDownloaded = true;\n await db.attachment.put(attachment);\n this.downloading = false;\n }\n this.loader.dismiss();\n })\n .catch((err) => {\n this.loader.dismiss();\n });\n }\n\n async downloadPictures() {\n this.loader = await this.loadingController.create({\n cssClass: 'my-custom-class',\n message: 'Downloading...',\n });\n this.loader.present();\n // ionic upgrade commit\n // check if there is internet connection.\n const ping = await this.networkService.pingServer();\n if (ping) {\n this.attachmentService\n .downloadAttachments(this.noteId)\n .then(\n async (attachmentsResult: Array) =>\n await this._onDownloadAttachments(attachmentsResult)\n );\n } else {\n this.loader.dismiss();\n const message = await this.alert.create({\n header: '',\n message:\n 'Looks like server is not responding, please check if there is internet connection',\n buttons: [\n {\n text: 'Ok',\n },\n ],\n });\n await message.present();\n await message.onDidDismiss();\n }\n }\n\n private async _onDownloadAttachments(attachmentsResult: Array) {\n const attachmentRepository = db.attachment;\n this.attachments = [];\n for (const at of attachmentsResult) {\n const attachment = await attachmentRepository\n .where({ Id: at['id'] })\n .first();\n const photo = `data:image/png;base64, ${at['fileArray']}`; \n const contentType = this.getContentType(photo);\n const DataBlob = this.base64toBlob(photo, contentType);\n attachment['FormatedFile'] = `${photo}`;\n attachment['BlobFile'] = DataBlob;\n attachment.IsDownloaded = true;\n this.attachments.push(attachment as AttachmentDexie);\n db.attachment.put(attachment);\n \n }\n const OfflineAttachments = await db.attachment\n .where({ NoteId: this.noteId, Id: '' })\n .toArray(); \n this.attachments.push(...(OfflineAttachments as AttachmentDexie[]));\n this.loader.dismiss();\n }\n\n // here is the method is used to get content type of an bas64 data\n getContentType(base64Data: any) {\n const block = base64Data.split(';');\n const contentType = block[0].split(':')[1];\n return contentType;\n }\n\n private _getFileExt(fileType) {\n switch (fileType) {\n case 'image/jpeg':\n return '.jpg';\n case 'image/gif':\n return '.gif';\n case 'image/bmp':\n return '.bmp';\n case 'image/tiff':\n return '.tif';\n case 'image/png':\n return '.png';\n case 'application/msword':\n return '.doc';\n case 'application/vnd.openxmlformats-officedocument.wordprocessingml.document':\n return '.docx';\n case 'text/plain':\n return '.txt';\n case 'application/vnd.ms-excel':\n return '.xls';\n case 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet':\n return '.xlsx';\n case 'application/pdf':\n return '.pdf';\n case 'application/rtf':\n return '.rtf';\n default:\n return '';\n }\n }\n // here is the method is used to convert base64 data to blob data\n public base64toBlob(b64Data, contentType) {\n contentType = contentType || '';\n const sliceSize = 512;\n const data = b64Data.split(',')[1];\n const byteCharacters = atob(data);\n const byteArrays = [];\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize);\n const byteNumbers = new Array(slice.length);\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n byteArrays.push(byteArray);\n }\n const blob = new Blob(byteArrays, {\n type: contentType,\n });\n return blob;\n }\n\n blobToBase64(path, fileName) {\n return this.file\n .readAsDataURL(path, fileName)\n .then((base64Img) => {\n return base64Img;\n })\n .catch((err: TypeError) => {\n this.loader.dismiss();\n return '';\n });\n }\n}\n","import { AppErrorType } from './InternalTypes';\n\nexport class AppError {\n type: AppErrorType;\n params: any;\n details: any;\n constructor(type: AppErrorType, params: any, details?: any) {\n this.type = type;\n this.params = params;\n this.details = details;\n }\n}\n","export { AppBaseEntity } from './entity/AppBaseEntity';\n\n","export { UserEntityManagerService } from './entityManager/user-entity-manager.service';\nexport { HierarchyEntityManagerService } from './entityManager/hierarchy-entity-manager.service';\nexport { NoteEntityManagerService } from './entityManager/note-entity-manager.service';\nexport { NoteCommentEntityManagerService } from './entityManager/note-comment-entity-manager.service';\nexport { NoteTagEntityManagerService } from './entityManager/note-tag-entity-manager.service';\nexport { NoteAttachmentEntityManagerService } from './entityManager/note-attachment-entity-manager.service';\nexport { NoteLessonlearntEntityManagerService } from './entityManager/note-lessonlearnt-entity-manager.service';\n","export { HierarchyService } from './entityService/hierarchy.service';\nexport { NotesService } from './entityService/notes.service';\nexport { UserService } from './entityService/user.service';\nexport { SummaryService } from './entityService/summary.service';\n","import { HierarchyDexie } from './entity/dexie/Hierarchy.dexie';\nimport { UserDexie } from './entity/dexie/User.dexie';\n\nexport enum AppErrorType {\n COMMON_ERROR = 1,\n MULTIPLE_PROJECTS_ASSIGNED,\n NO_PROJECT_ASSIGNED,\n MULTIPLE_ROLES_ASSIGNED,\n NO_ROLE_ASSIGNED,\n AUTHENTICATION_ERROR,\n NOT_AUTHORIZED_USER,\n DATABASE_ERROR,\n NETWORK_ERROR,\n SERVICE_ERROR,\n COMMON_SYNC_ERROR,\n UNSUPPORTED_APPVERSION,\n}\n\nexport enum AppPlatform {\n iOS = 'iOS',\n windows = 'windows',\n android = 'Android',\n core = 'core',\n js = 'js',\n}\n\n/**\n * hierarchy view selection modes\n */\nexport enum HierarchySelectionMode {\n /**\n * single: only one item can be selected\n */\n single,\n\n /**\n * multiple: multiple items can be selected\n */\n multiple,\n\n /**\n * view hierarchy only, user cannot select hierarchy, not notes info available\n */\n viewOnly,\n\n /**\n * view hierarchy only, user cannot select hierarchy, notes info available\n */\n viewWithNotes,\n}\n\n/**\n * Note library view mode\n */\nexport enum NotesViewMode {\n /**\n * flat view\n */\n flat,\n\n /**\n * hierarchy view\n */\n hierarchy,\n}\n\nexport enum ShiftType {\n day = 'Day',\n night = 'Night',\n}\n\nexport enum DurationType {\n none = '',\n halfDay = '12 Hrs Ago',\n fullDay = '24 Hrs Ago',\n dateRange = 'Date Range',\n}\n\nexport enum NoteCommentType {\n generalComment = 'Comment',\n pathForward = 'Path Forward',\n outstandingMaterials = 'Outstanding Materials',\n materialsOrdered = 'Materials Ordered',\n materialsReceived = 'Materials Received',\n lessonLearnt = 'Lesson Learnt',\n}\n\nexport enum NoteFilterAuthorType {\n me = 'My Notes',\n all = 'All Notes',\n other = 'Other',\n}\n\nexport class Filter {\n hierarchyCategory: string[];\n hierarchy: HierarchyDexie[];\n duration: DurationType;\n shiftStartDate: string;\n ShiftStart: string;\n shiftEndDate: string;\n shiftEnd: string;\n shiftNames: ShiftType[];\n createdDateFrom: string;\n createdDateTo: string;\n tags: string[];\n authorType: NoteFilterAuthorType;\n authors: UserDexie[];\n roles: string[];\n search: string;\n ifavFilter: string;\n}\n\nexport enum NoteAddMode {\n create,\n edit,\n}\n\nexport class TAProDeeplinkObject {\n initViewtype: initViewType;\n eventId: number;\n eventName: string;\n provider: string;\n site: string;\n role: string;\n hierarchyId: number;\n}\n\nexport enum initViewType {\n viewNotes = 'viewNotes',\n addNotes = 'addNotes',\n home = 'home',\n viewHistory = 'viewHistory',\n}\n\nexport enum LogLevel {\n Trace = 'Trace',\n Info = 'Information',\n Warn = 'Warnings',\n Error = 'Error',\n}\n\nexport enum MobileVersionStatus {\n current = 'Current',\n compatible = 'Compatible',\n notsupported = 'NotSupported',\n}\nexport class MobileVersion {\n version: string;\n status: MobileVersionStatus;\n}\n","export class User {\n id: number;\n //cai: string;\n firstName: string;\n lastName: string;\n email: string;\n personalName: string;\n upn: string;\n}\n","import { Column, BaseEntity } from 'typeorm/browser';\nimport { ColumnMetadata } from 'typeorm/browser/metadata/ColumnMetadata';\n\nexport class AppBaseEntity extends BaseEntity {\n constructor(obj?: object) {\n super();\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = obj[key];\n }\n }\n }\n \n @Column({ nullable: true, type: 'text' })\n UpdatedDate: string;\n\n @Column({ nullable: true, type: 'text' })\n UpdatedByUPN: string;\n\n @Column({ nullable: true, type: 'text' })\n CreatedByUPN: string;\n\n @Column({ nullable: true, type: 'text' })\n CreatedDate: string;\n\n @Column({ nullable: true, default: false, type: 'boolean' })\n IsDeleted: boolean;\n\n getInsertSqlForEntity(): string {\n let sql = '';\n let columns = '';\n let values = '';\n\n Object.keys(this).forEach(key => {\n if (this.hasOwnProperty(key)) {\n const column = key;\n if (columns !== '') {\n columns += ', ';\n }\n columns += column;\n\n let value = this[key];\n if (typeof value === 'string') {\n // tslint:disable-next-line\n value = value.replace(/'/g, \"''\");\n // tslint:disable-next-line\n value = \"'\" + value + \"'\";\n } else if (typeof value === 'boolean') {\n value = value === true ? 1 : 0;\n } else if (value === undefined || value === null) {\n value = null;\n }\n\n if (values !== '') {\n values += ', ';\n }\n values += value;\n }\n });\n\n sql = `replace into ${this.constructor.name} (${columns}) values (${values});`;\n return sql;\n }\n\n getSqlValues(entities: AppBaseEntity[]): string {\n let valuesForEntities = '';\n entities.forEach(entity => {\n let valuesForEntity = '(';\n Object.keys(entity).forEach(key => {\n let value = entity[key];\n if (value instanceof Array) {\n return;\n }\n\n if (typeof value === 'string') {\n // tslint:disable-next-line\n value = value.replace(/'/g, \"''\");\n // tslint:disable-next-line\n value = \"'\" + value + \"'\";\n } else if (typeof value === 'boolean') {\n value = value === true ? 1 : 0;\n } else if (value === undefined || value === null) {\n value = null;\n }\n\n if (valuesForEntity !== '(') {\n valuesForEntity += ', ';\n }\n\n valuesForEntity += value;\n });\n\n valuesForEntity += ')';\n\n if (valuesForEntities !== '') {\n valuesForEntities += ', ';\n }\n valuesForEntities += valuesForEntity;\n });\n return valuesForEntities;\n }\n\n getInsertSqlForEntities(entities: AppBaseEntity[]): string {\n let sql = '';\n let columns = '';\n let values = '';\n\n Object.keys(this).forEach(key => {\n if (this.hasOwnProperty(key)) {\n if (this[key] instanceof Array) {\n return;\n }\n const column = key;\n if (columns !== '') {\n columns += ', ';\n }\n columns += column;\n }\n });\n\n values = this.getSqlValues(entities);\n sql = `replace into ${this.constructor.name} (${columns}) values ${values};`;\n return sql;\n }\n \n static createFromObject(obj: any, entity: any, columnNames: ColumnMetadata[]){\n const helper = {}\n for (const key in obj) {\n const keyFormatted = key.charAt(0).toUpperCase() + key.slice(1);\n if (obj.hasOwnProperty(key) && columnNames.find(e => `${e.propertyName}` === `${keyFormatted}`)) {\n helper[keyFormatted] = obj[key];\n } \n if( helper[keyFormatted] === undefined){\n delete helper[keyFormatted]\n }\n }\n const createdEntity = entity?.create({...helper});\n return createdEntity;\n }\n}\n","import { Column, BaseEntity } from 'typeorm/browser';\nimport { ColumnMetadata } from 'typeorm/browser/metadata/ColumnMetadata';\n\nexport class AppBaseEntityD extends BaseEntity {\n constructor(obj?: object) {\n super();\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = obj[key];\n }\n }\n }\n\n getInsertSqlForEntity(): string {\n let sql = '';\n let columns = '';\n let values = '';\n\n Object.keys(this).forEach(key => {\n if (this.hasOwnProperty(key)) {\n const column = key;\n if (columns !== '') {\n columns += ', ';\n }\n columns += column;\n\n let value = this[key];\n if (typeof value === 'string') {\n // tslint:disable-next-line\n value = value.replace(/'/g, \"''\");\n // tslint:disable-next-line\n value = \"'\" + value + \"'\";\n } else if (typeof value === 'boolean') {\n value = value === true ? 1 : 0;\n } else if (value === undefined || value === null) {\n value = null;\n }\n\n if (values !== '') {\n values += ', ';\n }\n values += value;\n }\n });\n\n sql = `replace into ${this.constructor.name} (${columns}) values (${values});`;\n return sql;\n }\n\n getSqlValues(entities: AppBaseEntityD[]): string {\n let valuesForEntities = '';\n entities.forEach(entity => {\n let valuesForEntity = '(';\n Object.keys(entity).forEach(key => {\n let value = entity[key];\n if (value instanceof Array) {\n return;\n }\n\n if (typeof value === 'string') {\n // tslint:disable-next-line\n value = value.replace(/'/g, \"''\");\n // tslint:disable-next-line\n value = \"'\" + value + \"'\";\n } else if (typeof value === 'boolean') {\n value = value === true ? 1 : 0;\n } else if (value === undefined || value === null) {\n value = null;\n }\n\n if (valuesForEntity !== '(') {\n valuesForEntity += ', ';\n }\n\n valuesForEntity += value;\n });\n\n valuesForEntity += ')';\n\n if (valuesForEntities !== '') {\n valuesForEntities += ', ';\n }\n valuesForEntities += valuesForEntity;\n });\n return valuesForEntities;\n }\n\n getInsertSqlForEntities(entities: AppBaseEntityD[]): string {\n let sql = '';\n let columns = '';\n let values = '';\n\n Object.keys(this).forEach(key => {\n if (this.hasOwnProperty(key)) {\n if (this[key] instanceof Array) {\n return;\n }\n const column = key;\n if (columns !== '') {\n columns += ', ';\n }\n columns += column;\n }\n });\n\n values = this.getSqlValues(entities);\n sql = `replace into ${this.constructor.name} (${columns}) values ${values};`;\n return sql;\n }\n \n static createFromObject(obj: any, entity: any, columnNames: ColumnMetadata[]){\n const helper = {}\n for (const key in obj) {\n const keyFormatted = key.charAt(0).toUpperCase() + key.slice(1);\n if (obj.hasOwnProperty(key) && columnNames.find(e => `${e.propertyName}` === `${keyFormatted}`)) {\n helper[keyFormatted] = obj[key];\n } \n if( helper[keyFormatted] === undefined){\n delete helper[keyFormatted]\n }\n }\n const createdEntity = entity?.create({...helper});\n return createdEntity;\n }\n// public init(json): void {\n// console.info(\"init method\");\n// }\n}\n","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface IAttachment {\n IdRow: string;\n Id: string;\n NoteId: string;\n FileName: string;\n IsDownloaded: boolean;\n IsUploaded: boolean;\n TimeStamp: number;\n Format: string;\n FileURI: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n\n FormatedFile: any;\n BlobFile: any;\n FileArray: any;\n}\n\nexport class AttachmentDexie extends AppBaseEntityD implements IAttachment {\n constructor(AttachmentObject?: object) {\n super();\n for (const key in AttachmentObject) {\n if (AttachmentObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = AttachmentObject[key];\n }\n }\n }\n IdRow: string;\n Id: string;\n NoteId: string;\n FileName: string;\n IsDownloaded: boolean;\n IsUploaded: boolean;\n TimeStamp: number;\n Format: string;\n FileURI: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n \n FormatedFile: any;\n BlobFile: any;\n FileArray: any;\n}","import { AppBaseEntity } from \"../AppBaseEntity\";\nimport { AppBaseEntityD } from \"../AppBaseEntityD\";\nimport { DexieBase } from \"./DexieBase\";\n\nexport interface ICODE{\n Category: string;\n Value: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class CODEDexie extends AppBaseEntityD implements ICODE{\n constructor(codeObject?: object) {\n super();\n for (const key in codeObject) {\n if (codeObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = codeObject[key];\n }\n }\n }\n Category: string;\n Value: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface IEvent {\n ForeignId: number;\n ForeignParentId: number;\n EventId: number;\n ForeignEntity: string;\n ForeignParentEntity: string;\n DisplayId: string;\n Name: string;\n Provider: string;\n Sequence: number;\n Category: string;\n IsCompleted: boolean;\n InstanceName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class EventDexie extends AppBaseEntityD implements IEvent {\n constructor(EventObject?: object) {\n super();\n for (const key in EventObject) {\n if (EventObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = EventObject[key];\n }\n }\n }\n ForeignId: number;\n ForeignParentId: number;\n EventId: number;\n ForeignEntity: string;\n ForeignParentEntity: string;\n DisplayId: string;\n Name: string;\n Provider: string;\n Sequence: number;\n Category: string;\n IsCompleted: boolean;\n InstanceName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\nimport { NoteDexie } from \"./Note.dexie\";\n\nexport interface IHierarchy {\n ForeignId: number;\n ForeignParentId: number;\n EventId: number;\n ForeignEntity: string;\n ForeignParentEntity: string;\n DisplayId: string;\n Name: string;\n Provider: string;\n Sequence: number;\n Category: string;\n IsCompleted: boolean;\n InstanceName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n\n isExpanded: boolean;\n isChecked: boolean;\n parent: HierarchyDexie;\n children: HierarchyDexie[];\n notes: NoteDexie[];\n isMatched: boolean;\n activityChecked: boolean;\n}\n\nexport class HierarchyDexie extends AppBaseEntityD implements IHierarchy {\n constructor(hierarchyObject?: object) {\n super();\n for (const key in hierarchyObject) {\n if (hierarchyObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = hierarchyObject[key];\n }\n }\n }\n ForeignId: number;\n ForeignParentId: number;\n EventId: number;\n ForeignEntity: string;\n ForeignParentEntity: string;\n DisplayId: string;\n Name: string;\n Provider: string;\n Sequence: number;\n Category: string;\n IsCompleted: boolean;\n InstanceName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n \n isExpanded: boolean;\n isChecked: boolean;\n parent: HierarchyDexie;\n children: HierarchyDexie[];\n notes: NoteDexie[];\n isMatched: boolean;\n activityChecked: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface ILessonLearnt {\n Id: string;\n NoteId: string;\n LessonLearntComment: string;\n LessonLearned: string;\n People:string;\n Safety:string; \n Recognition:string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class LessonLearntDexie extends AppBaseEntityD implements ILessonLearnt {\n constructor(LessonLearntObject?: object) {\n super();\n for (const key in LessonLearntObject) {\n if (LessonLearntObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = LessonLearntObject[key];\n }\n }\n }\n Id: string;\n NoteId: string;\n LessonLearntComment: string;\n LessonLearned: string;\n People:string;\n Safety:string; \n Recognition:string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\nimport { AttachmentDexie } from \"./Attachment.dexie\";\nimport { LessonLearntDexie } from \"./LeasonLearnt.dexie\";\nimport { NoteCommentDexie } from \"./NoteComment.dexie\";\n\nexport interface INote {\n Id: string;\n ParentId: number;\n Type: string;\n EventId: number;\n ParentEntity: string;\n Role: string;\n ShiftDate: string;\n ShiftName: string;\n IsUploaded: boolean;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n\n Comments: NoteCommentDexie[];\n Lessonlearnt: LessonLearntDexie[];\n Tags: string[];\n Attachments: AttachmentDexie[];\n}\n\nexport class NoteDexie extends AppBaseEntityD implements INote {\n constructor(NoteObject?: object) {\n super();\n for (const key in NoteObject) {\n if (NoteObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = NoteObject[key];\n }\n }\n }\n Id: string;\n ParentId: number;\n Type: string;\n EventId: number;\n ParentEntity: string;\n Role: string;\n ShiftDate: string;\n ShiftName: string;\n IsUploaded: boolean;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n \n Comments: NoteCommentDexie[];\n Lessonlearnt: LessonLearntDexie[];\n Tags: string[];\n Attachments: AttachmentDexie[];\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface INoteComment {\n Id: string;\n NoteId: string;\n Type: string;\n Text: string;\n KazakText: string;\n RussianText: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class NoteCommentDexie extends AppBaseEntityD implements INoteComment {\n constructor(NoteCommentObject?: object) {\n super();\n for (const key in NoteCommentObject) {\n if (NoteCommentObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = NoteCommentObject[key];\n }\n }\n }\n Id: string;\n NoteId: string;\n Type: string;\n Text: string;\n KazakText: string;\n RussianText: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface INoteTag {\n Tag: string;\n NoteId: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class NoteTagDexie extends AppBaseEntityD implements INoteTag {\n constructor(NoteTag?: object) {\n super();\n for (const key in NoteTag) {\n if (NoteTag.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = NoteTag[key];\n }\n }\n }\n Tag: string;\n NoteId: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface IOBS {\n Name: string;\n InstanceId: number;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class OBSDexie extends AppBaseEntityD implements IOBS {\n constructor(obsObject?: object) {\n super();\n for (const key in obsObject) {\n if (obsObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = obsObject[key];\n }\n }\n }\n Name: string;\n InstanceId: number;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface ISummary {\n Id: string;\n SummaryComment: string;\n EventId: number;\n ShiftDate: string;\n Role: string;\n IsUploaded: boolean;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class SummaryDexie extends AppBaseEntityD implements ISummary {\n constructor(summaryObject?: object) {\n super();\n for (const key in summaryObject) {\n if (summaryObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = summaryObject[key];\n }\n }\n }\n Id: string;\n SummaryComment: string;\n EventId: number;\n ShiftDate: string;\n Role: string;\n IsUploaded: boolean;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface ISyncLog {\n Id: number;\n Entity: string;\n EventId: number;\n Provider: string;\n LastUploadTime: string;\n LastDownloadTime: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class SyncLogDexie extends AppBaseEntityD implements ISyncLog {\n constructor(synclogObject?: object) {\n super();\n for (const key in synclogObject) {\n if (synclogObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = synclogObject[key];\n }\n }\n }\n Id: number;\n Entity: string;\n EventId: number;\n Provider: string;\n LastUploadTime: string;\n LastDownloadTime: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { AppBaseEntityD } from \"../AppBaseEntityD\";\n\nexport interface IUser {\n Upn: string;\n Email: string;\n //Cai: string;\n FirstName: string;\n LastName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}\n\nexport class UserDexie extends AppBaseEntityD implements IUser {\n constructor(userObject?: object) {\n super();\n for (const key in userObject) {\n if (userObject.hasOwnProperty(key)) {\n this[key.charAt(0).toUpperCase() + key.slice(1)] = userObject[key];\n }\n }\n }\n Upn: string;\n Email: string;\n //Cai: string;\n FirstName: string;\n LastName: string;\n UpdatedDate: string;\n UpdatedByUPN: string;\n CreatedByUPN: string;\n CreatedDate: string;\n IsDeleted: boolean;\n}","import { Downloadable, Uploadable } from '../../interface/SyncInterface';\nimport { BaseEntity, QueryRunner } from 'typeorm/browser';\nimport { Constants } from 'src/shared/constants';\nimport { AppBaseEntityD } from '../entity/AppBaseEntityD';\nimport { db } from 'src/services/dexie.service';\nimport { UserDexie } from '../entity/dexie/User.dexie';\n\nexport class AppBaseEntityManager {\n protected static _instance: AppBaseEntityManager;\n protected _entityType = AppBaseEntityD;\n\n static get Instance(): AppBaseEntityManager {\n return this._instance || (this._instance = new this());\n }\n\n isDownloadable(): this is Downloadable {\n return 'download' in this;\n }\n\n isUploadable(): this is Uploadable {\n return 'upload' in this;\n }\n\n description(): string {\n return `${this._entityType.name}`;\n }\n\n async getAll(): Promise {\n const user = await db.user.toArray();\n return user as UserDexie[];\n }\n\n async bulkInsert2(\n data: AppBaseEntityD[] | any,\n dexieName?: string\n ): Promise {\n try {\n let sql = '';\n if (data instanceof Array) {\n const entityArray: any[] = [];\n for (const d of data) {\n const e = new this._entityType(d);\n Object.keys(e).forEach((key) =>\n e[key] === undefined ? delete e[key] : {}\n );\n entityArray.push(e);\n }\n const entityLength = entityArray.length;\n if (entityLength > 0) {\n let entityCountLeft = entityLength;\n do {\n const entityCountToTake = Math.min(\n entityCountLeft,\n Constants.BulkSize\n );\n const sub = entityArray.splice(0, entityCountToTake);\n db.table(dexieName)\n .bulkPut(sub)\n .then((lastKey) => {\n console.log('CHEV::bulkInsertWithQueryRunner:bulkAdd', {\n lastKey,\n });\n })\n .catch((bulkError) => {\n console.log('CHEV::bulkInsertWithQueryRunner:bulkError', {\n bulkError,\n });\n });\n entityCountLeft -= entityCountToTake;\n } while (entityCountLeft > 0);\n }\n } else {\n const e = new this._entityType();\n await db.table(dexieName).put(e);\n }\n return;\n } catch (e) {\n throw 'Cannot insert data to database.' + e;\n }\n }\n\n async bulkInsertWithQueryRunner(\n data: AppBaseEntityD[] | any,\n queryRunner: QueryRunner\n ): Promise {\n try {\n let sql = '';\n if (data instanceof Array) {\n const entityArray: any[] = [];\n for (const d of data) {\n const e = new this._entityType(d);\n entityArray.push(e);\n }\n if (entityArray.length > 0) {\n sql = entityArray[0].getInsertSqlForEntities(entityArray);\n await queryRunner.query(sql);\n }\n } else {\n const e = new this._entityType();\n sql = e.getInsertSqlForEntity();\n await queryRunner.query(sql);\n }\n return;\n } catch (e) {\n throw e;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { CODEDexie } from '../entity/dexie/CODE.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CodeEntityManagerService extends AppBaseEntityManager {\n dexieName = 'code';\n protected _entityType = CODEDexie;\n constructor() {\n super();\n }\n async getCodes(): Promise {\n try {\n const c = await db.code.toArray();\n return c as CODEDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n saveCodes(codes: CODEDexie[]): Promise {\n return this.bulkInsert2(codes, this.dexieName);\n }\n\n getRoles(): Promise {\n return new Promise((resolve) => {\n (async () => {\n await db.code\n .where('Category')\n .equals('Role')\n .toArray()\n .then((code) => {\n resolve(code as CODEDexie[]);\n });\n })();\n });\n }\n\n // Retrive only the category tag\n async getTags(): Promise {\n try {\n const tag = await db.code.where('Category').equals('Tag').toArray();\n return tag as CODEDexie[];\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Filter } from '../InternalTypes';\nimport { NoteEntityManagerService } from './note-entity-manager.service';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { Constants } from '../../shared/constants';\nimport { HierarchyDexie } from '../entity/dexie/Hierarchy.dexie';\nimport { db } from 'src/services/dexie.service';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\nimport { LoadingService } from 'src/services/loading.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class HierarchyEntityManagerService extends AppBaseEntityManager {\n protected _entityType = HierarchyDexie;\n dexieName = 'hierarchy';\n constructor(private noteManager: NoteEntityManagerService,private loadingService: LoadingService,) {\n super();\n }\n\n async getHierarchyForEnvent(\n eventId: number,\n provider: string\n ): Promise {\n try {\n const hierarchy = await db.hierarchy\n .filter((e) => e.EventId == eventId)\n .and((p) => p.Provider === provider)\n .and((f) => f.ForeignEntity != 'Activity')\n .toArray();\n return hierarchy as HierarchyDexie[];\n } catch (error) {\n console.error('Error fetching Hierarchy:', error);\n throw error;\n }\n }\n\n async getEnvents(): Promise {\n try {\n const event = await db.hierarchy\n .filter((e) => e.ForeignParentId == 0 || e.ForeignParentId == null)\n .toArray();\n\n return event as HierarchyDexie[];\n } catch (error) {\n console.error('Error fetching Hierarchy:', error);\n throw error;\n }\n }\n\n saveHierarchies(hierarchies: HierarchyDexie[]): Promise {\n return this.bulkInsert2(hierarchies, this.dexieName);\n }\n\n async getChildrenForHierarchy(\n hierarchy: HierarchyDexie\n ): Promise {\n try {\n const hierarchies = await db.hierarchy\n .filter(\n (h) =>\n h.ForeignParentId == hierarchy.ForeignId &&\n h.Provider === hierarchy.Provider\n )\n .sortBy('ForeignId');\n return hierarchies as HierarchyDexie[];\n } catch (error) {\n console.error('Error fetching Hierarchy:', error);\n throw error;\n }\n }\n\n async getActivitiesForHierarchy(\n hierarchy: HierarchyDexie\n ): Promise {\n try {\n const heirarch = await db.hierarchy\n .filter((e) => e.ForeignParentId == hierarchy.ForeignId)\n .and((p) => p.Provider == hierarchy.Provider)\n .and((f) => f.ForeignEntity == 'Activity')\n .sortBy('DisplayId');\n\n return heirarch as HierarchyDexie[];\n } catch (error) {\n console.error('Error fetching Hierarchy:', error);\n throw error;\n }\n }\n\n async getChildrenForHierarchyWithSelf(\n hierarchy: HierarchyDexie\n ): Promise {\n if (hierarchy && !isNaN(hierarchy.ForeignId)) {\n const hierarchies = await db.hierarchy\n .filter(\n (h) =>\n h.ForeignParentId == hierarchy.ForeignId &&\n h.Provider === hierarchy.Provider\n )\n .sortBy('ForeignId');\n hierarchies.unshift(hierarchy);\n return hierarchies.map((e) => new HierarchyDexie(e));\n \n } else {\n return null;\n }\n }\n\n async getProjectEventByEventId(eventId: number): Promise {\n try {\n const hierarch = await db.hierarchy\n .filter((e) => e.EventId == eventId)\n .and((f) => f.ForeignEntity === 'Project')\n .first();\n return hierarch as HierarchyDexie;\n } catch (error) {\n console.error('Error fetching Hierarchy:', error);\n throw error;\n }\n }\n\n async getHierarchyCategories(\n eventId: number,\n provider: string\n ): Promise {\n let categories: string[] = [];\n await db.hierarchy\n .filter((e) => e.EventId == eventId)\n .and((p) => p.Provider === provider)\n .distinct()\n .sortBy('Category')\n .then((r) => {\n categories = [...new Set(r.map((item) => item.Category))]; \n });\n return categories;\n }\n\n async getFilteredHierarchybyNotes(\n filter: Filter,\n eventId?: number,\n offset?: number,\n filteredTags?: Array\n ): Promise {\n try {\n if (filteredTags?.length > 0) {\n filter.tags = filteredTags;\n }\n const notes = await this.noteManager.getFilteredNotes(filter, eventId);\n let hierarchies = [];\n if (notes && notes.length > 0) {\n const noteParentIds = notes?.map((element) => element.ParentId);\n const uniqueHIds = [...new Set(noteParentIds)];\n const itemQuery = db.hierarchy;\n if (uniqueHIds?.length > 0) {\n hierarchies = await itemQuery\n .where('ForeignId')\n .anyOf(uniqueHIds)\n .sortBy('UpdatedDate');\n if (hierarchies) {\n hierarchies = this._evalHierarchies(hierarchies, notes, offset);\n }\n if (hierarchies) {\n hierarchies.sort((a, b) =>\n Date.parse(a.notes[0].UpdatedDate) <\n Date.parse(b.notes[0].UpdatedDate)\n ? 1\n : -1\n );\n hierarchies = hierarchies.slice(\n offset,\n offset + Constants.pagingSize\n );\n }\n }\n if (filter?.hierarchyCategory?.length > 0) {\n // tslint:disable-next-line:quotemark\n const catStatement: string = filter.hierarchyCategory.join(\"','\");\n hierarchies = await itemQuery\n .where('Category')\n .anyOf(catStatement)\n .sortBy('UpdatedDate');\n }\n if (\n filter.search !== '' &&\n filter.search !== null &&\n filter.search !== undefined\n ) {\n // hierarchies = await itemQuery\n // .where('Name') \n // .startsWithAnyOfIgnoreCase(filter.search)\n // .or('Category')\n // .startsWithAnyOfIgnoreCase(filter.search)\n // .toArray();\n const searchTermLower = filter.search.toLowerCase();\n hierarchies = await itemQuery.where('Name')\n .startsWithIgnoreCase(searchTermLower)\n .or('Category')\n .startsWithIgnoreCase(searchTermLower)\n .toArray();\n }\n }\n \n return hierarchies as HierarchyDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n private _evalHierarchies(\n h: HierarchyDexie[],\n notes: NoteDexie[],\n offset: number\n ) {\n let hierarchies: HierarchyDexie[] = h;\n for (const hierarchy of hierarchies) {\n for (const note of notes) {\n if (hierarchy.ForeignId === note.ParentId) {\n if (!hierarchy.notes) {\n hierarchy.notes = [];\n }\n hierarchy.notes.push(note);\n }\n }\n }\n return hierarchies;\n }\n\n getNotesCountForHierarchy(\n hierarchy: HierarchyDexie,\n user?: string\n ): Promise {\n return this.noteManager.getNotesCountForHierarchy(hierarchy, user);\n }\n\n async getHierarchyById(\n id: number,\n eventId: number,\n provider: string\n ): Promise {\n const h = await db.hierarchy\n .filter(\n (e) =>\n e.ForeignId == id && e.EventId == eventId && e.Provider === provider\n )\n .first();\n return h as HierarchyDexie;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { db } from 'src/services/dexie.service';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\nimport { AttachmentDexie } from '../entity/dexie/Attachment.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NoteAttachmentEntityManagerService extends AppBaseEntityManager {\n protected _entityType = AttachmentDexie;\n dexieName = 'attachment';\n\n constructor() {\n super();\n }\n\n async getAttachmentsForNote(noteId: string): Promise {\n try {\n const attach = await db.attachment\n .filter((e) => e.NoteId === noteId)\n .and((e) => e.IsDeleted === false)\n .toArray();\n return attach as AttachmentDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n async getAttachmentsForNotes(notes: NoteDexie[]): Promise {\n try {\n const notesIds = notes.map(({ Id }) => Id).join(`','`);\n const attach = await db.attachment\n .where('NoteId')\n .anyOf(notesIds)\n .and((e) => e.IsDeleted === false)\n .toArray(); \n return attach as AttachmentDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n async getAttachmentsForNotesHome(\n notes: NoteDexie[]\n ): Promise {\n try {\n const notesIds = notes.map(({ Id }) => Id).join(`','`);\n const attach = await db.attachment\n .where('NoteId')\n .anyOf(notesIds)\n .toArray();\n return attach as AttachmentDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n saveAttachments(attachments: AttachmentDexie[]): Promise {\n const attachmentToSave: AttachmentDexie[] = attachments.map(\n (att: AttachmentDexie) =>\n ({\n Id: att.Id,\n NoteId: att.NoteId,\n FileName: att.FileName,\n IsDownloaded: att.IsDownloaded,\n IsUploaded: att.IsUploaded,\n TimeStamp: att.TimeStamp,\n Format: att.Format,\n FileURI: att.FileURI,\n UpdatedDate: att.UpdatedDate,\n UpdatedByUPN: att.UpdatedByUPN,\n CreatedByUPN: att.CreatedByUPN,\n CreatedDate: att.CreatedDate,\n IsDeleted: att.IsDeleted,\n } as AttachmentDexie)\n );\n return this.bulkInsert2(attachmentToSave, this.dexieName);\n }\n\n async deleteAttachmentsForNote(noteId: string): Promise {\n try {\n await db.attachment.where('NoteId').equals(noteId).delete();\n } catch (error) {\n throw error;\n }\n }\n\n async deleteAttachmentsForNotes(noteIds: string[]): Promise {\n try {\n await db.attachment.where('NoteId').anyOf(noteIds).delete();\n } catch (error) {\n throw error;\n }\n }\n\n async deleteAttachmentsForNotesNoLongerAvailable(\n noteIds: string[]\n ): Promise {\n try {\n const notes = noteIds.map((noteId) => \"'\" + noteId + \"'\");\n await db.attachment\n .filter(\n (e) =>\n e.IsDeleted == true && e.IsUploaded == true && e.NoteId in notes\n )\n .delete();\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { NoteCommentDexie } from '../entity/dexie/NoteComment.dexie';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NoteCommentEntityManagerService extends AppBaseEntityManager {\n protected _entityType = NoteCommentDexie;\n dexieName = 'notecomment';\n constructor() {\n super();\n }\n\n async getCommentsForNote(noteId: string): Promise {\n try {\n const noteComment = await db.notecomment\n .filter((e) => e.NoteId === noteId)\n .toArray();\n // const language = localStorage.getItem('language');\n // if (language === 'kaz') {\n // for (let child of noteComment as NoteCommentDexie[]) {\n // child.Text = child.KazakText;\n // }\n // }\n // if (language === 'ru') {\n // for (let child of noteComment as NoteCommentDexie[]) {\n // child.Text = child.RussianText;\n // }\n // }\n return noteComment as NoteCommentDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n async getCommentsForNotes(notes: NoteDexie[]): Promise {\n try {\n const notesIds = notes.map(({ Id }) => Id);\n const noteComment = await db.notecomment\n .where('NoteId')\n .anyOf(notesIds)\n .toArray();\n\n // const language = localStorage.getItem('language');\n // if (language === 'kaz') {\n // for (let child of noteComment as NoteCommentDexie[]) {\n // child.Text = child.KazakText;\n // }\n // }\n // if (language === 'ru') {\n // for (let child of noteComment as NoteCommentDexie[]) {\n // child.Text = child.RussianText;\n // }\n // }\n return noteComment as NoteCommentDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n saveComments(comments: NoteCommentDexie[]): Promise {\n return this.bulkInsert2(comments, this.dexieName);\n }\n\n async deleteCommentsForNote(noteId: string): Promise {\n try {\n await db.notecomment.where('NoteId').equals(noteId).delete();\n } catch (error) {\n throw error;\n }\n }\n\n async deleteCommentsForNotes(noteIds: string[]): Promise {\n try {\n await db.notecomment.where('NoteId').anyOf(noteIds).delete();\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { NoteCommentEntityManagerService } from './note-comment-entity-manager.service';\nimport { NoteLessonlearntEntityManagerService } from './note-lessonlearnt-entity-manager.service';\nimport { NoteTagEntityManagerService } from './note-tag-entity-manager.service';\nimport { Filter, DurationType } from '../InternalTypes';\nimport { LoadingService } from 'src/services/loading.service';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport * as moment from 'moment';\nimport { NoteAttachmentEntityManagerService } from './note-attachment-entity-manager.service';\nimport { db } from 'src/services/dexie.service';\nimport { INote, NoteDexie } from '../entity/dexie/Note.dexie';\nimport { NoteCommentDexie } from '../entity/dexie/NoteComment.dexie';\nimport { LessonLearntDexie } from '../entity/dexie/LeasonLearnt.dexie';\nimport { AttachmentDexie } from '../entity/dexie/Attachment.dexie';\nimport { NoteTagDexie } from '../entity/dexie/NoteTag.dexie';\nimport { HierarchyDexie } from '../entity/dexie/Hierarchy.dexie';\nimport Dexie from 'dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NoteEntityManagerService extends AppBaseEntityManager {\n protected _entityType = NoteDexie;\n dexieName = 'notes';\n constructor(\n private noteCommentEntityManager: NoteCommentEntityManagerService,\n private noteLessonLearntEntityManager: NoteLessonlearntEntityManagerService,\n private noteTagEntityManager: NoteTagEntityManagerService,\n private loading: LoadingService,\n private noteAttachmentEntityManager: NoteAttachmentEntityManagerService\n ) {\n super();\n }\n\n async getNotesForHierarchy(\n hierarchy: HierarchyDexie,\n user?: string\n ): Promise {\n if (!hierarchy) {\n throw new Error('hierarchy object is required');\n }\n const noteQueryBuilder = db.notes.filter(\n (n) =>\n n.ParentId == hierarchy.ForeignId &&\n n.ParentEntity === hierarchy.ForeignEntity &&\n n.IsDeleted !== true\n );\n \n if (user) {\n noteQueryBuilder.filter((n) => n.CreatedByUPN === user);\n }\n \n const notes = await noteQueryBuilder.reverse().sortBy('UpdatedDate');\n \n for (const note of notes) {\n note.Comments = await this.noteCommentEntityManager.getCommentsForNote(note.Id);\n note.Tags = await this.noteTagEntityManager.getTagsForNote(note.Id);\n }\n \n return notes.map((n) => new NoteDexie(n));\n }\n\n getNotesCountForHierarchy(\n hierarchy: HierarchyDexie,\n user?: string\n ): Promise {\n if (hierarchy) {\n const noteQueryBuilder = db.notes.filter(\n (e) =>\n e.ParentId == hierarchy.ForeignId &&\n e.ParentEntity === hierarchy.ForeignEntity &&\n e.IsDeleted != true\n );\n\n if (user) {\n noteQueryBuilder.filter((e) => e.CreatedByUPN === user);\n }\n return noteQueryBuilder.count();\n } else {\n return null;\n }\n }\n\n async createNote(note: NoteDexie): Promise {\n try {\n await db.notes.put(note);\n await this.noteCommentEntityManager.deleteCommentsForNote(note.Id);\n for (let index = 0; index < note.Comments.length; index++) {\n if (\n note.Comments[index].CreatedByUPN === null ||\n note.Comments[index].CreatedByUPN === undefined\n ) {\n note.Comments[index].CreatedByUPN = note.CreatedByUPN;\n note.Comments[index].UpdatedByUPN = note.UpdatedByUPN;\n note.Comments[index] = new NoteCommentDexie(note.Comments[index]);\n }\n }\n await this.noteCommentEntityManager.saveComments(note.Comments);\n await this.noteLessonLearntEntityManager.deletelessonlearntForNote(\n note.Id\n );\n await this.noteLessonLearntEntityManager.saveLessonLearnt(\n note.Lessonlearnt\n );\n const tagsForNote = [];\n for (const t of note.Tags) {\n const tag = new NoteTagDexie();\n tag.Tag = t;\n tag.NoteId = note.Id;\n tag.CreatedByUPN = note.CreatedByUPN;\n tag.UpdatedByUPN = note.UpdatedByUPN;\n tag.IsDeleted = false;\n tagsForNote.push(tag);\n }\n await this.noteTagEntityManager.deleteTagsForNote(note.Id);\n await this.noteTagEntityManager.saveTags(tagsForNote);\n await this.noteAttachmentEntityManager.deleteAttachmentsForNote(note.Id);\n await this.noteAttachmentEntityManager.saveAttachments(note.Attachments);\n } catch (error) {\n throw error;\n }\n }\n\n saveNotes(notes: NoteDexie[]): Promise {\n return new Promise((resolve, reject) => {\n this.bulkInsert2(notes, this.dexieName)\n .then(async (_) => {\n let comments = [];\n let tags = [];\n let attachments = [];\n let lessonlearnt = [];\n const NoteIdArray = notes.map((note) => note.Id);\n for (const note of notes) {\n if (note.Comments) {\n const commentsForNote = note.Comments.map((val) => {\n return new NoteCommentDexie(val);\n });\n comments = comments.concat(commentsForNote);\n }\n\n if (note.Lessonlearnt) {\n const LLforNote = note.Lessonlearnt.map((val) => {\n return new LessonLearntDexie(val);\n });\n lessonlearnt = lessonlearnt.concat(LLforNote);\n }\n\n if (note.Tags) {\n const tagsForNote = note.Tags.map((val) => {\n const tag = new NoteTagDexie();\n tag.Tag = val;\n tag.NoteId = note.Id;\n return tag;\n });\n tags = tags.concat(tagsForNote);\n }\n\n if (note.Attachments) {\n const attachmentForNote = note.Attachments.map((val) => {\n delete val['fileArray'];\n return new AttachmentDexie(val);\n });\n\n attachments = attachments.concat(attachmentForNote);\n }\n }\n await this.noteCommentEntityManager.deleteCommentsForNotes(\n NoteIdArray\n );\n await this.noteCommentEntityManager.bulkInsert2(\n comments,\n 'notecomment'\n );\n\n await this.noteLessonLearntEntityManager.deletelessonlearntForNotes(\n NoteIdArray\n );\n await this.noteLessonLearntEntityManager.bulkInsert2(\n lessonlearnt,\n 'lessonlearnt'\n );\n\n await this.noteTagEntityManager.deleteTagsForNotes(NoteIdArray);\n await this.noteTagEntityManager.bulkInsert2(tags, 'notetag');\n\n await this.noteAttachmentEntityManager.deleteAttachmentsForNotes(\n NoteIdArray\n );\n await this.noteAttachmentEntityManager.bulkInsert2(\n attachments,\n 'attachment'\n );\n resolve(); // since no method is called inside it\n })\n .catch((error) => reject(error));\n });\n }\n data: any;\n async getFilteredNotes(\n filter: Filter,\n eventId?: number\n ): Promise {\n try {\n this.loading.present();\n let filterNotes = [];\n let notesQ = db.notes;\n\n const hasTags = filter?.tags?.length > 0;\n if (hasTags) {\n const tagStr = filter.tags;\n const tag = (await db.notetag.where('Tag').anyOf(tagStr).toArray()).map(\n (item) => item.NoteId\n );\n this.data = await notesQ.where('Id').anyOf(tag).toArray();\n }\n\n if (eventId) {\n if (hasTags) {\n this.data = this.data.filter((e) => e.EventId == eventId);\n } else {\n this.data = await notesQ\n .where('EventId')\n .equals(eventId)\n .reverse()\n .sortBy('UpdatedDate');\n }\n }\n\n this.data = await this._getNotesFilterQuery(filter, eventId, notesQ);\n const notes = await this.data;\n this.loading.dismiss();\n return notes as NoteDexie[];\n } catch (e) {\n throw e;\n }\n }\n\n private async _getNotesFilterQuery(\n filter: Filter,\n eventId: number,\n notesQuery: Dexie.Table\n ) {\n if (filter?.hierarchy?.length > 0) {\n const hierarchyIds = [];\n for (const h of filter.hierarchy) {\n hierarchyIds.push(h.ForeignId);\n }\n this.data = this.data.filter((e) => hierarchyIds.includes(e.ParentId));\n }\n\n if (filter?.authors?.length > 0) {\n const authorStr = filter?.authors.map((author) => author.Upn);\n this.data = await notesQuery\n .where('CreatedByUPN')\n .anyOf(authorStr)\n .or('UpdatedByUPN')\n .anyOf(authorStr)\n .filter((e) => e.EventId == eventId)\n .toArray();\n }\n\n if (filter?.roles?.length > 0) {\n let roles = filter?.roles.join(`','`);\n roles = `'` + roles + `'`;\n this.data = this.data.filter((item) => filter?.roles.includes(item.Role));\n }\n\n // TODO: Modify Date comparisons\n if (filter?.shiftStartDate) {\n let date = new Date(filter?.shiftStartDate);\n date = new Date(\n date.getUTCFullYear(),\n date.getUTCMonth(),\n date.getUTCDate()\n );\n date.setUTCHours(0);\n const dateStr = date.toISOString();\n this.data = this.data.filter((e) => e.ShiftDate >= dateStr);\n }\n if (filter?.shiftEndDate) {\n let date = new Date(filter?.shiftEndDate);\n date = new Date(\n date.getUTCFullYear(),\n date.getUTCMonth(),\n date.getUTCDate()\n );\n date.setUTCHours(0);\n const dateStr = date.toISOString();\n this.data = this.data.filter((e) => e.ShiftDate <= dateStr);\n }\n if (filter?.shiftNames?.length > 0) {\n this.data = this.data.filter((e) =>\n filter?.shiftNames.includes(e.ShiftName)\n );\n }\n // Review time zone data are storage on UTC Time\n // get time on house\n const tm = moment(new Date()).utcOffset() / 60;\n if (filter?.duration === DurationType.halfDay) {\n let currentDate = new Date();\n currentDate.setHours(currentDate.getHours() + (-12 - tm));\n const value = currentDate.toISOString();\n this.data = this.data.filter((e) => e.CreatedDate >= value);\n } else if (filter?.duration === DurationType.fullDay) {\n let currentDate = new Date();\n currentDate.setHours(currentDate.getHours() + (-24 - tm));\n const value = currentDate.toISOString();\n this.data = this.data.filter((e) => e.CreatedDate <= value);\n } else {\n if (filter?.createdDateFrom) {\n let value = new Date(filter?.createdDateFrom).toISOString();\n this.data = this.data.filter((e) => e.CreatedDate >= value);\n }\n if (filter?.createdDateTo) {\n let value = new Date(filter?.createdDateTo).toISOString();\n\n this.data = this.data.filter((e) => e.CreatedDate <= value);\n }\n }\n\n return this.data;\n }\n\n getAllOfflineNotes(): Promise {\n return new Promise((resolve, reject) => {\n try {\n db.notes\n .filter((e) => e.IsUploaded === false && e.IsDeleted === false)\n .toArray()\n .then((note) => {\n resolve(note as NoteDexie[]);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n getOfflineNotes(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n try {\n db.notes\n .filter(\n (e) =>\n e.EventId == eventId &&\n e.IsUploaded !== true &&\n e.IsDeleted !== false\n )\n .toArray()\n .then((n) => {\n resolve(n as NoteDexie[]);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n getNote(noteId: string): Promise {\n return new Promise((resolve, reject) => {\n try {\n db.notes\n .filter((e) => e.Id == noteId)\n .first()\n .then((n) => {\n resolve(n as NoteDexie);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\nimport { LessonLearntDexie } from '../entity/dexie/LeasonLearnt.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NoteLessonlearntEntityManagerService extends AppBaseEntityManager {\n protected _entityType = LessonLearntDexie;\n dexieName = 'lessonlearnt';\n constructor() {\n super();\n }\n\n async getLessonLearntForNote(noteId: string): Promise {\n try {\n const LL = await db.lessonlearnt\n .filter((e) => e.NoteId === noteId)\n .toArray();\n return LL as LessonLearntDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n async getLessonLearntForNotes(\n notes: NoteDexie[]\n ): Promise {\n try {\n const notesIds = notes.map(({ Id }) => Id);\n const LL = await db.lessonlearnt\n .where('NoteId')\n .anyOf(notesIds)\n .toArray();\n return LL as LessonLearntDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n saveLessonLearnt(lessonlearnt: LessonLearntDexie[]): Promise {\n return this.bulkInsert2(lessonlearnt, this.dexieName);\n }\n\n async deletelessonlearntForNote(noteId: string): Promise {\n try {\n await db.lessonlearnt.where('NoteId').equals(noteId).delete();\n } catch (error) {\n throw error;\n }\n }\n\n async deletelessonlearntForNotes(noteIds: string[]): Promise {\n try {\n await db.lessonlearnt.where('NoteId').anyOf(noteIds).delete();\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { NoteTagDexie } from '../entity/dexie/NoteTag.dexie';\nimport { db } from 'src/services/dexie.service';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NoteTagEntityManagerService extends AppBaseEntityManager {\n protected _entityType = NoteTagDexie;\n dexieName = 'notetag';\n constructor() {\n super();\n }\n\n async getTagsForNote(noteId: string): Promise {\n try {\n const noteComments = await db.notetag\n .filter((e) => e.NoteId === noteId)\n .toArray();\n const ret = noteComments.map((comment: NoteTagDexie) => comment.Tag);\n return ret;\n } catch (error) {\n throw error;\n }\n }\n\n async getTagsForNotes(notes: NoteDexie[]): Promise {\n try {\n const notesIds = notes.map(({ Id }) => Id);\n const tag = await db.notetag.where('NoteId').anyOf(notesIds).toArray();\n return tag as NoteTagDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n saveTags(tags: NoteTagDexie[]): Promise {\n return this.bulkInsert2(tags, this.dexieName);\n }\n\n async deleteTagsForNote(noteId: string): Promise {\n try {\n await db.notetag.where('NoteId').equals(noteId).delete();\n } catch (error) {\n throw error;\n }\n }\n\n async deleteTagsForNotes(noteIds: string[]): Promise {\n try {\n await db.notetag.where('NoteId').anyOf(noteIds).delete();\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { OBSDexie } from '../entity/dexie/OBS.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ObsEntityManagerService extends AppBaseEntityManager {\n protected _entityType = OBSDexie;\n dexieName = 'obs';\n constructor() {\n super();\n }\n\n getSites(): Promise {\n return new Promise((resolve, reject) => {\n db.obs.toArray().then((obs) => {\n resolve(\n obs.map((c) => {\n const obs = new OBSDexie(c);\n return obs;\n })\n );\n });\n });\n }\n\n saveObs(obs: OBSDexie[]): Promise {\n return this.bulkInsert2(obs, this.dexieName);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { SummaryDexie } from '../entity/dexie/Summary.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SummaryEntityManagerService extends AppBaseEntityManager {\n protected _entityType = SummaryDexie;\n dexieName = 'summary';\n\n constructor() {\n super();\n }\n\n saveSummary(summary: SummaryDexie[]): Promise {\n return this.bulkInsert2(summary, this.dexieName);\n }\n\n getAllOfflineNotes(): Promise {\n return new Promise((resolve, reject) => {\n try {\n db.summary\n .filter((e) => e.IsUploaded != true && e.IsDeleted != true)\n .toArray()\n .then((r) => {\n resolve(r as SummaryDexie[]);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n async getSummary(summry: SummaryDexie[]): Promise {\n try {\n const summaryIds = summry.map(({ Id }) => Id);\n const summary = await db.summary.where('Id').anyOf(summaryIds).toArray();\n return summary as SummaryDexie[];\n } catch (error) {\n throw error;\n }\n }\n\n getOfflineSummary(\n provider: string,\n eventId: number\n ): Promise {\n return new Promise((resolve, reject) => {\n try {\n db.summary\n .filter((e) => e.EventId == eventId)\n .toArray()\n .then((r) => {\n resolve(r as SummaryDexie[]);\n });\n } catch (error) {\n reject(error);\n }\n });\n }\n\n async createSummary(summary: SummaryDexie): Promise {\n try {\n await db.summary.put(summary);\n } catch (err) {\n throw err;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport * as moment from 'moment';\nimport { SyncLogDexie } from '../entity/dexie/SyncLog.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SynclogEntityManagerService extends AppBaseEntityManager {\n constructor(private adalService: ADALProvider) {\n super();\n }\n\n async getLastSyncLogsForEntitiesByEnent(\n provider: string,\n eventId: number,\n entity: string\n ): Promise {\n try {\n const synclog = await db.synclog\n .filter((s) => s.Provider === provider && s.Entity === entity)\n .offset(0)\n .limit(1)\n .toArray();\n if (eventId) {\n synclog.filter((s) => s.EventId == eventId).reverse();\n }\n if (synclog?.length > 0) {\n const log = new SyncLogDexie(synclog);\n return log;\n }\n } catch (e) {\n throw e;\n }\n }\n\n createUploadSyncLogForEvent(\n provider: string,\n eventId: number,\n serviceName: string,\n largestValue: number\n ): Promise {\n return new Promise((resolve, reject) => {\n const syncLog = new SyncLogDexie();\n syncLog.Entity = serviceName;\n syncLog.EventId = eventId;\n syncLog.Provider = provider;\n syncLog.CreatedByUPN = this.adalService.getUPN();\n syncLog.CreatedDate = moment().toISOString();\n syncLog.LastDownloadTime = moment(\n new Date(largestValue + 1)\n ).toISOString();\n syncLog.LastUploadTime = '';\n db.synclog\n .put(syncLog)\n .then(() => {\n resolve();\n })\n .catch((err) => console.log(err));\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from './AppBaseEntityManager';\nimport { UserDexie } from '../entity/dexie/User.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserEntityManagerService extends AppBaseEntityManager {\n protected _entityType = UserDexie;\n dexieName = 'user';\n constructor() {\n super();\n }\n\n saveUsers(users: UserDexie[]): Promise {\n return this.bulkInsert2(users, this.dexieName);\n }\n\n async getUser(upn: string): Promise {\n const u = await db.user\n .filter((e) => e.Upn === upn)\n .first();\n return await (u as unknown as Promise);\n }\n\n async getUserUpnsWithNotes(eventId) {\n const notes = (\n await db.notes.where('EventId').equals(eventId).toArray()\n ).map((note) => note.CreatedByUPN);\n const users = await db.user.where('Upn').anyOf(notes).toArray();\n return users.map((u) => u.Upn);\n }\n}\n","import {\n HttpClient,\n HttpHeaders,\n HttpParams,\n HttpErrorResponse,\n} from '@angular/common/http';\nimport { retry, timeout } from 'rxjs/operators';\nimport { AppBaseEntityManager } from '../entityManager/AppBaseEntityManager';\nimport { environment } from './../../../src/environments/environment';\nimport { AuthService } from './../../../src/services/auth.service';\nimport { SyncConfig } from './../../../src/interface/SyncConfig';\nimport {\n Downloadable,\n Uploadable,\n} from './../../../src/interface/SyncInterface';\nimport { AppBaseEntity } from '../entity/AppBaseEntity';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\n\nexport class AppBaseServiceProvider {\n entityManger = AppBaseEntityManager;\n protected baseURL = environment.apiEndpoint;\n serviceName = null;\n dexieName = null;\n protected downloadOperationName = null;\n protected uploadOperationName = null;\n protected currentVersion = '1.0';\n\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public syncLogerEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider\n ) {}\n\n isDownloadable(): this is Downloadable {\n return 'download' in this;\n }\n\n isUploadable(): this is Uploadable {\n return 'upload' in this;\n }\n\n getDownloadUrl(): string {\n if (this.isDownloadable) {\n return `${this.baseURL}/${this.serviceName}/${this.downloadOperationName}`;\n } else {\n return null;\n }\n }\n\n getUploadUrl(): string {\n if (this.isUploadable) {\n return `${this.baseURL}/${this.serviceName}/${this.uploadOperationName}`;\n } else {\n return null;\n }\n }\n\n getBodyForDownload(config: SyncConfig): Promise {\n return Promise.resolve({\n projectId: config.project,\n lastUpdateDate: config.lastDownloadTime,\n });\n }\n\n getBodyForUpload(config: SyncConfig): Promise {\n return Promise.resolve({\n projectId: config.project,\n lastUpdateDate: config.lastUploadTime,\n });\n }\n\n getOptions(): object {\n const token = localStorage.getItem('Token')\n const headers: HttpHeaders = new HttpHeaders()\n .set('Authorization', 'Bearer ' + token)\n .set('Content-Type', 'application/json');\n\n return {\n headers,\n };\n }\n\n async post(\n url: string,\n body: any | null,\n options?: {\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n observe?: 'body';\n params?:\n | HttpParams\n | {\n [param: string]: string | string[];\n };\n reportProgress?: boolean;\n responseType?: 'json';\n withCredentials?: boolean;\n }\n ): Promise {\n try {\n let result = await this.http\n .post(url, body, options)\n .pipe(retry(10))\n .pipe(timeout(180000))\n .toPromise();\n if (result) {\n return result;\n } else {\n throw new Error('Request timeout');\n }\n } catch (e) {\n throw 'Unkown error Http POST';\n }\n }\n\n getItems(eventId: number, dateFrom: string, dateTo: string): Promise {\n let httpParams = new HttpParams();\n\n if (dateFrom) httpParams = httpParams.append('DateFrom', dateFrom);\n if (dateTo) httpParams = httpParams.append('DateTo', dateTo);\n httpParams = httpParams.append('api-version', this.currentVersion);\n\n return new Promise((resolve, reject) => {\n (async () => {\n this.http\n .get(`${this.baseURL}/${this.serviceName}/${eventId}`, {\n params: httpParams,\n })\n .pipe(timeout(300000))\n .subscribe(\n (vals) => {\n const helperValues = this.getNewVals(vals);\n if (vals.length > 0) {\n this.syncLogerEntityManager\n .createUploadSyncLogForEvent(\n helperValues.provider,\n eventId,\n this.serviceName,\n helperValues.largestValue\n )\n .then(() => {\n resolve(helperValues.newVals);\n });\n } else {\n resolve(helperValues.newVals);\n }\n },\n (error) => {\n reject(error);\n },\n () => {\n console.log('HTTP request completed.');\n }\n );\n })();\n });\n }\n\n getNewVals(vals: any[]): {\n largestValue: number;\n provider: string;\n newVals: any[];\n } {\n const helperValues = {\n largestValue: NaN,\n provider: '',\n newVals: [],\n };\n helperValues.newVals = vals.map((val) => {\n const newVal = new AppBaseEntity(val);\n const ud = Date.parse(newVal.UpdatedDate);\n if (helperValues.provider === '') {\n helperValues.provider = newVal['Provider']\n ? newVal['Provider']\n : 'TaPro';\n }\n if (isNaN(helperValues.largestValue) || ud > helperValues.largestValue)\n helperValues.largestValue = ud;\n return newVal;\n });\n return helperValues;\n }\n\n async saveItems(items: any[]): Promise {\n try {\n const response = await this.http\n .post(`${this.baseURL}/${this.serviceName}`, items)\n .pipe(timeout(30000))\n .toPromise();\n return response;\n } catch (error) {\n throw error;\n }\n }\n\n async saveSummaryItems(items: any[]): Promise {\n try {\n const item = items[0];\n const response = await this.http\n .post(`${this.baseURL}/${this.serviceName}`, item)\n .pipe(timeout(30000))\n .toPromise();\n return response;\n } catch (error) {\n throw error;\n }\n }\n\n getIncrementalItems(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n this.syncLogerEntityManager\n .getLastSyncLogsForEntitiesByEnent(provider, eventId, this.serviceName)\n .then((log) => {\n const dateFrom = log ? log.LastDownloadTime : null;\n this.getItems(eventId, dateFrom, null)\n .then((rets) => {\n resolve(rets);\n })\n .catch((err) => {\n reject(err);\n });\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseServiceProvider } from './AppBaseService';\nimport { HttpParams, HttpClient } from '@angular/common/http';\nimport { timeout } from 'rxjs/operators';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\nimport { CODEDexie } from '../entity/dexie/CODE.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CodeService extends AppBaseServiceProvider {\n serviceName = 'Code';\n currentVersion = '1.0';\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n\n async getCodes(): Promise {\n let httpParams = new HttpParams();\n httpParams = httpParams.append('api-version', this.currentVersion);\n try {\n const response = await this.http\n .get(`${this.baseURL}/${this.serviceName}`, {\n params: httpParams,\n })\n .pipe(timeout(30000))\n .toPromise();\n return response;\n } catch (error) {\n throw error;\n }\n }\n\n async getItems(\n eventId: number,\n dateFrom: string,\n dateTo: string\n ): Promise {\n let httpParams = new HttpParams();\n\n if (dateFrom) httpParams = httpParams.append('DateFrom', dateFrom);\n if (dateTo) httpParams = httpParams.append('DateTo', dateTo);\n httpParams = httpParams.append('api-version', this.currentVersion);\n\n try {\n const response = await this.http\n .get(`${this.baseURL}/${this.serviceName}`, {\n params: httpParams,\n })\n .pipe(timeout(300000))\n .toPromise();\n\n const helperValues = this.getNewVals(response);\n\n if (response.length > 0) {\n await this.syncLogerEntityManager.createUploadSyncLogForEvent(\n helperValues.provider,\n eventId,\n this.serviceName,\n helperValues.largestValue\n );\n }\n\n return helperValues.newVals;\n } catch (error) {\n throw error;\n }\n }\n\n async getRoles(): Promise {\n let httpParams = new HttpParams();\n httpParams = httpParams\n .append('api-version', this.currentVersion)\n .append('category', 'role');\n\n try {\n const response = await this.http\n .get(`${this.baseURL}/${this.serviceName}`, {\n params: httpParams,\n })\n .pipe(timeout(30000))\n .toPromise();\n\n return response;\n } catch (error) {\n console.error('HTTP request failed:', error);\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseServiceProvider } from './AppBaseService';\nimport { HttpClient } from '@angular/common/http';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\nimport { HierarchyDexie } from '../entity/dexie/Hierarchy.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class HierarchyService extends AppBaseServiceProvider {\n serviceName = 'Hierarchy';\n flattenedHierarchyArray: HierarchyDexie[];\n selectedHierarchyPath: HierarchyDexie[];\n currentVersion = '1.0';\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { AppBaseServiceProvider } from './AppBaseService';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { NoteEntityManagerService } from '../entityManager/note-entity-manager.service';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\nimport { Platform } from '@ionic/angular';\nimport { NoteAttachmentEntityManagerService } from '../EntityManagerIndex';\nimport { AttachmentHelperService } from '../helper/attachment-helper.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NotesService extends AppBaseServiceProvider {\n serviceName = 'Note';\n currentVersion = '1.0';\n\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n private platform: Platform,\n public adalService: ADALProvider,\n public noteManager: NoteEntityManagerService,\n private noteAttachmentEntityManager: NoteAttachmentEntityManagerService,\n private attachmentService: AttachmentHelperService\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n\n async uploadOfflineNotes(provider: string, eventId: number): Promise {\n this.noteManager.getOfflineNotes(provider, eventId).then((notes) => {\n if (notes?.length > 0) {\n this.saveItems(notes)\n .then(async (_) => {\n const attachments =\n await this.noteAttachmentEntityManager.getAttachmentsForNotesHome(\n notes\n );\n for (let att of attachments) {\n if (att?.FileURI) {\n att.FormatedFile =\n await this.attachmentService.getImageBlobFile(att);\n }\n }\n await this.attachmentService.saveAttachments(attachments);\n })\n .catch((err) => {\n throw err;\n });\n }\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { timeout } from 'rxjs/operators';\nimport { AppBaseEntity } from '../EntityIndex';\nimport { environment } from 'src/environments/environment';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class OBSService {\n serviceName = 'Hierarchy';\n downloadOperationName = 'obs';\n currentVersion = '1.0';\n\n constructor(\n private readonly _http: HttpClient,\n private readonly _syncLogerEntityManager: SynclogEntityManagerService\n ) {}\n\n async getItems(\n eventId: number,\n dateFrom: string,\n dateTo: string\n ): Promise {\n let httpParams = new HttpParams();\n\n if (dateFrom) httpParams = httpParams.append('DateFrom', dateFrom);\n if (dateTo) httpParams = httpParams.append('DateTo', dateTo);\n httpParams = httpParams.append('api-version', this.currentVersion);\n try {\n const vals = await this._http\n .get(\n `${environment.apiEndpoint}/${this.serviceName}/${this.downloadOperationName}`,\n {\n params: httpParams,\n }\n )\n .pipe(timeout(300000))\n .toPromise();\n const helperValues = this.getNewVals(vals);\n if (vals.length > 0) {\n this._syncLogerEntityManager.createUploadSyncLogForEvent(\n helperValues?.provider,\n -1,\n this.downloadOperationName,\n helperValues?.largestValue\n );\n return helperValues?.newVals;\n } else {\n return helperValues?.newVals;\n }\n } catch (error) {\n throw error;\n }\n }\n\n getIncrementalItems(provider: string): Promise {\n return new Promise((resolve, reject) => {\n this._syncLogerEntityManager\n .getLastSyncLogsForEntitiesByEnent(\n provider,\n NaN,\n this.downloadOperationName\n )\n .then((log) => {\n const dateFrom = log ? log.LastDownloadTime : null;\n this.getItems(-1, dateFrom, null)\n .then((rets) => {\n resolve(rets);\n })\n .catch((err) => {\n reject(err);\n });\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n\n getNewVals(vals: any[]): {\n largestValue: number;\n provider: string;\n newVals: any[];\n } {\n const helperValues = {\n largestValue: NaN,\n provider: '',\n newVals: [],\n };\n helperValues.newVals = vals.map((val) => {\n const newVal = new AppBaseEntity(val);\n const ud = Date.parse(newVal.UpdatedDate);\n if (helperValues.provider === '') {\n helperValues.provider = newVal['Provider']\n ? newVal['Provider']\n : 'TaPro';\n }\n if (isNaN(helperValues.largestValue) || ud > helperValues.largestValue)\n helperValues.largestValue = ud;\n return newVal;\n });\n return helperValues;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { AppBaseServiceProvider } from './AppBaseService';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\nimport { SummaryEntityManagerService } from '../entityManager/summary-entity-manager.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SummaryService extends AppBaseServiceProvider {\n serviceName = 'summary';\n currentVersion = '1.0';\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider,\n public summaryManager: SummaryEntityManagerService\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n\n uploadOfflineSummary(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n this.summaryManager\n .getOfflineSummary(provider, eventId)\n .then((summary) => {\n if (summary && summary.length > 0) {\n this.saveSummaryItems(summary);\n } else {\n resolve();\n }\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseServiceProvider } from './AppBaseService';\nimport { HttpClient } from '@angular/common/http';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserService extends AppBaseServiceProvider {\n serviceName = 'User';\n currentVersion = '1.0';\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Guid } from './../../shared/GUID';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { File } from '@ionic-native/file/ngx';\nimport { environment } from './../../environments/environment';\nimport { forkJoin } from 'rxjs';\nimport { NoteAttachmentEntityManagerService } from '../EntityManagerIndex';\nimport { AttachmentDexie } from '../entity/dexie/Attachment.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AttachmentHelperService {\n protected baseURL = environment.apiEndpoint;\n constructor(\n private httpClient: HttpClient,\n private file: File,\n private noteAttachmentEntityManager: NoteAttachmentEntityManagerService\n ) {}\n\n async saveAttachments(attachments: Array) {\n try {\n const calls: Array = this._getCalls(attachments);\n const savedAttachments = await forkJoin(calls).toPromise();\n\n // set returned index and update\n const attachmentRepository = db.attachment;\n for (const [index, id] of savedAttachments.entries()) {\n if (attachments[index].Id === '') {\n const att = await attachmentRepository\n .where('TimeStamp')\n .equals(attachments[index].TimeStamp)\n .first();\n if (att) {\n att.Id = id.toString();\n att.IsUploaded = true;\n await db.attachment.put(att);\n } else {\n attachments[index].Id = id.toString();\n attachments[index].IsUploaded = true;\n await db.attachment.put(attachments[index]);\n }\n }\n }\n const NoteIdArray = attachments.map((attachment) =>\n attachment.NoteId.toString()\n );\n const uniqueNoteId = [...new Set(NoteIdArray)];\n await this.noteAttachmentEntityManager.deleteAttachmentsForNotesNoLongerAvailable(\n uniqueNoteId\n );\n } catch (error) {\n console.error('Error in saveAttachments:', error);\n throw error;\n }\n }\n\n private _getCalls(attachments: Array): Array {\n const calls: Array = [];\n attachments.forEach((attachment) => {\n if (attachment && attachment.FormatedFile) {\n const formData = new FormData();\n const contentType = this.getContentType(attachment.FormatedFile);\n const DataBlob = this.base64toBlob(\n attachment.FormatedFile,\n contentType\n );\n formData.append('file', DataBlob);\n formData.append('attachment', JSON.stringify(attachment));\n if (attachment.Id === '') {\n calls.push(\n this.httpClient.post(\n `${this.baseURL}/Attachment/saveattachment`,\n formData\n )\n );\n } else {\n calls.push(\n this.httpClient.put(\n `${this.baseURL}/Attachment/updateimages`,\n attachment\n )\n );\n }\n } else if (attachment.Id) {\n calls.push(\n this.httpClient.put(\n `${this.baseURL}/Attachment/updateimages`,\n attachment\n )\n );\n }\n });\n return calls;\n }\n\n updateAttachments(attachments: Array): Promise {\n return new Promise((resolve, reject) => {});\n }\n\n deleteAttachments(attachments: Array): Promise {\n return new Promise((resolve, reject) => {});\n }\n\n downloadAttachments(noteId: Guid): Promise> {\n return new Promise>((resolve, reject) => {\n let httpParams = new HttpParams();\n httpParams = httpParams.append('NoteId', noteId.toString());\n this.httpClient\n .get(`${this.baseURL}/Attachment/downloadimages`, {\n params: httpParams,\n })\n .subscribe((attachments: Array) => {\n resolve(attachments);\n });\n });\n }\n\n // here is the method is used to convert base64 data to blob data\n public base64toBlob(b64Data, contentType) {\n const imageType = typeof b64Data;\n if (imageType == 'object') {\n b64Data = b64Data.changingThisBreaksApplicationSecurity;\n }\n contentType = contentType || '';\n const sliceSize = 512;\n const data = b64Data.split(',')[1];\n const byteCharacters = atob(data);\n const byteArrays = [];\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize);\n const byteNumbers = new Array(slice.length);\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n byteArrays.push(byteArray);\n }\n const blob = new Blob(byteArrays, {\n type: contentType,\n });\n return blob;\n }\n\n // here is the method is used to get content type of an bas64 data\n getContentType(base64Data: any) {\n const imageType = typeof base64Data;\n if (imageType == 'object') {\n base64Data = base64Data.changingThisBreaksApplicationSecurity;\n }\n const block = base64Data.split(';');\n const contentType = block[0].split(':')[1];\n return contentType;\n }\n\n // get images from local\n async getImageBlobFile(attachment: AttachmentDexie) {\n const path = attachment.FileURI.substring(\n 0,\n attachment.FileURI.lastIndexOf(attachment.FileName)\n );\n const fileName = attachment.FileName;\n this.file.readAsDataURL(path, fileName).then((base64) => {\n return base64;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HierarchyEntityManagerService } from '../entityManager/hierarchy-entity-manager.service';\nimport { from, of } from 'rxjs';\nimport { HierarchyDexie } from '../entity/dexie/Hierarchy.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class HierarchyHelperService {\n // hierarchy raw data\n unflattenedHierarchyArray: HierarchyDexie[];\n\n // full flattened hierarchy array which includes displayed or hidden hierarchy\n fullFlattenedHierarchyArray: HierarchyDexie[];\n\n // displayed flatten hierarchy\n flattenedHierarchyArray: HierarchyDexie[];\n\n // selected hierarchy list\n selectedHierarchyPath: HierarchyDexie[];\n\n eventId: number;\n provider: string;\n\n private _scrollPosition = 0;\n public get scrollPosition(): number {\n return this._scrollPosition;\n }\n public set scrollPosition(value: number) {\n this._scrollPosition = value;\n }\n constructor(private hierarchyEntityManager: HierarchyEntityManagerService) {}\n\n reset(provider: string, eventId: number, force?: boolean) {\n if (this.eventId !== undefined && this.eventId !== eventId) {\n force = true;\n }\n this.scrollPosition = 0;\n this.eventId = eventId;\n this.provider = provider;\n this.unflattenedHierarchyArray = undefined;\n this.flattenedHierarchyArray = undefined;\n\n if (force) {\n this.fullFlattenedHierarchyArray = undefined;\n } else {\n if (this.fullFlattenedHierarchyArray) {\n this.fullFlattenedHierarchyArray.forEach((element) => {\n element.isMatched = undefined;\n element.isExpanded = false;\n });\n // the first element in hierarchy list is always project level hierarchy and it should be expanded at the begining\n if (this.fullFlattenedHierarchyArray[0]) {\n this.fullFlattenedHierarchyArray[0].isExpanded = true;\n }\n }\n }\n }\n\n async getHierarchyForEnvent(\n provider: string,\n eventId: number\n ): Promise {\n if (this.provider !== provider || this.eventId !== eventId) {\n this.reset(provider, eventId, true);\n }\n try {\n if (!this.unflattenedHierarchyArray) {\n this.unflattenedHierarchyArray =\n await this.hierarchyEntityManager.getHierarchyForEnvent(\n eventId,\n provider\n );\n }\n\n return this.unflattenedHierarchyArray;\n } catch (error) {\n throw error;\n }\n }\n\n lazyLoadingFlattenHierarchy(\n provider: string,\n eventId: number,\n onlyActiveWBSs: boolean = false,\n parentId?: number\n ): Promise {\n let currentHierarchy: HierarchyDexie = null;\n let currentHierarchyIndex = 0;\n if (this.provider !== provider || this.eventId !== eventId) {\n this.reset(provider, eventId, true);\n }\n return new Promise((resolve, reject) => {\n (async () => {\n if (!this.unflattenedHierarchyArray) {\n this.flattenedHierarchyArray = [];\n this.unflattenedHierarchyArray = await this.getHierarchyForEnvent(\n provider,\n eventId\n );\n }\n let hierarchyArrayToUse = this.fullFlattenedHierarchyArray\n ? this.fullFlattenedHierarchyArray\n : this.unflattenedHierarchyArray;\n\n if (onlyActiveWBSs) {\n hierarchyArrayToUse\n .filter((t) => t.IsDeleted)\n .forEach((t) => {\n if (t.children) {\n t.children.forEach((c) => (c.IsDeleted = true));\n }\n });\n hierarchyArrayToUse = hierarchyArrayToUse.filter((t) => !t.IsDeleted);\n }\n\n if (\n this.flattenedHierarchyArray === undefined ||\n this.flattenedHierarchyArray.length < 1\n ) {\n const ret = hierarchyArrayToUse.filter(\n (ele) => ele.ForeignId === eventId\n );\n\n let root: HierarchyDexie;\n\n if (ret && ret.length > 0) {\n root = ret[0];\n } else {\n reject('no WBS found.');\n }\n\n this.flattenedHierarchyArray = [];\n this.flattenedHierarchyArray.push(root);\n currentHierarchy = root;\n currentHierarchyIndex = 0;\n\n root.children = hierarchyArrayToUse.filter(\n (ele) => ele.ForeignParentId === eventId\n );\n root.children.forEach((element: HierarchyDexie) => {\n element.parent = root;\n });\n this.flattenedHierarchyArray.splice(1, 0, ...root.children);\n } else {\n for (\n let index = 0;\n index < this.flattenedHierarchyArray.length;\n index++\n ) {\n const element = this.flattenedHierarchyArray[index];\n if (element.ForeignId === parentId) {\n // find the hierarchy note and expand it\n currentHierarchy = element;\n currentHierarchyIndex = index;\n if (!element.children) {\n const filterRet1 = hierarchyArrayToUse.filter((ele) => {\n if (ele.ForeignParentId === parentId) {\n ele.parent = element;\n return true;\n } else {\n return false;\n }\n });\n if (filterRet1 && filterRet1.length > 0) {\n element.children = filterRet1;\n currentHierarchyIndex += filterRet1.length;\n this.flattenedHierarchyArray.splice(\n index + 1,\n 0,\n ...filterRet1\n );\n }\n } else {\n // check if children have already added to list\n const filterRet2 = this.flattenedHierarchyArray.filter(\n (ele2) => {\n if (element.children && element.children.length > 0) {\n return ele2.ForeignId === element.children[0].ForeignId;\n } else {\n return false;\n }\n }\n );\n if (!filterRet2 || filterRet2.length < 1) {\n this.flattenedHierarchyArray.splice(\n index + 1,\n 0,\n ...element.children\n );\n }\n break;\n }\n\n break;\n } else {\n continue;\n }\n }\n }\n\n // load activities for hierarchy\n if (currentHierarchy) {\n if (\n !currentHierarchy.activityChecked &&\n currentHierarchy.ForeignEntity !== 'Activity'\n ) {\n const activities =\n await this.hierarchyEntityManager.getActivitiesForHierarchy(\n currentHierarchy\n );\n\n if (activities && activities.length > 0) {\n activities.forEach((activity) => {\n activity.children = [];\n activity.parent = currentHierarchy;\n });\n currentHierarchy.children = currentHierarchy.children\n ? currentHierarchy.children.concat(activities)\n : activities;\n this.flattenedHierarchyArray.splice(\n currentHierarchyIndex + 1,\n 0,\n ...activities\n );\n }\n\n if (!currentHierarchy.children) {\n currentHierarchy.children = [];\n }\n currentHierarchy.activityChecked = true;\n }\n }\n resolve(this.flattenedHierarchyArray);\n })();\n });\n }\n\n getFlattenHierarchyArrayWithParent(\n eventId: number,\n provider: string\n ): Promise {\n if (this.provider !== provider || this.eventId !== eventId) {\n this.reset(provider, eventId, true);\n }\n return new Promise((resolve, reject) => {\n this.getHierarchyForEnvent(provider, eventId).then((rets) => {\n this.unflattenedHierarchyArray = rets;\n this.fullFlattenedHierarchyArray = [];\n this.selectedHierarchyPath = [];\n const hierarchy = this.buildHierarchy(this.unflattenedHierarchyArray);\n this.flattenHierarchyHierarchy(hierarchy);\n resolve(this.fullFlattenedHierarchyArray);\n });\n });\n }\n\n buildHierarchy(arr: HierarchyDexie[]) {\n // get the root level - project\n let projectRoot;\n for (const hirEle of arr) {\n if (hirEle.ForeignEntity === 'Project') {\n projectRoot = hirEle;\n }\n hirEle.children = [];\n }\n if (projectRoot) {\n projectRoot.children = this.getNestedChildren(arr, projectRoot.ForeignId);\n }\n\n return projectRoot;\n }\n\n getNestedChildren(arr: HierarchyDexie[], parent: number) {\n const out = [];\n for (const i in arr) {\n if (arr[i].ForeignParentId === parent) {\n const children = this.getNestedChildren(arr, arr[i].ForeignId);\n\n if (children.length) {\n arr[i].children = children;\n }\n out.push(arr[i]);\n }\n }\n return out;\n }\n\n flattenHierarchyHierarchy(unflattenedHierarchy: HierarchyDexie) {\n if (unflattenedHierarchy) {\n const wbs = unflattenedHierarchy;\n wbs.isExpanded =\n this.fullFlattenedHierarchyArray.length === 0 ? true : false;\n if (wbs.isExpanded) {\n this.selectedHierarchyPath.push(wbs);\n }\n this.fullFlattenedHierarchyArray.push(wbs);\n const unflattenedChildHierarchyhierarchy = unflattenedHierarchy.children;\n if (unflattenedChildHierarchyhierarchy) {\n unflattenedChildHierarchyhierarchy.forEach((childHierarchy) => {\n childHierarchy.parent = wbs;\n this.flattenHierarchyHierarchy(childHierarchy);\n });\n }\n }\n }\n\n async getHierarchyById(\n eventId: number,\n hierarchyId: number,\n provider: string\n ): Promise {\n try {\n if (this.fullFlattenedHierarchyArray === undefined) {\n await this.getFlattenHierarchyArrayWithParent(eventId, provider);\n }\n let ret: HierarchyDexie = null;\n for (let f of this.fullFlattenedHierarchyArray) {\n if (f.ForeignId === hierarchyId) {\n ret = f;\n break;\n }\n }\n\n return ret;\n } catch (error) {\n throw error;\n }\n }\n\n getHierarchyPathForHierarchy(\n hierarchy: HierarchyDexie,\n hirerarchyPath: HierarchyDexie[]\n ) {\n hirerarchyPath.push(hierarchy);\n if (hierarchy.parent) {\n return this.getHierarchyPathForHierarchy(\n hierarchy.parent,\n hirerarchyPath\n );\n } else {\n hirerarchyPath = hirerarchyPath.reverse();\n return hirerarchyPath;\n }\n }\n\n getHierarchyPathStringForHierarchy(hierarchy: HierarchyDexie): string {\n let str = '';\n if (hierarchy) {\n const hierarchyPath: HierarchyDexie[] = [];\n this.getHierarchyPathForHierarchy(hierarchy, hierarchyPath);\n str = hierarchyPath.map((hir) => hir.Name).join(' / ');\n }\n\n return str;\n }\n\n filter(query: string, activesOnly: boolean): Promise {\n return new Promise((resolve, reject) => {\n let fullFlattenedHierarchyArrayObservable = of(\n this.fullFlattenedHierarchyArray\n );\n\n if (!this.fullFlattenedHierarchyArray) {\n fullFlattenedHierarchyArrayObservable = from(\n this.getFlattenHierarchyArrayWithParent(this.eventId, this.provider)\n );\n }\n\n fullFlattenedHierarchyArrayObservable.subscribe((hList) => {\n if (hList) {\n this.fullFlattenedHierarchyArray = hList;\n }\n this._onFullFlattenedHierarchyArrayResponse(hList, activesOnly, query);\n resolve(); // since no method is called inside it\n });\n });\n }\n\n private _onFullFlattenedHierarchyArrayResponse(\n hList: HierarchyDexie[],\n activesOnly: boolean,\n query: string\n ) {\n this.fullFlattenedHierarchyArray.forEach((hierarchy) => {\n const isMatched = this.isMatch(hierarchy, query);\n hierarchy.isMatched = false;\n if (isMatched) {\n hierarchy.isMatched = true;\n if (!activesOnly) {\n hierarchy = this._getChildIsMatched(hierarchy, query, false);\n let hir = hierarchy;\n while (hir.parent && !hir.parent.isMatched) {\n hir.parent.isMatched = true;\n hir = hir.parent;\n }\n } else if (!hierarchy.IsDeleted) {\n hierarchy = this._getChildIsMatched(hierarchy, query, true);\n let hir = hierarchy;\n while (!hir?.parent?.isMatched && !hir?.parent?.IsDeleted) {\n hir.parent.isMatched = true;\n hir = hir.parent;\n }\n }\n }\n });\n }\n\n private _getChildIsMatched(\n hierarchy: HierarchyDexie,\n query: string,\n IsDeleted: boolean\n ): HierarchyDexie {\n hierarchy.children.forEach((child) => {\n if (IsDeleted)\n child.isMatched = this.isMatch(child, query) && !child.IsDeleted;\n else child.isMatched = this.isMatch(child, query);\n });\n return hierarchy;\n }\n\n isMatch(item: HierarchyDexie, toFind: string): boolean {\n if (\n (item.Name === null || typeof item.Name === 'undefined'\n ? ''\n : item.Name.toLowerCase()\n ).includes(toFind.toLowerCase()) ||\n (item.Category === null || typeof item.Category === 'undefined'\n ? ''\n : item.Category.toLowerCase()\n ).includes(toFind.toLowerCase())\n ) {\n return true;\n }\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Profile } from '../model/Profile';\nimport { User } from '../User';\nimport { IdentityServiceProvider } from '../otherService/IdentityService';\nimport { CodeService } from '../entityService/code.service';\nimport { OBSService } from '../entityService/obs.service';\nimport { EventServiceProvider } from '../otherService/EventService';\nimport { ProfileServiceProvider } from '../otherService/ProfileService';\nimport { EventEntityManagerService } from '../otherService/event-entity-manager.service';\nimport { CodeEntityManagerService } from '../entityManager/code-entity-manager.service';\nimport { ObsEntityManagerService } from '../entityManager/obs-entity-manager.service';\nimport { NoteEntityManagerService } from '../entityManager/note-entity-manager.service';\nimport { SummaryEntityManagerService } from '../entityManager/summary-entity-manager.service';\nimport { CODEDexie } from '../entity/dexie/CODE.dexie';\nimport { OBSDexie } from '../entity/dexie/OBS.dexie';\nimport { EventDexie } from '../entity/dexie/Event.dexie';\nimport { NoteDexie } from '../entity/dexie/Note.dexie';\nimport { SummaryDexie } from '../entity/dexie/Summary.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileHelperService {\n profile: Profile;\n user: User;\n constructor(\n private readonly _identityService: IdentityServiceProvider,\n private codeService: CodeService,\n private readonly _obsService: OBSService,\n private eventService: EventServiceProvider,\n private readonly _profileService: ProfileServiceProvider,\n private eventManagerService: EventEntityManagerService,\n private codeManagerService: CodeEntityManagerService,\n private obsManagerService: ObsEntityManagerService,\n private noteManagerService: NoteEntityManagerService,\n private summaryEntityManagerService: SummaryEntityManagerService\n ) {}\n\n save() {\n // save profile to localstorage\n if (this.profile) {\n localStorage.setItem('Profile', JSON.stringify(this.profile));\n }\n }\n\n getProfile(): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n // get profile from localstorage\n this.user = await this.getUserInfo();\n\n this.profile = JSON.parse(localStorage.getItem('Profile')) as Profile;\n if (this.profile) {\n resolve(this.profile);\n } else {\n this._profileService\n .getProfile()\n .then((ret) => {\n this.profile = ret;\n this.save();\n if (this.profile) {\n resolve(this.profile);\n } else {\n reject('Profile not available');\n }\n })\n .catch((err) => {\n reject();\n });\n }\n\n // TODO: get profile from API\n // TODO: get user identity and assign it to profile\n // TODO: Error handling\n\n // If profile cannot be download from API, create profile\n })();\n });\n }\n\n updateProfile(profile: Profile): Promise {\n return new Promise((resolve, reject) => {\n this.validateProfile(profile)\n .then(async (validatedProfile) => {\n this._profileService\n .saveProfile(profile)\n .then((uploadedProfile) => {\n this.profile = uploadedProfile;\n this.save();\n resolve();\n })\n .catch((err) => {\n this.save();\n reject(err);\n });\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n\n getLocalUserInfo(): User {\n return JSON.parse(localStorage.getItem('User')) as User;\n }\n\n getUserInfo(): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n let user: User = JSON.parse(localStorage.getItem('User')) as User;\n if (!user) {\n this._identityService\n .getUser()\n .then((usr) => {\n user = usr;\n localStorage.setItem('User', JSON.stringify(user));\n resolve(user);\n })\n .catch((err) => {\n reject(err);\n });\n } else {\n resolve(user);\n }\n })();\n });\n }\n\n getRoles(): Promise {\n return new Promise((resolve, reject) => {\n let rolesRet: CODEDexie[];\n this.codeService\n .getRoles()\n .then(async (ret) => {\n await this.codeManagerService.saveCodes(ret);\n })\n .catch(async (err) => {\n rolesRet = await this.codeManagerService.getRoles();\n })\n .catch((err2) => {\n reject(err2);\n })\n .finally(() => {\n if (rolesRet) {\n resolve(rolesRet);\n } else {\n this.codeManagerService.getRoles().then((roles) => {\n rolesRet = roles;\n resolve(rolesRet);\n });\n }\n });\n });\n }\n\n getOBS(): Promise {\n return new Promise((resolve, reject) => {\n let OBSRet: OBSDexie[];\n this._obsService\n .getItems(-1, null, null) // obs is non-project specific, so use -1\n .then(async (rets) => {\n await this.obsManagerService.saveObs(rets);\n })\n .catch(async (err) => {\n OBSRet = await this.obsManagerService.getSites();\n })\n .catch((err2) => {\n reject(err2);\n })\n .finally(() => {\n if (OBSRet) {\n resolve(OBSRet);\n } else {\n this.obsManagerService.getSites().then((sites) => {\n OBSRet = sites;\n resolve(OBSRet);\n });\n }\n });\n });\n }\n\n getEvents(obsName: string): Promise {\n return new Promise((resolve, reject) => {\n let EventRet: EventDexie[];\n this.eventService\n .getEventsBySite(obsName)\n .then(async (rets) => {\n await this.eventManagerService.saveEvents(rets, obsName);\n })\n .catch(async (err) => {\n EventRet = await this.eventManagerService.getEvents(obsName);\n })\n .catch((err2) => {\n reject(err2);\n })\n .finally(() => {\n if (EventRet) {\n resolve(EventRet);\n } else {\n this.eventManagerService.getEvents(obsName).then((events) => {\n EventRet = events;\n resolve(EventRet);\n });\n }\n });\n });\n }\n\n initializeProfile(): Promise {\n return new Promise((resolve, reject) => {\n this.profile = new Profile();\n this.profile.preferredSOR = 'TaPro';\n this.profile.preferredRole = '';\n this.profile.preferredOBS = '';\n this.profile.preferredEvent = '';\n this.profile.preferredEventId = 0;\n this.profile.isCompleted = false;\n resolve(this.profile);\n });\n }\n\n validateProfile(profile: Profile): Promise {\n return new Promise((resolve, reject) => {\n if (\n profile.preferredEventId &&\n profile.preferredOBS &&\n profile.preferredRole\n ) {\n profile.isAdmin = false;\n profile.preferredSOR = 'TaPro';\n resolve(profile);\n } else {\n reject('invalid profile');\n }\n });\n }\n\n getAllOfflineNotes(): Promise {\n return new Promise((resolve, reject) => {\n this.noteManagerService\n .getAllOfflineNotes()\n .then((notes) => {\n resolve(notes);\n })\n .catch((e) => {\n reject(e);\n });\n });\n }\n\n getAllOfflineSummary(): Promise {\n return new Promise((resolve, reject) => {\n this.summaryEntityManagerService\n .getAllOfflineNotes()\n .then((summary) => {\n resolve(summary);\n })\n .catch((e) => {\n reject(e);\n });\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { UserEntityManagerService } from '../EntityManagerIndex';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { UserDexie } from '../entity/dexie/User.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserHelperService {\n constructor(\n private userEntityManager: UserEntityManagerService,\n private adalService: ADALProvider\n ) {}\n private usersMap: any = {};\n private users: UserDexie[];\n private isInited = false;\n\n buildUsers(force?: boolean): Promise {\n return new Promise((resolve, reject) => {\n if (this.isInited && !force) {\n resolve();\n } else {\n this.userEntityManager\n .getAll()\n .then((rets) => {\n this.users = rets as UserDexie[];\n this.users.forEach((user) => {\n this.usersMap[user.Upn] = user;\n });\n this.isInited = true;\n resolve();\n })\n .catch((e) => reject(e));\n }\n });\n }\n getMyInfo(): UserDexie {\n return new UserDexie({ Upn: this.adalService.getUPN() });\n }\n\n getUserInfo(upn: string): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n const userInfo = this.usersMap ? this.usersMap[upn] : null;\n if (userInfo) {\n // get from memory\n resolve(userInfo);\n } else {\n // get from db\n this.userEntityManager.getUser(upn).then((user) => {\n this.usersMap[upn] = user;\n resolve(user);\n });\n }\n } catch (error) {\n reject(error);\n }\n })();\n });\n }\n\n searchUser(query: string): Promise {\n const queryInUpperCase = query.toUpperCase();\n return new Promise((resolve, reject) => {\n this.buildUsers()\n .then(() => {\n const filtedUsers = this.users.filter(\n (user) =>\n (user.FirstName &&\n user.FirstName.toUpperCase().indexOf(queryInUpperCase) !==\n -1) ||\n (user.LastName &&\n user.LastName.toUpperCase().indexOf(queryInUpperCase) !== -1) ||\n (user.Email &&\n user.Email.toUpperCase().indexOf(queryInUpperCase) !== -1)\n );\n resolve(filtedUsers);\n })\n .catch((e) => reject(e));\n });\n }\n\n getUsersWithNotes(eventId: number): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n this.userEntityManager\n .getUserUpnsWithNotes(eventId)\n .then((rets) => {\n resolve(rets);\n })\n .catch((e) => reject(e));\n })();\n });\n }\n}\n","export class Profile {\n upn: string;\n isAdmin: boolean;\n preferredSOR: string;\n preferredOBS: string;\n preferredEvent: string;\n preferredEventDisplayId: string;\n preferredEventId: number;\n preferredRole: string;\n preferredEquipments: string;\n preferredWBSId: string;\n createdByUPN: string;\n createdDate: string;\n updatedByUPN: string;\n updatedDate: string;\n isCompleted: boolean;\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseServiceProvider } from '../entityService/AppBaseService';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { timeout } from 'rxjs/operators';\nimport { AuthService } from 'src/services/auth.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { SynclogEntityManagerService } from '../entityManager/synclog-entity-manager.service';\nimport { EventDexie } from '../entity/dexie/Event.dexie';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EventServiceProvider extends AppBaseServiceProvider {\n serviceName = 'Hierarchy';\n downloadOperationName = 'event';\n currentVersion = '1.0';\n\n constructor(\n public http: HttpClient,\n public authService: AuthService,\n public synclogEntityManager: SynclogEntityManagerService,\n public adalService: ADALProvider\n ) {\n super(http, authService, synclogEntityManager, adalService);\n }\n\n async getEventsBySite(site: string): Promise {\n try {\n let httpParams = new HttpParams();\n httpParams = httpParams\n .append('api-version', this.currentVersion)\n .append('obs', site);\n const val = await this.http\n .get(`${this.baseURL}/${this.serviceName}`, {\n params: httpParams,\n })\n .pipe(timeout(30000))\n .toPromise();\n return val;\n } catch (error) {\n throw error;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { User } from '../User';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class IdentityServiceProvider {\n serviceName = 'System';\n downloadOperationName = 'identity';\n currentVersion = '1.0';\n\n constructor(\n private readonly _http: HttpClient\n ) {}\n\n getUser(): Promise {\n let httpParams = new HttpParams();\n httpParams = httpParams.append('api-version', this.currentVersion);\n\n return new Promise((resolve, reject) => {\n (async () => {\n this._http\n .get(\n `${environment.apiEndpoint}/${this.serviceName}/${this.downloadOperationName}`,\n {\n params: httpParams\n }\n )\n .subscribe(\n val => {\n resolve(val);\n },\n error => {\n reject(error);\n }\n );\n })();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { timeout } from 'rxjs/operators';\nimport { Profile } from '../model/Profile';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileServiceProvider {\n serviceName = 'Profile';\n downloadOperationName = 'current';\n\n uploadOperationName = 'profile';\n currentVersion = '1.0';\n\n constructor(private readonly _http: HttpClient) {}\n\n getProfile(): Promise {\n let httpParams = new HttpParams();\n httpParams = httpParams.append('api-version', this.currentVersion);\n\n return new Promise((resolve, reject) => {\n (async () => {\n this._http\n .get(\n `${environment.apiEndpoint}/${this.serviceName}/${this.downloadOperationName}`,\n {\n params: httpParams,\n }\n )\n .pipe(timeout(30000))\n .subscribe(\n (val) => {\n resolve(val);\n },\n (error) => {\n reject(error);\n }\n );\n })();\n });\n }\n\n saveProfile(profile: Profile): Promise {\n let httpParams = new HttpParams();\n httpParams = httpParams.append('api-version', this.currentVersion);\n return new Promise((resolve, reject) => {\n (async () => {\n this._http\n .post(\n `${environment.apiEndpoint}/${this.serviceName}`,\n profile,\n {\n params: httpParams,\n }\n )\n .pipe(timeout(30000))\n .subscribe(\n (vals) => {\n resolve(vals);\n },\n (error) => {\n reject(error);\n },\n () => {}\n );\n })();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AppBaseEntityManager } from '../entityManager/AppBaseEntityManager';\nimport { EventDexie } from '../entity/dexie/Event.dexie';\nimport { db } from 'src/services/dexie.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class EventEntityManagerService extends AppBaseEntityManager {\n protected _entityType = EventDexie;\n dexieName = 'event';\n constructor() {\n super();\n }\n\n getEvents(obs: string): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n await db.event\n .where('ForeignParentEntity')\n .equals(obs)\n .toArray()\n .then((events) => {\n const data = events.filter((e) => e.IsDeleted == false);\n resolve(\n data.map((e) => {\n const event = new EventDexie(e);\n return event;\n })\n );\n });\n })();\n });\n }\n\n saveEvents(events: EventDexie[], obs: string): Promise {\n events.forEach((event) => (event.ForeignParentEntity = obs));\n return this.bulkInsert2(events, this.dexieName);\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n apiEndpoint: 'https://turnovernotes-api-test-cvx.azurewebsites.net/api',\n appInsights: {\n connectionString: process.env['APPINSIGHTS_CONNSTRING_CLIENT']\n },\n useappInsights: true,\n LogonAzureAPI:\n 'https://100017272.auth.konycloud.com/login?provider=FWETurnaroundDev',\n AppKey: 'https://tonote-t101-cvx.vault.azure.net/secrets/ToNotesWebAppKey/2341463af8d440ec8089368cf9b5de14',\n AppSecret: 'https://tonote-t101-cvx.vault.azure.net/secrets/ToNotesWebAppSecret/526113fa66d44a14992df4a4e88e9e4d',\n BaseAPI: 'https://chevronupstream-dev1.konycloud.com/services',\n PushNotificationHubPath: 'mobileturnaround-nh-prod-cvx',\n\n FCMSenderId: '380548788333',\n TCOInstanceId: ['5'],\n\n adalConfig: {\n tenant: 'chevron.onmicrosoft.com',\n clientId: 'a418d6a9-0215-4eb5-a8fa-95d8d4646794',\n //redirectURL: 'x-msauth-tonotestest://com.chevron.tonotestest',\n redirectURL: 'https://tonotesweb-test-cvx.azurewebsites.net/',\n resource: 'https://graph.windows.net',\n authority: 'https://login.windows.net/chevron.onmicrosoft.com'\n },\n scope: 'https://turnovernotes-test.azure.chevron.com/user_impersonation',\n schemeName: 'com.chevron.mobileturnaround://',\n aiKey: '21cf6e66-9047-4062-959d-e0a16b3fcd11',\n adtionalDbOptions: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n","import { inject } from '@angular/core';\nimport { db } from 'src/services/dexie.service';\nimport { LoadingService } from 'src/services/loading.service';\n\n\n\nexport const dbGuard = async (): Promise => {\n const loadingService = inject(LoadingService);\n loadingService.present();\n return new Promise((resolve) => {\n (async () => {\n await db.open().catch((e) => console.log(e));\n loadingService.dismiss();\n resolve(true);\n })();\n });\n};\n","import { Injectable, inject } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\nimport { Observable, from } from 'rxjs';\nimport { NoticePage } from 'src/pages/notice/notice.page';\nimport { ModalController } from '@ionic/angular';\n\n\n\nexport const noticeGuard = (): Observable | Promise => {\n const modalCtrl = inject(ModalController);\n return new Promise((resolve, reject) => {\n (async () => {\n const isNoticeAccepted = Boolean(\n JSON.parse(localStorage.getItem('isNoticeAccepted'))\n );\n if (isNoticeAccepted) {\n resolve(true);\n } else {\n const noticeCtrl = await modalCtrl.create({\n component: NoticePage,\n cssClass: 'hierarchy-modal',\n backdropDismiss: false,\n showBackdrop: false,\n });\n noticeCtrl.onDidDismiss().then(() => {\n resolve(true);\n });\n noticeCtrl.present();\n }\n })();\n });\n};\n\n","import { Injectable, inject } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\nimport { Observable, from, of } from 'rxjs';\nimport { LoadingService } from 'src/services/loading.service';\nimport { ProfileHelperService } from 'src/data/helper/profile-helper.service';\nimport { catchError, finalize, map } from 'rxjs/operators';\n\n\nexport const profileGuard = (): Observable => {\n const loadingService = inject(LoadingService);\n loadingService.present();\n return from(inject(ProfileHelperService).getProfile().then(profile => {\n if(profile){\n loadingService.dismiss();\n return true\n }else{\n return false;\n }\n }).catch(error => {\n loadingService.dismiss();\n return true;\n })\n );\n};\n\n","import { inject } from '@angular/core';\nimport { ActivatedRoute, ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { of, from } from 'rxjs';\nimport { LoadingService } from 'src/services/loading.service';\nimport { SyncService } from 'src/services/sync/SyncService';\nimport { catchError, concatMap, finalize, map } from 'rxjs/operators';\nimport { dbGuard } from './DBGuard';\n\nexport const syncGuard = (next: ActivatedRouteSnapshot) => {\n const loadingService = inject(LoadingService);\n const router = inject(Router);\n const syncService = inject(SyncService);\n const provider = next.params?.provider;\n const eventId = next.params?.eventId;\n const isCompleted = next.params?.isCompleted;\n const currentNavigation = router.getCurrentNavigation();\n if (currentNavigation?.extras?.state?.isSyncEnabled) {\n loadingService.present();\n return from(dbGuard()).pipe(\n concatMap(() =>\n syncService.syncDataForEvent(provider, +eventId, Boolean(isCompleted))\n ),\n catchError((syncGuardError) => {\n return of(true);\n }),\n (map(() => {\n return true;\n }),\n finalize(() => loadingService.dismiss()))\n );\n } else {\n return of(true);\n }\n};\n","import { Injectable } from '@angular/core';\nimport {\n HttpRequest,\n HttpHandler,\n HttpEvent,\n HttpInterceptor,\n} from '@angular/common/http';\nimport { Observable, throwError, from } from 'rxjs';\nimport { catchError, switchMap } from 'rxjs/operators';\nimport { ADALProvider } from 'src/shared/adal/adal';\n@Injectable()\nexport class TokenInterceptor implements HttpInterceptor {\n constructor(private adalService: ADALProvider) {}\n\n intercept(\n request: HttpRequest,\n next: HttpHandler\n ): Observable> {\n request = this.addAuthHeader(request);\n if (request.url.includes('alive') === false) {\n return next.handle(request).pipe(\n catchError((err) => {\n if (err.status === 401) {\n return from(this.adalService.msalLogin()).pipe(\n switchMap((_) => {\n request = this.addAuthHeader(request);\n return next.handle(request);\n })\n );\n } else {\n return throwError(err);\n }\n })\n );\n } else {\n return next.handle(request);\n }\n }\n\n private addAuthHeader(request: HttpRequest) {\n const token = localStorage.getItem('Token')\n if (token) {\n return request.clone({\n setHeaders: {\n Authorization: `Bearer ${token}`,\n },\n });\n } else {\n return request;\n }\n }\n}\n","export class SyncConfig {\n syncId: string;\n isFullSync: boolean;\n lastUploadTime: string;\n lastDownloadTime: string;\n project: number;\n //cai: string; \n userId: number;\n}\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nplatformBrowserDynamic().bootstrapModule(AppModule).then( () =>\n{\n if ('serviceWorker' in navigator) {\n const host = location.hostname;\n if(!host.includes('localhost')){\n enableProdMode();\n navigator.serviceWorker\n .register('/ngsw-worker.js') // Path to the service worker file\n .then((registration) => {\n console.log('[core] Service Worker registered with scope:', registration.scope);\n })\n .catch((error) => {\n console.warn('[core] Service Worker registration failed:', error);\n console.error(error);\n });\n }\n else{\n navigator.serviceWorker\n .register('/ngsw-worker-local.js') // Path to the service worker file\n .then((registration) => {\n console.log('[core] Local Service Worker registered with scope:', registration.scope);\n })\n .catch((error) => {\n throw error;\n });\n }\n }\n})\n .catch(err => console.error(err));\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { Routes, RouterModule } from '@angular/router';\n\nimport { IonicModule } from '@ionic/angular';\n\nimport { HierarchyPage } from './hierarchy.page';\nimport { ComponentsModule } from 'src/components/components.module';\nimport { SharedModule } from 'src/shared/shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: HierarchyPage\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n IonicModule,\n ComponentsModule,\n RouterModule.forChild(routes),\n SharedModule\n ],\n declarations: [HierarchyPage]\n})\nexport class HierarchyPageModule {}\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport {\n ModalController,\n NavParams,\n NavController,\n IonContent,\n} from '@ionic/angular';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { HierarchySelectionMode } from 'src/data/InternalTypes';\nimport { HierarchyHelperService } from 'src/data/helper/hierarchy-helper.service';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\n\n@Component({\n selector: 'app-hierarchy',\n templateUrl: './hierarchy.page.html',\n styleUrls: ['./hierarchy.page.scss'],\n})\nexport class HierarchyPage implements OnInit {\n @ViewChild(IonContent, { static: false }) content: IonContent;\n\n eventId: number;\n provider: string;\n onlyActiveHierarchies: boolean;\n title: 'Hierarchy';\n hideDeleted: boolean;\n isFromSavedFilter: boolean;\n\n // hierarchy view mode, single selection or multi-selection\n mode: HierarchySelectionMode = HierarchySelectionMode.single;\n\n // multi-selection mode used fields\n selectedHierarchies: HierarchyDexie[]; // all selected hierarchies\n changedHierarchies: HierarchyDexie[]; // all selected hierarchies\n\n // multi-selection mode used fields\n selectedCategories: string[]; // all selected categories\n\n constructor(\n private modalController: ModalController,\n private route: ActivatedRoute,\n private router: Router,\n private navController: NavController,\n private hierarchyHelper: HierarchyHelperService,\n private navParams: NavParams\n ) {}\n\n ngOnInit() {\n if (this.navParams) {\n // for modal controller only\n this.eventId = this.navParams.get('eventId');\n this.provider = this.navParams.get('provider');\n this.mode = this.navParams.get('mode');\n this.selectedHierarchies = this.navParams.get('selectedHierarchies');\n this.selectedCategories = this.navParams.get('selectedCategories');\n this.isFromSavedFilter = this.navParams.get('isFromSavedFilter');\n } else {\n // for router node only\n this.route.queryParams.subscribe((params) => {\n const currentNavigation = this.router.getCurrentNavigation();\n if (currentNavigation && currentNavigation.extras.state) {\n this.mode = this.router.getCurrentNavigation().extras.state.mode;\n }\n });\n\n const paramMap = this.route.snapshot.paramMap;\n if (paramMap) {\n const eId = parseInt(paramMap.get('eventId'), 10);\n if (!isNaN(eId)) {\n this.eventId = eId;\n }\n\n const pro = paramMap.get('provider');\n if (pro) {\n this.provider = pro;\n }\n }\n }\n }\n\n ionViewDidEnter() {\n if (!this.hideDeleted) {\n this.content.getScrollElement().then((data) => {\n const posY = this.hierarchyHelper.scrollPosition;\n this.content.scrollToPoint(0, posY);\n });\n }\n }\n\n ionViewDidLeave() {\n if (!this.hideDeleted) {\n this.content.getScrollElement().then((data) => {\n this.hierarchyHelper.scrollPosition = data.scrollTop;\n });\n }\n }\n\n async done() {\n this.selectedHierarchies = this.changedHierarchies;\n if (await this.modalController.getTop()) {\n await this.modalController.dismiss(this.selectedHierarchies);\n } else {\n if (this.navController) {\n this.navController.pop();\n }\n }\n }\n\n async cancel() {\n if (await this.modalController.getTop()) {\n await this.modalController.dismiss(null);\n } else {\n if (this.navController) {\n this.navController.pop();\n }\n }\n }\n\n selectHierarchy(hierarchies: HierarchyDexie[]) {\n this.changedHierarchies = hierarchies;\n if (this.mode === HierarchySelectionMode.single) {\n this.done();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { IonicModule } from '@ionic/angular';\n\nimport { NoticePage } from './notice.page';\nimport { Routes, RouterModule } from '@angular/router';\nimport { ComponentsModule } from 'src/components/components.module';\nimport { BlockUIModule } from 'primeng/blockui';\nimport { SharedModule } from 'src/shared/shared.module';\n\nconst routes: Routes = [\n {\n path: '',\n component: NoticePage\n }\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n IonicModule,\n ComponentsModule,\n BlockUIModule,\n RouterModule.forChild(routes),\n SharedModule\n ],\n declarations: [NoticePage]\n})\nexport class NoticePageModule {}\n","import { Component, OnInit } from '@angular/core';\nimport { AlertController, ModalController } from '@ionic/angular';\nimport { TranslateService } from '@ngx-translate/core';\nimport { LoadingService } from 'src/services/loading.service';\n\n@Component({\n selector: 'app-notice',\n templateUrl: './notice.page.html',\n styleUrls: ['./notice.page.scss']\n})\nexport class NoticePage implements OnInit {\n constructor(\n private alertCtrl: AlertController,\n private modal: ModalController,\n private loadingService: LoadingService,\n private translate: TranslateService\n ) {}\n ngOnInit(): void {\n this.loadingService.dismissAll();\n }\n\n onAgreeTapped() {\n localStorage.setItem('isNoticeAccepted', 'true');\n this.modal.dismiss();\n }\n\n async onDontAgreeTapped() {\n const alert = await this.alertCtrl.create({\n header: this.translate.instant('NOTICE.AccessDenied'),\n message: this.translate.instant('NOTICE.MustAgree'),\n buttons: [this.translate.instant('SHARED.Ok')]\n });\n alert.present();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApplicationInsights } from '@microsoft/applicationinsights-web';\nimport { AngularPlugin } from '@microsoft/applicationinsights-angularplugin-js';\nimport { ClickAnalyticsPlugin } from '@microsoft/applicationinsights-clickanalytics-js';\nimport { Router } from '@angular/router';\nimport { environment } from 'src/environments/environment';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationInsightsService {\n private appInsights;\n\n constructor(private router: Router) {\n let angularPlugin = new AngularPlugin();\n let clickPluginInstance = new ClickAnalyticsPlugin();\n let clickPluginConfig = {\n autoCapture: true,\n };\n\n try {\n this.appInsights = new ApplicationInsights({\n config: {\n connectionString: environment.appInsights.connectionString,\n extensions: [angularPlugin, clickPluginInstance],\n extensionConfig: {\n [angularPlugin.identifier]: { router: this.router },\n [clickPluginInstance.identifier]: clickPluginConfig,\n },\n },\n });\n\n this.appInsights.loadAppInsights();\n } catch (error) {\n console.error('Failed to initialize Application Insights, ', error);\n }\n }\n // log exceptions and severity\n logException(errmessage: Error, rawerror:any, internalError : any) {\n if (this.appInsights) {\n this.appInsights.trackException({\n exception: rawerror, \n error: internalError\n });\n } else {\n console.error('Application Insights is not initialized, ', errmessage);\n }\n }\n\n // log user email via authenticated user ID property and custom userEmail property. userEmail is a custom property that is only set when the user logs in to allow for tracking of the number of users who use the application\n setUser(email: string) {\n var properties = { userEmail: email };\n if (this.appInsights) {\n this.appInsights.trackEvent({\n name: 'User Login',\n properties: properties,\n });\n this.appInsights.setAuthenticatedUserContext(email);\n } else {\n console.error('Application Insights is not initialized');\n }\n }\n\n // log event with user email as a property. Each individual property should have the userEmail attached to it\n logEvent(name: string, email: string, properties?: { [key: string]: any }) {\n properties = { ...properties, userEmail: email };\n if (this.appInsights) {\n this.appInsights.trackEvent({ name: name }, properties);\n } else {\n console.error('Application Insights is not initialized');\n }\n }\n\n logMetric(name: string, average: number, properties?: { [key: string]: any }) \n {\n this.appInsights.trackMetric({ name, average }, properties); \n }\n\n logPageView(name?: string, url?: string) \n {\n this.appInsights.trackPageView({ name, uri: url }); \n }\n}\n","import { Injectable } from '@angular/core';\nimport { ADALProvider } from './../shared/adal/adal';\nimport { ADALModel } from './../../src/shared/adal/adal-model';\nimport { User } from './../data/User';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthService {\n public adToken: string;\n private rolePrivate: string;\n\n constructor(private adalService: ADALProvider) {}\n\n getToken() {\n if (this.adToken === undefined || this.adToken === null) {\n this.loginWithAD().then((adalModel) => {\n this.adToken = adalModel.Token;\n });\n } else {\n return this.adToken;\n }\n }\n\n logOut() {\n this.adalService.logOut().then(() => alert('Logout completed'));\n }\n\n async loginWithAD(): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n const adalModel = await this.adalService.msalLogin();\n this.adToken = adalModel.Token;\n this.saveAdToken(adalModel);\n resolve(adalModel);\n } catch (err) {\n reject(err);\n }\n })();\n });\n }\n\n private saveAdToken(adModel: ADALModel) {\n localStorage.setItem('Token', adModel.Token);\n localStorage.setItem('ExpiresOn', adModel.ExpiresOn);\n localStorage.setItem('Name', adModel.Name);\n }\n\n getUser(): User {\n const firstName = localStorage.getItem('FirstName');\n const lastName = localStorage.getItem('LastName');\n const uid = localStorage.getItem('UserId');\n //const cai = localStorage.getItem('CAI');\n if (firstName === null || lastName === null || uid === null) {\n return null;\n } else {\n const user: User = new User();\n user.firstName = firstName;\n user.lastName = lastName;\n user.id = parseInt(uid, 10);\n //user.cai = cai;\n return user;\n }\n }\n\n isTokenExpired(): boolean {\n const expiresOn = parseInt(localStorage.getItem('ExpiresOn'), 10);\n let ret = true;\n if (Date.now() < expiresOn * 1000) {\n ret = false;\n }\n\n return ret;\n }\n\n get role(): string {\n return this.rolePrivate;\n }\n set role(value: string) {\n this.rolePrivate = value;\n }\n\n async smartLogin(): Promise {\n try {\n // let adalModel: ADALModel;\n // let claimToken: string;\n // 1. check if token expired\n if (this.isTokenExpired()) {\n // get new AD token\n await this.getNewADModel();\n // login - Azure Login\n // claimToken = await this.loginWithADToken(this.adToken);\n }\n return;\n } catch (error) {\n throw error;\n }\n }\n\n async getNewADModel(): Promise {\n try {\n const adalModel = await this.adalService.msalLogin();\n return adalModel;\n } catch (error) {\n throw error;\n }\n }\n}\n","import { ApplicationRef, Injectable, NgZone } from '@angular/core';\nimport { first } from 'rxjs/operators';\nimport { Subscription, concat, interval } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\nimport { AlertController, ModalController } from '@ionic/angular';\n\n@Injectable({ providedIn: 'root' })\nexport class CheckVersionUpdateService {\n constructor(\n public appRef: ApplicationRef,\n private zone: NgZone,\n private translate: TranslateService,\n private modalController: ModalController,\n private alertController:AlertController\n ) {}\n currentTimeStampValue = 0;\n versionChecksubscription: Subscription;\n ngswPath: string = `${location.protocol}//${location.host}/ngsw.json`;\n\n async checkForVersionUpdates() {\n let timestamp = await this.getCurrentSWTimeStamp();\n this.currentTimeStampValue = timestamp;\n\n const appIsStable$ = this.appRef.isStable.pipe(\n first((isStable) => isStable === true)\n );\n\n //Checks every two minutes and unsubscribe after first alert to user\n const everyMinute$ = interval(2 * 60 * 1000);\n\n const everyMinuteOnceAppIsStable$ = concat(appIsStable$, everyMinute$);\n this.versionChecksubscription = everyMinuteOnceAppIsStable$.subscribe(\n () => {\n this.checkSWVersionUpdatesAndPrompt();\n }\n );\n }\n\n async showPrompt() {\n let title = '';\n let content = '';\n this.translate\n .get(['version.newVersionTitle', 'version.newVersionDesc'])\n .subscribe((values) => {\n title = values['version.newVersionTitle'];\n content = values['version.newVersionDesc'];\n });\n const alert = await this.alertController.create({\n cssClass: 'my-custom-class',\n header: title,\n message: content,\n buttons: [\n {\n text: 'Cancel',\n role: 'cancel',\n cssClass: 'secondary',\n handler: (blah) => {\n console.log('Confirm Cancel: blah');\n },\n },\n {\n text: 'Okay',\n handler: () => {\n this.reloadCurrentPage();\n },\n },\n ],\n });\n await alert.present();\n }\n\n async reloadCurrentPage() {\n await this.finalizeUpgrade();\n window.location.reload();\n }\n\n private async unregisterServiceWorkers() {\n let registrations = await navigator.serviceWorker.getRegistrations();\n for (let registration of registrations) {\n \n await registration.unregister();\n }\n }\n public async getCaches() {\n return await caches.keys();\n }\n\n public async getCurrentSWTimeStamp() {\n let version = localStorage.getItem('sw-version');\n let updateSW = localStorage.getItem('sw-update');\n try {\n if (!version ||JSON.parse(updateSW)) {\n // will happen in following scenarios:\n // - Just upgraded\n // - First time opened\n // - cleared appcache\n // this will not cause update prompt, b/c the IDEAL STATE is if this isnt cached,\n // there wasnt a existing installed SW\n let newVersion = (await (await fetch(this.ngswPath)).json())?.timestamp;\n version = newVersion;\n localStorage.setItem('sw-version', version);\n localStorage.setItem('sw-update', 'false');\n }\n\n } catch (e) {\n throw e\n }\n\n return parseInt(version);\n }\n\n private cancelVersionCheck() {\n try {\n this.versionChecksubscription.unsubscribe();\n } catch {\n console.warn('[UpdateService] Unsubscribe from version check failed.');\n }\n }\n\n private async checkSWVersionUpdatesAndPrompt() {\n let intDate = +new Date();\n let serverTimeStampValue = 0;\n const randomNumber = window.crypto.getRandomValues(new Uint32Array(1))[0] / 0xffffffff;\n let serverUrl = `${this.ngswPath}?ngsw-cachebust=${\n randomNumber * intDate\n }`;\n if (!this.currentTimeStampValue) {\n console.info(\n '[UpdateService] No SW timestamp discovered. Disabling version check.'\n );\n this.cancelVersionCheck();\n return;\n }\n\n try {\n await fetch(serverUrl)\n .then((res) => res.json())\n .then((json) => {\n serverTimeStampValue = json.timestamp;\n if (this.currentTimeStampValue != serverTimeStampValue) {\n this.initializeUpgrade();\n }\n });\n } catch (e) {\n console.error('[UpdateService] Failed to check for updates: \\n', e);\n }\n }\n\n private async deleteCaches() {\n let names = await caches.keys();\n for (let name of names) {\n caches.delete(name);\n }\n }\n\n public async initializeUpgrade() {\n await this.unregisterServiceWorkers();\n // used to delete SW caches here\n this.zone.run(async () => {\n this.cancelVersionCheck();\n this.showPrompt();\n });\n }\n\n public async finalizeUpgrade() {\n // this needs to be run to stop the upgrade prompt from showing every\n // time the app is loaded (assuming SW was updated)\n\n // clear sw version and allow next load to pull latest\n localStorage.setItem('sw-update', 'true');\n await this.deleteCaches();\n }\n}\n","import Dexie from 'dexie';\nimport { ICODE, CODEDexie } from '../data/entity/dexie/CODE.dexie';\nimport { IOBS , OBSDexie } from 'src/data/entity/dexie/OBS.dexie';\nimport { ISyncLog ,SyncLogDexie } from 'src/data/entity/dexie/SyncLog.dexie';\nimport { IEvent ,EventDexie } from 'src/data/entity/dexie/Event.dexie';\nimport { INoteComment, NoteCommentDexie } from 'src/data/entity/dexie/NoteComment.dexie';\nimport { ILessonLearnt, LessonLearntDexie } from 'src/data/entity/dexie/LeasonLearnt.dexie';\nimport { IAttachment, AttachmentDexie } from 'src/data/entity/dexie/Attachment.dexie';\nimport {INote, NoteDexie } from 'src/data/entity/dexie/Note.dexie';\nimport { IHierarchy, HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { INoteTag, NoteTagDexie } from 'src/data/entity/dexie/NoteTag.dexie';\nimport { IUser, UserDexie } from 'src/data/entity/dexie/User.dexie';\nimport { ISummary, SummaryDexie } from 'src/data/entity/dexie/Summary.dexie';\n\nexport class AppDB extends Dexie{\n \n code!:Dexie.Table;\n obs!:Dexie.Table;\n synclog!:Dexie.Table\n event!:Dexie.Table\n notecomment!:Dexie.Table\n lessonlearnt!:Dexie.Table\n attachment!:Dexie.Table\n notes!:Dexie.Table\n hierarchy!:Dexie.Table\n notetag!:Dexie.Table\n user!:Dexie.Table\n summary!:Dexie.Table\n\n constructor(){\n super('ToNotes-db');\n this.version(1).stores({\n code: 'Value, Category',\n obs: 'Name, InstanceId',\n synclog: '++Id',\n event: '++ForeignId, ForeignParentEntity',\n notecomment: '++Id, NoteId',\n lessonlearnt: '++Id, NoteId',\n attachment: '++IdRow, Id, NoteId,TimeStamp',\n notes: '++Id,EventId,CreatedByUPN,UpdatedByUPN,UpdatedDate,CreatedDate,ShiftName,ShiftDate,Role,ParentId,IsUploaded',\n hierarchy:'++ForeignId, Category, UpdatedDate, Name',\n notetag:'NoteId,Tag',\n user:'Upn',\n summary:'Id'\n });\n\n \n \n \n // The following allows us to pull the records out of the DBs as the classes we defined e.g if we perform a .where on user, it will return objects of the User class\n this.code.mapToClass(CODEDexie);\n this.obs.mapToClass(OBSDexie);\n this.synclog.mapToClass(SyncLogDexie);\n this.event.mapToClass(EventDexie);\n this.notecomment.mapToClass(NoteCommentDexie);\n this.lessonlearnt.mapToClass(LessonLearntDexie);\n this.attachment.mapToClass(AttachmentDexie);\n this.notes.mapToClass(NoteDexie);\n this.hierarchy.mapToClass(HierarchyDexie);\n this.notetag.mapToClass(NoteTagDexie);\n this.user.mapToClass(UserDexie);\n this.summary.mapToClass(SummaryDexie);\n }\n\n // function to clear local db (for debugging / testing purposes)\n // returns success\n public async clearDataFromTables() {\n await db.transaction('rw', db.tables, async () => {\n // Iterate over each table in the database\n for (const table of db.tables) {\n await table.clear(); // Clear all data from the table\n }\n });\n }\n}\n\nexport const db = new AppDB();\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LoadingService {\n private counter: number;\n\n constructor() {\n this.counter = 0;\n }\n\n present(): void {\n this.counter++;\n }\n\n dismiss(): void {\n if (this.counter > 0) {\n this.counter--;\n }\n }\n\n dismissAll(): void {\n setTimeout(() => {\n this.counter = 0;\n }, 100);\n }\n\n isVisible(): boolean {\n return this.counter > 0;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { environment } from './../environments/environment';\nimport { map, retry, timeout } from 'rxjs/operators';\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\nimport { fromEvent, merge, of, Subscription } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NetworkService {\n protected baseURL = environment.apiEndpoint;\n networkStatus: boolean = false;\n networkStatus$: Subscription = Subscription.EMPTY;\n\n constructor(private http: HttpClient) {}\n\n checkNetworkStatus() {\n this.networkStatus = navigator.onLine;\n this.networkStatus$ = merge(\n of(null),\n fromEvent(window, 'online'),\n fromEvent(window, 'offline')\n )\n .pipe(map(() => navigator.onLine))\n .subscribe((status) => {\n this.networkStatus = status;\n });\n }\n\n pingServer() {\n this.checkNetworkStatus();\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n if (this.networkStatus) {\n this.http\n .get(`${this.baseURL}/System/alive`)\n .pipe(retry(10))\n .pipe(timeout(180000))\n .subscribe(\n (result: any) => {\n resolve(true); // TODO - How to filter exception from Azure API's\n },\n (error: HttpErrorResponse) => {\n resolve(false);\n }\n );\n } else {\n resolve(false);\n }\n } catch (e) {\n reject(e);\n }\n })();\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Connection, getConnection, QueryRunner } from 'typeorm/browser';\nimport { LoadingController, ToastController } from '@ionic/angular';\nimport { AuthService } from '../auth.service';\nimport { AppBaseServiceProvider } from 'src/data/entityService/AppBaseService';\nimport { AppError } from 'src/data/AppError';\nimport { AppErrorType } from 'src/data/InternalTypes';\nimport { SyncConfig } from 'src/interface/SyncConfig';\nimport {\n HierarchyService,\n NotesService,\n UserService,\n SummaryService,\n} from 'src/data/EntityServiceIndex';\nimport { NoteEntityManagerService } from 'src/data/entityManager/note-entity-manager.service';\nimport { HierarchyEntityManagerService } from 'src/data/entityManager/hierarchy-entity-manager.service';\nimport { ADALProvider } from 'src/shared/adal/adal';\nimport { UserEntityManagerService } from 'src/data/EntityManagerIndex';\nimport { CodeService } from 'src/data/entityService/code.service';\nimport { OBSService } from 'src/data/entityService/obs.service';\nimport { CodeEntityManagerService } from 'src/data/entityManager/code-entity-manager.service';\nimport { ObsEntityManagerService } from 'src/data/entityManager/obs-entity-manager.service';\nimport { NetworkService } from './../../services/network.service';\nimport { SummaryEntityManagerService } from 'src/data/entityManager/summary-entity-manager.service';\nimport { HierarchyDexie } from 'src/data/entity/dexie/Hierarchy.dexie';\nimport { LoadingService } from '../loading.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SyncService {\n projectId: number;\n lastUploadTime: string;\n lastDownloadTime: string;\n isFullSync = false;\n private connection: Connection;\n private queryRunner: QueryRunner;\n private syncProgress: number;\n totalSyncOperation: number;\n syncProgressStep: number;\n phase: 'Uploading' | 'Downloading';\n loading: HTMLIonLoadingElement;\n toast: HTMLIonToastElement; \n loadingElement: any;\n constructor(\n public http: HttpClient,\n public adalService: ADALProvider,\n private authService: AuthService,\n private network: NetworkService,\n private loadingController: LoadingController,\n private loadingService: LoadingService,\n private toastController: ToastController,\n private hierarchyService: HierarchyService,\n private noteService: NotesService,\n private noteEntityManager: NoteEntityManagerService,\n private hierarchyEntityManager: HierarchyEntityManagerService,\n private userService: UserService,\n private codeService: CodeService,\n private codeEntityManager: CodeEntityManagerService,\n private obsEntityManager: ObsEntityManagerService,\n private readonly _obsService: OBSService,\n private userEntityManager: UserEntityManagerService,\n private networkService: NetworkService,\n private summaryService: SummaryService,\n private summaryEntityManager: SummaryEntityManagerService\n ) {}\n entityServices: AppBaseServiceProvider[] = [];\n\n sync(projectId?: number): Promise {\n this.projectId = projectId;\n return new Promise((resolve, reject) => {\n (async () => {\n this.loading = await this.loadingController.create({\n spinner: 'crescent',\n message: 'Sync In Progress...',\n });\n await this.loading.present();\n this.enableBackgroundMode();\n\n this.fire()\n .then(() => {\n return this.prepare();\n })\n .then(() => {\n this.initSyncProgressProperty();\n return this.processData();\n })\n .then(() => {\n return this.complete();\n })\n .then(() => {\n this.completeProgress();\n this.loading.dismiss();\n resolve();\n })\n .catch(async (err) => {\n this.disableBackgroundMode();\n if (this.queryRunner) {\n await this.queryRunner.rollbackTransaction();\n await this.queryRunner.release();\n }\n\n const newErr =\n err instanceof AppError\n ? err\n : new AppError(AppErrorType.COMMON_SYNC_ERROR, err);\n if (newErr.type !== AppErrorType.MULTIPLE_PROJECTS_ASSIGNED) {\n this.failedProgress(newErr);\n }\n this.loading.dismiss();\n reject(newErr);\n });\n })();\n });\n }\n\n async fire(): Promise {\n this.enableBackgroundMode();\n try {\n const usr = await this.authService.loginWithAD();\n } catch (err) {\n if (err && err.status === 403) {\n throw new AppError(\n AppErrorType.NOT_AUTHORIZED_USER,\n 'You are not an authorized user. Please contact system admin.',\n err\n );\n } else {\n throw new AppError(\n AppErrorType.AUTHENTICATION_ERROR,\n 'Authentication error. Please try it later.',\n err\n );\n }\n }\n }\n\n async prepare(): Promise {\n // TODO: loading service\n try {\n this.connection = await getConnection();\n this.queryRunner = this.connection.createQueryRunner();\n this.queryRunner.startTransaction().then();\n } catch (error) {\n throw error;\n }\n }\n\n complete(): Promise {\n return new Promise((resolve, reject) => {\n // TODO:\n resolve(); // since no method is called inside it\n });\n }\n\n async processData(): Promise {\n try {\n this.phase = 'Uploading';\n for (const entityService of this.entityServices) {\n this.updateProgress(entityService.serviceName);\n await this.doUpload(entityService);\n }\n this.phase = 'Downloading';\n for (const entityService of this.entityServices) {\n this.updateProgress(entityService.serviceName);\n await this.doDownload(entityService);\n }\n\n return; // since no method is called inside it\n } catch (e) {\n throw e;\n }\n }\n\n async doUpload(entityService: AppBaseServiceProvider): Promise {\n try {\n if (entityService.isUploadable()) {\n await entityService.upload(await this.getSyncConfig());\n this.syncProgress += this.syncProgressStep;\n }\n return; // since no method is called inside it\n } catch (e) {\n throw new AppError(\n AppErrorType.COMMON_SYNC_ERROR,\n `upload service ${entityService.serviceName} error.`,\n e\n );\n }\n }\n\n async doDownload(entityService: AppBaseServiceProvider): Promise {\n try {\n if (entityService.isDownloadable()) {\n const config = await this.getSyncConfig();\n entityService.download(config).then(\n async (res) => {\n await new entityService.entityManger().bulkInsertWithQueryRunner(\n res,\n this.queryRunner\n );\n this.syncProgress += this.syncProgressStep;\n console.log(this.syncProgress)\n return; // since no method is called inside it\n },\n (err) => {\n throw new AppError(\n AppErrorType.SERVICE_ERROR,\n `download service ${entityService.serviceName} error.`,\n err\n );\n }\n );\n } else {\n return; // since no method is called inside it\n }\n } catch (e) {\n throw new AppError(AppErrorType.COMMON_SYNC_ERROR, e);\n }\n }\n\n async getSyncConfig(): Promise {\n const config = new SyncConfig();\n config.isFullSync = this.isFullSync;\n config.lastDownloadTime = this.lastDownloadTime;\n config.lastUploadTime = this.lastUploadTime;\n config.project = this.projectId; \n //config.cai = localStorage.getItem('CAI'); \n config.userId = parseInt(localStorage.getItem('UserId'), 10);\n return config;\n }\n\n enableBackgroundMode() {\n console.info('empty method');\n }\n disableBackgroundMode() {\n console.info('empty method');\n }\n initSyncProgressProperty() {\n this.totalSyncOperation = 0;\n this.syncProgress = 0;\n for (const entityService of this.entityServices) {\n if (entityService.isDownloadable()) {\n this.totalSyncOperation += 1;\n }\n if (entityService.isUploadable()) {\n this.totalSyncOperation += 1;\n }\n }\n this.syncProgressStep = Math.floor(100 / this.totalSyncOperation);\n }\n\n updateProgress(entity: string) {\n const msg = `${this.syncProgress}% completed - ${this.phase} ${entity} data ...`;\n this.showLoadingMsg(msg);\n }\n\n completeProgress() {\n const msg = `Sync completed.`;\n this.showLoadingMsg(msg);\n this.showToastMsg(msg);\n }\n\n async failedProgress(err: AppError) {\n const ping = await this.network.pingServer();\n const msg = `${this.phase} data failed at ${this.syncProgress}%.`;\n this.showLoadingMsg(msg);\n const toastMsg =\n ping === false\n ? 'No Network available, Please try again later.'\n : 'Error. Sync Failed with error - ' +\n JSON.stringify(err.params) +\n ' - Please retry. If problem persists, call helpdesk.';\n this.showToastMsg(toastMsg);\n // TODO: analytics\n }\n\n showLoadingMsg(msg: string) {\n if (this.loadingElement) {\n this.loadingElement.innerHTML = msg;\n }\n }\n\n async showToastMsg(msg: string) {\n this.toast = await this.toastController.create({\n message: msg,\n duration: 3000,\n position: 'bottom',\n //showCloseButton: false ---ionic 5 is not supporting\n });\n await this.toast.present();\n }\n\n async syncDataForEvent(\n provider: string,\n eventId: number,\n isCompleted?: boolean\n ): Promise {\n try {\n const ping = await this.networkService.pingServer();\n if (ping === false) {\n throw new AppError(AppErrorType.NETWORK_ERROR, 'Not Network');\n } else {\n this.loadingService.present();\n await this.uploadOfflineNotes(provider, eventId);\n await this.syncHierarchyForEvent(provider, eventId, isCompleted);\n await this.syncNotesForEvent(provider, eventId, false);\n await this.syncUser(provider, eventId);\n await this.syncCodes(provider, eventId);\n await this.syncOBS(provider, eventId);\n await this.syncSummmaryForEvent(provider, eventId);\n this.uploadOfflineSummary(provider, eventId);\n this.loadingService.dismiss();\n return true;\n }\n } catch (error) {\n return error;\n }\n }\n\n async syncHierarchyForEvent(\n provider: string,\n eventId: number,\n isCompleted?: boolean\n ): Promise {\n try {\n this.hierarchyService.serviceName = 'Hierarchy';\n const complete = String(isCompleted);\n if (complete === 'true') {\n this.hierarchyService.serviceName = 'ArchivedHierarchy';\n }\n const hierarchies: HierarchyDexie[] =\n await this.hierarchyService.getIncrementalItems(provider, eventId);\n await this.hierarchyEntityManager.saveHierarchies(hierarchies);\n return;\n } catch (error) {\n throw error;\n }\n }\n\n async syncNotesForEvent(\n provider: string,\n eventId: number,\n isUploadRequired: boolean = true\n ): Promise {\n try {\n if (isUploadRequired) {\n await this.uploadOfflineNotes(provider, eventId);\n }\n\n const notes = await this.noteService.getIncrementalItems(\n provider,\n eventId\n );\n await this.noteEntityManager.saveNotes(notes);\n return;\n } catch (error) {\n return error;\n }\n }\n\n async syncUser(provider: string, eventId: number): Promise {\n try {\n const users = await this.userService.getIncrementalItems(\n provider,\n eventId\n );\n await this.userEntityManager.saveUsers(users);\n return;\n } catch (error) {\n throw error;\n }\n }\n\n syncCodes(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n const codes = await this.codeService.getIncrementalItems(\n provider,\n eventId\n );\n await this.codeEntityManager.saveCodes(codes);\n resolve();\n } catch (error) {\n reject(error);\n }\n })();\n });\n }\n\n syncOBS(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n const obss = await this._obsService.getIncrementalItems(provider);\n await this.obsEntityManager.saveObs(obss);\n resolve();\n } catch (error) {\n reject(error);\n }\n })();\n });\n }\n\n uploadOfflineNotes(provider: string, eventId: number): Promise {\n return new Promise((resolve, reject) => {\n this.noteService\n .uploadOfflineNotes(provider, eventId)\n .then((_) => {\n resolve();\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n\n syncSummmaryForEvent(\n provider: string,\n eventId: number,\n isUploadRequired: boolean = true\n ): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n try {\n if (isUploadRequired) {\n this.uploadOfflineSummary(provider, eventId);\n }\n\n const summary = await this.summaryService.getIncrementalItems(\n provider,\n eventId\n );\n await this.summaryEntityManager.saveSummary(summary);\n resolve();\n } catch (error) {\n reject(error);\n }\n })();\n });\n }\n // this method will use in future if required.....\n uploadOfflineSummary(provider: string, eventId: number) {\n return new Promise((resolve, reject) => {\n this.summaryService\n .uploadOfflineSummary(provider, eventId)\n .then((_) => {\n resolve();\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n}\n","import { Injectable, ErrorHandler } from '@angular/core';\nimport { LoadingControllerHandler } from './loading-controller-handler';\nimport { ApplicationInsightsService } from 'src/services/applicationInsights.service';\n\n@Injectable({ providedIn: 'root' })\nexport class MTAErrorHandler implements ErrorHandler {\n constructor(private loadingControllerHandler: LoadingControllerHandler, \n private appInsightsService: ApplicationInsightsService) { }\n\n handleError(error: any) {\n if (this.loadingControllerHandler.loadingController) {\n this.loadingControllerHandler.dismissAllLoaders();\n }\n if (!this.loadingControllerHandler.alertController) {\n this.loadingControllerHandler.presentAlert(error.message);\n } \n const internalError = {\n subject: 'TO Notes Logs',\n body: error.message,\n date: new Date().toString(),\n errorStack: error.stack\n }; \n this.appInsightsService.logException(new Error(`Message: ${error.message}`),error, internalError);\n }\n}\n","export class ADALModel{\n Name: string;\n Token: string;\n public Email:string;\n ADObject: any;\n ExpiresOn: string;\n}\n","import { Injectable } from \"@angular/core\";\nimport { Platform } from \"@ionic/angular\";\nimport { ADALModel } from \"./adal-model\";\nimport { ADALConfig } from \"./adal-config\";\nimport { MsalService } from \"@azure/msal-angular\";\nimport { AuthenticationResult } from \"@azure/msal-browser\";\nimport { environment } from \"src/environments/environment\";\n\ndeclare let Microsoft: any;\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class ADALProvider {\n private isInited: boolean = false;\n private adalConfig: ADALConfig;\n public model: any;\n private adToken: string;\n private _upn: string;\n public set upn(value: string) {\n localStorage.setItem(\"UPN\", value);\n this._upn = value;\n }\n public get upn(): string {\n if (this._upn) {\n return this._upn;\n } else {\n return localStorage.getItem(\"UPN\");\n }\n }\n constructor(\n private _msalService: MsalService,\n private platform: Platform //private device: Device, //private appVersion: AppVersion, //private appAvailability: AppAvailability\n ) {\n platform.ready().then(async () => {\n await this._init();\n });\n }\n\n msalLogin(force: boolean = false): Promise {\n return new Promise((resolve, reject) => {\n this.platform\n .ready()\n .then(async () => {\n const model = new ADALModel();\n /**\n * If no active account set but there are accounts signed in, sets first account to active account\n * To use active account set here, subscribe to inProgress$ first in your component\n * Note: Basic usage demonstrated. Your app may require more complicated account selection logic\n */\n let activeAccount = this._msalService.instance.getActiveAccount();\n const accessTokenRequest = {\n scopes: [\"openid\", \"offline_access\", environment.scope],\n activeAccount,\n };\n if (activeAccount != null && accessTokenRequest) {\n await this._msalService.instance\n .acquireTokenSilent(accessTokenRequest)\n .then((response: AuthenticationResult) => {\n model.Token = response.accessToken;\n localStorage.setItem('Token',response.accessToken);\n this.adToken = response.accessToken;\n model.ExpiresOn = response.expiresOn.getTime().toString();\n const expiresOn = parseInt(localStorage.getItem('ExpiresOn'), 10);\n model.Name = response.account.name;\n this.upn = response.account.username;\n model.ADObject = response;\n resolve(model);\n })\n .catch((err) => {\n // TODO: Handle errors\n console.log(err);\n });\n }\n if (!activeAccount) {\n // redirect anonymous user to login page\n this._msalService.instance.loginRedirect();\n }\n })\n .catch((e) => reject(\"Unkown Exception while SSO, \" + e));\n });\n }\n\n private _init(): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n if (!this.isInited) {\n this.isInited = true;\n }\n resolve();\n })();\n });\n }\n\n\n\n public async adalLogout(): Promise {\n try {\n await this.platform.ready();\n await this._msalService.logoutPopup({\n mainWindowRedirectUri: \"/\",\n });\n } catch (error) {\n throw new Error(\"Unknown Exception while SSO Logout, \" + error);\n }\n }\n\n clearTokenCache2() {\n try {\n this._msalService.logout();\n } catch (error) {}\n }\n\n logOut(): Promise {\n return new Promise((resolve, reject) => {\n try {\n this._msalService.logoutPopup({\n mainWindowRedirectUri: \"/\",\n });\n resolve();\n } catch (error) {\n reject(error);\n }\n });\n }\n getUPN(): string {\n let upn = localStorage.getItem('UPN');\n return upn;\n }\n getToken(): string {\n return this.adToken;\n }\n}\n\nexport interface IMSALResponse {\n token: string;\n account: {\n id: string;\n username: string;\n ADObject: any;\n ExpiresOn: string;\n claims: Array<{\n key:\n | \"name\"\n | \"preferred_username\"\n | \"nbg\"\n | \"exp\"\n | \"aio\"\n | \"uti\"\n | \"iss\"\n | \"kid\"\n | \"sub\"\n | \"ver\"\n | \"aud\"\n | \"oid\"\n | \"alg\"\n | \"typ\"\n | \"iat\"\n | \"rh\"\n | \"tid\";\n value: string | number;\n }>;\n };\n}\n","import { Injectable } from '@angular/core';\nimport { Constants } from '../constants';\nimport { Platform } from '@ionic/angular';\n\n@Injectable()\nexport class AppStorageProvider {\n constructor(\n //private secureStorage: SecureStorage,\n private platform: Platform\n ) {}\n\n private getKey(): string {\n return Constants.SecureStorageKey;\n }\n\n /**\n * Get the value from local storage using the key provided\n * @param key - Get the value for the key stored in storage\n * @param fromSecure - Optional parameter to find key in secure storage or not, default is false\n */\n GetLocal(key: string, fromSecure?: boolean): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n resolve(localStorage.getItem(key));\n })();\n });\n }\n\n /**\n * Set value to local storage using the key provided\n * @param key - Key used to store the value in storage\n * @param value - Value to be stored in the storage\n * @param toSecure - Optional parameter to find store in secure storage or not, default is false\n */\n SetLocal(key: string, value: any, toSecure?: boolean): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n localStorage.setItem(key, value);\n resolve(); // since no method is called inside it\n })();\n });\n }\n\n /**\n * Clear Local Storage\n * @param clearSecure - Clear Securage storage or not.\n */\n Clear(clearSecure?: boolean): Promise {\n return new Promise((resolve, reject) => {\n (async () => {\n localStorage.clear();\n })();\n });\n }\n}\n","export class Constants {\n static AppName = 'Trunover Notes';\n // Analytics Events\n static SyncProgress = 'sync-progress';\n static Database = 'db-logs';\n static UnHandled = 'unhandled';\n static Login = 'login';\n static uploadError = 'upload-error';\n static httpError = 'http-error';\n static SyncError = 'sync-error';\n static generalError = 'general-error';\n // Pagination block size\n static pagingSize = 15;\n\n // SecureStorage\n static SecureStorageKey = 'fweapp';\n\n // DB Constants\n static DBName = 'fweapp.db';\n //static DBVersion = 1.0;type is accepting in number format only\n static DBVersion = '1.0'; \n static BulkSize = 10000;\n\n // Work Orders per page\n static workOrderPagingNumber = 10;\n\n static CommentTagTypes = ['Lessons Learned', 'TAW', 'Outstanding Materials'];\n}\n","import {Injectable} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n@Injectable({providedIn: \"root\"})\nexport class EventService {\n private formRefreshAnnouncedSource = new Subject();\n formRefreshSource$ = this.formRefreshAnnouncedSource.asObservable();\n \n publishFormRefresh(style: string, url: any ){\n this.formRefreshAnnouncedSource.next(url);\n }\n}","import { Injectable } from '@angular/core';\nimport { LoadingController, AlertController } from '@ionic/angular';\n@Injectable()\nexport class LoadingControllerHandler {\n constructor(private _loadingController: LoadingController, private _alertController: AlertController) { }\n\n loadingController = null;\n alertController = null;\n\n createLoading(config: any) {\n this.loadingController = this._loadingController.create(config);\n }\n\n async present() {\n await this.loadingController.present();\n }\n\n dismissAllLoaders() {\n this.loadingController.dismissAll();\n this.loadingController = null;\n }\n\n async presentAlert(errorId) {\n this.alertController = await this._alertController.create({\n header: 'Technical Error',\n subHeader: 'Please contact helpdesk with the following ID:',\n message: `${errorId}`,\n buttons: [{\n text: 'OK',\n handler: () => {\n this.alertController = null;\n }\n }\n ]\n });\n await this.alertController.present();\n }\n\n\n\n}\n\n","import { Injectable } from '@angular/core';\nimport { Platform } from '@ionic/angular';\n\n@Injectable()\nexport class SharedPlatformProvider {\n constructor(public platform: Platform) {}\n\n // tslint:disable-next-line:variable-name\n public _isMobile: boolean = undefined;\n public _isWindows: boolean = undefined;\n \n checkIsMobile() {\n let isMobiledevice = false;\n if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {\n isMobiledevice = true;\n }\n return isMobiledevice;\n };\n \n public isMobile(): boolean {\n if (this._isMobile === undefined) {\n \n this._isMobile = this.checkIsMobile(); \n }\n \n return this._isMobile;\n }\n\n \n \n}\n","import { Injectable } from '@angular/core';\nimport { Platform } from '@ionic/angular';\nimport { CameraOutput } from 'src/data/model/camera-output.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CameraProvider {\n public os: string;\n private imageToEdit;\n constructor(private platform: Platform) // private camera: Camera,\n {}\n\n setImage(image) {\n this.imageToEdit = image;\n }\n\n public getImage() {\n return this.imageToEdit;\n }\n /**\n * Method to capture picture\n */\n takePictureNormal(): Promise {\n return new Promise((resolve, reject) => {\n let saveToAlbum = false;\n if (this.os === 'android' || this.os === 'ios') {\n saveToAlbum = true;\n }\n });\n }\n\n takePicture(): Promise {\n let cameraOutput: any = null;\n return new Promise((resolve, reject) => {\n (async () => {\n cameraOutput = this.takePictureNormal();\n resolve(cameraOutput);\n })();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { AppStorageProvider } from './appStorage/app-storage';\n//import { SecureStorage } from '@ionic-native/secure-storage/ngx';\nimport { LoadingControllerHandler } from './loading-controller-handler';\nimport { TranslateModule } from '@ngx-translate/core';\n\n@NgModule({\n declarations: [],\n imports: [IonicModule],\n providers: [\n AppStorageProvider,\n //SecureStorage,\n LoadingControllerHandler\n ],\n exports: [\n TranslateModule\n ]\n})\nexport class SharedModule { }\n","var map = {\n\t\"./ion-accordion_2.entry.js\": [\n\t\t37518,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-accordion_2_entry_js\"\n\t],\n\t\"./ion-action-sheet.entry.js\": [\n\t\t41981,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-action-sheet_entry_js\"\n\t],\n\t\"./ion-alert.entry.js\": [\n\t\t71603,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-alert_entry_js\"\n\t],\n\t\"./ion-app_8.entry.js\": [\n\t\t82273,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-app_8_entry_js\"\n\t],\n\t\"./ion-avatar_3.entry.js\": [\n\t\t19642,\n\t\t\"node_modules_ionic_core_dist_esm_ion-avatar_3_entry_js\"\n\t],\n\t\"./ion-back-button.entry.js\": [\n\t\t32095,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-back-button_entry_js\"\n\t],\n\t\"./ion-backdrop.entry.js\": [\n\t\t72335,\n\t\t\"node_modules_ionic_core_dist_esm_ion-backdrop_entry_js\"\n\t],\n\t\"./ion-breadcrumb_2.entry.js\": [\n\t\t78221,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-breadcrumb_2_entry_js\"\n\t],\n\t\"./ion-button_2.entry.js\": [\n\t\t47184,\n\t\t\"node_modules_ionic_core_dist_esm_ion-button_2_entry_js\"\n\t],\n\t\"./ion-card_5.entry.js\": [\n\t\t38759,\n\t\t\"node_modules_ionic_core_dist_esm_ion-card_5_entry_js\"\n\t],\n\t\"./ion-checkbox.entry.js\": [\n\t\t24248,\n\t\t\"node_modules_ionic_core_dist_esm_ion-checkbox_entry_js\"\n\t],\n\t\"./ion-chip.entry.js\": [\n\t\t69863,\n\t\t\"node_modules_ionic_core_dist_esm_ion-chip_entry_js\"\n\t],\n\t\"./ion-col_3.entry.js\": [\n\t\t51769,\n\t\t\"node_modules_ionic_core_dist_esm_ion-col_3_entry_js\"\n\t],\n\t\"./ion-datetime-button.entry.js\": [\n\t\t2569,\n\t\t\"default-node_modules_ionic_core_dist_esm_data-bb424ba8_js\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-datetime-button_entry_js\"\n\t],\n\t\"./ion-datetime_3.entry.js\": [\n\t\t76534,\n\t\t\"default-node_modules_ionic_core_dist_esm_data-bb424ba8_js\",\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-datetime_3_entry_js\"\n\t],\n\t\"./ion-fab_3.entry.js\": [\n\t\t25458,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-fab_3_entry_js\"\n\t],\n\t\"./ion-img.entry.js\": [\n\t\t70654,\n\t\t\"node_modules_ionic_core_dist_esm_ion-img_entry_js\"\n\t],\n\t\"./ion-infinite-scroll_2.entry.js\": [\n\t\t36034,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-infinite-scroll_2_entry_js\"\n\t],\n\t\"./ion-input.entry.js\": [\n\t\t20761,\n\t\t\"default-node_modules_ionic_core_dist_esm_form-controller-21dd62b1_js-node_modules_ionic_core_-a176d1\",\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-input_entry_js\"\n\t],\n\t\"./ion-item-option_3.entry.js\": [\n\t\t6492,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-item-option_3_entry_js\"\n\t],\n\t\"./ion-item_8.entry.js\": [\n\t\t29557,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-item_8_entry_js\"\n\t],\n\t\"./ion-loading.entry.js\": [\n\t\t68353,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-loading_entry_js\"\n\t],\n\t\"./ion-menu_3.entry.js\": [\n\t\t51024,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-menu_3_entry_js\"\n\t],\n\t\"./ion-modal.entry.js\": [\n\t\t29160,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-modal_entry_js\"\n\t],\n\t\"./ion-nav_2.entry.js\": [\n\t\t60393,\n\t\t\"node_modules_ionic_core_dist_esm_ion-nav_2_entry_js\"\n\t],\n\t\"./ion-picker-column-internal.entry.js\": [\n\t\t23970,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-picker-column-internal_entry_js\"\n\t],\n\t\"./ion-picker-internal.entry.js\": [\n\t\t20437,\n\t\t\"node_modules_ionic_core_dist_esm_ion-picker-internal_entry_js\"\n\t],\n\t\"./ion-popover.entry.js\": [\n\t\t16772,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-popover_entry_js\"\n\t],\n\t\"./ion-progress-bar.entry.js\": [\n\t\t34810,\n\t\t\"node_modules_ionic_core_dist_esm_ion-progress-bar_entry_js\"\n\t],\n\t\"./ion-radio_2.entry.js\": [\n\t\t14639,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-radio_2_entry_js\"\n\t],\n\t\"./ion-range.entry.js\": [\n\t\t90628,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-range_entry_js\"\n\t],\n\t\"./ion-refresher_2.entry.js\": [\n\t\t10852,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-refresher_2_entry_js\"\n\t],\n\t\"./ion-reorder_2.entry.js\": [\n\t\t61479,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-reorder_2_entry_js\"\n\t],\n\t\"./ion-ripple-effect.entry.js\": [\n\t\t24065,\n\t\t\"node_modules_ionic_core_dist_esm_ion-ripple-effect_entry_js\"\n\t],\n\t\"./ion-route_4.entry.js\": [\n\t\t57971,\n\t\t\"node_modules_ionic_core_dist_esm_ion-route_4_entry_js\"\n\t],\n\t\"./ion-searchbar.entry.js\": [\n\t\t93184,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-searchbar_entry_js\"\n\t],\n\t\"./ion-segment_2.entry.js\": [\n\t\t469,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-segment_2_entry_js\"\n\t],\n\t\"./ion-select_3.entry.js\": [\n\t\t78471,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-select_3_entry_js\"\n\t],\n\t\"./ion-spinner.entry.js\": [\n\t\t40388,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-spinner_entry_js\"\n\t],\n\t\"./ion-split-pane.entry.js\": [\n\t\t42392,\n\t\t\"node_modules_ionic_core_dist_esm_ion-split-pane_entry_js\"\n\t],\n\t\"./ion-tab-bar_2.entry.js\": [\n\t\t36059,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-tab-bar_2_entry_js\"\n\t],\n\t\"./ion-tab_2.entry.js\": [\n\t\t5427,\n\t\t\"node_modules_ionic_core_dist_esm_ion-tab_2_entry_js\"\n\t],\n\t\"./ion-text.entry.js\": [\n\t\t50198,\n\t\t\"node_modules_ionic_core_dist_esm_ion-text_entry_js\"\n\t],\n\t\"./ion-textarea.entry.js\": [\n\t\t1735,\n\t\t\"default-node_modules_ionic_core_dist_esm_form-controller-21dd62b1_js-node_modules_ionic_core_-a176d1\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-textarea_entry_js\"\n\t],\n\t\"./ion-toast.entry.js\": [\n\t\t7510,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-toast_entry_js\"\n\t],\n\t\"./ion-toggle.entry.js\": [\n\t\t45297,\n\t\t\"common\",\n\t\t\"node_modules_ionic_core_dist_esm_ion-toggle_entry_js\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 88996;\nmodule.exports = webpackAsyncContext;","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(() => {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = () => ([]);\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 54140;\nmodule.exports = webpackEmptyAsyncContext;","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.taProBtn {\n position: absolute;\n --border-radius: 10px 10px 10px 10px;\n border-radius: 10px 10px 10px 10px;\n box-shadow: rgba(0, 0, 0, 0.8) 0 0 10px;\n opacity: 0.75;\n height: 25px;\n top: 6px;\n left: 80px;\n margin-left: 0;\n}\n\n@media (max-width: 576px) {\n .taProBtn {\n --border-radius: 0px 10px 10px 0px;\n border-radius: 0px 10px 10px 0px;\n top: 40px;\n left: 0px;\n }\n}\n.backBtn {\n stroke: white;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/app.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,kBAAA;EACA,oCAAA;EACA,kCAAA;EACA,uCAAA;EACA,aAAA;EACA,YAAA;EACA,QAAA;EACA,UAAA;EACA,cAAA;AACF;;AAEA;EACE;IACE,kCAAA;IACA,gCAAA;IACA,SAAA;IACA,SAAA;EACF;AACF;AAEA;EACE,aAAA;AAAF\",\"sourcesContent\":[\".taProBtn {\\n position: absolute;\\n --border-radius: 10px 10px 10px 10px;\\n border-radius: 10px 10px 10px 10px;\\n box-shadow: rgba(0, 0, 0, 0.8) 0 0 10px;\\n opacity: 0.75;\\n height: 25px;\\n top: 6px;\\n left: 80px;\\n margin-left: 0;\\n}\\n\\n@media (max-width: 576px) {\\n .taProBtn {\\n --border-radius: 0px 10px 10px 0px;\\n border-radius: 0px 10px 10px 0px;\\n top: 40px;\\n left: 0px;\\n }\\n}\\n\\n.backBtn {\\n stroke: white;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `img {\n max-width: 15%;\n max-height: 50%;\n min-width: 150px;\n object-fit: contain;\n padding-bottom: 10px;\n}\n\n.title-ion-label {\n color: #751269;\n font-family: \"Gotham-Bold\";\n font-size: 27px;\n font-weight: bold;\n line-height: 30px;\n margin: auto;\n text-align: center;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/brand/brand.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,cAAA;EACA,eAAA;EACA,gBAAA;EACA,mBAAA;EACA,oBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,eAAA;EACA,iBAAA;EACA,iBAAA;EACA,YAAA;EACA,kBAAA;AACF\",\"sourcesContent\":[\"img {\\n max-width: 15%;\\n max-height: 50%;\\n min-width: 150px;\\n object-fit: contain;\\n padding-bottom: 10px;\\n}\\n\\n.title-ion-label {\\n color: #751269;\\n font-family: \\\"Gotham-Bold\\\";\\n font-size: 27px;\\n font-weight: bold;\\n line-height: 30px;\\n margin: auto;\\n text-align: center\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ion-list {\n margin-top: 5px !important;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/event-filter/event-filter.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACI,0BAAA;AACJ\",\"sourcesContent\":[\"ion-list {\\n margin-top: 5px !important;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ion-row {\n height: 60px;\n text-align: center;\n border-style: solid;\n border-width: 0 0 2px 0;\n border-color: #f6f6f6;\n}\nion-row.selected {\n background-color: #e6d6eb;\n}\nion-row.unselected {\n background-color: #ebebeb;\n}\n\nion-button {\n height: 100%;\n}\n\nion-radio {\n padding: 0;\n border-radius: 12px;\n border: 1px solid #d8d8d8;\n background-color: white;\n height: 24px;\n width: 24px;\n margin: auto;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n}\n\nion-checkbox {\n --border-radius: 0;\n height: 24px;\n width: 24px;\n margin: auto;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n}\n\n.arrow {\n margin: auto;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n width: 24px;\n height: 24px;\n}\n\n.hierarchyContainer {\n display: flex;\n align-items: center;\n text-align: left;\n height: 100%;\n}\n\n.hierarchyLabel {\n color: #6b6d6f;\n font-family: Gotham-Medium;\n font-size: 14px;\n font-weight: 500;\n}\n\n.hierarchyLabelMuted {\n color: rgb(138, 138, 138);\n font-family: Gotham-Medium;\n font-size: 10px;\n font-weight: 500;\n}\n\n.checkContainer {\n border-style: solid;\n border-width: 0 0 0 1px;\n border-color: #f6f6f6;\n}\n\n.hierarchyRow {\n width: 100%;\n display: inline-flex;\n min-height: 4em;\n text-align: center;\n border-style: solid;\n border-width: 0 0 2px 0;\n border-color: #f6f6f6;\n}\n.hierarchyRow.selected {\n background-color: #e6d6eb;\n}\n.hierarchyRow.unselected {\n background-color: #ebebeb;\n}\n\n.hierarchyCol-icon {\n width: 10%;\n display: inline-flex;\n max-width: 80px;\n}\n\n.hierarchyCol-content {\n width: -webkit-fill-available;\n display: inline-flex;\n}\n\n.hierarchyCol-check {\n width: 10%;\n max-width: 120px;\n min-width: 100px;\n display: inline-flex;\n margin-left: auto;\n margin-right: 0px;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/hierarchy-cell/hierarchy-cell.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,YAAA;EACA,kBAAA;EACA,mBAAA;EACA,uBAAA;EACA,qBAAA;AACF;AACE;EACE,yBAAA;AACJ;AAEE;EACE,yBAAA;AAAJ;;AAIA;EACE,YAAA;AADF;;AAIA;EACE,UAAA;EACA,mBAAA;EACA,yBAAA;EACA,uBAAA;EACA,YAAA;EACA,WAAA;EACA,YAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;AADF;;AAIA;EACE,kBAAA;EACA,YAAA;EACA,WAAA;EACA,YAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;AADF;;AAIA;EACE,YAAA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;EACA,WAAA;EACA,YAAA;AADF;;AAIA;EACE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,YAAA;AADF;;AAIA;EACE,cAAA;EACA,0BAAA;EACA,eAAA;EACA,gBAAA;AADF;;AAIA;EACE,yBAAA;EACA,0BAAA;EACA,eAAA;EACA,gBAAA;AADF;;AAIA;EACE,mBAAA;EACA,uBAAA;EACA,qBAAA;AADF;;AAIA;EACE,WAAA;EACA,oBAAA;EAEA,eAAA;EACA,kBAAA;EACA,mBAAA;EACA,uBAAA;EACA,qBAAA;AAFF;AAIE;EACE,yBAAA;AAFJ;AAKE;EACE,yBAAA;AAHJ;;AAOA;EACE,UAAA;EACA,oBAAA;EACA,eAAA;AAJF;;AAOA;EACE,6BAAA;EACA,oBAAA;AAJF;;AAOA;EACE,UAAA;EACA,gBAAA;EACA,gBAAA;EACA,oBAAA;EACA,iBAAA;EACA,iBAAA;AAJF\",\"sourcesContent\":[\"ion-row {\\n height: 60px;\\n text-align: center;\\n border-style: solid;\\n border-width: 0 0 2px 0;\\n border-color: #f6f6f6;\\n\\n &.selected {\\n background-color: #e6d6eb;\\n }\\n\\n &.unselected {\\n background-color: #ebebeb;\\n }\\n}\\n\\nion-button {\\n height: 100%;\\n}\\n\\nion-radio {\\n padding: 0;\\n border-radius: 12px;\\n border: 1px solid #d8d8d8;\\n background-color: white;\\n height: 24px;\\n width: 24px;\\n margin: auto;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n}\\n\\nion-checkbox {\\n --border-radius: 0;\\n height: 24px;\\n width: 24px;\\n margin: auto;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n}\\n\\n.arrow {\\n margin: auto;\\n position: absolute;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n width: 24px;\\n height: 24px;\\n}\\n\\n.hierarchyContainer {\\n display: flex;\\n align-items: center;\\n text-align: left;\\n height: 100%;\\n}\\n\\n.hierarchyLabel {\\n color: #6b6d6f;\\n font-family: Gotham-Medium;\\n font-size: 14px;\\n font-weight: 500;\\n}\\n\\n.hierarchyLabelMuted {\\n color: rgb(138, 138, 138);\\n font-family: Gotham-Medium;\\n font-size: 10px;\\n font-weight: 500;\\n}\\n\\n.checkContainer {\\n border-style: solid;\\n border-width: 0 0 0 1px;\\n border-color: #f6f6f6;\\n}\\n\\n.hierarchyRow {\\n width: 100%;\\n display: inline-flex;\\n\\n min-height: 4em;\\n text-align: center;\\n border-style: solid;\\n border-width: 0 0 2px 0;\\n border-color: #f6f6f6;\\n\\n &.selected {\\n background-color: #e6d6eb;\\n }\\n\\n &.unselected {\\n background-color: #ebebeb;\\n }\\n}\\n\\n.hierarchyCol-icon {\\n width: 10%;\\n display: inline-flex;\\n max-width: 80px;\\n}\\n\\n.hierarchyCol-content {\\n width: -webkit-fill-available;\\n display: inline-flex;\\n}\\n\\n.hierarchyCol-check {\\n width: 10%;\\n max-width: 120px;\\n min-width: 100px;\\n display: inline-flex;\\n margin-left: auto;\\n margin-right: 0px;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `app-hierarchy-cell {\n display: block;\n width: 100%;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/hierarchy/hierarchy.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,cAAA;EACA,WAAA;AACF\",\"sourcesContent\":[\"app-hierarchy-cell {\\n display: block;\\n width: 100%;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.wbs-category {\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 500;\n color: var(--ion-color-primary);\n margin: 0.5em !important;\n font-weight: bold;\n}\n\n.wbs-display {\n font-family: \"Gotham-Book\";\n font-size: 0.75em;\n font-weight: 500;\n color: var(--ion-color-primary);\n margin: 0.5em !important;\n}\n\n.wbs-name {\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: bold;\n color: var(--ion-color-dark);\n margin: 0.5em !important;\n}\n\n.border {\n border-width: 1px;\n border-color: #dbdcdd;\n border-style: none none solid none;\n margin: 5px 0px;\n}\n\n.listGrid {\n border-width: 1px;\n border-color: #dbdcdd;\n border-style: none none solid none;\n margin: 12px;\n display: block;\n}\n\n.note-count {\n position: relative;\n width: -moz-fit-content;\n width: fit-content;\n padding: 2px 10px;\n align-items: center;\n display: flex;\n}\n\n.spacing {\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\n.hierarchyRow {\n display: inline-flex;\n width: 100%;\n min-height: 4em;\n}\n\n.hierarchyRow-nested {\n min-height: 4em;\n display: block;\n background-color: #F5F5F6;\n padding-left: 5px;\n width: 100%;\n}\n\n@media (max-width: 400px) {\n .hierarchyCol-content {\n width: 70% !important;\n }\n .hierarchyRow-icons {\n width: 30% !important;\n }\n}\n.hierarchyCol-content {\n width: 100%;\n display: inline-flex;\n}\n\n.hierarchyRow-icons {\n width: 20%;\n min-width: 100px;\n max-width: 200px;\n display: inline-flex;\n position: absolute;\n right: 8px;\n}\n\n.hierarchyRow-icon {\n display: flex;\n align-items: flex-start;\n justify-content: center;\n}\n.hierarchyRow-icon ion-button {\n height: 2vh;\n}\n\n.msgContainer {\n display: flex;\n align-items: center;\n height: 100%;\n width: 100%;\n}\n\n.deleted-label {\n text-align: center;\n font-size: 0.65em;\n width: 12em;\n color: #ff0000;\n border: 1px solid #ff0000;\n border-radius: 15px;\n padding: 4px;\n font-weight: bold;\n margin-left: 0.5em !important;\n}\n\n@media only screen and (max-width: 600px) {\n .wbs-name {\n font-size: 2.5vw;\n }\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/hierarchylist-withnotes/hierarchylist-withnotes.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,+BAAA;EACA,wBAAA;EACA,iBAAA;AACF;;AAEA;EACE,0BAAA;EACA,iBAAA;EACA,gBAAA;EACA,+BAAA;EACA,wBAAA;AACF;;AAGA;EACE,0BAAA;EACA,cAAA;EACA,iBAAA;EACA,4BAAA;EACA,wBAAA;AAAF;;AAGA;EACE,iBAAA;EACA,qBAAA;EACA,kCAAA;EACA,eAAA;AAAF;;AAGA;EACE,iBAAA;EACA,qBAAA;EACA,kCAAA;EACA,YAAA;EACA,cAAA;AAAF;;AAGA;EACE,kBAAA;EACA,uBAAA;EAAA,kBAAA;EACA,iBAAA;EACA,mBAAA;EACA,aAAA;AAAF;;AAGA;EACE,iBAAA;EACA,oBAAA;AAAF;;AAGA;EACE,oBAAA;EACA,WAAA;EACA,eAAA;AAAF;;AAGA;EACE,eAAA;EACA,cAAA;EACA,yBAAA;EACA,iBAAA;EACA,WAAA;AAAF;;AAGA;EACE;IACE,qBAAA;EAAF;EAGA;IACE,qBAAA;EADF;AACF;AAIA;EACE,WAAA;EACA,oBAAA;AAFF;;AAKA;EACE,UAAA;EACA,gBAAA;EACA,gBAAA;EACA,oBAAA;EACA,kBAAA;EACA,UAAA;AAFF;;AAOA;EACE,aAAA;EACA,uBAAA;EACA,uBAAA;AAJF;AAME;EACE,WAAA;AAJJ;;AAQA;EACE,aAAA;EACA,mBAAA;EACA,YAAA;EACA,WAAA;AALF;;AAQA;EACE,kBAAA;EACA,iBAAA;EACA,WAAA;EACA,cAAA;EACA,yBAAA;EACA,mBAAA;EACA,YAAA;EACA,iBAAA;EACA,6BAAA;AALF;;AAQA;EACE;IACE,gBAAA;EALF;AACF\",\"sourcesContent\":[\".wbs-category {\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.8em;\\n font-weight: 500;\\n color: var(--ion-color-primary);\\n margin: 0.5em !important;\\n font-weight: bold;\\n}\\n\\n.wbs-display {\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.75em;\\n font-weight: 500;\\n color: var(--ion-color-primary);\\n margin: 0.5em !important;\\n}\\n\\n\\n.wbs-name {\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: bold;\\n color: var(--ion-color-dark);\\n margin: 0.5em !important;\\n}\\n\\n.border {\\n border-width: 1px;\\n border-color: #dbdcdd;\\n border-style: none none solid none;\\n margin: 5px 0px;\\n}\\n\\n.listGrid {\\n border-width: 1px;\\n border-color: #dbdcdd;\\n border-style: none none solid none;\\n margin: 12px;\\n display: block;\\n}\\n\\n.note-count {\\n position: relative;\\n width: fit-content;\\n padding: 2px 10px;\\n align-items: center;\\n display: flex;\\n}\\n\\n.spacing {\\n margin-top: 0.5em;\\n margin-bottom: 0.5em;\\n}\\n\\n.hierarchyRow {\\n display: inline-flex;\\n width: 100%;\\n min-height: 4em;\\n}\\n\\n.hierarchyRow-nested {\\n min-height: 4em;\\n display: block;\\n background-color: #F5F5F6;\\n padding-left: 5px;\\n width: 100%\\n}\\n\\n@media (max-width: 400px) {\\n .hierarchyCol-content {\\n width: 70% !important;\\n }\\n\\n .hierarchyRow-icons {\\n width: 30% !important;\\n }\\n}\\n\\n.hierarchyCol-content {\\n width: 100%;\\n display: inline-flex;\\n}\\n\\n.hierarchyRow-icons {\\n width: 20%;\\n min-width: 100px;\\n max-width: 200px;\\n display: inline-flex;\\n position: absolute;\\n right: 8px;\\n}\\n\\n.hierarchyRow-msg {}\\n\\n.hierarchyRow-icon {\\n display: flex;\\n align-items: flex-start;\\n justify-content: center;\\n\\n ion-button {\\n height: 2vh;\\n }\\n}\\n\\n.msgContainer {\\n display: flex;\\n align-items: center;\\n height: 100%;\\n width: 100%;\\n}\\n\\n.deleted-label {\\n text-align: center;\\n font-size: 0.65em;\\n width: 12em;\\n color: #ff0000;\\n border: 1px solid #ff0000;\\n border-radius: 15px;\\n padding: 4px;\\n font-weight: bold;\\n margin-left: 0.5em !important;\\n}\\n\\n@media only screen and (max-width: 600px) {\\n .wbs-name {\\n font-size: 2.5vw;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.loading-wrapper {\n padding-left: unset;\n padding-right: unset;\n padding-inline-start: 30px;\n padding-inline-end: 30px;\n display: flex;\n min-width: 250px;\n min-height: 100px;\n width: 250px;\n height: 100px;\n margin: auto;\n border-radius: 16px;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background: white;\n align-items: center;\n color: var(--ion-color-primary);\n font-family: \"Gotham-Book\";\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/loading/loading.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,mBAAA;EACA,oBAAA;EAEA,0BAAA;EAEA,wBAAA;EACA,aAAA;EACA,gBAAA;EACA,iBAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;EACA,mBAAA;EAEA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;EACA,iBAAA;EACA,mBAAA;EACA,+BAAA;EACA,0BAAA;AAAF\",\"sourcesContent\":[\".loading-wrapper {\\n padding-left: unset;\\n padding-right: unset;\\n -webkit-padding-start: 30px;\\n padding-inline-start: 30px;\\n -webkit-padding-end: 30px;\\n padding-inline-end: 30px;\\n display: flex;\\n min-width: 250px;\\n min-height: 100px;\\n width: 250px;\\n height: 100px;\\n margin: auto;\\n border-radius: 16px;\\n\\n position: absolute;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n background: white;\\n align-items: center;\\n color: var(--ion-color-primary);\\n font-family: 'Gotham-Book';\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.inverted-rounded-button {\n border: 1px solid var(--ion-color-primary);\n border-radius: 1em;\n color: var(--ion-color-light);\n font-family: \"Gotham-Book\";\n font-size: 1em;\n background: var(--ion-color-primary);\n padding: 0.3em 0.8em;\n margin: 1em 0em;\n}\n\n.no-turnover-notes {\n color: #6b6d6f;\n font-family: \"Gotham-Bold\";\n font-size: 1.1em;\n}\n\n.add-to {\n font-family: \"Gotham-Bold, Arial, Verdana, Tahoma, sans-serif\";\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/no-notes/no-notes.component.scss\",\"webpack://./src/theme/mixins/app.mixins.scss\"],\"names\":[],\"mappings\":\"AAEA;ECUC,0CAAA;EACA,kBAAA;EACA,6BAAA;EACA,0BAAA;EACA,cAAA;EACA,oCAAA;EACA,oBAAA;EACA,eAAA;ADVD;;AAHA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;AAMF;;AAFA;EACE,8DAAA;AAKF\",\"sourcesContent\":[\"@import \\\"../../theme/mixins/app.mixins.scss\\\";\\n\\n.inverted-rounded-button {\\n @include inverted-rounded-button;\\n}\\n\\n.no-turnover-notes {\\n color: #6b6d6f;\\n font-family: \\\"Gotham-Bold\\\";\\n font-size: 1.1em;\\n}\\n\\n\\n.add-to {\\n font-family: \\\"Gotham-Bold, Arial, Verdana, Tahoma, sans-serif\\\";\\n}\",\"@mixin rounded-button {\\n\\tborder: 1px solid var(--ion-color-primary);\\n\\tborder-radius: 1em;\\n\\tcolor: var(--ion-color-primary);\\n\\tfont-family: \\\"Gotham-Book\\\";\\n\\tfont-size: 1em;\\n\\tbackground: transparent;\\n\\tpadding: 0.3em 0.8em;\\n\\tmargin: 1em 0em;\\n}\\n\\n@mixin inverted-rounded-button {\\n\\tborder: 1px solid var(--ion-color-primary);\\n\\tborder-radius: 1em;\\n\\tcolor: var(--ion-color-light);\\n\\tfont-family: \\\"Gotham-Book\\\";\\n\\tfont-size: 1em;\\n\\tbackground: var(--ion-color-primary);\\n\\tpadding: 0.3em 0.8em;\\n\\tmargin: 1em 0em;\\n}\\n\\n@mixin block-display {\\n\\tdisplay: block;\\n\\twidth: 100%;\\n\\tpadding-top: 0.2em;\\n}\\n\\n@mixin sub-header-text {\\n\\tcolor: #000000;\\n\\tfont-family: \\\"Gotham-Bold\\\";\\n\\tfont-size: 1.3em;\\n}\\n\\n@mixin sub-header {\\n\\tbackground: #F6F6F6;\\n\\twidth: 100%;\\n\\tborder-bottom: 1px solid #DBDCDD;\\n}\\n\\n@mixin absolute-center {\\n\\tcolor: var(--ion-color-primary);\\n\\tfont-size: 1.5em;\\n\\tmargin: 0;\\n\\tposition: absolute;\\n\\ttop: 50%;\\n\\tleft: 50%;\\n\\t-ms-transform: translate(-50%, -50%);\\n\\ttransform: translate(-50%, -50%);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ion-icon {\n color: #751269;\n}\n\n.block-display {\n display: block;\n width: 100%;\n margin: 0.3em 0em;\n}\n\n.path-forward {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: bold;\n}\n\n.header-background {\n background-color: #ecdeea;\n}\n\n.comment-date {\n color: #a9a9a9;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 300;\n text-align: right;\n}\n\n.comment-detail {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 300;\n white-space: pre;\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n}\n\n.material-status {\n padding-bottom: 16px;\n padding-top: 5px;\n}\n\n.material-content {\n margin-left: -2px;\n}\n\n.comment-content {\n padding-left: 8px;\n margin-top: 0px;\n padding-top: 0px;\n padding-bottom: 5px;\n}\n\n.comment-div {\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n margin-bottom: 5px;\n padding-top: 5px;\n}\n\n.shift-date {\n color: #4a4a4a;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 500;\n line-height: 17px;\n}\n\n.row-separator {\n border-width: 1px;\n border-color: #dbdcdd;\n border-style: none none solid none;\n margin: 0.3em 0em;\n}\n\n.spacing-right {\n margin-right: 0.3em;\n}\n\n.spacing-left {\n margin-left: 0.5em;\n}\n\nion-label {\n margin: 0.5em;\n}\n\ndiv {\n display: block;\n}\n\n.right-chevron-icon {\n color: var(--ion-color-primary);\n font-size: 1.5em;\n padding: 0;\n height: 24px;\n width: 24px;\n margin: auto;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n}\n\n.detailRow {\n display: inline-flex;\n width: 100%;\n}\n\n.detailCol-content {\n width: 90%;\n}\n\n.detailCol-icon {\n width: 10%;\n display: inline-flex;\n min-width: 40px;\n max-width: 100px;\n margin-left: auto;\n margin-right: 0px;\n}\n\nion-icon {\n color: #751269;\n}\n\n.block-display {\n display: block;\n width: 100%;\n margin: 0.3em 0em;\n}\n\n.path-forward {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: bold;\n}\n\n.header-background {\n background-color: #ecdeea;\n}\n\n.comment-date {\n color: #a9a9a9;\n font-family: \"Gotham-Book\";\n font-size: 0.6em;\n font-weight: 300;\n text-align: right;\n}\n\n.comment-detail {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 300;\n white-space: pre;\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n}\n\n.comment-header {\n padding: 0.5px 1px 0.5px 1px;\n width: -moz-fit-content;\n width: fit-content;\n border-radius: 1vh;\n}\n\n.material-status {\n padding-bottom: 16px;\n padding-top: 5px;\n font-size: 0.8em;\n margin-left: 0 !important;\n}\n\n.material-content {\n margin-left: -2px;\n}\n\n.comment-content {\n margin-left: 1vh;\n margin-top: 5px;\n padding-top: 0px;\n padding-bottom: 5px;\n padding-left: 3px;\n font-size: 0.8em;\n background-color: #F0F1F1;\n border-radius: 10px;\n}\n\n.comment-div {\n margin-bottom: 5px;\n padding-top: 5px;\n background-color: #F0F1F1;\n border-radius: 10px;\n}\n\n.shift-date {\n color: #4a4a4a;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 500;\n line-height: 17px;\n}\n\n.row-separator {\n border-width: 1px;\n border-color: #dbdcdd;\n margin: 0.3em 0em;\n}\n\n.spacing-right {\n margin-right: 0.3em;\n}\n\n.spacing-left {\n margin-left: 0.5em;\n}\n\nion-label {\n margin: 0.5em;\n}\n\ndiv {\n display: block;\n}\n\n.right-chevron-icon {\n color: var(--ion-color-primary);\n font-size: 1.5em;\n padding: 0;\n height: 24px;\n width: 24px;\n margin: auto;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n}\n\n.detailRow {\n display: inline-flex;\n width: 100%;\n}\n\n.detailCol-content {\n width: 90%;\n}\n\n.detailCol-icon {\n align-items: center;\n display: flex;\n}\n\n.center-icon {\n display: flex;\n align-items: center;\n}\n\n@media only screen and (max-width: 600px) {\n .shift-date {\n font-size: 0.5em;\n }\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/note-detail/note-detail.component.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,cAAA;AAFF;;AAKA;EACE,cAAA;EACA,WAAA;EACA,iBAAA;AAFF;;AAKA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,iBAAA;AAFF;;AAKA;EACE,yBAAA;AAFF;;AAKA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,iBAAA;AAFF;;AAKA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,gBAAA;EACA,2BAAA;EACA,kCAAA;AAFF;;AAKA;EACE,oBAAA;EACA,gBAAA;AAFF;;AAKA;EACE,iBAAA;AAFF;;AAKA;EAGE,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,mBAAA;AAJF;;AAQA;EACE,0CAAA;EACA,kBAAA;EACA,gBAAA;AALF;;AAQA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,iBAAA;AALF;;AAQA;EACE,iBAAA;EACA,qBAAA;EACA,kCAAA;EACA,iBAAA;AALF;;AAQA;EACE,mBAAA;AALF;;AAQA;EACE,kBAAA;AALF;;AAQA;EACE,aAAA;AALF;;AAQA;EACE,cAAA;AALF;;AAQA;EACE,+BAAA;EACA,gBAAA;EAEA,UAAA;EAEA,YAAA;EACA,WAAA;EACA,YAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;AAPF;;AAUA;EACE,oBAAA;EACA,WAAA;AAPF;;AAUA;EACE,UAAA;AAPF;;AAUA;EACE,UAAA;EACA,oBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;AAPF;;AAaA;EACE,cAAA;AAVF;;AAaA;EACE,cAAA;EACA,WAAA;EACA,iBAAA;AAVF;;AAaA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,iBAAA;AAVF;;AAaA;EACE,yBAAA;AAVF;;AAaA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,iBAAA;AAVF;;AAaA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,gBAAA;EACA,2BAAA;EACA,kCAAA;AAVF;;AAaA;EACE,4BAAA;EACA,uBAAA;EAAA,kBAAA;EACA,kBAAA;AAVF;;AAaA;EACE,oBAAA;EACA,gBAAA;EACA,gBAAA;EACA,yBAAA;AAVF;;AAaA;EACE,iBAAA;AAVF;;AAaA;EAGE,gBAAA;EACA,eAAA;EACA,gBAAA;EACA,mBAAA;EACA,iBAAA;EACA,gBAAA;EACA,yBAAA;EACA,mBAAA;AAZF;;AAgBA;EACE,kBAAA;EACA,gBAAA;EACA,yBAAA;EACA,mBAAA;AAbF;;AAgBA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,iBAAA;AAbF;;AAgBA;EACE,iBAAA;EACA,qBAAA;EACA,iBAAA;AAbF;;AAgBA;EACE,mBAAA;AAbF;;AAgBA;EACE,kBAAA;AAbF;;AAgBA;EACE,aAAA;AAbF;;AAgBA;EACE,cAAA;AAbF;;AAgBA;EACE,+BAAA;EACA,gBAAA;EAEA,UAAA;EAEA,YAAA;EACA,WAAA;EACA,YAAA;EACA,MAAA;EACA,OAAA;EACA,SAAA;EACA,QAAA;AAfF;;AAkBA;EACE,oBAAA;EACA,WAAA;AAfF;;AAkBA;EACE,UAAA;AAfF;;AAkBA;EACE,mBAAA;EACA,aAAA;AAfF;;AAkBA;EACE,aAAA;EACA,mBAAA;AAfF;;AAkBA;EACE;IACE,gBAAA;EAfF;AACF\",\"sourcesContent\":[\"// @import \\\"mixins/app.mixins.scss\\\";\\n@import \\\"../../theme/mixins/app.mixins.scss\\\";\\n\\nion-icon {\\n color: #751269;\\n}\\n\\n.block-display {\\n display: block;\\n width: 100%;\\n margin: 0.3em 0em;\\n}\\n\\n.path-forward {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: bold;\\n}\\n\\n.header-background {\\n background-color: #ecdeea;\\n}\\n\\n.comment-date {\\n color: #a9a9a9;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.8em;\\n font-weight: 300;\\n text-align: right;\\n}\\n\\n.comment-detail {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 300;\\n white-space: pre;\\n overflow: hidden !important;\\n text-overflow: ellipsis !important;\\n}\\n\\n.material-status {\\n padding-bottom: 16px;\\n padding-top: 5px;\\n}\\n\\n.material-content {\\n margin-left: -2px;\\n}\\n\\n.comment-content {\\n // overflow: auto;\\n // max-height: 70px;\\n padding-left: 8px;\\n margin-top: 0px;\\n padding-top: 0px;\\n padding-bottom: 5px;\\n}\\n\\n\\n.comment-div {\\n box-shadow: 0 4px 16px rgba(0, 0, 0, .12);\\n margin-bottom: 5px;\\n padding-top: 5px;\\n}\\n\\n.shift-date {\\n color: #4a4a4a;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 500;\\n line-height: 17px;\\n}\\n\\n.row-separator {\\n border-width: 1px;\\n border-color: #dbdcdd;\\n border-style: none none solid none;\\n margin: 0.3em 0em;\\n}\\n\\n.spacing-right {\\n margin-right: 0.3em;\\n}\\n\\n.spacing-left {\\n margin-left: 0.5em;\\n}\\n\\nion-label {\\n margin: 0.5em;\\n}\\n\\ndiv {\\n display: block;\\n}\\n\\n.right-chevron-icon {\\n color: var(--ion-color-primary);\\n font-size: 1.5em;\\n\\n padding: 0;\\n\\n height: 24px;\\n width: 24px;\\n margin: auto;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n}\\n\\n.detailRow {\\n display: inline-flex;\\n width: 100%;\\n}\\n\\n.detailCol-content {\\n width: 90%;\\n}\\n\\n.detailCol-icon {\\n width: 10%;\\n display: inline-flex;\\n min-width: 40px;\\n max-width: 100px;\\n margin-left: auto;\\n margin-right: 0px;\\n}\\n\\n// @import \\\"mixins/app.mixins.scss\\\";\\n@import \\\"../../theme/mixins/app.mixins.scss\\\";\\n\\nion-icon {\\n color: #751269;\\n}\\n\\n.block-display {\\n display: block;\\n width: 100%;\\n margin: 0.3em 0em;\\n}\\n\\n.path-forward {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: .8em;\\n font-weight: bold;\\n}\\n\\n.header-background {\\n background-color: #ecdeea;\\n}\\n\\n.comment-date {\\n color: #a9a9a9;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.6em;\\n font-weight: 300;\\n text-align: right;\\n}\\n\\n.comment-detail {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: .8em;\\n font-weight: 300;\\n white-space: pre;\\n overflow: hidden !important;\\n text-overflow: ellipsis !important;\\n}\\n\\n.comment-header {\\n padding: .5px 1px .5px 1px;\\n width: fit-content;\\n border-radius: 1vh;\\n}\\n\\n.material-status {\\n padding-bottom: 16px;\\n padding-top: 5px;\\n font-size: .8em;\\n margin-left: 0 !important;\\n}\\n\\n.material-content {\\n margin-left: -2px;\\n}\\n\\n.comment-content {\\n //@at-root: auto;\\n // max-height: 70px;\\n margin-left: 1vh;\\n margin-top: 5px;\\n padding-top: 0px;\\n padding-bottom: 5px;\\n padding-left: 3px;\\n font-size: .8em;\\n background-color: #F0F1F1;\\n border-radius: 10px;\\n}\\n\\n\\n.comment-div {\\n margin-bottom: 5px;\\n padding-top: 5px;\\n background-color: #F0F1F1;\\n border-radius: 10px;\\n}\\n\\n.shift-date {\\n color: #4a4a4a;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: .8em;\\n font-weight: 500;\\n line-height: 17px;\\n}\\n\\n.row-separator {\\n border-width: 1px;\\n border-color: #dbdcdd;\\n margin: 0.3em 0em;\\n}\\n\\n.spacing-right {\\n margin-right: 0.3em;\\n}\\n\\n.spacing-left {\\n margin-left: 0.5em;\\n}\\n\\nion-label {\\n margin: 0.5em;\\n}\\n\\ndiv {\\n display: block;\\n}\\n\\n.right-chevron-icon {\\n color: var(--ion-color-primary);\\n font-size: 1.5em;\\n\\n padding: 0;\\n\\n height: 24px;\\n width: 24px;\\n margin: auto;\\n top: 0;\\n left: 0;\\n bottom: 0;\\n right: 0;\\n}\\n\\n.detailRow {\\n display: inline-flex;\\n width: 100%;\\n}\\n\\n.detailCol-content {\\n width: 90%;\\n}\\n\\n.detailCol-icon {\\n align-items: center;\\n display: flex;\\n}\\n\\n.center-icon {\\n display: flex;\\n align-items: center;\\n}\\n\\n@media only screen and (max-width: 600px) {\\n .shift-date {\\n font-size: .5em;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ion-label {\n margin: 0.5em 0em;\n}\n\ndiv {\n display: block;\n}\n\n.noteType {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: bold;\n}\n\n.noteCreatedDate {\n color: #A9A9A9;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 300;\n text-align: right;\n}\n\n.noteDetail {\n color: #4A4A4A;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 300;\n white-space: pre;\n}\n\n.noteShiftDate {\n color: #4A4A4A;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 500;\n line-height: 17px;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/note-list-cell/note-list-cell.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,iBAAA;AACF;;AAEA;EACE,cAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,iBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,iBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,gBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,iBAAA;AACF\",\"sourcesContent\":[\"ion-label {\\n margin: 0.5em 0em;\\n}\\n\\ndiv {\\n display: block;\\n}\\n\\n.noteType {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: bold;\\n}\\n\\n.noteCreatedDate {\\n color: #A9A9A9;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.8em;\\n font-weight: 300;\\n text-align: right;\\n}\\n\\n.noteDetail {\\n color: #4A4A4A;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 300;\\n white-space: pre;\\n}\\n\\n.noteShiftDate {\\n color: #4A4A4A;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 500;\\n line-height: 17px;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `ion-label {\n margin: 0.5em 0em;\n}\n\ndiv {\n display: block;\n}\n\n.noteType {\n color: #751269;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: bold;\n}\n\n.noteCreatedDate {\n color: #A9A9A9;\n font-family: \"Gotham-Book\";\n font-size: 0.8em;\n font-weight: 300;\n text-align: right;\n}\n\n.noteDetail {\n color: #4A4A4A;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 300;\n white-space: pre;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.noteShiftDate {\n color: #4A4A4A;\n font-family: \"Gotham-Book\";\n font-size: 1em;\n font-weight: 500;\n line-height: 17px;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/note-list/note-list.component.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,iBAAA;AACF;;AAEA;EACE,cAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,iBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,gBAAA;EACA,gBAAA;EACA,iBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,gBAAA;EACA,gBAAA;EACA,uBAAA;AACF;;AAEA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,gBAAA;EACA,iBAAA;AACF\",\"sourcesContent\":[\"ion-label {\\n margin: 0.5em 0em;\\n}\\n\\ndiv {\\n display: block;\\n}\\n\\n.noteType {\\n color: #751269;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: bold;\\n}\\n\\n.noteCreatedDate {\\n color: #A9A9A9;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 0.8em;\\n font-weight: 300;\\n text-align: right;\\n}\\n\\n.noteDetail {\\n color: #4A4A4A;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 300;\\n white-space: pre;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n\\n.noteShiftDate {\\n color: #4A4A4A;\\n font-family: \\\"Gotham-Book\\\";\\n font-size: 1em;\\n font-weight: 500;\\n line-height: 17px;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `photo-only {\n width: 100%;\n}\nphoto-only .thumbnail {\n margin-top: 5px;\n border: 2px solid red;\n width: 100%;\n height: auto;\n max-width: 100%;\n background-color: white;\n}\nphoto-only .self-center {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\nphoto-only .caption {\n margin: 0;\n padding: 5px 0 0 5px;\n}\n\n.image-upload > input {\n display: none;\n}\n\n@media only screen and (min-width: 768px) {\n .fullscreen-modal .modal-wrapper {\n position: absolute;\n top: 0;\n left: 0;\n margin: 5%;\n margin-top: 10%;\n display: block;\n width: 90%;\n height: 75%;\n }\n}\n\n.images-display {\n width: 100%;\n}\n\n.attachment-container {\n width: 50%;\n padding-left: 25px;\n}\n\n.image-container {\n position: relative;\n float: left;\n max-width: 250px;\n max-height: 250px;\n width: 100%;\n height: 100%;\n}\n.image-container img {\n max-height: 250px;\n height: 99%;\n width: 99%;\n padding: 1%;\n}\n\n.image-action-items {\n position: absolute;\n top: 5px;\n right: 5px;\n z-index: 9999;\n}\n\n.title {\n color: #000000;\n font-family: \"Gotham-Bold\";\n font-size: 1em;\n margin-left: 10px;\n}\n\n.title-edit {\n color: #000000;\n font-family: \"Gotham-Bold\";\n font-size: 1em;\n}\n\n.spacing {\n margin: 0.5em;\n}\n\n.photo-header {\n width: 100%;\n}\n\n.photo-buttons {\n float: right;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/photo/photo-only.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,WAAA;AACF;AACE;EACE,eAAA;EACA,qBAAA;EACA,WAAA;EACA,YAAA;EACA,eAAA;EACA,uBAAA;AACJ;AAEE;EACE,aAAA;EACA,sBAAA;EACA,uBAAA;AAAJ;AAGE;EACE,SAAA;EACA,oBAAA;AADJ;;AAKA;EACE,aAAA;AAFF;;AAOE;EACE;IACE,kBAAA;IACA,MAAA;IACA,OAAA;IACA,UAAA;IACA,eAAA;IACA,cAAA;IACA,UAAA;IACA,WAAA;EAJJ;AACF;;AAQA;EACE,WAAA;AALF;;AAQA;EACE,UAAA;EACA,kBAAA;AALF;;AAQA;EACE,kBAAA;EACA,WAAA;EACA,gBAAA;EACA,iBAAA;EACA,WAAA;EACA,YAAA;AALF;AAOE;EACE,iBAAA;EACA,WAAA;EACA,UAAA;EACA,WAAA;AALJ;;AASA;EACE,kBAAA;EACA,QAAA;EACA,UAAA;EACA,aAAA;AANF;;AASA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;EACA,iBAAA;AANF;;AASA;EACE,cAAA;EACA,0BAAA;EACA,cAAA;AANF;;AASA;EACE,aAAA;AANF;;AASA;EACE,WAAA;AANF;;AASA;EACE,YAAA;AANF\",\"sourcesContent\":[\"photo-only {\\n width: 100%;\\n\\n .thumbnail {\\n margin-top: 5px;\\n border: 2px solid red;\\n width: 100%;\\n height: auto;\\n max-width: 100%;\\n background-color: white;\\n }\\n\\n .self-center {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n }\\n\\n .caption {\\n margin: 0;\\n padding: 5px 0 0 5px;\\n }\\n}\\n\\n.image-upload>input {\\n display: none;\\n}\\n\\n\\n.fullscreen-modal {\\n @media only screen and (min-width: 768px) {\\n .modal-wrapper {\\n position: absolute;\\n top: 0;\\n left: 0;\\n margin: 5%;\\n margin-top: 10%;\\n display: block;\\n width: 90%;\\n height: 75%;\\n }\\n }\\n}\\n\\n.images-display {\\n width: 100%;\\n}\\n\\n.attachment-container {\\n width: 50%;\\n padding-left: 25px;\\n}\\n\\n.image-container {\\n position: relative;\\n float: left;\\n max-width: 250px;\\n max-height: 250px;\\n width: 100%;\\n height: 100%;\\n\\n & img {\\n max-height: 250px;\\n height: 99%;\\n width: 99%;\\n padding: 1%;\\n }\\n}\\n\\n.image-action-items {\\n position: absolute;\\n top: 5px;\\n right: 5px;\\n z-index: 9999;\\n}\\n\\n.title {\\n color: #000000;\\n font-family: 'Gotham-Bold';\\n font-size: 1em;\\n margin-left: 10px;\\n}\\n\\n.title-edit {\\n color: #000000;\\n font-family: 'Gotham-Bold';\\n font-size: 1em;\\n}\\n\\n.spacing {\\n margin: 0.5em;\\n}\\n\\n.photo-header {\\n width: 100%;\\n}\\n\\n.photo-buttons {\\n float: right;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.toolbar-buttons {\n color: white !important;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/pages/hierarchy/hierarchy.page.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,uBAAA;AACF\",\"sourcesContent\":[\".toolbar-buttons {\\n color: white !important;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","// Imports\nvar ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/sourceMaps.js\");\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.content {\n height: 100%;\n background-color: #ececec;\n}\n\n.scroll-content {\n padding: 0 !important;\n margin: 16px;\n box-shadow: 0 0 11px 0 rgba(0, 0, 0, 0.18);\n}\n\n.main {\n overflow-y: auto;\n min-height: 55%;\n background-color: white;\n}\n.main ion-row {\n height: 100%;\n}\n.main div {\n max-width: 400px;\n}\n\np {\n line-height: 1.5;\n}\np[color=primary] {\n font-size: 24px;\n}\n\n.button {\n --border-radius: 0;\n font-weight: 700;\n}\n\n.col {\n padding: 0;\n}\n.col:first-child {\n padding-right: 8px;\n}\n.col:last-child {\n padding-left: 8px;\n}\n\ndiv.logo {\n height: 25%;\n position: relative;\n background-color: white;\n}\ndiv.logo div[padding] {\n position: absolute;\n width: 100%;\n bottom: 0;\n}\n\ndiv.buttons {\n position: relative;\n background-color: white;\n}\ndiv.buttons div[padding] {\n position: absolute;\n width: 100%;\n top: 0;\n}\ndiv.buttons div[padding] ion-grid {\n width: 100%;\n max-width: 400px;\n margin: 0 auto;\n}\n\nimg {\n display: block;\n height: 100px;\n margin: 0 auto;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/pages/notice/notice.page.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,YAAA;EACA,yBAAA;AACF;;AAEA;EACE,qBAAA;EACA,YAAA;EACA,0CAAA;AACF;;AAEA;EACE,gBAAA;EACA,eAAA;EACA,uBAAA;AACF;AACE;EACE,YAAA;AACJ;AAEE;EACE,gBAAA;AAAJ;;AAIA;EACE,gBAAA;AADF;AAGE;EACE,eAAA;AADJ;;AAKA;EACE,kBAAA;EACA,gBAAA;AAFF;;AAKA;EACE,UAAA;AAFF;AAIE;EACE,kBAAA;AAFJ;AAKE;EACE,iBAAA;AAHJ;;AAOA;EACE,WAAA;EACA,kBAAA;EACA,uBAAA;AAJF;AAME;EACE,kBAAA;EACA,WAAA;EACA,SAAA;AAJJ;;AAQA;EACE,kBAAA;EACA,uBAAA;AALF;AAOE;EACE,kBAAA;EACA,WAAA;EACA,MAAA;AALJ;AAOI;EACE,WAAA;EACA,gBAAA;EACA,cAAA;AALN;;AAUA;EACE,cAAA;EACA,aAAA;EACA,cAAA;AAPF\",\"sourcesContent\":[\".content {\\n height: 100%;\\n background-color: #ececec;\\n}\\n\\n.scroll-content {\\n padding: 0 !important;\\n margin: 16px;\\n box-shadow: 0 0 11px 0 rgba(0, 0, 0, 0.18);\\n}\\n\\n.main {\\n overflow-y: auto;\\n min-height: 55%;\\n background-color: white;\\n\\n & ion-row {\\n height: 100%;\\n }\\n\\n div {\\n max-width: 400px;\\n }\\n}\\n\\np {\\n line-height: 1.5;\\n\\n &[color='primary'] {\\n font-size: 24px;\\n }\\n}\\n\\n.button {\\n --border-radius: 0;\\n font-weight: 700;\\n}\\n\\n.col {\\n padding: 0;\\n\\n &:first-child {\\n padding-right: 8px;\\n }\\n\\n &:last-child {\\n padding-left: 8px;\\n }\\n}\\n\\ndiv.logo {\\n height: 25%;\\n position: relative;\\n background-color: white;\\n\\n div[padding] {\\n position: absolute;\\n width: 100%;\\n bottom: 0;\\n }\\n}\\n\\ndiv.buttons {\\n position: relative;\\n background-color: white;\\n\\n div[padding] {\\n position: absolute;\\n width: 100%;\\n top: 0;\\n\\n ion-grid {\\n width: 100%;\\n max-width: 400px;\\n margin: 0 auto;\\n }\\n }\\n}\\n\\nimg {\\n display: block;\\n height: 100px;\\n margin: 0 auto;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nmodule.exports = ___CSS_LOADER_EXPORT___.toString();\n","var map = {\n\t\"./af\": 85637,\n\t\"./af.js\": 85637,\n\t\"./ar\": 6777,\n\t\"./ar-dz\": 74508,\n\t\"./ar-dz.js\": 74508,\n\t\"./ar-kw\": 67504,\n\t\"./ar-kw.js\": 67504,\n\t\"./ar-ly\": 95373,\n\t\"./ar-ly.js\": 95373,\n\t\"./ar-ma\": 92412,\n\t\"./ar-ma.js\": 92412,\n\t\"./ar-ps\": 78823,\n\t\"./ar-ps.js\": 78823,\n\t\"./ar-sa\": 36670,\n\t\"./ar-sa.js\": 36670,\n\t\"./ar-tn\": 36448,\n\t\"./ar-tn.js\": 36448,\n\t\"./ar.js\": 6777,\n\t\"./az\": 23009,\n\t\"./az.js\": 23009,\n\t\"./be\": 28299,\n\t\"./be.js\": 28299,\n\t\"./bg\": 4685,\n\t\"./bg.js\": 4685,\n\t\"./bm\": 11171,\n\t\"./bm.js\": 11171,\n\t\"./bn\": 23590,\n\t\"./bn-bd\": 5841,\n\t\"./bn-bd.js\": 5841,\n\t\"./bn.js\": 23590,\n\t\"./bo\": 54309,\n\t\"./bo.js\": 54309,\n\t\"./br\": 54130,\n\t\"./br.js\": 54130,\n\t\"./bs\": 8033,\n\t\"./bs.js\": 8033,\n\t\"./ca\": 55294,\n\t\"./ca.js\": 55294,\n\t\"./cs\": 53028,\n\t\"./cs.js\": 53028,\n\t\"./cv\": 5807,\n\t\"./cv.js\": 5807,\n\t\"./cy\": 70342,\n\t\"./cy.js\": 70342,\n\t\"./da\": 38269,\n\t\"./da.js\": 38269,\n\t\"./de\": 11489,\n\t\"./de-at\": 42123,\n\t\"./de-at.js\": 42123,\n\t\"./de-ch\": 17757,\n\t\"./de-ch.js\": 17757,\n\t\"./de.js\": 11489,\n\t\"./dv\": 28152,\n\t\"./dv.js\": 28152,\n\t\"./el\": 7687,\n\t\"./el.js\": 7687,\n\t\"./en-au\": 46668,\n\t\"./en-au.js\": 46668,\n\t\"./en-ca\": 76798,\n\t\"./en-ca.js\": 76798,\n\t\"./en-gb\": 53615,\n\t\"./en-gb.js\": 53615,\n\t\"./en-ie\": 91364,\n\t\"./en-ie.js\": 91364,\n\t\"./en-il\": 79907,\n\t\"./en-il.js\": 79907,\n\t\"./en-in\": 70533,\n\t\"./en-in.js\": 70533,\n\t\"./en-nz\": 33190,\n\t\"./en-nz.js\": 33190,\n\t\"./en-sg\": 51096,\n\t\"./en-sg.js\": 51096,\n\t\"./eo\": 3962,\n\t\"./eo.js\": 3962,\n\t\"./es\": 37726,\n\t\"./es-do\": 65010,\n\t\"./es-do.js\": 65010,\n\t\"./es-mx\": 63654,\n\t\"./es-mx.js\": 63654,\n\t\"./es-us\": 59043,\n\t\"./es-us.js\": 59043,\n\t\"./es.js\": 37726,\n\t\"./et\": 25343,\n\t\"./et.js\": 25343,\n\t\"./eu\": 90728,\n\t\"./eu.js\": 90728,\n\t\"./fa\": 60787,\n\t\"./fa.js\": 60787,\n\t\"./fi\": 71771,\n\t\"./fi.js\": 71771,\n\t\"./fil\": 45335,\n\t\"./fil.js\": 45335,\n\t\"./fo\": 69761,\n\t\"./fo.js\": 69761,\n\t\"./fr\": 1670,\n\t\"./fr-ca\": 28991,\n\t\"./fr-ca.js\": 28991,\n\t\"./fr-ch\": 97280,\n\t\"./fr-ch.js\": 97280,\n\t\"./fr.js\": 1670,\n\t\"./fy\": 24203,\n\t\"./fy.js\": 24203,\n\t\"./ga\": 69858,\n\t\"./ga.js\": 69858,\n\t\"./gd\": 38605,\n\t\"./gd.js\": 38605,\n\t\"./gl\": 27365,\n\t\"./gl.js\": 27365,\n\t\"./gom-deva\": 33896,\n\t\"./gom-deva.js\": 33896,\n\t\"./gom-latn\": 95587,\n\t\"./gom-latn.js\": 95587,\n\t\"./gu\": 97950,\n\t\"./gu.js\": 97950,\n\t\"./he\": 92029,\n\t\"./he.js\": 92029,\n\t\"./hi\": 51897,\n\t\"./hi.js\": 51897,\n\t\"./hr\": 29816,\n\t\"./hr.js\": 29816,\n\t\"./hu\": 22253,\n\t\"./hu.js\": 22253,\n\t\"./hy-am\": 28196,\n\t\"./hy-am.js\": 28196,\n\t\"./id\": 51307,\n\t\"./id.js\": 51307,\n\t\"./is\": 95474,\n\t\"./is.js\": 95474,\n\t\"./it\": 23099,\n\t\"./it-ch\": 45807,\n\t\"./it-ch.js\": 45807,\n\t\"./it.js\": 23099,\n\t\"./ja\": 19127,\n\t\"./ja.js\": 19127,\n\t\"./jv\": 30182,\n\t\"./jv.js\": 30182,\n\t\"./ka\": 10758,\n\t\"./ka.js\": 10758,\n\t\"./kk\": 93444,\n\t\"./kk.js\": 93444,\n\t\"./km\": 72034,\n\t\"./km.js\": 72034,\n\t\"./kn\": 46223,\n\t\"./kn.js\": 46223,\n\t\"./ko\": 83064,\n\t\"./ko.js\": 83064,\n\t\"./ku\": 8714,\n\t\"./ku-kmr\": 10961,\n\t\"./ku-kmr.js\": 10961,\n\t\"./ku.js\": 8714,\n\t\"./ky\": 12062,\n\t\"./ky.js\": 12062,\n\t\"./lb\": 84796,\n\t\"./lb.js\": 84796,\n\t\"./lo\": 19279,\n\t\"./lo.js\": 19279,\n\t\"./lt\": 106,\n\t\"./lt.js\": 106,\n\t\"./lv\": 11840,\n\t\"./lv.js\": 11840,\n\t\"./me\": 42240,\n\t\"./me.js\": 42240,\n\t\"./mi\": 13588,\n\t\"./mi.js\": 13588,\n\t\"./mk\": 15518,\n\t\"./mk.js\": 15518,\n\t\"./ml\": 37823,\n\t\"./ml.js\": 37823,\n\t\"./mn\": 98657,\n\t\"./mn.js\": 98657,\n\t\"./mr\": 61285,\n\t\"./mr.js\": 61285,\n\t\"./ms\": 43014,\n\t\"./ms-my\": 86253,\n\t\"./ms-my.js\": 86253,\n\t\"./ms.js\": 43014,\n\t\"./mt\": 20167,\n\t\"./mt.js\": 20167,\n\t\"./my\": 47940,\n\t\"./my.js\": 47940,\n\t\"./nb\": 50014,\n\t\"./nb.js\": 50014,\n\t\"./ne\": 49023,\n\t\"./ne.js\": 49023,\n\t\"./nl\": 34208,\n\t\"./nl-be\": 71412,\n\t\"./nl-be.js\": 71412,\n\t\"./nl.js\": 34208,\n\t\"./nn\": 81354,\n\t\"./nn.js\": 81354,\n\t\"./oc-lnc\": 40870,\n\t\"./oc-lnc.js\": 40870,\n\t\"./pa-in\": 80389,\n\t\"./pa-in.js\": 80389,\n\t\"./pl\": 7342,\n\t\"./pl.js\": 7342,\n\t\"./pt\": 34774,\n\t\"./pt-br\": 73003,\n\t\"./pt-br.js\": 73003,\n\t\"./pt.js\": 34774,\n\t\"./ro\": 85333,\n\t\"./ro.js\": 85333,\n\t\"./ru\": 73451,\n\t\"./ru.js\": 73451,\n\t\"./sd\": 43921,\n\t\"./sd.js\": 43921,\n\t\"./se\": 59682,\n\t\"./se.js\": 59682,\n\t\"./si\": 80582,\n\t\"./si.js\": 80582,\n\t\"./sk\": 4348,\n\t\"./sk.js\": 4348,\n\t\"./sl\": 95337,\n\t\"./sl.js\": 95337,\n\t\"./sq\": 39358,\n\t\"./sq.js\": 39358,\n\t\"./sr\": 50683,\n\t\"./sr-cyrl\": 69382,\n\t\"./sr-cyrl.js\": 69382,\n\t\"./sr.js\": 50683,\n\t\"./ss\": 51156,\n\t\"./ss.js\": 51156,\n\t\"./sv\": 29855,\n\t\"./sv.js\": 29855,\n\t\"./sw\": 18536,\n\t\"./sw.js\": 18536,\n\t\"./ta\": 15373,\n\t\"./ta.js\": 15373,\n\t\"./te\": 37809,\n\t\"./te.js\": 37809,\n\t\"./tet\": 61297,\n\t\"./tet.js\": 61297,\n\t\"./tg\": 92527,\n\t\"./tg.js\": 92527,\n\t\"./th\": 85862,\n\t\"./th.js\": 85862,\n\t\"./tk\": 79331,\n\t\"./tk.js\": 79331,\n\t\"./tl-ph\": 44387,\n\t\"./tl-ph.js\": 44387,\n\t\"./tlh\": 3592,\n\t\"./tlh.js\": 3592,\n\t\"./tr\": 79732,\n\t\"./tr.js\": 79732,\n\t\"./tzl\": 99570,\n\t\"./tzl.js\": 99570,\n\t\"./tzm\": 83553,\n\t\"./tzm-latn\": 7699,\n\t\"./tzm-latn.js\": 7699,\n\t\"./tzm.js\": 83553,\n\t\"./ug-cn\": 25674,\n\t\"./ug-cn.js\": 25674,\n\t\"./uk\": 69974,\n\t\"./uk.js\": 69974,\n\t\"./ur\": 45773,\n\t\"./ur.js\": 45773,\n\t\"./uz\": 357,\n\t\"./uz-latn\": 77135,\n\t\"./uz-latn.js\": 77135,\n\t\"./uz.js\": 357,\n\t\"./vi\": 20043,\n\t\"./vi.js\": 20043,\n\t\"./x-pseudo\": 40767,\n\t\"./x-pseudo.js\": 40767,\n\t\"./yo\": 80150,\n\t\"./yo.js\": 80150,\n\t\"./zh-cn\": 21828,\n\t\"./zh-cn.js\": 21828,\n\t\"./zh-hk\": 86644,\n\t\"./zh-hk.js\": 86644,\n\t\"./zh-mo\": 79305,\n\t\"./zh-mo.js\": 79305,\n\t\"./zh-tw\": 31860,\n\t\"./zh-tw.js\": 31860\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;"],"names":["NgModule","PreloadAllModules","RouterModule","syncGuard","profileGuard","noticeGuard","dbGuard","MsalGuard","routes","path","redirectTo","pathMatch","canActivate","loadChildren","then","m","HomePageModule","ViewHistoryPageModule","ViewNotesPageModule","AddNotesPageModule","UpdateLessonLearntPageModule","NoteDetailsPageModule","ActionImagePageModule","HierarchyPageModule","EventsPageModule","NoticePageModule","SettingsPageModule","AppRoutingModule","__decorate","imports","forRoot","preloadingStrategy","exports","Component","Inject","Platform","TranslateService","CheckVersionUpdateService","MSAL_GUARD_CONFIG","MsalBroadcastService","MsalService","Subject","filter","takeUntil","EventType","InteractionStatus","AuthService","ApplicationInsightsService","AppComponent","msalGuardConfig","platform","authService","msalBroadcastService","translate","update","auth","appInsightsService","constructor","checkForVersionUpdates","user","instance","getAllAccounts","length","setUser","name","ngOnInit","initializeApp","register","_destroying$","_checkLoginValid","msalSubject$","pipe","msg","eventType","LOGIN_SUCCESS","subscribe","result","payload","setActiveAccount","account","loginWithAD","next","complete","inProgress$","status","None","accountsMsal","ready","addLangs","setDefaultLang","lang","localStorage","getItem","use","args","selector","template","__NG_CLI_RESOURCE__0","HttpClient","HttpClientModule","HTTP_INTERCEPTORS","BrowserModule","ErrorHandler","BrowserAnimationsModule","RouteReuseStrategy","IonicModule","IonicRouteStrategy","ComponentsModule","TokenInterceptor","environment","InAppBrowser","SharedModule","MTAErrorHandler","CameraProvider","File","TranslateLoader","TranslateModule","TranslateHttpLoader","SharedPlatformProvider","MsalInterceptor","MsalModule","MsalRedirectComponent","MSAL_INSTANCE","MSAL_INTERCEPTOR_CONFIG","BrowserCacheLocation","InteractionType","LogLevel","PublicClientApplication","IonicSelectableComponent","createTranslateLoader","http","isIE","window","navigator","userAgent","indexOf","loggerCallback","logLevel","message","console","log","MSALInstanceFactory","clientId","adalConfig","authority","redirectUri","postLogoutRedirectUri","cache","cacheLocation","LocalStorage","storeAuthStateInCookie","system","allowRedirectInIframe","loggerOptions","Info","piiLoggingEnabled","MSALInterceptorConfigFactory","protectedResourceMap","Map","set","scope","interactionType","Redirect","MSALGuardConfigFactory","authRequest","scopes","loginFailedRoute","AppModule","declarations","defaultLanguage","loader","provide","useFactory","deps","providers","useClass","useappInsights","multi","bootstrap","BrandComponent","CommonModule","HierarchyCellComponent","NoteDetailComponent","HierarchyListWithnotesComponent","SelectButtonModule","LoadingComponent","BlockUIModule","NoteListComponent","FormsModule","NoNotesComponent","HierarchyComponent","NoteListCellComponent","EventFilterComponent","QuillModule","PhotoOnlyComponent","ImageViewerComponent","ButtonModule","WebcamModule","PopoverController","NavParams","popoverCtrl","archive","val","isChecked","filterChecked","navParams","data","theEmitter","applyFilter","value","emit","closePopover","dismiss","Input","Output","EventEmitter","HierarchySelectionMode","from","HierarchyEntityManagerService","Router","HierarchyDexie","router","hierarchyEntityManager","hierarchy","mode","single","hideDeleted","selectedHierarchy","expandedHierarchy","noteCount$","isDisplayed","ngOnChanges","changes","propName","chng","currentValue","updateView","ngDoCheck","expandArrow","isExpanded","getStyle","checkHierarchy","parent","undefined","isMatched","viewWithNotes","getNotesCountForHierarchy","viewHierarchyNotes","navigate","Provider","EventId","ForeignId","HierarchyHelperService","LoadingController","ProfileHelperService","hierarchyHelper","loadingController","profileService","eventId","provider","onlyActiveHierarchies","isFromSavedFilter","selectedHierarchies","selectedCategories","changedHierarchies","hierarchyObservable","flattenedHierarchyArray","treeItems","filterHierarchyList","initialHierarchyList","searchQuery","selectedHierarchyId","selectedHierarchyPath","lazyLoadingFlattenHierarchy","hList","storedHierarchyArray","JSON","parse","find","x","projectId","profile","preferredEventId","getHierarchyForEnvent","hList2","searchWbs","_this","_asyncToGenerator","forEach","element","isMatch","push","item","toFind","Name","toLowerCase","includes","Category","selectWbs","_this2","parseInt","searchItemList","_this3","loading","create","instant","present","selectHierarchy","_this4","_onSingleHierarchySelected","multiple","_onMultipleHierarchySelected","flattenedHierarchy","foundFlag","index","splice","expandHierarchy","getHierarchyPathForHierarchy","ret","cllapseChildHierarchyPath","parentHierarchy","children","childHierarchy","NoteEntityManagerService","NoteFilterAuthorType","ADALProvider","NoteCommentEntityManagerService","NoteLessonlearntEntityManagerService","NoteTagEntityManagerService","Constants","LoadingService","NoteAttachmentEntityManagerService","noteEntityManager","noteCommentEntityManager","noteLessonLearntEntityManager","noteTagEntityManager","adalService","loagingService","noteAttachmentEntityManager","noteAuthor","showEvenIfNoNotes","isCompleted","isListItemOpened","addNote","notes","sliceNotes","firstNote","notesCount","offset","showAddMoreButton","expand","collapse","pagingSize","getNotesCommentAndTagFirst","getNotesForHierarchy","res","viewNotes","getNotesCommentAndTag","hideNotes","hideNotesCommentAndTag","showMore","concat","slice","comments","getCommentsForNotes","lessonlearnts","getLessonLearntForNotes","tags","getTagsForNotes","attachments","getAttachmentsForNotes","note","Comments","comment","NoteId","Id","Lessonlearnt","lessonlearnt","Tags","tag","map","Tag","Attachments","attachment","toString","_this5","_this6","_this7","me","getUPN","error","addNotes","ModalController","modalController","id","b64","FormatedFile","get","close","loadingService","_title","title","_isVisible","isVisible","displayMessage","UserHelperService","NoteDexie","userHelper","user$","action","getUserInfo","CreatedByUPN","navigateToNoteDetails","getUser","getNoteFirstCommentForType","commentType","commentText","language","Type","Text","Observable","of","notes$","hierarchy$","other","isHierarchyObsSubscribed","getNoteForAuthor","AlertController","AttachmentHelperService","DomSanitizer","NetworkService","EventService","AttachmentDexie","db","cameraProvider","events","file","attachmentService","sanitizer","alert","modal","networkService","noteAttachmentEntityManagerService","noteId","createMode","Array","attachmentsToDelete","downloading","cameraOn","images","webcamImage","trigger","triggerSnapshot","delay","ms","Promise","resolve","setTimeout","openCamera","cssClass","handleImage","confirmImage","_openPhotoEditor","imageAsBase64","triggerObservable","asObservable","loadAttachments","getAttachmentsForNote","FileURI","blobToBase64","substring","lastIndexOf","FileName","photo","imageAsDataUrl","onFileSelected","event","files","target","type","startsWith","reader","FileReader","onload","base64","readAsDataURL","filePick","header","buttons","text","onDidDismiss","onImageClick","component","componentProps","removeImage","attachmentRepository","att","where","equals","TimeStamp","delete","IsDeleted","IsUploaded","enablebuttons","hideViewImages","attachmentLength","downloadedImagesLength","formRefreshSource$","_ref","saveImage","save","_x","apply","arguments","toPromise","setImage","_this8","Format","Date","getTime","IsDownloaded","UpdatedDate","toISOString","UpdatedByUPN","CreatedDate","contentType","getContentType","DataBlob","base64toBlob","BlobFile","err","writeFile","base64Data","_this9","filePath","dataDirectory","checkDir","saveImageBlobAndAttachmentEntity","catch","createDir","fileName","_this10","_ref4","fileEntry","nativeURL","put","_x2","downloadPictures","_this11","ping","pingServer","downloadAttachments","_ref5","attachmentsResult","_onDownloadAttachments","_x3","_this12","at","first","OfflineAttachments","toArray","block","split","_getFileExt","fileType","b64Data","sliceSize","byteCharacters","atob","byteArrays","byteNumbers","i","charCodeAt","byteArray","Uint8Array","blob","Blob","base64Img","AppError","params","details","AppBaseEntity","UserEntityManagerService","HierarchyService","NotesService","UserService","SummaryService","AppErrorType","AppPlatform","NotesViewMode","ShiftType","DurationType","NoteCommentType","Filter","hierarchyCategory","duration","shiftStartDate","ShiftStart","shiftEndDate","shiftEnd","shiftNames","createdDateFrom","createdDateTo","authorType","authors","roles","search","ifavFilter","NoteAddMode","TAProDeeplinkObject","initViewtype","eventName","site","role","hierarchyId","initViewType","MobileVersionStatus","MobileVersion","version","User","firstName","lastName","email","personalName","upn","Column","BaseEntity","obj","key","hasOwnProperty","charAt","toUpperCase","getInsertSqlForEntity","sql","columns","values","Object","keys","column","replace","getSqlValues","entities","valuesForEntities","entity","valuesForEntity","getInsertSqlForEntities","createFromObject","columnNames","helper","keyFormatted","e","propertyName","createdEntity","nullable","default","AppBaseEntityD","AttachmentObject","IdRow","FileArray","CODEDexie","codeObject","Value","EventDexie","EventObject","ForeignParentId","ForeignEntity","ForeignParentEntity","DisplayId","Sequence","IsCompleted","InstanceName","hierarchyObject","activityChecked","LessonLearntDexie","LessonLearntObject","LessonLearntComment","LessonLearned","People","Safety","Recognition","NoteObject","ParentId","ParentEntity","Role","ShiftDate","ShiftName","NoteCommentDexie","NoteCommentObject","KazakText","RussianText","NoteTagDexie","NoteTag","OBSDexie","obsObject","InstanceId","SummaryDexie","summaryObject","SummaryComment","SyncLogDexie","synclogObject","Entity","LastUploadTime","LastDownloadTime","UserDexie","userObject","Upn","Email","FirstName","LastName","AppBaseEntityManager","_instance","_entityType","Instance","isDownloadable","isUploadable","description","getAll","bulkInsert2","dexieName","entityArray","d","entityLength","entityCountLeft","entityCountToTake","Math","min","BulkSize","sub","table","bulkPut","lastKey","bulkError","bulkInsertWithQueryRunner","queryRunner","query","Injectable","CodeEntityManagerService","getCodes","c","code","saveCodes","codes","getRoles","getTags","providedIn","noteManager","and","p","f","getEnvents","saveHierarchies","hierarchies","getChildrenForHierarchy","h","sortBy","getActivitiesForHierarchy","heirarch","getChildrenForHierarchyWithSelf","isNaN","unshift","getProjectEventByEventId","hierarch","getHierarchyCategories","categories","distinct","r","Set","getFilteredHierarchybyNotes","filteredTags","getFilteredNotes","noteParentIds","uniqueHIds","itemQuery","anyOf","_evalHierarchies","sort","a","b","catStatement","join","searchTermLower","startsWithIgnoreCase","or","getHierarchyById","attach","notesIds","getAttachmentsForNotesHome","saveAttachments","attachmentToSave","deleteAttachmentsForNote","deleteAttachmentsForNotes","noteIds","deleteAttachmentsForNotesNoLongerAvailable","getCommentsForNote","noteComment","notecomment","saveComments","deleteCommentsForNote","deleteCommentsForNotes","moment","Error","noteQueryBuilder","n","reverse","getTagsForNote","count","createNote","deletelessonlearntForNote","saveLessonLearnt","tagsForNote","t","deleteTagsForNote","saveTags","saveNotes","reject","_","NoteIdArray","commentsForNote","LLforNote","attachmentForNote","deletelessonlearntForNotes","deleteTagsForNotes","filterNotes","notesQ","hasTags","tagStr","notetag","_getNotesFilterQuery","notesQuery","hierarchyIds","authorStr","author","date","getUTCFullYear","getUTCMonth","getUTCDate","setUTCHours","dateStr","tm","utcOffset","halfDay","currentDate","setHours","getHours","fullDay","getAllOfflineNotes","getOfflineNotes","getNote","getLessonLearntForNote","LL","noteComments","ObsEntityManagerService","getSites","obs","saveObs","SummaryEntityManagerService","saveSummary","summary","getSummary","summry","summaryIds","getOfflineSummary","createSummary","SynclogEntityManagerService","getLastSyncLogsForEntitiesByEnent","synclog","s","limit","createUploadSyncLogForEvent","serviceName","largestValue","syncLog","saveUsers","users","u","getUserUpnsWithNotes","HttpHeaders","HttpParams","retry","timeout","AppBaseServiceProvider","syncLogerEntityManager","entityManger","baseURL","apiEndpoint","downloadOperationName","uploadOperationName","currentVersion","getDownloadUrl","getUploadUrl","getBodyForDownload","config","project","lastUpdateDate","lastDownloadTime","getBodyForUpload","lastUploadTime","getOptions","token","headers","post","url","body","options","getItems","dateFrom","dateTo","httpParams","append","vals","helperValues","getNewVals","newVals","NaN","newVal","ud","saveItems","items","response","saveSummaryItems","getIncrementalItems","rets","CodeService","synclogEntityManager","uploadOfflineNotes","getImageBlobFile","OBSService","_http","_syncLogerEntityManager","summaryManager","uploadOfflineSummary","forkJoin","httpClient","calls","_getCalls","savedAttachments","entries","uniqueNoteId","formData","FormData","stringify","updateAttachments","deleteAttachments","imageType","changingThisBreaksApplicationSecurity","unflattenedHierarchyArray","fullFlattenedHierarchyArray","_scrollPosition","scrollPosition","reset","force","onlyActiveWBSs","parentId","currentHierarchy","currentHierarchyIndex","hierarchyArrayToUse","ele","root","filterRet1","filterRet2","ele2","activities","activity","getFlattenHierarchyArrayWithParent","buildHierarchy","flattenHierarchyHierarchy","arr","projectRoot","hirEle","getNestedChildren","out","unflattenedHierarchy","wbs","unflattenedChildHierarchyhierarchy","hirerarchyPath","getHierarchyPathStringForHierarchy","str","hierarchyPath","hir","activesOnly","fullFlattenedHierarchyArrayObservable","_onFullFlattenedHierarchyArrayResponse","_getChildIsMatched","child","Profile","IdentityServiceProvider","EventServiceProvider","ProfileServiceProvider","EventEntityManagerService","_identityService","codeService","_obsService","eventService","_profileService","eventManagerService","codeManagerService","obsManagerService","noteManagerService","summaryEntityManagerService","setItem","getProfile","updateProfile","validateProfile","_ref2","validatedProfile","saveProfile","uploadedProfile","getLocalUserInfo","usr","rolesRet","err2","finally","getOBS","OBSRet","_ref6","_x4","_ref7","_x5","sites","getEvents","obsName","EventRet","getEventsBySite","_ref8","saveEvents","_x6","_ref9","_x7","initializeProfile","preferredSOR","preferredRole","preferredOBS","preferredEvent","isAdmin","getAllOfflineSummary","userEntityManager","usersMap","isInited","buildUsers","getMyInfo","userInfo","searchUser","queryInUpperCase","filtedUsers","getUsersWithNotes","preferredEventDisplayId","preferredEquipments","preferredWBSId","createdByUPN","createdDate","updatedByUPN","updatedDate","production","appInsights","connectionString","process","env","LogonAzureAPI","AppKey","AppSecret","BaseAPI","PushNotificationHubPath","FCMSenderId","TCOInstanceId","tenant","redirectURL","resource","schemeName","aiKey","adtionalDbOptions","inject","open","NoticePage","modalCtrl","isNoticeAccepted","Boolean","noticeCtrl","backdropDismiss","showBackdrop","SyncService","catchError","concatMap","finalize","syncService","currentNavigation","getCurrentNavigation","extras","state","isSyncEnabled","syncDataForEvent","syncGuardError","throwError","switchMap","intercept","request","addAuthHeader","handle","msalLogin","clone","setHeaders","Authorization","SyncConfig","syncId","isFullSync","userId","enableProdMode","platformBrowserDynamic","bootstrapModule","host","location","hostname","serviceWorker","registration","warn","HierarchyPage","forChild","ViewChild","NavController","IonContent","ActivatedRoute","route","navController","content","queryParams","paramMap","snapshot","eId","pro","ionViewDidEnter","getScrollElement","posY","scrollToPoint","ionViewDidLeave","scrollTop","done","getTop","pop","cancel","static","alertCtrl","dismissAll","onAgreeTapped","onDontAgreeTapped","ApplicationInsights","AngularPlugin","ClickAnalyticsPlugin","angularPlugin","clickPluginInstance","clickPluginConfig","autoCapture","extensions","extensionConfig","identifier","loadAppInsights","logException","errmessage","rawerror","internalError","trackException","exception","properties","userEmail","trackEvent","setAuthenticatedUserContext","logEvent","logMetric","average","trackMetric","logPageView","trackPageView","uri","adToken","rolePrivate","getToken","adalModel","Token","logOut","saveAdToken","adModel","ExpiresOn","uid","isTokenExpired","expiresOn","now","smartLogin","getNewADModel","ApplicationRef","NgZone","interval","appRef","zone","alertController","currentTimeStampValue","versionChecksubscription","ngswPath","protocol","timestamp","getCurrentSWTimeStamp","appIsStable$","isStable","everyMinute$","everyMinuteOnceAppIsStable$","checkSWVersionUpdatesAndPrompt","showPrompt","handler","blah","reloadCurrentPage","finalizeUpgrade","reload","unregisterServiceWorkers","registrations","getRegistrations","unregister","getCaches","caches","updateSW","newVersion","fetch","json","cancelVersionCheck","unsubscribe","intDate","serverTimeStampValue","randomNumber","crypto","getRandomValues","Uint32Array","serverUrl","info","initializeUpgrade","deleteCaches","names","run","Dexie","AppDB","stores","mapToClass","clearDataFromTables","transaction","tables","clear","counter","fromEvent","merge","Subscription","networkStatus","networkStatus$","EMPTY","checkNetworkStatus","onLine","getConnection","ToastController","network","toastController","hierarchyService","noteService","userService","codeEntityManager","obsEntityManager","summaryService","summaryEntityManager","connection","syncProgress","totalSyncOperation","syncProgressStep","phase","toast","loadingElement","entityServices","sync","spinner","enableBackgroundMode","fire","prepare","initSyncProgressProperty","processData","completeProgress","disableBackgroundMode","rollbackTransaction","release","newErr","COMMON_SYNC_ERROR","MULTIPLE_PROJECTS_ASSIGNED","failedProgress","NOT_AUTHORIZED_USER","AUTHENTICATION_ERROR","createQueryRunner","startTransaction","entityService","updateProgress","doUpload","doDownload","upload","getSyncConfig","download","_ref3","SERVICE_ERROR","floor","showLoadingMsg","showToastMsg","toastMsg","innerHTML","position","NETWORK_ERROR","syncHierarchyForEvent","syncNotesForEvent","syncUser","syncCodes","syncOBS","syncSummmaryForEvent","String","isUploadRequired","_this13","_this14","_this15","obss","_this16","LoadingControllerHandler","loadingControllerHandler","handleError","dismissAllLoaders","presentAlert","subject","errorStack","stack","ADALModel","ADObject","_msalService","model","_upn","_init","activeAccount","getActiveAccount","accessTokenRequest","acquireTokenSilent","accessToken","username","loginRedirect","adalLogout","logoutPopup","mainWindowRedirectUri","clearTokenCache2","logout","AppStorageProvider","getKey","SecureStorageKey","GetLocal","fromSecure","SetLocal","toSecure","Clear","clearSecure","AppName","SyncProgress","Database","UnHandled","Login","uploadError","httpError","SyncError","generalError","DBName","DBVersion","workOrderPagingNumber","CommentTagTypes","formRefreshAnnouncedSource","publishFormRefresh","style","_loadingController","_alertController","createLoading","errorId","subHeader","_isMobile","_isWindows","checkIsMobile","isMobiledevice","test","isMobile","os","imageToEdit","image","getImage","takePictureNormal","saveToAlbum","takePicture","cameraOutput"],"sourceRoot":"webpack:///","x_google_ignoreList":[93,94,109]}