{"version":3,"sources":["./src/app/app.component.html","./src/$_lazy_route_resource lazy namespace object","./src/app/_enums/consoleColors.enum.ts","./src/app/_enums/constraintType.enum.ts","./src/app/_enums/errorMessage.enum.ts","./src/app/_enums/genericEvents.enum.ts","./src/app/_interfaces/constraint.interface.ts","./src/app/_interfaces/string.interface.ts","./src/app/_models/calculator.model.ts","./src/app/_models/client.model.ts","./src/app/_models/constraint.model.ts","./src/app/_models/index.ts","./src/app/_models/input.model.ts","./src/app/_models/navigation.model.ts","./src/app/_models/pdf.model.ts","./src/app/_models/testing.model.ts","./src/app/_services/api.service.ts","./src/app/_services/constraint.service.ts","./src/app/_services/content.service.ts","./src/app/_services/global.service.ts","./src/app/_services/index.ts","./src/app/_services/login.service.ts","./src/app/_services/navigation.service.ts","./src/app/_services/pdf.service.ts","./src/app/app.component.css","./src/app/app.component.ts","./src/app/app.module.ts","./src/environments/environment.ts","./src/main.ts","./util.inspect (ignored)"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

Loading...

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n An error has occured processing your request.
Please click any where on screen to reload the tool.

If this error continues please contact us at wtw.digital.solutions@willistowerswatson.com.\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n\"","var map = {\n\t\"./retbenefit/app.module\": [\n\t\t\"./src/app/retbenefit/app.module.ts\",\n\t\t\"retbenefit-app-module\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\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 __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";\nmodule.exports = webpackAsyncContext;","export enum ConsoleColors {\r\n 'DEFAULT' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'HEADING' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'TODO' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'WARNING' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'TEMP' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'FORMULA' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'GIVEN' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'IFELSE_TRUE' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n 'IFELSE_FALSE' = 'background: #white; color: black; font-weight: bold; border: 1px dashed black;',\r\n}\r\n\r\n","export enum enum_ConstraintType {\r\n Static,\r\n Dynamic\r\n}\r\n\r\nexport enum enum_ConstraintDataType {\r\n Number,\r\n Boolean,\r\n Date\r\n}\r\n","export enum enum_ErrorMessages {\r\n 'ERRORMESSAGE_403' = '403 - permission denied',\r\n 'ERRORMESSAGE_404' = '404 - page not found',\r\n 'ERRORMESSAGE_500' = '500 - service unavailable'\r\n};\r\n","export class GenericEvent {\r\n name: string = null;\r\n data: any = null;\r\n constructor(name: string, data?: any) {\r\n this.name = name;\r\n this.data = data ? data : null;\r\n }\r\n}\r\n\r\nexport enum enum_GenericEvents {\r\n 'UPDATE_CONTENT' = 'updateContent',\r\n 'FOCUS_SELECTED_DISPLAY_ON_PAGECHANGE' = 'focusSelectedDisplayOnPagechange',\r\n 'CHANGE_SCENARIO' = 'changeScenario',\r\n 'CHANGED_SCENARIO' = 'changedScenario',\r\n 'OPEN_MODAL_COMPARESCENARIO' = 'openModalComparescenario',\r\n 'OPEN_MODAL_EXPLOREDETAILS' = 'openModalExploredetails',\r\n 'OPEN_MODAL_CONFIRM_TIMEDOUT' = 'openModalConfirmTimedout',\r\n 'EDITABLE_HTML_SELECTED' = \"editableHtmlSelected\",\r\n 'CHANGED_PAGE' = 'changedPage',\r\n 'CLOSE_COMPARE_SCENARIO_POPUP' = 'closeCompareScenarioPopup',\r\n 'EXIT_CALCULATOR' = 'exitThisCalculator',\r\n 'ENABLE_MODAL_ONLY_TABBING' = 'enableModalOnlyTabbing',\r\n 'DISABLE_MODAL_ONLY_TABBING' = 'disableModalOnlyTabbing'\r\n}\r\n","import { ConstraintService } from \"../_services/constraint.service\";\r\n\r\nexport { }\r\n\r\ndeclare global {\r\n interface String {\r\n getMin(prop: string, ...args: any[]): number;\r\n getMax(prop: string, ...args: any[]): number;\r\n getDefault(prop: string, ...args: any[]): number;\r\n checkConstraint(prop: string, ...args: any[]): number;\r\n }\r\n}\r\n\r\nif (!String.prototype.checkConstraint) {\r\n String.prototype.checkConstraint = function (prop: string, ...args: any[]) {\r\n let _value = ConstraintService.checkConstraint(prop, parseFloat(this), ...args);\r\n return _value;\r\n }\r\n}\r\n\r\nif (!String.prototype.getMin) {\r\n String.prototype.getMin = function (prop: string, ...args: any[]) {\r\n let _min = ConstraintService.getMin(prop, ...args);\r\n return _min != null ? _min : this;\r\n }\r\n}\r\n\r\nif (!String.prototype.getMax) {\r\n String.prototype.getMax = function (prop: string, ...args: any[]) {\r\n let _max = ConstraintService.getMax(prop, ...args);\r\n return _max != null ? _max : this;\r\n }\r\n}\r\n\r\nif (!String.prototype.getDefault) {\r\n String.prototype.getDefault = function (prop: string, ...args: any[]) {\r\n let _default = ConstraintService.getDefault(prop, ...args);\r\n return _default != null ? _default : this;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface Number {\r\n getMin(prop: string, ...args: any[]): number;\r\n getMax(prop: string, ...args: any[]): number;\r\n getDefault(prop: string, ...args: any[]): number;\r\n checkConstraint(prop: string, ...args: any[]): number;\r\n }\r\n}\r\n\r\nif (!Number.prototype.checkConstraint) {\r\n Number.prototype.checkConstraint = function (prop: string, ...args: any[]) {\r\n let _value = ConstraintService.checkConstraint(prop, this, ...args);\r\n return _value;\r\n }\r\n}\r\n\r\nif (!Number.prototype.getDefault) {\r\n Number.prototype.getDefault = function (prop: string, ...args: any[]) {\r\n let _default = ConstraintService.getDefault(prop, ...args);\r\n return _default != null ? _default : this;\r\n }\r\n}\r\n\r\nif (!Number.prototype.getMin) {\r\n Number.prototype.getMin = function (prop: string, ...args: any[]) {\r\n let _min = ConstraintService.getMin(prop, ...args);\r\n return _min != null ? _min : this;\r\n }\r\n}\r\n\r\nif (!Number.prototype.getMax) {\r\n Number.prototype.getMax = function (prop: string, ...args: any[]) {\r\n let _max = ConstraintService.getMax(prop, ...args);\r\n return _max != null ? _max : this;\r\n }\r\n}\r\n","interface String {\r\n format(...replacements: string[]): string;\r\n}\r\n\r\nif (!String.prototype.format) {\r\n String.prototype.format = function () {\r\n var args = arguments;\r\n return this.replace(/{(\\d+)}/g, function (match, number) {\r\n return typeof args[number] != 'undefined'\r\n ? args[number]\r\n : match\r\n ;\r\n });\r\n };\r\n}\r\n","import { InvestmentChangeConstraints, LumpPostConstraints, LumpPreConstraints, VoluntaryPostConstraints, VoluntaryPostRateConstraints, VoluntaryPreConstraints, VoluntaryPreRateConstraints } from \"./client.constraints.model\";\r\nimport { ClientModel } from \"./client.model\";\r\nimport { NavigationModel } from \"./navigation.model\";\r\nimport { environment } from \"src/environments/environment\";\r\nimport { TestingModel } from \"./testing.model\";\r\ndeclare var require: any;\r\n\r\nexport interface ISidebarEmitterModel {\r\n isSidebarOpen: boolean;\r\n data?: any;\r\n}\r\n\r\nexport interface IViewStates {\r\n isDisclaimerAccepted: boolean;\r\n}\r\n\r\n\r\nexport interface IInvestmentChanges {\r\n current: IInvestmentChange;\r\n future: IInvestmentChange;\r\n}\r\n\r\nexport interface IInvestmentChange {\r\n Cash: number;\r\n Conservative: number;\r\n Balanced: number;\r\n Growth: number;\r\n Aggressive: number;\r\n Glidepath: number;\r\n}\r\n\r\nexport interface IKeyValuePair {\r\n key: string;\r\n value: any;\r\n}\r\n\r\nexport class EditedContentModel {\r\n elementKey: string = null;\r\n htmlTemplate: any = null;\r\n isEditingInline: boolean = false;\r\n content: any = null;\r\n constructor(elementKey: string, htmlTemplate: string, isEditingInline?: boolean, content?: any) {\r\n this.elementKey = elementKey;\r\n this.htmlTemplate = htmlTemplate;\r\n if (isEditingInline !== undefined) {\r\n this.isEditingInline = isEditingInline;\r\n }\r\n if (content !== undefined) {\r\n this.content = content;\r\n }\r\n }\r\n}\r\n\r\nexport interface IEditedContentModel {\r\n elementKey: string;\r\n htmlTemplate: any;\r\n content: any;\r\n isEditingInline?: boolean;\r\n}\r\n\r\nexport class CalculatorModel {\r\n\r\n calculatorKey: string = null;\r\n\r\n members: any;\r\n memberInitial: any = null;\r\n results: any;\r\n contents: any;\r\n constraints: any;\r\n clientModel: ClientModel;\r\n navigationModel: NavigationModel = new NavigationModel({});\r\n testingModel: TestingModel = new TestingModel();\r\n\r\n maxTimeAllowed = 70;\r\n isWorkPatternsAddingAllowed = true;\r\n isUnitTesting: boolean = false;\r\n isDefaultSet_ageR: boolean = false;\r\n currentScenario: string = \"current\";\r\n isDisclaimerAccepted: boolean = false;\r\n\r\n constructor(obj: any) {\r\n\r\n this.clientModel = new ClientModel();\r\n\r\n if (obj.hasOwnProperty('members')) {\r\n this.members = obj.members;\r\n }\r\n\r\n if (obj.hasOwnProperty('results')) {\r\n this.results = obj.results;\r\n }\r\n\r\n if (obj.hasOwnProperty('content')) {\r\n this.contents = obj.content;\r\n }\r\n\r\n }\r\n\r\n // get member(): any {\r\n // if (this.members) {\r\n // return this.members['current'];\r\n // }\r\n // else {\r\n // return null;\r\n // }\r\n // }\r\n\r\n}\r\n\r\nexport class SalaryChangeModel {\r\n reason: string = \"\";\r\n change: number;\r\n time: number;\r\n\r\n constructor(obj: any) {\r\n if (obj.hasOwnProperty('change') && !isNaN(obj.change)) {\r\n this.change = obj.change;\r\n }\r\n\r\n if (obj.hasOwnProperty('time') && !isNaN(obj.time)) {\r\n this.time = obj.time;\r\n }\r\n\r\n if (obj.hasOwnProperty('reason') && !isNaN(obj.reason)) {\r\n this.reason = obj.reason;\r\n }\r\n }\r\n}\r\n\r\nexport class WorkingPatternModel {\r\n reason: string = \"\";\r\n workRate: number = 0;\r\n time: number = 0;\r\n length: number = 0;\r\n\r\n constructor(obj: any) {\r\n if (obj.hasOwnProperty('workRate') && !isNaN(obj.workRate)) {\r\n this.workRate = obj.workRate;\r\n }\r\n\r\n if (obj.hasOwnProperty('time') && !isNaN(obj.time)) {\r\n this.time = obj.time;\r\n }\r\n\r\n if (obj.hasOwnProperty('length') && !isNaN(obj.length)) {\r\n this.length = obj.length;\r\n }\r\n\r\n if (obj.hasOwnProperty('reason') && !isNaN(obj.reason)) {\r\n this.reason = obj.reason;\r\n }\r\n }\r\n}\r\n","export class ClientModel {\r\n\r\n navigation: ClientNavigationModel;\r\n\r\n constructor() {\r\n\r\n //set up targeted data for this client\r\n let clientNavigationModel = {\r\n pages:\r\n [\r\n {\r\n pageTitle: 'start',\r\n pageTabs: [\r\n { tabTitle: 'workroles' },\r\n { tabTitle: 'workinghours' },\r\n { tabTitle: 'contributions' },\r\n { tabTitle: 'investments' },\r\n { tabTitle: 'retirementage' }\r\n ]\r\n },\r\n {\r\n pageTitle: 'Page2',\r\n pageTabs: [\r\n { tabTitle: 'Tab1', },\r\n { tabTitle: 'Tab2', }\r\n ]\r\n }\r\n ]\r\n };\r\n\r\n this.navigation = new ClientNavigationModel(clientNavigationModel);\r\n }\r\n}\r\n\r\nexport class ClientNavigationModel {\r\n pages: ClientPageModel[];\r\n\r\n constructor(obj: any) {\r\n\r\n this.pages = [];\r\n if (obj.hasOwnProperty('pages')) {\r\n for (let item of obj.pages) {\r\n this.pages.push(new ClientPageModel(item));\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport class ClientPageModel {\r\n pageTitle: string;\r\n pageTabs: ClientPageTabModel[];\r\n\r\n constructor(obj: any) {\r\n\r\n if (obj.hasOwnProperty('pageTitle')) {\r\n this.pageTitle = obj.pageTitle;\r\n }\r\n\r\n this.pageTabs = [];\r\n if (obj.hasOwnProperty('pageTabs')) {\r\n for (let item of obj.pageTabs) {\r\n this.pageTabs.push(new ClientPageTabModel(item));\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport class ClientPageTabModel {\r\n tabTitle: string;\r\n\r\n constructor(obj: any) {\r\n if (obj.hasOwnProperty('tabTitle')) {\r\n this.tabTitle = obj.tabTitle;\r\n }\r\n }\r\n}\r\n","import { enum_ConstraintType, enum_ConstraintDataType } from \"../_enums/constraintType.enum\";\r\n\r\nexport abstract class ConstraintModel {\r\n\r\n constraintType: enum_ConstraintType = enum_ConstraintType.Static;\r\n constraintDataType: enum_ConstraintDataType = enum_ConstraintDataType.Number;\r\n min: any;\r\n max: any;\r\n default: any;\r\n updated: boolean = false;\r\n\r\n getMin = function (...args: any[]) {\r\n if (this.min == null || this.min == undefined)\r\n return;\r\n\r\n if (this.constraintDataType == enum_ConstraintDataType.Date) {\r\n return new Date(this.min);\r\n }\r\n else {\r\n switch (typeof this.min) {\r\n case 'number':\r\n return this.min;\r\n case 'function':\r\n return this.min(...args);\r\n }\r\n }\r\n };\r\n\r\n getMax = function (...args: any[]) {\r\n if (this.max === null || this.max === undefined)\r\n return;\r\n\r\n if (this.constraintDataType === enum_ConstraintDataType.Date) {\r\n return new Date(this.max);\r\n }\r\n else {\r\n switch (typeof this.max) {\r\n case 'number':\r\n return this.max;\r\n case 'function':\r\n return this.max(...args);\r\n }\r\n }\r\n };\r\n\r\n getDefault = function (...args: any[]) {\r\n if (this.default == null || this.default == undefined)\r\n return;\r\n\r\n if (this.constraintDataType == enum_ConstraintDataType.Date) {\r\n return new Date(this.default);\r\n }\r\n else {\r\n switch (typeof this.default) {\r\n case 'number':\r\n return this.default;\r\n case 'function':\r\n return this.default(...args);\r\n }\r\n }\r\n };\r\n}\r\n","export * from './calculator.model';\r\nexport * from './client.model';\r\nexport * from './constraint.model';\r\nexport * from './input.model';\r\nexport * from './navigation.model';\r\nexport * from './testing.model';\r\nexport * from './pdf.model';\r\n\r\n","import { enum_ConstraintType } from \"../_enums/constraintType.enum\";\r\nimport { ConstraintModel } from \"./constraint.model\";\r\n\r\nexport class InputModel extends ConstraintModel {\r\n value: any;\r\n type: string;\r\n\r\n constructor(obj: any) {\r\n super();\r\n\r\n if (obj.hasOwnProperty('value')) {\r\n this.value = obj.value;\r\n }\r\n\r\n if (obj.hasOwnProperty('type')) {\r\n this.type = obj.type;\r\n }\r\n\r\n if (obj.hasOwnProperty('constraintType')) {\r\n this.constraintType = obj.constraintType;\r\n }\r\n else {\r\n this.constraintType = enum_ConstraintType.Static;\r\n }\r\n\r\n if (obj.hasOwnProperty('min')) {\r\n this.min = obj.min;\r\n }\r\n\r\n if (obj.hasOwnProperty('max')) {\r\n this.max = obj.max;\r\n }\r\n\r\n if (obj.hasOwnProperty('default')) {\r\n this.default = obj.default;\r\n }\r\n }\r\n}\r\n","export class NavigationModel {\r\n\r\n currentPageTitle: string = 'start';\r\n currentTabTitle: string = 'workroles';\r\n isDisclaimerAccepted: boolean = false;\r\n isSidebarOpen: boolean = false;\r\n isNavigationEnabled: boolean = true;\r\n currentStep: number = -1;\r\n previousStep: number = -1;\r\n currentPage: string = \"\";\r\n routeIndexes: any = null;\r\n isApplicationInitiasized: boolean = false;\r\n\r\n isDesktop: boolean = true;\r\n browser: string = null;\r\n os: string = null;\r\n userAgentInfo: any = null;\r\n responsiveSize: string = null;\r\n\r\n loginResponseStatus: any = null;\r\n\r\n constructor(obj: any) {\r\n if (obj.hasOwnProperty('currentPageTitle')) {\r\n this.currentPageTitle = obj.currentPageTitle;\r\n }\r\n if (obj.hasOwnProperty('currentTabTitle')) {\r\n this.currentTabTitle = obj.currentTabTitle;\r\n }\r\n if (obj.hasOwnProperty('isDisclaimerAccepted')) {\r\n this.isDisclaimerAccepted = obj.isDisclaimerAccepted;\r\n }\r\n if (obj.hasOwnProperty('isNavigationEnabled')) {\r\n this.isNavigationEnabled = obj.isNavigationEnabled;\r\n }\r\n }\r\n}\r\n","import { PdfService } from 'src/app/_services';\r\nimport { saveAs } from 'file-saver';\r\nimport { environment } from 'src/environments/environment';\r\n\r\nexport class PdfModel {\r\n constructor(private pdfService: PdfService, private empId: string) {\r\n\r\n }\r\n\r\n savePdf(filename: string) {\r\n console.debug('PdfModel().savePdf()');\r\n this.pdfService.setPdfModel().subscribe((response: any) => {\r\n\r\n let pdfQueueKey = response.body.pdfQueueKey;\r\n console.debug(`pdfQueueKey: ${pdfQueueKey}`);\r\n\r\n if (environment.switches.isTestingToolVisible) {\r\n //open preview in new window//\r\n window.open(`/qantas/retbenefit/soa?empId=${this.empId}&pdfQueueKey=${pdfQueueKey}`);\r\n }\r\n else {\r\n console.debug(`/qantas/retbenefit/soa?empId=${this.empId}&pdfQueueKey=${pdfQueueKey}`);\r\n }\r\n\r\n //this.pdfService.generate(pdfQueueKey);\r\n\r\n this.pdfService.generate(pdfQueueKey).subscribe(\r\n success => {\r\n saveAs(success, filename);\r\n },\r\n failed => {\r\n saveAs(failed, filename);\r\n }\r\n );\r\n\r\n }, (response: any) => {\r\n console.error(response);\r\n this.pdfService.isGeneratingSoA = false;\r\n });\r\n }\r\n}\r\n","export class TestingModel {\r\n showContentKey: boolean = false;\r\n constructor() {}\r\n}\r\n\r\n","import { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { tokenName } from '@angular/compiler';\r\nimport { Injectable } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport * as deepEqual from 'deep-equal';\r\nimport { of, throwError } from 'rxjs';\r\nimport { catchError, finalize } from 'rxjs/operators';\r\nimport { environment } from '../../environments/environment';\r\nimport { ConsoleColors } from '../_enums/consoleColors.enum';\r\nimport { enum_ErrorMessages } from '../_enums/errorMessage.enum';\r\nimport { enum_GenericEvents, GenericEvent } from '../_enums/genericEvents.enum';\r\nimport '../_interfaces/string.interface';\r\nimport { GlobalService } from './global.service';\r\n// import { WindowRef } from '../_helpers/window.ref';\r\n// import { NavigationService } from './navigation.service';\r\n\r\n@Injectable()\r\nexport class ApiService {\r\n\r\n private headers: HttpHeaders;\r\n public isCalculating: boolean = false;\r\n public currentDataObj: any = null;\r\n public isLoginValidationExpired: boolean = false;\r\n\r\n private _recalculateTimeout: any = null;\r\n\r\n // private navigationService: NavigationService,\r\n constructor(\r\n private httpClient: HttpClient,\r\n private globalService: GlobalService) {\r\n console.debug('ApiService().constructor()');\r\n }\r\n\r\n private setHeaders(method: string, url: string) {\r\n console.debug('ApiService().setHeaders()');\r\n\r\n if ((environment.calculator.apiKey == null || environment.calculator.apiKey === undefined) || (environment.calculator.clientId == null || environment.calculator.clientId === undefined)) {\r\n return;\r\n }\r\n\r\n let tMethod = method;\r\n let tDateStamp = new Date();\r\n let tClientApiKey = environment.calculator.apiKey;\r\n let tUrl = url;\r\n\r\n let tContentType = (tMethod === 'GET') ? '' : 'application/json;charset=UTF-8';\r\n let ct = tMethod + tUrl + tContentType + tDateStamp.toUTCString().replace('UTC', 'GMT');\r\n let ctSHA256 = CryptoJS.HmacSHA256(ct, tClientApiKey);\r\n let ctBase64 = CryptoJS.enc.Base64.stringify(ctSHA256);\r\n\r\n this.headers = new HttpHeaders({\r\n 'X-TW-API-CLIENTID': environment.calculator.clientId,\r\n 'X-TW-DATE': tDateStamp.toUTCString().replace('UTC', 'GMT'),\r\n 'X-TW-SIGNATURE': ctBase64,\r\n 'Content-Type': tContentType\r\n });\r\n\r\n if (window.location.href.indexOf('soa') != -1) {\r\n this.headers = this.headers.set('X-TW-PDFServerGen', '1');\r\n }\r\n }\r\n\r\n // calculator PASSED FROM THE RESOLVER\r\n init(calculator: any) {\r\n console.debug('ApiService().init()');\r\n\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n const tkn = urlParams.get('tkn')\r\n\r\n let tUrl;\r\n if (environment.urls.init.indexOf('https://') !== -1 || environment.urls.init.indexOf('http://') !== -1) {\r\n tUrl = environment.urls.init;\r\n }\r\n else {\r\n if (this.globalService.calculator) {\r\n tUrl = (environment.urls.base + environment.urls.init).format(this.globalService.calculator.clientCode, this.globalService.calculator.clientCalculator);\r\n }\r\n else {\r\n tUrl = (environment.urls.base + environment.urls.init).format(environment.calculator.clientCode, environment.calculator.clientCalculator);\r\n }\r\n }\r\n\r\n let data = null;\r\n\r\n // used by the email auth after redirect\r\n // for instances when cookies are disabled\r\n if (tkn) {\r\n data = {\r\n \"tkn\": tkn\r\n };\r\n }\r\n\r\n // tUrl = \"https://run.mocky.io/v3/02b60ffd-783c-41ca-a65b-3cb396dedf5e\";\r\n\r\n if (!environment.switches.withCredentials) {\r\n data = {\r\n \"empId\": \"00000000\"\r\n };\r\n } else if (window.location.pathname.indexOf('soa') > -1) {\r\n data = {\r\n \"empId\": this.getParameterByName('empId')\r\n };\r\n }\r\n\r\n this.setHeaders('POST', tUrl);\r\n return this.httpClient\r\n .post(tUrl, ((data == null) ? null : data), {\r\n headers: this.headers,\r\n observe: 'response'\r\n })\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n initWithEmpId(empId: string) {\r\n console.debug('ApiService().init()');\r\n\r\n\r\n let tUrl;\r\n if (environment.urls.initAfterLogin.indexOf('https://') !== -1 || environment.urls.init.indexOf('http://') !== -1) {\r\n tUrl = environment.urls.init;\r\n }\r\n else {\r\n if (this.globalService.calculator) {\r\n tUrl = (environment.urls.base + environment.urls.initAfterLogin).format(this.globalService.calculator.clientCode, this.globalService.calculator.clientCalculator);\r\n }\r\n else {\r\n tUrl = (environment.urls.base + environment.urls.initAfterLogin).format(environment.calculator.clientCode, environment.calculator.clientCalculator);\r\n }\r\n }\r\n\r\n let data = {\r\n \"empId\": empId\r\n };\r\n\r\n this.setHeaders('POST', tUrl);\r\n return this.httpClient\r\n .post(tUrl, ((data == null) ? null : data), {\r\n headers: this.headers,\r\n observe: 'response'\r\n })\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n checkCalc(): boolean {\r\n //check if data model has changed against one in memory. This check is done to see if new calcuation call is required.\r\n console.debug('ApiService().checkCalc()');\r\n let areEqual = (deepEqual(this.currentDataObj, this.globalService.calculatorModel.members));\r\n this.currentDataObj = JSON.parse(JSON.stringify(this.globalService.calculatorModel.members));\r\n if (!areEqual) {\r\n this.isCalculating = true;\r\n console.debug('ApiService().checkCalc() --> data change found');\r\n }\r\n return areEqual;\r\n }\r\n\r\n // CREATED JUST IN CASE WE NEED THE MEMBER CHECK THAT WON'T TRIGGER THE ROUND SPINNED TO DISPLAY\r\n isCurrentMemberUnchanged(currentMember: any = null): any {\r\n //check if data model has changed against one in memory. This check is done to see if new calcuation call is required.\r\n console.debug('ApiService().isCurrentMemberUnchanged()');\r\n\r\n let areEqual;\r\n\r\n if (currentMember) {\r\n areEqual = (deepEqual(this.globalService.calculatorModel.memberInitial, currentMember));\r\n }\r\n else {\r\n areEqual = (deepEqual(this.globalService.calculatorModel.memberInitial, this.globalService.calculatorModel.members.current));\r\n }\r\n\r\n return areEqual;\r\n }\r\n\r\n calc(data: any) {\r\n console.debug('ApiService().calc()');\r\n\r\n //set current data object\r\n this.currentDataObj = data;\r\n\r\n //this.clientEnvironment = obj;\r\n let tUrl = (environment.urls.base + environment.urls.calc).format(environment.calculator.clientCode, environment.calculator.clientCalculator);\r\n // let tUrl = \"https://run.mocky.io/v3/02b60ffd-783c-41ca-a65b-3cb396dedf5e\";\r\n\r\n this.setHeaders('POST', tUrl);\r\n return this.httpClient.post(tUrl, { 'members': data }, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(\r\n () => {\r\n console.debug('ApiService().calc() --> finalize');\r\n this.isCalculating = false;\r\n }\r\n ));\r\n }\r\n\r\n recalculate(timeout: number = 250) {\r\n if (this._recalculateTimeout) {\r\n clearTimeout(this._recalculateTimeout);\r\n }\r\n this._recalculateTimeout = setTimeout((() => {\r\n //DO SOMETHING BELOW\r\n // if isNavigationEnabled it's high likely that there is\r\n if (!this.globalService.calculatorModel.navigationModel.isNavigationEnabled) {\r\n console.debug('\\n\\n%c1. recalculate() not proceeding - navigationModel.isNavigationEnabled is disabled posssibly with invalid inputs.', ConsoleColors.DEFAULT);\r\n this._recalculateTimeout = null;\r\n return;\r\n }\r\n console.debug('\\n\\n%c1. recalculate() ---------- api.service ----------', ConsoleColors.HEADING);\r\n if (!this.checkCalc()) {\r\n console.debug('2. recalculate() - !this.checkCalc()');\r\n this.isCalculating = true;\r\n this.calc(this.currentDataObj).subscribe(\r\n (response: any) => {\r\n if (response.body) {\r\n console.debug('3 response: ', response);\r\n let results = response.body;\r\n\r\n for (const scenarioKey in results) {\r\n if (Object.prototype.hasOwnProperty.call(results, scenarioKey)) {\r\n const result = results[scenarioKey];\r\n this.globalService.calculatorModel.results[scenarioKey] = result;\r\n }\r\n }\r\n\r\n // this.globalService.calculatorModel.results = results;\r\n console.debug('4. updated this.globalService.calculatorModel.results: ', this.globalService.calculatorModel.results);\r\n }\r\n },\r\n (error: any) => {\r\n console.debug('\\n\\n%c CALCULATE ERROR response ', ConsoleColors.WARNING, error);\r\n switch (error) {\r\n case enum_ErrorMessages.ERRORMESSAGE_403:\r\n\r\n this.globalService.triggerGenericEvent(new GenericEvent(enum_GenericEvents.OPEN_MODAL_CONFIRM_TIMEDOUT));\r\n // this.windowRef.nativeWindow.location.reload();\r\n\r\n // this.windowRef.nativeWindow.open('', '_parent');\r\n // this.navigationService.goRoute('/' + this.globalService.calculator.clientCalculator + '/login');\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n );\r\n }\r\n this._recalculateTimeout = null;\r\n }).bind(this), timeout);\r\n }\r\n\r\n getParameterByName(name) {\r\n name = name.replace(/[\\[]/, \"\\\\\\[\").replace(/[\\]]/, \"\\\\\\]\");\r\n let regexS = \"[\\\\?&]\" + name + \"=([^&#]*)\";\r\n let regex = new RegExp(regexS);\r\n let results = regex.exec(window.location.href);\r\n\r\n //console.log('2020-02-03_18:55:07 >>>>> ----- >>>>>');\r\n //console.log('1. ===== window.location.href: ', window.location.href);\r\n //console.log('2020-02-03_18:55:07 <<<<< ----- <<<<<');\r\n\r\n return results === null ? null : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\r\n }\r\n\r\n private handleError(error: HttpErrorResponse) {\r\n console.debug('ApiService().handleError()');\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred. Handle it accordingly.\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n // The backend returned an unsuccessful response code.\r\n // The response body may contain clues as to what went wrong,\r\n console.error(\r\n `Backend returned code ${error.status}, ` +\r\n `body was: ${error.error}`);\r\n }\r\n\r\n switch (error.status) {\r\n case 403:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_403);\r\n case 404:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_404);\r\n case 500:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_500);\r\n default:\r\n return throwError(`${error.status} - ${error.error}`);\r\n }\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { enum_ConstraintDataType, enum_ConstraintType } from \"../_enums/constraintType.enum\";\r\nimport { InputModel } from \"../_models/input.model\";\r\n\r\n@Injectable()\r\nexport class ConstraintService {\r\n\r\n static constraintsModel: InputModel[] = [];\r\n static constraintsExclude = ['otherAssets', 'willTake', 'breakType', 'retirementDate'];\r\n\r\n static checkExists(prop: any): InputModel {\r\n let constraintModel = null;\r\n if (this.constraintsModel != null && (constraintModel = this.constraintsModel.find(x => x.type == prop)) != null) {\r\n return constraintModel;\r\n }\r\n return constraintModel;\r\n }\r\n\r\n static getDefault(prop: any, ...args: any[]) {\r\n let constraintModel = this.checkExists(prop);\r\n if (constraintModel != null) {\r\n return constraintModel.getDefault(...args);\r\n }\r\n return null;\r\n }\r\n\r\n static getMin(prop: string, ...args: any[]) {\r\n let constraintModel = this.checkExists(prop);\r\n if (constraintModel != null) {\r\n return constraintModel.getMin(...args);\r\n }\r\n return null;\r\n }\r\n\r\n static getMax(prop: any, ...args: any[]) {\r\n let constraintModel = this.checkExists(prop);\r\n if (constraintModel != null) {\r\n return constraintModel.getMax(...args);\r\n }\r\n return null;\r\n }\r\n\r\n static checkConstraint(prop: string, value: any, ...args: any[]): any {\r\n let constraintModel = this.checkExists(prop);\r\n let min = this.getMin(prop, ...args);\r\n let max = this.getMax(prop, ...args);\r\n\r\n console.debug(`checkConstraint(${prop}, ${value}) min: ${min}, max:${max}`);\r\n\r\n switch (constraintModel.constraintDataType) {\r\n case enum_ConstraintDataType.Date:\r\n if (new Date(value) < min) {\r\n value = min.getFullYear() + '-' + (min.getMonth() + 1) + '-' + min.getDate();\r\n constraintModel.updated = true;\r\n }\r\n else if (new Date(value) > max) {\r\n value = max.getFullYear() + '-' + (max.getMonth() + 1) + '-' + max.getDate();\r\n constraintModel.updated = true;\r\n }\r\n constraintModel.value = value;\r\n break;\r\n\r\n default:\r\n if (value < min) {\r\n value = min;\r\n constraintModel.updated = true;\r\n }\r\n else if (value > max) {\r\n value = max;\r\n constraintModel.updated = true;\r\n }\r\n constraintModel.value = value;\r\n break;\r\n }\r\n return value;\r\n }\r\n\r\n static parseDynamicConstraintObject(obj: any, pathName: string) {\r\n if (typeof (obj) == 'object') {\r\n\r\n //recursive call to read JSON object\r\n for (let child in obj) {\r\n if (ConstraintService.constraintsExclude.findIndex(x => x == child) == -1) { //check for skipping some properties\r\n this.parseDynamicConstraintObject(obj[child], pathName + (pathName != '' ? '.' : '') + child);\r\n }\r\n }\r\n }\r\n else {\r\n\r\n //bind constraint\r\n let constraintName = pathName.substring(pathName.indexOf('.') + 1); //format name of constraint\r\n let currentConstraint = ConstraintService.constraintsModel.find(x => x.type == constraintName && x.constraintType == enum_ConstraintType.Dynamic); //get if existing\r\n if (currentConstraint == null) {\r\n currentConstraint = new InputModel({ type: constraintName, constraintType: enum_ConstraintType.Dynamic }); //create if not found\r\n\r\n //parse date\r\n if (obj.toString().indexOf('-') != -1 && (obj.match(/-/g) || []).length == 2) {\r\n currentConstraint.constraintDataType = enum_ConstraintDataType.Date;\r\n }\r\n\r\n //parse boolean\r\n if (obj == 'true' || obj == 'True' || obj == 'false' || obj == 'False') {\r\n currentConstraint.constraintDataType = enum_ConstraintDataType.Boolean;\r\n }\r\n\r\n ConstraintService.constraintsModel.push(currentConstraint); //add to constraints\r\n }\r\n\r\n switch (pathName.substring(0, (pathName.indexOf('.')))) {\r\n case 'default':\r\n currentConstraint.default = obj;\r\n currentConstraint.value = obj;\r\n break;\r\n\r\n case 'min':\r\n currentConstraint.min = obj;\r\n break;\r\n\r\n case 'max':\r\n currentConstraint.max = obj;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n static checkConstraintsDynamic(obj: any) {\r\n console.debug('CalculatorModel().checkConstraintsDynamic()');\r\n\r\n //accepts a member object that should have the same properties/names as dynamic constraints\r\n if (obj == null || obj == undefined) {\r\n return;\r\n }\r\n\r\n let dynamicConstraints = ConstraintService.constraintsModel.filter(x => x.constraintType == enum_ConstraintType.Dynamic);\r\n if (dynamicConstraints != null) {\r\n for (let dynamicConstraint of dynamicConstraints) {\r\n let objValue = eval('obj.' + dynamicConstraint.type);\r\n\r\n if (objValue != null) {\r\n\r\n if (dynamicConstraint.constraintDataType != enum_ConstraintDataType.Boolean) {\r\n let constrintCheckValue = ConstraintService.checkConstraint(dynamicConstraint.type, objValue);\r\n if (constrintCheckValue != objValue) {\r\n switch (dynamicConstraint.constraintDataType) {\r\n case enum_ConstraintDataType.Date:\r\n eval('obj.' + dynamicConstraint.type + '=\"' + constrintCheckValue + '\"');\r\n break;\r\n case enum_ConstraintDataType.Number:\r\n eval('obj.' + dynamicConstraint.type + '=' + constrintCheckValue);\r\n break;\r\n }\r\n }\r\n }\r\n else {\r\n console.error(`Unsupported dynamic constraint ${dynamicConstraint.type} of type: ${typeof (objValue)}`);\r\n }\r\n }\r\n else {\r\n console.error(` ${dynamicConstraint.type}: objValue == null`);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","import { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from \"@angular/core\";\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { environment } from '../../environments/environment';\r\nimport { GlobalService } from \"./global.service\";\r\nimport { enum_ErrorMessages } from '../_enums/errorMessage.enum';\r\nimport { Router, ActivatedRouteSnapshot, ActivatedRoute } from '@angular/router';\r\nimport { GenericEvent, enum_GenericEvents } from '../_enums/genericEvents.enum';\r\nimport { EditedContentModel, IEditedContentModel } from '../_models';\r\nimport { ConsoleColors } from '../_enums/consoleColors.enum';\r\n\r\n// import DummyModellerContent from 'src/app/modeller/data/modeller.dummy.content.json';\r\n\r\n@Injectable()\r\nexport class ContentService {\r\n\r\n private headers: HttpHeaders;\r\n isLoadingContent = false;\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n private globalService: GlobalService,\r\n private router: Router,\r\n private route: ActivatedRoute\r\n ) {\r\n console.debug(\"ContentService().constructor()\");\r\n }\r\n\r\n private setHeaders(method: string, url: string) {\r\n console.debug('ContentService().setHeaders()');\r\n\r\n if ((environment.calculator.apiKey == null || environment.calculator.apiKey === undefined) || (environment.calculator.clientId == null || environment.calculator.clientId === undefined)) {\r\n return;\r\n }\r\n\r\n let tMethod = method;\r\n let tDateStamp = new Date();\r\n let tClientApiKey = environment.calculator.apiKey;\r\n let tUrl = url;\r\n\r\n let tContentType = (tMethod === 'GET') ? '' : 'application/json;charset=UTF-8';\r\n let ct = tMethod + tUrl + tContentType + tDateStamp.toUTCString().replace('UTC', 'GMT');\r\n let ctSHA256 = CryptoJS.HmacSHA256(ct, tClientApiKey);\r\n let ctBase64 = CryptoJS.enc.Base64.stringify(ctSHA256);\r\n\r\n this.headers = new HttpHeaders({\r\n 'X-TW-API-CLIENTID': environment.calculator.clientId,\r\n 'X-TW-DATE': tDateStamp.toUTCString().replace('UTC', 'GMT'),\r\n 'X-TW-SIGNATURE': ctBase64,\r\n 'Content-Type': tContentType\r\n });\r\n }\r\n\r\n loadContent(selectedCountry?: string, selectedLanguage?: string) {\r\n // console.debug('ContentService().loadContent(%s, %s)', selectedCountry, selectedLanguage);\r\n let turl;\r\n if (environment.urls.content.indexOf('https://') !== -1 || environment.urls.content.indexOf('http://') !== -1) {\r\n // DON'T USE baseurl\r\n turl = environment.urls.content;\r\n } else {\r\n // USE baseurl\r\n turl = (environment.urls.base + environment.urls.content).format(this.globalService.calculator.calculator.clientCalculator, selectedLanguage);\r\n }\r\n this.setHeaders('GET', turl);\r\n return this.httpClient\r\n .get(turl, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n getContentsDictionary(contents) {\r\n\r\n if (contents === null || contents === undefined) return null;\r\n\r\n // NOTE: For old admin ui contents transforming the old content into a newer\r\n // content structure\r\n if (!Array.isArray(contents) ) {\r\n return this.transformContentsOldToNew(contents);\r\n }\r\n\r\n // NOTE: For newer admin ui contents\r\n return contents.reduce((obj, content) => {\r\n if (content.itemId !== '' && content.itemId !== undefined && content.itemId !== null) {\r\n obj[content.section + \"_\" + content.itemId] = content;\r\n }\r\n else {\r\n obj[content.section] = content;\r\n }\r\n return obj;\r\n }, {});\r\n\r\n }\r\n\r\n transformContentsNewToOld(contents) {\r\n if (contents === null || contents === undefined) return null;\r\n let oldContents = {};\r\n for (const section in contents) {\r\n if (Object.prototype.hasOwnProperty.call(contents, section)) {\r\n const contentNew = contents[section];\r\n let contentOld = {\r\n misc: contentNew.elements,\r\n fields: {}\r\n }\r\n oldContents[section] = contentOld;\r\n }\r\n }\r\n return oldContents;\r\n }\r\n\r\n transformContentsOldToNew(contents) {\r\n if (contents === null || contents === undefined) return null;\r\n let newContents = {};\r\n for (const section in contents) {\r\n if (Object.prototype.hasOwnProperty.call(contents, section)) {\r\n const contentOld = contents[section];\r\n let contentNew = {\r\n section: section,\r\n itemId: \"\",\r\n country: \"AU\",\r\n lang: \"en\",\r\n elements: contentOld['misc'],\r\n id: \"\"\r\n };\r\n newContents[section] = contentNew;\r\n }\r\n }\r\n return newContents;\r\n }\r\n\r\n getContentsArray(contentsObj) {\r\n let contentsArray = [];\r\n for (const section in contentsObj) {\r\n if (Object.prototype.hasOwnProperty.call(contentsObj, section)) {\r\n const sectionItem = contentsObj[section];\r\n contentsArray.push(sectionItem);\r\n }\r\n }\r\n return contentsArray;\r\n }\r\n\r\n updateContents(contents: any, selectedCountry?: string, selectedLanguage?: string) {\r\n if (!contents) return;\r\n\r\n console.debug('\\n\\n1.%c updateContent(contents) ---------- contents.service 2020-05-14_21:28:04 ----------', ConsoleColors.HEADING);\r\n console.debug('2. contents: ', contents);\r\n console.debug('3. this.router: ', this.router);\r\n console.debug('4. this.route.snapshot.data: ', this.route.snapshot.data);\r\n\r\n\r\n this.globalService.calculatorModel.contents = this.getContentsDictionary(contents['sections']);\r\n\r\n // if (environment.switches.useDummyContent) {\r\n // console.debug('3.1 USING DUMMY CONTENTS');\r\n // // this.globalService.calculatorModel.contents = this.getContentsDictionary(DummyModellerContent[selectedLanguage]);\r\n // // this.globalService.genericEventSource.next(new GenericEvent(enum_GenericEvents.UPDATE_CONTENT));\r\n // console.debug('3.2 DUMMY CONTENTS', this.globalService.calculatorModel.contents);\r\n // }\r\n // else {\r\n // console.debug('3.1 USING API CONTENTS');\r\n // this.globalService.calculatorModel.contents = this.getContentsDictionary(contents);\r\n // this.globalService.genericEventSource.next(new GenericEvent(enum_GenericEvents.UPDATE_CONTENT));\r\n // console.debug('3.2 API CONTENTS', this.globalService.calculatorModel.contents);\r\n // }\r\n\r\n this.isLoadingContent = false;\r\n }\r\n\r\n getContents(selectedCountry: string = 'AU', selectedLanguage: string = 'en-us') {\r\n this.isLoadingContent = true;\r\n this.loadContent(selectedCountry, selectedLanguage).subscribe(\r\n (response) => {\r\n\r\n console.debug('\\n\\n1. loadContent(selectedCountry, selectedLanguage) ---------- content.service 2020-05-11_14:27:22 ----------');\r\n console.debug('2. selectedCountry: ', selectedCountry);\r\n console.debug('3. selectedLanguage: ', selectedLanguage);\r\n console.debug('4. success: ', response.body);\r\n\r\n this.updateContents(response.body, selectedCountry, selectedLanguage);\r\n\r\n },\r\n (error) => {\r\n this.isLoadingContent = false;\r\n console.error('---------- contents.service ----------');\r\n console.error(error);\r\n }\r\n );\r\n }\r\n\r\n updateContentItemHtmlTemplate(event: EditedContentModel, content: any) {\r\n if (event.isEditingInline) {\r\n console.debug('\\n\\n1. updateContentItemHtmlTemplate ---------- page.component 2020-07-23_13:23:36 ----------');\r\n console.debug('2. event: ', event);\r\n content.elements[event.elementKey] = event.htmlTemplate;\r\n console.debug(\"3. \", event.elementKey + \" html string template is now reflected on the app's contents data.\\nIt will be part of the devtool data when it's exported.\");\r\n } else {\r\n event.content = content;\r\n this.globalService.triggerGenericEvent(new GenericEvent(enum_GenericEvents.EDITABLE_HTML_SELECTED, event));\r\n }\r\n }\r\n\r\n updateHtmlTemplate(iecm: IEditedContentModel) {\r\n this.globalService.triggerGenericEvent(new GenericEvent(enum_GenericEvents.EDITABLE_HTML_SELECTED,\r\n new EditedContentModel(iecm.elementKey, iecm.htmlTemplate, false, iecm.content)\r\n ));\r\n }\r\n\r\n private handleError(error: HttpErrorResponse) {\r\n console.debug('ContentService().handleError()');\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred. Handle it accordingly.\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n // The backend returned an unsuccessful response code.\r\n // The response body may contain clues as to what went wrong,\r\n console.error(\r\n `Backend returned code ${error.status}, ` +\r\n `body was: ${error.error}`);\r\n }\r\n\r\n switch (error.status) {\r\n case 403:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_403);\r\n case 404:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_404);\r\n case 500:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_500);\r\n default:\r\n return throwError(`${error.status} - ${error.error}`);\r\n }\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { CalculatorModel, IViewStates } from '../_models/calculator.model';\r\n\r\n@Injectable()\r\nexport class GlobalService {\r\n isError: boolean;\r\n isLoadingApp: boolean;\r\n isLoadingContent: boolean;\r\n\r\n // observable stream source\r\n genericEventSource = new Subject();\r\n genericEvent$ = this.genericEventSource.asObservable();\r\n\r\n calculator: any;\r\n\r\n // primary calculator model\r\n calculatorModel: CalculatorModel;\r\n\r\n constructor() {\r\n console.debug('GlobalService().constructor()');\r\n // set up event trigger for window.resize\r\n\r\n this.isError = false;\r\n this.isLoadingApp = false;\r\n this.isLoadingContent = false;\r\n\r\n let timerWindowResize;\r\n let self = this;\r\n window.onresize = () => {\r\n\r\n // clear timer if already set\r\n clearTimeout(timerWindowResize);\r\n\r\n // set timer\r\n timerWindowResize = setTimeout(\r\n function () {\r\n self.triggerGenericEvent('window.resize()');\r\n },\r\n 250);\r\n };\r\n }\r\n\r\n triggerGenericEvent(event: any) {\r\n this.genericEventSource.next(event);\r\n }\r\n}\r\n","export * from './api.service';\r\nexport * from './constraint.service';\r\nexport * from './global.service';\r\nexport * from './navigation.service';\r\nexport * from './content.service';\r\nexport * from './pdf.service';\r\nexport * from './login.service';\r\n","import { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { environment } from '../../environments/environment';\r\nimport { catchError, finalize } from 'rxjs/operators';\r\nimport { enum_ErrorMessages } from '../_enums/errorMessage.enum';\r\nimport { of, throwError } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { GlobalService } from './global.service';\r\n\r\n@Injectable()\r\nexport class LoginService {\r\n\r\n private headers: HttpHeaders;\r\n\r\n public isLoggingIn: boolean = false;\r\n\r\n constructor(private httpClient: HttpClient, private globalService: GlobalService, private router: Router) {\r\n }\r\n\r\n private setHeaders(method: string, url: string) {\r\n console.debug('LoginService().setHeaders()');\r\n\r\n if ((environment.calculator.apiKey == null || environment.calculator.apiKey === undefined) || (environment.calculator.clientId == null || environment.calculator.clientId === undefined)) {\r\n return;\r\n }\r\n\r\n let tMethod = method;\r\n let tDateStamp = new Date();\r\n let tClientApiKey = environment.calculator.apiKey;\r\n let tUrl = url;\r\n\r\n let tContentType = (tMethod === 'GET') ? '' : 'application/json;charset=UTF-8';\r\n let ct = tMethod + tUrl + tContentType + tDateStamp.toUTCString().replace('UTC', 'GMT');\r\n let ctSHA256 = CryptoJS.HmacSHA256(ct, tClientApiKey);\r\n let ctBase64 = CryptoJS.enc.Base64.stringify(ctSHA256);\r\n\r\n this.headers = new HttpHeaders({\r\n 'X-TW-API-CLIENTID': environment.calculator.clientId,\r\n 'X-TW-DATE': tDateStamp.toUTCString().replace('UTC', 'GMT'),\r\n 'X-TW-SIGNATURE': ctBase64,\r\n 'Content-Type': tContentType\r\n });\r\n }\r\n\r\n\r\n login(data: any) {\r\n console.debug('LoginService.login()');\r\n let tUrl = environment.urls.base + environment.urls.login;\r\n this.setHeaders('POST', tUrl);\r\n\r\n this.isLoggingIn = true;\r\n\r\n return this.httpClient.post(tUrl, data, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n this.isLoggingIn = false;\r\n console.debug('LoginService().login() --> finalize');\r\n }));\r\n }\r\n\r\n acknowledgeData(member: any) {\r\n this._acknowledgeData(member).subscribe(\r\n (response: any) => {\r\n if (response.body) {\r\n console.debug('SUCCESS acknowledgeData(member: any)', response);\r\n }\r\n },\r\n (error: any) => {\r\n console.debug('ERROR acknowledgeData(member: any)', error);\r\n }\r\n );\r\n }\r\n\r\n private _acknowledgeData(member: any) {\r\n console.debug('LoginService._invokeAcknowledgeData()');\r\n let tUrl = environment.urls.base + environment.urls.init;\r\n this.setHeaders('POST', tUrl);\r\n\r\n let data = {\r\n \"empId\": member.memberNo,\r\n \"acknowledgedData\": member.acknowledgedData\r\n };\r\n\r\n return this.httpClient.post(tUrl, data, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n console.debug('LoginService()._invokeAcknowledgeData() --> finalize');\r\n }));\r\n }\r\n\r\n logout(member: any) {\r\n this._logout(member).subscribe(\r\n (response: any) => {\r\n if (response.body) {\r\n console.debug('SUCCESS logout(member: any)', response);\r\n }\r\n },\r\n (error: any) => {\r\n console.debug('ERROR logout(member: any)', error);\r\n }\r\n );\r\n }\r\n\r\n private _logout(member: any) {\r\n console.debug('LoginService.logout()');\r\n let tUrl = environment.urls.base + environment.urls.logout;\r\n this.setHeaders('POST', tUrl);\r\n\r\n let data = null;\r\n\r\n // let data = {\r\n // \"empId\": member.memberNo,\r\n // \"acknowledgedData\": member.acknowledgedData\r\n // };\r\n\r\n this.isLoggingIn = false;\r\n\r\n return this.httpClient.post(tUrl, data, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n this.isLoggingIn = false;\r\n console.debug('LoginService()._logout() --> finalize');\r\n }));\r\n }\r\n\r\n resetPassword(data: any) {\r\n console.debug('LoginService.resetPassword()');\r\n let tUrl = environment.urls.resetPassword;\r\n this.setHeaders('POST', tUrl);\r\n\r\n return this.httpClient.post(tUrl, data, { headers: this.headers, observe: 'response' })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n console.debug('LoginService.resetPassword() --> finalize');\r\n }));\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred. Handle it accordingly.\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n // The backend returned an unsuccessful response code.\r\n // The response body may contain clues as to what went wrong,\r\n console.error(\r\n `Backend returned code ${error.status}, ` +\r\n `body was: ${error.error}`);\r\n }\r\n\r\n switch (error.status) {\r\n case 403:\r\n return of({ error: enum_ErrorMessages.ERRORMESSAGE_403, errorMessage: error });\r\n case 404:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_404);\r\n case 500:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_500);\r\n default:\r\n return throwError(`${error.status} - ${error.error}`);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { GlobalService } from './global.service';\r\nimport { WindowRef } from '../_helpers/window.ref';\r\nimport { Location } from '@angular/common';\r\nimport { ConsoleColors } from '../_enums/consoleColors.enum';\r\n\r\n@Injectable()\r\nexport class NavigationService {\r\n\r\n private _routes: Array < any > = null;\r\n tabbingDebouncerTimeout: any = null;\r\n private _currentStep: number;\r\n private _scrollToTopTimeout: any = null;\r\n\r\n constructor(\r\n private globalService: GlobalService,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private location: Location\r\n ) {\r\n console.debug('NavigationService().constructor()');\r\n }\r\n\r\n initRoutes(routeConfigChildren) {\r\n let rcc = [];\r\n for (let i = 0, len = routeConfigChildren.length; i < len; i++) {\r\n let item = routeConfigChildren[i];\r\n if (item.path !== \"\" && item.path !== \".\" && item.path !== \"/\") {\r\n rcc.push(item);\r\n }\r\n }\r\n this._routes = rcc;\r\n this.updateRouteIndexes();\r\n }\r\n\r\n updateRouteIndexes() {\r\n console.debug('\\n\\n1. updateRouteIndexes() ---------- navigation.service 2020-07-16_15:00:00 ----------');\r\n console.debug('2. this._routes: ', this._routes);\r\n\r\n let routeIndexes = {};\r\n for (let i = 0, len = this._routes.length; i < len; i++) {\r\n let item = this._routes[i];\r\n if (item.path !== \"\" && item.path !== \"/\") {\r\n if (item.hasOwnProperty('data')) {\r\n routeIndexes[item.path] = item.data.step;\r\n }\r\n }\r\n }\r\n this.globalService.calculatorModel.navigationModel.routeIndexes = routeIndexes;\r\n\r\n console.debug('3. routeIndexes: ', routeIndexes);\r\n console.debug('4. this.globalService.calculatorModel.navigationModel.routeIndexes: ', this.globalService.calculatorModel.navigationModel.routeIndexes);\r\n }\r\n\r\n get routes(): any {\r\n return this._routes;\r\n }\r\n\r\n getRoutePrevious(currentStep: number, device: string = 'all') {\r\n let previousStep = currentStep - 1;\r\n let previousRoute = this.routes.find((item) => {\r\n if (item.hasOwnProperty('data')) {\r\n return item.data.step === previousStep && item.data.device.indexOf(device) !== -1;\r\n } else {\r\n return false;\r\n }\r\n });\r\n if (!previousRoute) {\r\n return this.getRoutePrevious(previousStep, device);\r\n } else {\r\n return previousRoute;\r\n }\r\n }\r\n\r\n getRouteNext(currentStep: number, device: string = 'all') {\r\n let nextStep = currentStep + 1;\r\n let nextRoute = this.routes.find((item) => {\r\n if (item.hasOwnProperty('data')) {\r\n return item.data.step === nextStep && item.data.device.indexOf(device) !== -1;\r\n } else {\r\n return false;\r\n }\r\n });\r\n if (!nextRoute) {\r\n return this.getRouteNext(nextStep, device);\r\n } else {\r\n return nextRoute;\r\n }\r\n }\r\n\r\n goNext(currentStep: number, device: string = 'all') {\r\n let nextRoute = this.getRouteNext(currentStep, device);\r\n if (nextRoute) {\r\n this.goRoute('/' + this.globalService.calculator.clientCalculator + '/' + nextRoute.path, nextRoute.path);\r\n this.scrollToTop();\r\n }\r\n }\r\n\r\n goBack(currentStep: number, device: string = 'all') {\r\n let previousRoute = this.getRoutePrevious(currentStep, device);\r\n if (previousRoute) {\r\n this.goRoute('/' + this.globalService.calculator.clientCalculator + '/' + previousRoute.path, previousRoute.path);\r\n this.scrollToTop();\r\n }\r\n }\r\n\r\n goBackHistory() {\r\n this.location.back();\r\n }\r\n\r\n goRoute(route: string, path: string = null, replaceUrl: boolean = false) {\r\n\r\n // SET THE currentStep on the parent itself after the navigation happens\r\n // if (path !== null && path !== undefined && path !== \"\") {\r\n // this.currentStep = this.globalService.calculatorModel.navigationModel.routeIndexes[path];\r\n // }\r\n\r\n console.debug('\\n\\n1. goRoute(route: string, path: string) ---------- navigation.service 2020-06-12_21:53:24 ----------');\r\n console.debug('2. route: ', route);\r\n console.debug('3. path: ', path);\r\n\r\n if (!replaceUrl) {\r\n this.router.navigate([route]);\r\n } else {\r\n // this.router.navigate([route], {replaceUrl: true});\r\n this.router.navigate([route]);\r\n }\r\n\r\n this.scrollToTop();\r\n }\r\n\r\n set currentStep(step: number) {\r\n this._currentStep = step;\r\n if (this.globalService.calculatorModel) {\r\n this.globalService.calculatorModel.navigationModel.previousStep = this.globalService.calculatorModel.navigationModel.currentStep;\r\n this.globalService.calculatorModel.navigationModel.currentStep = this._currentStep;\r\n }\r\n }\r\n get currentStep() {\r\n return this._currentStep;\r\n }\r\n\r\n scrollToTop() {\r\n // if (this._scrollToTopTimeout) {\r\n // clearTimeout(this._scrollToTopTimeout);\r\n // }\r\n // this._scrollToTopTimeout = setTimeout((() => {\r\n // //DO SOMETHING BELOW\r\n // console.debug('\\n\\n%c1. scrollTop ----- navigation.service -----', ConsoleColors.HEADING);\r\n\r\n // document.body.scrollTop = 0; // For Safari\r\n // document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera\r\n // this._scrollToTopTimeout = null;\r\n // }).bind(this), 250);\r\n }\r\n\r\n scrollTo(el: Element): void {\r\n console.debug('\\n\\n%c1. scrollTo ----- navigation.service -----', ConsoleColors.HEADING);\r\n console.debug('%c2. scrollTo el', ConsoleColors.HEADING, el);\r\n if ( el ) {\r\n console.debug('3. scrollIntoView');\r\n el.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'nearest' });\r\n }\r\n }\r\n\r\n // public static defaultTabbingKeydownHandler(e) {\r\n\r\n // console.debug('\\n\\n');\r\n // console.debug('=========================================================');\r\n // console.debug('[-->] navigation.helper => defaultTabbingKeydownHandler(e)');\r\n // console.debug('-----------------------------------------------------------');\r\n // console.debug('|__ e: ', e);\r\n\r\n // // let activeElement;\r\n // let activeElement = document.activeElement;\r\n // let isEventProceeding = true;\r\n\r\n // if (e && e.keyCode === 9 && !e.shiftKey) {\r\n // console.debug('|__ CONDITION TRUE e.keyCode === 9 && && !e.shiftKey ');\r\n // // if (activeElement && activeElement.id && activeElement.id === '') {\r\n // // isEventProceeding = false;\r\n // // }\r\n // // else {\r\n // // if (activeElement.id.indexOf('sidebar_menuitem_') === -1) {\r\n // // isEventProceeding = false;\r\n // // }\r\n // // }\r\n // }\r\n // else if (e && e.keyCode === 9 && e.shiftKey) {\r\n // console.debug('|__ CONDITION TRUE e.keyCode === 9 && e.shiftKey ');\r\n // // if (activeElement && activeElement.id && activeElement.id === '') {\r\n // // isEventProceeding = false;\r\n // // }\r\n // // else {\r\n // // if (activeElement.id.indexOf('sidebar_menuitem_') === -1) {\r\n // // isEventProceeding = false;\r\n // // }\r\n // // else {\r\n // // if (activeElement.id === 'sidebar_menuitem_0') {\r\n // // let tabbingRecyclerTop = document.querySelector('.modal-tabbing-recycler-top') as HTMLAnchorElement;\r\n // // if (tabbingRecyclerTop) {\r\n // // tabbingRecyclerTop.focus();\r\n // // return false;\r\n // // }\r\n // // }\r\n // // }\r\n // // }\r\n // }\r\n // else {\r\n // if (activeElement && activeElement.id && activeElement.id === '') {\r\n // isEventProceeding = false;\r\n // }\r\n // else {\r\n // if (activeElement.id.indexOf('sidebar_menuitem_') === -1) {\r\n // isEventProceeding = false;\r\n // }\r\n // }\r\n // }\r\n\r\n // if (!isEventProceeding) {\r\n // console.debug('|__ CANCELLING KEYUP/TABBING EVENT ');\r\n // this.focusOnModalFirstOrLastFocusableItem();\r\n // }\r\n\r\n // console.debug('|__ activeElement: ', activeElement);\r\n // console.debug('|__ activeElement.id: ', activeElement.id);\r\n // console.debug('-----------------------------------------------------------');\r\n // console.debug('[<--] navigation.helper => defaultTabbingKeydownHandler(e)');\r\n // console.debug('=========================================================');\r\n // console.debug('\\n\\n');\r\n\r\n // // if this returns FALSE, it means the event has been cancelled like\r\n // // event.preventDefault, event.stopPropagation and event.stopImmediatePropagation are invoked\r\n // return isEventProceeding;\r\n\r\n // }\r\n\r\n}\r\n","import { HttpClient, HttpErrorResponse, HttpHeaders, HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { environment } from '../../environments/environment';\r\nimport { enum_ErrorMessages } from '../_enums/errorMessage.enum';\r\nimport { throwError } from 'rxjs';\r\nimport { catchError, finalize, map } from 'rxjs/operators';\r\nimport { GlobalService } from './global.service';\r\nimport { ApiService } from './api.service';\r\nimport { PdfModel } from 'src/app/_models';\r\nimport { saveAs } from 'file-saver';\r\n\r\n@Injectable()\r\nexport class PdfService {\r\n\r\n public isGeneratingSoA: boolean = false;\r\n\r\n constructor(private httpClient: HttpClient, private globalService: GlobalService, private apiService: ApiService) {\r\n //console.debug(\"PdfService().constructor()\");\r\n }\r\n\r\n public print() {\r\n if (!this.isGeneratingSoA) {\r\n\r\n this.isGeneratingSoA = true;\r\n\r\n let empId = this.globalService.calculatorModel.members.current.memberNo; //this.apiService.getParameterByName('empId'); //this.globalService.calculatorModel.members.current.memberNo;\r\n let pdfModel = new PdfModel(this, empId);\r\n let dateTimeStamp = new Date();\r\n let filename = `Your-Qantas-Super-Report-${dateTimeStamp.getFullYear()}-${(dateTimeStamp.getMonth() + 1)}-${dateTimeStamp.getDate()}-${dateTimeStamp.getHours()}${dateTimeStamp.getMinutes()}${dateTimeStamp.getSeconds()}.pdf`;\r\n pdfModel.savePdf(filename);\r\n }\r\n }\r\n\r\n generate(pdfQueueKey: string) {\r\n console.debug('PdfService().generatePdf()');\r\n let pdfDate = new Date();\r\n let tUrl = environment.urls.pdfServiceGenerate;\r\n\r\n let empId = this.globalService.calculatorModel.members.current.memberNo;\r\n var url = environment.urls.host + '/' + environment.calculator.clientCode + '/' + environment.calculator.clientCalculator + '/' + environment.calculator.soAUrl;\r\n return this.httpClient.post(tUrl, {\r\n 'referrerUrl': url,\r\n 'pdfTitle': 'Testing Title',\r\n 'pdfDate': pdfDate.toUTCString(),\r\n 'calculatorModel': {\r\n 'members': this.globalService.calculatorModel.members,\r\n 'results': this.globalService.calculatorModel.results,\r\n 'testingModel': this.globalService.calculatorModel.testingModel,\r\n 'currentScenario': this.globalService.calculatorModel.currentScenario\r\n },\r\n 'clientCode': environment.calculator.clientCode,\r\n 'clientCalculator': environment.calculator.clientCalculator,\r\n 'pdfQueueKey': pdfQueueKey,\r\n 'empId': empId\r\n }, {\r\n responseType: 'blob'\r\n })\r\n .pipe(map((res) => {\r\n let blob = new Blob([res], {\r\n type: 'application/pdf'\r\n });\r\n return blob;\r\n }))\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n //console.debug('PdfService().generatePdf() --> finalize');\r\n this.isGeneratingSoA = false;\r\n }));\r\n }\r\n\r\n getPdfModel(pdfQueueKey: string) {\r\n console.debug(`PdfService().getPdfModel(${pdfQueueKey})`);\r\n let pdfDate = new Date();\r\n let tUrl = environment.urls.pdfServiceGetPdfModel + '?pdfQueueKey=' + pdfQueueKey;\r\n\r\n return this.httpClient.get(tUrl, {\r\n observe: 'response'\r\n })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n //console.debug('PdfService().getPdfModel() --> finalize');\r\n this.isGeneratingSoA = false;\r\n }));\r\n }\r\n\r\n setPdfModel() {\r\n console.debug(`PdfService().setPdfModel()`);\r\n let pdfDate = new Date();\r\n let tUrl = environment.urls.pdfServiceSetPdfModel;\r\n\r\n return this.httpClient.post(tUrl, {\r\n 'referrerUrl': environment.urls.host + '/' + environment.calculator.clientCode + '/' + environment.calculator.clientCalculator + '/' + environment.calculator.soAUrl,\r\n 'pdfTitle': 'Testing Title',\r\n 'pdfDate': pdfDate.toUTCString(),\r\n 'calculatorModel': {\r\n 'members': this.globalService.calculatorModel.members,\r\n 'results': this.globalService.calculatorModel.results,\r\n 'testingModel': this.globalService.calculatorModel.testingModel,\r\n 'currentScenario': this.globalService.calculatorModel.currentScenario\r\n },\r\n 'clientCode': environment.calculator.clientCode,\r\n 'clientCalculator': environment.calculator.clientCalculator\r\n }, {\r\n observe: 'response'\r\n })\r\n .pipe(catchError(this.handleError))\r\n .pipe(finalize(() => {\r\n //console.debug('PdfService().setPdfModel() --> finalize');\r\n //this.isGeneratingSoA = false;\r\n }));\r\n }\r\n\r\n private handleError(error: HttpErrorResponse) {\r\n //console.debug('PdfService().handleError()');\r\n if (error.error instanceof ErrorEvent) {\r\n // A client-side or network error occurred. Handle it accordingly.\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n // The backend returned an unsuccessful response code.\r\n // The response body may contain clues as to what went wrong,\r\n console.error(\r\n `Backend returned code ${error.status}, ` +\r\n `body was: ${error.error}`);\r\n }\r\n\r\n switch (error.status) {\r\n case 403:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_403);\r\n case 404:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_404);\r\n case 500:\r\n return throwError(enum_ErrorMessages.ERRORMESSAGE_500);\r\n default:\r\n return throwError(`${error.status} - ${error.error}`);\r\n }\r\n }\r\n}\r\n","export default \"@media (max-width: 767px) {\\r\\n /* On small screens, the nav menu spans the full width of the screen. Leave a space for it. */\\r\\n .body-content {\\r\\n padding-top: 50px;\\r\\n }\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYXBwLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSw2RkFBNkY7RUFDN0Y7SUFDRSxpQkFBaUI7RUFDbkI7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2FwcC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgLyogT24gc21hbGwgc2NyZWVucywgdGhlIG5hdiBtZW51IHNwYW5zIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBzY3JlZW4uIExlYXZlIGEgc3BhY2UgZm9yIGl0LiAqL1xyXG4gIC5ib2R5LWNvbnRlbnQge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgfVxyXG59XHJcbiJdfQ== */\"","import { Component, Inject, OnInit, Renderer2 } from '@angular/core';\r\nimport { GlobalService } from './_services/global.service';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n // _globalService: GlobalService;\r\n\r\n constructor(\r\n public globalService: GlobalService,\r\n private renderer: Renderer2,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {\r\n console.debug('AppComponent.construcator()');\r\n // this._globalService = globalService;\r\n this.renderer.addClass(this.document.body, 'wtw-calc-htmlbody');\r\n }\r\n\r\n // constructor(private globalService: GlobalService) {\r\n // console.debug('AppComponent().construcator()');\r\n // }\r\n}\r\n","import { HttpClientModule, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { APP_INITIALIZER, Injectable, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { RouterModule } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AppComponent } from './app.component';\r\nimport './_interfaces/constraint.interface';\r\n\r\nimport { ApiService, ConstraintService, GlobalService, NavigationService } from './_services';\r\n\r\n\r\n//import '../_interfaces/constraint.interface';\r\n@Injectable()\r\nexport class HttpRequestInterceptor implements HttpInterceptor {\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n console.log(`HttpRequestInterceptor.intercept(${req.url})`);\r\n\r\n if (req.url.indexOf('soa') == -1) {\r\n req = req.clone({\r\n withCredentials: environment.switches.withCredentials\r\n });\r\n }\r\n return next.handle(req);\r\n }\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: \"ng-cli-universal\" }),\r\n HttpClientModule,\r\n HttpClientModule,\r\n RouterModule.forRoot([\r\n { path: \"\", redirectTo: \"retbenefit\", pathMatch: \"full\" },\r\n {\r\n path: \"retbenefit\",\r\n loadChildren: \"./retbenefit/app.module#RetBenefit_Module\"\r\n }\r\n ])\r\n ],\r\n providers: [\r\n ApiService,\r\n GlobalService,\r\n NavigationService,\r\n [\r\n { provide: HTTP_INTERCEPTORS, useClass: HttpRequestInterceptor, multi: true }\r\n ],\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: (globalService: GlobalService) => () => {\r\n globalService.isLoadingApp = true;\r\n },\r\n multi: true,\r\n deps: [GlobalService]\r\n },\r\n ConstraintService\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {\r\n constructor(private globalService: GlobalService) { }\r\n}\r\n","export const environment = {\r\n production: true,\r\n calculator: {\r\n clientCode: 'qantas',\r\n clientId: '5e81337781651c156cc578c1',\r\n apiKey: '41affd5c-7b7c-41d3-9551-987891cafc2e',\r\n clientCalculator: 'retbenefit',\r\n soAUrl: 'soa',\r\n faqUrl: 'faq'\r\n },\r\n calculators: [\r\n {\r\n pageTitleSuffix: 'Retirement Benefit - Qantas',\r\n clientCalculator: 'retbenefit',\r\n clientCode: 'qantas',\r\n clientId: '5e81337781651c156cc578c1',\r\n apiKey: '41affd5c-7b7c-41d3-9551-987891cafc2e'\r\n }\r\n ],\r\n appInsights: {\r\n instrumentationKey: '1e0c864c-8bee-40ab-8959-97bfadd242d4',\r\n enableDebug: true\r\n },\r\n switches: {\r\n // useDummyContent: false, //for testing static JSON content\r\n // useDummyInit: false, //for using dummy init data\r\n // isTestingToolVisible: false\r\n useDummyContent: false,\r\n useDummyInit: false, //for using dummy init data\r\n useDummyResults: false, //for unit testing of ApiService and ContentsService\r\n isTestingToolVisible: false,\r\n withCredentials: true,\r\n showPrintPreview: false,\r\n isWidget: false,\r\n apiDataFormat: 'json'\r\n },\r\n urls: {\r\n base: 'https://apps-au.willistowerswatson.com/qantas/api', //'https://apps-au.willistowerswatson.com/qantas/api',//'https://hcbtas-p-calc-qantas-api.azurewebsites.net',\r\n // init: '/app/{0}/{1}', // {0} = clientCode, {1} = clientcalculator\r\n init: '/app', // {0} = clientCode, {1} = clientcalculator\r\n initAfterLogin: '/app', // {0} = clientCode, {1} = clientcalculator\r\n // calc: '/clients/{0}/projection', // {0} = clientCode\r\n calc: '/projection', // {0} = clientCode\r\n content: \"https://cloud90.towerswatson.com/api/content/qantas/retbenefit/en-us\",\r\n\r\n //PDF SOA URLS - local development target the local PdfController. dev/uat/prod environments target Azure Cloud Service.\r\n host: window.location.origin,\r\n pdfServiceGenerate: 'https://apps.willistowerswatson.com/pdf/GeneratePdfPost', //window.location.origin + '/api/pdf/generate',\r\n pdfServiceGetPdfModel: 'https://apps.willistowerswatson.com/pdf/GetPDFModel',\r\n pdfServiceSetPdfModel: 'https://apps.willistowerswatson.com/pdf/SetPDFModel',\r\n\r\n login: '/login',\r\n logout: '/auth/logout?continue=/',\r\n resetPassword: 'NOT_USED_IN_THIS_APP'\r\n }\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","/* (ignored) */"],"sourceRoot":"webpack:///"}