{"version":3,"file":"app-1c5fe78a.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./src/components/client-profile-modal/client-profile-modal.html","webpack://iadviser/./src/components/client-profile-modal/templates/associations.html","webpack://iadviser/./src/components/client-profile-modal/templates/branch.html","webpack://iadviser/./src/components/client-profile-modal/templates/contact.html","webpack://iadviser/./src/components/client-profile-modal/templates/general.html","webpack://iadviser/./src/components/client-profile-modal/templates/notes.html","webpack://iadviser/./src/components/client-profile-modal/templates/questions.html","webpack://iadviser/./src/components/client-profile-modal/templates/sales.html","webpack://iadviser/./src/components/client-profile-modal/client-profile-modal.css?2a88","webpack://iadviser/./src/components/client-profile-modal/client-profile-modal.ts"],"sourcesContent":["// Module\nvar code = \"\";\n// Exports\nexport default code;","// Module\nvar code = \"\";\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 = \"\";\n// Exports\nexport default code;","// Module\nvar code = \"\";\n// Exports\nexport default code;","// extracted by mini-css-extract-plugin\nexport default {\"btn\":\"btn____p9Nip\",\"btn--flat\":\"btn--flat____qeTgq btn____p9Nip\",\"btn--submit\":\"btn--submit____UZ4vY btn____p9Nip\",\"btn--delete\":\"btn--delete____stbnF btn____p9Nip\",\"btn--link\":\"btn--link____rLLzU btn____p9Nip\",\"btn--inline-text-link\":\"btn--inline-text-link____Sjc8x btn--link____rLLzU btn____p9Nip\",\"btn--footer\":\"btn--footer____YwcfZ btn____p9Nip\",\"btn--footer-submit\":\"btn--footer-submit____y9Oho btn--submit____UZ4vY btn____p9Nip btn--footer____YwcfZ btn____p9Nip\",\"btn--footer-cancel\":\"btn--footer-cancel____dL1jn btn--flat____qeTgq btn____p9Nip btn--footer____YwcfZ btn____p9Nip\",\"btn--footer-delete\":\"btn--footer-delete____mj_H9 btn--delete____stbnF btn____p9Nip btn--footer____YwcfZ btn____p9Nip\",\"btn--footer-combo\":\"btn--footer-combo____XJlWg btn--footer____YwcfZ btn____p9Nip\",\"btn--lmi-bicalc\":\"btn--lmi-bicalc____wJUSv btn____p9Nip\",\"btn--lmi-risk\":\"btn--lmi-risk____NVamc btn____p9Nip\",\"btn--lmi-policy-comparison\":\"btn--lmi-policy-comparison____sjNcK btn____p9Nip\",\"btn--lmi-policy-coach\":\"btn--lmi-policy-coach____flQAj btn____p9Nip\",\"btn--andrew-nock\":\"btn--andrew-nock____dgiJg btn____p9Nip\",\"btn--construction-cost-consultants\":\"btn--construction-cost-consultants____SqLui btn____p9Nip\",\"btn--5-star\":\"btn--5-star____hyItw btn____p9Nip\",\"btn--thermoscan\":\"btn--thermoscan____BpZhY btn____p9Nip\",\"btn--risk-survey-services\":\"btn--risk-survey-services____KXchs btn____p9Nip\",\"btn--risk-management\":\"btn--risk-management____TOApk btn____p9Nip\",\"btn--lmi-bicalc--disabled\":\"btn--lmi-bicalc--disabled____k3tnN btn--lmi-bicalc____wJUSv btn____p9Nip\",\"btn--lmi-risk--disabled\":\"btn--lmi-risk--disabled____ENlP_ btn--lmi-risk____NVamc btn____p9Nip\",\"btn--lmi-policy-comparison--disabled\":\"btn--lmi-policy-comparison--disabled____vnpwT btn--lmi-policy-comparison____sjNcK btn____p9Nip\",\"btn--initial-insured-location-risk\":\"btn--initial-insured-location-risk_____1ndX btn--flat____qeTgq btn____p9Nip btn____p9Nip\",\"btn--icon\":\"btn--icon____Nj82g btn____p9Nip\",\"btn--icon-no-border\":\"btn--icon-no-border____BEsOd\",\"btn--icon-add\":\"btn--icon-add____YtxXg btn--icon____Nj82g btn____p9Nip\",\"btn--add-risk\":\"btn--add-risk____Q0v4r btn--icon____Nj82g btn____p9Nip\",\"btn--icon-close\":\"btn--icon-close____MZUYy btn--icon____Nj82g btn____p9Nip\",\"btn--icon-delete\":\"btn--icon-delete____zVOPk btn--icon____Nj82g btn____p9Nip\",\"btn--icon-download\":\"btn--icon-download____DoT6u btn--icon____Nj82g btn____p9Nip\",\"btn--icon-edit\":\"btn--icon-edit____yD6IZ btn--icon____Nj82g btn____p9Nip\",\"btn--icon-email\":\"btn--icon-email____SRaPm btn--icon____Nj82g btn____p9Nip\",\"btn--icon-download-email\":\"btn--icon-download-email____P1boX btn--icon____Nj82g btn____p9Nip\",\"btn--icon-folder\":\"btn--icon-folder____X7krS btn--icon____Nj82g btn____p9Nip\",\"btn--icon-folder-locked\":\"btn--icon-folder-locked____n_T8Z btn--icon____Nj82g btn____p9Nip\",\"btn--icon-folder-locked-active\":\"btn--icon-folder-locked-active____Tly8v btn--icon____Nj82g btn____p9Nip\",\"btn--icon-history\":\"btn--icon-history____GVVDQ btn--icon____Nj82g btn____p9Nip\",\"btn--icon-info\":\"btn--icon-info____quims btn--icon____Nj82g btn____p9Nip\",\"btn--icon-link\":\"btn--icon-link____oMqXN btn--icon____Nj82g btn____p9Nip\",\"btn--icon-unlink\":\"btn--icon-unlink____ISq4g btn--icon-delete____zVOPk btn--icon____Nj82g btn____p9Nip\",\"btn--icon-map\":\"btn--icon-map____lYlBE btn--icon____Nj82g btn____p9Nip\",\"btn--icon-more\":\"btn--icon-more____S1vEp btn--icon____Nj82g btn____p9Nip\",\"btn--icon-open-in-new-window\":\"btn--icon-open-in-new-window____msxmL btn--icon____Nj82g btn____p9Nip\",\"btn--icon-favourite--selected\":\"btn--icon-favourite--selected____yGmDr btn--icon____Nj82g btn____p9Nip\",\"btn--icon-favourite--deselected\":\"btn--icon-favourite--deselected____hQN9G btn--icon____Nj82g btn____p9Nip\",\"btn--icon-preview\":\"btn--icon-preview____NntpW btn--icon____Nj82g btn____p9Nip\",\"btn--icon-pre-printed\":\"btn--icon-pre-printed____nzak9 btn--icon____Nj82g btn____p9Nip\",\"btn--icon-print\":\"btn--icon-print____Y5E6U btn--icon____Nj82g btn____p9Nip\",\"btn--icon-save\":\"btn--icon-save____E1xCx btn--icon____Nj82g btn____p9Nip\",\"btn--icon-settings\":\"btn--icon-settings____H8ZME btn--icon____Nj82g btn____p9Nip\",\"btn--icon-show-details\":\"btn--icon-show-details____V99fe btn--icon____Nj82g btn____p9Nip\",\"btn--icon-show-details--alert\":\"btn--icon-show-details--alert____xb8Uq btn--icon____Nj82g btn____p9Nip\",\"btn--icon-show-summary\":\"btn--icon-show-summary_____6FMV btn--icon____Nj82g btn____p9Nip\",\"btn--icon-attachment\":\"btn--icon-attachment____yZzrE btn--icon____Nj82g btn____p9Nip\",\"btn--icon-tag\":\"btn--icon-tag____kvHLR btn--icon____Nj82g btn____p9Nip\",\"btn--icon-undo\":\"btn--icon-undo_____tVpc btn--icon____Nj82g btn____p9Nip\",\"btn--icon-arrow-forward\":\"btn--icon-arrow-forward____a3fzn btn--icon____Nj82g btn____p9Nip\",\"btn--aside-collapse\":\"btn--aside-collapse____uKbOh btn--icon____Nj82g btn____p9Nip\",\"btn--icon-expand-more\":\"btn--icon-expand-more____XU4a8 btn--icon____Nj82g btn____p9Nip\",\"btn--icon-expand-less\":\"btn--icon-expand-less____qTEC7 btn--icon____Nj82g btn____p9Nip\",\"btn--back\":\"btn--back____Heh6I btn____p9Nip\",\"btn--back-to-sign-in\":\"btn--back-to-sign-in____k77MV btn--back____Heh6I btn____p9Nip\",\"btn--icon-advanced-search\":\"btn--icon-advanced-search____x7MIt btn--icon____Nj82g btn____p9Nip\",\"btn--wizard\":\"btn--wizard____wgkle btn____p9Nip\",\"btn--wizard-back\":\"btn--wizard-back____eC4c1 btn--wizard____wgkle btn____p9Nip\",\"btn--wizard-next\":\"btn--wizard-next____b1jNn btn--wizard____wgkle btn____p9Nip\",\"fieldset\":\"fieldset____GtWhl\",\"fieldset-instruction\":\"fieldset-instruction____bgj3T\",\"fieldset--no-padding\":\"fieldset--no-padding____qBpwZ fieldset____GtWhl\",\"fieldset--alt\":\"fieldset--alt____RXkXX fieldset____GtWhl\",\"input-search\":\"input-search____Bo4Ir\",\"view-password\":\"view-password____O0FV_\",\"ia-currency-input\":\"ia-currency-input____XaCd5\",\"ia-currency-negative\":\"ia-currency-negative____aEqMH\",\"select--mini\":\"select--mini____UA7xJ\",\"required-label\":\"required-label____BKltI\",\"alert\":\"alert____VFftO\",\"alert--important\":\"alert--important____HX7xt\",\"input-label\":\"input-label____bYxt6\",\"w-100\":\"w-100____zHoGS\",\"search-input-wrapper\":\"search-input-wrapper____yhRJL\",\"search-input--results\":\"search-input--results_____RoBD\",\"search-input--result\":\"search-input--result____I8NVV\",\"search-input--result--highlighted\":\"search-input--result--highlighted____W7CLa\",\"date-range-selections\":\"date-range-selections____Bn33F\",\"date-arrow-forward\":\"date-arrow-forward____n3qu7\",\"qce-dropdown\":\"qce-dropdown____QzVsy\",\"qce-or\":\"qce-or____KgvqY\",\"qce-dropdown-with-dropdown\":\"qce-dropdown-with-dropdown____l5Trt\",\"qce-vehicle-registration-search\":\"qce-vehicle-registration-search____HFj2h\",\"row-gap\":\"row-gap____HPrU4\",\"row-group\":\"row-group____odrFA\",\"row-group--three\":\"row-group--three____rPdd2 row-group____odrFA\",\"grid-14\":\"grid-14____yXhps\",\"row-group--auto\":\"row-group--auto____4tUkf row-group____odrFA\",\"space\":\"space____oO3P7\",\"display-none--lg\":\"display-none--lg____JPlM3\",\"display-none--md\":\"display-none--md____U6NW9\",\"card\":\"card____iifaX\",\"card-content\":\"card-content____T49Nm\",\"card-heading\":\"card-heading____pau6j\",\"control-group\":\"control-group____kZj9F\",\"label-group\":\"label-group____FHIPT\",\"label-group-item\":\"label-group-item____kv1Ht\",\"constrained-width\":\"constrained-width____TfV3e\",\"button-group\":\"button-group_____qnQT\",\"card--alert\":\"card--alert____9Acyv card____iifaX\",\"card-heading--alert\":\"card-heading--alert____gQi6A card-heading____pau6j\",\"card--status-message\":\"card--status-message____AWZ65\",\"card-heading--sticky-header\":\"card-heading--sticky-header____UBwBK\",\"card-heading--no-icon\":\"card-heading--no-icon____kFh3l card-heading____pau6j\",\"card-heading--bold-title\":\"card-heading--bold-title____tDhDm\",\"table\":\"table____R99br\",\"table-heading-row\":\"table-heading-row____rJMwv\",\"table-row\":\"table-row____h28Ml\",\"table-result-row\":\"table-result-row____MDq4W\",\"break-word\":\"break-word____sWSSP\",\"no-wrap\":\"no-wrap____yepoV\",\"table-result-row--disabled\":\"table-result-row--disabled____p80TO\",\"table-modal\":\"table-modal____qAlf3 table____R99br\",\"table-enhanced\":\"table-enhanced____NINpp\",\"table--no-border-bottom\":\"table--no-border-bottom____tL7IO table____R99br\",\"height-45\":\"height-45____rHPy5\",\"edit-column\":\"edit-column____vh5ed\",\"delete-column\":\"delete-column____fL5qH\",\"date-table-heading\":\"date-table-heading____RjNDF\",\"button-edit\":\"button-edit____N2rje\",\"button-delete\":\"button-delete____YUj7u\",\"table-row-selected\":\"table-row-selected____MIbyo\",\"table-row-alert\":\"table-row-alert____ADjmd\",\"table-filter-row\":\"table-filter-row____N_4w8\",\"table-filter-row--endcap\":\"table-filter-row--endcap____VlkFg\",\"filter-column\":\"filter-column____JWrR9\",\"table-pagination\":\"table-pagination____MDNMT\",\"table-pagination-with-filter\":\"table-pagination-with-filter____YyxDn table-pagination____MDNMT\",\"table-button-group\":\"table-button-group____yeikW\",\"table-child-container\":\"table-child-container____g1nTP\",\"table-child-card\":\"table-child-card____lkENm\",\"child-table--selected-row\":\"child-table--selected-row____P4bgU\",\"child-table\":\"child-table____FQZSl table____R99br\",\"custom-pagination\":\"custom-pagination____UMPE9\",\"pagination-count\":\"pagination-count____pQ385\",\"pagination-button\":\"pagination-button____CbDBn btn____p9Nip\",\"pagination-prev\":\"pagination-prev____Guwad pagination-button____CbDBn btn____p9Nip\",\"pagination-next\":\"pagination-next____Tymts pagination-button____CbDBn btn____p9Nip\",\"pagination-disabled\":\"pagination-disabled_____lU7G pagination-button____CbDBn btn____p9Nip\",\"pagination-prev-disabled\":\"pagination-prev-disabled____h6A7N pagination-disabled_____lU7G pagination-button____CbDBn btn____p9Nip\",\"pagination-next-disabled\":\"pagination-next-disabled____adnAp pagination-disabled_____lU7G pagination-button____CbDBn btn____p9Nip\",\"pagination\":\"pagination____n1xvg\",\"pagination-top\":\"pagination-top____ePBpA pagination____n1xvg\",\"pagination-bottom\":\"pagination-bottom____J6Xdu pagination____n1xvg\",\"pagination-bottom--documents\":\"pagination-bottom--documents____QJEcF pagination-bottom____J6Xdu pagination____n1xvg\",\"table-cell-btn-icon\":\"table-cell-btn-icon____Zlbpe\",\"folder-table\":\"folder-table____Mwh5e table--no-border-bottom____tL7IO table____R99br\",\"doc-table-group--heading\":\"doc-table-group--heading____Yi27Y\",\"doc-table-group--heading-open\":\"doc-table-group--heading-open____MhPU_ doc-table-group--heading____Yi27Y\",\"doc-table-group--heading-with-options\":\"doc-table-group--heading-with-options____w1gP_\",\"constrained-width--folder-name\":\"constrained-width--folder-name____qSPNN constrained-width____TfV3e\",\"disable-entity\":\"disable-entity______lvJ\",\"button-options\":\"button-options____4kpfb\",\"button-options--add\":\"button-options--add____V7s8A button-options____4kpfb\",\"information-icon\":\"information-icon____RbqCc\",\"deleted-icon\":\"deleted-icon____I0Fj3\",\"exclamation-icon\":\"exclamation-icon____YEUyx\",\"success-icon\":\"success-icon____VVutR\",\"text-align-center\":\"text-align-center____tDjJm\",\"word-break\":\"word-break____dZ5gl\",\"btn-group\":\"btn-group____YIkNM\",\"accordion-content\":\"accordion-content____b_Daq\",\"toggle-collapse\":\"toggle-collapse____RyvWr\",\"toggle-collapse--disabled\":\"toggle-collapse--disabled____WOy0_ toggle-collapse____RyvWr\",\"toggle-expand\":\"toggle-expand____WWeYz toggle-collapse____RyvWr\",\"folder\":\"folder____WUNs7\",\"folder-locked\":\"folder-locked____KUNEE folder____WUNs7\",\"yesNo-filter-width\":\"yesNo-filter-width____bLBWP\",\"w-5\":\"w-5____ktFtm\",\"w-10\":\"w-10____LAdO5\",\"w-15\":\"w-15____ZMYB6\",\"w-20\":\"w-20____EJD_j\",\"w-25\":\"w-25____svypu\",\"w-30\":\"w-30____QJ2k5\",\"w-35\":\"w-35____xmwpJ\",\"w-40\":\"w-40____ZKJMh\",\"w-45\":\"w-45____KMRCu\",\"w-50\":\"w-50____jrczI\",\"w-60\":\"w-60____jfwQB\",\"scrollable-table-container\":\"scrollable-table-container____ELlHF\",\"empty-state\":\"empty-state____wAc0R\",\"empty-state--icon\":\"empty-state--icon____WHcbK\",\"empty-heading\":\"empty-heading____hIpXZ\",\"empty-subheading\":\"empty-subheading____LYl6v\",\"kyc\":\"kyc____xEOfe\",\"advice\":\"advice____H22ag\",\"insured\":\"insured____veTwZ\",\"quotes\":\"quotes____y76bj\",\"policies\":\"policies____hp0ni\",\"claims\":\"claims____WLIf8\",\"tasks\":\"tasks____hviW7\",\"documents\":\"documents____gKv4f\",\"view-block\":\"view-block_____06Ft\",\"view-block--heading\":\"view-block--heading____o50KG\",\"view-block--white\":\"view-block--white____bEjc8 view-block_____06Ft\",\"view-block--alert\":\"view-block--alert____isV3b view-block_____06Ft\",\"view-block--success\":\"view-block--success____uXybk view-block_____06Ft\",\"view-block--info\":\"view-block--info____cdK9C view-block_____06Ft\",\"view-block--warning\":\"view-block--warning____JS_Bs view-block_____06Ft view-block--warning____JS_Bs view-block_____06Ft\",\"view-block--alt\":\"view-block--alt____dS35c view-block_____06Ft\",\"view-block--with-icon\":\"view-block--with-icon____EhZzP view-block_____06Ft\",\"view-block-icon\":\"view-block-icon____nvN9O\",\"view-block--warning--with-icon\":\"view-block--warning--with-icon____SEoUJ view-block--warning____JS_Bs view-block_____06Ft\",\"view-block-checkbox\":\"view-block-checkbox____CBzzd view-block_____06Ft\",\"view-block-checkbox--alert\":\"view-block-checkbox--alert____Tt0OZ view-block--alert____isV3b view-block_____06Ft view-block-checkbox____CBzzd view-block_____06Ft\",\"text-view-content\":\"text-view-content____NfEjs\",\"tab-navigation\":\"tab-navigation____vxpM1\",\"has-warnings\":\"has-warnings____YqXdn\",\"tab-selected\":\"tab-selected____ynayJ tab____s8W2H\",\"disabled\":\"disabled____QNQQj\",\"tab\":\"tab____s8W2H\",\"btn--tab-overflow\":\"btn--tab-overflow____De0tG\",\"btn--tab-overflow-left\":\"btn--tab-overflow-left____BoIPq btn--tab-overflow____De0tG\",\"btn--tab-overflow-left-disabled\":\"btn--tab-overflow-left-disabled____fq7Dc btn--tab-overflow-left____BoIPq btn--tab-overflow____De0tG\",\"btn--tab-overflow-right\":\"btn--tab-overflow-right____rOgTG btn--tab-overflow____De0tG\",\"btn--tab-overflow-right-disabled\":\"btn--tab-overflow-right-disabled____qfFxR btn--tab-overflow-right____rOgTG btn--tab-overflow____De0tG\",\"constrained-width--tab\":\"constrained-width--tab____QJVXw constrained-width____TfV3e\",\"ia-modal\":\"ia-modal____tLkUt\",\"ia-modal-inner\":\"ia-modal-inner____M9XzS\",\"ia-modal-inner--context-menu\":\"ia-modal-inner--context-menu____z0Dc5 ia-modal-inner____M9XzS\",\"ia-modal-inner--wide-lg\":\"ia-modal-inner--wide-lg____gUeFK ia-modal-inner____M9XzS\",\"ia-modal-inner--wide-xxl\":\"ia-modal-inner--wide-xxl____rRbYL ia-modal-inner____M9XzS\",\"ia-modal-inner--take-over\":\"ia-modal-inner--take-over____qA6ij ia-modal-inner____M9XzS\",\"fixed-height\":\"fixed-height____iaeuN\",\"takeover-header\":\"takeover-header____kfuWH\",\"logo\":\"logo____w1eXo\",\"logo--broker\":\"logo--broker____CSseM logo____w1eXo\",\"close-search\":\"close-search____wPVDD\",\"ia-modal-content\":\"ia-modal-content____IQv5O\",\"ia-modal-overlay--transparent\":\"ia-modal-overlay--transparent____n3DDb ia-modal____tLkUt\",\"ia-modal-overlay--light-white\":\"ia-modal-overlay--light-white____EQDDg ia-modal____tLkUt\",\"ia-modal-overlay--transparent--light-white-client-nav\":\"ia-modal-overlay--transparent--light-white-client-nav____MBJlW ia-modal-overlay--light-white____EQDDg ia-modal____tLkUt\",\"modal-header\":\"modal-header____IgnFT\",\"modal-footer\":\"modal-footer____YNaBJ modal-header____IgnFT\",\"header-label\":\"header-label____hAkrG\",\"header-label-icon\":\"header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--alert\":\"header-label--alert____ehNS1 header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--info\":\"header-label--info____UJ8HP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--settings\":\"header-label--settings____gAZJH header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--accounts\":\"header-label--accounts____JHPaY header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--edit\":\"header-label--edit____Lg3GB header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--download\":\"header-label--download____ntfNy header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--delete\":\"header-label--delete____j88zn header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--history\":\"header-label--history____XwEIM header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--tag\":\"header-label--tag____k4eMB header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--search\":\"header-label--search____RVAzE header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--kyc\":\"header-label--kyc____amL5q header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--advice\":\"header-label--advice____gT_0_ header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--insured\":\"header-label--insured____ByBaR header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--quote\":\"header-label--quote____U41Fl header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--policy\":\"header-label--policy____Kyb9t header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--claim\":\"header-label--claim____qMhFQ header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--fsg\":\"header-label--fsg____DwpIx header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--mandatory-document\":\"header-label--mandatory-document____ZhTgL header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--notification\":\"header-label--notification____VTlRO header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--task\":\"header-label--task____UIEYV header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--contact\":\"header-label--contact____msMkP header-label-icon____FzVu2 header-label____hAkrG header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--note\":\"header-label--note____Cxb9D header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--document\":\"header-label--document____nR7i1 header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--email\":\"header-label--email____P7J6A header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--template\":\"header-label--template____vORoM header-label-icon____FzVu2 header-label____hAkrG\",\"header-details\":\"header-details____rO82D\",\"header-detail-item\":\"header-detail-item____n6_jS\",\"header-label--context-menu\":\"header-label--context-menu____m9CME header-label-icon____FzVu2 header-label____hAkrG\",\"context-menu-sep\":\"context-menu-sep____iWKxm\",\"context-menu--one-col\":\"context-menu--one-col____L2u5R\",\"context-menu-disabled\":\"context-menu-disabled____ZHjON\",\"context-menu--two-col\":\"context-menu--two-col____Ech5m context-menu--one-col____L2u5R\",\"context-menu--three-col\":\"context-menu--three-col____uPWVx context-menu--two-col____Ech5m context-menu--one-col____L2u5R\",\"modal-content-copy\":\"modal-content-copy____Bq2Mi\",\"processing-step\":\"processing-step____GCami\",\"processing-step--failed\":\"processing-step--failed____k6seg processing-step____GCami\",\"document--processing\":\"document--processing____mdcwN\",\"eclipse-loader\":\"eclipse-loader____d1qPm\",\"confirmation-content\":\"confirmation-content____RnTMa\",\"confirmation-content--alert\":\"confirmation-content--alert____UPElq confirmation-content____RnTMa\",\"ia-modal--search\":\"ia-modal--search____qJrez\",\"view-block--alert--progress-modal\":\"view-block--alert--progress-modal____Ew7Y_ view-block--alert____isV3b view-block_____06Ft\",\"header-label--client-profile\":\"header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--general\":\"header-label--general____dxrnl header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--sales\":\"header-label--sales____tqAtN header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--branch\":\"header-label--branch____RwsrX header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--questions\":\"header-label--questions____dWrHZ header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--associations\":\"header-label--associations____GXbu9 header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"header-label--notes\":\"header-label--notes____xDhEn header-label--client-profile____x5FrP header-label-icon____FzVu2 header-label____hAkrG\",\"qce__h2\":\"qce__h2____mBqaW\",\"disclosure-wording\":\"disclosure-wording____VTK_w\",\"sales\":\"sales____CPAeP\",\"add-address\":\"add-address____jz9iJ\",\"add-address--same-as\":\"add-address--same-as____Cvolw add-address____jz9iJ\",\"search-width\":\"search-width____q4Vtk\",\"table--associated-search\":\"table--associated-search____Kqhhw table____R99br\",\"client-name-column\":\"client-name-column____leJYL\",\"button-options--edit-history\":\"button-options--edit-history____w6KbN button-options____4kpfb\",\"contact-options\":\"contact-options____UNp7P\",\"post-state-group\":\"post-state-group____v2xZL\",\"post-state-group-nz\":\"post-state-group-nz____No_Hj post-state-group____v2xZL\",\"manual-finder-group\":\"manual-finder-group____zeEQY\",\"ia-address-group\":\"ia-address-group____bYspa\",\"ia-address-group--lat-lon\":\"ia-address-group--lat-lon____Wr8sS\",\"address-grid\":\"address-grid____SBRhO\",\"address-detail\":\"address-detail____JgXPq\",\"preferred-control\":\"preferred-control____JtkSa\",\"contact-control\":\"contact-control____M9wWL\",\"preferred-contact\":\"preferred-contact____U_vAT\",\"preferred-control--email\":\"preferred-control--email____LC6mc preferred-control____JtkSa\",\"preferred-control--email-modal\":\"preferred-control--email-modal____k0Z3q preferred-control____JtkSa\",\"date-column-width\":\"date-column-width____pptHF\",\"constrained-width--client-name\":\"constrained-width--client-name____nuSsu constrained-width____TfV3e\",\"note-width--new\":\"note-width--new____FZLtp\",\"note-width--view\":\"note-width--view____PCf3Y\",\"history--date-column-width\":\"history--date-column-width____nN9fr\",\"button-group--address\":\"button-group--address____TZjW0\",\"label-button-group\":\"label-button-group____bTgkP\",\"btn-group--image\":\"btn-group--image____jsg_z btn-group____YIkNM\"};","import { successToast } from 'resources/utilities/toastr-helper';\r\nimport { autoinject, PLATFORM, useView, computedFrom, BindingEngine, TaskQueue, observable } from 'aurelia-framework';\r\nimport { ModalService } from '../modal/modal-service';\r\nimport { Api } from './api';\r\nimport styles from './client-profile-modal.css';\r\nimport { ApplicationCountryCodes, PartyInstanceType, ProfilePages } from 'resources/enums';\r\nimport { LookupDataService } from 'resources/services/lookup-data';\r\nimport { Note, ClientAssociation, Address, Phone, Email, Website, StaffMember } from 'resources/models/client';\r\nimport { ClientType } from 'resources/enums';\r\nimport { cleanQceModel } from 'resources/clean-qce-model';\r\nimport { momentToISOString, createUTCMoment, momentToString, newMoment } from 'resources/moment-helpers';\r\nimport { ValidationControllerFactory, ValidationController, ValidationRules } from 'aurelia-validation';\r\nimport { FormValidationRenderer } from 'resources/form-validation-renderer';\r\nimport { handleQceIssues, validateQce } from 'routes/app-adviser/client/wizard/functions';\r\nimport {\r\n AddressFetchedEventDto,\r\n IaAddressAutocomplete,\r\n} from 'components/ia-address-autocomplete/ia-address-autocomplete';\r\nimport { cloneDeep, differenceBy } from 'lodash';\r\nimport { isValidNumber } from 'libphonenumber-js';\r\nimport { EventAggregator } from 'aurelia-event-aggregator';\r\nimport { eventAggregatorEvents } from 'resources/constants';\r\nimport { ClaimsService } from 'resources/services/claims-service';\r\nimport { parseNumber } from 'components/forms/phone-number/ia-phone-number';\r\nimport { IFieldValueDefiniton } from 'interfaces/lookups/i-field-value-definition';\r\n\r\nPLATFORM.moduleName('./templates/general.html');\r\nPLATFORM.moduleName('./templates/sales.html');\r\nPLATFORM.moduleName('./templates/branch.html');\r\nPLATFORM.moduleName('./templates/contact.html');\r\nPLATFORM.moduleName('./templates/questions.html');\r\nPLATFORM.moduleName('./templates/associations.html');\r\nPLATFORM.moduleName('./templates/notes.html');\r\n\r\n@autoinject()\r\n@useView(PLATFORM.moduleName('components/client-profile-modal/client-profile-modal.html'))\r\nexport class ClientProfileModal {\r\n public styles = styles;\r\n private validationController: ValidationController;\r\n\r\n private hasClientViewPermission = false;\r\n private hasClientEditPermission = false;\r\n private hasBranchEditPermission = false;\r\n\r\n private clientId;\r\n private profilePageId;\r\n private view;\r\n private isCloseOnly = false;\r\n private isLoading = true;\r\n private appClientType;\r\n private isClient;\r\n private partyInstanceType;\r\n private clientCode;\r\n private clientName;\r\n private clientActive = false;\r\n private isNewMode = false;\r\n private isEditMode = false;\r\n private isDeleteMode = false;\r\n private isSaving = false;\r\n private clientSelected = false;\r\n\r\n private general;\r\n private acceptsDocAndMailHistory;\r\n private vulnerableClientHistory;\r\n private clientType: IFieldValueDefiniton[] = [];\r\n private clientCategory: IFieldValueDefiniton[] = [];\r\n private divisionTypes: IFieldValueDefiniton[] = [];\r\n private introductionType: IFieldValueDefiniton[] = [];\r\n private acceptsElectronicDisclosureDocuments: IFieldValueDefiniton[] = [];\r\n private acceptsMarketingMail: IFieldValueDefiniton[] = [];\r\n private clientDisclosureType: IFieldValueDefiniton[] = [];\r\n private clientDivisionMandatory;\r\n private clientIntroMandatory;\r\n public yesNoTypes;\r\n public vulnerabilityTypes;\r\n @observable() private fileList: FileList;\r\n public canPreviewImage = false;\r\n\r\n private sales;\r\n private clientTypeId;\r\n private salesStatusType: IFieldValueDefiniton[] = [];\r\n private salesRatingType: IFieldValueDefiniton[] = [];\r\n\r\n private advisers = [];\r\n private availableAdvisers = [];\r\n private isAdviserHistoryEdit = false;\r\n private advisersEditModal = [];\r\n\r\n private referrers = [];\r\n private referrersByBranch = [];\r\n private availableReferrers = [];\r\n private isReferrerHistoryEdit = false;\r\n private referrersEditModal = [];\r\n private inactiveReferrer = false;\r\n\r\n private staff = [];\r\n private availableUsers = [];\r\n private staffRoles: IFieldValueDefiniton[] = [];\r\n private availableClientRoles: IFieldValueDefiniton[] = [];\r\n private isStaffEdit = false;\r\n\r\n private addresses = [];\r\n private newAddress;\r\n private isNewAddress = false;\r\n private isAddressEdit = false;\r\n private addressTypes = [];\r\n private countryTypes: IFieldValueDefiniton[] = [];\r\n private addressFinderVM: IaAddressAutocomplete[] = [];\r\n private showAddressFinderValidation = false;\r\n\r\n private phones;\r\n private newPhone;\r\n private isNewPhone = false;\r\n private isPhoneEdit = false;\r\n private phoneTypes = [];\r\n\r\n private emails;\r\n private newEmail;\r\n private isNewEmail = false;\r\n private isEmailEdit = false;\r\n private emailTypes = [];\r\n\r\n private websites;\r\n private newWebsite;\r\n private isNewWebsite = false;\r\n private isWebsiteEdit = false;\r\n private websiteTypes = [];\r\n\r\n private notes;\r\n private noteType: IFieldValueDefiniton[] = [];\r\n\r\n private questions;\r\n\r\n private associations;\r\n private associationTypes: IFieldValueDefiniton[] = [];\r\n private newAssociation = new ClientAssociation();\r\n private associationSearchString = '';\r\n private associatedSearchResults = [];\r\n\r\n private isSearchComplete = false;\r\n private isAssociationEdit = false;\r\n\r\n private inputMaskOptions: any = {\r\n decimalPlaces: 0,\r\n minimumValue: 0,\r\n maximumValue: '999999999',\r\n emptyInputBehavior: 'focus',\r\n };\r\n\r\n private originalVulnerableFlag = null;\r\n\r\n constructor(\r\n private validationControllerFactory: ValidationControllerFactory,\r\n private api: Api,\r\n private modal: ModalService,\r\n private lookupDataService: LookupDataService,\r\n private bindingEngine: BindingEngine,\r\n private taskQueue: TaskQueue,\r\n private ea: EventAggregator,\r\n private claimsService: ClaimsService\r\n ) {\r\n this.validationController = this.validationControllerFactory.createForCurrentScope();\r\n this.validationController.addRenderer(new FormValidationRenderer());\r\n }\r\n\r\n @computedFrom('isLoading', 'isSaving')\r\n get isSaveDisabled() {\r\n return this.isLoading || this.isSaving || this.isReadOnly;\r\n }\r\n\r\n @computedFrom('isLoading', 'isNewMode', 'isEditMode', 'isDeleteMode', 'isSaving', 'isAdviserHistoryEdit', 'isReferrerHistoryEdit')\r\n get isCancelDisabled() {\r\n return this.isLoading || this.isNewMode || this.isEditMode || this.isDeleteMode || this.isSaving || this.isAdviserHistoryEdit || this.isReferrerHistoryEdit;\r\n }\r\n\r\n @computedFrom('hasClientViewPermission', 'hasClientEditPermission')\r\n get isReadOnly() {\r\n return this.hasClientViewPermission && !this.hasClientEditPermission || !this.clientActive;\r\n }\r\n\r\n async activate({ clientId: clientId, profilePageId: profilePageId, appClientType: appClientType, clientTypeId: clientTypeId, clientCode: clientCode, clientName: clientName, clientActive: clientActive }) {\r\n this.clientId = clientId;\r\n this.profilePageId = profilePageId;\r\n this.appClientType = appClientType;\r\n this.isClient = clientTypeId === ClientType.CLIENT;\r\n this.partyInstanceType = this.isClient ? PartyInstanceType.Client : PartyInstanceType.Prospect;\r\n this.clientCode = clientCode;\r\n this.clientName = clientName;\r\n this.clientActive = clientActive;\r\n\r\n (async () => {\r\n\r\n // client\r\n this.hasClientViewPermission = await this.claimsService.hasAsync('IadviserProcessingClientFindClientView');\r\n this.hasClientEditPermission = await this.claimsService.hasAsync('IadviserProcessingClientFindClientEdit');\r\n this.hasBranchEditPermission = await this.claimsService.hasAsync('IadviserProcessingClientBranchHistoryEdit');\r\n\r\n if (this.profilePageId === ProfilePages.GENERAL) {\r\n this.view = 'general';\r\n this.clientType = await this.lookupDataService.clientType();\r\n this.clientCategory = await this.lookupDataService.clientCategory();\r\n this.divisionTypes = await this.lookupDataService.divisionType();\r\n this.introductionType = await this.lookupDataService.introductionType();\r\n this.acceptsElectronicDisclosureDocuments = await this.lookupDataService.acceptsElectronicDisclosureDocuments();\r\n this.acceptsMarketingMail = await this.lookupDataService.acceptsMarketingMail();\r\n this.clientDisclosureType = await this.lookupDataService.clientDisclosureType();\r\n this.general = await this.api.getGeneralDetails(this.clientId);\r\n\r\n if(this.general.vulnerableClientDetail === null) {\r\n this.general.vulnerableClientDetail = {\r\n vulnerableClientId : null,\r\n vulnerableFlag: null,\r\n vulnerableClientTypeId: null,\r\n comment: null\r\n };\r\n }else{\r\n this.originalVulnerableFlag = this.general.vulnerableClientDetail.vulnerableFlag;\r\n }\r\n\r\n this.canPreviewImage = this.general?.headerPageImage?.entityImageId > 0;\r\n\r\n this.acceptsDocAndMailHistory = await this.api.getAcceptsDocsAndMailHistory(this.clientId);\r\n this.vulnerableClientHistory = await this.api.getVulnerableClientHistory(this.clientId);\r\n\r\n this.clientDivisionMandatory = (await this.lookupDataService.systemParameters()).clientDivisionMandatory;\r\n this.clientIntroMandatory = (await this.lookupDataService.systemParameters()).clientIntroMandatory;\r\n this.vulnerabilityTypes = await this.lookupDataService.vulnerabilityTypes();\r\n this.yesNoTypes = await this.lookupDataService.yesNo();\r\n\r\n this.initializeGeneralValidation();\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.SALES) {\r\n this.view = 'sales';\r\n this.isCloseOnly = this.isClient;\r\n\r\n this.salesStatusType = await this.lookupDataService.salesStatusType();\r\n this.salesRatingType = await this.lookupDataService.salesRatingType();\r\n const result = await this.api.getSalesDetails(this.clientId);\r\n this.clientTypeId = result.clientTypeId;\r\n this.sales = result.clientSalesDetail;\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.BRANCH) {\r\n this.view = 'branch';\r\n this.isCloseOnly = true;\r\n\r\n this.advisers = await this.api.getAdvisers(this.clientId);\r\n this.availableAdvisers = (await this.api.activeAdvisersByBranch(this.clientId)).map((obj: any) => ({\r\n id: obj.adviserId,\r\n label: obj.adviserName,\r\n }));\r\n\r\n await this.getReferrers();\r\n this.referrersByBranch = (await this.api.activeReferrersByBranch(this.clientId)).map((obj: any) => ({\r\n id: obj.referralId,\r\n label: obj.referralName\r\n }));\r\n\r\n this.getAvailableReferrers();\r\n\r\n this.staffRoles = await this.lookupDataService.clientRole();\r\n\r\n this.availableUsers = (await this.api.activeUsersByBranch(this.clientId)).map((obj: any) => ({\r\n id: obj.securityUsersId,\r\n label: obj.fullName,\r\n }));\r\n\r\n this.staff = (await this.api.getStaff(this.clientId)).map((staff) => {\r\n staff.roleLabel = this.staffRoles.find((x) => x.id === staff.clientRoleId).label;\r\n return staff;\r\n });\r\n\r\n this.getAvailableClientRoles();\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.CONTACT) {\r\n this.view = 'contact';\r\n this.isCloseOnly = true;\r\n\r\n const addresses = await this.api.getAddresses(this.clientId);\r\n this.phones = (await this.api.getPhones(this.clientId)).sort((a, b) => b.id - a.id);\r\n this.emails = (await this.api.getEmails(this.clientId)).sort((a, b) => b.id - a.id);\r\n this.websites = (await this.api.getWebsites(this.clientId)).sort((a, b) => b.id - a.id);\r\n\r\n this.addressTypes = await this.lookupDataService.fieldTypes('address', this.partyInstanceType);\r\n this.phoneTypes = await this.lookupDataService.fieldTypes('phone', this.partyInstanceType);\r\n this.emailTypes = await this.lookupDataService.fieldTypes('email', this.partyInstanceType);\r\n this.websiteTypes = await this.lookupDataService.fieldTypes('website', this.partyInstanceType);\r\n this.countryTypes = await this.lookupDataService.countryCode();\r\n\r\n // Filter addresses by type\r\n this.addressTypes.forEach((type) => {\r\n const address = addresses.find((address) => address.typeId === type.id);\r\n if(address){\r\n this.addresses.push(address);\r\n }\r\n });\r\n\r\n this.allowDelete();\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.FSG) {\r\n this.view = 'fsg';\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.QUESTIONS) {\r\n this.view = 'questions';\r\n this.questions = await this.api.getQuestions(this.clientId);\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.ASSOCIATIONS) {\r\n this.view = 'associations';\r\n this.isCloseOnly = true;\r\n this.associationTypes = await this.lookupDataService.association();\r\n this.associations = await this.api.getAssociations(this.clientId);\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.NOTES) {\r\n this.view = 'notes';\r\n this.isCloseOnly = true;\r\n this.noteType = await this.lookupDataService.fieldTypes('note', this.partyInstanceType);\r\n this.notes = await this.api.getNotes(this.clientId);\r\n }\r\n\r\n this.isLoading = false;\r\n })();\r\n }\r\n\r\n cancel() {\r\n this.modal.hide();\r\n }\r\n\r\n async save(row, type) {\r\n this.isSaving = true;\r\n\r\n let result;\r\n let closeModal = true;\r\n\r\n const isValid = (await this.validationController.validate()).valid;\r\n\r\n if (isValid) {\r\n\r\n try {\r\n if (this.profilePageId === ProfilePages.GENERAL) {\r\n const model = { ...this.general };\r\n if(model.commonRenewalDate && model.commonRenewalDate.includes('/')){\r\n\r\n if(model.commonRenewalDate === '29/02'){\r\n model.commonRenewalDate = '28/02'\r\n }\r\n\r\n model.commonRenewalDate = momentToISOString(model.commonRenewalDate);\r\n }\r\n\r\n if(model.vulnerableClientDetail.vulnerableFlag && !this.originalVulnerableFlag || !model.vulnerableClientDetail.vulnerableFlag && this.originalVulnerableFlag){\r\n model.vulnerableClientDetail.vulnerableClientId = null;\r\n }\r\n\r\n result = await this.api.updateGeneralDetails(this.clientId, model);\r\n if(result){\r\n this.publishClientSaved();\r\n }\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.SALES) {\r\n const model = { ...this.sales };\r\n model.followupDate = momentToISOString(model.followupDate);\r\n model.renewalDate = momentToISOString(model.renewalDate);\r\n\r\n if (this.sales.clientSalesId) {\r\n result = await this.api.updateSalesDetails(this.clientId, model);\r\n } else {\r\n result = await this.api.addSalesDetails(this.clientId, model);\r\n }\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.BRANCH) {\r\n switch (type) {\r\n case 'adviser':\r\n {\r\n let model;\r\n\r\n if(this.isAdviserHistoryEdit){\r\n model = cloneDeep(this.advisersEditModal);\r\n model.forEach(row => {\r\n if (row.validFrom) {\r\n row.validFrom = momentToISOString(row.validFrom);\r\n }\r\n if (row.validTo) {\r\n row.validTo = momentToISOString(row.validTo);\r\n }\r\n });\r\n } else {\r\n model = cloneDeep(this.advisers);\r\n model[0].validFrom = momentToISOString(model[0].validFrom);\r\n if (model[0].validTo) {\r\n model[0].validTo = momentToISOString(model[0].validTo);\r\n }\r\n model[1].validTo = momentToISOString(model[1].validTo);\r\n }\r\n\r\n result = await this.api.saveAdviser(this.clientId, model);\r\n if (!result[0].hasOwnProperty('errors')) {\r\n this.advisers = result;\r\n this.isAdviserHistoryEdit = false;\r\n this.isNewMode = false;\r\n this.isSaving = false;\r\n }else{\r\n this.isSaving = false;\r\n return\r\n }\r\n }\r\n\r\n break;\r\n case 'referrer':\r\n {\r\n\r\n let model;\r\n\r\n if(this.isReferrerHistoryEdit){\r\n model = cloneDeep(this.referrersEditModal);\r\n model.forEach(row => {\r\n if (row.validFrom) {\r\n row.validFrom = momentToISOString(row.validFrom);\r\n }\r\n if (row.validTo) {\r\n row.validTo = momentToISOString(row.validTo);\r\n }\r\n });\r\n }else{\r\n model = cloneDeep(this.referrers);\r\n model[0].validFrom = momentToISOString(model[0].validFrom);\r\n if (model[0].validTo) {\r\n model[0].validTo = momentToISOString(model[0].validTo);\r\n }\r\n if (model[1]) {\r\n model[1].validTo = momentToISOString(model[1].validTo);\r\n }\r\n }\r\n\r\n result = await this.api.saveReferral(this.clientId, model);\r\n if (!result[0].hasOwnProperty('errors')) {\r\n await this.getReferrers();\r\n this.getAvailableReferrers();\r\n this.referrers = result;\r\n this.isReferrerHistoryEdit = false;\r\n this.isNewMode = false;\r\n this.isSaving = false;\r\n }else {\r\n this.isSaving = false;\r\n return\r\n }\r\n }\r\n\r\n break;\r\n case 'staff':\r\n {\r\n const newStaffMember = this.staff[0];\r\n result = await this.api.saveStaff(this.clientId, newStaffMember);\r\n if (result.hasOwnProperty('clientStaffId')) {\r\n newStaffMember.clientStaffId = result.clientStaffId;\r\n newStaffMember.roleLabel = this.staffRoles.find((x) => x.id === result.clientRoleId).label;\r\n newStaffMember.userFullName = result.userFullName;\r\n newStaffMember.isNewMode = false;\r\n this.isNewMode = false;\r\n this.getAvailableClientRoles();\r\n this.removeEditFlags();\r\n }\r\n }\r\n\r\n break;\r\n }\r\n\r\n this.showSuccessToast();\r\n this.publishClientSaved();\r\n closeModal = false;\r\n this.isSaving = false;\r\n return;\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.CONTACT) {\r\n\r\n switch (type) {\r\n case 'address':\r\n if (!row.editModel.manuallyAddLocation && !row.editModel.addressLine1) {\r\n this.showAddressFinderValidation = true;\r\n this.isSaving = false;\r\n return;\r\n }\r\n\r\n result = await this.api.saveAddress(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n if (row.editModel.id) {\r\n row.typeId = row.editModel.typeId;\r\n row.addressee = row.editModel.addressee;\r\n row.addressLine1 = row.editModel.addressLine1;\r\n row.addressLine2 = row.editModel.addressLine2;\r\n row.addressLine3 = row.editModel.addressLine3;\r\n row.countryCode = row.editModel.countryCode;\r\n row.suburb = row.editModel.suburb;\r\n row.region = row.editModel.region;\r\n row.state = row.editModel.state;\r\n row.postCode = row.editModel.postCode;\r\n row.latitude = row.editModel.latitude;\r\n row.longitude = row.editModel.longitude;\r\n } else {\r\n Object.assign(row, result);\r\n }\r\n\r\n delete row.editModel;\r\n this.allowDelete();\r\n }\r\n break;\r\n case 'phone':\r\n if (row.editModel.preferredFlag) {\r\n this.phones.forEach((x) => (x.preferredFlag = false));\r\n }\r\n\r\n result = await this.api.savePhone(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n if (row.editModel.id) {\r\n row.countryCode = row.editModel.countryCode;\r\n row.telephoneNumber = parseNumber(row.editModel.telephoneNumber, row.editModel.countryCode) ;\r\n row.preferredFlag = row.editModel.preferredFlag;\r\n row.contact = row.editModel.contact;\r\n } else {\r\n Object.assign(row, result);\r\n }\r\n\r\n delete row.editModel;\r\n this.allowDelete();\r\n }\r\n\r\n break;\r\n case 'email':\r\n if (row.editModel.preferredFlag) {\r\n this.emails.forEach((x) => (x.preferredFlag = false));\r\n }\r\n\r\n result = await this.api.saveEmail(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n if (row.editModel.id) {\r\n row.emailAddress = row.editModel.emailAddress;\r\n row.preferredFlag = row.editModel.preferredFlag;\r\n row.contact = row.editModel.contact;\r\n } else {\r\n Object.assign(row, result);\r\n }\r\n\r\n delete row.editModel;\r\n this.allowDelete();\r\n }\r\n\r\n break;\r\n case 'website':\r\n result = await this.api.saveWebsite(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n if (row.editModel.id) {\r\n row.url = row.editModel.url;\r\n } else {\r\n Object.assign(row, result);\r\n }\r\n\r\n delete row.editModel;\r\n this.allowDelete();\r\n }\r\n\r\n break;\r\n }\r\n\r\n if (result) {\r\n row.isEditMode = false;\r\n this.isEditMode = false;\r\n\r\n this.removeEditFlags();\r\n this.publishClientSaved();\r\n }\r\n\r\n closeModal = false;\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.QUESTIONS) {\r\n const qceIsValid = validateQce({ questionsAndResponses: this.questions });\r\n if (qceIsValid) {\r\n const cleanedModel = cleanQceModel(this.questions, true);\r\n result = await this.api.updateQuestions(this.clientId, cleanedModel);\r\n handleQceIssues(result, this);\r\n }else{\r\n this.isSaving = false;\r\n return;\r\n }\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.ASSOCIATIONS) {\r\n result = await this.api.saveAssociation(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n if (row.editModel.clientAssociatedClientId) {\r\n row.association = row.editModel.association;\r\n row.comment = row.editModel.comment;\r\n } else {\r\n Object.assign(row, result);\r\n }\r\n\r\n row.isEditMode = false;\r\n delete row.editModel;\r\n this.removeEditFlags();\r\n }\r\n\r\n closeModal = false;\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.NOTES) {\r\n result = await this.api.addNote(this.clientId, row.editModel);\r\n if (result) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n Object.assign(row, result);\r\n row.isEditMode = false;\r\n delete row.editModel;\r\n }\r\n closeModal = false;\r\n }\r\n\r\n if (Array.isArray(result) || result === false) {\r\n this.isSaving = false;\r\n } else {\r\n this.isSaving = false;\r\n this.showSuccessToast();\r\n if (closeModal) {\r\n this.modal.hide();\r\n }\r\n }\r\n } catch (error) {\r\n this.isSaving = false;\r\n }\r\n } else {\r\n this.isSaving = false;\r\n }\r\n }\r\n\r\n showSuccessToast() {\r\n successToast('Client profile saved');\r\n }\r\n\r\n cancelEdit(row) {\r\n this.isEditMode = false;\r\n row.isEditMode = false;\r\n\r\n if (this.profilePageId === ProfilePages.CONTACT) {\r\n this.removeEditFlags();\r\n }\r\n\r\n if (this.profilePageId === ProfilePages.ASSOCIATIONS) {\r\n this.removeEditFlags();\r\n }\r\n }\r\n\r\n // general\r\n\r\n private getVulnerableClientHistoryLabel(typeId){\r\n const found = this.vulnerabilityTypes.find((x) => x.id === typeId);\r\n return found ? found.label : '';\r\n }\r\n\r\n private async fileListChanged(fileList: FileList) {\r\n this.taskQueue.queueTask(async () => {\r\n const base64 = await this.blobToBase64(fileList[0]).catch((error) => error);\r\n\r\n if (base64 instanceof Error) {\r\n return;\r\n }\r\n\r\n if(!this.general.headerPageImage){\r\n this.general.headerPageImage = {};\r\n }\r\n\r\n this.general.headerPageImage.entityId = this.clientId;\r\n this.general.headerPageImage.fileName = fileList[0].name;\r\n this.general.headerPageImage.file = base64;\r\n });\r\n }\r\n\r\n private blobToBase64 = (file: Blob) => new Promise((resolve, reject) => {\r\n const fileReader = new FileReader();\r\n fileReader.readAsDataURL(file);\r\n fileReader.onload = () => resolve((fileReader.result as string).split(',')[1]);\r\n fileReader.onerror = (error) => reject(error);\r\n });\r\n\r\n private async previewImage() {\r\n const result = await this.api.preview(this.clientId, this.general.headerPageImage.entityImageId);\r\n if(result){\r\n PLATFORM.global.open(result, '_blank');\r\n }\r\n }\r\n\r\n private deleteImage() {\r\n this.canPreviewImage = false;\r\n\r\n if(this.fileList?.length){\r\n const file = document.querySelector('#imageFileInput') as HTMLInputElement;\r\n file.value = '';\r\n }\r\n\r\n this.general.headerPageImage.fileName = null;\r\n }\r\n\r\n // branch\r\n\r\n private addBranch(type) {\r\n this.isNewMode = true;\r\n\r\n switch (type) {\r\n case 'adviser':\r\n {\r\n if (this.advisers.length > 0) {\r\n this.advisers[0].isValidToReqiuired = true;\r\n }\r\n\r\n const newAdviser = { isNewMode: true };\r\n this.advisers.unshift(newAdviser);\r\n this.initializeAdviserValidation(newAdviser);\r\n }\r\n break;\r\n case 'referrer':\r\n {\r\n if (this.referrers.length > 0) {\r\n this.referrers[0].isValidToReqiuired = true;\r\n\r\n // Setup validToMinDate on currently active row\r\n if (this.referrers[0].validTo) {\r\n const today = `${momentToISOString(newMoment()).split('T')[0]}T00:00:00`;\r\n if (this.referrers[0].validTo > today) {\r\n // future date cannot be changed to past date\r\n this.referrers[0].validToMinDate = today;\r\n } else if (this.referrers[0].validTo < today) {\r\n const yesterday = `${momentToISOString(newMoment().subtract('1', 'day')).split('T')[0]}T00:00:00`;\r\n // past date cannot be changed to current or future date\r\n this.referrers[0].validToMinDate = this.referrers[0].validFrom;\r\n this.referrers[0].validToMaxDate = yesterday;\r\n } else if (this.referrers[0].validTo === today) {\r\n // current date cannot be changed to past or future date\r\n this.referrers[0].validToMinDate = today;\r\n this.referrers[0].validToMaxDate = today;\r\n }\r\n } else {\r\n // past dates cannot be less than validFrom\r\n this.referrers[0].validToMinDate = this.referrers[0].validFrom;\r\n }\r\n }\r\n\r\n const newReferrer = {\r\n isNewMode: true,\r\n };\r\n this.referrers.unshift(newReferrer);\r\n this.initializeReferrerValidation(newReferrer);\r\n }\r\n break;\r\n case 'staff':\r\n {\r\n const newStaffMember = { isNewMode: true };\r\n this.staff.unshift(newStaffMember);\r\n this.initializeStaffValidation(newStaffMember);\r\n this.addEditFlags('staff', this.staff[0])\r\n }\r\n break;\r\n }\r\n }\r\n\r\n private cancelAddBranch(row, type) {\r\n switch (type) {\r\n case 'adviser':\r\n {\r\n this.advisers.shift();\r\n if (this.advisers.length) {\r\n this.advisers[0].validTo = null;\r\n this.advisers[0].isValidToReqiuired = false;\r\n }\r\n }\r\n break;\r\n case 'referrer':\r\n {\r\n this.referrers.shift();\r\n if (this.referrers.length) {\r\n this.referrers[0].isValidToReqiuired = false;\r\n }\r\n }\r\n break;\r\n case 'staff':\r\n {\r\n this.staff.shift();\r\n this.removeEditFlags();\r\n }\r\n break;\r\n }\r\n\r\n this.isNewMode = false;\r\n }\r\n\r\n private editBranch(type) {\r\n\r\n switch (type) {\r\n case 'adviser':\r\n this.isAdviserHistoryEdit = true;\r\n this.advisersEditModal = cloneDeep(this.advisers);\r\n this.initializeAdviserValidation([]);\r\n break;\r\n case 'referrer':\r\n this.isReferrerHistoryEdit = true;\r\n this.referrersEditModal = cloneDeep(this.referrers);\r\n this.initializeReferrerValidation([]);\r\n\r\n break;\r\n }\r\n\r\n }\r\n\r\n private cancelEditBranch(type) {\r\n\r\n switch (type) {\r\n case 'adviser':\r\n this.isAdviserHistoryEdit = false;\r\n this.advisersEditModal = [];\r\n break;\r\n case 'referrer':\r\n this.isReferrerHistoryEdit = false;\r\n this.referrersEditModal = [];\r\n break;\r\n }\r\n\r\n }\r\n\r\n private deleteBranch(row, type) {\r\n this.isDeleteMode = true;\r\n row.confirmDelete = true;\r\n\r\n this.addEditFlags(type, row);\r\n }\r\n\r\n private cancelDeleteBranch(row) {\r\n this.isDeleteMode = false;\r\n row.confirmDelete = false;\r\n\r\n this.removeEditFlags();\r\n }\r\n\r\n private async confirmDeleteBranch(row, type) {\r\n this.isSaving = true;\r\n\r\n let today\r\n let from\r\n let response;\r\n switch (type) {\r\n case 'adviser':\r\n break;\r\n case 'referrer':\r\n today = createUTCMoment(newMoment());\r\n from = createUTCMoment(row.validFrom);\r\n row.validTo = from.isAfter(today) ? row.validFrom : momentToISOString(today.format('DD/MM/YYYY'));\r\n this.save(row, type);\r\n break;\r\n\r\n case 'staff':\r\n response = await this.api.deleteStaff(this.clientId, row.clientStaffId);\r\n if (response) {\r\n const index = this.staff.findIndex((x) => x.clientStaffId === row.clientStaffId);\r\n this.staff.splice(index, 1);\r\n this.getAvailableClientRoles();\r\n this.publishClientSaved()\r\n }\r\n break;\r\n }\r\n\r\n this.isSaving = false;\r\n this.isDeleteMode = false;\r\n row.confirmDelete = false;\r\n this.removeEditFlags();\r\n if(type === 'staff') this.showSuccessToast();\r\n }\r\n\r\n private getAvailableReferrers() {\r\n const usedReferrerIds = this.referrers.filter((x) => x.activeFlag).map((val, i, arr) => ({ id: val.referralId }));\r\n this.availableReferrers = differenceBy(this.referrersByBranch, usedReferrerIds, 'id');\r\n }\r\n\r\n private getAvailableClientRoles() {\r\n const usedStaffIds = this.staff.map((val, i, arr) => ({ id: val.clientRoleId }));\r\n this.availableClientRoles = differenceBy(this.staffRoles, usedStaffIds, 'id');\r\n }\r\n\r\n private calculateNewValidFromDate(row, type) {\r\n if (row.validTo.length === 10 && type === 'adviser') {\r\n this.advisers[0].validFrom = momentToString(createUTCMoment(row.validTo).add('1', 'day'));\r\n }\r\n }\r\n\r\n private async getReferrers(){\r\n this.referrers = await this.api.getReferrers(this.clientId);\r\n if(this.referrers.length){\r\n this.inactiveReferrer = this.referrers.filter((x) => x.activeFlag).filter((x) => !x.referralActive).length > 0;\r\n }\r\n }\r\n\r\n @computedFrom('advisers')\r\n get futureDatedAdviserExists() {\r\n let futureDatedAdviserExists = false;\r\n\r\n this.advisers.forEach((x) => {\r\n if (x.validFrom > momentToISOString(newMoment())) {\r\n futureDatedAdviserExists = true;\r\n }\r\n });\r\n\r\n return futureDatedAdviserExists;\r\n }\r\n\r\n @computedFrom('referrers')\r\n get futureDatedReferrerExists() {\r\n let futureDatedReferrerExists = false;\r\n\r\n this.referrers.forEach((x) => {\r\n if (x.validFrom > momentToISOString(newMoment())) {\r\n futureDatedReferrerExists = true;\r\n }\r\n });\r\n\r\n return futureDatedReferrerExists;\r\n }\r\n\r\n // contact\r\n private addContact(type) {\r\n this.isNewMode = true;\r\n\r\n this.isNewAddress = false;\r\n this.isNewPhone = false;\r\n this.isNewEmail = false;\r\n this.isNewWebsite = false;\r\n\r\n switch (type) {\r\n case 'address':\r\n {\r\n this.showAddressFinderValidation = false;\r\n this.isNewAddress = true;\r\n const newAddress = new Address();\r\n\r\n const usedAddressTypeIds = this.addresses.map((val, i, arr) => {\r\n return { id: val.typeId };\r\n });\r\n\r\n const availableAddressTypes = differenceBy(this.addressTypes, usedAddressTypeIds, 'id');\r\n\r\n if (this.addresses.length < this.addressTypes.length) {\r\n newAddress.countryCode = this.appClientType;\r\n newAddress.typeId = availableAddressTypes[0].id;\r\n newAddress.addressTypeLabel = availableAddressTypes[0].label;\r\n }\r\n\r\n this.addresses.push(newAddress);\r\n this.initializeAddressValidation(newAddress);\r\n this.editContact(\r\n 'address',\r\n this.addresses.find((x) => x.typeId === newAddress.typeId),\r\n );\r\n }\r\n\r\n break;\r\n\r\n case 'phone': {\r\n this.isNewPhone = true;\r\n const newPhone = new Phone();\r\n newPhone.countryCode = this.appClientType;\r\n newPhone.preferredFlag = this.phones.length === 0;\r\n this.phones.unshift(newPhone);\r\n this.initializePhoneValidation(newPhone);\r\n this.editContact('phone', this.phones[0]);\r\n break;\r\n }\r\n\r\n case 'email': {\r\n this.isNewEmail = true;\r\n const newEmail = new Email();\r\n newEmail.preferredFlag = this.emails.length === 0;\r\n this.emails.unshift(newEmail);\r\n this.initializeEmailValidation(newEmail);\r\n this.editContact('email', this.emails[0]);\r\n break;\r\n }\r\n\r\n case 'website': {\r\n this.isNewWebsite = true;\r\n const newWebsite = new Website();\r\n this.websites.unshift(newWebsite);\r\n this.initializeWebsiteValidation(newWebsite);\r\n this.editContact('website', this.websites[0]);\r\n break;\r\n }\r\n }\r\n\r\n this.isNewMode = true;\r\n this.newAddress = new Address();\r\n }\r\n\r\n private cancelAddContact(row, type) {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n\r\n this.isNewAddress = false;\r\n this.isNewPhone = false;\r\n this.isNewEmail = false;\r\n this.isNewWebsite = false;\r\n\r\n switch (type) {\r\n case 'address':\r\n this.addresses.pop();\r\n break;\r\n case 'phone':\r\n this.phones.shift();\r\n break;\r\n case 'email':\r\n this.emails.shift();\r\n break;\r\n case 'website':\r\n this.websites.shift();\r\n break;\r\n }\r\n\r\n this.removeEditFlags();\r\n }\r\n\r\n private editContact(type, row) {\r\n this.isEditMode = true;\r\n row.isEditMode = true;\r\n row.editModel = { ...row };\r\n\r\n switch (type) {\r\n case 'address':\r\n this.showAddressFinderValidation = false;\r\n if (row.editModel.countryCode !== this.appClientType) {\r\n row.editModel.manuallyAddLocation = true;\r\n }\r\n this.initializeAddressValidation(row.editModel);\r\n break;\r\n case 'phone':\r\n if (!row.editModel.id) {\r\n row.editModel.countryCode = this.appClientType;\r\n }\r\n this.initializePhoneValidation(row.editModel);\r\n break;\r\n case 'email':\r\n this.initializeEmailValidation(row.editModel);\r\n break;\r\n case 'website':\r\n this.initializeWebsiteValidation(row.editModel);\r\n break;\r\n }\r\n\r\n this.addEditFlags(type, row);\r\n }\r\n\r\n private deleteContact(type, row) {\r\n this.isDeleteMode = true;\r\n row.confirmDelete = true;\r\n\r\n this.addEditFlags(type, row);\r\n }\r\n\r\n private cancelDeleteContact(row) {\r\n this.isDeleteMode = false;\r\n row.confirmDelete = false;\r\n\r\n this.removeEditFlags();\r\n }\r\n\r\n private async confirmDeleteContact(type, row) {\r\n this.isSaving = true;\r\n\r\n let response;\r\n switch (type) {\r\n case 'address':\r\n response = await this.api.deleteAddress(this.clientId, row);\r\n if (response) {\r\n const index = this.addresses.findIndex((x) => x.id === row.id);\r\n this.addresses.splice(index, 1);\r\n this.isDeleteMode = false;\r\n }\r\n break;\r\n\r\n case 'phone':\r\n response = await this.api.deletePhone(this.clientId, row);\r\n if (response) {\r\n const index = this.phones.findIndex((x) => x.id === row.id);\r\n this.phones.splice(index, 1);\r\n this.isDeleteMode = false;\r\n }\r\n break;\r\n\r\n case 'email':\r\n response = await this.api.deleteEmail(this.clientId, row);\r\n if (response) {\r\n const index = this.emails.findIndex((x) => x.id === row.id);\r\n this.emails.splice(index, 1);\r\n this.isDeleteMode = false;\r\n }\r\n break;\r\n\r\n case 'website':\r\n response = await this.api.deleteWebsite(this.clientId, row);\r\n if (response) {\r\n const index = this.websites.findIndex((x) => x.id === row.id);\r\n this.websites.splice(index, 1);\r\n this.isDeleteMode = false;\r\n }\r\n break;\r\n }\r\n\r\n this.isSaving = false;\r\n this.isDeleteMode = false;\r\n row.confirmDelete = false;\r\n this.removeEditFlags();\r\n this.allowDelete();\r\n this.showSuccessToast();\r\n this.publishClientSaved();\r\n }\r\n\r\n private addEditFlags(type, row) {\r\n switch (type) {\r\n case 'address':\r\n this.isAddressEdit = true;\r\n this.addresses.forEach((address) => {\r\n if (address.id !== row.id) {\r\n address.editInProgess = true;\r\n }\r\n });\r\n break;\r\n\r\n case 'phone':\r\n this.isPhoneEdit = true;\r\n this.phones.forEach((phone) => {\r\n if (phone.id !== row.id) {\r\n phone.editInProgess = true;\r\n }\r\n });\r\n break;\r\n\r\n case 'email':\r\n this.isEmailEdit = true;\r\n this.emails.forEach((email) => {\r\n if (email.id !== row.id) {\r\n email.editInProgess = true;\r\n }\r\n });\r\n break;\r\n\r\n case 'website':\r\n this.isWebsiteEdit = true;\r\n this.websites.forEach((website) => {\r\n if (website.id !== row.id) {\r\n website.editInProgess = true;\r\n }\r\n });\r\n break;\r\n\r\n case 'staff':\r\n this.isStaffEdit = true;\r\n this.staff.forEach((staff) => {\r\n if (staff.clientStaffId !== row.clientStaffId) {\r\n staff.editInProgess = true;\r\n }\r\n });\r\n break;\r\n\r\n case 'association':\r\n this.isAssociationEdit = true;\r\n this.associations.forEach((association) => {\r\n if (association.clientAssociatedClientId !== row.clientAssociatedClientId) {\r\n association.editInProgess = true;\r\n }\r\n });\r\n break;\r\n }\r\n }\r\n\r\n private removeEditFlags() {\r\n // Address\r\n this.isAddressEdit = false;\r\n this.addresses?.forEach((address) => {\r\n address.editInProgess = false;\r\n });\r\n\r\n // Phone\r\n this.isPhoneEdit = false;\r\n this.phones?.forEach((phone) => {\r\n phone.editInProgess = false;\r\n });\r\n\r\n // Email\r\n this.isEmailEdit = false;\r\n this.emails?.forEach((email) => {\r\n email.editInProgess = false;\r\n });\r\n\r\n // Website\r\n this.isWebsiteEdit = false;\r\n this.websites?.forEach((website) => {\r\n website.editInProgess = false;\r\n });\r\n\r\n // Staff\r\n this.isStaffEdit = false;\r\n this.staff?.forEach((staff) => {\r\n staff.editInProgess = false;\r\n });\r\n\r\n // Association\r\n this.isAssociationEdit = false;\r\n this.associations?.forEach((association) => {\r\n association.editInProgess = false;\r\n });\r\n }\r\n\r\n private allowDelete() {\r\n this.addresses = this.addresses.map((address) => {\r\n const addressType = this.addressTypes.find((x) => x.id === address.typeId);\r\n address.allowDelete = addressType && addressType.mandatory !== true;\r\n address.addressTypeLabel = addressType.label;\r\n address.country = this.countryTypes.find((x) => x.id === address.countryCode).label;\r\n return address;\r\n });\r\n\r\n this.calculateAllowDelete(this.phones, this.phoneTypes[0].mandatory);\r\n this.calculateAllowDelete(this.emails, this.emailTypes[0].mandatory);\r\n this.calculateAllowDelete(this.websites, this.websiteTypes[0].mandatory);\r\n }\r\n\r\n private calculateAllowDelete(items, isMandatory: boolean) {\r\n const itemCount = items.length;\r\n const savedItemCount = items.filter((a) => a.id > 0).length;\r\n return items.map((item) => {\r\n item.allowDelete = false;\r\n\r\n if (itemCount === 1) {\r\n item.allowDelete = !isMandatory;\r\n } else if (!item.id) {\r\n item.allowDelete = true;\r\n } else {\r\n if (savedItemCount > 1 && !item.preferredFlag) {\r\n item.allowDelete = true;\r\n }\r\n }\r\n\r\n return item;\r\n });\r\n }\r\n\r\n private addressFetched(fetched: AddressFetchedEventDto, row) {\r\n row.editModel.addressLine1 = fetched.address.addressLine1;\r\n row.editModel.addressLine2 = fetched.address.addressLine2;\r\n row.editModel.addressLine3 = fetched.address.addressLine3;\r\n row.editModel.countryCode = fetched.address.countryCode;\r\n row.editModel.suburb = fetched.address.suburb;\r\n row.editModel.region = fetched.address.region;\r\n row.editModel.state = fetched.address.state;\r\n row.editModel.postCode = fetched.address.postCode;\r\n row.editModel.latitude = fetched.address.latitude;\r\n row.editModel.longitude = fetched.address.longitude;\r\n }\r\n\r\n private clearAddressModel(row, index) {\r\n // only clear address fields when manuallyAddLocation is uncheck\r\n // this forces user to use the addressFinder which will repopulate lat/lon\r\n if (row.editModel.manuallyAddLocation) {\r\n row.editModel.addressLine1 = undefined;\r\n row.editModel.addressLine2 = undefined;\r\n row.editModel.addressLine3 = undefined;\r\n row.editModel.suburb = undefined;\r\n row.editModel.region = undefined;\r\n row.editModel.state = undefined;\r\n row.editModel.postCode = undefined;\r\n row.editModel.latitude = undefined;\r\n row.editModel.longitude = undefined;\r\n\r\n setTimeout(() => {\r\n if (this?.addressFinderVM?.length > 0 && this.addressFinderVM[index]) {\r\n this.addressFinderVM[index].iaAddressInput.focus();\r\n }\r\n }, 120);\r\n }\r\n\r\n // clear lat/lon when user checks add address manully\r\n if (!row.editModel.manuallyAddLocation) {\r\n if (this.addressFinderVM[index]) {\r\n this.addressFinderVM[index].clearInput();\r\n }\r\n row.editModel.latitude = undefined;\r\n row.editModel.longitude = undefined;\r\n this.showAddressFinderValidation = false;\r\n }\r\n }\r\n\r\n private countryChanged(address) {\r\n this.taskQueue.queueMicroTask(() => {\r\n if (address.editModel.countryCode !== this.appClientType) {\r\n address.editModel.manuallyAddLocation = true;\r\n\r\n // clear lat/lon\r\n address.editModel.latitude = undefined;\r\n address.editModel.longitude = undefined;\r\n }\r\n });\r\n }\r\n\r\n private copyAddress() {\r\n if(this.addressFinderVM[1]?.iaAddressInput?.value){\r\n this.addressFinderVM[1].iaAddressInput.value = null;\r\n }\r\n\r\n const firstAddress = this.addresses[0];\r\n const secondAddress = this.addresses[1];\r\n\r\n secondAddress.editModel.addressee = firstAddress.addressee;\r\n secondAddress.editModel.addressLine1 = firstAddress.addressLine1;\r\n secondAddress.editModel.addressLine2 = firstAddress.addressLine2;\r\n secondAddress.editModel.addressLine3 = firstAddress.addressLine3;\r\n secondAddress.editModel.suburb = firstAddress.suburb;\r\n secondAddress.editModel.region = firstAddress.region;\r\n secondAddress.editModel.state = firstAddress.state;\r\n secondAddress.editModel.postCode = firstAddress.postCode;\r\n secondAddress.editModel.countryCode = firstAddress.countryCode;\r\n secondAddress.editModel.latitude = firstAddress.latitude;\r\n secondAddress.editModel.longitude = firstAddress.longitude;\r\n }\r\n\r\n // Association\r\n private addAssociation() {\r\n this.associationSearchString = '';\r\n this.associatedSearchResults = [];\r\n this.isSearchComplete = false;\r\n\r\n this.isNewMode = true;\r\n const newAssociation = new ClientAssociation();\r\n this.associations.unshift(newAssociation);\r\n this.initializeAssociatedValidation(newAssociation);\r\n this.editAssociation(this.associations[0]);\r\n }\r\n\r\n private cancelAddAssociation() {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n this.clientSelected = false;\r\n this.associations.shift();\r\n this.removeEditFlags();\r\n }\r\n\r\n private async associationSearch() {\r\n if (this.associationSearchString.trim() !== '') {\r\n const response = await this.api.clientSearch(this.clientId, this.associationSearchString);\r\n this.associatedSearchResults = response.filter((r) => {\r\n return !this.associations.find((x) => x.associatedClientId === r.entityId);\r\n });\r\n this.isSearchComplete = true;\r\n }\r\n }\r\n\r\n handleSearchKeypress($event: KeyboardEvent) {\r\n if ($event.key === 'Enter') {\r\n this.associationSearch();\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n private clearSearchResults() {\r\n this.associationSearchString = '';\r\n this.associatedSearchResults = [];\r\n this.isSearchComplete = false;\r\n }\r\n\r\n private async associationClicked(item) {\r\n this.associationSearchString = '';\r\n this.associatedSearchResults = [];\r\n\r\n const newAssociation = this.associations[0].editModel;\r\n newAssociation.clientId = this.clientId;\r\n newAssociation.associatedClientId = item.entityId;\r\n newAssociation.clientName = item.entityName;\r\n\r\n this.clientSelected = true;\r\n this.isSearchComplete = false;\r\n }\r\n\r\n private async editAssociation(row) {\r\n this.isEditMode = true;\r\n row.isEditMode = true;\r\n row.editModel = { ...row };\r\n\r\n this.initializeAssociatedValidation(row.editModel);\r\n this.addEditFlags('association', row);\r\n }\r\n\r\n private deleteAssociation(association) {\r\n this.isDeleteMode = true;\r\n association.confirmDelete = true;\r\n this.addEditFlags('association', association);\r\n }\r\n\r\n private async confirmDeleteAssociation(association) {\r\n this.isSaving = true;\r\n\r\n const response = await this.api.deleteAssociation(this.clientId, association.clientAssociatedClientId);\r\n if (response) {\r\n const index = this.associations.findIndex(\r\n (x) => x.clientAssociatedClientId === association.clientAssociatedClientId,\r\n );\r\n this.associations.splice(index, 1);\r\n\r\n this.isSaving = false;\r\n this.isDeleteMode = false;\r\n this.showSuccessToast();\r\n this.removeEditFlags();\r\n }\r\n }\r\n\r\n private cancelDeleteAssociation(association) {\r\n this.isDeleteMode = false;\r\n association.confirmDelete = false;\r\n this.removeEditFlags();\r\n }\r\n\r\n // Notes\r\n private addNote() {\r\n this.isNewMode = true;\r\n this.isEditMode = true;\r\n\r\n const newNote = new Note();\r\n this.notes.unshift(newNote);\r\n newNote.isEditMode = true;\r\n newNote.editModel = { ...newNote };\r\n this.initializeNoteValidation(newNote.editModel);\r\n }\r\n\r\n private cancelAddNote() {\r\n this.isNewMode = false;\r\n this.isEditMode = false;\r\n this.notes.shift();\r\n }\r\n\r\n private noteTypeDisplayValue(typeId: number) {\r\n return this.noteType.find((t) => t.id === typeId)?.label;\r\n }\r\n\r\n private publishClientSaved(){\r\n this.ea.publish(eventAggregatorEvents.clientSaved);\r\n }\r\n\r\n getAddressTypeLabel(id) {\r\n return this.addressTypes.find((x) => x.id === id)?.label;\r\n }\r\n\r\n // Validation\r\n private initializeGeneralValidation() {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.ensure((x: any) => x.clientName)\r\n .required()\r\n .ensure((x: any) => x.shortName)\r\n .required()\r\n .ensure((x: any) => x.salutation)\r\n .required()\r\n .when(() => this.general.clientTypeId === ClientType.CLIENT)\r\n .ensure((x: any) => x.contact)\r\n .required()\r\n .when(() => this.general.clientTypeId === ClientType.CLIENT)\r\n .ensure((x: any) => x.clientCategoryId)\r\n .required()\r\n .ensure((x: any) => x.introductionTypeId)\r\n .required()\r\n .when((x: any) => this.clientIntroMandatory)\r\n .ensure((x: any) => x.divisionId)\r\n .required()\r\n .when((x: any) => this.clientDivisionMandatory)\r\n .ensure((x: any) => x.acceptsElectronicDisclosureDocuments)\r\n .required()\r\n .ensure((x: any) => x.acceptsMarketingMail)\r\n .required()\r\n .on(this.general);\r\n\r\n ValidationRules.ensure((x: any) => x.vulnerableFlag)\r\n .required()\r\n .ensure((x: any) => x.vulnerableClientTypeId)\r\n .required()\r\n .when((x: any) => x.vulnerableFlag)\r\n .on(this.general.vulnerableClientDetail);\r\n }\r\n\r\n private customRules() {\r\n ValidationRules.customRule(\r\n 'checkValidFromDate',\r\n (value, obj) =>\r\n obj.validFrom !== null &&\r\n obj.validFrom !== '' &&\r\n typeof obj.validFrom !== 'undefined' &&\r\n (obj.validFrom.includes('/') || obj.validFrom.includes('T')),\r\n '',\r\n );\r\n\r\n ValidationRules.customRule(\r\n 'checkValidToDate',\r\n (value, obj) =>\r\n obj.validTo !== null &&\r\n obj.validTo !== '' &&\r\n typeof obj.validTo !== 'undefined' &&\r\n (obj.validTo.includes('/') || obj.validTo.includes('T')),\r\n '',\r\n );\r\n }\r\n\r\n private initializeAdviserValidation(newAdviser) {\r\n ValidationRules.off(this);\r\n this.customRules();\r\n\r\n if(this.isAdviserHistoryEdit){\r\n this.advisersEditModal.forEach(adviser => {\r\n ValidationRules.ensure((x: any) => x.validFrom)\r\n .satisfiesRule('checkValidFromDate')\r\n .on(adviser);\r\n });\r\n }else{\r\n ValidationRules.ensure((x: any) => x.adviserId)\r\n .required()\r\n .on(newAdviser);\r\n\r\n ValidationRules.ensure((x: any) => x.validTo)\r\n .satisfiesRule('checkValidToDate')\r\n .on(this.advisers[1]);\r\n }\r\n }\r\n\r\n private initializeReferrerValidation(newReferrer) {\r\n ValidationRules.off(this);\r\n this.customRules();\r\n\r\n if(this.isReferrerHistoryEdit){\r\n this.referrersEditModal.forEach(referrer => {\r\n ValidationRules.ensure((x: any) => x.validFrom)\r\n .satisfiesRule('checkValidFromDate')\r\n .on(referrer);\r\n });\r\n }else{\r\n ValidationRules.ensure((x: any) => x.referralId)\r\n .required()\r\n .ensure((x: any) => x.validFrom)\r\n .satisfiesRule('checkValidFromDate')\r\n .on(newReferrer);\r\n }\r\n }\r\n\r\n private initializeStaffValidation(newStaffMember) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.ensure((x: StaffMember) => x.clientRoleId)\r\n .required()\r\n .ensure((x: StaffMember) => x.securityUsersId)\r\n .required()\r\n .on(newStaffMember);\r\n }\r\n\r\n private initializeAddressValidation(model) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules\r\n .ensure((x: Address) => x.addressLine1)\r\n .required()\r\n .when((obj: any) => obj.manuallyAddLocation)\r\n\r\n .ensure((x: Address) => x.suburb)\r\n .required()\r\n .when((obj: any) => {\r\n if(this.appClientType === ApplicationCountryCodes.AUSTRALIA){\r\n return obj.countryCode === ApplicationCountryCodes.AUSTRALIA && obj.manuallyAddLocation\r\n }\r\n })\r\n .ensure((x: Address) => x.state)\r\n .required()\r\n .when((obj: any) => {\r\n if(this.appClientType === ApplicationCountryCodes.AUSTRALIA){\r\n return obj.countryCode === ApplicationCountryCodes.AUSTRALIA && obj.manuallyAddLocation\r\n }\r\n })\r\n .ensure((x: Address) => x.region)\r\n .required()\r\n .when((obj: any) => {\r\n if(this.appClientType === ApplicationCountryCodes.NEW_ZEALAND){\r\n return obj.countryCode === ApplicationCountryCodes.NEW_ZEALAND && obj.manuallyAddLocation\r\n }\r\n })\r\n .ensure((x: Address) => x.postCode)\r\n .required()\r\n .when((obj: any) => {\r\n if(this.appClientType === ApplicationCountryCodes.AUSTRALIA){\r\n return obj.countryCode === ApplicationCountryCodes.AUSTRALIA && obj.manuallyAddLocation\r\n }else if(this.appClientType === ApplicationCountryCodes.NEW_ZEALAND){\r\n return obj.countryCode === ApplicationCountryCodes.NEW_ZEALAND && obj.manuallyAddLocation\r\n }\r\n })\r\n\r\n .on(model);\r\n }\r\n\r\n private initializePhoneValidation(model) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.customRule(\r\n 'isValidTelephoneNumber',\r\n (value, obj) => typeof value !== 'undefined' && value !== null && isValidNumber(value, obj.countryCode),\r\n '',\r\n );\r\n\r\n ValidationRules.ensure((x: Phone) => x.telephoneNumber)\r\n .required()\r\n .satisfiesRule('isValidTelephoneNumber')\r\n .on(model);\r\n }\r\n\r\n private initializeEmailValidation(model) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.ensure((x: Email) => x.emailAddress)\r\n .required()\r\n .email()\r\n .on(model);\r\n }\r\n\r\n private initializeWebsiteValidation(model) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.customRule('isValidUrl', (value, obj) => typeof value !== 'undefined' && (value.substr(0,7) === 'http://' || value.substr(0,8) === 'https://' || value.substr(0,3) === 'www' ) , 'Url must start with either http://, https:// or www');\r\n\r\n ValidationRules.ensure((x: Website) => x.url)\r\n .satisfiesRule('isValidUrl')\r\n .on(model);\r\n }\r\n\r\n private initializeAssociatedValidation(model) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.ensure((x: ClientAssociation) => x.clientName)\r\n .required()\r\n .on(model);\r\n }\r\n\r\n private initializeNoteValidation(newNote) {\r\n ValidationRules.off(this);\r\n\r\n ValidationRules.ensure((x: Note) => x.typeId)\r\n .required()\r\n .ensure((x: Note) => x.note)\r\n .required()\r\n .on(newNote);\r\n }\r\n}\r\n"],"names":["validationControllerFactory","api","modal","lookupDataService","bindingEngine","taskQueue","ea","claimsService","styles","hasClientViewPermission","hasClientEditPermission","hasBranchEditPermission","isCloseOnly","isLoading","clientActive","isNewMode","isEditMode","isDeleteMode","isSaving","clientSelected","clientType","clientCategory","divisionTypes","introductionType","acceptsElectronicDisclosureDocuments","acceptsMarketingMail","clientDisclosureType","canPreviewImage","salesStatusType","salesRatingType","advisers","availableAdvisers","isAdviserHistoryEdit","advisersEditModal","referrers","referrersByBranch","availableReferrers","isReferrerHistoryEdit","referrersEditModal","inactiveReferrer","staff","availableUsers","staffRoles","availableClientRoles","isStaffEdit","addresses","isNewAddress","isAddressEdit","addressTypes","countryTypes","addressFinderVM","showAddressFinderValidation","isNewPhone","isPhoneEdit","phoneTypes","isNewEmail","isEmailEdit","emailTypes","isNewWebsite","isWebsiteEdit","websiteTypes","noteType","associationTypes","newAssociation","associationSearchString","associatedSearchResults","isSearchComplete","isAssociationEdit","inputMaskOptions","decimalPlaces","minimumValue","maximumValue","emptyInputBehavior","originalVulnerableFlag","blobToBase64","file","Promise","resolve","reject","fileReader","FileReader","readAsDataURL","onload","result","split","onerror","error","this","validationController","createForCurrentScope","addRenderer","isReadOnly","activate","clientId","profilePageId","appClientType","clientTypeId","clientCode","clientName","isClient","partyInstanceType","hasAsync","view","divisionType","getGeneralDetails","general","vulnerableClientDetail","vulnerableClientId","vulnerableFlag","vulnerableClientTypeId","comment","headerPageImage","entityImageId","getAcceptsDocsAndMailHistory","acceptsDocAndMailHistory","getVulnerableClientHistory","vulnerableClientHistory","systemParameters","clientDivisionMandatory","clientIntroMandatory","vulnerabilityTypes","yesNo","yesNoTypes","initializeGeneralValidation","getSalesDetails","sales","clientSalesDetail","getAdvisers","activeAdvisersByBranch","map","obj","id","adviserId","label","adviserName","getReferrers","activeReferrersByBranch","referralId","referralName","getAvailableReferrers","clientRole","activeUsersByBranch","securityUsersId","fullName","getStaff","roleLabel","find","x","clientRoleId","getAvailableClientRoles","getAddresses","getPhones","phones","sort","a","b","getEmails","emails","getWebsites","websites","fieldTypes","countryCode","forEach","type","address","typeId","push","allowDelete","getQuestions","questions","association","getAssociations","associations","getNotes","notes","cancel","hide","save","row","closeModal","validate","valid","model","commonRenewalDate","includes","updateGeneralDetails","publishClientSaved","followupDate","renewalDate","clientSalesId","updateSalesDetails","addSalesDetails","cloneDeep","validFrom","validTo","saveAdviser","hasOwnProperty","saveReferral","newStaffMember","saveStaff","clientStaffId","userFullName","removeEditFlags","showSuccessToast","editModel","manuallyAddLocation","addressLine1","saveAddress","addressee","addressLine2","addressLine3","suburb","region","state","postCode","latitude","longitude","Object","assign","preferredFlag","savePhone","telephoneNumber","parseNumber","contact","saveEmail","emailAddress","saveWebsite","url","questionsAndResponses","cleanedModel","updateQuestions","saveAssociation","clientAssociatedClientId","addNote","Array","isArray","cancelEdit","getVulnerableClientHistoryLabel","found","fileListChanged","fileList","queueTask","catch","base64","Error","entityId","fileName","name","previewImage","preview","PLATFORM","deleteImage","length","document","querySelector","value","addBranch","isValidToReqiuired","newAdviser","unshift","initializeAdviserValidation","today","validToMinDate","yesterday","subtract","validToMaxDate","newReferrer","initializeReferrerValidation","initializeStaffValidation","addEditFlags","cancelAddBranch","shift","editBranch","cancelEditBranch","deleteBranch","confirmDelete","cancelDeleteBranch","confirmDeleteBranch","from","isAfter","format","deleteStaff","index","findIndex","splice","usedReferrerIds","filter","activeFlag","val","i","arr","differenceBy","usedStaffIds","calculateNewValidFromDate","add","referralActive","futureDatedAdviserExists","futureDatedReferrerExists","addContact","usedAddressTypeIds","availableAddressTypes","addressTypeLabel","initializeAddressValidation","editContact","newPhone","initializePhoneValidation","newEmail","initializeEmailValidation","newWebsite","initializeWebsiteValidation","newAddress","cancelAddContact","pop","deleteContact","cancelDeleteContact","confirmDeleteContact","deleteAddress","deletePhone","deleteEmail","deleteWebsite","editInProgess","phone","email","website","addressType","mandatory","country","calculateAllowDelete","items","isMandatory","itemCount","savedItemCount","item","addressFetched","fetched","clearAddressModel","undefined","setTimeout","iaAddressInput","focus","clearInput","countryChanged","queueMicroTask","copyAddress","firstAddress","secondAddress","addAssociation","initializeAssociatedValidation","editAssociation","cancelAddAssociation","associationSearch","trim","clientSearch","response","r","associatedClientId","handleSearchKeypress","$event","key","clearSearchResults","associationClicked","entityName","deleteAssociation","confirmDeleteAssociation","cancelDeleteAssociation","newNote","initializeNoteValidation","cancelAddNote","noteTypeDisplayValue","t","publish","getAddressTypeLabel","ValidationRules","required","ensure","shortName","salutation","when","clientCategoryId","introductionTypeId","divisionId","on","customRules","adviser","satisfiesRule","referrer","isValidNumber","substr","note","observable","FileList","computedFrom","autoinject","useView","ValidationControllerFactory","BindingEngine","TaskQueue","EventAggregator","ClientProfileModal"],"sourceRoot":""}