{"version":3,"file":"DeliveryConnectHelpers.js","sourceRoot":"","sources":["../../TS/DeliveryConnectHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["import { IJSModule } from \"./IJSModule.js\";\r\n\r\nexport class DeliveryConnectHelpers implements IJSModule {\r\n //IJSService\r\n public serviceName: string;\r\n\r\n private componentInstanceObj = null;\r\n\r\n private subscriptions: NavigationSubscriptionsByComponent;\r\n private mapBlockSubscriptions: MapBlockSubscriptionsByComponent;\r\n\r\n public initialize(): boolean {\r\n this.serviceName = 'DeliveryConnectHelpers';\r\n\r\n this.subscriptions = {};\r\n this.mapBlockSubscriptions = {};\r\n\r\n window['DeliveryConnectHelpers'] = this;\r\n\r\n return true;\r\n }\r\n\r\n public passComponentInstance(obj: object) {\r\n this.componentInstanceObj = obj;\r\n }\r\n\r\n public setSessionID(id: string) {\r\n if (this.componentInstanceObj && id != null && id.length > 0) {\r\n this.componentInstanceObj.invokeMethodAsync('SetSessionID', id);\r\n }\r\n }\r\n\r\n public printHotelManifestsPdf(manifests: KeyValue[]) {\r\n for (let i = 0; i < manifests.length; i++) {\r\n const blob = new Blob([manifests[i].value], { type: 'application/pdf' });\r\n\r\n const blobURL = URL.createObjectURL(blob);\r\n\r\n //window.open(blobURL); // if you need to just open PDF then replace the following code with this line\r\n\r\n this.triggerFileDownload(manifests[i].key, blobURL);\r\n\r\n URL.revokeObjectURL(blobURL);\r\n }\r\n }\r\n\r\n private triggerFileDownload(fileName, url) {\r\n const anchorElement = document.createElement(\"a\");\r\n anchorElement.href = url;\r\n\r\n if (fileName) {\r\n anchorElement.download = fileName;\r\n }\r\n\r\n anchorElement.click();\r\n anchorElement.remove();\r\n }\r\n\r\n public subscribeToDeliveryConnectEvents(id: string) {\r\n if (this.componentInstanceObj && id != null && id.length > 0) {\r\n let el = document.getElementById(id);\r\n\r\n if (el) {\r\n this.unsubscribeFromDeliveryConnectEvents(id);\r\n\r\n let setSessionIDListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('SetSessionID', eventData.detail);\r\n let showToastMessageListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('ShowToastMessage', eventData.detail);\r\n let showOnDemandSchedulerModalListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('ShowOnDemandSchedulerModal', eventData.detail);\r\n let navigationListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('OnNavigate', eventData.detail);\r\n let navigationExternalListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('OnNavigateExternal', eventData.detail);\r\n let generateHotelManifestsPdfListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('GenerateHotelManifestsPdf', eventData.detail);\r\n let showCredentialsOutdatedModalListener = (eventData: CustomEvent) => this.componentInstanceObj.invokeMethodAsync('ShowCredentialsOutdatedModal', eventData.detail);\r\n\r\n this.subscriptions[id] = {\r\n setSessionID: setSessionIDListener,\r\n showToastMessage: showToastMessageListener,\r\n showOnDemandSchedulerModal: showOnDemandSchedulerModalListener,\r\n navigation: navigationListener,\r\n navigationExternal: navigationExternalListener,\r\n generateHotelManifestsPdf: generateHotelManifestsPdfListener,\r\n showCredentialsOutdatedModal: showCredentialsOutdatedModalListener\r\n };\r\n\r\n el.addEventListener('setSessionID', setSessionIDListener);\r\n el.addEventListener('showToastMessage', showToastMessageListener);\r\n el.addEventListener('showOnDemandSchedulerModal', showOnDemandSchedulerModalListener);\r\n el.addEventListener('navigate', navigationListener);\r\n el.addEventListener('navigateExternal', navigationExternalListener);\r\n el.addEventListener('generateHotelManifestsPdf', generateHotelManifestsPdfListener);\r\n el.addEventListener('showCredentialsOutdatedModal', showCredentialsOutdatedModalListener);\r\n }\r\n }\r\n }\r\n\r\n public unsubscribeFromDeliveryConnectEvents(id: string) {\r\n if (id != null && id.length > 0) {\r\n let el = document.getElementById(id);\r\n let s = this.subscriptions[id];\r\n\r\n if (el && s) {\r\n this.unsubscribeFromEvent('setSessionID', el, s.setSessionID);\r\n this.unsubscribeFromEvent('showToastMessage', el, s.showToastMessage);\r\n this.unsubscribeFromEvent('showOnDemandSchedulerModal', el, s.showOnDemandSchedulerModal);\r\n this.unsubscribeFromEvent('navigate', el, s.navigation);\r\n this.unsubscribeFromEvent('navigateExternal', el, s.navigationExternal);\r\n this.unsubscribeFromEvent('generateHotelManifestsPdf', el, s.generateHotelManifestsPdf);\r\n this.unsubscribeFromEvent('showCredentialsOutdatedModal', el, s.showCredentialsOutdatedModal);\r\n }\r\n }\r\n }\r\n\r\n public subscribeToDeliveryConnectMapEvents(id: string, mapComponentInstanceObj: any) {\r\n if (mapComponentInstanceObj && id != null && id.length > 0) {\r\n let el = document.getElementById(id);\r\n\r\n if (el) {\r\n this.unsubscribeFromDeliveryConnectMapEvents(id);\r\n\r\n let mapReadyListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnMapReady', eventData.detail);\r\n let mapClickListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnMapClick', eventData.detail);\r\n let polygonChangeListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnPolygonChange', eventData.detail);\r\n let markerChangeListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnMarkerChange', eventData.detail);\r\n let markerRemovedListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnMarkerRemoved', eventData.detail);\r\n let markerClickListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnMarkerClick', eventData.detail);\r\n let polygonClickListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnPolygonClick', eventData.detail);\r\n let loadingChangeListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnLoadingChange', eventData.detail);\r\n let TEST_loadingChangeListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('TEST_OnLoadingChange', eventData.detail);\r\n let polygonCompleteListener = (eventData: CustomEvent) => mapComponentInstanceObj.invokeMethodAsync('OnPolygonComplete', eventData.detail);\r\n\r\n this.mapBlockSubscriptions[id] = {\r\n mapReady: mapReadyListener,\r\n mapClick: mapClickListener,\r\n polygonChange: polygonChangeListener,\r\n markerChange: markerChangeListener,\r\n markerRemoved: markerRemovedListener,\r\n markerClick: markerClickListener,\r\n polygonClick: polygonClickListener,\r\n loadingChange: loadingChangeListener,\r\n TEST_loadingChange: TEST_loadingChangeListener,\r\n polygonComplete: polygonCompleteListener\r\n };\r\n\r\n el.addEventListener('mapReady', mapReadyListener);\r\n el.addEventListener('mapClick', mapClickListener);\r\n el.addEventListener('polygonChange', polygonChangeListener);\r\n el.addEventListener('markerChange', markerChangeListener);\r\n el.addEventListener('markerRemoved', markerRemovedListener);\r\n el.addEventListener('markerClick', markerClickListener);\r\n el.addEventListener('polygonClick', polygonClickListener);\r\n el.addEventListener('loadingChange', loadingChangeListener);\r\n el.addEventListener('TEST_loadingChange', TEST_loadingChangeListener);\r\n el.addEventListener('polygonComplete', polygonCompleteListener);\r\n }\r\n }\r\n }\r\n\r\n public unsubscribeFromDeliveryConnectMapEvents(id: string) {\r\n if (id != null && id.length > 0) {\r\n let el = document.getElementById(id);\r\n let s = this.mapBlockSubscriptions[id];\r\n\r\n if (el && s) {\r\n this.unsubscribeFromEvent('mapReady', el, s.mapReady);\r\n this.unsubscribeFromEvent('mapClick', el, s.mapClick);\r\n this.unsubscribeFromEvent('polygonChange', el, s.polygonChange);\r\n this.unsubscribeFromEvent('markerChange', el, s.markerChange);\r\n this.unsubscribeFromEvent('markerRemoved', el, s.markerRemoved);\r\n this.unsubscribeFromEvent('markerClick', el, s.markerClick);\r\n this.unsubscribeFromEvent('polygonClick', el, s.polygonClick);\r\n this.unsubscribeFromEvent('loadingChange', el, s.loadingChange);\r\n this.unsubscribeFromEvent('TEST_loadingChange', el, s.TEST_loadingChange);\r\n this.unsubscribeFromEvent('polygonComplete', el, s.polygonComplete);\r\n\r\n delete this.mapBlockSubscriptions[id];\r\n }\r\n }\r\n }\r\n\r\n private unsubscribeFromEvent(eventName: string, el: HTMLElement, listener: EventListenerOrEventListenerObject) {\r\n if (el && listener) {\r\n el.removeEventListener(eventName, listener);\r\n }\r\n }\r\n\r\n public deliveryConnectLogOff(id: string) {\r\n if (id != null && id.length > 0) {\r\n const el = document.getElementById(id);\r\n const event = new CustomEvent('deliveryConnectLogOff');\r\n\r\n el.dispatchEvent(event);\r\n }\r\n }\r\n}\r\n\r\nexport interface DCOutdatedCredentialsModel {\r\n AccountKey: string;\r\n UserName: string;\r\n SessionID: string;\r\n Message: string;\r\n}\r\n\r\nexport interface DCToastMessageModel {\r\n Type: string;\r\n TimeOutMS: number;\r\n Message: string;\r\n Detail: string;\r\n}\r\n\r\nexport interface DCNavigationModel {\r\n page: string;\r\n url: string;\r\n queryParams: any;\r\n}\r\n\r\nexport interface DCExternalNavigationModel {\r\n page: string;\r\n url: string;\r\n queryParams: KeyValue[];\r\n returnNavData: DCNavigationModel\r\n}\r\n\r\ntype NavigationSubscriptionsByComponent = {\r\n [key: string]: NavigationSubscriptions;\r\n}\r\n\r\ntype MapBlockSubscriptionsByComponent = {\r\n [key: string]: MapBlockSubscriptions;\r\n}\r\n\r\ntype NavigationSubscriptions = {\r\n setSessionID: EventListenerOrEventListenerObject,\r\n showToastMessage: EventListenerOrEventListenerObject,\r\n showOnDemandSchedulerModal: EventListenerOrEventListenerObject,\r\n navigation: EventListenerOrEventListenerObject,\r\n navigationExternal: EventListenerOrEventListenerObject,\r\n generateHotelManifestsPdf: EventListenerOrEventListenerObject,\r\n showCredentialsOutdatedModal: EventListenerOrEventListenerObject\r\n}\r\n\r\ntype MapBlockSubscriptions = {\r\n mapReady: EventListenerOrEventListenerObject,\r\n mapClick: EventListenerOrEventListenerObject,\r\n polygonChange: EventListenerOrEventListenerObject,\r\n markerChange: EventListenerOrEventListenerObject,\r\n markerRemoved: EventListenerOrEventListenerObject,\r\n markerClick: EventListenerOrEventListenerObject,\r\n polygonClick: EventListenerOrEventListenerObject,\r\n loadingChange: EventListenerOrEventListenerObject,\r\n TEST_loadingChange: EventListenerOrEventListenerObject,\r\n polygonComplete: EventListenerOrEventListenerObject\r\n}\r\n\r\ntype KeyValue = {\r\n key: K;\r\n value: V;\r\n}"]}