{"version":3,"file":"main.js","mappings":"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b,OAAOD,OAAO,EAAE;EACnB;CACF;AAJYjE,SAAS,GAAAnwC,UAAA,EAHrBgsB,yDAAU,CAAC;EACTS,UAAU,EAAE;CACd,CAAC,GACW0jB,SAAS,CAIrB;;;;;;;;;;;ACdD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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,iCAAiC,mBAAmB,4BAA4B,yBAAyB,oBAAoB,GAAG,oCAAoC,+CAA+C,uBAAuB,kCAAkC,iCAAiC,mBAAmB,yCAAyC,yBAAyB,oBAAoB,GAAG,0BAA0B,mBAAmB,gBAAgB,uBAAuB,GAAG,4BAA4B,mBAAmB,iCAAiC,qBAAqB,GAAG,uBAAuB,wBAAwB,gBAAgB,qCAAqC,GAAG,4BAA4B,oCAAoC,qBAAqB,cAAc,uBAAuB,aAAa,cAAc,yCAAyC,qCAAqC,GAAG,mBAAmB;AACrsD;AACA;;;;;;;;;;;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;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC,OAAO,wHAAwH,UAAU,MAAM,KAAK,UAAU,UAAU,WAAW,MAAM,KAAK,UAAU,WAAW,UAAU,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,UAAU,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,WAAW,UAAU,WAAW,WAAW,MAAM,KAAK,WAAW,WAAW,WAAW,MAAM,KAAK,UAAU,WAAW,UAAU,WAAW,WAAW,MAAM,KAAK,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,UAAU,MAAM,KAAK,UAAU,MAAM,KAAK,WAAW,WAAW,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,MAAM,KAAK,WAAW,UAAU,MAAM,KAAK,UAAU,MAAM,KAAK,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,MAAM,KAAK,UAAU,MAAM,KAAK,UAAU,UAAU,WAAW,MAAM,KAAK,UAAU,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,UAAU,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,WAAW,WAAW,WAAW,MAAM,KAAK,WAAW,MAAM,KAAK,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,MAAM,MAAM,WAAW,WAAW,WAAW,WAAW,MAAM,MAAM,UAAU,WAAW,WAAW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;;;;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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.prod1.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/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/analytics/analytics.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","./src/shared/window-ref.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';\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 ) {this.update.checkForVersionUpdates();}\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';\n\nimport { IonicModule, IonicRouteStrategy } from '@ionic/angular';\n\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 { AnalyticsProvider } from 'src/shared/analytics/analytics';\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';\n\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 AnalyticsProvider,\n CameraProvider, \n File,\n { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },\n { provide: ErrorHandler, useClass: MTAErrorHandler }, \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","export const environment = {\n production: true,\n apiEndpoint: 'https://turnovernotes-api-prod-dr-cvx.azurewebsites.net/api',\n LogonAzureAPI:\n 'https://100017272.auth.konycloud.com/login?provider=FWETurnaroundDev',\n AppKey: 'https://tonote-p101-cvx.vault.azure.net/secrets/ToNotesWebAppKey/e9db8c9b318e469089fcbc4551944b86',\n AppSecret: 'https://tonote-p101-cvx.vault.azure.net/secrets/ToNotesWebAppSecret/2a23b57210cf4d58b8415539a91be268',\n BaseAPI: 'https://chevronupstream-dev1.konycloud.com/services',\n PushNotificationHubPath: 'mobileturnaround-nh-prod-cvx',\n PushNonnectionString:\n 'https://tonote-p101-cvx.vault.azure.net/secrets/ToNotesWebPushConnectionString/2101e854a6e445c3a17c962e9384f2fe',\n FCMSenderId: '380548788333',\n TCOInstanceId: ['2'],\n\n adalConfig: {\n tenant: 'chevron.onmicrosoft.com',\n clientId: 'b3deed1f-ba7b-4bf6-a5db-7b3163ad2704',\n // redirectURL: 'x-msauth-tonotes://com.chevron.tonotes',\n redirectURL: 'https://tonotesweb-prod-dr-cvx.azurewebsites.net/',\n resource: 'https://graph.windows.net',\n authority: 'https://login.windows.net/chevron.onmicrosoft.com'\n },\n scope: 'https://turnovernotes.azure.chevron.com/user_impersonation',\n schemeName: 'com.chevron.turnaroundprogress://',\n aiKey: 'b9262cc7-1178-4cdc-a414-b75ac9aa9a92',\n adtionalDbOptions: false\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 { 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 { AnalyticsProvider } from './analytics/analytics';\n\n@Injectable({ providedIn: 'root' })\nexport class MTAErrorHandler implements ErrorHandler {\n constructor(private loadingControllerHandler: LoadingControllerHandler, private analytics: AnalyticsProvider) { }\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\n const internalError = {\n subject: 'TO Notes Logs',\n body: error.message,\n date: new Date().toString(),\n errorStack: error.stack\n };\n this.analytics.error('general-error', 'Internal exception', internalError);\n\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 { WindowRef } from '../../shared/window-ref';\nimport { AppStorageProvider } from '../appStorage/app-storage';\nimport { ApplicationInsights } from '@microsoft/applicationinsights-web';\nimport { environment } from 'src/environments/environment';\nimport { AlertController, Platform } from '@ionic/angular';\nimport { LogLevel } from 'src/data/InternalTypes';\n\n@Injectable()\nexport class AnalyticsProvider {\n private logLevel: LogLevel;\n private eventTrackFailure = false;\n private appInsights: ApplicationInsights;\n\n constructor(\n private platform: Platform,\n private window: WindowRef,\n private alertCtrl: AlertController,\n private storage: AppStorageProvider,\n ) {\n this.platform.ready().then(async () => {\n const log = (await this.storage.GetLocal('logLevel')) as string;\n if (log) {\n this.logLevel = LogLevel[log];\n } else {\n this.storage.SetLocal('logLevel', LogLevel.Error);\n this.logLevel = LogLevel.Error; // defaults log to error\n } \n });\n }\n\n private loadAppInsights() {\n this.appInsights = new ApplicationInsights({\n config: {\n instrumentationKey: environment.aiKey,\n url: 'assets/ApplicationInsightSDK/ai.js',\n disableAjaxTracking: true\n }\n });\n this.appInsights.loadAppInsights();\n }\n\n setLogLevel(level: LogLevel) {\n this.logLevel = level;\n }\n\n getLogLevel() {\n return this.logLevel;\n }\n\n trace(event: string, message: string, params?: any) {\n if (this.canLog(LogLevel.Trace)) {\n if (!params) params = {};\n const list: any = Object.assign(\n {\n LogLevel: LogLevel.Trace,\n message\n },\n params\n );\n this.trackEvent(event, list);\n }\n }\n\n info(event: string, message: string, params?: any) {\n if (this.canLog(LogLevel.Info)) {\n if (!params) params = {};\n const list: any = Object.assign(\n {\n LogLevel: LogLevel.Info,\n message\n },\n params\n );\n this.trackEvent(event, list);\n }\n }\n\n warn(event: string, message: string, params?: any) {\n if (this.canLog(LogLevel.Warn)) {\n if (!params) params = {};\n const list: any = Object.assign(\n {\n LogLevel: LogLevel.Warn,\n message\n },\n params\n );\n this.trackEvent(event, list);\n }\n }\n\n error(event: string, message: string, params?: any) {\n if (this.canLog(LogLevel.Error)) {\n if (!params) params = {};\n const list: any = Object.assign({\n LogLevel: LogLevel.Error,\n message\n },\n params\n );\n this.trackEvent(event, list);\n }\n }\n\n private canLog(level: LogLevel) {\n switch (this.logLevel) {\n case LogLevel.Trace:\n return true;\n case LogLevel.Info:\n if (level !== LogLevel.Trace) {\n return true;\n }\n return false;\n case LogLevel.Warn:\n if (level !== LogLevel.Trace && level !== LogLevel.Info) {\n return true;\n }\n return false;\n case LogLevel.Error:\n if (level === LogLevel.Error) {\n return true;\n }\n return false;\n }\n }\n\n private trackEvent(event: string, params: any) { \n params['Platform'] = 'windows';\n this.appInsights.trackEvent({\n name: event,\n properties: {\n Properties: this.getString(params) // Doing this since Appcenter following this standard.\n }\n }); \n }\n\n private getString(params: any): string {\n const cache = [];\n return JSON.stringify(params, (key, value) => {\n if (typeof value === 'object' && value !== null) {\n if (cache.indexOf(value) !== -1) {\n // Duplicate reference found, discard key\n return;\n }\n // Store value in our collection\n cache.push(value);\n }\n return value;\n });\n }\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","import { Injectable } from '@angular/core';\n\nfunction _window(): any {\n // return the global native browser window object\n return window;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class WindowRef {\n get nativeWindow(): any {\n return _window();\n }\n}\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","AppComponent","msalGuardConfig","platform","authService","msalBroadcastService","translate","update","auth","constructor","checkForVersionUpdates","ngOnInit","initializeApp","register","_destroying$","_checkLoginValid","msalSubject$","pipe","msg","eventType","LOGIN_SUCCESS","subscribe","result","payload","instance","setActiveAccount","account","loginWithAD","next","complete","inProgress$","status","None","accountsMsal","getAllAccounts","length","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","AnalyticsProvider","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","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","user","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","name","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","LogonAzureAPI","AppKey","AppSecret","BaseAPI","PushNotificationHubPath","PushNonnectionString","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","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","analytics","handleError","dismissAllLoaders","presentAlert","internalError","subject","errorStack","stack","ADALModel","ADObject","_msalService","model","_upn","_init","activeAccount","getActiveAccount","accessTokenRequest","acquireTokenSilent","accessToken","username","loginRedirect","adalLogout","logoutPopup","mainWindowRedirectUri","clearTokenCache2","logout","WindowRef","AppStorageProvider","ApplicationInsights","storage","eventTrackFailure","appInsights","GetLocal","SetLocal","loadAppInsights","instrumentationKey","disableAjaxTracking","setLogLevel","level","getLogLevel","trace","canLog","Trace","list","assign","trackEvent","Warn","properties","Properties","getString","getKey","SecureStorageKey","fromSecure","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","_window","nativeWindow"],"sourceRoot":"webpack:///","x_google_ignoreList":[94,95,110]}