{"version":3,"file":"app-071f3147.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./src/resources/add-client-to-recent-items.ts","webpack://iadviser/./src/resources/attributes/class-attribute.ts","webpack://iadviser/./src/resources/attributes/conditional-if.ts","webpack://iadviser/./src/resources/attributes/input-mask.ts","webpack://iadviser/./src/resources/attributes/listen-to.ts","webpack://iadviser/./src/resources/attributes/sortable.ts","webpack://iadviser/./src/resources/claims-step.ts","webpack://iadviser/./src/resources/constants.ts","webpack://iadviser/./src/resources/decorators/debounce-decorator.ts","webpack://iadviser/./src/resources/device-token-manager.ts","webpack://iadviser/./src/resources/endpoints/endpoints.ts","webpack://iadviser/./src/resources/endpoints/form-endpoint.ts","webpack://iadviser/./src/resources/endpoints/json-endpoint.ts","webpack://iadviser/./src/resources/enums.ts","webpack://iadviser/./src/resources/form-validation-renderer.ts","webpack://iadviser/./src/resources/inactivity.ts","webpack://iadviser/./src/resources/milliseconds.ts","webpack://iadviser/./src/resources/index.ts","webpack://iadviser/./src/resources/interceptors/server-validation.ts","webpack://iadviser/./src/resources/load-lookups.ts","webpack://iadviser/./src/resources/models/client.ts","webpack://iadviser/./src/resources/moment-helpers.ts","webpack://iadviser/./src/resources/paginate.ts","webpack://iadviser/./src/resources/parse-jwt.ts"],"sourcesContent":["import { getAppClientType, getEmailAddress } from './parse-jwt';\r\n\r\nconst EMAIL = getEmailAddress();\r\nconst APP_CLIENT_TYPE = getAppClientType();\r\n\r\nexport function addClientToRecentItems(client) {\r\n const RECENT_CLIENTS = JSON.parse(localStorage.getItem('ia_recent_clients')) ?? [];\r\n\r\n if (!client) {\r\n return RECENT_CLIENTS;\r\n }\r\n\r\n const CLIENT_ID = client.entityId;\r\n const CLIENT_CODE = client.entityCode;\r\n const CLIENT_NAME = client.entityName;\r\n const COMPANY_OFFICE_CODE = client.companyOfficeCode;\r\n const ADVISER_NAME = client.adviserName;\r\n\r\n const CLIENT_EXISTS = RECENT_CLIENTS.some((c: any) => c.entityId === CLIENT_ID);\r\n\r\n if (CLIENT_EXISTS) {\r\n const CLIENT_INDEX = RECENT_CLIENTS.findIndex((c: any) => c.entityId === CLIENT_ID);\r\n\r\n RECENT_CLIENTS.splice(CLIENT_INDEX, 1);\r\n RECENT_CLIENTS.unshift({\r\n appClientType: APP_CLIENT_TYPE,\r\n emailAddress: EMAIL,\r\n entityId: CLIENT_ID,\r\n entityCode: CLIENT_CODE,\r\n entityName: CLIENT_NAME,\r\n companyOfficeCode: COMPANY_OFFICE_CODE,\r\n adviserName: ADVISER_NAME,\r\n });\r\n } else {\r\n RECENT_CLIENTS.unshift({\r\n appClientType: APP_CLIENT_TYPE,\r\n emailAddress: EMAIL,\r\n entityId: CLIENT_ID,\r\n entityCode: CLIENT_CODE,\r\n entityName: CLIENT_NAME,\r\n companyOfficeCode: COMPANY_OFFICE_CODE,\r\n adviserName: ADVISER_NAME,\r\n });\r\n }\r\n\r\n localStorage.setItem('ia_recent_clients', JSON.stringify(RECENT_CLIENTS));\r\n}\r\n\r\nexport function getRecentClientsByAppClientTypeByUserId() {\r\n const RECENT_CLIENTS = JSON.parse(localStorage.getItem('ia_recent_clients')) ?? [];\r\n return RECENT_CLIENTS.filter((x) => x.appClientType === APP_CLIENT_TYPE && x.emailAddress === EMAIL);\r\n}\r\n","/* eslint-disable @typescript-eslint/no-use-before-define */\r\nimport { inject, Parent, getContextFor } from 'aurelia-framework';\r\n\r\nconst removeClassList = (element, val) => {\r\n if (!val) {\r\n return;\r\n }\r\n\r\n element.classList.remove(val);\r\n};\r\n\r\nconst addClassList = (element, val) => {\r\n if (!val) {\r\n return;\r\n }\r\n\r\n element.classList.add(val);\r\n};\r\n\r\n@inject(Element, Parent.of(ClassCustomAttribute))\r\nexport class ClassCustomAttribute {\r\n value: string;\r\n previousClasses: string[] = [];\r\n bindingContext;\r\n parentContext;\r\n\r\n constructor(private element: Element, private parent: any) {}\r\n\r\n bind(bindingContext, overrideContext) {\r\n this.bindingContext = bindingContext;\r\n\r\n if (this.bindingContext && typeof this.bindingContext.styles === 'undefined') {\r\n this.bindingContext = this.parent.bindingContext;\r\n\r\n if (this.bindingContext && typeof this.bindingContext.styles === 'undefined') {\r\n this.bindingContext = getContextFor('styles', { bindingContext, overrideContext }, 0);\r\n }\r\n }\r\n\r\n if (!this.bindingContext || typeof this.bindingContext.styles === 'undefined') {\r\n return;\r\n }\r\n\r\n if (!this.value) {\r\n this.value = '';\r\n }\r\n\r\n // Filter out any classes that do not have substitutes found in the bindingContext styles property\r\n // this prevents them being removed and allows for use-cases where :global {} is being used\r\n const values = this.value.split(' ').filter((val) => {\r\n return this.bindingContext.styles[val];\r\n });\r\n\r\n values.forEach((x) => removeClassList(this.element, x)); // remove the initial friendly names\r\n\r\n this.valueChanged(this.value);\r\n }\r\n\r\n addClass(className: string) {\r\n this.value = `${this.value} ${className}`;\r\n }\r\n\r\n removeClass(className: string) {\r\n this.value = this.value\r\n .split(' ')\r\n .filter((x) => x !== className)\r\n .join(' ');\r\n }\r\n\r\n valueChanged(newValue: string) {\r\n this.previousClasses.forEach((x) => removeClassList(this.element, x));\r\n\r\n this.previousClasses = newValue\r\n .split(' ')\r\n .map((x) => x.trim())\r\n .map((x) => (this.bindingContext?.styles?.[x] ? this.bindingContext.styles[x] : x))\r\n .join(' ') // lookups might map to multiple classes, so join them and then split\r\n .split(' ');\r\n\r\n this.previousClasses.forEach((x) => addClassList(this.element, x));\r\n }\r\n}\r\n","import { autoinject } from 'aurelia-dependency-injection';\r\nimport { customAttribute, bindable, TaskQueue } from 'aurelia-framework';\r\n\r\nconst INPUT_TYPES = ['INPUT', 'SELECT', 'TEXTAREA'];\r\n\r\n@autoinject()\r\n@customAttribute('conditional-if')\r\nexport class ConditionalIf {\r\n @bindable() attribute = null;\r\n @bindable() value = null;\r\n\r\n constructor(private element: Element, private taskQueue: TaskQueue) {}\r\n\r\n attached() {\r\n this.valueChanged(this.value);\r\n }\r\n\r\n valueChanged(value: string) {\r\n setTimeout(() => {\r\n if (value) {\r\n this.element.setAttribute(this.attribute, value);\r\n\r\n if (this.attribute === 'focusme' || this.attribute === 'focus') {\r\n if (INPUT_TYPES.includes(this.element.tagName)) {\r\n (this.element as HTMLElement).focus();\r\n } else {\r\n INPUT_TYPES.forEach((type) => {\r\n const search = this.element.querySelector(type) as HTMLInputElement;\r\n\r\n if (search) {\r\n search.focus();\r\n }\r\n });\r\n }\r\n }\r\n } else {\r\n this.element.removeAttribute(this.attribute);\r\n }\r\n }, 150);\r\n }\r\n}\r\n","import { inject, customAttribute, DOM } from 'aurelia-framework';\r\nimport Inputmask from 'inputmask';\r\nimport { bindable } from 'aurelia-typed-observable-plugin';\r\nimport defaultsDeep from 'lodash/defaultsDeep';\r\n\r\nexport type InputMaskOptions = Inputmask.Options;\r\n\r\n@customAttribute('input-mask')\r\n@inject(DOM.Element)\r\nexport class InputMask {\r\n @bindable public options?: InputMaskOptions;\r\n\r\n private element: HTMLInputElement;\r\n private im: Inputmask.Instance;\r\n\r\n private defaultOptions: InputMaskOptions = {\r\n alias: 'numeric',\r\n digits: '2',\r\n groupSeparator: ',',\r\n digitsOptional: false,\r\n nullable: true,\r\n };\r\n\r\n constructor(element: HTMLInputElement) {\r\n this.element = element;\r\n }\r\n\r\n attached() {\r\n this.applyOptionsAndReMask();\r\n }\r\n\r\n optionsChanged(options: InputMaskOptions) {\r\n if (!options) return;\r\n this.applyOptionsAndReMask();\r\n }\r\n\r\n private applyOptionsAndReMask() {\r\n if (typeof this.options !== 'string') {\r\n defaultsDeep(this.options, this.defaultOptions);\r\n }\r\n\r\n if (this.element.inputmask) {\r\n this.element.inputmask.remove();\r\n }\r\n\r\n this.im = new Inputmask(this.options);\r\n this.im.mask(this.element);\r\n }\r\n}\r\n","import { autoinject, customAttribute } from 'aurelia-framework';\r\n\r\ninterface ListenConfig {\r\n name: string;\r\n handler: (e: Event) => void;\r\n}\r\n\r\ntype ListenValue = ListenConfig | ListenConfig[];\r\n\r\ninterface BoundListenConfig {\r\n name: string;\r\n handler: (e: Event) => void;\r\n}\r\n\r\n@customAttribute('listen-to')\r\n@autoinject\r\nexport class ListenToAttribute {\r\n public value?: ListenValue;\r\n private bindingContext: any;\r\n private boundConfigs: BoundListenConfig[] = [];\r\n\r\n public constructor(private element: Element) {}\r\n\r\n // Aurelia calls this with the parent binding context\r\n protected bind(bindingContext: any, overrideContext: any) {\r\n // in the event that this attribute is on a component in a repeater,\r\n // we need to ensure we have the correct binding context.\r\n // The overrideContext's parentOverrideContext holds the correct context (i.e. the parent view model)\r\n this.bindingContext = overrideContext.parentOverrideContext.bindingContext;\r\n\r\n // Manually trigger initial setup (once you add a bind() method, Aurelia no longer calls valueChanged on initial set)\r\n if (this.value !== undefined) {\r\n this.valueChanged(this.value);\r\n }\r\n }\r\n\r\n protected detached() {\r\n // Cleanup when element leaves DOM\r\n this.removeListeners();\r\n }\r\n\r\n private valueChanged(newValue?: ListenValue) {\r\n this.removeListeners();\r\n\r\n if (!newValue) {\r\n return;\r\n }\r\n\r\n const configs = Array.isArray(newValue) ? newValue : [newValue];\r\n\r\n this.boundConfigs = configs\r\n .filter((config) => config && config.name && config.handler)\r\n .map((config) => ({\r\n name: config.name,\r\n handler: config.handler.bind(this.bindingContext),\r\n }));\r\n\r\n this.boundConfigs.forEach((config) => {\r\n this.element.addEventListener(config.name, config.handler);\r\n });\r\n }\r\n\r\n private removeListeners() {\r\n this.boundConfigs.forEach((config) => {\r\n this.element.removeEventListener(config.name, config.handler);\r\n });\r\n\r\n this.boundConfigs = [];\r\n }\r\n}\r\n","import { autoinject, customAttribute } from 'aurelia-framework';\r\nimport Sortable from 'sortablejs';\r\n\r\nexport interface SortableOptions extends Sortable.Options {}\r\n\r\n@customAttribute('sortable')\r\n@autoinject\r\nexport class SortableAttribute {\r\n private sortableInstance: Sortable | null = null;\r\n\r\n constructor(private element: Element) {}\r\n\r\n valueChanged(newValue: SortableOptions) {\r\n // newValue is the options object passed from the VM\r\n this.destroySortable();\r\n\r\n this.sortableInstance = Sortable.create(this.element as HTMLElement, {\r\n animation: 150,\r\n ...newValue,\r\n });\r\n }\r\n\r\n detached() {\r\n this.destroySortable();\r\n }\r\n\r\n private destroySortable() {\r\n if (this.sortableInstance) {\r\n this.sortableInstance.destroy();\r\n this.sortableInstance = null;\r\n }\r\n }\r\n}\r\n","import { ClaimsService } from 'resources/services/claims-service';\r\nimport { autoinject } from 'aurelia-dependency-injection';\r\nimport { Next, NavigationInstruction, Redirect } from 'aurelia-router';\r\nimport { isProd } from 'resources/utils';\r\nimport { getEmailAddress } from './parse-jwt';\r\n\r\n@autoinject()\r\nexport class ClaimsStep {\r\n constructor(private claimsService: ClaimsService) { }\r\n\r\n async run(navigationInstruction: NavigationInstruction, next: Next) {\r\n const { config: { settings } } = navigationInstruction;\r\n\r\n // prevent diagnostics access on production to non iaanyware users\r\n if (isProd() && navigationInstruction.config.route.includes('diagnostics') && !getEmailAddress().includes('iaanyware.net')) {\r\n console.log('diagnostics only available to iaanyware users')\r\n return next.cancel(new Redirect('/'));\r\n }\r\n\r\n if (settings && settings.claims) {\r\n let { claims } = settings;\r\n\r\n // If route has claims\r\n if (claims?.length) {\r\n\r\n const isNewEditClaim = navigationInstruction.config.name === 'newClaim' || navigationInstruction.config.name === 'claimWizard';\r\n\r\n // separate claims required when routing to policy or quote wizard - ignore new/edit claim route\r\n if (navigationInstruction.params.parentEntityId > 0 && !isNewEditClaim) {\r\n claims = claims.filter(x => x.includes('Policy'));\r\n\r\n if (navigationInstruction.fragment.includes('new') || navigationInstruction.fragment.includes('edit')) {\r\n claims = claims.filter(x => x.includes('Edit'));\r\n }\r\n\r\n } else if (navigationInstruction.params.parentEntityId == 0 && !isNewEditClaim) {\r\n claims = claims.filter(x => x.includes('Quote'));\r\n\r\n if (navigationInstruction.fragment.includes('edit')) {\r\n claims = claims.filter(x => x.includes('Edit'));\r\n }\r\n } else if(isNewEditClaim){\r\n if (navigationInstruction.fragment.includes('edit')) {\r\n claims = claims.filter(x => x.includes('Edit'));\r\n }\r\n }\r\n\r\n const has = await this.claimsService.hasAsync(claims);\r\n\r\n // Does the user have the required claims?\r\n if (has) {\r\n // User has valid claims, allow route to proceed\r\n return next();\r\n } else {\r\n\r\n // User doesn't have stipulated claim\r\n const name = ['clientHome', 'preRenewal', 'app-admin', 'app-admin-view', 'app-accounts', 'app-accounts-view']\r\n if (name.includes(navigationInstruction.config.name)) {\r\n return next.cancel(new Redirect('/'));\r\n } else {\r\n return next.cancel(new Redirect(`/client/${navigationInstruction.params.id}`));\r\n }\r\n }\r\n }\r\n }\r\n\r\n return next();\r\n }\r\n}\r\n","import { CountryCode } from 'libphonenumber-js';\r\nimport { getAppClientType } from './parse-jwt';\r\nexport const AUTH_TOKEN_KEY = 'iaAuthToken';\r\n\r\nexport const localeMap = new Map([\r\n ['AU', 'en-AU'],\r\n ['NZ', 'en-NZ'],\r\n]);\r\n\r\nexport enum eventAggregatorEvents {\r\n sideBarClicked = 'side-bar-clicked',\r\n clientCounts = 'client-counts',\r\n clientSaved = 'client-saved',\r\n clientActiveStatus = 'client-active-status',\r\n}\r\n\r\nexport const NO_TOKEN_FOUND = 'No authorization token found';\r\n\r\nexport const DEFAULT_DATE_TIME_FORMAT_OPTIONS = {\r\n year: 'numeric',\r\n month: '2-digit',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n};\r\nexport const DEFAULT_DATE_FORMAT_OPTIONS = { year: 'numeric', month: '2-digit', day: '2-digit' };\r\n\r\nexport const MAX_INTEGER_VALUE_32_BIT = 2147483647;\r\n\r\nexport const BSB_MASK_AU = '[9][9][9]-[9][9][9]';\r\nexport const BSB_MASK_NZ = '[9][9]-[9][9][9][9]';\r\n\r\nexport const BSB_MASK_OPTIONS = {\r\n alias: '',\r\n mask: getAppClientType() == 'AU' ? BSB_MASK_AU : BSB_MASK_NZ,\r\n};\r\n\r\nexport const ACCOUNT_NUMBER_MASK_AU = '[9][9][9][9][9][9][9][9][9][9][9][9][9][9][9]';\r\nexport const ACCOUNT_NUMBER_MASK_NZ = '[9][9][9][9][9][9][9]-[9][9][9]';\r\n\r\nexport const ACCOUNT_NUMBER_MASK_OPTIONS = {\r\n alias: '',\r\n mask: getAppClientType() == 'AU' ? ACCOUNT_NUMBER_MASK_AU : ACCOUNT_NUMBER_MASK_NZ,\r\n};\r\n","import { debounce as lodashDebounce } from 'lodash';\r\n\r\n/**\r\n * Debounce decorator for Aurelia v1.\r\n *\r\n * Applies lodash's debounce to instance methods or accessors that return a function.\r\n * The debounced function is cached per instance to preserve debounce state across\r\n * repeated property access.\r\n */\r\n\r\n/**\r\n * Options passed through to lodash's debounce implementation.\r\n */\r\ntype DebounceOptions = {\r\n leading?: boolean;\r\n trailing?: boolean;\r\n maxWait?: number;\r\n};\r\n\r\n/**\r\n * Decorate a class method or accessor that returns a function with debounce behavior.\r\n *\r\n * @param delay - Debounce wait time in milliseconds.\r\n * @param options - Debounce behavior flags.\r\n */\r\nexport function debounce(delay = 0, options: DebounceOptions = {}) {\r\n return function (target: unknown, key: string, descriptor: PropertyDescriptor) {\r\n if (!descriptor) {\r\n throw new Error(`@debounce can only be applied to methods or accessors (missing descriptor)`);\r\n }\r\n\r\n /**\r\n * Cache debounced functions per instance.\r\n *\r\n * A single debounced function cannot be shared across instances because it would\r\n * mix `this` bindings and debounce state. WeakMap keys by instance, ensuring each\r\n * instance gets its own debounced function while allowing GC when instances are\r\n * collected.\r\n */\r\n const cache = new WeakMap unknown>();\r\n\r\n // Method descriptor\r\n if (typeof descriptor.value === 'function') {\r\n const original = descriptor.value;\r\n\r\n return {\r\n configurable: true,\r\n enumerable: descriptor.enumerable,\r\n get(this: object) {\r\n let debounced = cache.get(this);\r\n\r\n if (!debounced) {\r\n debounced = lodashDebounce(original.bind(this), delay, options);\r\n cache.set(this, debounced);\r\n }\r\n\r\n return debounced;\r\n },\r\n };\r\n }\r\n\r\n // Accessor descriptor (getter returns a function)\r\n if (typeof descriptor.get === 'function') {\r\n const originalGet = descriptor.get;\r\n\r\n return {\r\n configurable: true,\r\n enumerable: descriptor.enumerable,\r\n get(this: object) {\r\n let debounced = cache.get(this);\r\n\r\n if (!debounced) {\r\n const fn = originalGet.call(this);\r\n\r\n if (typeof fn !== 'function') {\r\n throw new Error(`@debounce accessor must return a function, not: ${typeof fn}`);\r\n }\r\n\r\n debounced = lodashDebounce(fn.bind(this), delay, options);\r\n cache.set(this, debounced);\r\n }\r\n\r\n return debounced;\r\n },\r\n set: descriptor.set,\r\n };\r\n }\r\n\r\n throw new Error(`@debounce can only be applied to methods or accessors that return functions`);\r\n };\r\n}\r\n","export function addDeviceTokenForUser(emailAddress: string, deviceToken: string) { \r\n const DEVICE_TOKENS = JSON.parse(localStorage.getItem('device_tokens')) ?? [];\r\n \r\n const EMAIL_ADDRESS = emailAddress;\r\n const DEVICE_TOKEN = deviceToken;\r\n\r\n const TOKEN_EXISTS = DEVICE_TOKENS.some((dt: any) => dt.emailAddress === emailAddress);\r\n\r\n if (TOKEN_EXISTS) {\r\n const TOKEN_INDEX = DEVICE_TOKENS.findIndex((dt: any) => dt.emailAddress === emailAddress);\r\n\r\n DEVICE_TOKENS.splice(TOKEN_INDEX, 1);\r\n DEVICE_TOKENS.unshift({ emailAddress: EMAIL_ADDRESS, deviceToken: DEVICE_TOKEN });\r\n } else {\r\n DEVICE_TOKENS.unshift({ emailAddress: EMAIL_ADDRESS, deviceToken: DEVICE_TOKEN });\r\n }\r\n\r\n localStorage.setItem('device_tokens', JSON.stringify(DEVICE_TOKENS));\r\n}\r\n\r\nexport function getDeviceTokenForUser(emailAddress: string): string { \r\n const DEVICE_TOKENS = JSON.parse(localStorage.getItem('device_tokens')) ?? [];\r\n \r\n const TOKEN_EXISTS = DEVICE_TOKENS.some((dt: any) => dt.emailAddress === emailAddress);\r\n\r\n if (TOKEN_EXISTS) {\r\n const TOKEN_INDEX = DEVICE_TOKENS.findIndex((dt: any) => dt.emailAddress === emailAddress);\r\n return DEVICE_TOKENS[TOKEN_INDEX].deviceToken;\r\n }\r\n}\r\n","export enum RequestMethod {\r\n get = 'GET',\r\n post = 'POST',\r\n put = 'PUT',\r\n delete = 'DELETE',\r\n auto = 'AUTO',\r\n patch = 'PATCH',\r\n}\r\n\r\nexport enum RequestEncoding {\r\n none = '',\r\n form = 'application/x-www-form-urlencoded',\r\n json = 'application/json',\r\n}\r\n\r\nexport interface Endpoint {\r\n method: RequestMethod;\r\n uri: (input?: any[]) => string;\r\n headers?: any;\r\n mode?: string;\r\n}\r\n\r\nexport interface RequestEx extends Request {\r\n canHandleError?: ((response: Response) => Promise) | null;\r\n}\r\n","import { HttpClient } from 'aurelia-fetch-client';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { RequestEncoding, RequestEx, RequestMethod } from './endpoints';\r\nimport { IEndpoint } from './i-endpoint';\r\n\r\n@autoinject()\r\nexport abstract class FormEndpoint implements IEndpoint<\r\n RouteParameters,\r\n Record,\r\n ResponseType\r\n> {\r\n protected abstract readonly method: RequestMethod;\r\n protected headers: Record = {\r\n 'Content-Type': RequestEncoding.form,\r\n };\r\n\r\n private readonly http: HttpClient;\r\n\r\n public constructor(http: HttpClient) {\r\n this.http = http;\r\n }\r\n\r\n protected abstract uri(routeParameters: RouteParameters): string;\r\n\r\n public async fetch(\r\n routeParameters: RouteParameters,\r\n fields: Record,\r\n queryParams?: null,\r\n additionalHeaders?: Record,\r\n canHandleError: ((response: Response) => Promise) | null = null,\r\n ): Promise<{ data: ResponseType; response: Response }> {\r\n const searchParams = new URLSearchParams();\r\n for (const [key, value] of Object.entries(fields)) {\r\n searchParams.append(key, value as string);\r\n }\r\n\r\n const uri = this.uri(routeParameters);\r\n\r\n const combinedHeaders = {\r\n ...this.headers,\r\n ...additionalHeaders,\r\n };\r\n\r\n const init: RequestInit = {\r\n method: this.method,\r\n headers: combinedHeaders,\r\n body: this.method == 'GET' ? null : searchParams.toString(),\r\n };\r\n\r\n const request = this.http.buildRequest(uri, init) as RequestEx;\r\n request.canHandleError = canHandleError;\r\n\r\n const response = await this.http.fetch(request);\r\n\r\n if (!response.ok) {\r\n throw response;\r\n }\r\n\r\n const data = (await response.json()) as ResponseType;\r\n\r\n return { data, response };\r\n }\r\n}\r\n","import { HttpClient, json } from 'aurelia-fetch-client';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { RequestEx, RequestMethod } from './endpoints';\r\nimport { IEndpoint } from './i-endpoint';\r\n\r\n@autoinject()\r\nexport abstract class JsonEndpoint implements IEndpoint<\r\n RouteParameters,\r\n RequestType,\r\n ResponseType | null\r\n> {\r\n protected abstract readonly method: RequestMethod;\r\n protected headers: Record = {};\r\n\r\n private readonly http: HttpClient;\r\n\r\n constructor(http: HttpClient) {\r\n this.http = http;\r\n }\r\n\r\n protected abstract uri(routeParameters?: RouteParameters): string;\r\n\r\n public async fetch(\r\n routeParameters?: RouteParameters,\r\n body: RequestType | null = null,\r\n queryParams: Record | null = null,\r\n additionalHeaders: Record | null = null,\r\n canHandleError: ((response: Response) => Promise) | null = null,\r\n ): Promise<{ data: ResponseType | null; response: Response }> {\r\n const headers = {\r\n ...this.headers,\r\n ...(additionalHeaders || {}),\r\n };\r\n\r\n const init: RequestInit = {\r\n method: this.method,\r\n headers: headers,\r\n body: body !== null && body !== undefined ? json(body) : undefined,\r\n };\r\n\r\n const params = queryParams ? `?${new URLSearchParams(queryParams)}` : '';\r\n const uri = `${this.uri(routeParameters)}${params}`;\r\n\r\n const request = this.http.buildRequest(uri, init) as RequestEx;\r\n request.canHandleError = canHandleError;\r\n\r\n const response = await this.http.fetch(request);\r\n\r\n if (!response.ok) {\r\n throw response;\r\n }\r\n\r\n // If the response body is empty, we don't want to try to parse it as JSON\r\n let responseBody = await response.json().catch(() => null);\r\n\r\n if (responseBody === null) {\r\n responseBody = undefined;\r\n }\r\n\r\n return { data: responseBody, response };\r\n }\r\n}\r\n","export enum AppTheme {\r\n LIGHT = 'light',\r\n BLUE = 'blue',\r\n DARK = 'dark',\r\n}\r\n\r\nexport enum ProfilePages {\r\n GENERAL = 1,\r\n SALES = 2,\r\n BRANCH = 3,\r\n CONTACT = 4,\r\n FSG = 5,\r\n QUESTIONS = 6,\r\n ASSOCIATIONS = 7,\r\n NOTES = 8,\r\n CONSENT = 9,\r\n}\r\n\r\nexport const enum PageMode {\r\n EDIT = 'edit',\r\n READONLY = 'readonly',\r\n}\r\n\r\nexport const enum ClientType {\r\n CLIENT = 600000000,\r\n PROSPECT = 600000001,\r\n}\r\n\r\nexport const enum EAddressType {\r\n email = 601000000,\r\n website = 2,\r\n}\r\n\r\nexport enum ButtonTranslationKeys {\r\n EDIT = 'buttonLabels:edit',\r\n CANCEL = 'buttonLabels:cancel',\r\n}\r\n\r\nexport enum ApplicationCountryCodes {\r\n AUSTRALIA = 'AU',\r\n NEW_ZEALAND = 'NZ',\r\n}\r\n\r\nexport enum TaskNotificationTypes {\r\n ALL = 0,\r\n OVERDUE = 1,\r\n DUE_TODAY = 2,\r\n UPCOMING = 3,\r\n COMPLETE = 4,\r\n}\r\n\r\nexport enum DocType {\r\n Document = 1,\r\n Task = 2,\r\n FileNote = 3,\r\n}\r\n\r\nexport enum GenerationStatus {\r\n NotFound = 0,\r\n DeQueued = 1,\r\n Queued = 2,\r\n Processing = 3,\r\n Ready = 4,\r\n Aborted = 5,\r\n Error = 6,\r\n New = 7,\r\n}\r\n\r\nexport enum PartyInstanceType {\r\n Adviser = 600000000,\r\n Bank = 600000001,\r\n BankBranch = 600000002,\r\n Client = 600000003,\r\n Company = 600000005,\r\n CompanyOffice = 600000007,\r\n Insurer = 600000008,\r\n InsurerOffice = 600000009,\r\n PremiumFunder = 600000010,\r\n Referral = 600000011,\r\n Underwriter = 600000012,\r\n InsuredName = 600000013,\r\n Prospect = 600000014,\r\n Payee = 600000015,\r\n SurchargePayee = 600000016,\r\n}\r\n\r\nexport enum DocCreationProgress {\r\n Error = -99,\r\n Not_Submitted = -2,\r\n Submitted = -1,\r\n New = 0,\r\n Started = 1,\r\n Fetching_Model = 2,\r\n Model_Fetched = 3,\r\n Rendering_Html = 4,\r\n Html_Rendered = 5,\r\n Rendering_Pdf = 6,\r\n Pdf_Rendered = 7,\r\n Rendering_Csv = 8,\r\n Csv_Rendered = 9,\r\n Completed = 10,\r\n}\r\n\r\nexport enum ReportType {\r\n View = 1,\r\n Pdf = 2,\r\n Csv = 4,\r\n}\r\n\r\nexport enum MandatoryDocType {\r\n Fsg = 0,\r\n Toe = 1,\r\n}\r\n","import { RenderInstruction, ValidateResult } from 'aurelia-validation';\r\n\r\nexport class FormValidationRenderer {\r\n render(instruction: RenderInstruction) {\r\n for (const { result, elements } of instruction.unrender) {\r\n for (const element of elements) {\r\n this.remove(element, result);\r\n }\r\n }\r\n\r\n for (const { result, elements } of instruction.render) {\r\n for (const element of elements) {\r\n this.add(element, result);\r\n }\r\n }\r\n }\r\n\r\n add(element: Element, result: ValidateResult) {\r\n if (result.valid) {\r\n return;\r\n }\r\n\r\n const formGroup = element.parentElement;\r\n if (!formGroup) {\r\n return;\r\n }\r\n\r\n if (formGroup['au']?.class?.viewModel) {\r\n formGroup['au'].class.viewModel.addClass('alert');\r\n } else {\r\n formGroup.classList.add('alert');\r\n }\r\n\r\n formGroup.classList.add('auFormInputError');\r\n\r\n if (element.tagName === 'IA-NUMERIC') {\r\n element.classList.add('alert--important');\r\n }\r\n\r\n // Select2\r\n if (element.getAttributeNames().includes('dynamic.bind')) {\r\n const select2SpanElement = element.getElementsByClassName('select2-selection select2-selection--single')[0];\r\n if (select2SpanElement) {\r\n select2SpanElement.classList.add('alert');\r\n }\r\n\r\n const select2SpanElement2 = element.getElementsByClassName(\r\n 'select2 select2-container select2-container--default',\r\n )[0];\r\n if (select2SpanElement2) {\r\n select2SpanElement2.classList.add('alert');\r\n }\r\n }\r\n\r\n // add the has-error class to the enclosing form-group div\r\n // formGroup.classList.add('has-error');\r\n\r\n // add help-block\r\n // const message = document.createElement('span');\r\n // message.className = 'help-block validation-message';\r\n // message.textContent = result.message;\r\n // message.id = `validation-message-${result.id}`;\r\n // formGroup.appendChild(message);\r\n }\r\n\r\n remove(element: Element, result: ValidateResult) {\r\n if (result.valid) {\r\n return;\r\n }\r\n\r\n const formGroup = element.parentElement;\r\n if (!formGroup) {\r\n return;\r\n }\r\n\r\n if (formGroup['au']?.class?.viewModel) {\r\n formGroup['au'].class.viewModel.removeClass('alert');\r\n } else {\r\n formGroup.classList.remove('alert');\r\n }\r\n\r\n formGroup.classList.remove('auFormInputError');\r\n\r\n if (element.tagName === 'IA-NUMERIC') {\r\n element.classList.remove('alert--important');\r\n }\r\n\r\n // Select2\r\n if (element.getAttributeNames().includes('dynamic.bind')) {\r\n const select2SpanElement = element.getElementsByClassName('select2-selection select2-selection--single')[0];\r\n if (select2SpanElement) {\r\n select2SpanElement.classList.remove('alert');\r\n }\r\n\r\n const select2SpanElement2 = element.getElementsByClassName(\r\n 'select2 select2-container select2-container--default',\r\n )[0];\r\n if (select2SpanElement2) {\r\n select2SpanElement2.classList.remove('alert');\r\n }\r\n }\r\n }\r\n}\r\n","import { EventAggregator } from 'aurelia-event-aggregator';\r\nimport { milliseconds } from './milliseconds';\r\nimport { autoinject } from 'aurelia-dependency-injection';\r\nimport { BroadcastChannel } from 'broadcast-channel';\r\n\r\n@autoinject()\r\nexport class Inactivity {\r\n public timeoutValue;\r\n public timer;\r\n public channel;\r\n\r\n constructor(private ea: EventAggregator) {}\r\n\r\n public timedOut(): void {\r\n this.ea.publish('ia-logout');\r\n }\r\n\r\n public start(): void {\r\n if (this.timer) {\r\n window.clearTimeout(this.timer);\r\n }\r\n\r\n this.timer = window.setTimeout(this.timedOut.bind(this), this.timeoutValue);\r\n }\r\n\r\n public reset(): void {\r\n window.clearTimeout(this.timer);\r\n this.start();\r\n\r\n this.channel.postMessage('reset');\r\n }\r\n\r\n public initialise(hours: number | string, minutes: number | string, seconds: number | string): void {\r\n this.channel = new BroadcastChannel('inactivity-listener');\r\n\r\n document.addEventListener('mousemove', this.reset.bind(this), false);\r\n document.addEventListener('mousedown', this.reset.bind(this), false);\r\n document.addEventListener('keypress', this.reset.bind(this), false);\r\n document.addEventListener('touchmove', this.reset.bind(this), false);\r\n\r\n this.timeoutValue = milliseconds(Number(hours), Number(minutes), Number(seconds));\r\n\r\n this.start();\r\n\r\n this.channel.onmessage = (e) => {\r\n window.clearTimeout(this.timer);\r\n this.start();\r\n };\r\n }\r\n}\r\n","/**\r\n * Converts hours, minutes, and seconds to milliseconds\r\n * @param h - Hours (can be decimal or negative)\r\n * @param m - Minutes (can be decimal or negative)\r\n * @param s - Seconds (can be decimal or negative)\r\n * @returns Total milliseconds\r\n */\r\nexport const milliseconds = (h: number, m: number, s: number): number => \r\n (h * 60 * 60 + m * 60 + s) * 1000;\r\n","import { FrameworkConfiguration, PLATFORM } from 'aurelia-framework';\r\nimport { i18tnValidation } from 'resources/startup/i18tn-validation';\r\n\r\nexport function configure(config: FrameworkConfiguration) {\r\n i18tnValidation(config.aurelia);\r\n\r\n config.globalResources([\r\n PLATFORM.moduleName('./attributes/class-attribute'),\r\n PLATFORM.moduleName('./attributes/conditional-if'),\r\n PLATFORM.moduleName('./attributes/input-mask'),\r\n PLATFORM.moduleName('./attributes/listen-to'),\r\n PLATFORM.moduleName('./attributes/sortable'),\r\n PLATFORM.moduleName('./value-converters/chunk'),\r\n PLATFORM.moduleName('./value-converters/currency-format'),\r\n PLATFORM.moduleName('./value-converters/empty-as-null'),\r\n PLATFORM.moduleName('./value-converters/paginate'),\r\n PLATFORM.moduleName('./value-converters/pretty-date'),\r\n PLATFORM.moduleName('./value-converters/slice'),\r\n PLATFORM.moduleName('./value-converters/to-upper-case'),\r\n PLATFORM.moduleName('./value-converters/safe-html'),\r\n PLATFORM.moduleName('./value-converters/variable-case'),\r\n PLATFORM.moduleName('./value-converters/yes-no'),\r\n // plopmarker: auto inserted global resources from yarn generate will be inserted here\r\n ]);\r\n}\r\n","import { ServerErrorDescription } from 'store/interfaces';\r\n\r\n// Extend the Error class to hold an array of server errors\r\nexport class ServerError extends Error {\r\n constructor(public serverErrors: Array) {\r\n super();\r\n }\r\n}\r\n","import { Container } from 'aurelia-framework';\r\nimport { LookupDataService } from './services/lookup-data';\r\n\r\nexport async function loadLookups(lookups): Promise {\r\n const lookupDataService: LookupDataService = Container.instance.get(LookupDataService);\r\n\r\n const activeInactive = await lookupDataService.activeInactive();\r\n const completeIncomplete = await lookupDataService.completeIncomplete();\r\n const claimStatus = await lookupDataService.claimStatus();\r\n const claimType = await lookupDataService.claimType();\r\n const clientRole = await lookupDataService.clientRole();\r\n const companyOffice = await lookupDataService.companyOffice();\r\n const searchType = await lookupDataService.searchType();\r\n const quoteStatusType = await lookupDataService.quoteStatusType();\r\n const allowableDocumentTypes = await lookupDataService.allowableDocumentTypes();\r\n\r\n return {\r\n ...lookups,\r\n activeInactive,\r\n completeIncomplete,\r\n claimStatus,\r\n claimType,\r\n clientRole,\r\n companyOffice,\r\n searchType,\r\n quoteStatusType,\r\n allowableDocumentTypes,\r\n };\r\n}\r\n","import { EAddressType } from 'resources/enums';\r\nimport { jsonDateToDisplayDate } from 'resources/utilities/json-date-to-display-date';\r\nimport { CountryCodes } from 'components/ia-address-autocomplete/address-finder';\r\nimport { IQceResponse } from 'components/qce/qce-typings';\r\nimport { EntityActionType, EntityType, EntityMode, PremiumFunder } from 'routes/app-adviser/client/quotes/interfaces';\r\nimport { IBranchDetail } from 'interfaces/i-branch-detail';\r\nimport { ISale } from 'interfaces/i-sale';\r\nimport { IGeneralDetail } from 'interfaces/i-general-detail';\r\nimport { INotificationGroup } from 'interfaces/i-notification-group';\r\nimport { ITaskGroup } from 'interfaces/i-task-group';\r\nimport { IFieldValueDefiniton } from 'interfaces/lookups/i-field-value-definition';\r\nimport { IMandatoryFieldValueDefinition } from 'interfaces/lookups/i-mandatory-field-value-definition';\r\n\r\nexport interface NewClient {\r\n generalDetail: IGeneralDetail;\r\n sales: ISale;\r\n branchDetail: IBranchDetail;\r\n allowAddAddress: boolean;\r\n addresses: Address[];\r\n preferredPhone: Phone;\r\n phones: Phone[];\r\n preferredEmail: Email;\r\n emails: Email[];\r\n allowAddStaff: boolean;\r\n staff: StaffMember[];\r\n websites: Website[];\r\n guid?: string;\r\n}\r\n\r\nexport interface ClientHome {\r\n notificationGroups: INotificationGroup[];\r\n taskGroups: ITaskGroup[];\r\n}\r\n\r\nexport interface ClientGeneral {\r\n generalDetail: IGeneralDetail;\r\n guid?: string;\r\n}\r\n\r\nexport interface ClientNotes {\r\n notes: Note[];\r\n guid?: string;\r\n}\r\n\r\nexport interface ClientHome {\r\n notifications: any[];\r\n tasks: any[];\r\n general: any[];\r\n financial: any[];\r\n}\r\n\r\nexport interface ClientContact {\r\n showModal: boolean;\r\n editModalView: string;\r\n showDeleteAddressModal: boolean;\r\n showDeletePhoneModal: boolean;\r\n showDeleteEmailModal: boolean;\r\n showDeleteWebsiteModal: boolean;\r\n editAddressModel: Address;\r\n editPhoneModel: Phone;\r\n editEmailModel: Email;\r\n editWebsiteModel: Website;\r\n allowAddAddress: boolean;\r\n addresses: Address[];\r\n preferredPhoneOrig: Phone;\r\n preferredPhone: Phone;\r\n phones: Phone[];\r\n preferredEmailOrig: Email;\r\n preferredEmail: Email;\r\n emails: Email[];\r\n websites: Website[];\r\n guid?: string;\r\n}\r\n\r\nexport class StaffMember {\r\n clientStaffId?: number;\r\n clientRoleId: number;\r\n securityUsersId: number;\r\n comment?: string;\r\n allowedClientRoles: IFieldValueDefiniton[];\r\n userFullName?: string;\r\n guid?: string;\r\n}\r\n\r\nexport class Referrer {\r\n referralId?: number;\r\n availableReferrers: IFieldValueDefiniton[];\r\n guid?: string;\r\n}\r\n\r\nexport class Address {\r\n id?: number;\r\n typeId: number;\r\n addressee: string;\r\n addressLine1: string;\r\n addressLine2: string;\r\n addressLine3: string;\r\n countryCode: string;\r\n country: string;\r\n suburb: string;\r\n region: string;\r\n state: string;\r\n postCode: string;\r\n googleText: string;\r\n allowDelete = false;\r\n allowChangeType = true;\r\n latitude: number;\r\n longitude: number;\r\n allowedAddressTypes?: IMandatoryFieldValueDefinition[];\r\n guid?: string;\r\n focus = false;\r\n showAddressFinderValidation = false;\r\n manuallyAddLocation = false;\r\n appClientType: string;\r\n addressTypeLabel?: string;\r\n\r\n isEmpty() {\r\n return !this.addressLine1 &&\r\n !this.addressLine2 &&\r\n !this.addressLine3 &&\r\n !this.suburb &&\r\n !this.region &&\r\n !this.state &&\r\n !this.postCode;\r\n }\r\n}\r\n\r\nexport class Phone {\r\n id?: number;\r\n typeId = 601000000;\r\n preferredFlag: boolean;\r\n countryCode: string;\r\n telephoneNumber: string;\r\n allowDelete = false;\r\n guid?: string;\r\n contact: string;\r\n focus = false;\r\n\r\n toJSON() {\r\n return {\r\n allowDelete: this.allowDelete,\r\n countryCode: this.countryCode,\r\n guid: this.guid,\r\n id: this.id,\r\n typeId: this.typeId,\r\n preferredFlag: this.preferredFlag,\r\n telephoneNumber: this.telephoneNumber,\r\n contact: this.contact,\r\n };\r\n }\r\n\r\n isEmpty() {\r\n return !this.telephoneNumber;\r\n }\r\n}\r\n\r\nexport class Email {\r\n id?: number;\r\n typeId: EAddressType = EAddressType.email;\r\n preferredFlag: boolean;\r\n emailAddress: string;\r\n allowDelete = false;\r\n guid?: string;\r\n contact: string;\r\n focus = false;\r\n\r\n isEmpty() {\r\n return !this.emailAddress;\r\n }\r\n}\r\n\r\nexport class Website {\r\n id?: number;\r\n typeId: EAddressType = EAddressType.website;\r\n url: string;\r\n allowDelete = false;\r\n guid?: string;\r\n focus = false;\r\n\r\n isEmpty() {\r\n return !this.url;\r\n }\r\n}\r\n\r\nexport class Note {\r\n id?: number;\r\n typeId: number;\r\n note: string;\r\n createdBy: string;\r\n createdDate: string;\r\n guid?: string;\r\n focus = false;\r\n isNewMode?: boolean;\r\n isEditMode?: boolean;\r\n editModel?: any;\r\n\r\n isEmpty() {\r\n return !this.typeId || !this.note;\r\n }\r\n\r\n get createdDateForDisplay() {\r\n return jsonDateToDisplayDate(this.createdDate);\r\n }\r\n}\r\n\r\nexport interface SummaryTransactions {\r\n activeInsuredNameCount: number;\r\n activeQuoteCount: number;\r\n activePolicyCount: number;\r\n activeClaimCount: number;\r\n}\r\n\r\nexport interface GeneralCard {}\r\n\r\nexport interface NewFSGDistribution {\r\n guid?: string;\r\n clientDocumentHistoryId: number;\r\n financialServicesGuideId: number;\r\n distributionDate: string;\r\n distributionTypeId: number;\r\n}\r\n\r\nexport class ClientAssociation {\r\n guid?: string;\r\n clientAssociatedClientId?: number;\r\n clientId: number;\r\n associatedClientId?: number;\r\n clientCode?: string;\r\n clientName?: string;\r\n comment?: string;\r\n association?: 'One-Way' | 'Two-Way';\r\n focus = false;\r\n isNewMode?: boolean;\r\n\r\n isEmpty() {\r\n return !this.associatedClientId;\r\n }\r\n}\r\n\r\nexport class ClientInsuredName {\r\n guid?: string;\r\n clientInsuredPartyId?: number;\r\n clientId: number;\r\n insuredName: string;\r\n anzsicOccupationId: number;\r\n occupation: string;\r\n occupationDescription: string;\r\n activeFlag: boolean;\r\n businessNumber: string;\r\n gstExemptFlag: boolean;\r\n gstRegisteredFlag: boolean;\r\n irdNumber?: number;\r\n businessEntityTypeId?: number;\r\n businessEntityType?: string;\r\n comment?: string;\r\n soaTypeId?: number;\r\n searchDateUtc?: Date;\r\n searchRegisterName?: string;\r\n clientDisclosureTypeId: number;\r\n acceptedWholesale: boolean;\r\n acceptedWholesaleOptedIntoRetail: boolean;\r\n}\r\n\r\nexport class ClientQuote {\r\n quoteId?: number;\r\n coverNumber?: string;\r\n quoteType?: string;\r\n quoteStatusTypeId?: number;\r\n quoteStatusType?: string;\r\n riskClassName?: string;\r\n effectiveDate?: string;\r\n expiryDate?: string;\r\n createdBy?: string;\r\n createdDate?: string;\r\n modifiedBy?: string;\r\n modifiedDate?: string;\r\n reason?: string;\r\n referralId?: number;\r\n comment?: string;\r\n policyDescription?: string;\r\n showQuoteDetailsModal?: boolean;\r\n}\r\n\r\nexport class DeclineQuote {\r\n guid?: string;\r\n coverNumber: string;\r\n createdBy: string;\r\n createdDate: Date;\r\n modifiedBy?: string;\r\n modifiedDate?: Date;\r\n riskGroup: string;\r\n quoteStatus: string;\r\n effectiveDate: Date;\r\n expiryDate: Date;\r\n comment?: string;\r\n declineTypId?: number;\r\n}\r\n\r\nexport class ProposalStatus {\r\n guid?: string;\r\n quoteProposalStatusHistoryId?: number;\r\n proposalStatusId: number;\r\n createdDate: string;\r\n createdBy: string;\r\n comment?: string;\r\n}\r\n\r\nexport class ProposalStatusHistory {\r\n coverNumber: string;\r\n proposalStatusHistory: ProposalStatus[] = [];\r\n}\r\n\r\nexport class CopyQuote {\r\n quoteId: number;\r\n coverNumber: string;\r\n}\r\n\r\nexport class Comment {\r\n constructor(public comment: string) {}\r\n}\r\n\r\nexport class ClientClaim {\r\n claimId?: number;\r\n coverNumber?: string;\r\n versionNo?: 1;\r\n claimType?: string;\r\n claimCategory?: string;\r\n claimNumber?: string;\r\n insurerClaimNumber?: number;\r\n totalIncurred?: number;\r\n dateOfLoss?: string;\r\n notificationDate?: string;\r\n modifiedDate?: string;\r\n modifiedBy?: string;\r\n claimStatus?: string;\r\n claimStatusId?: number;\r\n showClaimDetailsModal?: boolean;\r\n taskCount?: number;\r\n}\r\n\r\nexport class Policy {\r\n policyId: number;\r\n policyStatusType: string;\r\n coverNumber: string;\r\n policyDescription: string;\r\n expiryDate: string;\r\n amountOutstanding: number;\r\n renewableFlag: true;\r\n hasClaims: true;\r\n numberVersions: number;\r\n availableActions: string[];\r\n policyVersions: PolicyVersion[];\r\n}\r\n\r\nexport class PolicyVersion {\r\n policyId: number;\r\n entityId: number;\r\n entityType: string;\r\n actionType: string;\r\n versionNo: number;\r\n effectiveDate: string;\r\n expiryDate: string;\r\n invoiceAmount?: number;\r\n paymentStatus?: string;\r\n hasClaims?: boolean;\r\n isComplete: boolean;\r\n availableActions: string[];\r\n taskCount?: number;\r\n}\r\n\r\nexport class ConvertQuoteInfo {\r\n guid: string;\r\n entityId: number;\r\n entityType: string;\r\n coverNumber: string;\r\n actionType: string;\r\n class: string;\r\n riskGroup: string;\r\n policyDescription?: string;\r\n effectiveDate: Date;\r\n expiryDate: Date;\r\n renewableFlag: boolean;\r\n paymentDue: string;\r\n convertDisabled: boolean;\r\n friendlyErrors: string[] | null;\r\n applicationDeclarationReceivedFlag: boolean;\r\n insurerPolicyDocumentsSentFlag?: boolean;\r\n insurerPolicyDocumentsSentDate?: string;\r\n insurers: QuoteInsurer[];\r\n reportingTypeId: number;\r\n transactionDescription?: string;\r\n reducedPolicyPeriodFlag?: boolean;\r\n actionId: number;\r\n}\r\n\r\nexport class AdviceDetails {\r\n guid?: string;\r\n soaTypeId: number;\r\n questionsAndResponses: IQceResponse;\r\n}\r\n\r\nexport class DodDetails {\r\n guid?: string;\r\n questionsAndResponses: IQceResponse;\r\n insurers: any[];\r\n}\r\n\r\nexport class RiskDetails {\r\n guid?: string;\r\n questionsAndResponses: IQceResponse;\r\n insurers: any[];\r\n interestedParties: any[];\r\n interestedPartiesPresentFlag: boolean;\r\n}\r\n\r\nexport class AvailableSoaTypes {\r\n soaTypeId: number;\r\n soaType: string;\r\n soaText: string;\r\n activeFlag: boolean;\r\n soaTypeQuestionCollectionId: number;\r\n soaTypeQuestionsPresent: boolean;\r\n soaTypeQuestionsEditable: boolean;\r\n}\r\n\r\nexport class CurrentAdviceType {\r\n public questionsAndResponses: IQceResponse;\r\n constructor(public soaTypeId: number, public guid?: string, questionsAndResponses?: IQceResponse) {\r\n if (questionsAndResponses) {\r\n this.questionsAndResponses = questionsAndResponses;\r\n }\r\n }\r\n}\r\n\r\nexport class QuoteInsurer {\r\n quoteInsurerId: number;\r\n insurerOfficeId: number;\r\n insurerOfficeCode: string;\r\n insurerName: string;\r\n nettPremiumFlag: boolean;\r\n insurerPolicyNumber?: string;\r\n userCanEditInsurerPolicyNumber: boolean;\r\n insurerSettlementDate: string;\r\n minInsurerSettlementDate: string;\r\n maxInsurerSettlementDate: string;\r\n}\r\n\r\nexport class ConvertQuoteResponse {\r\n clientId: number;\r\n invoiceAmount?: number;\r\n policyId: number;\r\n policyVersionId: number;\r\n statusType: string;\r\n versionNo: number;\r\n}\r\n\r\nexport class AdditionalPage {\r\n additionalPageId: number;\r\n fileName?: string;\r\n guid?: string;\r\n locationId: number;\r\n documentType: DocumentType;\r\n readonly: boolean;\r\n blobUrl?: string;\r\n scheduleDataIsPresent?: boolean = null;\r\n}\r\n\r\nexport class AdditionalPageConfig {\r\n isReadOnly: boolean;\r\n readonlyReason: string;\r\n maxAllowableSizeInBytes: number;\r\n templateGeneratorHost: string;\r\n}\r\n\r\nexport class HtmlObject {\r\n constructor(public htmlContent: string) {}\r\n}\r\n\r\nexport enum DocumentType {\r\n Pdf = 'Pdf',\r\n Html = 'Html',\r\n}\r\n\r\nexport class InsuredLocationsRisksConfig {\r\n addLocationAllowed: boolean;\r\n updateLocationAllowed: boolean;\r\n deleteLocationAllowed: boolean;\r\n patchLocationAllowed: boolean;\r\n addRiskAllowed: boolean;\r\n updateRiskAllowed: boolean;\r\n deleteRiskAllowed: boolean;\r\n patchRiskAllowed: boolean;\r\n displayLmiLink: boolean;\r\n isScheme: boolean;\r\n isWebScheme: boolean;\r\n}\r\n\r\nexport class InsuredLocation {\r\n readonly hasRisks: boolean;\r\n readonly risks?: InsuredRisk[];\r\n readonly isPreExistingInsuredLocation: boolean;\r\n\r\n constructor(\r\n public entityId: number,\r\n public insuredLocation = '',\r\n public suburb?: string,\r\n public postCode?: string,\r\n public stateCode?: string,\r\n public region?: string,\r\n public countryCode?: CountryCodes,\r\n public situationId?: number,\r\n public activeFlag = true,\r\n public latitude?: string,\r\n public longitude?: string,\r\n ) {}\r\n}\r\n\r\nexport class Risk {\r\n riskByClassId: number;\r\n riskId: number;\r\n risk: string;\r\n riskName: string;\r\n riskByClassName: string;\r\n availableForSelection: boolean;\r\n unavailableInsurers?: UnavailableInsurers[];\r\n alertText?: string;\r\n}\r\n\r\nexport class UnavailableInsurers {\r\n insurerOfficeCode: string;\r\n insurerOfficeName: string;\r\n}\r\n\r\nexport class InsuredRisk extends Risk {\r\n entityRiskId: number;\r\n situationId: number;\r\n activeFlag: boolean;\r\n isPreExistingInsuredRisk?: boolean;\r\n isPreExistingInsuredLocation?: boolean;\r\n}\r\n\r\nexport class ClientTask {\r\n entityTaskId: number;\r\n dueDate: Date;\r\n assignedTo: string;\r\n folder: string;\r\n description: string;\r\n detail: string;\r\n createdBy: string;\r\n createdDate: number;\r\n modifiedBy?: number;\r\n modifiedDate?: string;\r\n isNewTask: string;\r\n isCompletedTask: string;\r\n isOverdueTask: string;\r\n clientId: string;\r\n}\r\n\r\nexport class EntitiesByInsuredName {\r\n insuredName: string;\r\n clientName: string;\r\n clientCode: string;\r\n premiumFunders: PremiumFunder[];\r\n policies: PremiumFunderPolicy[];\r\n}\r\n\r\nexport class PremiumFunderPolicy {\r\n entityId: number;\r\n entityType: string;\r\n policyType: string;\r\n action: string;\r\n cover: string;\r\n version: number;\r\n classDecription: string;\r\n effectiveDate: string;\r\n expiryDate: string;\r\n clientCost: number;\r\n fundingAmount: number;\r\n paymentStatus: string;\r\n $isSelected?: boolean;\r\n hasError?: boolean;\r\n funderMapping: FunderMapping;\r\n selectedFunderMappingRisk: FunderRisk;\r\n selectedFunderMappingUnderwriter: FunderUnderwriter;\r\n selectedFunderUnderwriter: FunderUnderwriter;\r\n}\r\n\r\nexport class FunderMapping {\r\n chosenRedPlanetRisk: string;\r\n chosenRedPlanetRiskCode?: string;\r\n defaultRedPlanetRiskCode?: string;\r\n defaultRedPlanetRisk?: string;\r\n chosenRedPlanetUnderwriterAbn: string;\r\n chosenRedPlanetUnderwriterCode: string;\r\n chosenRedPlanetUnderwriterName: string;\r\n defaultRedPlanetUnderwriterCode?: string;\r\n entityId: number;\r\n entityType: number;\r\n funderId: number;\r\n risks: FunderRisk[];\r\n underwriters: FunderUnderwriter[];\r\n}\r\n\r\nexport class FunderRisk {\r\n entityId: number;\r\n entityType: number;\r\n redPlanetRiskCode: string;\r\n redPlanetRiskName: string;\r\n}\r\n\r\nexport class FunderUnderwriter {\r\n abn: string;\r\n code: string;\r\n name: string;\r\n}\r\n\r\nexport class FundCover {\r\n constructor(public entityId: number, public entityType: string, public fundingAmount: number, public guid?: string, public chosenRedPlanetRiskCode?: string, public chosenRedPlanetUnderwriterCode?: string, public chosenRedPlanetUnderwriterName?: string, public chosenRedPlanetUnderwriterAbn?: string) {}\r\n}\r\n\r\nexport interface FunderRow {\r\n entityType: string;\r\n entityId: number;\r\n amount: number;\r\n chosenRedPlanetRiskCode?: string;\r\n chosenRedPlanetUnderwriterCode?: string;\r\n chosenRedPlanetUnderwriterName?: string;\r\n chosenRedPlanetUnderwriterAbn?: string;\r\n}\r\n\r\nexport interface FunderRowsRequest {\r\n premiumFunderId: number;\r\n covers: FunderRow[];\r\n}\r\n\r\nexport class FundMultipleCoversRequest {\r\n constructor(public premiumFunderId: number, public covers: FundCover[], public guid?: string, public commissionRate?: number, public numberOfInstalments?: number) {}\r\n}\r\n\r\nexport class FundMultipleCoversResponse {\r\n url: string;\r\n errors: string[];\r\n accessDetails?: PremiumFunderAccessDetails;\r\n}\r\n\r\nexport interface PremiumFunderAccessDetails {\r\n clientAcceptanceUrl?: string | null;\r\n clientAccessCode?: string | null;\r\n quoteEnquiryUrl?: string | null;\r\n olaSuccessUrl?: string | null;\r\n olaCancelUrl?: string | null;\r\n olaSuccessRedirectUrl?: string | null;\r\n paymentRedirectionUrl?: string | null;\r\n paymentRedirectUrl?: string | null;\r\n hasClientAcceptanceUrl?: boolean;\r\n}\r\n\r\nexport interface PremiumFunderAccessPayload {\r\n accessDetails?: PremiumFunderAccessDetails;\r\n clientAcceptanceUrl?: string | null;\r\n hasClientAcceptanceUrl?: boolean | null;\r\n contractDetails?: PremiumFunderContractDetails;\r\n}\r\n\r\nexport interface PremiumFunderContractDetails {\r\n creditor?: string | null;\r\n product?: string | null;\r\n originator?: string | null;\r\n scheme?: string | null;\r\n productGroup?: string | null;\r\n entityCode?: string | null;\r\n amount?: number | null;\r\n amountFinanced?: number | null;\r\n annualRate?: number | null;\r\n applicationFee?: number | null;\r\n applicationFeeOverride?: boolean | null;\r\n instalmentAmount?: number | null;\r\n numberOfInstalments?: number | null;\r\n invoiceNumbers?: string | null;\r\n paymentFrequency?: string | null;\r\n flatRate?: number | null;\r\n flatRateOverride?: boolean | null;\r\n inceptionDate?: string | null;\r\n interest?: number | null;\r\n initialAmountDue?: number | null;\r\n totalAmountRepayable?: number | null;\r\n firstInstalmentPercentage?: number | null;\r\n minimumRetained?: number | null;\r\n doNotRenew?: boolean | null;\r\n amountRetained?: number | null;\r\n commissionType?: string | null;\r\n commissionRate?: number | null;\r\n commission?: number | null;\r\n commissionRateOverriden?: number | null;\r\n createdDate?: string | null;\r\n isCalculated?: boolean | null;\r\n settlementDays?: number | null;\r\n settlementDate?: string | null;\r\n renewedFromLoanNumber?: string | null;\r\n endorsedLoanNumber?: string | null;\r\n externalContractId?: string | null;\r\n customRepaymentSchedule?: boolean | null;\r\n amountCancellable?: number | null;\r\n amountNonCancellable?: number | null;\r\n credContactSeq?: number | null;\r\n credContactName?: string | null;\r\n credContactEmail?: string | null;\r\n endorsementId?: number | null;\r\n signedByFullName?: string | null;\r\n signedByPosition?: string | null;\r\n accountManager?: string | null;\r\n firstPaymentDate?: string | null;\r\n firstPaymentDateOverride?: string | null;\r\n depositType?: string | null;\r\n depositRate?: number | null;\r\n depositAmount?: number | null;\r\n instalmentMerchantFee?: number | null;\r\n quoteAcceptanceStep?: number | null;\r\n currency?: string | null;\r\n source?: string | null;\r\n backgroundFundingStatus?: string | null;\r\n lastInstalmentDate?: string | null;\r\n repaymentFee?: number | null;\r\n skipCalculate?: boolean | null;\r\n customAlpha1?: string | null;\r\n customAlpha2?: string | null;\r\n customDecimal1?: number | null;\r\n customDecimal2?: number | null;\r\n creditorName?: string | null;\r\n displayRateType?: string | null;\r\n stampDuty?: number | null;\r\n allowInertia?: boolean | null;\r\n instalmentsDue?: number | null;\r\n regulated?: boolean | null;\r\n retailFlag?: string | null;\r\n disclosedCommission?: number | null;\r\n invoiceToBeSent?: boolean | null;\r\n fundingSource?: number | null;\r\n accountManagerCode?: string | null;\r\n isOverLimit?: boolean | null;\r\n isUsingSplitSettlements?: boolean | null;\r\n}\r\n\r\nexport class FunderCredential {\r\n public readonly adviserFunderCredentialsId = 0;\r\n\r\n constructor(\r\n public premiumFunderId: number,\r\n public premiumFunderCode: string,\r\n public premiumFunderName: string,\r\n public adviserId: number,\r\n public $isActive = false,\r\n public username = '',\r\n public password = '',\r\n public confirmPassword = '',\r\n public guid?: string,\r\n public $isEditable = false,\r\n public $hasCredential = false,\r\n public $isNewCredential = false,\r\n public $isDelete = false,\r\n ) {}\r\n}\r\n\r\nexport class EmailProfile {\r\n securityUserSmtpCredentialsId: number;\r\n securityUserId: number;\r\n userName: string;\r\n unencryptedPassword: string;\r\n hostName: number;\r\n port: boolean;\r\n useSsl: boolean;\r\n}\r\nexport class InsurerConfig {\r\n addInsurerAllowed: boolean;\r\n deleteInsurerAllowed: boolean;\r\n changeNettPremiumFlagAllowed: boolean;\r\n changeCoInsuredAllowed: boolean;\r\n changePercentageHeldAllowed: boolean;\r\n changeLeadInsurerAllowed: boolean;\r\n addMultipleInsurersWhereNotCoInsuredAllowed: boolean;\r\n displayUfiInformation: boolean;\r\n displayOtherQuotes: boolean;\r\n displayPdsLinks: boolean;\r\n displayLmiLink: boolean;\r\n validUnderwriterProcessTypeIds: string;\r\n isReadOnly: boolean;\r\n anzsicOccupationId: number;\r\n}\r\n\r\nexport class Insurer {\r\n insurerId: number;\r\n insurerOfficeId: number;\r\n insurerOfficeCode: string;\r\n insurerOfficeName: string;\r\n claimsPayingRating?: string;\r\n claimsPayingRatingSource?: string;\r\n isUfiInsurer: boolean;\r\n autoRatedRisksPresentFlag: boolean;\r\n insurerProcessingTypeId: number;\r\n insurerGstExemptFlag: boolean;\r\n totalDueByClient: number;\r\n}\r\n\r\nexport class EntityInsurer extends Insurer {\r\n constructor(\r\n public underwriters: EntityUnderwriter[] = [],\r\n public entityInsurerId?: number,\r\n public nettPremiumFlag = false,\r\n public percentageHeld = 0,\r\n public recommendedFlag = false,\r\n public fapInUseFlag = false,\r\n ) {\r\n super();\r\n }\r\n}\r\n\r\nexport class Underwriter {\r\n insurerUnderwriterId: number;\r\n underwriterId: number;\r\n underwriterCode: string;\r\n underwriterName: string;\r\n australianAuthorisedFlag?: boolean;\r\n claimsPayingRating?: string;\r\n claimsPayingRatingSource?: string;\r\n isUfiUnderwriter: boolean;\r\n underwriterProcessingTypeId: number;\r\n}\r\n\r\nexport class EntityUnderwriter extends Underwriter {\r\n constructor(\r\n public entityInsurerId?: number,\r\n public selectedFlag = false,\r\n public percentageHeld = 0,\r\n public entityInsurerUnderwriterId?: number,\r\n ) {\r\n super();\r\n }\r\n}\r\n\r\nexport class EntityInsurers {\r\n coInsuredFlag = false;\r\n insurers: EntityInsurer[] = [];\r\n}\r\n\r\nexport enum AsicExemptionType {\r\n AtypicalRisks = 600000000,\r\n Customised = 600000001,\r\n MandatoryForeign = 600000002,\r\n HighValueInsured = 600000003,\r\n}\r\n\r\nexport class InsurerUfi {\r\n entityUnauthorisedForeignInsurerDetailId: number;\r\n asicExemptionTypeId?: AsicExemptionType;\r\n atypicalRiskClassId?: number;\r\n customisedReasonId: number;\r\n customisedOtherDetail: string;\r\n revenue: number;\r\n assets: number;\r\n employees: number;\r\n}\r\n\r\nexport class NonRecommendedInsurerQuote {\r\n insurerOfficeCode: string;\r\n premium: number;\r\n earthquakePremium?: number;\r\n earthquakeLevy?: number;\r\n fsl: number;\r\n gst: number;\r\n stampDuty: number;\r\n premiumTotal: number;\r\n insurerAdminFee: number;\r\n insurerAdminFeeGst: number;\r\n adviserFee: number;\r\n adviserFeeGst: number;\r\n adminFee: number;\r\n adminFeeGst: number;\r\n declinedByInsurerFlag: number;\r\n declinedByInsurerComment?: string;\r\n}\r\n\r\nexport class PdsLink {\r\n entityProductDisclosureId: number;\r\n pdsDetails: string;\r\n pdsUrl: string;\r\n}\r\n\r\nexport class EntityUriParams {\r\n constructor(\r\n public clientId: number,\r\n public entityActionType: EntityActionType,\r\n public entityType: EntityType,\r\n public entityId: number,\r\n public mode: EntityMode,\r\n ) {}\r\n}\r\n\r\n// eslint-disable-next-line @typescript-eslint/no-namespace\r\nexport namespace Finalise {\r\n export class Config {\r\n coInsuredFlag: boolean;\r\n canChangeRecommendedInsurerFlag: boolean;\r\n showInsurerRatingInformation: boolean;\r\n allowDeclineByInsurer: boolean;\r\n coverNumber: string;\r\n coverVersion: string;\r\n riskGroup: string;\r\n funderSelected: boolean;\r\n fundingPreviouslySentViaRedPlanet: boolean;\r\n performFunderInsurerMismatchCheck: boolean;\r\n referrerSelected: boolean;\r\n invokeLmiInterface: boolean;\r\n availableReferrer: Referrer;\r\n soaTypeIdEnabled: boolean;\r\n availableSoaTypes: any[];\r\n isReadOnly: boolean;\r\n captureAdviceType: boolean;\r\n soaProductExists: boolean;\r\n availableFunders: any[];\r\n availableReferrers: any[];\r\n referrers: any[];\r\n isMppEnd: boolean;\r\n isMultiplePayeeFlag: boolean;\r\n isRetailClient: boolean;\r\n suppressConsentDetails: boolean;\r\n clientInsuredPartyId: number;\r\n }\r\n\r\n export class Referrer {\r\n referrerId?: number;\r\n referrerCode?: string;\r\n referrerName?: string;\r\n }\r\n\r\n export class Referral {\r\n entityReferrerId: number;\r\n referrerId: number;\r\n referrerCode: string;\r\n referrerName: string;\r\n referrerActive: boolean;\r\n referrerFee: number;\r\n activeOnClient: boolean;\r\n }\r\n\r\n export class DefaultReferralFees {\r\n referralId: number;\r\n referralFee: number;\r\n }\r\n\r\n export class Insurer {\r\n entityInsurerId: number;\r\n insurerAbns: string[] = [];\r\n insurerOfficeId: number;\r\n insurerOfficeCode: string;\r\n insurerOfficeName: string;\r\n insurerName: string;\r\n percentageHeld: number;\r\n financialStrengthRatingSource?: string;\r\n financialStrengthRating?: string;\r\n totalDueByClient: number;\r\n declineByInsurerFlag: boolean;\r\n declineByInsurerComment?: string;\r\n recommendedFlag: boolean;\r\n ufiInsurerFlag: boolean;\r\n ufiInformationPresent: boolean;\r\n underwriters: Underwriter[] = [];\r\n showNoUnderWriterAlert?: boolean;\r\n defaultReferralFees: DefaultReferralFees[] = [];\r\n totalBrokerage: number;\r\n }\r\n\r\n export class Underwriter {\r\n entityInsurerId: number;\r\n entityInsurerUnderwriterId: number;\r\n insurerUnderwriterId: number;\r\n underwriterId: number;\r\n underwriterCode: string;\r\n underwriterName: string;\r\n percentageHeld: number;\r\n financialStrengthRatingSource?: string;\r\n financialStrengthRating?: string;\r\n }\r\n\r\n export class PdsLink {\r\n productDisclosureId: number;\r\n productDisclosureUrl: string;\r\n productDisclosureDescription: string;\r\n sequenceNo: number;\r\n selectedFlag: boolean;\r\n }\r\n\r\n export class PdsText {\r\n pdsText: string;\r\n }\r\n\r\n export class PremiumFunder {\r\n entityFunderId?: number;\r\n premiumFunderId: number;\r\n premiumFunderStatusActionId: number;\r\n premiumFunderStatusId: number;\r\n canSync?: boolean;\r\n quoteNo: string;\r\n loanNo: string;\r\n premiumFundedValue: number;\r\n paymentDueDate?: string;\r\n quoteEnquiryUrl?: string;\r\n hasClientAcceptanceUrl?: boolean;\r\n renewalAuthorisationFlag?: string | boolean;\r\n redPlanetGuid?: string;\r\n chosenRedPlanetRiskCode?: string;\r\n chosenRedPlanetUnderwriterAbn?: string;\r\n chosenRedPlanetUnderwriterCode?: string;\r\n chosenRedPlanetUnderwriterName?: string;\r\n commissionRate?: number;\r\n\r\n $useInterface?: boolean;\r\n $useBackgroundInterface: boolean;\r\n }\r\n\r\n export class RedPlanetQuoteResponse {\r\n url: string;\r\n redPlanetGuid: string;\r\n errors: any[];\r\n }\r\n}\r\n","/* istanbul ignore file */\r\n\r\nimport moment from 'moment';\r\n\r\nexport function newMoment() {\r\n return moment.utc();\r\n}\r\n\r\nexport function momentToLocalDateTimeString(value, format = 'DD/MM/YYYY HH:mm:ss') {\r\n const momentObject = createUTCMoment(value);\r\n return momentObject ? momentObject.local().format(format) : '';\r\n}\r\n\r\nexport function momentToISOString(value, format = 'DD/MM/YYYY') {\r\n const momentObject = createUTCMoment(value, format);\r\n return momentObject ? momentObject.toISOString() : '';\r\n}\r\n\r\nexport function momentToString(value, format = 'DD/MM/YYYY') {\r\n const momentObject = createUTCMoment(value, format);\r\n return momentObject ? momentObject.format(format) : '';\r\n}\r\n\r\nexport function createUTCMoment(value, format = 'DD/MM/YYYY') {\r\n if (!valuePresent(value)) return value;\r\n\r\n let momentObject;\r\n\r\n // AU date strings (01/01/2020)\r\n // N.B. They NEED moment format argument otherwise 10/01/2020 will be incorrectly returned as 01/10/2020\r\n // These typically come from the qce, as dates are saved as strings in DD/MM/YYYY format for non grid displayTypes\r\n if (typeof value === 'string' && value.includes('/')) {\r\n momentObject = moment.utc(value, format);\r\n }\r\n\r\n // iso date strings (2020-01-01T00:00:00)\r\n if (typeof value === 'string' && value.includes('T')) {\r\n momentObject = moment.utc(value);\r\n }\r\n\r\n // moment objects\r\n if (typeof value === 'object') {\r\n momentObject = moment.utc(value);\r\n }\r\n\r\n return momentObject;\r\n}\r\n\r\nfunction valuePresent(value) {\r\n return value !== undefined && value !== null && value !== '';\r\n}\r\n","export const paginate = (items, page = 1, perPage = 10) => {\r\n const offset = perPage * (page - 1);\r\n const totalPages = Math.ceil(items.length / perPage);\r\n const paginatedItems = items.slice(offset, perPage * page);\r\n\r\n return {\r\n previousPage: page - 1 ? page - 1 : null,\r\n nextPage: totalPages > page ? page + 1 : null,\r\n total: items.length,\r\n totalPages: totalPages,\r\n items: paginatedItems,\r\n };\r\n};\r\n","import { Container } from 'aurelia-framework';\r\nimport { TokenService } from \"./services/token-service\";\r\n\r\nexport function parseJwt(token) {\r\n if (token) {\r\n const base64Payload = token.split('.')[1];\r\n const payload = Buffer.from(base64Payload, 'base64');\r\n\r\n return JSON.parse(payload as any);\r\n }\r\n\r\n return { appct: '', appci: '', sid: '', coids: '', sub: '' };\r\n}\r\n\r\nexport function getAppClientType() {\r\n const token = parseJwt(getToken());\r\n return token.appct;\r\n}\r\n\r\nexport function getAppClientInstance() {\r\n const token = parseJwt(getToken());\r\n return token.appci;\r\n}\r\n\r\nexport function getSecurityUserId() {\r\n const token = parseJwt(getToken());\r\n return parseInt(token.sid);\r\n}\r\n\r\nexport function getCompanyOfficeIds() {\r\n const token = parseJwt(getToken());\r\n return token.coids;\r\n}\r\n\r\nexport function getEmailAddress() {\r\n const token = parseJwt(getToken());\r\n return token.sub;\r\n}\r\n\r\nexport function getClientId() {\r\n const token = parseJwt(getToken());\r\n return token.cid;\r\n}\r\n\r\nexport function getQuoteId() {\r\n const token = parseJwt(getToken());\r\n return token.qid;\r\n}\r\n\r\nexport function getWebFormId() {\r\n const token = parseJwt(getToken());\r\n return token.wfid;\r\n}\r\n\r\nexport function getBuildEnvironment() {\r\n const token = parseJwt(getToken());\r\n return token.be;\r\n}\r\n\r\nexport function getToken() {\r\n const tokenService = Container.instance.get(TokenService);\r\n return tokenService.getAuthToken();\r\n}\r\n"],"names":["EMAIL","APP_CLIENT_TYPE","addClientToRecentItems","client","RECENT_CLIENTS","JSON","parse","localStorage","getItem","CLIENT_ID","entityId","CLIENT_CODE","entityCode","CLIENT_NAME","entityName","COMPANY_OFFICE_CODE","companyOfficeCode","ADVISER_NAME","adviserName","some","c","CLIENT_INDEX","findIndex","splice","unshift","appClientType","emailAddress","setItem","stringify","getRecentClientsByAppClientTypeByUserId","filter","x","removeClassList","element","val","classList","remove","parent","previousClasses","bind","bindingContext","overrideContext","this","styles","getContextFor","value","split","forEach","valueChanged","addClass","className","removeClass","join","newValue","map","trim","add","inject","Element","Parent","of","ClassCustomAttribute","INPUT_TYPES","taskQueue","attribute","attached","setTimeout","setAttribute","includes","tagName","focus","type","search","querySelector","removeAttribute","bindable","autoinject","customAttribute","TaskQueue","ConditionalIf","defaultOptions","alias","digits","groupSeparator","digitsOptional","nullable","applyOptionsAndReMask","optionsChanged","options","inputmask","im","mask","InputMaskOptions","DOM","HTMLInputElement","InputMask","boundConfigs","parentOverrideContext","undefined","detached","removeListeners","configs","Array","isArray","config","name","handler","addEventListener","removeEventListener","ListenToAttribute","sortableInstance","destroySortable","create","animation","destroy","SortableAttribute","claimsService","run","navigationInstruction","next","settings","route","console","log","cancel","claims","length","isNewEditClaim","params","parentEntityId","fragment","hasAsync","id","ClaimsStep","eventAggregatorEvents","localeMap","Map","MAX_INTEGER_VALUE_32_BIT","BSB_MASK_OPTIONS","ACCOUNT_NUMBER_MASK_OPTIONS","debounce","delay","target","key","descriptor","Error","cache","WeakMap","configurable","enumerable","get","debounced","set","fn","call","addDeviceTokenForUser","deviceToken","DEVICE_TOKENS","EMAIL_ADDRESS","DEVICE_TOKEN","dt","TOKEN_INDEX","getDeviceTokenForUser","RequestMethod","RequestEncoding","http","headers","form","fetch","routeParameters","fields","queryParams","additionalHeaders","canHandleError","searchParams","URLSearchParams","Object","entries","append","uri","combinedHeaders","init","method","body","toString","request","buildRequest","response","ok","json","data","Promise","FormEndpoint","catch","responseBody","JsonEndpoint","AppTheme","ProfilePages","PageMode","ClientType","EAddressType","ButtonTranslationKeys","ApplicationCountryCodes","TaskNotificationTypes","DocType","GenerationStatus","PartyInstanceType","DocCreationProgress","ReportType","MandatoryDocType","render","instruction","unrender","result","elements","valid","formGroup","parentElement","class","viewModel","getAttributeNames","select2SpanElement","getElementsByClassName","select2SpanElement2","ea","timedOut","publish","start","timer","window","clearTimeout","timeoutValue","reset","channel","postMessage","initialise","hours","minutes","seconds","document","Number","onmessage","e","EventAggregator","Inactivity","configure","aurelia","globalResources","serverErrors","loadLookups","lookups","lookupDataService","Container","instance","activeInactive","completeIncomplete","claimStatus","claimType","clientRole","companyOffice","searchType","quoteStatusType","allowableDocumentTypes","DocumentType","allowDelete","allowChangeType","showAddressFinderValidation","manuallyAddLocation","isEmpty","addressLine1","addressLine2","addressLine3","suburb","region","state","postCode","typeId","toJSON","countryCode","guid","preferredFlag","telephoneNumber","contact","email","website","url","note","createdDate","associatedClientId","comment","scheduleDataIsPresent","htmlContent","AsicExemptionType","insuredLocation","stateCode","situationId","activeFlag","latitude","longitude","entityType","fundingAmount","chosenRedPlanetRiskCode","chosenRedPlanetUnderwriterCode","chosenRedPlanetUnderwriterName","chosenRedPlanetUnderwriterAbn","premiumFunderId","covers","commissionRate","numberOfInstalments","premiumFunderCode","premiumFunderName","adviserId","$isActive","username","password","confirmPassword","$isEditable","$hasCredential","$isNewCredential","$isDelete","adviserFunderCredentialsId","underwriters","entityInsurerId","nettPremiumFlag","percentageHeld","recommendedFlag","fapInUseFlag","selectedFlag","entityInsurerUnderwriterId","Finalise","clientId","entityActionType","mode","Config","Referrer","Referral","DefaultReferralFees","Insurer","insurerAbns","defaultReferralFees","Underwriter","PdsLink","PdsText","PremiumFunder","RedPlanetQuoteResponse","newMoment","momentToLocalDateTimeString","format","momentObject","createUTCMoment","local","momentToISOString","toISOString","momentToString","valuePresent","paginate","items","page","perPage","offset","totalPages","Math","ceil","paginatedItems","slice","previousPage","nextPage","total","parseJwt","token","base64Payload","payload","Buffer","from","appct","appci","sid","coids","sub","getAppClientType","getToken","getAppClientInstance","getSecurityUserId","parseInt","getCompanyOfficeIds","getEmailAddress","getClientId","cid","getQuoteId","qid","getWebFormId","wfid","getBuildEnvironment","be","getAuthToken"],"sourceRoot":""}