{"version":3,"file":"app-c14281dd.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./src/components/top-nav/search/search-criteria/accounts.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/claims.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/clients.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/documents.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/insurednames.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/policies.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/quotes.html","webpack://iadviser/./src/components/top-nav/search/search-criteria/tasks.html","webpack://iadviser/./src/components/top-nav/search/actions/util.ts","webpack://iadviser/./src/components/top-nav/search/api.ts","webpack://iadviser/./src/components/top-nav/search/models.ts"],"sourcesContent":["// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","// Module\nvar code = \"\\r\\n\";\n// Exports\nexport default code;","import { Storage } from 'resources/utilities/storage-helper';\r\nimport { PagingInfo, SearchTypes, AdvancedSearchType } from '../models';\r\n\r\nconst localStoragePrefix = 'searchParameters_';\r\n\r\nexport function loadSearchInfoFromLocalStorage(searchSessionId: string): {\r\n searchParameters: any;\r\n pagingInfo: PagingInfo;\r\n} {\r\n return Storage.getFromLocalStorage(localStoragePrefix + searchSessionId);\r\n}\r\n\r\nexport function saveSearchInfoToLocalStorage(\r\n searchSessionId: string,\r\n searchType: string,\r\n searchParameters: any,\r\n pagingInfo: PagingInfo,\r\n) {\r\n Storage.saveToLocalStorage(localStoragePrefix + searchSessionId, {\r\n searchParameters,\r\n pagingInfo,\r\n });\r\n}\r\n\r\nexport function deleteSearchInfoFromLocalStorage(searchSessionId: string): void {\r\n localStorage.removeItem(localStoragePrefix + searchSessionId);\r\n}\r\n\r\nexport function defaultSearchOperators() {\r\n return {\r\n claimNumberOperator: SearchTypes.equals,\r\n insurerClaimNumberOperator: SearchTypes.equals,\r\n\r\n clientCodeOperator: SearchTypes.equals,\r\n clientNameOperator: SearchTypes.like,\r\n contactNameOperator: SearchTypes.like,\r\n phoneNumberOperator: SearchTypes.like,\r\n\r\n coverNumberOperator: SearchTypes.startsWith,\r\n commentOperator: SearchTypes.like,\r\n premiumFunderLoanNumberOperator: SearchTypes.startsWith,\r\n registrationNumberOperator: SearchTypes.equals,\r\n insuredLocationOperator: SearchTypes.startsWith,\r\n insurerPolicyNoOperator: SearchTypes.startsWith,\r\n insuredSuburbOperator: SearchTypes.equals,\r\n insuredStateOperator: SearchTypes.equals,\r\n insuredRegionOperator: SearchTypes.equals,\r\n insuredPostcodeOperator: SearchTypes.equals,\r\n\r\n insuredNameOperator: SearchTypes.like,\r\n\r\n keywordOperator: SearchTypes.equals,\r\n fileNameOperator: SearchTypes.equals,\r\n\r\n subjectOperator: SearchTypes.like,\r\n detailOperator: SearchTypes.like,\r\n\r\n companyOfficeNameOperator: SearchTypes.startsWith,\r\n adviserCodeOperator: SearchTypes.equals,\r\n adviserNameOperator: SearchTypes.startsWith,\r\n\r\n invoiceNoOperator: SearchTypes.equals,\r\n };\r\n}\r\n\r\nexport function buildCleanSearchCriteria(searchParameters: any): any {\r\n const output = Object.getOwnPropertyNames(searchParameters)\r\n .filter(\r\n (prop) =>\r\n !(\r\n /Operator$/.test(prop) ||\r\n !!searchParameters[prop] === null ||\r\n searchParameters[prop] === undefined ||\r\n searchParameters[prop] === '' ||\r\n prop === '__observers__'\r\n ),\r\n )\r\n .map((prop) => ({\r\n [prop]: searchParameters[prop],\r\n ...(searchParameters[`${prop}Operator`]\r\n ? {\r\n [`${prop}Operator`]: searchParameters[`${prop}Operator`],\r\n }\r\n : undefined),\r\n }))\r\n .reduce((c, p) => ({ ...c, ...p }), {});\r\n\r\n if (output.staffSearch) {\r\n const staff = new Map();\r\n const displayStaff: any[] = output.staffSearch.displayStaff;\r\n\r\n if (displayStaff && displayStaff.length > 0) {\r\n displayStaff\r\n .filter((x) => x.selected)\r\n .map((x) => {\r\n const users = staff.get(x.roleId) || [];\r\n\r\n users.push(x.securityUsersId);\r\n staff.set(x.roleId, users);\r\n });\r\n\r\n output.staff = [...staff.entries()].map(([clientRoleId, securityUserIds]) => ({ clientRoleId, securityUserIds }));\r\n } else {\r\n delete output.staff;\r\n }\r\n\r\n delete output.staffSearch;\r\n }\r\n\r\n return output;\r\n}\r\n\r\nexport const availableSearchTypes = [\r\n 'claims',\r\n 'clients',\r\n 'documents',\r\n 'insurednames',\r\n 'policies',\r\n 'quotes',\r\n 'tasks',\r\n 'accounts',\r\n];\r\n","import { autoinject } from 'aurelia-framework';\r\nimport { environment } from 'environment';\r\nimport { HttpClient, json } from 'aurelia-fetch-client';\r\nimport { RequestMethod } from 'resources/endpoints/endpoints';\r\nimport { PagingInfo, AdvancedSearchType } from './models';\r\n\r\n@autoinject()\r\nexport class Api {\r\n constructor(private http: HttpClient) {}\r\n\r\n async getUsersForClientRole(clientRoleId: number): Promise {\r\n const uri = `${environment.apiHost}/api/refdata/clientroles/${clientRoleId}/usersassignedtorole`;\r\n\r\n const result = await this.http.fetch(uri);\r\n\r\n return result.ok ? result.json() : null;\r\n }\r\n\r\n async executeSearch(searchType: AdvancedSearchType | string, searchParameters: any): Promise {\r\n const uri = `${environment.apiHost}/api/search/advanced/${searchType}`;\r\n\r\n const result = await this.http.fetch(uri, {\r\n body: json(searchParameters),\r\n method: RequestMethod.post,\r\n });\r\n\r\n return result.ok ? result.json() : null;\r\n }\r\n\r\n // where results are not in Mongo, return a 400. Caller should then POST to create a new search session.\r\n\r\n async retrieveSearchResults(\r\n searchType: AdvancedSearchType | string,\r\n searchSessionId: string,\r\n pagingInfo: PagingInfo,\r\n ): Promise<{ totalResultsCount: any; results: any }> {\r\n const apiHost =\r\n environment.apiHost === '' ? `${window.location.protocol}//${window.location.hostname}` : environment.apiHost;\r\n const url = new URL(`${apiHost}/api/search/advanced/${searchType}/${searchSessionId}`);\r\n\r\n if (pagingInfo.limit.toString() !== '') {\r\n url.searchParams.append('offset', pagingInfo.offset.toString());\r\n url.searchParams.append('limit', pagingInfo.limit.toString());\r\n }\r\n\r\n if (pagingInfo.sortFields && pagingInfo.sortFields.length) {\r\n url.searchParams.append('sortFields', pagingInfo.sortFields.join(','));\r\n }\r\n\r\n const result = await this.http.fetch(url.href);\r\n\r\n const totalResultsCount = parseInt(result.headers.get('X-Total-Record-Count'));\r\n return {\r\n results: await result.json(),\r\n totalResultsCount,\r\n };\r\n }\r\n}\r\n","export interface PagingInfo {\r\n offset: number;\r\n limit: number | string;\r\n sortFields?: string[];\r\n sort?: string;\r\n companyOfficeId?: number;\r\n}\r\n\r\nexport enum SearchTypes {\r\n equals = 'equals',\r\n startsWith = 'startsWith',\r\n endsWith = 'endsWith',\r\n like = 'like',\r\n}\r\n\r\nexport enum AdvancedSearchType {\r\n claims = 'claims',\r\n clients = 'clients',\r\n documents = 'documents',\r\n insuredNames = 'insurednames',\r\n policies = 'policies',\r\n quotes = 'quotes',\r\n tasks = 'tasks',\r\n}\r\n"],"names":["localStoragePrefix","loadSearchInfoFromLocalStorage","searchSessionId","saveSearchInfoToLocalStorage","searchType","searchParameters","pagingInfo","defaultSearchOperators","claimNumberOperator","insurerClaimNumberOperator","clientCodeOperator","clientNameOperator","contactNameOperator","phoneNumberOperator","coverNumberOperator","commentOperator","premiumFunderLoanNumberOperator","registrationNumberOperator","insuredLocationOperator","insurerPolicyNoOperator","insuredSuburbOperator","insuredStateOperator","insuredRegionOperator","insuredPostcodeOperator","insuredNameOperator","keywordOperator","fileNameOperator","subjectOperator","detailOperator","companyOfficeNameOperator","adviserCodeOperator","adviserNameOperator","invoiceNoOperator","buildCleanSearchCriteria","output","Object","getOwnPropertyNames","filter","prop","test","undefined","map","reduce","c","p","staffSearch","Map","displayStaff","length","x","selected","users","get","roleId","push","securityUsersId","set","staff","entries","clientRoleId","securityUserIds","availableSearchTypes","http","getUsersForClientRole","uri","this","fetch","result","ok","json","executeSearch","body","method","retrieveSearchResults","apiHost","window","location","protocol","hostname","url","URL","limit","toString","searchParams","append","offset","sortFields","join","href","totalResultsCount","parseInt","headers","results","autoinject","Api","SearchTypes","AdvancedSearchType"],"sourceRoot":""}