{"version":3,"file":"app-60d1baf3.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./src/routes/app-adviser/client/wizard/steps/quote/risk-questions/risk-questions.html","webpack://iadviser/./src/routes/app-adviser/client/wizard/steps/quote/risk-questions/api.ts","webpack://iadviser/./src/routes/app-adviser/client/wizard/steps/quote/risk-questions/risk-questions.css?2cfc","webpack://iadviser/./src/routes/app-adviser/client/wizard/steps/quote/risk-questions/risk-questions.ts"],"sourcesContent":["// Module\nvar code = \"\\r\\n \\r\\n \\r\\n \\r\\n ${'insuredLocations' & t } (${config.insuredLocations.length})\\r\\n \\r\\n ${option.insuredLocationDescription & t}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n ${'Risk questions for location' & t} ${createRiskWarnings[0]} incomplete\\r\\n ${'Risk questions for locations' & t} ${i}${!$last ? ', ' : ''} incomplete\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ${risk.riskName & t}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n ${unsupportedDisplayTypesMessage}\\r\\n To view data please Distribute Documents\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n Are there any Interested Parties for this Location Risk?\\r\\n \\r\\n No\\r\\n Yes\\r\\n \\r\\n Add\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n Delete\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n ${insurerDisplayValue(insurer.entityInsurerId)} ${'riskQuestions' & t}\\r\\n \\r\\n\\r\\n ${insurerDisplayValue(insurer.entityInsurerId)} ${'occupationQuestions' & t}\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n ${'Incomplete grid responses.' & t}\\r\\n ${'Please complete all grid fields in order to save.' & t}\\r\\n \\r\\n \\r\\n ${group.groupName}\\r\\n \\r\\n Question: ${q.question}\\r\\n \\r\\n Row requires:\\r\\n \\r\\n ${property & t}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n ${'Incomplete interested party.' & t}\\r\\n ${'Please complete all interested party fields in order to save.' & t}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n ${'Invalid question response.' & t}\\r\\n \\r\\n An invalid response is present and cannot be saved.\\r\\n Please contact your helpdesk for assistance and provide the following ${saveFailedMongoIds.length > 1 ? 'codes' : 'code'}:\\r\\n \\r\\n ${mongoId}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n ${obj.groupName}\\r\\n ${question}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\";\n// Exports\nexport default code;","/* istanbul ignore file */\r\n\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { HttpClient, json } from 'aurelia-fetch-client';\r\nimport { environment } from 'environment';\r\nimport { EntityMode, EntityType, EntityActionType } from 'routes/app-adviser/client/quotes/interfaces';\r\n\r\n@autoinject()\r\nexport class Api {\r\n constructor(\r\n private http: HttpClient\r\n ) { }\r\n\r\n async getRiskQuestionsConfig(\r\n clientId: number, actionType: EntityActionType, entityType: EntityType, entityId: number, mode: EntityMode): Promise {\r\n const endpoint = environment.clientEndpoints.wizard.riskQuestions.config;\r\n const uri = endpoint.uri([clientId, actionType, entityType, entityId, mode]);\r\n\r\n const result = await this.http.fetch(uri, { method: endpoint.method });\r\n\r\n return result.json();\r\n }\r\n\r\n async getRiskQuestions(\r\n clientId: number, actionType: EntityActionType, entityType: EntityType, entityId: number, entitySituationId: number,\r\n entityRiskId: number, includeValidationIssues = false): Promise {\r\n const endpoint = environment.clientEndpoints.wizard.riskQuestions.get;\r\n const uri = endpoint.uri([clientId, actionType, entityType, entityId, entitySituationId, entityRiskId, includeValidationIssues]);\r\n\r\n const result = await this.http.fetch(uri, { method: endpoint.method });\r\n\r\n return result.json();\r\n }\r\n\r\n async putRiskQuestions( clientId: number, actionType: EntityActionType, entityType: EntityType, entityId: number,\r\n entitySituationId: number, entityRiskId: number, model: any): Promise {\r\n const endpoint = environment.clientEndpoints.wizard.riskQuestions.put;\r\n const uri = endpoint.uri([clientId, actionType, entityType, entityId, entitySituationId, entityRiskId]);\r\n\r\n const result = await this.http.fetch(uri, {\r\n method: endpoint.method,\r\n body: json(model)\r\n });\r\n\r\n const text = await result.text();\r\n\r\n return text ? JSON.parse(text) : null;\r\n }\r\n}\r\n","// extracted by mini-css-extract-plugin\nexport default {\"screen-container\":\"screen-container____YtO5E\",\"screen-container--client\":\"screen-container--client____vkf9k screen-container____YtO5E\",\"screen-container--dashboard\":\"screen-container--dashboard____Y_YcK screen-container--client____vkf9k screen-container____YtO5E\",\"screen-container--home\":\"screen-container--home____hiR4O screen-container____YtO5E\",\"screen-container--menu\":\"screen-container--menu____UnyY6 screen-container____YtO5E\",\"screen-container--accounts-override\":\"screen-container--accounts-override____VeQxA screen-container____YtO5E\",\"screen-container--accounts-override-xxl\":\"screen-container--accounts-override-xxl____ES8cO screen-container____YtO5E\",\"empty-state\":\"empty-state____ncNlE\",\"empty-state--icon\":\"empty-state--icon____Ysm8h\",\"empty-heading\":\"empty-heading____UY7FK\",\"empty-subheading\":\"empty-subheading____hSbwd\",\"kyc\":\"kyc____Rb4a6\",\"advice\":\"advice____Kr_aa\",\"insured\":\"insured____WmNby\",\"quotes\":\"quotes____fyxYq\",\"policies\":\"policies____iS0K1\",\"claims\":\"claims____kcG5E\",\"tasks\":\"tasks_____A_Ky\",\"documents\":\"documents____ZOgc3\",\"btn\":\"btn____sYymq\",\"btn--flat\":\"btn--flat____Hb5HH btn____sYymq\",\"btn--submit\":\"btn--submit____T5R2I btn____sYymq\",\"btn--delete\":\"btn--delete____W18Rv btn____sYymq\",\"btn--link\":\"btn--link____sr1yn btn____sYymq\",\"btn--inline-text-link\":\"btn--inline-text-link____dJePc btn--link____sr1yn btn____sYymq\",\"btn--footer\":\"btn--footer____xuIMa btn____sYymq\",\"btn--footer-submit\":\"btn--footer-submit____auOqE btn--submit____T5R2I btn____sYymq btn--footer____xuIMa btn____sYymq\",\"btn--footer-cancel\":\"btn--footer-cancel____xPLnf btn--flat____Hb5HH btn____sYymq btn--footer____xuIMa btn____sYymq\",\"btn--footer-delete\":\"btn--footer-delete____vyThp btn--delete____W18Rv btn____sYymq btn--footer____xuIMa btn____sYymq\",\"btn--footer-combo\":\"btn--footer-combo____V6gwd btn--footer____xuIMa btn____sYymq\",\"btn--lmi-bicalc\":\"btn--lmi-bicalc____XpuFH btn____sYymq\",\"btn--lmi-risk\":\"btn--lmi-risk____mQL2X btn____sYymq\",\"btn--lmi-policy-comparison\":\"btn--lmi-policy-comparison____f8vRU btn____sYymq\",\"btn--lmi-policy-coach\":\"btn--lmi-policy-coach____GceJa btn____sYymq\",\"btn--andrew-nock\":\"btn--andrew-nock____dmTxn btn____sYymq\",\"btn--construction-cost-consultants\":\"btn--construction-cost-consultants____JwDjb btn____sYymq\",\"btn--5-star\":\"btn--5-star____NaJfW btn____sYymq\",\"btn--thermoscan\":\"btn--thermoscan____uksrl btn____sYymq\",\"btn--risk-survey-services\":\"btn--risk-survey-services____PgcIJ btn____sYymq\",\"btn--risk-management\":\"btn--risk-management____NE64I btn____sYymq\",\"btn--lmi-bicalc--disabled\":\"btn--lmi-bicalc--disabled____AFzTY btn--lmi-bicalc____XpuFH btn____sYymq\",\"btn--lmi-risk--disabled\":\"btn--lmi-risk--disabled____n1UiM btn--lmi-risk____mQL2X btn____sYymq\",\"btn--lmi-policy-comparison--disabled\":\"btn--lmi-policy-comparison--disabled____eAuPO btn--lmi-policy-comparison____f8vRU btn____sYymq\",\"btn--initial-insured-location-risk\":\"btn--initial-insured-location-risk____iwpCR btn--flat____Hb5HH btn____sYymq btn____sYymq\",\"btn--icon\":\"btn--icon____chkJS btn____sYymq\",\"btn--icon-no-border\":\"btn--icon-no-border____XawNa\",\"btn--icon-add\":\"btn--icon-add____ij28G btn--icon____chkJS btn____sYymq\",\"btn--add-risk\":\"btn--add-risk____HOlsJ btn--icon____chkJS btn____sYymq\",\"btn--icon-close\":\"btn--icon-close____oZNh5 btn--icon____chkJS btn____sYymq\",\"btn--icon-delete\":\"btn--icon-delete____ft5wh btn--icon____chkJS btn____sYymq\",\"btn--icon-download\":\"btn--icon-download____o0YPZ btn--icon____chkJS btn____sYymq\",\"btn--icon-edit\":\"btn--icon-edit____lYBZ7 btn--icon____chkJS btn____sYymq\",\"btn--icon-email\":\"btn--icon-email____ZTbJW btn--icon____chkJS btn____sYymq\",\"btn--icon-download-email\":\"btn--icon-download-email____HQnWE btn--icon____chkJS btn____sYymq\",\"btn--icon-folder\":\"btn--icon-folder____rePS5 btn--icon____chkJS btn____sYymq\",\"btn--icon-folder-locked\":\"btn--icon-folder-locked____s6kWT btn--icon____chkJS btn____sYymq\",\"btn--icon-folder-locked-active\":\"btn--icon-folder-locked-active____U_91R btn--icon____chkJS btn____sYymq\",\"btn--icon-history\":\"btn--icon-history____Ro46t btn--icon____chkJS btn____sYymq\",\"btn--icon-info\":\"btn--icon-info____cDam9 btn--icon____chkJS btn____sYymq\",\"btn--icon-link\":\"btn--icon-link____PQPAf btn--icon____chkJS btn____sYymq\",\"btn--icon-unlink\":\"btn--icon-unlink____dOTDY btn--icon-delete____ft5wh btn--icon____chkJS btn____sYymq\",\"btn--icon-map\":\"btn--icon-map____KXj7Z btn--icon____chkJS btn____sYymq\",\"btn--icon-more\":\"btn--icon-more____A81KL btn--icon____chkJS btn____sYymq\",\"btn--icon-open-in-new-window\":\"btn--icon-open-in-new-window____ch68t btn--icon____chkJS btn____sYymq\",\"btn--icon-favourite--selected\":\"btn--icon-favourite--selected_____7iGm btn--icon____chkJS btn____sYymq\",\"btn--icon-favourite--deselected\":\"btn--icon-favourite--deselected____I5Lge btn--icon____chkJS btn____sYymq\",\"btn--icon-preview\":\"btn--icon-preview____lKdmg btn--icon____chkJS btn____sYymq\",\"btn--icon-pre-printed\":\"btn--icon-pre-printed____gr_Y9 btn--icon____chkJS btn____sYymq\",\"btn--icon-print\":\"btn--icon-print____v3xPm btn--icon____chkJS btn____sYymq\",\"btn--icon-save\":\"btn--icon-save____pcDXx btn--icon____chkJS btn____sYymq\",\"btn--icon-settings\":\"btn--icon-settings____jrTww btn--icon____chkJS btn____sYymq\",\"btn--icon-show-details\":\"btn--icon-show-details____suThC btn--icon____chkJS btn____sYymq\",\"btn--icon-show-details--alert\":\"btn--icon-show-details--alert____TGBS2 btn--icon____chkJS btn____sYymq\",\"btn--icon-show-summary\":\"btn--icon-show-summary____sAnm2 btn--icon____chkJS btn____sYymq\",\"btn--icon-attachment\":\"btn--icon-attachment____zyt2u btn--icon____chkJS btn____sYymq\",\"btn--icon-tag\":\"btn--icon-tag____MW5iU btn--icon____chkJS btn____sYymq\",\"btn--icon-undo\":\"btn--icon-undo____g4Dvi btn--icon____chkJS btn____sYymq\",\"btn--icon-arrow-forward\":\"btn--icon-arrow-forward____zKlLH btn--icon____chkJS btn____sYymq\",\"btn--aside-collapse\":\"btn--aside-collapse____JtGmK btn--icon____chkJS btn____sYymq\",\"btn--icon-expand-more\":\"btn--icon-expand-more____qgeJF btn--icon____chkJS btn____sYymq\",\"btn--icon-expand-less\":\"btn--icon-expand-less____lQnf3 btn--icon____chkJS btn____sYymq\",\"btn--back\":\"btn--back____xfizQ btn____sYymq\",\"btn--back-to-sign-in\":\"btn--back-to-sign-in____Krzil btn--back____xfizQ btn____sYymq\",\"btn--icon-advanced-search\":\"btn--icon-advanced-search____Et3vR btn--icon____chkJS btn____sYymq\",\"btn--wizard\":\"btn--wizard____sTq8v btn____sYymq\",\"btn--wizard-back\":\"btn--wizard-back____pKerl btn--wizard____sTq8v btn____sYymq\",\"btn--wizard-next\":\"btn--wizard-next____ITGs6 btn--wizard____sTq8v btn____sYymq\",\"fieldset\":\"fieldset____bvYkz\",\"fieldset-instruction\":\"fieldset-instruction____qyIF2\",\"fieldset--no-padding\":\"fieldset--no-padding____MmR8u fieldset____bvYkz\",\"fieldset--alt\":\"fieldset--alt____ijEjU fieldset____bvYkz\",\"input-search\":\"input-search____LPh7K\",\"view-password\":\"view-password____NuDeo\",\"ia-currency-input\":\"ia-currency-input____Nx22Y\",\"ia-currency-negative\":\"ia-currency-negative____h1Yhq\",\"select--mini\":\"select--mini____O3bOK\",\"required-label\":\"required-label____M624f\",\"alert\":\"alert____mR997\",\"alert--important\":\"alert--important____OsV2Y\",\"input-label\":\"input-label_____0cye\",\"w-100\":\"w-100____bLS8l\",\"search-input-wrapper\":\"search-input-wrapper____JqMWu\",\"search-input--results\":\"search-input--results____dtbcU\",\"search-input--result\":\"search-input--result_____T0KA\",\"search-input--result--highlighted\":\"search-input--result--highlighted____VAsVp\",\"date-range-selections\":\"date-range-selections____mEFQz\",\"date-arrow-forward\":\"date-arrow-forward____B47dI\",\"qce-dropdown\":\"qce-dropdown____ARlWn\",\"qce-or\":\"qce-or____JtOY9\",\"qce-dropdown-with-dropdown\":\"qce-dropdown-with-dropdown____c8QdL\",\"qce-vehicle-registration-search\":\"qce-vehicle-registration-search____TZK7q\",\"row-gap\":\"row-gap____OHEz4\",\"row-group\":\"row-group____PBFXV\",\"row-group--three\":\"row-group--three____OsbCx row-group____PBFXV\",\"grid-14\":\"grid-14____pMU5U\",\"row-group--auto\":\"row-group--auto____psaOT row-group____PBFXV\",\"space\":\"space____dxGKe\",\"display-none--lg\":\"display-none--lg____of4h3\",\"display-none--md\":\"display-none--md____l7Qcr\",\"tab-navigation\":\"tab-navigation____zD6un\",\"has-warnings\":\"has-warnings____uS8cK\",\"tab-selected\":\"tab-selected____i6Ogp tab____ivSon\",\"disabled\":\"disabled____TLqOC\",\"tab\":\"tab____ivSon\",\"btn--tab-overflow\":\"btn--tab-overflow____oqo1D\",\"btn--tab-overflow-left\":\"btn--tab-overflow-left____A8u6S btn--tab-overflow____oqo1D\",\"btn--tab-overflow-left-disabled\":\"btn--tab-overflow-left-disabled____cU6EQ btn--tab-overflow-left____A8u6S btn--tab-overflow____oqo1D\",\"btn--tab-overflow-right\":\"btn--tab-overflow-right____fk_Xg btn--tab-overflow____oqo1D\",\"btn--tab-overflow-right-disabled\":\"btn--tab-overflow-right-disabled____l0cOI btn--tab-overflow-right____fk_Xg btn--tab-overflow____oqo1D\",\"constrained-width\":\"constrained-width____FvNbN\",\"constrained-width--tab\":\"constrained-width--tab____Q7Dks constrained-width____FvNbN\",\"card\":\"card____mzuYB\",\"card-content\":\"card-content____RH3lM\",\"card-heading\":\"card-heading____idZOB\",\"control-group\":\"control-group____pcRUr\",\"label-group\":\"label-group____q6o_O\",\"label-group-item\":\"label-group-item____yRtME\",\"button-group\":\"button-group____MUlC6\",\"card--alert\":\"card--alert____DKqkh card____mzuYB\",\"card-heading--alert\":\"card-heading--alert____gX6IJ card-heading____idZOB\",\"card--status-message\":\"card--status-message____iGGom\",\"card-heading--sticky-header\":\"card-heading--sticky-header____SNih_\",\"card-heading--no-icon\":\"card-heading--no-icon____VRbnN card-heading____idZOB\",\"card-heading--bold-title\":\"card-heading--bold-title____DrmPt\",\"table\":\"table____YJFX5\",\"table-heading-row\":\"table-heading-row____LEXpP\",\"table-row\":\"table-row____Ogz02\",\"table-result-row\":\"table-result-row____aXBnj\",\"break-word\":\"break-word____Ahxkk\",\"no-wrap\":\"no-wrap____tO83I\",\"table-result-row--disabled\":\"table-result-row--disabled____gQx0l\",\"table-modal\":\"table-modal____YcR8K table____YJFX5\",\"table-enhanced\":\"table-enhanced____vxQUe\",\"table--no-border-bottom\":\"table--no-border-bottom____bhJGq table____YJFX5\",\"height-45\":\"height-45____X8T73\",\"edit-column\":\"edit-column____wZB3Y\",\"delete-column\":\"delete-column____idHSx\",\"date-table-heading\":\"date-table-heading____l0BoX\",\"button-edit\":\"button-edit____dCmP7\",\"button-delete\":\"button-delete____rCVO5\",\"table-row-selected\":\"table-row-selected____V563M\",\"table-row-alert\":\"table-row-alert____Zc7Xt\",\"table-filter-row\":\"table-filter-row____wHzT3\",\"table-filter-row--endcap\":\"table-filter-row--endcap____Km9p_\",\"filter-column\":\"filter-column____gfd2o\",\"table-pagination\":\"table-pagination____FsrgR\",\"table-pagination-with-filter\":\"table-pagination-with-filter____cna49 table-pagination____FsrgR\",\"table-button-group\":\"table-button-group____ZETGK\",\"table-child-container\":\"table-child-container____SLBpa\",\"table-child-card\":\"table-child-card____i9Ah_\",\"child-table--selected-row\":\"child-table--selected-row____HVvL1\",\"child-table\":\"child-table____s3pnm table____YJFX5\",\"custom-pagination\":\"custom-pagination____iuYdW\",\"pagination-count\":\"pagination-count____HEVfk\",\"pagination-button\":\"pagination-button____mdsb0 btn____sYymq\",\"pagination-prev\":\"pagination-prev____W1Nz8 pagination-button____mdsb0 btn____sYymq\",\"pagination-next\":\"pagination-next____BjZ1g pagination-button____mdsb0 btn____sYymq\",\"pagination-disabled\":\"pagination-disabled____lqin5 pagination-button____mdsb0 btn____sYymq\",\"pagination-prev-disabled\":\"pagination-prev-disabled____bDeJI pagination-disabled____lqin5 pagination-button____mdsb0 btn____sYymq\",\"pagination-next-disabled\":\"pagination-next-disabled____a2RtF pagination-disabled____lqin5 pagination-button____mdsb0 btn____sYymq\",\"pagination\":\"pagination____trA7V\",\"pagination-top\":\"pagination-top____kQ_U6 pagination____trA7V\",\"pagination-bottom\":\"pagination-bottom____IMgdS pagination____trA7V\",\"pagination-bottom--documents\":\"pagination-bottom--documents____nJaHr pagination-bottom____IMgdS pagination____trA7V\",\"table-cell-btn-icon\":\"table-cell-btn-icon____ygcWP\",\"folder-table\":\"folder-table____mSLWs table--no-border-bottom____bhJGq table____YJFX5\",\"doc-table-group--heading\":\"doc-table-group--heading____wEKO4\",\"doc-table-group--heading-open\":\"doc-table-group--heading-open____jZCrz doc-table-group--heading____wEKO4\",\"doc-table-group--heading-with-options\":\"doc-table-group--heading-with-options____KUyld\",\"constrained-width--folder-name\":\"constrained-width--folder-name____e7Raf constrained-width____FvNbN\",\"disable-entity\":\"disable-entity____Pojf3\",\"button-options\":\"button-options____hCC7v\",\"button-options--add\":\"button-options--add____RD2Cp button-options____hCC7v\",\"information-icon\":\"information-icon____qjvMf\",\"deleted-icon\":\"deleted-icon____n39_0\",\"exclamation-icon\":\"exclamation-icon____DYEXf\",\"success-icon\":\"success-icon____IRA2p\",\"text-align-center\":\"text-align-center____eGebZ\",\"word-break\":\"word-break____lAsRZ\",\"btn-group\":\"btn-group____bYcBY\",\"accordion-content\":\"accordion-content____wZaTc\",\"toggle-collapse\":\"toggle-collapse____DpQo8\",\"toggle-collapse--disabled\":\"toggle-collapse--disabled____l_Qah toggle-collapse____DpQo8\",\"toggle-expand\":\"toggle-expand____YDPr6 toggle-collapse____DpQo8\",\"folder\":\"folder____XCxqS\",\"folder-locked\":\"folder-locked____ZaPAU folder____XCxqS\",\"yesNo-filter-width\":\"yesNo-filter-width____BLSei\",\"w-5\":\"w-5____Om_E8\",\"w-10\":\"w-10____MYpAN\",\"w-15\":\"w-15____fhWhz\",\"w-20\":\"w-20____vwsWf\",\"w-25\":\"w-25____qQyCK\",\"w-30\":\"w-30____QvL_B\",\"w-35\":\"w-35____eUbZy\",\"w-40\":\"w-40____c4Skw\",\"w-45\":\"w-45____Ig6EI\",\"w-50\":\"w-50____k1gD7\",\"w-60\":\"w-60____wEhKI\",\"view-block\":\"view-block____bF821\",\"view-block--heading\":\"view-block--heading____mvQ9Y\",\"view-block--white\":\"view-block--white____lsEsO view-block____bF821\",\"view-block--alert\":\"view-block--alert____DtBwV view-block____bF821\",\"view-block--success\":\"view-block--success____gB7aZ view-block____bF821\",\"view-block--info\":\"view-block--info____vZUJ_ view-block____bF821\",\"view-block--warning\":\"view-block--warning____b8y0P view-block____bF821\",\"view-block--alt\":\"view-block--alt____TWvBz view-block____bF821\",\"view-block--with-icon\":\"view-block--with-icon____r7HC6 view-block____bF821\",\"view-block-icon\":\"view-block-icon____Dto3U\",\"view-block--warning--with-icon\":\"view-block--warning--with-icon____PXQp7 view-block--warning____b8y0P view-block____bF821\",\"view-block-checkbox\":\"view-block-checkbox____EaN34 view-block____bF821\",\"view-block-checkbox--alert\":\"view-block-checkbox--alert____bXGNW view-block--alert____DtBwV view-block____bF821 view-block-checkbox____EaN34 view-block____bF821\",\"text-view-content\":\"text-view-content____S6Ppf\",\"ia-modal\":\"ia-modal____Te15m\",\"ia-modal-inner\":\"ia-modal-inner____qHJIo\",\"ia-modal-inner--context-menu\":\"ia-modal-inner--context-menu_____JDvN ia-modal-inner____qHJIo\",\"ia-modal-inner--wide-lg\":\"ia-modal-inner--wide-lg____cY6J7 ia-modal-inner____qHJIo\",\"ia-modal-inner--wide-xxl\":\"ia-modal-inner--wide-xxl____JMu4f ia-modal-inner____qHJIo\",\"ia-modal-inner--take-over\":\"ia-modal-inner--take-over____cDvUl ia-modal-inner____qHJIo\",\"fixed-height\":\"fixed-height____hcxhS\",\"takeover-header\":\"takeover-header____Mr9Fs\",\"logo\":\"logo____pCXh2\",\"logo--broker\":\"logo--broker_____wF8n logo____pCXh2\",\"close-search\":\"close-search____BuntJ\",\"ia-modal-content\":\"ia-modal-content____ROqsw\",\"ia-modal-overlay--transparent\":\"ia-modal-overlay--transparent____M6NkY ia-modal____Te15m\",\"ia-modal-overlay--light-white\":\"ia-modal-overlay--light-white____v4IZ5 ia-modal____Te15m\",\"ia-modal-overlay--transparent--light-white-client-nav\":\"ia-modal-overlay--transparent--light-white-client-nav____qAeFo ia-modal-overlay--light-white____v4IZ5 ia-modal____Te15m\",\"modal-header\":\"modal-header____XYzUn\",\"modal-footer\":\"modal-footer____cqrYq modal-header____XYzUn\",\"header-label\":\"header-label____IJOUW\",\"header-label-icon\":\"header-label-icon____a8d4R header-label____IJOUW\",\"header-label--alert\":\"header-label--alert____tn61M header-label-icon____a8d4R header-label____IJOUW\",\"header-label--info\":\"header-label--info____MuYaj header-label-icon____a8d4R header-label____IJOUW\",\"header-label--settings\":\"header-label--settings____f4RMl header-label-icon____a8d4R header-label____IJOUW\",\"header-label--accounts\":\"header-label--accounts____TD2fh header-label-icon____a8d4R header-label____IJOUW\",\"header-label--edit\":\"header-label--edit____PRgmA header-label-icon____a8d4R header-label____IJOUW\",\"header-label--download\":\"header-label--download____Uz9se header-label-icon____a8d4R header-label____IJOUW\",\"header-label--delete\":\"header-label--delete____u4mrs header-label-icon____a8d4R header-label____IJOUW\",\"header-label--history\":\"header-label--history____PEGCO header-label-icon____a8d4R header-label____IJOUW\",\"header-label--tag\":\"header-label--tag____p7DEx header-label-icon____a8d4R header-label____IJOUW\",\"header-label--search\":\"header-label--search____JL6TJ header-label-icon____a8d4R header-label____IJOUW\",\"header-label--kyc\":\"header-label--kyc____XEMi2 header-label-icon____a8d4R header-label____IJOUW\",\"header-label--advice\":\"header-label--advice____dC3Wg header-label-icon____a8d4R header-label____IJOUW\",\"header-label--insured\":\"header-label--insured____omWoW header-label-icon____a8d4R header-label____IJOUW\",\"header-label--quote\":\"header-label--quote____Y7KqX header-label-icon____a8d4R header-label____IJOUW\",\"header-label--policy\":\"header-label--policy____UmEzp header-label-icon____a8d4R header-label____IJOUW\",\"header-label--claim\":\"header-label--claim____Jn_Mb header-label-icon____a8d4R header-label____IJOUW\",\"header-label--fsg\":\"header-label--fsg____DN1QH header-label-icon____a8d4R header-label____IJOUW\",\"header-label--mandatory-document\":\"header-label--mandatory-document____b0QZG header-label-icon____a8d4R header-label____IJOUW\",\"header-label--notification\":\"header-label--notification____oKSVQ header-label-icon____a8d4R header-label____IJOUW\",\"header-label--task\":\"header-label--task____i7unr header-label-icon____a8d4R header-label____IJOUW\",\"header-label--contact\":\"header-label--contact_____cvAj header-label-icon____a8d4R header-label____IJOUW\",\"header-label--note\":\"header-label--note____ZnsuQ header-label-icon____a8d4R header-label____IJOUW\",\"header-label--document\":\"header-label--document____b_1ip header-label-icon____a8d4R header-label____IJOUW\",\"header-label--email\":\"header-label--email____gGYaj header-label-icon____a8d4R header-label____IJOUW\",\"header-label--template\":\"header-label--template____zAYFa header-label-icon____a8d4R header-label____IJOUW\",\"header-details\":\"header-details____ScboT\",\"header-detail-item\":\"header-detail-item____hmako\",\"header-label--context-menu\":\"header-label--context-menu____72wH9 header-label-icon____a8d4R header-label____IJOUW\",\"context-menu-sep\":\"context-menu-sep____IIPyK\",\"context-menu--one-col\":\"context-menu--one-col____vUb20\",\"context-menu-disabled\":\"context-menu-disabled____N4ey5\",\"context-menu--two-col\":\"context-menu--two-col____b9dmk context-menu--one-col____vUb20\",\"context-menu--three-col\":\"context-menu--three-col____gJrAA context-menu--two-col____b9dmk context-menu--one-col____vUb20\",\"modal-content-copy\":\"modal-content-copy____yyvu4\",\"processing-step\":\"processing-step____PIXUa\",\"processing-step--failed\":\"processing-step--failed____Caf3h processing-step____PIXUa\",\"document--processing\":\"document--processing____L6NBV\",\"eclipse-loader\":\"eclipse-loader____pCfU0\",\"confirmation-content\":\"confirmation-content____vn5fu\",\"confirmation-content--alert\":\"confirmation-content--alert____RTYKy confirmation-content____vn5fu\",\"ia-modal--search\":\"ia-modal--search____wWy4C\",\"view-block--alert--progress-modal\":\"view-block--alert--progress-modal____TI9rp view-block--alert____DtBwV view-block____bF821\",\"client-footer--right\":\"client-footer--right____sQhSu\",\"wizard-button-group\":\"wizard-button-group____T4dE3\",\"wizard-button-group--with-distribute\":\"wizard-button-group--with-distribute____zpfFL wizard-button-group____T4dE3\",\"wizard-nav-group\":\"wizard-nav-group____E7PuC\",\"footer-combo-selections\":\"footer-combo-selections____DNgsY\",\"btn--combo-option\":\"btn--combo-option____qUHWo\",\"footer-combo-container\":\"footer-combo-container____Bz5Pt\",\"right\":\"right____RJvDH\",\"pdf-selection\":\"pdf-selection____ETZIB\",\"ia-file-upload\":\"ia-file-upload____a9zLB btn____sYymq\",\"ia-file-upload--disabled\":\"ia-file-upload--disabled____j8GTu\",\"ia-file-info\":\"ia-file-info____yFW_l\",\"delete-pdf\":\"delete-pdf____p214p btn--icon-delete____ft5wh btn--icon____chkJS btn____sYymq\",\"pdf-section\":\"pdf-section____zg3dW\",\"margin-top\":\"margin-top____ibemN\",\"new-pdf-action-buttons\":\"new-pdf-action-buttons____PaqFa\",\"page-pdf-controls\":\"page-pdf-controls____FrPEE\",\"risk-questions-header--sticky\":\"risk-questions-header--sticky____FCvUn card-heading--sticky-header____SNih_\",\"risk-question-group\":\"risk-question-group____L3HOj\",\"interested-party--toggle\":\"interested-party--toggle____SQczV\",\"interested-party\":\"interested-party____aZ3dm\",\"interested-party--add\":\"interested-party--add____j5p_R interested-party--toggle____SQczV\",\"highlight-red\":\"highlight-red____CE64J\",\"risk-question-nav\":\"risk-question-nav____at7uG\",\"risk-question--content\":\"risk-question--content____sfCFp\",\"card-heading--quote-wizard\":\"card-heading--quote-wizard____g9Yi2 card-heading____idZOB\",\"card-heading--policy-wizard\":\"card-heading--policy-wizard____LPviw card-heading____idZOB\",\"quote-nav-details\":\"quote-nav-details____wzuQt\",\"constrained-width--class\":\"constrained-width--class____f6XEB constrained-width____FvNbN\",\"grid-error-row\":\"grid-error-row____EU2ra\"};","import { EventAggregator } from 'aurelia-event-aggregator';\r\nimport { AureliaHooks } from 'resources/services/aurelia-hooks';\r\nimport { log } from 'resources/services/log-service';\r\nimport { captureException } from '@sentry/core';\r\nimport { TaskQueue } from 'aurelia-task-queue';\r\nimport { Api } from './api';\r\nimport { autoinject, observable, computedFrom, PLATFORM } from 'aurelia-framework';\r\nimport { RiskDetails } from 'resources/models/client';\r\nimport { RiskDetailsConfigModel } from '../../../models/risk-details';\r\nimport { cleanQceModel } from 'resources/clean-qce-model';\r\nimport styles from './risk-questions.css';\r\nimport { generateGuidString } from 'resources/utilities/insecure-guid';\r\nimport { IaToastService } from 'resources/services/ia-toast-service';\r\nimport { Wizard } from '../../../wizard';\r\nimport { EntityMode } from 'routes/app-adviser/client/quotes/interfaces';\r\nimport { getQuestionIds, handleQceIssues } from 'routes/app-adviser/client/wizard/functions';\r\nimport cloneDeep from 'lodash/cloneDeep';\r\nimport { pageScroll } from 'resources/page-scroll';\r\nimport { initScrollTabs, scrollTabs } from 'resources/tab-scroll';\r\nimport { I18N } from 'aurelia-i18n';\r\n\r\n@autoinject()\r\nexport class RiskQuestions {\r\n private styles = styles;\r\n private params: IStepModel;\r\n private model: RiskDetails = {} as RiskDetails;\r\n private previousModel: RiskDetails = {} as RiskDetails;\r\n private config: RiskDetailsConfigModel;\r\n private selectedRiskTab = 0;\r\n private newQuotePost6 = false;\r\n private mandatoryGridErrors = false;\r\n private mandatoryGridErrorDetail = [];\r\n private saveFailedMongoIds = [];\r\n\r\n private showIncompleteGridResponseWarningModal = false;\r\n private showIncompleteInterestedPartyWarningModal = false;\r\n\r\n // The QCE itself sets this when anything changes, we don't maintain this state\r\n private isDirty = false;\r\n\r\n private interestedPartiesErrorHighlight = false;\r\n\r\n private currentlySelectedInsuredLocation;\r\n private selectedInsuredLocation;\r\n @observable private selectedRisk;\r\n\r\n private hasRiskUpdated = false;\r\n private saveFailed = false;\r\n private saveFailedErrorsDetails: Map = new Map();\r\n private showSaveFailedModal = false;\r\n private isRiskTabChanging = false;\r\n private isLocationChanging = false;\r\n\r\n private tabUl: HTMLDivElement;\r\n private tabClass = 'a.riskTabs';\r\n private tabPosition;\r\n private isRightChevronDisabled = false;\r\n\r\n private unsupportedDisplayTypesMessage = '';\r\n private stepMessage = 'Validating risk questions...';\r\n\r\n private boundShowRiskWarnings;\r\n private boundHideTitle;\r\n private boundHighlightFieldsForReview;\r\n private boundShowIncompleteGridResponseWarning;\r\n private boundShowIncompleteInterestedPartyWarning;\r\n\r\n constructor(\r\n private api: Api,\r\n private taskQueue: TaskQueue,\r\n private toast: IaToastService,\r\n private hooks: AureliaHooks,\r\n private wizard: Wizard,\r\n private ea: EventAggregator,\r\n private i18n: I18N,\r\n ) {\r\n }\r\n\r\n bind() {\r\n this.hooks.addFilter('showIncompleteRiskQuestionsWarning', () => this.showRiskWarnings());\r\n this.hooks.addFilter('hideTitle', () => this.hideTitle());\r\n this.hooks.addFilter('canHighlightFieldsForReview', () => this.highlightFieldsForReview());\r\n this.hooks.addFilter('showIncompleteGridResponseWarning', () => this.showIncompleteGridResponseWarning());\r\n this.hooks.addFilter('showIncompleteInterestedPartyWarning', () => this.showIncompleteInterestedPartyWarning());\r\n\r\n this.unsupportedDisplayTypesMessage = this.i18n.tr('confirmInterfaced', {\r\n type: this.params.entityType === 'quote' ? 'Quotes' : 'Policies',\r\n });\r\n }\r\n\r\n unbind() {\r\n this.hooks.removeAllFilters('showIncompleteRiskQuestionsWarning');\r\n this.hooks.removeAllFilters('hideTitle');\r\n this.hooks.removeAllFilters('canHighlightFieldsForReview');\r\n this.hooks.removeAllFilters('showIncompleteGridResponseWarning');\r\n this.hooks.removeAllFilters('showIncompleteInterestedPartyWarning');\r\n }\r\n\r\n attached() {\r\n initScrollTabs(this);\r\n }\r\n\r\n highlightFieldsForReview() {\r\n return this.canHighlightFieldsForReview;\r\n }\r\n\r\n async showIncompleteGridResponseWarning() {\r\n // reset to allow validate to attempt save\r\n this.hasRiskUpdated = false;\r\n\r\n // show the wizard title, so it's included on the \"Validating risk questions\" message\r\n if (this.wizard.currentDirection !== null && this.config) {\r\n this.config.hideTitle = false;\r\n }\r\n\r\n await this.validate();\r\n\r\n // hide the wizard title if there are risk warnings, so title is not duplicated\r\n this.config.hideTitle = true;\r\n\r\n // show modal if save fails\r\n if (this.saveFailed && !this.mandatoryGridErrors) {\r\n this.showSaveFailedModal = true;\r\n return true;\r\n }\r\n\r\n // show modal if grid errors\r\n this.showIncompleteGridResponseWarningModal = this.mandatoryGridErrors;\r\n return this.showIncompleteGridResponseWarningModal;\r\n }\r\n\r\n closeIncompleteGridResponseWarning() {\r\n this.mandatoryGridErrors = false;\r\n this.showIncompleteGridResponseWarningModal = false;\r\n }\r\n\r\n showIncompleteInterestedPartyWarning() {\r\n this.showIncompleteInterestedPartyWarningModal = this.interestedPartiesValid() ? false : true;\r\n return this.showIncompleteInterestedPartyWarningModal;\r\n }\r\n\r\n hideTitle() {\r\n this.config.hideTitle = false;\r\n }\r\n\r\n async showRiskWarnings() {\r\n // don't show incomplete risk question warning\r\n // when wizard closes on risk question step\r\n if (this.wizard.currentDirection !== null) {\r\n // show the wizard title, so it's included on the \"Validating risk questions\" message\r\n this.config.hideTitle = false;\r\n\r\n await this.validate();\r\n\r\n if (this.hasRiskWarnings) {\r\n // hide the wizard title if there are risk warnings, so title is not duplicated\r\n this.config.hideTitle = true;\r\n }\r\n\r\n return this.hasRiskWarnings;\r\n }\r\n return false;\r\n }\r\n\r\n get hasRiskWarnings() {\r\n if (this.config?.insuredLocations && this.canHighlightFieldsForReview) {\r\n return this.config.insuredLocations.some((location) => {\r\n return location.risks.some((risk) => risk.riskOrInsurerRiskQuestionsRequireReview);\r\n });\r\n }\r\n\r\n return false;\r\n }\r\n\r\n get createRiskWarnings() {\r\n const result = [];\r\n\r\n if (this.hasRiskWarnings) {\r\n let index = 1;\r\n\r\n for (const location of this.config.insuredLocations) {\r\n if (location.risks.some((risk) => risk.riskOrInsurerRiskQuestionsRequireReview)) {\r\n result.push(index);\r\n }\r\n\r\n index++;\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n\r\n locationHasIncompleteRisks(location) {\r\n return location.risks.some((risk) => risk.riskOrInsurerRiskQuestionsRequireReview);\r\n }\r\n\r\n @computedFrom('newQuotePost6', 'params.entityMode')\r\n get canHighlightFieldsForReview() {\r\n\r\n // if new, only highlight once risk questions have been saved\r\n if(sessionStorage.getItem('is_draft_entity')){\r\n return this.newQuotePost6;\r\n }\r\n\r\n return this.params.entityMode === 'edit';\r\n }\r\n\r\n async activate(model: IStepModel) {\r\n try {\r\n this.params = model;\r\n\r\n if (this.params.entityId) {\r\n await this.fetchRiskQuestionsConfig();\r\n this.config.hideTitle = true;\r\n this.insuredLocationChanged();\r\n }\r\n\r\n this.checkDraftEntities();\r\n this.handleEntityViewMode();\r\n\r\n this.ea.publish('stepRendered', this.stepMessage);\r\n } catch (e) {\r\n this.ea.publish('stepRendered', this.stepMessage);\r\n }\r\n }\r\n\r\n private async fetchRiskQuestionsConfig() {\r\n const config = await this.api.getRiskQuestionsConfig(\r\n this.params.id,\r\n this.params.actionType,\r\n this.params.entityType,\r\n +this.params.entityId,\r\n this.params.entityMode as EntityMode,\r\n );\r\n this.config = new RiskDetailsConfigModel(config);\r\n }\r\n\r\n private checkDraftEntities() {\r\n if (\r\n sessionStorage.getItem('is_draft_entity') !== null &&\r\n sessionStorage.getItem('is_draft_entity_post_6') !== null\r\n ) {\r\n this.newQuotePost6 = true;\r\n }\r\n }\r\n\r\n private handleEntityViewMode() {\r\n if (this.params.entityMode === 'view') {\r\n this.stepMessage = 'Loading...';\r\n }\r\n }\r\n\r\n async insuredLocationChanged() {\r\n this.taskQueue.queueMicroTask(async () => {\r\n if (this.beginLocationChange()) return;\r\n\r\n try {\r\n if (await this.attemptLocationUpdate()) {\r\n return;\r\n }\r\n\r\n this.transitionToNewLocation();\r\n\r\n await this.getRiskQuestions();\r\n\r\n this.isLocationChanging = false;\r\n } catch (error) {\r\n captureException(error);\r\n this.isLocationChanging = false;\r\n }\r\n });\r\n }\r\n\r\n private beginLocationChange(): boolean {\r\n this.isLocationChanging = true;\r\n\r\n if (typeof this.selectedInsuredLocation === 'undefined') {\r\n this.selectedInsuredLocation = this.config.insuredLocations[0];\r\n } else {\r\n if (!this.interestedPartiesValid()) {\r\n this.selectedInsuredLocation = this.currentlySelectedInsuredLocation;\r\n this.isLocationChanging = false;\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n private async attemptLocationUpdate(): Promise {\r\n if (this.isDirty) {\r\n await this.updateRiskQuestions(this.currentlySelectedInsuredLocation.entitySituationId);\r\n }\r\n\r\n if (this.saveFailed) {\r\n this.selectedInsuredLocation = this.currentlySelectedInsuredLocation;\r\n this.isLocationChanging = false;\r\n this.showSaveFailedModal = true;\r\n return true;\r\n }\r\n\r\n if (this.mandatoryGridErrors) {\r\n this.selectedInsuredLocation = this.currentlySelectedInsuredLocation;\r\n this.isLocationChanging = false;\r\n this.showIncompleteGridResponseWarningModal = true;\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n private transitionToNewLocation() {\r\n // Store the newly selected location\r\n this.currentlySelectedInsuredLocation = this.selectedInsuredLocation;\r\n\r\n if (this.selectedInsuredLocation) {\r\n // Set the newly selected risk index\r\n this.selectedRisk = this.selectedInsuredLocation.risks[0];\r\n this.selectedRiskTab = 0;\r\n }\r\n\r\n initScrollTabs(this);\r\n }\r\n\r\n async getRiskQuestions(entityRiskId = this?.selectedRisk?.entityRiskId) {\r\n if (!entityRiskId) {\r\n return;\r\n }\r\n\r\n this.scrollToTop();\r\n const quoteDetails = await this.fetchRiskQuestionsFromApi(entityRiskId);\r\n\r\n if (quoteDetails) {\r\n this.model = quoteDetails;\r\n this.initializeModelGuid();\r\n\r\n if (this.canHighlightFieldsForReview) {\r\n this.handleAllQceIssues();\r\n }\r\n }\r\n\r\n this.isDirty = false;\r\n pageScroll('client-content-container');\r\n }\r\n\r\n private scrollToTop() {\r\n $('#client-content-container').animate({ scrollTop: 0 }, 0);\r\n }\r\n\r\n private async fetchRiskQuestionsFromApi(entityRiskId: number) {\r\n return this.api.getRiskQuestions(\r\n this.params.id,\r\n this.params.actionType,\r\n this.params.entityType,\r\n +this.params.entityId,\r\n this.selectedInsuredLocation.entitySituationId,\r\n entityRiskId,\r\n true,\r\n );\r\n }\r\n\r\n private initializeModelGuid() {\r\n if (this.model.guid === '00000000-0000-0000-0000-000000000000') {\r\n this.model.guid = generateGuidString();\r\n }\r\n }\r\n\r\n private handleAllQceIssues() {\r\n // Risk Questions\r\n this.handleQceIssues(this.model.questionsAndResponses.validationErrors);\r\n\r\n // Insurer Risk and Insurer Risk Occupation Questions\r\n this.model.insurers.forEach((i) => {\r\n this.handleQceIssues(i.questionsAndResponses.validationErrors);\r\n this.handleQceIssues(i.occupationQuestionsAndResponses.validationErrors);\r\n });\r\n }\r\n\r\n async updateRiskQuestions(\r\n entitySituationId = this.selectedInsuredLocation.entitySituationId,\r\n entityRiskId = this.selectedRisk.entityRiskId,\r\n ) {\r\n this.saveFailed = false;\r\n\r\n const newModel = this.prepareNewModel();\r\n\r\n let response;\r\n try {\r\n response = await this.api.putRiskQuestions(\r\n this.params.id,\r\n this.params.actionType,\r\n this.params.entityType,\r\n +this.params.entityId,\r\n entitySituationId,\r\n entityRiskId,\r\n newModel,\r\n );\r\n } catch (error) {\r\n this.saveFailed = true;\r\n throw error;\r\n }\r\n\r\n this.checkRiskValidity(response);\r\n this.handleApiResponse(response);\r\n\r\n return response;\r\n }\r\n\r\n private prepareNewModel() {\r\n const newModel = cloneDeep(this.model);\r\n\r\n newModel.questionsAndResponses = this.applyCleanQceModel(this.model.questionsAndResponses);\r\n\r\n newModel.insurers.forEach((insurer) => {\r\n if (insurer.insurerRiskQuestionsPresent) {\r\n insurer.questionsAndResponses = this.applyCleanQceModel(insurer.questionsAndResponses);\r\n }\r\n if (insurer.insurerRiskOccupationQuestionsPresent) {\r\n insurer.occupationQuestionsAndResponses = this.applyCleanQceModel(insurer.occupationQuestionsAndResponses);\r\n }\r\n });\r\n\r\n return newModel;\r\n }\r\n\r\n private applyCleanQceModel(model: any) {\r\n return cleanQceModel(model, true);\r\n }\r\n\r\n private handleApiResponse(response: any) {\r\n if (response !== null) {\r\n this.toast.destroyAllToasts();\r\n this.handleQceIssues(response);\r\n this.handleSaveFailed(response);\r\n }\r\n }\r\n\r\n private handleSaveFailed(response: any) {\r\n // Save failed, but not on an incomplete grid response\r\n if (Array.isArray(response) && !this.mandatoryGridErrors) {\r\n this.saveFailed = true;\r\n\r\n // grab mongo error keys\r\n this.saveFailedMongoIds = [];\r\n response\r\n .find((x) => x.property === 'mongoId')\r\n ?.errors.forEach((error) => {\r\n this.saveFailedMongoIds.push(error.errorKey.replace('Logging Id: ', ''));\r\n });\r\n }\r\n }\r\n\r\n checkRiskValidity(response) {\r\n if (!response) {\r\n this.selectedRisk.riskOrInsurerRiskQuestionsRequireReview = false;\r\n } else {\r\n if (\r\n !response?.insurerRiskQuestionValidationErrors?.length &&\r\n !response?.insurerRiskOccupationQuestionValidationErrors?.length &&\r\n !response?.mandatoryQuestionValidationErrors?.length\r\n ) {\r\n this.selectedRisk.riskOrInsurerRiskQuestionsRequireReview = false;\r\n this.isDirty = true;\r\n } else {\r\n this.selectedRisk.riskOrInsurerRiskQuestionsRequireReview = true;\r\n this.isDirty = false;\r\n }\r\n }\r\n }\r\n\r\n interestedPartiesValid() {\r\n let isValid = true;\r\n this.interestedPartiesErrorHighlight = false;\r\n if (this.model.interestedPartiesPresentFlag) {\r\n const isInterestedPartyvalid = this.model.interestedParties.some((party) => party.interestedParty === '');\r\n if (this.model.interestedParties.length === 0 || isInterestedPartyvalid) {\r\n this.showIncompleteInterestedPartyWarningModal = true;\r\n this.interestedPartiesErrorHighlight = true;\r\n isValid = false;\r\n }\r\n }\r\n\r\n return isValid;\r\n }\r\n\r\n async validate() {\r\n let isValid = true;\r\n\r\n if (!this.interestedPartiesValid() || this?.config?.isReadOnly) {\r\n return true;\r\n }\r\n\r\n if (!this.hasRiskUpdated) {\r\n try {\r\n await this.updateRiskQuestions();\r\n this.hasRiskUpdated = true;\r\n } catch (error) {\r\n this.hasRiskUpdated = false;\r\n isValid = false;\r\n log.error(error);\r\n }\r\n\r\n if (isValid) {\r\n if (sessionStorage.getItem('is_draft_entity') !== null) {\r\n sessionStorage.setItem('is_draft_entity_post_6', 'true');\r\n }\r\n\r\n if (\r\n sessionStorage.getItem('is_draft_entity') !== null &&\r\n sessionStorage.getItem('is_draft_entity_post_6') !== null\r\n ) {\r\n this.newQuotePost6 = true;\r\n }\r\n }\r\n }\r\n\r\n return isValid;\r\n }\r\n\r\n // TODO: Refactor all of the following\r\n handleQceIssues(response) {\r\n handleQceIssues(response, this);\r\n }\r\n\r\n validateGridResponses(responseObject, group, question) {\r\n return question.currentResponse.gridResponses.map((gridResponse) => {\r\n if (gridResponse.Guid === responseObject.guid) {\r\n this.updateErrorStates(question, gridResponse);\r\n\r\n const groupDetails = this.mandatoryGridErrorDetail.find((x) => x.groupName === group.groupDisplayName);\r\n\r\n if (!groupDetails) {\r\n this.createGroupErrorDetail(responseObject, group, question);\r\n } else {\r\n this.updateGroupErrorDetail(responseObject, groupDetails, question);\r\n }\r\n }\r\n return gridResponse;\r\n });\r\n }\r\n\r\n private updateErrorStates(question, gridResponse) {\r\n question.hasError = true;\r\n gridResponse.hasError = true;\r\n this.mandatoryGridErrors = true;\r\n }\r\n\r\n private createGroupErrorDetail(responseObject, group, question) {\r\n this.mandatoryGridErrorDetail.push({\r\n groupName: group.groupDisplayName,\r\n questions: [\r\n {\r\n question: `${question.sequenceNo} ${question.questionText}`,\r\n rows: [\r\n {\r\n guid: responseObject.guid,\r\n property: [responseObject.property],\r\n },\r\n ],\r\n },\r\n ],\r\n });\r\n }\r\n\r\n private updateGroupErrorDetail(responseObject, groupDetails, question) {\r\n const questionDetails = groupDetails.questions.find(\r\n (x) => x.question === `${question.sequenceNo} ${question.questionText}`,\r\n );\r\n\r\n if (questionDetails) {\r\n this.updateQuestionErrorDetail(responseObject, questionDetails);\r\n } else {\r\n this.createQuestionErrorDetail(responseObject, groupDetails, question);\r\n }\r\n }\r\n\r\n private updateQuestionErrorDetail(responseObject, questionDetails) {\r\n const rowDetails = questionDetails.rows.find((x) => x.guid === responseObject.guid);\r\n\r\n if (rowDetails) {\r\n if (!rowDetails.property.includes(responseObject.property)) {\r\n rowDetails.property.push(responseObject.property);\r\n }\r\n } else {\r\n questionDetails.rows.push({\r\n guid: responseObject.guid,\r\n property: [responseObject.property],\r\n });\r\n }\r\n }\r\n\r\n private createQuestionErrorDetail(responseObject, groupDetails, question) {\r\n groupDetails.questions.push({\r\n question: `${question.sequenceNo} ${question.questionText}`,\r\n rows: [\r\n {\r\n guid: responseObject.guid,\r\n property: [responseObject.property],\r\n },\r\n ],\r\n });\r\n }\r\n\r\n questionsWithErrors(responseObject, group, question) {\r\n const errorDetails = this.saveFailedErrorsDetails.get(`${group.sequenceNo}${group.groupDisplayName}`) ?? {\r\n groupName: group.groupDisplayName,\r\n questions: [],\r\n };\r\n\r\n if (!errorDetails.questions.includes(`${question.sequenceNo} ${question.questionText}`)) {\r\n errorDetails.questions.push(`${question.sequenceNo} ${question.questionText}`);\r\n }\r\n\r\n this.saveFailedErrorsDetails.set(`${group.sequenceNo}${group.groupDisplayName}`, errorDetails);\r\n }\r\n\r\n getQuestionIds(errors): number[] {\r\n return getQuestionIds(errors);\r\n }\r\n\r\n async riskTabChanged(risk) {\r\n // don't change tab if it's already changing OR\r\n // if there are incomplete grid responses OR\r\n // there are incomplete interested parties\r\n if (this.isRiskTabChanging || !this.interestedPartiesValid()) {\r\n return;\r\n }\r\n\r\n this.isRiskTabChanging = true;\r\n\r\n // Find the index of the newly selected risk\r\n const selectedRiskIndex = this.selectedInsuredLocation.risks.findIndex((r) => r.entityRiskId === risk.entityRiskId);\r\n\r\n // This is a new risk\r\n if (selectedRiskIndex !== this.selectedRiskTab) {\r\n if (this.params.entityMode !== EntityMode.View && this.isDirty) {\r\n try {\r\n await this.updateRiskQuestions(\r\n this.selectedInsuredLocation.entitySituationId,\r\n this.selectedRisk.entityRiskId,\r\n );\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n // prevent risk change if save failed\r\n if (this.saveFailed) {\r\n this.isRiskTabChanging = false;\r\n this.showSaveFailedModal = true;\r\n return;\r\n }\r\n\r\n // prevent risk change if there are grid response errors\r\n if (this.mandatoryGridErrors) {\r\n this.isRiskTabChanging = false;\r\n this.showIncompleteGridResponseWarningModal = true;\r\n return;\r\n }\r\n\r\n // Store the newly selected risk\r\n this.selectedRisk = risk;\r\n\r\n // Set the newly selected risk index\r\n this.selectedRiskTab = selectedRiskIndex;\r\n\r\n // Calls the API to get the data for the selected risk\r\n await this.getRiskQuestions();\r\n }\r\n\r\n this.isRiskTabChanging = false;\r\n }\r\n\r\n insurerDisplayValue(entityInsurerId: number) {\r\n return this.config.insuredLocations\r\n .find((x) => x.entitySituationId === this.selectedInsuredLocation.entitySituationId)\r\n .risks.find((y) => y.entityRiskId === this.selectedRisk.entityRiskId)\r\n .insurers.find((z) => z.entityInsurerId === entityInsurerId).insurerName;\r\n }\r\n\r\n scrollTabs(direction) {\r\n scrollTabs(this, direction);\r\n }\r\n\r\n @computedFrom('tabPosition')\r\n get isLeftChevronDisabled() {\r\n return this.tabPosition > 0;\r\n }\r\n\r\n interestedPartiesPresentChanged() {\r\n this.taskQueue.queueMicroTask(() => {\r\n this.isDirty = true;\r\n if (!this.model.interestedPartiesPresentFlag) {\r\n this.model.interestedParties = [];\r\n } else {\r\n this.addInterestedParty();\r\n }\r\n });\r\n }\r\n\r\n interestedPartyChanged() {\r\n this.isDirty = true;\r\n }\r\n\r\n addInterestedParty() {\r\n if (this.model) {\r\n this.isDirty = true;\r\n this.model.interestedParties.push({\r\n guid: generateGuidString(),\r\n interestedParty: '',\r\n });\r\n }\r\n }\r\n\r\n deleteInterestedParty(index: number) {\r\n if (this.model) {\r\n this.isDirty = true;\r\n this.model.interestedParties.splice(index, 1);\r\n }\r\n }\r\n}\r\n"],"names":["http","getRiskQuestionsConfig","clientId","actionType","entityType","entityId","mode","endpoint","environment","uri","this","fetch","method","json","getRiskQuestions","entitySituationId","entityRiskId","includeValidationIssues","putRiskQuestions","model","body","text","JSON","parse","autoinject","Api","api","taskQueue","toast","hooks","wizard","ea","i18n","styles","previousModel","selectedRiskTab","newQuotePost6","mandatoryGridErrors","mandatoryGridErrorDetail","saveFailedMongoIds","showIncompleteGridResponseWarningModal","showIncompleteInterestedPartyWarningModal","isDirty","interestedPartiesErrorHighlight","hasRiskUpdated","saveFailed","saveFailedErrorsDetails","Map","showSaveFailedModal","isRiskTabChanging","isLocationChanging","tabClass","isRightChevronDisabled","unsupportedDisplayTypesMessage","stepMessage","bind","addFilter","showRiskWarnings","hideTitle","highlightFieldsForReview","showIncompleteGridResponseWarning","showIncompleteInterestedPartyWarning","tr","type","params","unbind","removeAllFilters","attached","canHighlightFieldsForReview","currentDirection","config","validate","closeIncompleteGridResponseWarning","interestedPartiesValid","hasRiskWarnings","insuredLocations","some","location","risks","risk","riskOrInsurerRiskQuestionsRequireReview","result","index","push","locationHasIncompleteRisks","sessionStorage","getItem","entityMode","activate","fetchRiskQuestionsConfig","insuredLocationChanged","checkDraftEntities","handleEntityViewMode","publish","id","queueMicroTask","beginLocationChange","attemptLocationUpdate","transitionToNewLocation","selectedInsuredLocation","currentlySelectedInsuredLocation","updateRiskQuestions","selectedRisk","scrollToTop","fetchRiskQuestionsFromApi","quoteDetails","initializeModelGuid","handleAllQceIssues","$","animate","scrollTop","guid","handleQceIssues","questionsAndResponses","validationErrors","insurers","forEach","i","occupationQuestionsAndResponses","newModel","prepareNewModel","response","checkRiskValidity","handleApiResponse","applyCleanQceModel","insurer","insurerRiskQuestionsPresent","insurerRiskOccupationQuestionsPresent","destroyAllToasts","handleSaveFailed","Array","isArray","find","x","property","errors","error","errorKey","replace","insurerRiskQuestionValidationErrors","length","insurerRiskOccupationQuestionValidationErrors","mandatoryQuestionValidationErrors","isValid","interestedPartiesPresentFlag","isInterestedPartyvalid","interestedParties","party","interestedParty","isReadOnly","setItem","validateGridResponses","responseObject","group","question","currentResponse","gridResponses","map","gridResponse","Guid","updateErrorStates","groupDetails","groupName","groupDisplayName","updateGroupErrorDetail","createGroupErrorDetail","hasError","questions","sequenceNo","questionText","rows","questionDetails","updateQuestionErrorDetail","createQuestionErrorDetail","rowDetails","includes","questionsWithErrors","errorDetails","get","set","getQuestionIds","riskTabChanged","selectedRiskIndex","findIndex","r","console","log","insurerDisplayValue","entityInsurerId","y","z","insurerName","scrollTabs","direction","tabPosition","interestedPartiesPresentChanged","addInterestedParty","interestedPartyChanged","deleteInterestedParty","splice","observable","computedFrom","Wizard","EventAggregator","I18N","RiskQuestions"],"sourceRoot":""}
To view data please Distribute Documents
Row requires:
An invalid response is present and cannot be saved.
Please contact your helpdesk for assistance and provide the following ${saveFailedMongoIds.length > 1 ? 'codes' : 'code'}:
${obj.groupName}
${question}