@mis-wis/common 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/create-non-shift-modal/create-non-shift-modal.component.mjs +233 -0
- package/esm2020/lib/constants/assets.constants.mjs +8 -0
- package/esm2020/lib/models/configurations.model.mjs +1 -1
- package/esm2020/lib/models/env.model.mjs +1 -1
- package/esm2020/lib/models/session.model.mjs +2 -0
- package/esm2020/lib/services/http.service.mjs +29 -9
- package/esm2020/lib/services/mfe-communication.service.mjs +7 -1
- package/esm2020/lib/services/session.errors.mjs +28 -0
- package/esm2020/lib/services/session.service.mjs +148 -0
- package/esm2020/lib/wis-common.module.mjs +13 -8
- package/esm2020/public-api.mjs +5 -1
- package/fesm2015/mis-wis-common.mjs +465 -25
- package/fesm2015/mis-wis-common.mjs.map +1 -1
- package/fesm2020/mis-wis-common.mjs +457 -25
- package/fesm2020/mis-wis-common.mjs.map +1 -1
- package/lib/components/create-non-shift-modal/create-non-shift-modal.component.d.ts +56 -0
- package/lib/constants/assets.constants.d.ts +7 -0
- package/lib/models/configurations.model.d.ts +8 -0
- package/lib/models/env.model.d.ts +1 -0
- package/lib/models/session.model.d.ts +21 -0
- package/lib/services/http.service.d.ts +16 -5
- package/lib/services/mfe-communication.service.d.ts +3 -0
- package/lib/services/session.errors.d.ts +15 -0
- package/lib/services/session.service.d.ts +49 -0
- package/lib/wis-common.module.d.ts +9 -4
- package/mis-wis-common-0.2.0.tgz +0 -0
- package/package.json +3 -2
- package/public-api.d.ts +4 -0
- package/src/assets/calendar.svg +7 -0
- package/src/assets/images/icons/Wis-icon.svg +4 -0
- package/src/assets/images/icons/brand.png +0 -0
- package/src/assets/images/icons/broascast.svg +3 -0
- package/src/assets/images/icons/bulk-upload.svg +3 -0
- package/src/assets/images/icons/desk-mgmt.svg +6 -0
- package/src/assets/images/icons/employees-sidebar.svg +3 -0
- package/src/assets/images/icons/help-section.svg +4 -0
- package/src/assets/images/icons/home.svg +3 -0
- package/src/assets/images/icons/logout.svg +4 -0
- package/src/assets/images/icons/manage-premise.svg +3 -0
- package/src/assets/images/icons/meeting-room.svg +7 -0
- package/src/assets/images/icons/mis-icon.svg +3 -0
- package/src/assets/images/icons/my-bookings.svg +5 -0
- package/src/assets/images/icons/profile.svg +3 -0
- package/src/assets/images/icons/reception.svg +14 -0
- package/src/assets/images/icons/report.svg +3 -0
- package/src/assets/images/icons/resource-group.svg +3 -0
- package/src/assets/images/icons/roles.svg +3 -0
- package/src/assets/images/icons/sanitize.svg +10 -0
- package/src/assets/images/icons/seat-mgmt.svg +3 -0
- package/src/assets/images/icons/settings-sidebar.svg +3 -0
- package/src/assets/images/icons/signout.svg +4 -0
- package/src/assets/images/icons/user-group.svg +6 -0
- package/src/assets/images/icons/user-permission.svg +5 -0
- package/src/assets/images/icons/utilisation.svg +3 -0
- package/src/assets/images/icons/vaccine_approval.svg +8 -0
- package/src/assets/images/icons/vaccine_upload.png +0 -0
- package/src/assets/images/icons/work-planner-sidebar.svg +3 -0
- package/src/assets/images/icons/workInSyncText.svg +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mis-wis-common.mjs","sources":["../../../libraries/wis-common/src/lib/modules/auth/auth.service.ts","../../../libraries/wis-common/src/lib/modules/auth/auth.module.ts","../../../libraries/wis-common/src/lib/services/configuration.service.ts","../../../libraries/wis-common/src/lib/functions/nav-filter.function.ts","../../../libraries/wis-common/src/lib/functions/cookie.function.ts","../../../libraries/wis-common/src/lib/functions/url.functions.ts","../../../libraries/wis-common/src/lib/interceptors/auth.interceptor.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.html","../../../libraries/wis-common/src/lib/services/loader.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.constant.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.functions.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.module.ts","../../../libraries/wis-common/src/lib/constants/emp-web-exp.constants.ts","../../../libraries/wis-common/src/lib/services/http.service.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.html","../../../libraries/wis-common/src/lib/wis-common.module.ts","../../../libraries/wis-common/src/lib/services/mfe-communication.service.ts","../../../libraries/wis-common/src/public-api.ts","../../../libraries/wis-common/src/mis-wis-common.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\nimport { IUserInfo } from \"./auth.model\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class AuthService {\n userDetails: IUserInfo;\n\n constructor() {}\n\n init(user: IUserInfo) {\n this.userDetails = user;\n }\n}\n","import { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { AuthService } from \"./auth.service\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class AuthModule {\n /**\n *\n * @returns ModuleWithProviders<AuthModule>\n */\n static forRoot(): ModuleWithProviders<AuthModule> {\n return {\n ngModule: AuthModule,\n providers: [AuthService]\n };\n }\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ConfigurationService {\n constructor() {}\n}\n","import { NsWISConfigurations } from \"../models/configurations.model\";\n\nexport const filterNavList = (\n navList: NsWISConfigurations.ISidenavLink[],\n features: NsWISConfigurations.IFeaturesMap\n): NsWISConfigurations.ISidenavLink[] => {\n return navList.filter(nav => {\n const mustHave = nav.mustHaveBasedProperty && nav.mustHaveBasedProperty.every(basedProperty => features[basedProperty]);\n const canHave = nav.canHaveBasedProperty && nav.canHaveBasedProperty.some(basedProperty => features[basedProperty]);\n if ((mustHave || canHave) && nav.children) {\n nav.children = filterNavList(nav.children, features);\n }\n return mustHave || canHave;\n });\n};\n","interface ICookieOptions {\n expires?: string;\n path?: string;\n domain?: string;\n \"Max-Age\"?: string;\n Secure?: boolean;\n HttpOnly?: boolean;\n SameSite?: \"Strict\" | \"Lax\" | \"None\";\n}\n\nexport function getCookie(name: string): string {\n const cookies = {};\n const cookieString = document.cookie;\n cookieString.split(\"; \").forEach(cookie => {\n const [key, value] = cookie.split(\"=\");\n cookies[key] = value;\n });\n return cookies[name] || undefined;\n}\n\nexport function setCookie(name: string, value: string, options?: ICookieOptions): void {\n let cookieStr = `${name}=${value};`;\n if (options) {\n const optsSelected = Object.keys(options);\n for (const opt of optsSelected) {\n cookieStr += ` ${opt}${(typeof options[opt] === \"string\" && `=${options[opt]}`) || \"\"};`;\n }\n }\n cookieStr += \";secure; SameSite=Strict;\";\n document.cookie = cookieStr;\n}\n\nexport function removeCookie(name: string, domain?: string): void {\n setCookie(name, \"\", { expires: new Date(0).toUTCString(), domain });\n}\n","export function getQueryParam(queryString: string): string | null {\n const results = new RegExp(\"[?&]\" + queryString + \"=([^&#]*)\").exec(window.location.href);\n if (results === null) {\n return null;\n } else {\n return decodeURIComponent(results[1]) || null;\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest } from \"@angular/common/http\";\nimport { tap } from \"rxjs/operators\";\nimport { ToastService } from \"mis-crystal-design-system/toast\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { getCookie } from \"../functions/cookie.function\";\nimport { getQueryParam } from \"../functions/url.functions\";\n\nconst TOKEN_NAME = \"x-wis-token\";\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n constructor(private route: ActivatedRoute, private toast: ToastService) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler) {\n const paramsMap = this.route.snapshot.queryParamMap;\n const buid = getQueryParam(\"buid\") || getQueryParam(\"buId\") || \"\";\n const empGuid = getQueryParam(\"empGuid\") || getQueryParam(\"empGuId\") || getQueryParam(\"userId\") || \"\";\n // const source = getQueryParam(\"source\");\n const authToken = getQueryParam(\"auth-token\");\n const token = getCookie(`sso-wis-token-${buid}`);\n const mobile_app_token = getCookie(TOKEN_NAME);\n const cloneReq = request.clone({\n setHeaders: {\n \"x-tenant-id\": buid,\n \"x-user-id\": empGuid,\n ...(!!token && { [TOKEN_NAME]: token }),\n ...(!!authToken && { [TOKEN_NAME]: authToken }),\n ...(!!mobile_app_token && { [TOKEN_NAME]: mobile_app_token })\n }\n });\n return next.handle(cloneReq).pipe(\n tap(\n () => {},\n err => {\n if (err instanceof HttpErrorResponse && err.status === 401) {\n this.toast.displayMsg(\"Your session has expired. Please login again.\",6000);\n }\n }\n )\n );\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"mis-common-loader\",\n templateUrl: \"./loader.component.html\",\n styleUrls: [\"./loader.component.scss\"]\n})\nexport class LoaderComponent implements OnInit {\n message: string;\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"message-wrapper\" *ngIf=\"message; else noMessageLoader\">\n <span><mis-loader type=\"block\"></mis-loader></span>\n <p>{{ message }}</p>\n</div>\n<ng-template #noMessageLoader>\n <mis-loader></mis-loader>\n</ng-template>\n","/** @format */\n\nimport { GlobalPositionStrategy, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { Injectable } from \"@angular/core\";\nimport { LoaderComponent } from \"../components/loader/loader.component\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoaderService {\n private overlayRef: OverlayRef;\n public loading = false;\n\n constructor(private overlay: Overlay) {}\n\n show(message?: string): void {\n this.loading = true;\n if (this.overlayRef?.hasAttached()) {\n return;\n }\n const { positionStrategy, width, backdropClass, hasMessage } = this.calcLoaderProperties(!!message);\n const config = new OverlayConfig({\n hasBackdrop: true,\n positionStrategy,\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n width,\n backdropClass\n });\n this.overlayRef = this.overlay.create(config);\n const portal = new ComponentPortal(LoaderComponent, null);\n const componentRef = this.overlayRef.attach(portal);\n if (hasMessage) {\n componentRef.instance.message = message;\n }\n }\n\n hide(): void {\n this.loading = false;\n this.overlayRef?.detach();\n this.overlayRef?.dispose();\n }\n\n private calcLoaderProperties(hasMessage: boolean): {\n positionStrategy: GlobalPositionStrategy;\n width: string;\n backdropClass: string;\n hasMessage: boolean;\n } {\n const positionStrategy = this.overlay.position().global();\n let width = \"100vh\";\n let backdropClass = \"cdk-overlay-transparent-backdrop\";\n if (hasMessage) {\n width = \"initial\";\n backdropClass = \"wis-common-loader-bg\";\n positionStrategy.centerHorizontally().centerVertically();\n } else {\n positionStrategy.top(\"0px\").right(\"0px\");\n }\n return { positionStrategy, width, backdropClass, hasMessage };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_LOGGER = {\n APP_NAME: \"wisLoggerApp\",\n ENV_VAR: \"wisLoggerEnv\"\n};\n","import { TEnvName } from \"./logger.model\";\nconst envMap = {\n dev: \"https://bff.devcl.moveinsync.com\",\n qa: \"https://bff.stage.moveinsync.com\",\n production: \"https://bff.moveinsync.com\",\n uat: \"https://wisbff-uat.moveinsync.com\",\n \"production-green\": \"https://wisempweb-green.moveinsync.com\",\n \"production-beta\": \"https://bff-beta.moveinsync.com\",\n \"production-eu\": \"https://bff.eu.moveinsync.com\",\n \"production-eu-green\": \"https://bff-green.eu.moveinsync.com\",\n \"production-mu\": \"https://bff.moveinsync.in\"\n};\nexport function environmentHandler(env: TEnvName) {\n if (!env) {\n return \"/bff\";\n }\n return envMap[env];\n}\n","import { TEnvName } from \"./logger.model\";\nimport { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { environmentHandler } from \"./logger.functions\";\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoggerService {\n private cookies: boolean = false;\n\n constructor(\n private http: HttpClient,\n @Inject(CONSTANTS_LOGGER.APP_NAME) private appName: string,\n @Inject(CONSTANTS_LOGGER.ENV_VAR) private appEnv: TEnvName\n ) {}\n\n useCookies(useCookies: boolean) {\n this.cookies = useCookies;\n }\n\n private logRequest(data: any, logLevel: \"info\" | \"error\" | \"warn\") {\n const request = {\n data,\n cookies: this.cookies ? document.cookie : undefined,\n logLevel\n };\n this.postLog(request);\n }\n\n private postLog(request) {\n const url = `${environmentHandler(this.appEnv)}/report-log/${this.appName}`;\n this.http.post(`${url}`, request).subscribe();\n }\n\n info(data: any) {\n this.logRequest(data, \"info\");\n }\n\n warn(data: any) {\n this.logRequest(data, \"warn\");\n }\n\n error(data: any, componentName: string, serviceUrl?: string) {\n this.logRequest({ ...data, componentName, serviceUrl }, \"error\");\n }\n}\n","import { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { LoggerService } from \"./logger.service\";\nimport { TEnvName } from \"./logger.model\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class LoggerModule {\n /**\n *\n * @param appName any app name eg. FAQ, Floor Plan, In App Popup, etc.\n * @param env \"dev\" | \"qa\" | \"uat\" | \"prod\" | \"prod-beta\" | \"prod-green\" | \"prod-eu\" | \"prod-eu-green\" | undefined\n * @returns ModuleWithProviders<LoggerModule>\n */\n static forChild(appName: string, env?: TEnvName): ModuleWithProviders<LoggerModule> {\n return {\n ngModule: LoggerModule,\n providers: [\n {\n provide: CONSTANTS_LOGGER.APP_NAME,\n useValue: appName\n },\n {\n provide: CONSTANTS_LOGGER.ENV_VAR,\n useValue: env\n },\n LoggerService\n ]\n };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_WIS_COMMON = {\n ENV_VAR: \"wisCommonEnvironment\"\n};\n","import { HttpClient } from \"@angular/common/http\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { Observable } from \"rxjs\";\nimport { CONSTANTS_WIS_COMMON } from \"../constants/emp-web-exp.constants\";\nimport { NsWISConfigurations } from \"../models/configurations.model\";\nimport { NsWISCommon } from \"../models/env.model\";\nimport { AuthService } from \"../modules/auth/auth.service\";\n\nconst API_URLS = {\n CONFIGURATIONS: \"configurations\"\n};\n\n@Injectable()\nexport class HttpService {\n constructor(@Inject(CONSTANTS_WIS_COMMON) public env: NsWISCommon.IEnv, private auth: AuthService, private http: HttpClient) {}\n\n getConfigurations(): Observable<NsWISConfigurations.IConfigurations> {\n return this.http.get<NsWISConfigurations.IConfigurations>(`${this.env.empExp}/${this.auth.userDetails.buid}/${API_URLS.CONFIGURATIONS}`);\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"wis-common-sidenav\",\n templateUrl: \"./sidenav.component.html\",\n styleUrls: [\"./sidenav.component.scss\"]\n})\nexport class SidenavComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"wis-sidenav-wrapper\">\n <div class=\"wis-sidenav-header\">\n <div class=\"wis-sidenav-header-logo\">\n <img src=\"assets/sidenav/assets/Wis-icon.svg\" alt=\"\" />\n </div>\n <div class=\"wis-sidenav-header-title\">\n <h1>WIS</h1>\n </div>\n </div>\n <div class=\"wis-sidenav-body\">\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-home\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Home</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-user\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Profile</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-users\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Users</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-cog\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Settings</h3>\n </div>\n </div>\n </div>\n</div>\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { ConfigurationService } from \"./services/configuration.service\";\nimport { NsWISCommon } from \"./models/env.model\";\nimport { CONSTANTS_WIS_COMMON } from \"./constants/emp-web-exp.constants\";\nimport { HttpService } from \"./services/http.service\";\nimport { LoaderModule } from \"mis-crystal-design-system/loader\";\nimport { LoaderComponent } from \"./components/loader/loader.component\";\nimport { LoaderService } from \"./services/loader.service\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { SidenavComponent } from \"./components/sidenav/sidenav.component\";\n\n@NgModule({\n declarations: [LoaderComponent, SidenavComponent],\n imports: [CommonModule, OverlayModule, LoaderModule],\n providers: [HttpService],\n exports: [SidenavComponent]\n})\nexport class WisCommonModule {\n static forRoot(env: NsWISCommon.IEnv): ModuleWithProviders<WisCommonModule> {\n return {\n ngModule: WisCommonModule,\n providers: [{ provide: CONSTANTS_WIS_COMMON, useValue: env }, ConfigurationService, LoaderService]\n };\n }\n}\n","import { ReplaySubject } from 'rxjs';\nimport { Injectable } from '@angular/core';\nimport { NsWISConfigurations } from \"../models/configurations.model\";\n@Injectable({\n providedIn: 'root'\n})\nexport class MfeCommunicationService {\n constructor() { }\n loginDetails = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n employeeExperience = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n floorPlan = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n meetingRooms = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n adminUI = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n paymentsDetails = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1); \n visitorMgmt = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n}\n","/*\n * Public API Surface of wis-common\n */\n\nexport * from \"./lib/modules/auth/auth.service\";\nexport * from \"./lib/modules/auth/auth.module\";\nexport * from \"./lib/services/configuration.service\";\nexport * from \"./lib/models/configurations.model\";\nexport * from \"./lib/functions/nav-filter.function\";\nexport * from \"./lib/functions/cookie.function\";\nexport * from \"./lib/functions/url.functions\";\nexport * from \"./lib/interceptors/auth.interceptor\";\nexport * from \"./lib/services/loader.service\";\nexport * from \"./lib/modules/logger/logger.module\";\nexport * from \"./lib/modules/logger/logger.service\";\nexport * from \"./lib/wis-common.module\";\nexport * from \"./lib/modules/logger/logger.model\";\nexport * from \"./lib/components/sidenav/sidenav.component\";\nexport * from \"./lib/services/mfe-communication.service\";\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i1.AuthService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mis-wis-common.mjs","sources":["../../../libraries/wis-common/src/lib/modules/auth/auth.service.ts","../../../libraries/wis-common/src/lib/modules/auth/auth.module.ts","../../../libraries/wis-common/src/lib/services/configuration.service.ts","../../../libraries/wis-common/src/lib/functions/nav-filter.function.ts","../../../libraries/wis-common/src/lib/functions/cookie.function.ts","../../../libraries/wis-common/src/lib/functions/url.functions.ts","../../../libraries/wis-common/src/lib/interceptors/auth.interceptor.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.ts","../../../libraries/wis-common/src/lib/components/loader/loader.component.html","../../../libraries/wis-common/src/lib/services/loader.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.constant.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.functions.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.service.ts","../../../libraries/wis-common/src/lib/modules/logger/logger.module.ts","../../../libraries/wis-common/src/lib/constants/emp-web-exp.constants.ts","../../../libraries/wis-common/src/lib/services/http.service.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.ts","../../../libraries/wis-common/src/lib/components/sidenav/sidenav.component.html","../../../libraries/wis-common/src/lib/constants/assets.constants.ts","../../../libraries/wis-common/src/lib/components/create-non-shift-modal/create-non-shift-modal.component.ts","../../../libraries/wis-common/src/lib/components/create-non-shift-modal/create-non-shift-modal.component.html","../../../libraries/wis-common/src/lib/wis-common.module.ts","../../../libraries/wis-common/src/lib/services/mfe-communication.service.ts","../../../libraries/wis-common/src/lib/services/session.errors.ts","../../../libraries/wis-common/src/lib/services/session.service.ts","../../../libraries/wis-common/src/public-api.ts","../../../libraries/wis-common/src/mis-wis-common.ts"],"sourcesContent":["import { Inject, Injectable } from \"@angular/core\";\nimport { IUserInfo } from \"./auth.model\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class AuthService {\n userDetails: IUserInfo;\n\n constructor() {}\n\n init(user: IUserInfo) {\n this.userDetails = user;\n }\n}\n","import { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { AuthService } from \"./auth.service\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class AuthModule {\n /**\n *\n * @returns ModuleWithProviders<AuthModule>\n */\n static forRoot(): ModuleWithProviders<AuthModule> {\n return {\n ngModule: AuthModule,\n providers: [AuthService]\n };\n }\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ConfigurationService {\n constructor() {}\n}\n","import { NsWISConfigurations } from \"../models/configurations.model\";\n\nexport const filterNavList = (\n navList: NsWISConfigurations.ISidenavLink[],\n features: NsWISConfigurations.IFeaturesMap\n): NsWISConfigurations.ISidenavLink[] => {\n return navList.filter(nav => {\n const mustHave = nav.mustHaveBasedProperty && nav.mustHaveBasedProperty.every(basedProperty => features[basedProperty]);\n const canHave = nav.canHaveBasedProperty && nav.canHaveBasedProperty.some(basedProperty => features[basedProperty]);\n if ((mustHave || canHave) && nav.children) {\n nav.children = filterNavList(nav.children, features);\n }\n return mustHave || canHave;\n });\n};\n","interface ICookieOptions {\n expires?: string;\n path?: string;\n domain?: string;\n \"Max-Age\"?: string;\n Secure?: boolean;\n HttpOnly?: boolean;\n SameSite?: \"Strict\" | \"Lax\" | \"None\";\n}\n\nexport function getCookie(name: string): string {\n const cookies = {};\n const cookieString = document.cookie;\n cookieString.split(\"; \").forEach(cookie => {\n const [key, value] = cookie.split(\"=\");\n cookies[key] = value;\n });\n return cookies[name] || undefined;\n}\n\nexport function setCookie(name: string, value: string, options?: ICookieOptions): void {\n let cookieStr = `${name}=${value};`;\n if (options) {\n const optsSelected = Object.keys(options);\n for (const opt of optsSelected) {\n cookieStr += ` ${opt}${(typeof options[opt] === \"string\" && `=${options[opt]}`) || \"\"};`;\n }\n }\n cookieStr += \";secure; SameSite=Strict;\";\n document.cookie = cookieStr;\n}\n\nexport function removeCookie(name: string, domain?: string): void {\n setCookie(name, \"\", { expires: new Date(0).toUTCString(), domain });\n}\n","export function getQueryParam(queryString: string): string | null {\n const results = new RegExp(\"[?&]\" + queryString + \"=([^&#]*)\").exec(window.location.href);\n if (results === null) {\n return null;\n } else {\n return decodeURIComponent(results[1]) || null;\n }\n}\n","import { Injectable } from \"@angular/core\";\nimport { HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest } from \"@angular/common/http\";\nimport { tap } from \"rxjs/operators\";\nimport { ToastService } from \"mis-crystal-design-system/toast\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { getCookie } from \"../functions/cookie.function\";\nimport { getQueryParam } from \"../functions/url.functions\";\n\nconst TOKEN_NAME = \"x-wis-token\";\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n constructor(private route: ActivatedRoute, private toast: ToastService) {}\n\n intercept(request: HttpRequest<any>, next: HttpHandler) {\n const paramsMap = this.route.snapshot.queryParamMap;\n const buid = getQueryParam(\"buid\") || getQueryParam(\"buId\") || \"\";\n const empGuid = getQueryParam(\"empGuid\") || getQueryParam(\"empGuId\") || getQueryParam(\"userId\") || \"\";\n // const source = getQueryParam(\"source\");\n const authToken = getQueryParam(\"auth-token\");\n const token = getCookie(`sso-wis-token-${buid}`);\n const mobile_app_token = getCookie(TOKEN_NAME);\n const cloneReq = request.clone({\n setHeaders: {\n \"x-tenant-id\": buid,\n \"x-user-id\": empGuid,\n ...(!!token && { [TOKEN_NAME]: token }),\n ...(!!authToken && { [TOKEN_NAME]: authToken }),\n ...(!!mobile_app_token && { [TOKEN_NAME]: mobile_app_token })\n }\n });\n return next.handle(cloneReq).pipe(\n tap(\n () => {},\n err => {\n if (err instanceof HttpErrorResponse && err.status === 401) {\n this.toast.displayMsg(\"Your session has expired. Please login again.\",6000);\n }\n }\n )\n );\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"mis-common-loader\",\n templateUrl: \"./loader.component.html\",\n styleUrls: [\"./loader.component.scss\"]\n})\nexport class LoaderComponent implements OnInit {\n message: string;\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"message-wrapper\" *ngIf=\"message; else noMessageLoader\">\n <span><mis-loader type=\"block\"></mis-loader></span>\n <p>{{ message }}</p>\n</div>\n<ng-template #noMessageLoader>\n <mis-loader></mis-loader>\n</ng-template>\n","/** @format */\n\nimport { GlobalPositionStrategy, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { Injectable } from \"@angular/core\";\nimport { LoaderComponent } from \"../components/loader/loader.component\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoaderService {\n private overlayRef: OverlayRef;\n public loading = false;\n\n constructor(private overlay: Overlay) {}\n\n show(message?: string): void {\n this.loading = true;\n if (this.overlayRef?.hasAttached()) {\n return;\n }\n const { positionStrategy, width, backdropClass, hasMessage } = this.calcLoaderProperties(!!message);\n const config = new OverlayConfig({\n hasBackdrop: true,\n positionStrategy,\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n width,\n backdropClass\n });\n this.overlayRef = this.overlay.create(config);\n const portal = new ComponentPortal(LoaderComponent, null);\n const componentRef = this.overlayRef.attach(portal);\n if (hasMessage) {\n componentRef.instance.message = message;\n }\n }\n\n hide(): void {\n this.loading = false;\n this.overlayRef?.detach();\n this.overlayRef?.dispose();\n }\n\n private calcLoaderProperties(hasMessage: boolean): {\n positionStrategy: GlobalPositionStrategy;\n width: string;\n backdropClass: string;\n hasMessage: boolean;\n } {\n const positionStrategy = this.overlay.position().global();\n let width = \"100vh\";\n let backdropClass = \"cdk-overlay-transparent-backdrop\";\n if (hasMessage) {\n width = \"initial\";\n backdropClass = \"wis-common-loader-bg\";\n positionStrategy.centerHorizontally().centerVertically();\n } else {\n positionStrategy.top(\"0px\").right(\"0px\");\n }\n return { positionStrategy, width, backdropClass, hasMessage };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_LOGGER = {\n APP_NAME: \"wisLoggerApp\",\n ENV_VAR: \"wisLoggerEnv\"\n};\n","import { TEnvName } from \"./logger.model\";\nconst envMap = {\n dev: \"https://bff.devcl.moveinsync.com\",\n qa: \"https://bff.stage.moveinsync.com\",\n production: \"https://bff.moveinsync.com\",\n uat: \"https://wisbff-uat.moveinsync.com\",\n \"production-green\": \"https://wisempweb-green.moveinsync.com\",\n \"production-beta\": \"https://bff-beta.moveinsync.com\",\n \"production-eu\": \"https://bff.eu.moveinsync.com\",\n \"production-eu-green\": \"https://bff-green.eu.moveinsync.com\",\n \"production-mu\": \"https://bff.moveinsync.in\"\n};\nexport function environmentHandler(env: TEnvName) {\n if (!env) {\n return \"/bff\";\n }\n return envMap[env];\n}\n","import { TEnvName } from \"./logger.model\";\nimport { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { environmentHandler } from \"./logger.functions\";\n@Injectable({\n providedIn: \"root\"\n})\nexport class LoggerService {\n private cookies: boolean = false;\n\n constructor(\n private http: HttpClient,\n @Inject(CONSTANTS_LOGGER.APP_NAME) private appName: string,\n @Inject(CONSTANTS_LOGGER.ENV_VAR) private appEnv: TEnvName\n ) {}\n\n useCookies(useCookies: boolean) {\n this.cookies = useCookies;\n }\n\n private logRequest(data: any, logLevel: \"info\" | \"error\" | \"warn\") {\n const request = {\n data,\n cookies: this.cookies ? document.cookie : undefined,\n logLevel\n };\n this.postLog(request);\n }\n\n private postLog(request) {\n const url = `${environmentHandler(this.appEnv)}/report-log/${this.appName}`;\n this.http.post(`${url}`, request).subscribe();\n }\n\n info(data: any) {\n this.logRequest(data, \"info\");\n }\n\n warn(data: any) {\n this.logRequest(data, \"warn\");\n }\n\n error(data: any, componentName: string, serviceUrl?: string) {\n this.logRequest({ ...data, componentName, serviceUrl }, \"error\");\n }\n}\n","import { CONSTANTS_LOGGER } from \"./logger.constant\";\nimport { ErrorHandler, ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { LoggerService } from \"./logger.service\";\nimport { TEnvName } from \"./logger.model\";\n\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n providers: []\n})\nexport class LoggerModule {\n /**\n *\n * @param appName any app name eg. FAQ, Floor Plan, In App Popup, etc.\n * @param env \"dev\" | \"qa\" | \"uat\" | \"prod\" | \"prod-beta\" | \"prod-green\" | \"prod-eu\" | \"prod-eu-green\" | undefined\n * @returns ModuleWithProviders<LoggerModule>\n */\n static forChild(appName: string, env?: TEnvName): ModuleWithProviders<LoggerModule> {\n return {\n ngModule: LoggerModule,\n providers: [\n {\n provide: CONSTANTS_LOGGER.APP_NAME,\n useValue: appName\n },\n {\n provide: CONSTANTS_LOGGER.ENV_VAR,\n useValue: env\n },\n LoggerService\n ]\n };\n }\n}\n","/** @format */\n\nexport const CONSTANTS_WIS_COMMON = {\n ENV_VAR: \"wisCommonEnvironment\"\n};\n","import { HttpClient } from \"@angular/common/http\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { map, Observable } from \"rxjs\";\nimport { CONSTANTS_WIS_COMMON } from \"../constants/emp-web-exp.constants\";\nimport { NsWISConfigurations } from \"../models/configurations.model\";\nimport { NsWISCommon } from \"../models/env.model\";\nimport { AuthService } from \"../modules/auth/auth.service\";\n\nconst API_URLS = {\n CONFIGURATIONS: \"configurations\"\n};\n\n@Injectable()\nexport class HttpService {\n constructor(@Inject(CONSTANTS_WIS_COMMON) public env: NsWISCommon.IEnv, private http: HttpClient) {}\n\n getProperties(Porperties: string[]) {\n return this.http.get(`${this.env.ets}/ets/apis/properties/${Porperties.join(\",\")}`).pipe(\n map((res: any) => {\n return res.reduce((acc: any, item: any) => {\n acc[item.propertyName] = item.propertyValue === \"true\" ? true : item.propertyValue === \"false\" ? false : item.propertyValue;\n return acc;\n }, {});\n })\n );\n }\n\n getOffices(nonce) {\n const body = `CSRF_NONCE=${nonce}&method=getOfficeList`;\n return this.http.post(`${this.env.ets}/Locality_Servlet`, body, { headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" } });\n }\n\n listTransportLocalities(nonce) {\n const body = `CSRF_NONCE=${nonce}&method=listTransportLocalities`;\n return this.http.post(`${this.env.ets}/Locality_Servlet`, body, { headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" } });\n }\n\n createEmptyIrregularTripSheet(nonce: string, direction: string): Observable<any> {\n const body = `CSRF_NONCE=${nonce}&method=createEmptyIrregularTripSheet&direction=${direction}`;\n return this.http.post(`${this.env.ets}/Tripsheet_Edit_Servlet`, body, { headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" } });\n }\n\n addEmployeeToTripSheet(\n nonce: string,\n params: {\n tripsheet: any;\n employee: any;\n pickupLoc: any;\n dropLoc: any;\n pickUpTime: string;\n dropTime: string;\n position: number;\n routeSource?: string;\n assetList?: any;\n }\n ): Observable<any> {\n const body = `CSRF_NONCE=${nonce}&method=addEmployeeToTripSheet&tripsheet=${encodeURIComponent(\n JSON.stringify(params.tripsheet)\n )}&employee=${encodeURIComponent(JSON.stringify(params.employee))}&pickupLoc=${encodeURIComponent(\n JSON.stringify(params.pickupLoc)\n )}&dropLoc=${encodeURIComponent(JSON.stringify(params.dropLoc))}&pickUpTime=\"${params.pickUpTime}\"&dropTime=\"${params.dropTime}\"&position=${\n params.position\n }${params.routeSource ? \"&routeSource=\" + params.routeSource : \"\"}${\n params.assetList ? \"&assetList=\" + encodeURIComponent(JSON.stringify(params.assetList)) : \"\"\n }`;\n return this.http.post(`${this.env.ets}/Tripsheet_Edit_Servlet`, body, { headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" } });\n }\n}\n","import { Component, OnInit } from \"@angular/core\";\n\n@Component({\n selector: \"wis-common-sidenav\",\n templateUrl: \"./sidenav.component.html\",\n styleUrls: [\"./sidenav.component.scss\"]\n})\nexport class SidenavComponent implements OnInit {\n constructor() {}\n\n ngOnInit(): void {}\n}\n","<div class=\"wis-sidenav-wrapper\">\n <div class=\"wis-sidenav-header\">\n <div class=\"wis-sidenav-header-logo\">\n <img src=\"assets/sidenav/assets/Wis-icon.svg\" alt=\"\" />\n </div>\n <div class=\"wis-sidenav-header-title\">\n <h1>WIS</h1>\n </div>\n </div>\n <div class=\"wis-sidenav-body\">\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-home\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Home</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-user\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Profile</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-users\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Users</h3>\n </div>\n </div>\n <div class=\"wis-sidenav-body-item\">\n <div class=\"wis-sidenav-body-item-icon\">\n <i class=\"fas fa-cog\"></i>\n </div>\n <div class=\"wis-sidenav-body-item-text\">\n <h3>Settings</h3>\n </div>\n </div>\n </div>\n</div>\n","/** @format */\n\nexport const CONSTANTS_ASSETS_WIS_COMMON = {\n IMAGES: {\n CALENDAR_ICON: \"assets/libraries/wis-common/calendar.svg\"\n },\n ICONS: {}\n};\n","import { Component, Inject, OnInit } from \"@angular/core\";\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\nimport * as dayjs from \"dayjs\";\nimport { IDatePickerConfig } from \"mis-crystal-design-system/datepicker_v2\";\nimport { parseZone } from \"moment\";\nimport { CONSTANTS_ASSETS_WIS_COMMON } from \"../../constants/assets.constants\";\nimport { HttpService } from \"../../services/http.service\";\nimport { DropdownItem } from \"mis-crystal-design-system/dropdown\";\nimport { forkJoin } from \"rxjs\";\nimport { finalize } from \"rxjs/operators\";\nimport { MODAL_DATA_VAR, ModalRef } from \"mis-design-system/mis-modal\";\nimport { ToastService } from \"mis-crystal-design-system/toast\";\n\nconst PROPERTIES = [\"NON_SHIFT_TRIPS_CATEGORIES\", \"USE_VALID_OFFICE_FOR_IRREGULAR_TRIPS\"];\n\ninterface LocationValue {\n type: number;\n office: any | null;\n}\n\ninterface LocationDropdownItem {\n label: string;\n value: LocationValue;\n}\n\n@Component({\n selector: \"app-create-non-shift-modal\",\n templateUrl: \"./create-non-shift-modal.component.html\",\n styleUrls: [\"./create-non-shift-modal.component.scss\"]\n})\nexport class CreateNonShiftModalComponent implements OnInit {\n CONSTANTS_ASSETS_WIS_COMMON = CONSTANTS_ASSETS_WIS_COMMON;\n\n dateConfig: Partial<IDatePickerConfig> = {\n minDate: parseZone().format(\"DD/MM/YYYY\"),\n format: \"DD/MM/YYYY\"\n };\n createTripsheetForm!: FormGroup;\n offices: DropdownItem[] = [];\n\n locationDropdownData: LocationDropdownItem[] = [];\n\n categoryDropdownData: DropdownItem[] = [];\n\n hoursDropdownData: DropdownItem[] = [];\n\n minutesDropdownData: DropdownItem[] = [];\n\n showOtherAddress: boolean = false;\n\n loading: boolean = false;\n isSubmitting: boolean = false;\n\n readonly TYPE_OFFICE = 6;\n readonly TYPE_TRANSPORT = 3;\n readonly TYPE_OTHER = 4;\n properties: Record<string, any> = {};\n\n constructor(@Inject(MODAL_DATA_VAR) public modalData: any, private modalRef: ModalRef, private fb: FormBuilder, private http: HttpService,private toast: ToastService) {}\n\n ngOnInit(): void {\n this.loading = true;\n\n const $office = this.http.getOffices(this.modalData.nonce);\n const $properties = this.http.getProperties(PROPERTIES);\n\n forkJoin([$office, $properties])\n .pipe(finalize(() => (this.loading = false)))\n .subscribe({\n next: ([offices, properties]) => {\n this.properties = properties;\n this.initializeForm();\n this.initializeDropdownData(offices);\n this.setupFormListeners();\n },\n error: error => {\n console.error(\"Error loading form data:\", error);\n this.modalRef.close();\n }\n });\n }\n\n private initializeForm(): void {\n const currentTime = this.modalData?.date ?? parseZone().format(\"DD/MM/YYYY\");\n\n this.createTripsheetForm = this.fb.group({\n direction: [this.modalData?.shiftType === \"logout\" ? \"OUT\" : \"IN\", Validators.required],\n location: [{ label: \"\", value: \"\" }],\n otherAddress: \"\",\n tripCategory: [{ label: \"\", value: \"\" }],\n date: [currentTime, Validators.required],\n hours: [{ label: \"\", value: \"\" }],\n mins: [{ label: \"\", value: \"\" }]\n });\n }\n\n private initializeDropdownData(offices: any): void {\n this.locationDropdownData = offices.map(\n (office: any): LocationDropdownItem => ({\n label: office.address,\n value: { type: this.TYPE_OFFICE, office: office || null }\n })\n );\n this.createTripsheetForm.get(\"location\")?.setValue(this.locationDropdownData[0]);\n\n if (!this.properties?.[\"USE_VALID_OFFICE_FOR_IRREGULAR_TRIPS\"]) {\n this.locationDropdownData.push(\n { label: \"Airport\", value: { type: this.TYPE_TRANSPORT, office: null } } as LocationDropdownItem,\n { label: \"Other\", value: { type: this.TYPE_OTHER, office: null } } as LocationDropdownItem\n );\n }\n\n // Initialize category dropdown\n const categoriesString = this.properties?.[\"NON_SHIFT_TRIPS_CATEGORIES\"];\n if (categoriesString && typeof categoriesString === \"string\") {\n const categories = categoriesString.split(\",\").filter(cat => cat && cat.trim());\n if (categories.length > 0) {\n this.categoryDropdownData = categories.map(category => ({\n label: category.trim(),\n value: category.trim()\n }));\n }\n }\n\n const currentHour = new Date().getHours();\n this.hoursDropdownData = Array.from({ length: 24 }, (_, i) => ({\n label: this.padZero(i),\n value: this.padZero(i)\n }));\n this.createTripsheetForm.patchValue({ hours: this.hoursDropdownData[currentHour] });\n\n const currentMinute = new Date().getMinutes();\n this.minutesDropdownData = Array.from({ length: 60 }, (_, i) => ({\n label: this.padZero(i),\n value: this.padZero(i)\n }));\n this.createTripsheetForm.patchValue({ mins: this.minutesDropdownData[currentMinute] });\n }\n\n private setupFormListeners(): void {\n this.createTripsheetForm?.valueChanges.subscribe(value => {\n const { location } = this.createTripsheetForm?.value;\n if (this.showOtherAddress !== (location?.value?.type === this.TYPE_OTHER)) {\n this.showOtherAddress = location?.value?.type === this.TYPE_OTHER;\n if (this.showOtherAddress) {\n this.createTripsheetForm.get(\"otherAddress\")?.setValidators([Validators.required]);\n } else {\n this.createTripsheetForm.get(\"otherAddress\")?.clearValidators();\n }\n this.createTripsheetForm.get(\"otherAddress\")?.updateValueAndValidity();\n }\n });\n }\n\n private padZero(num: number): string {\n return num.toString().padStart(2, \"0\");\n }\n\n onCancel(): void {\n this.modalRef.close();\n }\n\n onSubmit(): void {\n if (this.createTripsheetForm.invalid) {\n return;\n }\n\n const formValue = this.createTripsheetForm.value;\n\n const pickupTime = `${formValue.date} ${formValue.hours.value}/${formValue.mins.value}/00`;\n const pickupTimeDate = parseZone(pickupTime).toDate();\n if (this.isDateAndTimeFromPast(pickupTimeDate)) {\n this.toast.displayMsg(\"Please select a future date and time.\");\n return;\n }\n\n if (this.categoryDropdownData.length > 0 && (!formValue.tripCategory || !formValue.tripCategory.value)) {\n this.toast.displayMsg(\"Please provide a trip category.\");\n return;\n }\n\n if (formValue.location?.value?.type === this.TYPE_OTHER) {\n if (!formValue.otherAddress || formValue.otherAddress.trim() === \"\") {\n this.toast.displayMsg(\"Please provide the address.\");\n return;\n }\n if (formValue.otherAddress.includes(\",\")) {\n this.toast.displayMsg(\"Special character (,) not allowed in address.\");\n return;\n }\n }\n\n this.isSubmitting = true;\n\n this.http.createEmptyIrregularTripSheet(this.modalData.nonce, formValue.direction).subscribe({\n next: routeTripSheet => {\n const pickupLoc = routeTripSheet.dir === \"IN\" ? this.modalData.employee.home : this.getLocation(formValue);\n const dropLoc = routeTripSheet.dir === \"OUT\" ? this.modalData.employee.home : this.getLocation(formValue);\n const pickupTimeFormatted = pickupTime;\n const dropTimeFormatted = pickupTime;\n\n const employee = { ...this.modalData.employee, employee_status: 1 };\n\n const addEmployeeParams = {\n tripsheet: routeTripSheet,\n employee: employee,\n pickupLoc: pickupLoc,\n dropLoc: dropLoc,\n pickUpTime: pickupTimeFormatted,\n dropTime: dropTimeFormatted,\n position: 0,\n routeSource: this.modalData.routeSource,\n assetList: this.modalData.assetList\n };\n\n this.http.addEmployeeToTripSheet(this.modalData.nonce, addEmployeeParams).subscribe({\n next: updatedTripSheet => {\n if (!updatedTripSheet.customMap) {\n updatedTripSheet.customMap = {};\n }\n updatedTripSheet.customMap.tripCategory = formValue.tripCategory?.value || \"\";\n\n this.modalRef.close({\n success: true,\n tripsheet: updatedTripSheet\n });\n },\n error: error => {\n console.error(\"Error adding employee to tripsheet:\", error);\n this.toast.displayMsg(\"Failed to add employee to tripsheet. Please try again.\");\n this.isSubmitting = false;\n }\n });\n },\n error: error => {\n console.error(\"Error creating tripsheet:\", error);\n this.toast.displayMsg(\"Failed to create tripsheet. Please try again.\");\n this.isSubmitting = false;\n }\n });\n }\n\n private isDateAndTimeFromPast(date: Date): boolean {\n const now = new Date();\n return date < now;\n }\n\n private getLocation(formValue: any): any {\n const location = formValue.location?.value;\n\n if (!location) {\n return null;\n }\n\n const locType = location.type;\n\n switch (locType) {\n case this.TYPE_OFFICE:\n return location.office;\n\n case this.TYPE_TRANSPORT:\n return {\n id: null,\n type: this.TYPE_TRANSPORT,\n address: \"Airport\",\n geoCord: null\n };\n\n case this.TYPE_OTHER:\n return {\n ...location.office,\n address: formValue.otherAddress || \"\"\n };\n }\n }\n}\n","<div class=\"createTripsheet\">\n <h2 class=\"modal-header\">Create Non-Shift Tripsheet</h2>\n\n <div *ngIf=\"loading\" class=\"loading-container\">\n <div class=\"spinner\"></div>\n <p>Loading...</p>\n </div>\n\n <form\n *ngIf=\"!loading && createTripsheetForm\"\n [formGroup]=\"createTripsheetForm\"\n (ngSubmit)=\"onSubmit()\"\n class=\"createTripsheetForm\"\n id=\"createTripsheetForm\"\n >\n <div class=\"form-content\">\n <!-- Radio buttons row -->\n <div [ngClass]=\"{ 'radio-row': true, disabled: modalData?.shiftSelectionDisabled }\">\n <label class=\"radio-label\">\n <input class=\"modern-checkbox\" type=\"radio\" formControlName=\"direction\" value=\"OUT\" id=\"startLoc\" />\n <span>Start Location Fixed (Logout)</span>\n </label>\n <label class=\"radio-label\">\n <input class=\"modern-checkbox\" type=\"radio\" formControlName=\"direction\" value=\"IN\" id=\"endLoc\" />\n <span>End Location Fixed (Login)</span>\n </label>\n </div>\n\n <!-- Location field -->\n <div class=\"form-field\">\n <div class=\"label-cell\">\n <label class=\"locText\">Location</label>\n </div>\n <div class=\"input-cell\">\n <mis-dropdown\n [searchEnabled]=\"true\"\n [width]=\"'100%'\"\n [height]=\"'40px'\"\n [data]=\"locationDropdownData\"\n [selectedItem]=\"createTripsheetForm.get('location')?.value\"\n [label]=\"'Select location...'\"\n (onChange)=\"createTripsheetForm.get('location')?.setValue($event)\"\n ></mis-dropdown>\n </div>\n </div>\n\n <!-- Other address field -->\n <div class=\"form-field otherAddress\" *ngIf=\"showOtherAddress\">\n <div class=\"label-cell\">\n <label>Pick/Drop point <sup>*</sup></label>\n </div>\n <div class=\"input-cell\">\n <input type=\"text\" formControlName=\"otherAddress\" class=\"modern-input\" />\n </div>\n </div>\n\n <!-- Trip category field -->\n <div class=\"form-field\" *ngIf=\"categoryDropdownData.length > 0\">\n <div class=\"label-cell\">\n <label>Trip Category</label>\n </div>\n <div class=\"input-cell\">\n <mis-dropdown\n [searchEnabled]=\"false\"\n [width]=\"'250px'\"\n [height]=\"'40px'\"\n [data]=\"categoryDropdownData\"\n [selectedItem]=\"createTripsheetForm.get('tripCategory')?.value\"\n [label]=\"'Select category...'\"\n (onChange)=\"createTripsheetForm.get('tripCategory')?.setValue($event)\"\n ></mis-dropdown>\n </div>\n </div>\n\n <!-- Time field -->\n <div class=\"form-field\">\n <div class=\"label-cell\">\n <label class=\"fixedTimeText\">Time</label>\n </div>\n <div class=\"input-cell modern-date-container\">\n <div class=\"date-select\">\n <input\n misTzDp\n readonly\n [dpConfig]=\"dateConfig\"\n [formControl]=\"createTripsheetForm.get('date')\"\n style=\"height: 44px !important; font-size: 16px !important; cursor: pointer; vertical-align: middle !important\"\n />\n <img [src]=\"CONSTANTS_ASSETS_WIS_COMMON.IMAGES.CALENDAR_ICON\" alt=\"Calendar Icon\" class=\"date-icon data-picker-icon\" />\n </div>\n\n <mis-dropdown\n [searchEnabled]=\"false\"\n [width]=\"'5rem'\"\n [height]=\"'40px'\"\n [data]=\"hoursDropdownData\"\n [selectedItem]=\"createTripsheetForm.get('hours')?.value\"\n [label]=\"'HH'\"\n (onChange)=\"createTripsheetForm.get('hours')?.setValue($event)\"\n ></mis-dropdown>\n\n <mis-dropdown\n [searchEnabled]=\"false\"\n [width]=\"'5rem'\"\n [height]=\"'40px'\"\n [data]=\"minutesDropdownData\"\n [selectedItem]=\"createTripsheetForm.get('mins')?.value\"\n [label]=\"'MM'\"\n (onChange)=\"createTripsheetForm.get('mins')?.setValue($event)\"\n ></mis-dropdown>\n </div>\n </div>\n </div>\n\n <div class=\"form-actions\">\n <button mis-button type=\"outline\" (click)=\"onCancel()\" [disabled]=\"isSubmitting\">Cancel</button>\n <button mis-button type=\"primary\" [disabled]=\"isSubmitting || createTripsheetForm?.invalid\">\n {{ isSubmitting ? \"Creating...\" : \"Create\" }}\n </button>\n </div>\n </form>\n</div>\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { ConfigurationService } from \"./services/configuration.service\";\nimport { NsWISCommon } from \"./models/env.model\";\nimport { CONSTANTS_WIS_COMMON } from \"./constants/emp-web-exp.constants\";\nimport { HttpService } from \"./services/http.service\";\nimport { LoaderModule } from \"mis-crystal-design-system/loader\";\nimport { LoaderComponent } from \"./components/loader/loader.component\";\nimport { LoaderService } from \"./services/loader.service\";\nimport { OverlayModule } from \"@angular/cdk/overlay\";\nimport { SidenavComponent } from \"./components/sidenav/sidenav.component\";\nimport { CreateNonShiftModalComponent } from \"./components/create-non-shift-modal/create-non-shift-modal.component\";\nimport { DropdownModule } from \"mis-crystal-design-system/dropdown\";\nimport { ReactiveFormsModule } from \"@angular/forms\";\nimport { DatepickerModuleV2 } from \"mis-crystal-design-system/datepicker_v2\";\nimport { HttpClientModule } from \"@angular/common/http\";\n\n@NgModule({\n declarations: [LoaderComponent, SidenavComponent, CreateNonShiftModalComponent],\n imports: [CommonModule, HttpClientModule, OverlayModule, LoaderModule, DropdownModule, ReactiveFormsModule, DatepickerModuleV2,],\n providers: [],\n exports: [SidenavComponent, CreateNonShiftModalComponent]\n})\nexport class WisCommonModule {\n static forRoot(env: NsWISCommon.IEnv): ModuleWithProviders<WisCommonModule> {\n return {\n ngModule: WisCommonModule,\n providers: [HttpService,{ provide: CONSTANTS_WIS_COMMON, useValue: env }, ConfigurationService, LoaderService]\n };\n }\n}\n","import { ReplaySubject } from 'rxjs';\nimport { Injectable } from '@angular/core';\nimport { NsWISConfigurations } from \"../models/configurations.model\";\n@Injectable({\n providedIn: 'root'\n})\nexport class MfeCommunicationService {\n private _etsLoginUser: NsWISConfigurations.ILoginUserDetails;\n\n setUserDetails(userDetails: NsWISConfigurations.ILoginUserDetails): void {\n this._etsLoginUser = userDetails;\n }\n\n getUserDetails(): NsWISConfigurations.ILoginUserDetails {\n return this._etsLoginUser;\n }\n\n constructor() { }\n loginDetails = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n employeeExperience = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n floorPlan = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n meetingRooms = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n adminUI = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n paymentsDetails = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1); \n visitorMgmt = new ReplaySubject<NsWISConfigurations.IMfeCommunication>(1);\n}\n","export abstract class SessionError extends Error {}\n\nexport class SessionTokenNotFoundError extends SessionError {\n constructor() {\n super('Session token was not found.');\n this.name = 'SessionTokenNotFoundError';\n }\n}\n\nexport class SessionTokenExpiredError extends SessionError {\n constructor() {\n super('Session token has expired.');\n this.name = 'SessionTokenExpiredError';\n }\n}\n\nexport class SessionTokenInvalidError extends SessionError {\n constructor() {\n super('Session token could not be decoded.');\n this.name = 'SessionTokenInvalidError';\n }\n}\n\nexport class SessionClaimNotFoundError extends SessionError {\n constructor(public readonly claim: string) {\n super(`Session claim \"${claim}\" was not found in the token.`);\n this.name = 'SessionClaimNotFoundError';\n }\n}\n","import { Injectable } from '@angular/core';\nimport jwtDecode from 'jwt-decode';\n\nimport { getCookie } from '../functions/cookie.function';\nimport { getQueryParam } from '../functions/url.functions';\nimport { NsSession } from '../models/session.model';\nimport {\n SessionClaimNotFoundError,\n SessionError,\n SessionTokenExpiredError,\n SessionTokenInvalidError,\n SessionTokenNotFoundError,\n} from './session.errors';\n\nconst DEFAULT_SESSION_TOKEN_PREFIX = 'sso-wis-token';\nconst DEFAULT_SESSION_TOKEN_FALLBACK_KEY = 'x-wis-token';\nconst DEFAULT_VET_TOKEN_PREFIX = 'x-vet-token';\nconst LAUNCH_SOURCE_VET = 'VET';\n\ntype SessionState =\n | { status: 'ok'; claims: NsSession.IClaims; isVET: boolean }\n | { status: 'not-found'; isVET: boolean }\n | { status: 'expired'; isVET: boolean }\n | { status: 'invalid'; isVET: boolean };\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SessionService {\n private config: NsSession.IInitConfig = {};\n private cachedToken: string | null = null;\n private cachedState: SessionState | null = null;\n\n init(config: NsSession.IInitConfig): void {\n this.config = { ...config };\n this.cachedToken = null;\n this.cachedState = null;\n }\n\n /**\n * Runs `handlers.next` and returns its result, or `handlers.error(error)` if it throws a `SessionError`.\n * Centralizes the try/catch mechanics; the caller still supplies the actual handling logic.\n */\n read<T>(handlers: { next: (session: SessionService) => T; error: (error: SessionError) => T }): T {\n try {\n return handlers.next(this);\n } catch (e) {\n if (e instanceof SessionError) {\n return handlers.error(e);\n }\n throw e;\n }\n }\n\n /**\n * Statement-style variant of `read` for blocks of assignments/side effects with no return value.\n */\n run(handlers: { next: (session: SessionService) => void; error: (error: SessionError) => void }): void {\n this.read({\n next: s => { handlers.next(s); return undefined; },\n error: err => { handlers.error(err); return undefined; }\n });\n }\n\n get isVET(): boolean {\n return this.state.isVET;\n }\n\n get sub(): string { return this.getClaim('sub'); }\n get empGuid(): string { return this.getClaim('employeeGUID'); }\n get internalSsoRole(): string { return this.getClaim('internal_sso_role'); }\n get roles(): string[] { return this.getClaim('roles'); }\n get sessionId(): string { return this.getClaim('sessionId'); }\n get loggedInUser(): string { return this.getClaim('loggedInUser'); }\n get exp(): number { return this.getClaim('exp'); }\n get iat(): number { return this.getClaim('iat'); }\n get businessUnitId(): string { return this.getClaim('businessUnitId'); }\n get allowedBuids(): string[] { return this.getClaim('ALLOWED_BUIDS'); }\n get vetUserEmailId(): string { return this.getClaim('vetUserEmailId'); }\n get vetUserId(): number { return this.getClaim('vetUserId'); }\n get source(): string { return this.getClaim('source'); }\n\n get roleId(): number {\n const claims = this.getClaims();\n const raw = claims.internal_sso_role?.trim() || claims.roles?.[0]?.trim();\n if (!raw || !/^\\d+$/.test(raw)) {\n throw new SessionClaimNotFoundError('roleId');\n }\n return Number(raw);\n }\n\n private getClaims(): NsSession.IClaims {\n const state = this.state;\n if (state.status === 'ok') {\n return state.claims;\n }\n if (state.status === 'not-found') {\n throw new SessionTokenNotFoundError();\n }\n if (state.status === 'expired') {\n throw new SessionTokenExpiredError();\n }\n throw new SessionTokenInvalidError();\n }\n\n private getClaim<K extends keyof NsSession.IClaims>(key: K): NonNullable<NsSession.IClaims[K]> {\n const claims = this.getClaims();\n const value = claims[key];\n const isEmptyString = typeof value === 'string' && value.trim() === '';\n if (value === undefined || value === null || isEmptyString) {\n throw new SessionClaimNotFoundError(key as string);\n }\n return (typeof value === 'string' ? value.trim() : value) as NonNullable<NsSession.IClaims[K]>;\n }\n\n private get state(): SessionState {\n const { token, isVET } = this.findToken();\n if (!this.cachedState || token !== this.cachedToken) {\n this.cachedToken = token;\n this.cachedState = this.build(token, isVET);\n }\n return this.cachedState;\n }\n\n private build(token: string, isVET: boolean): SessionState {\n if (!token) {\n return { status: 'not-found', isVET };\n }\n\n let claims: NsSession.IClaims;\n try {\n claims = jwtDecode<NsSession.IClaims>(token);\n } catch {\n return { status: 'invalid', isVET };\n }\n\n if (this.isExpired(claims)) {\n return { status: 'expired', isVET };\n }\n\n return { status: 'ok', claims, isVET };\n }\n\n private isExpired(claims: NsSession.IClaims): boolean {\n return typeof claims.exp === 'number' && claims.exp * 1000 <= Date.now();\n }\n\n private isVETSource(): boolean {\n return getQueryParam('source') === LAUNCH_SOURCE_VET;\n }\n\n private resolveBuid(): string | null {\n return getQueryParam('buid') || getCookie('buid') || null;\n }\n\n private findToken(): { token: string; isVET: boolean } {\n const buid = this.resolveBuid();\n\n if (this.isVETSource()) {\n const vetKey = this.config.vetTokenCookieKey ?? (buid ? `${DEFAULT_VET_TOKEN_PREFIX}-${buid}` : null);\n const vetToken = (vetKey ? getCookie(vetKey) : '') || '';\n if (vetToken) {\n return { token: vetToken, isVET: true };\n }\n }\n\n const sessionToken = this.config.sessionTokenCookieKey\n ? getCookie(this.config.sessionTokenCookieKey)\n : (buid ? getCookie(`${DEFAULT_SESSION_TOKEN_PREFIX}-${buid}`) : '') || getCookie(DEFAULT_SESSION_TOKEN_FALLBACK_KEY);\n\n return { token: sessionToken || '', isVET: false };\n }\n}\n","/*\n * Public API Surface of wis-common\n */\n\nexport * from \"./lib/modules/auth/auth.service\";\nexport * from \"./lib/modules/auth/auth.module\";\nexport * from \"./lib/services/configuration.service\";\nexport * from \"./lib/models/configurations.model\";\nexport * from \"./lib/functions/nav-filter.function\";\nexport * from \"./lib/functions/cookie.function\";\nexport * from \"./lib/functions/url.functions\";\nexport * from \"./lib/interceptors/auth.interceptor\";\nexport * from \"./lib/services/loader.service\";\nexport * from \"./lib/modules/logger/logger.module\";\nexport * from \"./lib/modules/logger/logger.service\";\nexport * from \"./lib/wis-common.module\";\nexport * from \"./lib/modules/logger/logger.model\";\nexport * from \"./lib/components/sidenav/sidenav.component\";\nexport * from \"./lib/services/mfe-communication.service\";\nexport * from \"./lib/components/create-non-shift-modal/create-non-shift-modal.component\";\nexport * from \"./lib/services/session.service\";\nexport * from \"./lib/services/session.errors\";\nexport * from \"./lib/models/session.model\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.HttpService","i4"],"mappings":"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"}
|