{"version":3,"file":"js/app.38d9e669.js","mappings":"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","sources":["webpack://MARSApp/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://MARSApp/./src/mars-app/app.html","webpack://MARSApp/./src/shared/config/config.ts","webpack://MARSApp/./src/shared/constants/route-name.ts","webpack://MARSApp/./src/shared/models/user.ts","webpack://MARSApp/./src/shared/models/token.ts","webpack://MARSApp/./src/shared/modules/authentication/authentication-status.ts","webpack://MARSApp/./src/shared/models/session.ts","webpack://MARSApp/./src/shared/models/authorized-user.ts","webpack://MARSApp/./src/shared/config/url.ts","webpack://MARSApp/./src/shared/modules/authentication/authentication.service.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/base.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/admin-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/am-new-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/am-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/application-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/code-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/file-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/individual-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/page-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/payment-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/pc-non-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/pc-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/sm-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/spec-acc-non-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/spec-acc-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/student-new-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/student-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client/apis/system-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client-v2/base.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client-v2/apis/pc-renew-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client-v2/apis/sm-api.ts","webpack://MARSApp/./src/shared/modules/typescript-api-client-v2/apis/spec-acc-renew-api.ts","webpack://MARSApp/./src/shared/modules/mars-api/index.ts","webpack://MARSApp/./src/shared/store/snack-bar-store-module.ts","webpack://MARSApp/./src/shared/store/event-controller-store-module.ts","webpack://MARSApp/./src/shared/store/user-account-store-module.ts","webpack://MARSApp/./src/shared/store/app-info-store-module.ts","webpack://MARSApp/./src/shared/store/app-renew-store-module.ts","webpack://MARSApp/./src/shared/store/pcr-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/popover-store-module.ts","webpack://MARSApp/./src/shared/store/countrylist-store-module.ts","webpack://MARSApp/./src/shared/store/dx-exchangelist-store-module.ts","webpack://MARSApp/./src/shared/store/sm-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/online-application-store-module.ts","webpack://MARSApp/./src/shared/store/address-type-store-module.ts","webpack://MARSApp/./src/shared/store/sar-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/amn-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/amr-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/stn-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/str-app-formdata-store-module.ts","webpack://MARSApp/./src/shared/store/index.ts","webpack://MARSApp/./src/shared/components/snackbar/snackbar.html","webpack://MARSApp/./src/shared/components/snackbar/snackbar.ts","webpack://MARSApp/./src/shared/components/snackbar/index.vue","webpack://MARSApp/./src/mars-app/components/session-expired/session-expired.html","webpack://MARSApp/./src/shared/components/alert-box/alert-box.html","webpack://MARSApp/./src/shared/components/alert-box/alert-box.ts","webpack://MARSApp/./src/shared/components/alert-box/index.vue","webpack://MARSApp/./src/mars-app/components/session-expired/session-expired.ts","webpack://MARSApp/./src/mars-app/components/session-expired/index.vue","webpack://MARSApp/./src/mars-app/app.ts","webpack://MARSApp/./src/mars-app/app.vue","webpack://MARSApp/./src/mars-app/components/home/home.html","webpack://MARSApp/./src/mars-app/config/config.ts","webpack://MARSApp/./src/mars-app/appInsights.ts","webpack://MARSApp/./src/shared/components/loading-spinner/loading-spinner.html","webpack://MARSApp/./src/shared/components/loading-spinner/loading-spinner.ts","webpack://MARSApp/./src/shared/components/loading-spinner/index.vue","webpack://MARSApp/./src/mars-app/components/app-card/app-card.html","webpack://MARSApp/./src/shared/components/alert-box-type-two/alert-box-type-two.html","webpack://MARSApp/./src/shared/components/alert-box-type-two/alert-box-type-two.ts","webpack://MARSApp/./src/shared/components/alert-box-type-two/index.vue","webpack://MARSApp/./src/mars-app/components/app-card/app-card.ts","webpack://MARSApp/./src/mars-app/components/app-card/index.vue","webpack://MARSApp/./src/shared/components/loading-indicator/loading-indicator.html","webpack://MARSApp/./src/shared/components/loading-indicator/loading-indicator.ts?e59f","webpack://MARSApp/./src/shared/components/loading-indicator/index.vue","webpack://MARSApp/./src/shared/components/confirm-dialogue/confirm-dialogue.html","webpack://MARSApp/./src/shared/components/confirm-dialogue/confirm-dialogue.ts","webpack://MARSApp/./src/shared/components/confirm-dialogue/index.vue","webpack://MARSApp/./src/mars-app/components/home/home.ts","webpack://MARSApp/./src/mars-app/components/home/index.vue","webpack://MARSApp/./src/shared/components/logout/logout.html","webpack://MARSApp/./src/shared/modules/authentication/authentication.ts","webpack://MARSApp/./src/shared/components/logout/logout.ts","webpack://MARSApp/./src/shared/components/logout/index.vue","webpack://MARSApp/./src/mars-app/components/auto-login/auto-login.html","webpack://MARSApp/./src/shared/components/std-page-layout/std-page-layout.html","webpack://MARSApp/./src/shared/components/page-header/page-header/page-header.html","webpack://MARSApp/./src/shared/components/page-header/account-info-panel/account-info-panel.html","webpack://MARSApp/./src/shared/components/page-header/application-menu/application-menu.html","webpack://MARSApp/./src/shared/constants/section-name.ts","webpack://MARSApp/./src/shared/components/page-header/application-menu/application-menu.ts","webpack://MARSApp/./src/shared/components/page-header/application-menu/index.vue","webpack://MARSApp/./src/shared/components/page-header/account-info-panel/account-info-panel.ts","webpack://MARSApp/./src/shared/components/page-header/account-info-panel/index.vue","webpack://MARSApp/./src/shared/components/page-header/page-header/page-header.ts","webpack://MARSApp/./src/shared/components/page-header/page-header/index.vue","webpack://MARSApp/./src/shared/components/page-footer/page-footer.html","webpack://MARSApp/./src/shared/components/page-footer/page-footer.ts","webpack://MARSApp/./src/shared/components/page-footer/index.vue","webpack://MARSApp/./src/shared/components/std-page-layout/std-page-layout.ts","webpack://MARSApp/./src/shared/components/std-page-layout/index.vue","webpack://MARSApp/./src/mars-app/components/auto-login/auto-login.ts","webpack://MARSApp/./src/mars-app/components/auto-login/index.vue","webpack://MARSApp/./src/mars-app/components/mars-main/mars-main.html","webpack://MARSApp/./src/shared/modules/session/session.ts","webpack://MARSApp/./src/shared/modules/session/idle-session-manager.ts","webpack://MARSApp/./src/mars-app/components/mars-main/mars-main.ts","webpack://MARSApp/./src/mars-app/components/mars-main/index.vue","webpack://MARSApp/./src/mars-app/components/access-error/access-error.html","webpack://MARSApp/./src/mars-app/components/access-error/access-error.ts","webpack://MARSApp/./src/mars-app/components/access-error/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-overview/pcr-overview.html","webpack://MARSApp/./src/shared/components/popover/popover.html","webpack://MARSApp/./src/shared/components/popover/popover.ts","webpack://MARSApp/./src/shared/components/popover/index.vue","webpack://MARSApp/./src/shared/components/help-screen/help-screen.html","webpack://MARSApp/./src/shared/components/help-screen/help-screen.ts","webpack://MARSApp/./src/shared/components/help-screen/index.vue","webpack://MARSApp/./src/shared/mixins/format-datetime.ts","webpack://MARSApp/./src/mars-app/components/pcr-overview/pcr-overview.ts","webpack://MARSApp/./src/mars-app/components/pcr-overview/index.vue","webpack://MARSApp/./src/mars-app/components/pcr/pcr.html","webpack://MARSApp/./src/shared/components/swipe-stepper/swipe-stepper.html","webpack://MARSApp/./src/shared/components/swipe-stepper/nav-step.ts","webpack://MARSApp/./src/shared/components/swipe-stepper/swipe-stepper.ts","webpack://MARSApp/./src/shared/components/swipe-stepper/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-current-details/pcr-current-details.html","webpack://MARSApp/./src/mars-app/components/pcr-current-details-update-modal/pcr-current-details-update-modal.html","webpack://MARSApp/./src/shared/components/file-drag-and-drop/file-drag-and-drop.html","webpack://MARSApp/./src/shared/components/file-drag-and-drop/file-drag-and-drop.ts","webpack://MARSApp/./src/shared/components/file-drag-and-drop/index.vue","webpack://MARSApp/./src/shared/components/postcodeSearch/postcodeSearch.html","webpack://MARSApp/./src/shared/components/postcodeSearch/postcodeSearch.ts","webpack://MARSApp/./src/shared/components/postcodeSearch/index.vue","webpack://MARSApp/./src/shared/components/address-preview/address-preview.html","webpack://MARSApp/./src/shared/components/address-preview/address-preview.ts","webpack://MARSApp/./src/shared/components/address-preview/index.vue","webpack://MARSApp/./src/mars-app/components/address-component/address-component.html","webpack://MARSApp/./src/mars-app/components/address-component/address-component.ts","webpack://MARSApp/./src/mars-app/components/address-component/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-current-details-update-modal/pcr-current-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/pcr-current-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-current-details/pcr-current-details.ts","webpack://MARSApp/./src/mars-app/components/pcr-current-details/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record/pcr-practice-record.html","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-card/pcr-practice-record-card.html","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-card/pcr-practice-record-card.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-card/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-change-detail-modal/pcr-practice-record-change-detail-modal.html","webpack://MARSApp/./src/shared/components/modal-window/modal-window.html","webpack://MARSApp/./src/shared/components/modal-window/modal-window.ts","webpack://MARSApp/./src/shared/components/modal-window/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-change-detail-modal/pcr-practice-record-change-detail-modal.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-change-detail-modal/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record/pcr-practice-record.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record/index.vue","webpack://MARSApp/./src/shared/components/header-stepper/nav-step.ts","webpack://MARSApp/./src/mars-app/components/pcr-address-details/pcr-address-details.html","webpack://MARSApp/./src/mars-app/components/pcr-address-details-update-modal/pcr-address-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/pcr-address-details-update-modal/pcr-address-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/pcr-address-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-address-details/pcr-address-details.ts","webpack://MARSApp/./src/mars-app/components/pcr-address-details/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-confirmation/pcr-confirmation.html","webpack://MARSApp/./src/mars-app/components/pcr-confirmation/pcr-confirmation.ts","webpack://MARSApp/./src/mars-app/components/pcr-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-payment-details/pcr-payment-details.html","webpack://MARSApp/./src/shared/components/currency-input/index.vue","webpack://MARSApp/./src/shared/components/currency-input/index.vue?2e2b","webpack://MARSApp/./src/shared/components/error-indicator/error-indicator.html","webpack://MARSApp/./src/shared/components/error-indicator/error-indicator.ts","webpack://MARSApp/./src/shared/components/error-indicator/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-payment-details/pcr-payment-details.ts","webpack://MARSApp/./src/mars-app/components/pcr-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-preferences/pcr-preferences.html","webpack://MARSApp/./src/mars-app/components/pcr-preferences/pcr-preferences.ts","webpack://MARSApp/./src/mars-app/components/pcr-preferences/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-renewal-details/pcr-renewal-details.html","webpack://MARSApp/./src/shared/components/step-indicator/step-indicator.html","webpack://MARSApp/./src/shared/components/step-indicator/step-indicator.ts","webpack://MARSApp/./src/shared/components/step-indicator/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-renewal-details/pcr-renewal-details.ts","webpack://MARSApp/./src/mars-app/components/pcr-renewal-details/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-statutory-register/pcr-statutory-register.html","webpack://MARSApp/./src/shared/components/dropdown-selection/dropdown-selection.html","webpack://MARSApp/./src/shared/components/dropdown-selection/dropdown-selection.ts","webpack://MARSApp/./src/shared/components/dropdown-selection/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-statutory-register/pcr-statutory-register.ts","webpack://MARSApp/./src/mars-app/components/pcr-statutory-register/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-additional-details/pcr-additional-details.html","webpack://MARSApp/./src/mars-app/components/pcr-additional-details/pcr-additional-details.ts","webpack://MARSApp/./src/mars-app/components/pcr-additional-details/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-popup/pcr-practice-record-ppp-popup.html","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-card/pcr-practice-record-ppp-card.html","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-card/pcr-practice-record-ppp-card.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-card/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-popup/pcr-practice-record-ppp-popup.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-ppp-popup/index.vue","webpack://MARSApp/./src/mars-app/components/payment-popup/payment-popup.html","webpack://MARSApp/./src/mars-app/components/payment-popup/payment-popup.ts","webpack://MARSApp/./src/mars-app/components/payment-popup/index.vue","webpack://MARSApp/./src/shared/models/payment-transaction.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-additional-details-popup/pcr-practice-record-additional-details-popup.html","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-additional-details-popup/pcr-practice-record-additional-details-popup.ts","webpack://MARSApp/./src/mars-app/components/pcr-practice-record-additional-details-popup/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/sar-application-declarations.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-one/app-declaration-one.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-one/app-declaration-one.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-one/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-two/app-declaration-two.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-two/app-declaration-two.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-two/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-three/app-declaration-three.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-three/app-declaration-three.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-three/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-four/app-declaration-four.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-four/app-declaration-four.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-four/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-five/app-declaration-five.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-five/app-declaration-five.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/app-declaration-five/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/sar-application-declarations.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-specialist-accreditation/pcr-specialist-accreditation.html","webpack://MARSApp/./src/mars-app/components/pcr-specialist-accreditation/pcr-specialist-accreditation.ts","webpack://MARSApp/./src/mars-app/components/pcr-specialist-accreditation/index.vue","webpack://MARSApp/./src/mars-app/components/pcr-renewal-declarations/pcr-renewal-declarations.html","webpack://MARSApp/./src/mars-app/components/pcr-renewal-declarations/pcr-renewal-declarations.ts","webpack://MARSApp/./src/mars-app/components/pcr-renewal-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/payment-modal/payment-modal.html","webpack://MARSApp/./src/shared/mixins/number-formatting.ts","webpack://MARSApp/./src/mars-app/components/payment-modal/credit-card-payment/credit-card-payment.html","webpack://MARSApp/./src/mars-app/components/payment-modal/credit-card-payment/payway-style.ts","webpack://MARSApp/./src/mars-app/components/payment-modal/config/config.ts","webpack://MARSApp/./src/mars-app/components/payment-modal/credit-card-payment/credit-card-payment.ts","webpack://MARSApp/./src/mars-app/components/payment-modal/credit-card-payment/index.vue","webpack://MARSApp/./src/mars-app/components/payment-modal/payment-modal.ts","webpack://MARSApp/./src/mars-app/components/payment-modal/index.vue","webpack://MARSApp/./src/mars-app/components/pcr/pcr.ts","webpack://MARSApp/./src/mars-app/components/pcr/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor/pc-nor.html","webpack://MARSApp/./src/mars-app/components/pc-nor-current-details/pc-nor-current-details.html","webpack://MARSApp/./src/mars-app/components/pc-nor-address-details-update-modal/pc-nor-address-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/pc-nor-address-details-update-modal/pc-nor-address-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/pc-nor-address-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor-current-details/pc-nor-current-details.ts","webpack://MARSApp/./src/mars-app/components/pc-nor-current-details/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor-declarations/pc-nor-declarations.html","webpack://MARSApp/./src/mars-app/components/pc-nor-declarations/pc-nor-declarations.ts","webpack://MARSApp/./src/mars-app/components/pc-nor-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor-confirmation/pc-nor-confirmation.html","webpack://MARSApp/./src/mars-app/components/pc-nor-confirmation/pc-nor-confirmation.ts","webpack://MARSApp/./src/mars-app/components/pc-nor-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor-payment-details/pc-nor-payment-details.html","webpack://MARSApp/./src/mars-app/components/pc-nor-payment-details/pc-nor-payment-details.ts","webpack://MARSApp/./src/mars-app/components/pc-nor-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/pc-nor/pc-nor.ts","webpack://MARSApp/./src/mars-app/components/pc-nor/index.vue","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application/sm-application.html","webpack://MARSApp/./src/mars-app/components/sm-app/sm-payment-details/sm-payment-details.html","webpack://MARSApp/./src/mars-app/components/sm-app/sm-payment-details/sm-payment-details.ts","webpack://MARSApp/./src/mars-app/components/sm-app/sm-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/sm-app/sm-confirmation/sm-confirmation.html","webpack://MARSApp/./src/mars-app/components/sm-app/sm-confirmation/sm-confirmation.ts","webpack://MARSApp/./src/mars-app/components/sm-app/sm-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application-details/sm-application-details.html","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application-details/sm-application-details.ts","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application-details/index.vue","webpack://MARSApp/./src/mars-app/components/sm-app/sm-overview/sm-overview.html","webpack://MARSApp/./src/mars-app/components/sm-app/sm-overview/sm-overview.ts","webpack://MARSApp/./src/mars-app/components/sm-app/sm-overview/index.vue","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application/sm-application.ts","webpack://MARSApp/./src/mars-app/components/sm-app/sm-application/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application/sar-application.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-overview/sar-overview.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-overview/sar-overview.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-overview/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-current-details/sar-current-details.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-current-details/sar-current-details.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-current-details/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-confirmation/sar-confirmation.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-confirmation/sar-confirmation.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-payment-details/sar-payment-details.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-payment-details/sar-payment-details.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-renewal-declarations/sar-renewal-declarations.html","webpack://MARSApp/./src/mars-app/components/sar-app/sar-renewal-declarations/sar-renewal-declarations.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-renewal-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application/sar-application.ts","webpack://MARSApp/./src/mars-app/components/sar-app/sar-application/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application/amn-application.html","webpack://MARSApp/./src/shared/components/header-stepper/header-stepper.html","webpack://MARSApp/./src/shared/components/header-stepper/header-stepper.ts","webpack://MARSApp/./src/shared/components/header-stepper/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-applicant-details/amn-applicant-details.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application-details-update-modal/amn-application-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application-details-update-modal/amn-application-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-applicant-details/amn-applicant-details.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-applicant-details/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-one/amn-associate-m-category-one.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-one/amn-associate-m-category-one.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-one/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-two/amn-associate-m-category-two.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-two/amn-associate-m-category-two.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-two/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-three/amn-associate-m-category-three.html","webpack://MARSApp/./src/shared/components/firmSearch/firmSearch.html","webpack://MARSApp/./src/shared/components/firmSearch/firmSearch.ts","webpack://MARSApp/./src/shared/components/firmSearch/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-three/amn-associate-m-category-three.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-three/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-four/amn-associate-m-category-four.html","webpack://MARSApp/./src/shared/components/institutionSearch/institutionSearch.html","webpack://MARSApp/./src/shared/components/institutionSearch/institutionSearch.ts","webpack://MARSApp/./src/shared/components/institutionSearch/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-four/amn-associate-m-category-four.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category-four/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/amn-associate-m-category.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-associate-m-category/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-preferences/amn-preferences.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-preferences/amn-preferences.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-preferences/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-declarations/amn-declarations.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-declarations/amn-declarations.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-payment-details/amn-payment-details.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-payment-details/amn-payment-details.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-confirmation/amn-confirmation.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-confirmation/amn-confirmation.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-overview/amn-overview.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-overview/amn-overview.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-overview/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-current-status/amn-current-status.html","webpack://MARSApp/./src/mars-app/components/amn-app/amn-current-status/amn-current-status.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-current-status/index.vue","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application/amn-application.ts","webpack://MARSApp/./src/mars-app/components/amn-app/amn-application/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-application/stn-application.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-eligibility/stn-eligibility.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-eligibility/stn-eligibility.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-eligibility/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details/stn-applicant-details.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details-update-modal/stn-applicant-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details-update-modal/stn-applicant-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details/stn-applicant-details.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-applicant-details/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-preferences/stn-preferences.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-preferences/stn-preferences.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-preferences/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-declaration/stn-declaration.html","webpack://MARSApp/./src/shared/components/loading-indicator/loading-indicator.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-declaration/stn-declaration.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-declaration/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-confirmation/stn-confirmation.html","webpack://MARSApp/./src/mars-app/components/stn-app/stn-confirmation/stn-confirmation.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/stn-app/stn-application/stn-application.ts","webpack://MARSApp/./src/mars-app/components/stn-app/stn-application/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-application/amr-application.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details/amr-membership-details.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details-update-modal/amr-membership-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details-update-modal/amr-membership-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details/amr-membership-details.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-membership-details/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-preferences/amr-preferences.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-preferences/amr-preferences.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-preferences/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-declarations/amr-declarations.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-declarations/amr-declarations.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-declarations/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-payment-details/amr-payment-details.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-payment-details/amr-payment-details.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-payment-details/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-confirmation/amr-confirmation.html","webpack://MARSApp/./src/mars-app/components/amr-app/amr-confirmation/amr-confirmation.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/amr-app/amr-application/amr-application.ts","webpack://MARSApp/./src/mars-app/components/amr-app/amr-application/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-application/str-application.html","webpack://MARSApp/./src/mars-app/components/str-app/str-eligibility/str-eligibility.html","webpack://MARSApp/./src/mars-app/components/str-app/str-eligibility/str-eligibility.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-eligibility/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details/str-applicant-details.html","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details-update-modal/str-applicant-details-update-modal.html","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details-update-modal/str-applicant-details-update-modal.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details-update-modal/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details/str-applicant-details.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-applicant-details/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-preferences/str-preferences.html","webpack://MARSApp/./src/mars-app/components/str-app/str-preferences/str-preferences.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-preferences/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-declaration/str-declaration.html","webpack://MARSApp/./src/mars-app/components/str-app/str-declaration/str-declaration.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-declaration/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-confirmation/str-confirmation.html","webpack://MARSApp/./src/mars-app/components/str-app/str-confirmation/str-confirmation.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-confirmation/index.vue","webpack://MARSApp/./src/mars-app/components/str-app/str-application/str-application.ts","webpack://MARSApp/./src/mars-app/components/str-app/str-application/index.vue","webpack://MARSApp/./src/mars-app/router/index.ts","webpack://MARSApp/./src/mars-app/main.ts","webpack://MARSApp/webpack/bootstrap","webpack://MARSApp/webpack/runtime/chunk loaded","webpack://MARSApp/webpack/runtime/compat get default export","webpack://MARSApp/webpack/runtime/define property getters","webpack://MARSApp/webpack/runtime/global","webpack://MARSApp/webpack/runtime/hasOwnProperty shorthand","webpack://MARSApp/webpack/runtime/make namespace object","webpack://MARSApp/webpack/runtime/node module decorator","webpack://MARSApp/webpack/runtime/publicPath","webpack://MARSApp/webpack/runtime/jsonp chunk loading","webpack://MARSApp/webpack/startup"],"sourcesContent":["var map = {\n\t\"./af\": 5177,\n\t\"./af.js\": 5177,\n\t\"./ar\": 1509,\n\t\"./ar-dz\": 1488,\n\t\"./ar-dz.js\": 1488,\n\t\"./ar-kw\": 8676,\n\t\"./ar-kw.js\": 8676,\n\t\"./ar-ly\": 2353,\n\t\"./ar-ly.js\": 2353,\n\t\"./ar-ma\": 4496,\n\t\"./ar-ma.js\": 4496,\n\t\"./ar-sa\": 2682,\n\t\"./ar-sa.js\": 2682,\n\t\"./ar-tn\": 9756,\n\t\"./ar-tn.js\": 9756,\n\t\"./ar.js\": 1509,\n\t\"./az\": 5533,\n\t\"./az.js\": 5533,\n\t\"./be\": 8959,\n\t\"./be.js\": 8959,\n\t\"./bg\": 7777,\n\t\"./bg.js\": 7777,\n\t\"./bm\": 4903,\n\t\"./bm.js\": 4903,\n\t\"./bn\": 1290,\n\t\"./bn-bd\": 7357,\n\t\"./bn-bd.js\": 7357,\n\t\"./bn.js\": 1290,\n\t\"./bo\": 1545,\n\t\"./bo.js\": 1545,\n\t\"./br\": 1470,\n\t\"./br.js\": 1470,\n\t\"./bs\": 4429,\n\t\"./bs.js\": 4429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 6464,\n\t\"./cs.js\": 6464,\n\t\"./cv\": 3635,\n\t\"./cv.js\": 3635,\n\t\"./cy\": 4226,\n\t\"./cy.js\": 4226,\n\t\"./da\": 3601,\n\t\"./da.js\": 3601,\n\t\"./de\": 7853,\n\t\"./de-at\": 6111,\n\t\"./de-at.js\": 6111,\n\t\"./de-ch\": 4697,\n\t\"./de-ch.js\": 4697,\n\t\"./de.js\": 7853,\n\t\"./dv\": 708,\n\t\"./dv.js\": 708,\n\t\"./el\": 4691,\n\t\"./el.js\": 4691,\n\t\"./en-au\": 3872,\n\t\"./en-au.js\": 3872,\n\t\"./en-ca\": 8298,\n\t\"./en-ca.js\": 8298,\n\t\"./en-gb\": 6195,\n\t\"./en-gb.js\": 6195,\n\t\"./en-ie\": 6584,\n\t\"./en-ie.js\": 6584,\n\t\"./en-il\": 5543,\n\t\"./en-il.js\": 5543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 9402,\n\t\"./en-nz.js\": 9402,\n\t\"./en-sg\": 3004,\n\t\"./en-sg.js\": 3004,\n\t\"./eo\": 2934,\n\t\"./eo.js\": 2934,\n\t\"./es\": 7650,\n\t\"./es-do\": 838,\n\t\"./es-do.js\": 838,\n\t\"./es-mx\": 7730,\n\t\"./es-mx.js\": 7730,\n\t\"./es-us\": 6575,\n\t\"./es-us.js\": 6575,\n\t\"./es.js\": 7650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 527,\n\t\"./fi.js\": 527,\n\t\"./fil\": 5995,\n\t\"./fil.js\": 5995,\n\t\"./fo\": 2477,\n\t\"./fo.js\": 2477,\n\t\"./fr\": 5498,\n\t\"./fr-ca\": 6435,\n\t\"./fr-ca.js\": 6435,\n\t\"./fr-ch\": 7892,\n\t\"./fr-ch.js\": 7892,\n\t\"./fr.js\": 5498,\n\t\"./fy\": 7071,\n\t\"./fy.js\": 7071,\n\t\"./ga\": 1734,\n\t\"./ga.js\": 1734,\n\t\"./gd\": 217,\n\t\"./gd.js\": 217,\n\t\"./gl\": 7329,\n\t\"./gl.js\": 7329,\n\t\"./gom-deva\": 2124,\n\t\"./gom-deva.js\": 2124,\n\t\"./gom-latn\": 3383,\n\t\"./gom-latn.js\": 3383,\n\t\"./gu\": 5050,\n\t\"./gu.js\": 5050,\n\t\"./he\": 1713,\n\t\"./he.js\": 1713,\n\t\"./hi\": 3861,\n\t\"./hi.js\": 3861,\n\t\"./hr\": 6308,\n\t\"./hr.js\": 6308,\n\t\"./hu\": 609,\n\t\"./hu.js\": 609,\n\t\"./hy-am\": 7160,\n\t\"./hy-am.js\": 7160,\n\t\"./id\": 4063,\n\t\"./id.js\": 4063,\n\t\"./is\": 9374,\n\t\"./is.js\": 9374,\n\t\"./it\": 8383,\n\t\"./it-ch\": 1827,\n\t\"./it-ch.js\": 1827,\n\t\"./it.js\": 8383,\n\t\"./ja\": 3827,\n\t\"./ja.js\": 3827,\n\t\"./jv\": 9722,\n\t\"./jv.js\": 9722,\n\t\"./ka\": 9413,\n\t\"./ka.js\": 9413,\n\t\"./kk\": 7088,\n\t\"./kk.js\": 7088,\n\t\"./km\": 6870,\n\t\"./km.js\": 6870,\n\t\"./kn\": 4451,\n\t\"./kn.js\": 4451,\n\t\"./ko\": 3164,\n\t\"./ko.js\": 3164,\n\t\"./ku\": 8174,\n\t\"./ku.js\": 8174,\n\t\"./ky\": 8474,\n\t\"./ky.js\": 8474,\n\t\"./lb\": 9680,\n\t\"./lb.js\": 9680,\n\t\"./lo\": 5867,\n\t\"./lo.js\": 5867,\n\t\"./lt\": 5766,\n\t\"./lt.js\": 5766,\n\t\"./lv\": 9532,\n\t\"./lv.js\": 9532,\n\t\"./me\": 8076,\n\t\"./me.js\": 8076,\n\t\"./mi\": 1848,\n\t\"./mi.js\": 1848,\n\t\"./mk\": 306,\n\t\"./mk.js\": 306,\n\t\"./ml\": 3739,\n\t\"./ml.js\": 3739,\n\t\"./mn\": 9053,\n\t\"./mn.js\": 9053,\n\t\"./mr\": 6169,\n\t\"./mr.js\": 6169,\n\t\"./ms\": 3386,\n\t\"./ms-my\": 2297,\n\t\"./ms-my.js\": 2297,\n\t\"./ms.js\": 3386,\n\t\"./mt\": 7075,\n\t\"./mt.js\": 7075,\n\t\"./my\": 2264,\n\t\"./my.js\": 2264,\n\t\"./nb\": 2274,\n\t\"./nb.js\": 2274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 2572,\n\t\"./nl-be\": 3784,\n\t\"./nl-be.js\": 3784,\n\t\"./nl.js\": 2572,\n\t\"./nn\": 4566,\n\t\"./nn.js\": 4566,\n\t\"./oc-lnc\": 9330,\n\t\"./oc-lnc.js\": 9330,\n\t\"./pa-in\": 9849,\n\t\"./pa-in.js\": 9849,\n\t\"./pl\": 4418,\n\t\"./pl.js\": 4418,\n\t\"./pt\": 9834,\n\t\"./pt-br\": 8303,\n\t\"./pt-br.js\": 8303,\n\t\"./pt.js\": 9834,\n\t\"./ro\": 4457,\n\t\"./ro.js\": 4457,\n\t\"./ru\": 2271,\n\t\"./ru.js\": 2271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 3478,\n\t\"./se.js\": 3478,\n\t\"./si\": 7538,\n\t\"./si.js\": 7538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 6637,\n\t\"./sl.js\": 6637,\n\t\"./sq\": 6794,\n\t\"./sq.js\": 6794,\n\t\"./sr\": 5719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 5719,\n\t\"./ss\": 6000,\n\t\"./ss.js\": 6000,\n\t\"./sv\": 1011,\n\t\"./sv.js\": 1011,\n\t\"./sw\": 748,\n\t\"./sw.js\": 748,\n\t\"./ta\": 1025,\n\t\"./ta.js\": 1025,\n\t\"./te\": 1885,\n\t\"./te.js\": 1885,\n\t\"./tet\": 8861,\n\t\"./tet.js\": 8861,\n\t\"./tg\": 6571,\n\t\"./tg.js\": 6571,\n\t\"./th\": 5802,\n\t\"./th.js\": 5802,\n\t\"./tk\": 9527,\n\t\"./tk.js\": 9527,\n\t\"./tl-ph\": 9231,\n\t\"./tl-ph.js\": 9231,\n\t\"./tlh\": 1052,\n\t\"./tlh.js\": 1052,\n\t\"./tr\": 5096,\n\t\"./tr.js\": 5096,\n\t\"./tzl\": 9846,\n\t\"./tzl.js\": 9846,\n\t\"./tzm\": 1765,\n\t\"./tzm-latn\": 7711,\n\t\"./tzm-latn.js\": 7711,\n\t\"./tzm.js\": 1765,\n\t\"./ug-cn\": 8414,\n\t\"./ug-cn.js\": 8414,\n\t\"./uk\": 6618,\n\t\"./uk.js\": 6618,\n\t\"./ur\": 158,\n\t\"./ur.js\": 158,\n\t\"./uz\": 7609,\n\t\"./uz-latn\": 2475,\n\t\"./uz-latn.js\": 2475,\n\t\"./uz.js\": 7609,\n\t\"./vi\": 1135,\n\t\"./vi.js\": 1135,\n\t\"./x-pseudo\": 4051,\n\t\"./x-pseudo.js\": 4051,\n\t\"./yo\": 2218,\n\t\"./yo.js\": 2218,\n\t\"./zh-cn\": 2648,\n\t\"./zh-cn.js\": 2648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 1541,\n\t\"./zh-mo.js\": 1541,\n\t\"./zh-tw\": 304,\n\t\"./zh-tw.js\": 304\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 5358;","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment, createElementBlock as _createElementBlock } from \"vue\"\n\nexport function render(_ctx, _cache) {\n const _component_SnackBar = _resolveComponent(\"SnackBar\")\n const _component_router_view = _resolveComponent(\"router-view\")\n const _component_SessionExpired = _resolveComponent(\"SessionExpired\")\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_SnackBar, { store: _ctx.store }, null, 8, [\"store\"]),\n _createVNode(_component_router_view),\n (_ctx.sessionExpired)\n ? (_openBlock(), _createBlock(_component_SessionExpired, {\n key: 0,\n onClose: _cache[0] || (_cache[0] = $event => (_ctx.sessionExpired = false))\n }))\n : _createCommentVNode(\"\", true)\n ], 64))\n}","import { EncryptStorage } from \"encrypt-storage\";\n\nexport const ENCRYPT_STORAGE = new EncryptStorage('secret-key:7ey4hu7fyf=--', {\n prefix: '@mars',\n storageType: 'sessionStorage',\n });\n\nexport function localUrl(): string {\n const result = window.location.href.split('/');\n return result[0] + '//' + result[2];\n}\n\nexport const AZ_INSTRUMENT_KEY_INT: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_INT as string;\nexport const AZ_INSTRUMENT_KEY_EXT: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_EXT as string;\nexport const UPDATE_EMAIL_LINK: string = process.env.VUE_APP_UPDATE_EMAIL_LINK as string;\n\nexport const TOKEN_URL: string = process.env.VUE_APP_TOKEN_URL as string;\nexport const API_URL: string = process.env.VUE_APP_API_URL as string;\nexport const IDLE_TIMEOUT: number = parseInt(process.env.VUE_APP_IDLE_TIMEOUT, 10);\nexport const TOKEN_REFRESH_TIME: number = parseInt(process.env.VUE_APP_TOKEN_REFRESH_TIME, 10);\nexport const SELF_URL: string = localUrl();\n\nexport const PAYMENTAPP_URL: string = process.env.VUE_APP_PAYMENTAPP_URL as string;\nexport const SOURCE_BRANCH: string = process.env.VUE_APP_SOURCE_BRANCH as string;\n\nexport const STUDENT_EMAIL_VALIDATION_SUFFIX = \"edu.au\";\n\n","\nexport interface RouteName {\n NoAccess: { n: string; p: string };\n Mars: MarsRouterName;\n Mac: MacRouterName;\n}\n\nexport interface MarsRouterName {\n Home: { n: string; p: string };\n Main: { n: string; p: string };\n PcRenew: { n: string; p: string };\n PcRenewOverview: { n: string; p: string };\n PcNoRenew: { n: string; p: string };\n SmApplication: { n: string; p: string };\n SarApplication: { n: string; p: string };\n SaNrApplication: { n: string; p: string };\n AmnApplication: { n: string; p: string };\n StnApplication: { n: string; p: string };\n StrApplication: { n: string; p: string };\n AmrApplication: { n: string; p: string };\n LoginPage: { n: string; p: string };\n LogoutPage: { n: string; p: string };\n AccessError: { n: string; p: string };\n}\n\nexport interface MacRouterName {\n Home: { n: string; p: string };\n ApplicationContent: { n: string; p: string };\n ApplicationPages: { n: string; p: string };\n PageContentList: { n: string; p: string };\n Main: { n: string; p: string };\n LoginPage: { n: string; p: string };\n LogoutPage: { n: string; p: string };\n AccessError: { n: string; p: string };\n}\n\nexport const RouteN: RouteName = {\n NoAccess: { n: 'no-access', p: '/no-access' },\n Mars: {\n Main: { n: 'internal-main', p: '/' },\n Home: { n: 'Home', p: '/home' },\n PcRenew: { n: 'PC-Renew', p: '/pcr' },\n PcRenewOverview: { n: 'PC-Renew-Overview', p: 'pcr-overview' },\n PcNoRenew: { n: 'PC-NoRenew', p: '/pc-nor' },\n SmApplication: { n: 'SM-application', p: '/sm-application' },\n SarApplication: { n: 'SAR-application', p: '/sar-application' },\n SaNrApplication: { n: 'SA-NR-application', p: '/sa-nr-application' },\n AmnApplication: { n: 'AMN-application', p: '/amn-application' },\n StnApplication: { n: 'STN-application', p: '/stn-application' },\n StrApplication: { n: 'STR-application', p: '/str-application' },\n AmrApplication: { n: 'AMR-application', p: '/amr-application' },\n LoginPage: { n: 'login', p: '/check-auth' },\n LogoutPage: { n: 'logout', p: '/signout' },\n AccessError: { n: 'accessError', p: '/access-error' },\n },\n Mac: {\n Main: { n: 'internal-main', p: '/' },\n Home: { n: 'Home', p: '/home' },\n ApplicationContent: { n: 'application-content', p: '/application-content' },\n ApplicationPages: { n: 'application-pages', p: '/application-pages' },\n PageContentList: { n: 'page-content-list', p: '/page-content-list' },\n LoginPage: { n: 'login', p: '/check-auth' },\n LogoutPage: { n: 'logout', p: '/signout' },\n AccessError: { n: 'accessError', p: '/access-error' },\n }\n};","export class User {\n constructor(\n public externalId?: string | null,\n public email?: string | null,\n public firstName?: string | null,\n public lastName?: string | null,\n public title?: string | null,\n public userName?: string | null,\n public lawId?: string | null,\n public isMember?: boolean | null,\n public isPcHolder?: boolean | null,\n public securityGroups?: null,\n public roles?: []\n ) { }\n}","export class Token {\n constructor(\n public clientId: number | null = null,\n public tokenStr: string | null = null,\n public userId: number | null = null\n ) {\n }\n}\n","export type AuthenticationStatus = AuthenticationStatusType.Unknown | AuthenticationStatusType.NotLogin |\n AuthenticationStatusType.LoggedIn | AuthenticationStatusType.AppAccessPermitted |\n AuthenticationStatusType.AppAccessDenied;\n\nexport enum AuthenticationStatusType {\n Unknown,\n NotLogin,\n LoggedIn,\n AppAccessDenied,\n AppAccessPermitted,\n}\n","export class Session {\n\n constructor(\n public issued: number = 0,\n public expires: number = 0,\n ) {}\n\n public hasExpired(): boolean {\n return Math.round(new Date().getTime() / 1000) >= this.expires;\n }\n}\n","import { User } from '@/shared/models/user'\nimport { Token } from '@/shared/models/token'\nimport { AuthenticationStatus, AuthenticationStatusType } from '@/shared/modules/authentication/authentication-status'\nimport { Session } from './session'\n\nexport class AuthorizedUser {\n constructor(\n public user: User = new User(),\n public token: Token = new Token(),\n public session: Session = new Session(),\n public authenticationStatus: AuthenticationStatus = AuthenticationStatusType.Unknown\n ) { }\n}","export interface Url {\n Token: string;\n Login: string;\n Logout: string;\n}\n\nexport const Url: Url = {\n Token: '/token',\n Login: '/login',\n Logout: '/logout'\n};\n","import { AuthorizedUser } from '@/shared/models/authorized-user';\nimport { AxiosInstance, AxiosResponse } from 'axios';\nimport globalAxios from 'axios';\nimport * as HttpStatus from 'http-status-codes';\nimport { AuthenticationStatus, AuthenticationStatusType } from './authentication-status';\nimport { SELF_URL } from '@/shared/config/config';\nimport { Url } from '@/shared/config/url'\n\nexport default class AuthenticationService {\n\n private options = {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n };\n\n constructor(\n public authedUser: AuthorizedUser = new AuthorizedUser(),\n public axios: AxiosInstance = globalAxios\n ) { }\n\n public async checkAuthentication(): Promise {\n let tokenResp: AxiosResponse;\n\n try {\n tokenResp = await this.axios.get(SELF_URL + Url.Token);\n try {\n this.authedUser.token.tokenStr = tokenResp.data.token;\n this.authedUser.token.clientId = tokenResp.data.clientId;\n this.authedUser.token.userId = tokenResp.data.userId;\n this.authedUser.user.email = tokenResp.data.user.email;\n this.authedUser.user.externalId = tokenResp.data.user.externalId;\n this.authedUser.user.firstName = tokenResp.data.user.firstName;\n this.authedUser.user.lastName = tokenResp.data.user.lastName;\n this.authedUser.user.lawId = tokenResp.data.user.lawId;\n this.authedUser.user.userName = tokenResp.data.user.lawId;\n this.authedUser.user.title = tokenResp.data.user.title;\n this.authedUser.user.isMember = tokenResp.data.user.isMember;\n this.authedUser.user.isPcHolder = tokenResp.data.user.isPcHolder;\n this.authedUser.session.issued = Math.round(new Date(tokenResp.data['issued']).getTime() / 1000);\n this.authedUser.session.expires = Math.round(new Date(tokenResp.data['expires']).getTime() / 1000);\n this.authedUser.user.roles = tokenResp.data.user.roles;\n\n if (tokenResp.data.token) {\n this.authedUser.authenticationStatus = AuthenticationStatusType.LoggedIn;\n return Promise.resolve(AuthenticationStatusType.LoggedIn);\n } else {\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\n return Promise.reject(AuthenticationStatusType.Unknown);\n }\n } catch (err) {\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\n return Promise.reject(AuthenticationStatusType.Unknown);\n }\n\n } catch (err: any) {\n if (err.response.status === HttpStatus.UNAUTHORIZED ||\n err.response.status === HttpStatus.FORBIDDEN) {\n this.authedUser.authenticationStatus = AuthenticationStatusType.NotLogin;\n return Promise.reject(AuthenticationStatusType.NotLogin);\n } else {\n this.authedUser.authenticationStatus = AuthenticationStatusType.Unknown;\n return Promise.reject(AuthenticationStatusType.Unknown);\n }\n }\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { Configuration } from \"./configuration\";\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\n\nexport const BASE_PATH = \"/\".replace(/\\/+$/, \"\");\n\n/**\n *\n * @export\n */\nexport const COLLECTION_FORMATS = {\n csv: \",\",\n ssv: \" \",\n tsv: \"\\t\",\n pipes: \"|\",\n};\n\n/**\n *\n * @export\n * @interface RequestArgs\n */\nexport interface RequestArgs {\n url: string;\n options: any;\n}\n\n/**\n *\n * @export\n * @class BaseAPI\n */\nexport class BaseAPI {\n protected configuration: Configuration | undefined;\n\n constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {\n if (configuration) {\n this.configuration = configuration;\n this.basePath = configuration.basePath || this.basePath;\n }\n }\n};\n\n/**\n *\n * @export\n * @class RequiredError\n * @extends {Error}\n */\nexport class RequiredError extends Error {\n name: \"RequiredError\" = \"RequiredError\";\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { PageContainerIEnumerableResponse } from '../models';\nimport { PageContentIEnumerableResponse } from '../models';\nimport { PageContentRequest } from '../models';\nimport { PageContentStatusRequest } from '../models';\nimport { PageIEnumerableResponse } from '../models';\n/**\n * AdminApi - axios parameter creator\n * @export\n */\nexport const AdminApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary Internal Content Admin | Returns Page Containers\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPageContainersGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Admin/GetPageContainers`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Internal Content Admin | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPageContentsPageIdGet: async (pageId: number, options: any = {}): Promise => {\n // verify required parameter 'pageId' is not null or undefined\n if (pageId === null || pageId === undefined) {\n throw new RequiredError('pageId','Required parameter pageId was null or undefined when calling apiV1AdminGetPageContentsPageIdGet.');\n }\n const localVarPath = `/api/v1/Admin/GetPageContents/{pageId}`\n .replace(`{${\"pageId\"}}`, encodeURIComponent(String(pageId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Internal Content Admin | Returns Pages by pageContainerId\n * @param {number} pageContainerId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPagesByPageContainerIdPageContainerIdGet: async (pageContainerId: number, options: any = {}): Promise => {\n // verify required parameter 'pageContainerId' is not null or undefined\n if (pageContainerId === null || pageContainerId === undefined) {\n throw new RequiredError('pageContainerId','Required parameter pageContainerId was null or undefined when calling apiV1AdminGetPagesByPageContainerIdPageContainerIdGet.');\n }\n const localVarPath = `/api/v1/Admin/GetPagesByPageContainerId/{pageContainerId}`\n .replace(`{${\"pageContainerId\"}}`, encodeURIComponent(String(pageContainerId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content\n * @param {PageContentRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminUpdatePageContentPost: async (body?: PageContentRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Admin/UpdatePageContent`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content Status\n * @param {PageContentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminUpdatePageContentStatusPost: async (body?: PageContentStatusRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Admin/UpdatePageContentStatus`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * AdminApi - functional programming interface\n * @export\n */\nexport const AdminApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary Internal Content Admin | Returns Page Containers\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AdminGetPageContainersGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AdminApiAxiosParamCreator(configuration).apiV1AdminGetPageContainersGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Internal Content Admin | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AdminGetPageContentsPageIdGet(pageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AdminApiAxiosParamCreator(configuration).apiV1AdminGetPageContentsPageIdGet(pageId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Internal Content Admin | Returns Pages by pageContainerId\n * @param {number} pageContainerId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AdminApiAxiosParamCreator(configuration).apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content\n * @param {PageContentRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AdminUpdatePageContentPost(body?: PageContentRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AdminApiAxiosParamCreator(configuration).apiV1AdminUpdatePageContentPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content Status\n * @param {PageContentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AdminUpdatePageContentStatusPost(body?: PageContentStatusRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AdminApiAxiosParamCreator(configuration).apiV1AdminUpdatePageContentStatusPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * AdminApi - factory interface\n * @export\n */\nexport const AdminApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary Internal Content Admin | Returns Page Containers\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPageContainersGet(options?: any): AxiosPromise {\n return AdminApiFp(configuration).apiV1AdminGetPageContainersGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Internal Content Admin | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPageContentsPageIdGet(pageId: number, options?: any): AxiosPromise {\n return AdminApiFp(configuration).apiV1AdminGetPageContentsPageIdGet(pageId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Internal Content Admin | Returns Pages by pageContainerId\n * @param {number} pageContainerId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId: number, options?: any): AxiosPromise {\n return AdminApiFp(configuration).apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content\n * @param {PageContentRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminUpdatePageContentPost(body?: PageContentRequest, options?: any): AxiosPromise {\n return AdminApiFp(configuration).apiV1AdminUpdatePageContentPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Internal Content Admin | Update Page Content Status\n * @param {PageContentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AdminUpdatePageContentStatusPost(body?: PageContentStatusRequest, options?: any): AxiosPromise {\n return AdminApiFp(configuration).apiV1AdminUpdatePageContentStatusPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * AdminApi - object-oriented interface\n * @export\n * @class AdminApi\n * @extends {BaseAPI}\n */\nexport class AdminApi extends BaseAPI {\n /**\n * \n * @summary Internal Content Admin | Returns Page Containers\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AdminApi\n */\n public apiV1AdminGetPageContainersGet(options?: any) {\n return AdminApiFp(this.configuration).apiV1AdminGetPageContainersGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Internal Content Admin | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AdminApi\n */\n public apiV1AdminGetPageContentsPageIdGet(pageId: number, options?: any) {\n return AdminApiFp(this.configuration).apiV1AdminGetPageContentsPageIdGet(pageId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Internal Content Admin | Returns Pages by pageContainerId\n * @param {number} pageContainerId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AdminApi\n */\n public apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId: number, options?: any) {\n return AdminApiFp(this.configuration).apiV1AdminGetPagesByPageContainerIdPageContainerIdGet(pageContainerId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Internal Content Admin | Update Page Content\n * @param {PageContentRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AdminApi\n */\n public apiV1AdminUpdatePageContentPost(body?: PageContentRequest, options?: any) {\n return AdminApiFp(this.configuration).apiV1AdminUpdatePageContentPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Internal Content Admin | Update Page Content Status\n * @param {PageContentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AdminApi\n */\n public apiV1AdminUpdatePageContentStatusPost(body?: PageContentStatusRequest, options?: any) {\n return AdminApiFp(this.configuration).apiV1AdminUpdatePageContentStatusPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AmNewApplicationRequest } from '../models';\nimport { AmNewIndividualDetailRequest } from '../models';\nimport { AmNewIndividualDetailResponse } from '../models';\nimport { AmNewPreferenceDetailRequest } from '../models';\nimport { AmNewPreferenceDetailResponse } from '../models';\nimport { AmNewRecordCategoryDetailRequest } from '../models';\nimport { AmNewRecordCategoryDetailResponse } from '../models';\nimport { AmNewRecordCurrentStatusRequest } from '../models';\nimport { AmNewRecordCurrentStatusResponse } from '../models';\nimport { AmNewRecordDeclarationRequest } from '../models';\nimport { AmNewRecordDeclarationResponse } from '../models';\nimport { BooleanResponse } from '../models';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * AmNewApi - axios parameter creator\n * @export\n */\nexport const AmNewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewCancelAmNewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewCancelAmNewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/CancelAmNewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmNew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/CheckAmNewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewIndividualDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewPreferenceDetailData/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Category Detail\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewRecordCategoryDetail/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Current Status\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewRecordCurrentStatus/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmNew/GetAmNewRecordDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewPreferenceDetailDataPost: async (body?: AmNewPreferenceDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/SaveAmNewPreferenceDetailData`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Category Detail\n * @param {AmNewRecordCategoryDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordCategoryDetailPost: async (body?: AmNewRecordCategoryDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/SaveAmNewRecordCategoryDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Current Status\n * @param {AmNewRecordCurrentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordCurrentStatusPost: async (body?: AmNewRecordCurrentStatusRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/SaveAmNewRecordCurrentStatus`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Declaration\n * @param {AmNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordDeclarationPost: async (body?: AmNewRecordDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/SaveAmNewRecordDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update AmNewApplication Detail\n * @param {AmNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewUpdateAmNewApplicationDetailPost: async (body?: AmNewApplicationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/UpdateAmNewApplicationDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {AmNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewUpdateAmNewIndividualDetailPost: async (body?: AmNewIndividualDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmNew/UpdateAmNewIndividualDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * AmNewApi - functional programming interface\n * @export\n */\nexport const AmNewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmNew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Category Detail\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Current Status\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmNew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewSaveAmNewPreferenceDetailDataPost(body?: AmNewPreferenceDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewSaveAmNewPreferenceDetailDataPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Category Detail\n * @param {AmNewRecordCategoryDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewSaveAmNewRecordCategoryDetailPost(body?: AmNewRecordCategoryDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewSaveAmNewRecordCategoryDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Current Status\n * @param {AmNewRecordCurrentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewSaveAmNewRecordCurrentStatusPost(body?: AmNewRecordCurrentStatusRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewSaveAmNewRecordCurrentStatusPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save AmNew Record Declaration\n * @param {AmNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewSaveAmNewRecordDeclarationPost(body?: AmNewRecordDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewSaveAmNewRecordDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update AmNewApplication Detail\n * @param {AmNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewUpdateAmNewApplicationDetailPost(body?: AmNewApplicationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewUpdateAmNewApplicationDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {AmNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmNewUpdateAmNewIndividualDetailPost(body?: AmNewIndividualDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmNewApiAxiosParamCreator(configuration).apiV1AmNewUpdateAmNewIndividualDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * AmNewApi - factory interface\n * @export\n */\nexport const AmNewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmNew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmNew Record Category Detail\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmNew Record Current Status\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmNew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewPreferenceDetailDataPost(body?: AmNewPreferenceDetailRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewSaveAmNewPreferenceDetailDataPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save AmNew Record Category Detail\n * @param {AmNewRecordCategoryDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordCategoryDetailPost(body?: AmNewRecordCategoryDetailRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewSaveAmNewRecordCategoryDetailPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save AmNew Record Current Status\n * @param {AmNewRecordCurrentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordCurrentStatusPost(body?: AmNewRecordCurrentStatusRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewSaveAmNewRecordCurrentStatusPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save AmNew Record Declaration\n * @param {AmNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSaveAmNewRecordDeclarationPost(body?: AmNewRecordDeclarationRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewSaveAmNewRecordDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update AmNewApplication Detail\n * @param {AmNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewUpdateAmNewApplicationDetailPost(body?: AmNewApplicationRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewUpdateAmNewApplicationDetailPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {AmNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmNewUpdateAmNewIndividualDetailPost(body?: AmNewIndividualDetailRequest, options?: any): AxiosPromise {\n return AmNewApiFp(configuration).apiV1AmNewUpdateAmNewIndividualDetailPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * AmNewApi - object-oriented interface\n * @export\n * @class AmNewApi\n * @extends {BaseAPI}\n */\nexport class AmNewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Cancelled AmNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewCancelAmNewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmNew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmNew Record Category Detail\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmNew Record Current Status\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmNew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewSaveAmNewPreferenceDetailDataPost(body?: AmNewPreferenceDetailRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewSaveAmNewPreferenceDetailDataPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save AmNew Record Category Detail\n * @param {AmNewRecordCategoryDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewSaveAmNewRecordCategoryDetailPost(body?: AmNewRecordCategoryDetailRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewSaveAmNewRecordCategoryDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save AmNew Record Current Status\n * @param {AmNewRecordCurrentStatusRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewSaveAmNewRecordCurrentStatusPost(body?: AmNewRecordCurrentStatusRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewSaveAmNewRecordCurrentStatusPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save AmNew Record Declaration\n * @param {AmNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewSaveAmNewRecordDeclarationPost(body?: AmNewRecordDeclarationRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewSaveAmNewRecordDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update AmNewApplication Detail\n * @param {AmNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewUpdateAmNewApplicationDetailPost(body?: AmNewApplicationRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewUpdateAmNewApplicationDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Individual Detail\n * @param {AmNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmNewApi\n */\n public apiV1AmNewUpdateAmNewIndividualDetailPost(body?: AmNewIndividualDetailRequest, options?: any) {\n return AmNewApiFp(this.configuration).apiV1AmNewUpdateAmNewIndividualDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AmRenewIndividualDetailResponse } from '../models';\nimport { AmRenewPersonalDetail } from '../models';\nimport { AmRenewPreferenceDetailRequest } from '../models';\nimport { AmRenewPreferenceDetailResponse } from '../models';\nimport { AmRenewRecordDeclarationRequest } from '../models';\nimport { AmRenewRecordDeclarationResponse } from '../models';\nimport { BooleanResponse } from '../models';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * AmRenewApi - axios parameter creator\n * @export\n */\nexport const AmRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewCancelAmRenewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewCancelAmRenewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmRenew/CancelAmRenewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmRenew/CheckAmRenewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmRenew/GetAmRenewPreferenceDetailData/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmRenew/GetAmRenewRecordDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/AmRenew/GetIndividualDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1AmRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/AmRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSaveAmRenewPreferenceDetailDataPost: async (body?: AmRenewPreferenceDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmRenew/SaveAmRenewPreferenceDetailData`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save AmRenew Record Declaration\n * @param {AmRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSaveAmRenewRecordDeclarationPost: async (body?: AmRenewRecordDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmRenew/SaveAmRenewRecordDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {AmRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewUpdatePersonalDetailPost: async (body?: AmRenewPersonalDetail, options: any = {}): Promise => {\n const localVarPath = `/api/v1/AmRenew/UpdatePersonalDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * AmRenewApi - functional programming interface\n * @export\n */\nexport const AmRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body?: AmRenewPreferenceDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save AmRenew Record Declaration\n * @param {AmRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewSaveAmRenewRecordDeclarationPost(body?: AmRenewRecordDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewSaveAmRenewRecordDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {AmRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1AmRenewUpdatePersonalDetailPost(body?: AmRenewPersonalDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await AmRenewApiAxiosParamCreator(configuration).apiV1AmRenewUpdatePersonalDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * AmRenewApi - factory interface\n * @export\n */\nexport const AmRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Cancelled AmRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body?: AmRenewPreferenceDetailRequest, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save AmRenew Record Declaration\n * @param {AmRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSaveAmRenewRecordDeclarationPost(body?: AmRenewRecordDeclarationRequest, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewSaveAmRenewRecordDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {AmRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1AmRenewUpdatePersonalDetailPost(body?: AmRenewPersonalDetail, options?: any): AxiosPromise {\n return AmRenewApiFp(configuration).apiV1AmRenewUpdatePersonalDetailPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * AmRenewApi - object-oriented interface\n * @export\n * @class AmRenewApi\n * @extends {BaseAPI}\n */\nexport class AmRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Cancelled AmRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Preference Details\n * @param {AmRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body?: AmRenewPreferenceDetailRequest, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save AmRenew Record Declaration\n * @param {AmRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewSaveAmRenewRecordDeclarationPost(body?: AmRenewRecordDeclarationRequest, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewSaveAmRenewRecordDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Personal Detail\n * @param {AmRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof AmRenewApi\n */\n public apiV1AmRenewUpdatePersonalDetailPost(body?: AmRenewPersonalDetail, options?: any) {\n return AmRenewApiFp(this.configuration).apiV1AmRenewUpdatePersonalDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { ApplicationIEnumerableResponse } from '../models';\nimport { ApplicationResponse } from '../models';\nimport { FileResponse } from '../models';\nimport { PractisingCertificateIEnumerableResponse } from '../models';\n/**\n * ApplicationApi - axios parameter creator\n * @export\n */\nexport const ApplicationApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Application By applicationId\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetApplicationByIdApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1ApplicationGetApplicationByIdApplicationIdGet.');\n }\n const localVarPath = `/api/v1/Application/GetApplicationById/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Applications\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetMyApplicationsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Application/GetMyApplications`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Practising Certificates\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetMyPractisingCertificateGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Application/GetMyPractisingCertificate`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} pcId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetPractisingCertificateFilePcIdGet: async (pcId: number, options: any = {}): Promise => {\n // verify required parameter 'pcId' is not null or undefined\n if (pcId === null || pcId === undefined) {\n throw new RequiredError('pcId','Required parameter pcId was null or undefined when calling apiV1ApplicationGetPractisingCertificateFilePcIdGet.');\n }\n const localVarPath = `/api/v1/Application/GetPractisingCertificateFile/{pcId}`\n .replace(`{${\"pcId\"}}`, encodeURIComponent(String(pcId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * ApplicationApi - functional programming interface\n * @export\n */\nexport const ApplicationApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Application By applicationId\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await ApplicationApiAxiosParamCreator(configuration).apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Applications\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1ApplicationGetMyApplicationsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await ApplicationApiAxiosParamCreator(configuration).apiV1ApplicationGetMyApplicationsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Practising Certificates\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1ApplicationGetMyPractisingCertificateGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await ApplicationApiAxiosParamCreator(configuration).apiV1ApplicationGetMyPractisingCertificateGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} pcId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await ApplicationApiAxiosParamCreator(configuration).apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * ApplicationApi - factory interface\n * @export\n */\nexport const ApplicationApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Application By applicationId\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return ApplicationApiFp(configuration).apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Applications\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetMyApplicationsGet(options?: any): AxiosPromise {\n return ApplicationApiFp(configuration).apiV1ApplicationGetMyApplicationsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Practising Certificates\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetMyPractisingCertificateGet(options?: any): AxiosPromise {\n return ApplicationApiFp(configuration).apiV1ApplicationGetMyPractisingCertificateGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} pcId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId: number, options?: any): AxiosPromise {\n return ApplicationApiFp(configuration).apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * ApplicationApi - object-oriented interface\n * @export\n * @class ApplicationApi\n * @extends {BaseAPI}\n */\nexport class ApplicationApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Application By applicationId\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof ApplicationApi\n */\n public apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId: number, options?: any) {\n return ApplicationApiFp(this.configuration).apiV1ApplicationGetApplicationByIdApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Applications\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof ApplicationApi\n */\n public apiV1ApplicationGetMyApplicationsGet(options?: any) {\n return ApplicationApiFp(this.configuration).apiV1ApplicationGetMyApplicationsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Practising Certificates\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof ApplicationApi\n */\n public apiV1ApplicationGetMyPractisingCertificateGet(options?: any) {\n return ApplicationApiFp(this.configuration).apiV1ApplicationGetMyPractisingCertificateGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns file\n * @param {number} pcId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof ApplicationApi\n */\n public apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId: number, options?: any) {\n return ApplicationApiFp(this.configuration).apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AddressTypeIEnumerableResponse } from '../models';\nimport { AdmissionPlaceIEnumerableResponse } from '../models';\nimport { AmNewCategoryIEnumerableResponse } from '../models';\nimport { AmNewFileTypeIEnumerableResponse } from '../models';\nimport { AmRenewFileTypeIEnumerableResponse } from '../models';\nimport { ApplicationStatusIEnumerableResponse } from '../models';\nimport { ApplicationTypeIEnumerableResponse } from '../models';\nimport { AreaOfInterestIEnumerableResponse } from '../models';\nimport { AreaOfLawIEnumerableResponse } from '../models';\nimport { AustralianJurisdictionIEnumerableResponse } from '../models';\nimport { BuildingTypeIEnumerableResponse } from '../models';\nimport { ContentTypeIEnumerableResponse } from '../models';\nimport { CountryIEnumerableResponse } from '../models';\nimport { CurrentStatusIEnumerableResponse } from '../models';\nimport { DeliveryTypeIEnumerableResponse } from '../models';\nimport { DxExchangeIEnumerableResponse } from '../models';\nimport { EmailPreferenceIEnumerableResponse } from '../models';\nimport { EmploymentStatusIEnumerableResponse } from '../models';\nimport { FirmNameSearchIEnumerableResponse } from '../models';\nimport { FirmTypeIEnumerableResponse } from '../models';\nimport { GenderIEnumerableResponse } from '../models';\nimport { NonRenewalReasonIEnumerableResponse } from '../models';\nimport { PcRenewAddressTypeIEnumerableResponse } from '../models';\nimport { PcRenewCpdAnswerTypeIEnumerableResponse } from '../models';\nimport { PcRenewFileTypeIEnumerableResponse } from '../models';\nimport { QualificationInstitutionIEnumerableResponse } from '../models';\nimport { RecordTypeIEnumerableResponse } from '../models';\nimport { Request } from '../models';\nimport { SarFileTypeIEnumerableResponse } from '../models';\nimport { StreetTypeIEnumerableResponse } from '../models';\nimport { StudentNewFileTypeIEnumerableResponse } from '../models';\nimport { StudentRenewFileTypeIEnumerableResponse } from '../models';\nimport { SuburbStatePostcodeIEnumerableResponse } from '../models';\nimport { TitleIEnumerableResponse } from '../models';\nimport { TransactionStatusIEnumerableResponse } from '../models';\n/**\n * CodeApi - axios parameter creator\n * @export\n */\nexport const CodeApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary READER | Returns Address Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAddressTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAddressTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Admission Places\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAdmissionPlacesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAdmissionPlaces`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns AmNew Categories\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmNewCategoriesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAmNewCategories`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Am New File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmNewFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAmNewFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Am Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmRenewFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAmRenewFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Application Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetApplicationStatusesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetApplicationStatuses`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Application Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetApplicationTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetApplicationTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Area Of Interests\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAreaOfInterestsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAreaOfInterests`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAreaOfLawsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAreaOfLaws`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Australian Jurisdictions\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAustralianJurisdictionsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetAustralianJurisdictions`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Building Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetBuildingTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetBuildingTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Content Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetContentTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetContentTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Countries\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetCountriesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetCountries`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Current Status\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetCurrentStatusesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetCurrentStatuses`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Reader | Returns Delivery Types (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetDeliveryTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetDeliveryTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Reader | Returns DX Exchange list (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetDxExchangeListGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetDxExchangeList`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Email Preferences\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmailPreferencesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetEmailPreferences`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet: async (firmId: number, options: any = {}): Promise => {\n // verify required parameter 'firmId' is not null or undefined\n if (firmId === null || firmId === undefined) {\n throw new RequiredError('firmId','Required parameter firmId was null or undefined when calling apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet.');\n }\n const localVarPath = `/api/v1/Code/GetEmploymentStatusByFirmId/{firmId}`\n .replace(`{${\"firmId\"}}`, encodeURIComponent(String(firmId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmTypeId\n * @param {number} firmTypeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet: async (firmTypeId: number, options: any = {}): Promise => {\n // verify required parameter 'firmTypeId' is not null or undefined\n if (firmTypeId === null || firmTypeId === undefined) {\n throw new RequiredError('firmTypeId','Required parameter firmTypeId was null or undefined when calling apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet.');\n }\n const localVarPath = `/api/v1/Code/GetEmploymentStatusByFirmTypeId/{firmTypeId}`\n .replace(`{${\"firmTypeId\"}}`, encodeURIComponent(String(firmTypeId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Firm Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetFirmTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetFirmTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Genders\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetGendersGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetGenders`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns GetNotRenewalReason\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetNonRenewalReasonGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetNonRenewalReason`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns PcRenewAddressType for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewAddressTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetPcRenewAddressTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns CpdAnswerTypes for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewCpdAnswerTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetPcRenewCpdAnswerTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Pc Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetPcRenewFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Qualification Institutions\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetQualificationInstitutionsByKeywordSearchPost: async (body?: Request, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetQualificationInstitutionsByKeywordSearch`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Record Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetRecordTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetRecordTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Spec Acc File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSpecAccFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetSpecAccFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns SpecAcc Non Renewal Reasons\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSpecAccNonRenewalReasonsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetSpecAccNonRenewalReasons`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Street Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStreetTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetStreetTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns StudentNew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStudentNewFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetStudentNewFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns StudentRenew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStudentRenewFileTypesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetStudentRenewFileTypes`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Suburbs, States, and Postcode\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSuburbStatePostcodePost: async (body?: Request, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetSuburbStatePostcode`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetTitlesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetTitles`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Transactions Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetTransactionStatusesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/GetTransactionStatuses`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeSearchFirmsPost: async (body?: Request, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Code/SearchFirms`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * CodeApi - functional programming interface\n * @export\n */\nexport const CodeApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary READER | Returns Address Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAddressTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAddressTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Admission Places\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAdmissionPlacesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAdmissionPlacesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns AmNew Categories\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAmNewCategoriesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAmNewCategoriesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Am New File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAmNewFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAmNewFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Am Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAmRenewFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAmRenewFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Application Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetApplicationStatusesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetApplicationStatusesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Application Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetApplicationTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetApplicationTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Area Of Interests\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAreaOfInterestsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAreaOfInterestsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAreaOfLawsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAreaOfLawsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Australian Jurisdictions\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetAustralianJurisdictionsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetAustralianJurisdictionsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Building Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetBuildingTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetBuildingTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Content Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetContentTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetContentTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Countries\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetCountriesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetCountriesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Current Status\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetCurrentStatusesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetCurrentStatusesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Reader | Returns Delivery Types (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetDeliveryTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetDeliveryTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Reader | Returns DX Exchange list (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetDxExchangeListGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetDxExchangeListGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Email Preferences\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetEmailPreferencesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetEmailPreferencesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmTypeId\n * @param {number} firmTypeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Firm Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetFirmTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetFirmTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Genders\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetGendersGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetGendersGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns GetNotRenewalReason\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetNonRenewalReasonGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetNonRenewalReasonGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns PcRenewAddressType for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetPcRenewAddressTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetPcRenewAddressTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns CpdAnswerTypes for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetPcRenewCpdAnswerTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetPcRenewCpdAnswerTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Pc Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetPcRenewFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetPcRenewFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Qualification Institutions\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body?: Request, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Record Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetRecordTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetRecordTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Spec Acc File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetSpecAccFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetSpecAccFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns SpecAcc Non Renewal Reasons\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetSpecAccNonRenewalReasonsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetSpecAccNonRenewalReasonsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Street Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetStreetTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetStreetTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns StudentNew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetStudentNewFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetStudentNewFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns StudentRenew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetStudentRenewFileTypesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetStudentRenewFileTypesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Suburbs, States, and Postcode\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetSuburbStatePostcodePost(body?: Request, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetSuburbStatePostcodePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetTitlesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetTitlesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Transactions Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeGetTransactionStatusesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeGetTransactionStatusesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1CodeSearchFirmsPost(body?: Request, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await CodeApiAxiosParamCreator(configuration).apiV1CodeSearchFirmsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * CodeApi - factory interface\n * @export\n */\nexport const CodeApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary READER | Returns Address Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAddressTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAddressTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Admission Places\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAdmissionPlacesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAdmissionPlacesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns AmNew Categories\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmNewCategoriesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAmNewCategoriesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Am New File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmNewFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAmNewFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Am Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAmRenewFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAmRenewFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Application Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetApplicationStatusesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetApplicationStatusesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Application Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetApplicationTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetApplicationTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Area Of Interests\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAreaOfInterestsGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAreaOfInterestsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAreaOfLawsGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAreaOfLawsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Australian Jurisdictions\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetAustralianJurisdictionsGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetAustralianJurisdictionsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Building Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetBuildingTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetBuildingTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Content Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetContentTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetContentTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Countries\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetCountriesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetCountriesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Current Status\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetCurrentStatusesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetCurrentStatusesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Reader | Returns Delivery Types (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetDeliveryTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetDeliveryTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Reader | Returns DX Exchange list (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetDxExchangeListGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetDxExchangeListGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Email Preferences\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmailPreferencesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetEmailPreferencesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId: number, options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Employment Status By FirmTypeId\n * @param {number} firmTypeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId: number, options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Firm Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetFirmTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetFirmTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Genders\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetGendersGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetGendersGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns GetNotRenewalReason\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetNonRenewalReasonGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetNonRenewalReasonGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns PcRenewAddressType for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewAddressTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetPcRenewAddressTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns CpdAnswerTypes for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewCpdAnswerTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetPcRenewCpdAnswerTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Pc Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetPcRenewFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetPcRenewFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Qualification Institutions\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body?: Request, options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Record Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetRecordTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetRecordTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Spec Acc File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSpecAccFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetSpecAccFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns SpecAcc Non Renewal Reasons\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSpecAccNonRenewalReasonsGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetSpecAccNonRenewalReasonsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Street Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStreetTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetStreetTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns StudentNew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStudentNewFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetStudentNewFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns StudentRenew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetStudentRenewFileTypesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetStudentRenewFileTypesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Suburbs, States, and Postcode\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetSuburbStatePostcodePost(body?: Request, options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetSuburbStatePostcodePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetTitlesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetTitlesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Transactions Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeGetTransactionStatusesGet(options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeGetTransactionStatusesGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1CodeSearchFirmsPost(body?: Request, options?: any): AxiosPromise {\n return CodeApiFp(configuration).apiV1CodeSearchFirmsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * CodeApi - object-oriented interface\n * @export\n * @class CodeApi\n * @extends {BaseAPI}\n */\nexport class CodeApi extends BaseAPI {\n /**\n * \n * @summary READER | Returns Address Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAddressTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAddressTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Admission Places\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAdmissionPlacesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAdmissionPlacesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns AmNew Categories\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAmNewCategoriesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAmNewCategoriesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Am New File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAmNewFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAmNewFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Am Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAmRenewFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAmRenewFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Application Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetApplicationStatusesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetApplicationStatusesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Application Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetApplicationTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetApplicationTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Area Of Interests\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAreaOfInterestsGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAreaOfInterestsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAreaOfLawsGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAreaOfLawsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Australian Jurisdictions\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetAustralianJurisdictionsGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetAustralianJurisdictionsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Building Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetBuildingTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetBuildingTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Content Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetContentTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetContentTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Countries\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetCountriesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetCountriesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Current Status\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetCurrentStatusesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetCurrentStatusesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Reader | Returns Delivery Types (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetDeliveryTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetDeliveryTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Reader | Returns DX Exchange list (via LS API)\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetDxExchangeListGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetDxExchangeListGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Email Preferences\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetEmailPreferencesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetEmailPreferencesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Employment Status By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId: number, options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(firmId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Employment Status By FirmTypeId\n * @param {number} firmTypeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId: number, options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(firmTypeId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Firm Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetFirmTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetFirmTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Genders\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetGendersGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetGendersGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns GetNotRenewalReason\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetNonRenewalReasonGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetNonRenewalReasonGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns PcRenewAddressType for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetPcRenewAddressTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetPcRenewAddressTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns CpdAnswerTypes for PcRenew\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetPcRenewCpdAnswerTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetPcRenewCpdAnswerTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Pc Renew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetPcRenewFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetPcRenewFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Qualification Institutions\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body?: Request, options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Record Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetRecordTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetRecordTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Spec Acc File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetSpecAccFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetSpecAccFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns SpecAcc Non Renewal Reasons\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetSpecAccNonRenewalReasonsGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetSpecAccNonRenewalReasonsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Street Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetStreetTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetStreetTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns StudentNew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetStudentNewFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetStudentNewFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns StudentRenew File Types\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetStudentRenewFileTypesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetStudentRenewFileTypesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Suburbs, States, and Postcode\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetSuburbStatePostcodePost(body?: Request, options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetSuburbStatePostcodePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Titles\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetTitlesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetTitlesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Transactions Statuses\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeGetTransactionStatusesGet(options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeGetTransactionStatusesGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof CodeApi\n */\n public apiV1CodeSearchFirmsPost(body?: Request, options?: any) {\n return CodeApiFp(this.configuration).apiV1CodeSearchFirmsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AmNewFileRequest } from '../models';\nimport { AmRenewFileRequest } from '../models';\nimport { BooleanResponse } from '../models';\nimport { FileResponse } from '../models';\nimport { Int32Response } from '../models';\nimport { PcRenewFileRequest } from '../models';\nimport { RecordLinkedApplicationFileRequest } from '../models';\nimport { SarFileRequest } from '../models';\nimport { StudentNewFileRequest } from '../models';\nimport { StudentRenewFileRequest } from '../models';\n/**\n * FileApi - axios parameter creator\n * @export\n */\nexport const FileApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Delete File\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileDeleteFileFileIdDelete: async (fileId: number, options: any = {}): Promise => {\n // verify required parameter 'fileId' is not null or undefined\n if (fileId === null || fileId === undefined) {\n throw new RequiredError('fileId','Required parameter fileId was null or undefined when calling apiV1FileDeleteFileFileIdDelete.');\n }\n const localVarPath = `/api/v1/File/DeleteFile/{fileId}`\n .replace(`{${\"fileId\"}}`, encodeURIComponent(String(fileId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileDownloadStreamFileIdGet: async (fileId: number, options: any = {}): Promise => {\n // verify required parameter 'fileId' is not null or undefined\n if (fileId === null || fileId === undefined) {\n throw new RequiredError('fileId','Required parameter fileId was null or undefined when calling apiV1FileDownloadStreamFileIdGet.');\n }\n const localVarPath = `/api/v1/File/Download-stream/{fileId}`\n .replace(`{${\"fileId\"}}`, encodeURIComponent(String(fileId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileGetFileFileIdGet: async (fileId: number, options: any = {}): Promise => {\n // verify required parameter 'fileId' is not null or undefined\n if (fileId === null || fileId === undefined) {\n throw new RequiredError('fileId','Required parameter fileId was null or undefined when calling apiV1FileGetFileFileIdGet.');\n }\n const localVarPath = `/api/v1/File/GetFile/{fileId}`\n .replace(`{${\"fileId\"}}`, encodeURIComponent(String(fileId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmNew FileId\n * @param {AmNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveAmNewFilePost: async (body?: AmNewFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SaveAmNewFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns AmRenew FileId\n * @param {AmRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveAmRenewFilePost: async (body?: AmRenewFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SaveAmRenewFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns PcRenew FileId\n * @param {PcRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSavePcRenewFilePost: async (body?: PcRenewFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SavePcRenewFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Linked Application File\n * @param {RecordLinkedApplicationFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSavePcRenewLinkedApplicationFilePost: async (body?: RecordLinkedApplicationFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SavePcRenewLinkedApplicationFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc FileId\n * @param {SarFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveSpecAccFilePost: async (body?: SarFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SaveSpecAccFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns StudentNew FileId\n * @param {StudentNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveStudentNewFilePost: async (body?: StudentNewFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SaveStudentNewFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew FileId\n * @param {StudentRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveStudentRenewFilePost: async (body?: StudentRenewFileRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/File/SaveStudentRenewFile`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * FileApi - functional programming interface\n * @export\n */\nexport const FileApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Delete File\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileDeleteFileFileIdDelete(fileId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileDeleteFileFileIdDelete(fileId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileDownloadStreamFileIdGet(fileId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileDownloadStreamFileIdGet(fileId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileGetFileFileIdGet(fileId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileGetFileFileIdGet(fileId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmNew FileId\n * @param {AmNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSaveAmNewFilePost(body?: AmNewFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSaveAmNewFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns AmRenew FileId\n * @param {AmRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSaveAmRenewFilePost(body?: AmRenewFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSaveAmRenewFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns PcRenew FileId\n * @param {PcRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSavePcRenewFilePost(body?: PcRenewFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSavePcRenewFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Linked Application File\n * @param {RecordLinkedApplicationFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSavePcRenewLinkedApplicationFilePost(body?: RecordLinkedApplicationFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSavePcRenewLinkedApplicationFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc FileId\n * @param {SarFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSaveSpecAccFilePost(body?: SarFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSaveSpecAccFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns StudentNew FileId\n * @param {StudentNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSaveStudentNewFilePost(body?: StudentNewFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSaveStudentNewFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew FileId\n * @param {StudentRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1FileSaveStudentRenewFilePost(body?: StudentRenewFileRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await FileApiAxiosParamCreator(configuration).apiV1FileSaveStudentRenewFilePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * FileApi - factory interface\n * @export\n */\nexport const FileApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Delete File\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileDeleteFileFileIdDelete(fileId: number, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileDeleteFileFileIdDelete(fileId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileDownloadStreamFileIdGet(fileId: number, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileDownloadStreamFileIdGet(fileId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns file\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileGetFileFileIdGet(fileId: number, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileGetFileFileIdGet(fileId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmNew FileId\n * @param {AmNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveAmNewFilePost(body?: AmNewFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSaveAmNewFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns AmRenew FileId\n * @param {AmRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveAmRenewFilePost(body?: AmRenewFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSaveAmRenewFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns PcRenew FileId\n * @param {PcRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSavePcRenewFilePost(body?: PcRenewFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSavePcRenewFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Linked Application File\n * @param {RecordLinkedApplicationFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSavePcRenewLinkedApplicationFilePost(body?: RecordLinkedApplicationFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSavePcRenewLinkedApplicationFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Spec Acc FileId\n * @param {SarFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveSpecAccFilePost(body?: SarFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSaveSpecAccFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns StudentNew FileId\n * @param {StudentNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveStudentNewFilePost(body?: StudentNewFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSaveStudentNewFilePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns StudentRenew FileId\n * @param {StudentRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1FileSaveStudentRenewFilePost(body?: StudentRenewFileRequest, options?: any): AxiosPromise {\n return FileApiFp(configuration).apiV1FileSaveStudentRenewFilePost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * FileApi - object-oriented interface\n * @export\n * @class FileApi\n * @extends {BaseAPI}\n */\nexport class FileApi extends BaseAPI {\n /**\n * \n * @summary External | Delete File\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileDeleteFileFileIdDelete(fileId: number, options?: any) {\n return FileApiFp(this.configuration).apiV1FileDeleteFileFileIdDelete(fileId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileDownloadStreamFileIdGet(fileId: number, options?: any) {\n return FileApiFp(this.configuration).apiV1FileDownloadStreamFileIdGet(fileId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns file\n * @param {number} fileId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileGetFileFileIdGet(fileId: number, options?: any) {\n return FileApiFp(this.configuration).apiV1FileGetFileFileIdGet(fileId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmNew FileId\n * @param {AmNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSaveAmNewFilePost(body?: AmNewFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSaveAmNewFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns AmRenew FileId\n * @param {AmRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSaveAmRenewFilePost(body?: AmRenewFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSaveAmRenewFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns PcRenew FileId\n * @param {PcRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSavePcRenewFilePost(body?: PcRenewFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSavePcRenewFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Linked Application File\n * @param {RecordLinkedApplicationFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSavePcRenewLinkedApplicationFilePost(body?: RecordLinkedApplicationFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSavePcRenewLinkedApplicationFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Spec Acc FileId\n * @param {SarFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSaveSpecAccFilePost(body?: SarFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSaveSpecAccFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns StudentNew FileId\n * @param {StudentNewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSaveStudentNewFilePost(body?: StudentNewFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSaveStudentNewFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns StudentRenew FileId\n * @param {StudentRenewFileRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof FileApi\n */\n public apiV1FileSaveStudentRenewFilePost(body?: StudentRenewFileRequest, options?: any) {\n return FileApiFp(this.configuration).apiV1FileSaveStudentRenewFilePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { IndividualMembershipDetailsResponse } from '../models';\nimport { IndividualPracticeCertificateResponse } from '../models';\n/**\n * IndividualApi - axios parameter creator\n * @export\n */\nexport const IndividualApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Membership Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1IndividualGetIndividualMembershipDetailsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Individual/GetIndividualMembershipDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Practising Certificate Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1IndividualGetPractisingCertificateDetailsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Individual/GetPractisingCertificateDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * IndividualApi - functional programming interface\n * @export\n */\nexport const IndividualApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Membership Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1IndividualGetIndividualMembershipDetailsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await IndividualApiAxiosParamCreator(configuration).apiV1IndividualGetIndividualMembershipDetailsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Practising Certificate Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1IndividualGetPractisingCertificateDetailsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await IndividualApiAxiosParamCreator(configuration).apiV1IndividualGetPractisingCertificateDetailsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * IndividualApi - factory interface\n * @export\n */\nexport const IndividualApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Membership Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1IndividualGetIndividualMembershipDetailsGet(options?: any): AxiosPromise {\n return IndividualApiFp(configuration).apiV1IndividualGetIndividualMembershipDetailsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Practising Certificate Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1IndividualGetPractisingCertificateDetailsGet(options?: any): AxiosPromise {\n return IndividualApiFp(configuration).apiV1IndividualGetPractisingCertificateDetailsGet(options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * IndividualApi - object-oriented interface\n * @export\n * @class IndividualApi\n * @extends {BaseAPI}\n */\nexport class IndividualApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Membership Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IndividualApi\n */\n public apiV1IndividualGetIndividualMembershipDetailsGet(options?: any) {\n return IndividualApiFp(this.configuration).apiV1IndividualGetIndividualMembershipDetailsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Practising Certificate Details\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IndividualApi\n */\n public apiV1IndividualGetPractisingCertificateDetailsGet(options?: any) {\n return IndividualApiFp(this.configuration).apiV1IndividualGetPractisingCertificateDetailsGet(options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { PageContentIEnumerableResponse } from '../models';\nimport { PageIEnumerableResponse } from '../models';\n/**\n * PageApi - axios parameter creator\n * @export\n */\nexport const PageApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary READER | Returns All Page Contents\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetAllPageContentsGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Page/GetAllPageContents`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetPageContentsPageIdGet: async (pageId: number, options: any = {}): Promise => {\n // verify required parameter 'pageId' is not null or undefined\n if (pageId === null || pageId === undefined) {\n throw new RequiredError('pageId','Required parameter pageId was null or undefined when calling apiV1PageGetPageContentsPageIdGet.');\n }\n const localVarPath = `/api/v1/Page/GetPageContents/{pageId}`\n .replace(`{${\"pageId\"}}`, encodeURIComponent(String(pageId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary READER | Returns Pages\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetPagesGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/Page/GetPages`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * PageApi - functional programming interface\n * @export\n */\nexport const PageApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary READER | Returns All Page Contents\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PageGetAllPageContentsGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PageApiAxiosParamCreator(configuration).apiV1PageGetAllPageContentsGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PageGetPageContentsPageIdGet(pageId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PageApiAxiosParamCreator(configuration).apiV1PageGetPageContentsPageIdGet(pageId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary READER | Returns Pages\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PageGetPagesGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PageApiAxiosParamCreator(configuration).apiV1PageGetPagesGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * PageApi - factory interface\n * @export\n */\nexport const PageApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary READER | Returns All Page Contents\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetAllPageContentsGet(options?: any): AxiosPromise {\n return PageApiFp(configuration).apiV1PageGetAllPageContentsGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetPageContentsPageIdGet(pageId: number, options?: any): AxiosPromise {\n return PageApiFp(configuration).apiV1PageGetPageContentsPageIdGet(pageId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary READER | Returns Pages\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PageGetPagesGet(options?: any): AxiosPromise {\n return PageApiFp(configuration).apiV1PageGetPagesGet(options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * PageApi - object-oriented interface\n * @export\n * @class PageApi\n * @extends {BaseAPI}\n */\nexport class PageApi extends BaseAPI {\n /**\n * \n * @summary READER | Returns All Page Contents\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PageApi\n */\n public apiV1PageGetAllPageContentsGet(options?: any) {\n return PageApiFp(this.configuration).apiV1PageGetAllPageContentsGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Page Contents by pageId\n * @param {number} pageId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PageApi\n */\n public apiV1PageGetPageContentsPageIdGet(pageId: number, options?: any) {\n return PageApiFp(this.configuration).apiV1PageGetPageContentsPageIdGet(pageId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary READER | Returns Pages\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PageApi\n */\n public apiV1PageGetPagesGet(options?: any) {\n return PageApiFp(this.configuration).apiV1PageGetPagesGet(options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { TransactionRequest } from '../models';\nimport { TransactionStatusResponse } from '../models';\n/**\n * PaymentApi - axios parameter creator\n * @export\n */\nexport const PaymentApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary Payment API | Update a transaction status (Callback from the Payment API)\n * @param {TransactionRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PaymentCallbackTransactionPost: async (body?: TransactionRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Payment/CallbackTransaction`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Transaction Status\n * @param {string} transactionKey \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PaymentCheckPaymentStatusTransactionKeyPost: async (transactionKey: string, options: any = {}): Promise => {\n // verify required parameter 'transactionKey' is not null or undefined\n if (transactionKey === null || transactionKey === undefined) {\n throw new RequiredError('transactionKey','Required parameter transactionKey was null or undefined when calling apiV1PaymentCheckPaymentStatusTransactionKeyPost.');\n }\n const localVarPath = `/api/v1/Payment/CheckPaymentStatus/{transactionKey}`\n .replace(`{${\"transactionKey\"}}`, encodeURIComponent(String(transactionKey)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * PaymentApi - functional programming interface\n * @export\n */\nexport const PaymentApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary Payment API | Update a transaction status (Callback from the Payment API)\n * @param {TransactionRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PaymentCallbackTransactionPost(body?: TransactionRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PaymentApiAxiosParamCreator(configuration).apiV1PaymentCallbackTransactionPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Transaction Status\n * @param {string} transactionKey \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PaymentApiAxiosParamCreator(configuration).apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * PaymentApi - factory interface\n * @export\n */\nexport const PaymentApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary Payment API | Update a transaction status (Callback from the Payment API)\n * @param {TransactionRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PaymentCallbackTransactionPost(body?: TransactionRequest, options?: any): AxiosPromise {\n return PaymentApiFp(configuration).apiV1PaymentCallbackTransactionPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Transaction Status\n * @param {string} transactionKey \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey: string, options?: any): AxiosPromise {\n return PaymentApiFp(configuration).apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * PaymentApi - object-oriented interface\n * @export\n * @class PaymentApi\n * @extends {BaseAPI}\n */\nexport class PaymentApi extends BaseAPI {\n /**\n * \n * @summary Payment API | Update a transaction status (Callback from the Payment API)\n * @param {TransactionRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PaymentApi\n */\n public apiV1PaymentCallbackTransactionPost(body?: TransactionRequest, options?: any) {\n return PaymentApiFp(this.configuration).apiV1PaymentCallbackTransactionPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Transaction Status\n * @param {string} transactionKey \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PaymentApi\n */\n public apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey: string, options?: any) {\n return PaymentApiFp(this.configuration).apiV1PaymentCheckPaymentStatusTransactionKeyPost(transactionKey, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AddressDetail } from '../models';\nimport { BooleanResponse } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { PcRenewIndividualDetailResponse } from '../models';\nimport { PcRenewPaymentDetailsRequest } from '../models';\nimport { RecordNonRenewalDeclarationRequest } from '../models';\nimport { RecordNonRenewalDeclarationResponse } from '../models';\nimport { RecordNonRenewalDetailRequest } from '../models';\nimport { RecordNonRenewalDetailResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * PcNonRenewApi - axios parameter creator\n * @export\n */\nexport const PcNonRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Ping PcRenewApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/CancelPcRenewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/CheckPcRenewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/GetIndividualDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/GetPcRenewNonRenewalDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns NonRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcNonRenew/GetPcRenewRecordNonRenewalDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSavePaymentDetailsPost: async (body?: PcRenewPaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcNonRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost: async (pcRenewApplicationId: number, body?: AddressDetail, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost.');\n }\n const localVarPath = `/api/v1/PcNonRenew/SavePostalAddress/{pcRenewApplicationId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save NonRenew Record Declaration\n * @param {RecordNonRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost: async (body?: RecordNonRenewalDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcNonRenew/SaveRecordNonRenewalDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Pc Details\n * @param {RecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSaveRecordNonRenewalDetailsPost: async (body?: RecordNonRenewalDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcNonRenew/SaveRecordNonRenewalDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * PcNonRenewApi - functional programming interface\n * @export\n */\nexport const PcNonRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Ping PcRenewApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns NonRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save NonRenew Record Declaration\n * @param {RecordNonRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body?: RecordNonRenewalDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Pc Details\n * @param {RecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body?: RecordNonRenewalDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcNonRenewApiAxiosParamCreator(configuration).apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * PcNonRenewApi - factory interface\n * @export\n */\nexport const PcNonRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Ping PcRenewApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns NonRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save NonRenew Record Declaration\n * @param {RecordNonRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body?: RecordNonRenewalDeclarationRequest, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Pc Details\n * @param {RecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body?: RecordNonRenewalDetailRequest, options?: any): AxiosPromise {\n return PcNonRenewApiFp(configuration).apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * PcNonRenewApi - object-oriented interface\n * @export\n * @class PcNonRenewApi\n * @extends {BaseAPI}\n */\nexport class PcNonRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Ping PcRenewApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns NonRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save NonRenew Record Declaration\n * @param {RecordNonRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body?: RecordNonRenewalDeclarationRequest, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Pc Details\n * @param {RecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcNonRenewApi\n */\n public apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body?: RecordNonRenewalDetailRequest, options?: any) {\n return PcNonRenewApiFp(this.configuration).apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { AddressDetail } from '../models';\nimport { BooleanResponse } from '../models';\nimport { FirmsIEnumerableResponse } from '../models';\nimport { PcRenewAddressDetailsRequest } from '../models';\nimport { PcRenewAddressDetailsResponse } from '../models';\nimport { PcRenewApplicationResponse } from '../models';\nimport { PcRenewIndividualDetailResponse } from '../models';\nimport { PcRenewPaymentDetailsRequest } from '../models';\nimport { PcRenewPaymentDetailsResponse } from '../models';\nimport { PcRenewPersonalDetail } from '../models';\nimport { PracticeDetailsIEnumerableResponse } from '../models';\nimport { PreferenceDetailRequest } from '../models';\nimport { PreferenceDetailResponse } from '../models';\nimport { RecordAdditionalDetailsRequest } from '../models';\nimport { RecordAdditionalDetailsResponse } from '../models';\nimport { RecordDeclarationRequest } from '../models';\nimport { RecordDeclarationResponse } from '../models';\nimport { RecordPracticeAdditionalDetails } from '../models';\nimport { RecordPracticeRequest } from '../models';\nimport { RecordPracticeResponse } from '../models';\nimport { RecordRenewalDetailRequest } from '../models';\nimport { RecordRenewalDetailResponse } from '../models';\nimport { Request } from '../models';\nimport { SarRecordLinkedApplicationDeclarationRequest } from '../models';\nimport { SarRecordLinkedApplicationDeclarationResponse } from '../models';\nimport { SarRecordLinkedApplicationRequest } from '../models';\nimport { SarRecordLinkedApplicationResponse } from '../models';\nimport { StatutoryRegisterDetailsRequest } from '../models';\nimport { StatutoryRegisterDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * PcRenewApi - axios parameter creator\n * @export\n */\nexport const PcRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled PcRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewCancelPcRenewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewCancelPcRenewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/CancelPcRenewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/CheckPcRenewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Delete New Practice Details\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete: async (pcRenewApplicationId: number, recordPracticeId: number, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete.');\n }\n // verify required parameter 'recordPracticeId' is not null or undefined\n if (recordPracticeId === null || recordPracticeId === undefined) {\n throw new RequiredError('recordPracticeId','Required parameter recordPracticeId was null or undefined when calling apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete.');\n }\n const localVarPath = `/api/v1/PcRenew/DeleteNewPracticeDetails/{pcRenewApplicationId}/{recordPracticeId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)))\n .replace(`{${\"recordPracticeId\"}}`, encodeURIComponent(String(recordPracticeId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Additional Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetAdditionalDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetAdditionalDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetAdditionalDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Address Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetAddressDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetAddressDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetAddressDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Application Information\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetApplicationInfoApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetApplicationInfoApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetApplicationInfo/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetIndividualDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get PcRenewalDetails\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPcRenewalDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetPcRenewalDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetPcRenewalDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Practice By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPracticeByFirmIdFirmIdGet: async (firmId: number, options: any = {}): Promise => {\n // verify required parameter 'firmId' is not null or undefined\n if (firmId === null || firmId === undefined) {\n throw new RequiredError('firmId','Required parameter firmId was null or undefined when calling apiV1PcRenewGetPracticeByFirmIdFirmIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetPracticeByFirmId/{firmId}`\n .replace(`{${\"firmId\"}}`, encodeURIComponent(String(firmId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Practice Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPracticeDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetPracticeDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetPracticeDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPreferenceDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetPreferenceDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetPreferenceDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetRecordDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetRecordDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetRecordDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} recordLinkedApplicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet: async (recordLinkedApplicationId: number, options: any = {}): Promise => {\n // verify required parameter 'recordLinkedApplicationId' is not null or undefined\n if (recordLinkedApplicationId === null || recordLinkedApplicationId === undefined) {\n throw new RequiredError('recordLinkedApplicationId','Required parameter recordLinkedApplicationId was null or undefined when calling apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetSarApplicationDeclaration/{recordLinkedApplicationId}`\n .replace(`{${\"recordLinkedApplicationId\"}}`, encodeURIComponent(String(recordLinkedApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Record Linked Application\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetSarRecordLinkedApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Statutory Register Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/PcRenew/GetStatutoryRegisterDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Revert Record Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut: async (pcRenewApplicationId: number, addressDetailId: number, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut.');\n }\n // verify required parameter 'addressDetailId' is not null or undefined\n if (addressDetailId === null || addressDetailId === undefined) {\n throw new RequiredError('addressDetailId','Required parameter addressDetailId was null or undefined when calling apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut.');\n }\n const localVarPath = `/api/v1/PcRenew/RevertRecordAddress/{pcRenewApplicationId}/{addressDetailId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)))\n .replace(`{${\"addressDetailId\"}}`, encodeURIComponent(String(addressDetailId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Revert Statutory Register Other Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut: async (pcRenewApplicationId: number, addressDetailId: number, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut.');\n }\n // verify required parameter 'addressDetailId' is not null or undefined\n if (addressDetailId === null || addressDetailId === undefined) {\n throw new RequiredError('addressDetailId','Required parameter addressDetailId was null or undefined when calling apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut.');\n }\n const localVarPath = `/api/v1/PcRenew/RevertStatutoryRegisterOtherAddress/{pcRenewApplicationId}/{addressDetailId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)))\n .replace(`{${\"addressDetailId\"}}`, encodeURIComponent(String(addressDetailId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Additional Details\n * @param {RecordAdditionalDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveAdditionalDetailsPost: async (body?: RecordAdditionalDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveAdditionalDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Address Details\n * @param {PcRenewAddressDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveAddressDetailsPost: async (body?: PcRenewAddressDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveAddressDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost: async (body?: PcRenewPaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePaymentDetailsForPracticeEmployer`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsPost: async (body?: PcRenewPaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details With Zero Fee\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsWithZeroFeePost: async (body?: PcRenewPaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePaymentDetailsWithZeroFee`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save PcRenewal Details data\n * @param {RecordRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePcRenewalDetailsPost: async (body?: RecordRenewalDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePcRenewalDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost: async (pcRenewApplicationId: number, body?: AddressDetail, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost.');\n }\n const localVarPath = `/api/v1/PcRenew/SavePostalAddress/{pcRenewApplicationId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Practice Details\n * @param {RecordPracticeRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePracticeDetailsPost: async (body?: RecordPracticeRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePracticeDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {PreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePreferenceDetailsPost: async (body?: PreferenceDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SavePreferenceDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Record Declaration\n * @param {RecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveRecordDeclarationPost: async (body?: RecordDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveRecordDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Application Declaration\n * @param {SarRecordLinkedApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveSarApplicationDeclarationPost: async (body?: SarRecordLinkedApplicationDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveSarApplicationDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save overview details\n * @param {SarRecordLinkedApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveSarRecordLinkedApplicationPost: async (body?: SarRecordLinkedApplicationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveSarRecordLinkedApplication`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Service Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost: async (pcRenewApplicationId: number, body?: AddressDetail, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost.');\n }\n const localVarPath = `/api/v1/PcRenew/SaveServiceAddress/{pcRenewApplicationId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Statutory Register Details\n * @param {StatutoryRegisterDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveStatutoryRegisterDetailsPost: async (body?: StatutoryRegisterDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SaveStatutoryRegisterDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost: async (pcRenewApplicationId: number, body?: AddressDetail, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost.');\n }\n const localVarPath = `/api/v1/PcRenew/SaveStatutoryRegisterOtherAddress/{pcRenewApplicationId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSearchFirmsPost: async (body?: Request, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/SearchFirms`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Additional Practice Details\n * @param {number} pcRenewApplicationId \n * @param {Array<RecordPracticeAdditionalDetails>} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost: async (pcRenewApplicationId: number, body?: Array, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost.');\n }\n const localVarPath = `/api/v1/PcRenew/UpdateAdditionalPracticeDetails/{pcRenewApplicationId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {PcRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdatePersonalDetailPost: async (body?: PcRenewPersonalDetail, options: any = {}): Promise => {\n const localVarPath = `/api/v1/PcRenew/UpdatePersonalDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Principal Place Practice\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut: async (pcRenewApplicationId: number, recordPracticeId: number, options: any = {}): Promise => {\n // verify required parameter 'pcRenewApplicationId' is not null or undefined\n if (pcRenewApplicationId === null || pcRenewApplicationId === undefined) {\n throw new RequiredError('pcRenewApplicationId','Required parameter pcRenewApplicationId was null or undefined when calling apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut.');\n }\n // verify required parameter 'recordPracticeId' is not null or undefined\n if (recordPracticeId === null || recordPracticeId === undefined) {\n throw new RequiredError('recordPracticeId','Required parameter recordPracticeId was null or undefined when calling apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut.');\n }\n const localVarPath = `/api/v1/PcRenew/UpdatePrincipalPlacePractice/{pcRenewApplicationId}/{recordPracticeId}`\n .replace(`{${\"pcRenewApplicationId\"}}`, encodeURIComponent(String(pcRenewApplicationId)))\n .replace(`{${\"recordPracticeId\"}}`, encodeURIComponent(String(recordPracticeId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * PcRenewApi - functional programming interface\n * @export\n */\nexport const PcRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled PcRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Delete New Practice Details\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId: number, recordPracticeId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId, recordPracticeId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Additional Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Address Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Application Information\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get PcRenewalDetails\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Practice By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Practice Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} recordLinkedApplicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Record Linked Application\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Statutory Register Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Revert Record Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Revert Statutory Register Other Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Additional Details\n * @param {RecordAdditionalDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveAdditionalDetailsPost(body?: RecordAdditionalDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveAdditionalDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Address Details\n * @param {PcRenewAddressDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveAddressDetailsPost(body?: PcRenewAddressDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveAddressDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body?: PcRenewPaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details With Zero Fee\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body?: PcRenewPaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save PcRenewal Details data\n * @param {RecordRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePcRenewalDetailsPost(body?: RecordRenewalDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePcRenewalDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Practice Details\n * @param {RecordPracticeRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePracticeDetailsPost(body?: RecordPracticeRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePracticeDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {PreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSavePreferenceDetailsPost(body?: PreferenceDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSavePreferenceDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Record Declaration\n * @param {RecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveRecordDeclarationPost(body?: RecordDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveRecordDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Application Declaration\n * @param {SarRecordLinkedApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveSarApplicationDeclarationPost(body?: SarRecordLinkedApplicationDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveSarApplicationDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save overview details\n * @param {SarRecordLinkedApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveSarRecordLinkedApplicationPost(body?: SarRecordLinkedApplicationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveSarRecordLinkedApplicationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Service Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Statutory Register Details\n * @param {StatutoryRegisterDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveStatutoryRegisterDetailsPost(body?: StatutoryRegisterDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveStatutoryRegisterDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewSearchFirmsPost(body?: Request, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewSearchFirmsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Additional Practice Details\n * @param {number} pcRenewApplicationId \n * @param {Array<RecordPracticeAdditionalDetails>} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId, body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {PcRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewUpdatePersonalDetailPost(body?: PcRenewPersonalDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewUpdatePersonalDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Principal Place Practice\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId: number, recordPracticeId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId, recordPracticeId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * PcRenewApi - factory interface\n * @export\n */\nexport const PcRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Cancelled PcRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Delete New Practice Details\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId: number, recordPracticeId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId, recordPracticeId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Additional Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Address Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Application Information\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get PcRenewalDetails\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Practice By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Practice Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} recordLinkedApplicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Record Linked Application\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Statutory Register Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Revert Record Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Revert Statutory Register Other Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Additional Details\n * @param {RecordAdditionalDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveAdditionalDetailsPost(body?: RecordAdditionalDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveAdditionalDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Address Details\n * @param {PcRenewAddressDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveAddressDetailsPost(body?: PcRenewAddressDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveAddressDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body?: PcRenewPaymentDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details With Zero Fee\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body?: PcRenewPaymentDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save PcRenewal Details data\n * @param {RecordRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePcRenewalDetailsPost(body?: RecordRenewalDetailRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePcRenewalDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Practice Details\n * @param {RecordPracticeRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePracticeDetailsPost(body?: RecordPracticeRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePracticeDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {PreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSavePreferenceDetailsPost(body?: PreferenceDetailRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSavePreferenceDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Record Declaration\n * @param {RecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveRecordDeclarationPost(body?: RecordDeclarationRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveRecordDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Application Declaration\n * @param {SarRecordLinkedApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveSarApplicationDeclarationPost(body?: SarRecordLinkedApplicationDeclarationRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveSarApplicationDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save overview details\n * @param {SarRecordLinkedApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveSarRecordLinkedApplicationPost(body?: SarRecordLinkedApplicationRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveSarRecordLinkedApplicationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Service Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Statutory Register Details\n * @param {StatutoryRegisterDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveStatutoryRegisterDetailsPost(body?: StatutoryRegisterDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveStatutoryRegisterDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewSearchFirmsPost(body?: Request, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewSearchFirmsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Additional Practice Details\n * @param {number} pcRenewApplicationId \n * @param {Array<RecordPracticeAdditionalDetails>} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: Array, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Personal Detail\n * @param {PcRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdatePersonalDetailPost(body?: PcRenewPersonalDetail, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewUpdatePersonalDetailPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Principal Place Practice\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId: number, recordPracticeId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId, recordPracticeId, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * PcRenewApi - object-oriented interface\n * @export\n * @class PcRenewApi\n * @extends {BaseAPI}\n */\nexport class PcRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Cancelled PcRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns PcRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Delete New Practice Details\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId: number, recordPracticeId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(pcRenewApplicationId, recordPracticeId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Additional Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetAdditionalDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Address Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetAddressDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Application Information\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetApplicationInfoApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get PcRenewalDetails\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Practice By FirmId\n * @param {number} firmId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetPracticeByFirmIdFirmIdGet(firmId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Practice Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetPracticeDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetPreferenceDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} recordLinkedApplicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordLinkedApplicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Record Linked Application\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Statutory Register Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Revert Record Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Revert Statutory Register Other Address\n * @param {number} pcRenewApplicationId \n * @param {number} addressDetailId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId: number, addressDetailId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(pcRenewApplicationId, addressDetailId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Additional Details\n * @param {RecordAdditionalDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveAdditionalDetailsPost(body?: RecordAdditionalDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveAdditionalDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Address Details\n * @param {PcRenewAddressDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveAddressDetailsPost(body?: PcRenewAddressDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveAddressDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body?: PcRenewPaymentDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details With Zero Fee\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body?: PcRenewPaymentDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePaymentDetailsWithZeroFeePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save PcRenewal Details data\n * @param {RecordRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePcRenewalDetailsPost(body?: RecordRenewalDetailRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePcRenewalDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Practice Details\n * @param {RecordPracticeRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePracticeDetailsPost(body?: RecordPracticeRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePracticeDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Preference Details\n * @param {PreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSavePreferenceDetailsPost(body?: PreferenceDetailRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSavePreferenceDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Record Declaration\n * @param {RecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveRecordDeclarationPost(body?: RecordDeclarationRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveRecordDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Application Declaration\n * @param {SarRecordLinkedApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveSarApplicationDeclarationPost(body?: SarRecordLinkedApplicationDeclarationRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveSarApplicationDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save overview details\n * @param {SarRecordLinkedApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveSarRecordLinkedApplicationPost(body?: SarRecordLinkedApplicationRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveSarRecordLinkedApplicationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Service Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Statutory Register Details\n * @param {StatutoryRegisterDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveStatutoryRegisterDetailsPost(body?: StatutoryRegisterDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveStatutoryRegisterDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Postal Address\n * @param {number} pcRenewApplicationId \n * @param {AddressDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: AddressDetail, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Search Firms\n * @param {Request} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewSearchFirmsPost(body?: Request, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewSearchFirmsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Additional Practice Details\n * @param {number} pcRenewApplicationId \n * @param {Array<RecordPracticeAdditionalDetails>} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId: number, body?: Array, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost(pcRenewApplicationId, body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Personal Detail\n * @param {PcRenewPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewUpdatePersonalDetailPost(body?: PcRenewPersonalDetail, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewUpdatePersonalDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Principal Place Practice\n * @param {number} pcRenewApplicationId \n * @param {number} recordPracticeId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId: number, recordPracticeId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(pcRenewApplicationId, recordPracticeId, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { SmIndividualDetailResponse } from '../models';\nimport { SmPersonalDetail } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * SmApi - axios parameter creator\n * @export\n */\nexport const SmApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Ping SmApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmCancelSmApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SmCancelSmApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/Sm/CancelSmApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Sm Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmCheckSmConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SmCheckSmConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/Sm/CheckSmConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/Sm/GetApplicationDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SmGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/Sm/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Solicitor Membership Details\n * @param {SmPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmSaveApplicationDetailsPost: async (body?: SmPersonalDetail, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Sm/SaveApplicationDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/Sm/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SmApi - functional programming interface\n * @export\n */\nexport const SmApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Ping SmApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmCancelSmApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmCancelSmApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Sm Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Solicitor Membership Details\n * @param {SmPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmSaveApplicationDetailsPost(body?: SmPersonalDetail, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmSaveApplicationDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV1SmSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SmApi - factory interface\n * @export\n */\nexport const SmApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Ping SmApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmCancelSmApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmCancelSmApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Sm Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Solicitor Membership Details\n * @param {SmPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmSaveApplicationDetailsPost(body?: SmPersonalDetail, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmSaveApplicationDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV1SmSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SmApi - object-oriented interface\n * @export\n * @class SmApi\n * @extends {BaseAPI}\n */\nexport class SmApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Ping SmApplication to extend timeout\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmCancelSmApplicationApplicationIdGet(applicationId: number, options?: any) {\n return SmApiFp(this.configuration).apiV1SmCancelSmApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Sm Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return SmApiFp(this.configuration).apiV1SmCheckSmConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return SmApiFp(this.configuration).apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return SmApiFp(this.configuration).apiV1SmGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Solicitor Membership Details\n * @param {SmPersonalDetail} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmSaveApplicationDetailsPost(body?: SmPersonalDetail, options?: any) {\n return SmApiFp(this.configuration).apiV1SmSaveApplicationDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV1SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return SmApiFp(this.configuration).apiV1SmSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { SarRecordLeaveOfAbsenceRequest } from '../models';\nimport { SarRecordNonRenewalDetailRequest } from '../models';\n/**\n * SpecAccNonRenewApi - axios parameter creator\n * @export\n */\nexport const SpecAccNonRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewCancelApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccNonRenewCancelApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccNonRenew/CancelApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccNonRenew/CheckConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Leave of Absence\n * @param {SarRecordLeaveOfAbsenceRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewSaveLeaveOfAbsencePost: async (body?: SarRecordLeaveOfAbsenceRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccNonRenew/SaveLeaveOfAbsence`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Non Renewal Details\n * @param {SarRecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewSaveNonRenewalDetailsPost: async (body?: SarRecordNonRenewalDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccNonRenew/SaveNonRenewalDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SpecAccNonRenewApi - functional programming interface\n * @export\n */\nexport const SpecAccNonRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccNonRenewApiAxiosParamCreator(configuration).apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccNonRenewApiAxiosParamCreator(configuration).apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Leave of Absence\n * @param {SarRecordLeaveOfAbsenceRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body?: SarRecordLeaveOfAbsenceRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccNonRenewApiAxiosParamCreator(configuration).apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Non Renewal Details\n * @param {SarRecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body?: SarRecordNonRenewalDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccNonRenewApiAxiosParamCreator(configuration).apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SpecAccNonRenewApi - factory interface\n * @export\n */\nexport const SpecAccNonRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccNonRenewApiFp(configuration).apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccNonRenewApiFp(configuration).apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Leave of Absence\n * @param {SarRecordLeaveOfAbsenceRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body?: SarRecordLeaveOfAbsenceRequest, options?: any): AxiosPromise {\n return SpecAccNonRenewApiFp(configuration).apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Non Renewal Details\n * @param {SarRecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body?: SarRecordNonRenewalDetailRequest, options?: any): AxiosPromise {\n return SpecAccNonRenewApiFp(configuration).apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SpecAccNonRenewApi - object-oriented interface\n * @export\n * @class SpecAccNonRenewApi\n * @extends {BaseAPI}\n */\nexport class SpecAccNonRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccNonRenewApi\n */\n public apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccNonRenewApiFp(this.configuration).apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccNonRenewApi\n */\n public apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccNonRenewApiFp(this.configuration).apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Leave of Absence\n * @param {SarRecordLeaveOfAbsenceRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccNonRenewApi\n */\n public apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body?: SarRecordLeaveOfAbsenceRequest, options?: any) {\n return SpecAccNonRenewApiFp(this.configuration).apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Non Renewal Details\n * @param {SarRecordNonRenewalDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccNonRenewApi\n */\n public apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body?: SarRecordNonRenewalDetailRequest, options?: any) {\n return SpecAccNonRenewApiFp(this.configuration).apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { SarCurrentDetailsChangedRequest } from '../models';\nimport { SarRecordApplicationDeclarationRequest } from '../models';\nimport { SarRecordApplicationDeclarationResponse } from '../models';\nimport { SarRecordPersonalResponse } from '../models';\nimport { SarRecordRenewalDeclarationRequest } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * SpecAccRenewApi - axios parameter creator\n * @export\n */\nexport const SpecAccRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCancelApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccRenewCancelApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccRenew/CancelApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccRenew/CheckConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCheckPcHolderGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccRenew/CheckPcHolder`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccRenew/GetApplicationDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/SpecAccRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/SpecAccRenew/GetRecordCurrentDetails/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Application Details\n * @param {SarRecordApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveApplicationDeclarationPost: async (body?: SarRecordApplicationDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccRenew/SaveApplicationDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Current Details Changed\n * @param {SarCurrentDetailsChangedRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveCurrentDetailsChangedPost: async (body?: SarCurrentDetailsChangedRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccRenew/SaveCurrentDetailsChanged`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Renewal Declaration\n * @param {SarRecordRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveRenewalDeclarationPost: async (body?: SarRecordRenewalDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/SpecAccRenew/SaveRenewalDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SpecAccRenewApi - functional programming interface\n * @export\n */\nexport const SpecAccRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewCheckPcHolderGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewCheckPcHolderGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Application Details\n * @param {SarRecordApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewSaveApplicationDeclarationPost(body?: SarRecordApplicationDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewSaveApplicationDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Current Details Changed\n * @param {SarCurrentDetailsChangedRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body?: SarCurrentDetailsChangedRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Renewal Declaration\n * @param {SarRecordRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SpecAccRenewSaveRenewalDeclarationPost(body?: SarRecordRenewalDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV1SpecAccRenewSaveRenewalDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SpecAccRenewApi - factory interface\n * @export\n */\nexport const SpecAccRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewCheckPcHolderGet(options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewCheckPcHolderGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Application Details\n * @param {SarRecordApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveApplicationDeclarationPost(body?: SarRecordApplicationDeclarationRequest, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewSaveApplicationDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Current Details Changed\n * @param {SarCurrentDetailsChangedRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body?: SarCurrentDetailsChangedRequest, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Renewal Declaration\n * @param {SarRecordRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SpecAccRenewSaveRenewalDeclarationPost(body?: SarRecordRenewalDeclarationRequest, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV1SpecAccRenewSaveRenewalDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SpecAccRenewApi - object-oriented interface\n * @export\n * @class SpecAccRenewApi\n * @extends {BaseAPI}\n */\nexport class SpecAccRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Cancel SpecAccApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewCancelApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Spec Acc Concurrent Session\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewCheckPcHolderGet(options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewCheckPcHolderGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Application Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Application Details\n * @param {SarRecordApplicationDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewSaveApplicationDeclarationPost(body?: SarRecordApplicationDeclarationRequest, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewSaveApplicationDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Current Details Changed\n * @param {SarCurrentDetailsChangedRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body?: SarCurrentDetailsChangedRequest, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewSaveCurrentDetailsChangedPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Renewal Declaration\n * @param {SarRecordRenewalDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV1SpecAccRenewSaveRenewalDeclarationPost(body?: SarRecordRenewalDeclarationRequest, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV1SpecAccRenewSaveRenewalDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { StudentNewApplicationRequest } from '../models';\nimport { StudentNewIndividualDetailRequest } from '../models';\nimport { StudentNewIndividualDetailResponse } from '../models';\nimport { StudentNewPreferenceDetailRequest } from '../models';\nimport { StudentNewPreferenceDetailResponse } from '../models';\nimport { StudentNewRecordDeclarationRequest } from '../models';\nimport { StudentNewRecordDeclarationResponse } from '../models';\nimport { StudentNewRecordEligibilityRequest } from '../models';\nimport { StudentNewRecordEligibilityResponse } from '../models';\n/**\n * StudentNewApi - axios parameter creator\n * @export\n */\nexport const StudentNewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewCancelStudentNewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewCancelStudentNewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentNew/CancelStudentNewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Student New Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentNew/CheckStudentNewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentNew/GetStudentNewPreferenceDetailData/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Student New Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentNew/GetStudentNewRecordDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Student New Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/StudentNew/GetStudentNewRecordEligibility/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentNew/GetStudentNewStudentIndividualDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewPreferenceDetailDataPost: async (body?: StudentNewPreferenceDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentNew/SaveStudentNewPreferenceDetailData`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save StudentNew Record Declaration\n * @param {StudentNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewRecordDeclarationPost: async (body?: StudentNewRecordDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentNew/SaveStudentNewRecordDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Student New Record Eligibility\n * @param {StudentNewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewRecordEligibilityPost: async (body?: StudentNewRecordEligibilityRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentNew/SaveStudentNewRecordEligibility`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update StudentNewApplication Detail\n * @param {StudentNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewUpdateStudentNewApplicationDetailPost: async (body?: StudentNewApplicationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentNew/UpdateStudentNewApplicationDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewUpdateStudentNewIndividualDetailPost: async (body?: StudentNewIndividualDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentNew/UpdateStudentNewIndividualDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * StudentNewApi - functional programming interface\n * @export\n */\nexport const StudentNewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Student New Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Student New Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Student New Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body?: StudentNewPreferenceDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save StudentNew Record Declaration\n * @param {StudentNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewSaveStudentNewRecordDeclarationPost(body?: StudentNewRecordDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewSaveStudentNewRecordDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Student New Record Eligibility\n * @param {StudentNewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewSaveStudentNewRecordEligibilityPost(body?: StudentNewRecordEligibilityRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewSaveStudentNewRecordEligibilityPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update StudentNewApplication Detail\n * @param {StudentNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewUpdateStudentNewApplicationDetailPost(body?: StudentNewApplicationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewUpdateStudentNewApplicationDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentNewUpdateStudentNewIndividualDetailPost(body?: StudentNewIndividualDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentNewApiAxiosParamCreator(configuration).apiV1StudentNewUpdateStudentNewIndividualDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * StudentNewApi - factory interface\n * @export\n */\nexport const StudentNewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Student New Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Student New Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Student New Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body?: StudentNewPreferenceDetailRequest, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save StudentNew Record Declaration\n * @param {StudentNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewRecordDeclarationPost(body?: StudentNewRecordDeclarationRequest, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewSaveStudentNewRecordDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Student New Record Eligibility\n * @param {StudentNewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewSaveStudentNewRecordEligibilityPost(body?: StudentNewRecordEligibilityRequest, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewSaveStudentNewRecordEligibilityPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update StudentNewApplication Detail\n * @param {StudentNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewUpdateStudentNewApplicationDetailPost(body?: StudentNewApplicationRequest, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewUpdateStudentNewApplicationDetailPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentNewUpdateStudentNewIndividualDetailPost(body?: StudentNewIndividualDetailRequest, options?: any): AxiosPromise {\n return StudentNewApiFp(configuration).apiV1StudentNewUpdateStudentNewIndividualDetailPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * StudentNewApi - object-oriented interface\n * @export\n * @class StudentNewApi\n * @extends {BaseAPI}\n */\nexport class StudentNewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Cancelled StudentNewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Student New Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Student New Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Student New Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentNewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body?: StudentNewPreferenceDetailRequest, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save StudentNew Record Declaration\n * @param {StudentNewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewSaveStudentNewRecordDeclarationPost(body?: StudentNewRecordDeclarationRequest, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewSaveStudentNewRecordDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Student New Record Eligibility\n * @param {StudentNewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewSaveStudentNewRecordEligibilityPost(body?: StudentNewRecordEligibilityRequest, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewSaveStudentNewRecordEligibilityPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update StudentNewApplication Detail\n * @param {StudentNewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewUpdateStudentNewApplicationDetailPost(body?: StudentNewApplicationRequest, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewUpdateStudentNewApplicationDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentNewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentNewApi\n */\n public apiV1StudentNewUpdateStudentNewIndividualDetailPost(body?: StudentNewIndividualDetailRequest, options?: any) {\n return StudentNewApiFp(this.configuration).apiV1StudentNewUpdateStudentNewIndividualDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { BooleanResponse } from '../models';\nimport { StudentRenewApplicationRequest } from '../models';\nimport { StudentRenewIndividualDetailRequest } from '../models';\nimport { StudentRenewIndividualDetailResponse } from '../models';\nimport { StudentRenewPreferenceDetailRequest } from '../models';\nimport { StudentRenewPreferenceDetailResponse } from '../models';\nimport { StudentRenewRecordDeclarationRequest } from '../models';\nimport { StudentRenewRecordDeclarationResponse } from '../models';\nimport { StudentRenewRecordEligibilityRequest } from '../models';\nimport { StudentRenewRecordEligibilityResponse } from '../models';\n/**\n * StudentRenewApi - axios parameter creator\n * @export\n */\nexport const StudentRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/CancelStudentRenewApplication/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/CheckStudentRenewConcurrentSession/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/GetStudentRenewPreferenceDetailData/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/GetStudentRenewRecordDeclaration/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Student Renew Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet: async (applicationId: number, isNewApplication: boolean, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet.');\n }\n // verify required parameter 'isNewApplication' is not null or undefined\n if (isNewApplication === null || isNewApplication === undefined) {\n throw new RequiredError('isNewApplication','Required parameter isNewApplication was null or undefined when calling apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/GetStudentRenewRecordEligibility/{applicationId}/{isNewApplication}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)))\n .replace(`{${\"isNewApplication\"}}`, encodeURIComponent(String(isNewApplication)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v1/StudentRenew/GetStudentRenewStudentIndividualDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost: async (body?: StudentRenewPreferenceDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentRenew/SaveStudentRenewPreferenceDetailData`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save StudentRenew Record Declaration\n * @param {StudentRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewRecordDeclarationPost: async (body?: StudentRenewRecordDeclarationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentRenew/SaveStudentRenewRecordDeclaration`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Student Renew Record Eligibility\n * @param {StudentRenewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewRecordEligibilityPost: async (body?: StudentRenewRecordEligibilityRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentRenew/SaveStudentRenewRecordEligibility`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update StudentRenewApplication Detail\n * @param {StudentRenewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewUpdateStudentRenewApplicationDetailPost: async (body?: StudentRenewApplicationRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentRenew/UpdateStudentRenewApplicationDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentRenewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewUpdateStudentRenewIndividualDetailPost: async (body?: StudentRenewIndividualDetailRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v1/StudentRenew/UpdateStudentRenewIndividualDetail`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * StudentRenewApi - functional programming interface\n * @export\n */\nexport const StudentRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns StudentRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Student Renew Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body?: StudentRenewPreferenceDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save StudentRenew Record Declaration\n * @param {StudentRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body?: StudentRenewRecordDeclarationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Student Renew Record Eligibility\n * @param {StudentRenewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body?: StudentRenewRecordEligibilityRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update StudentRenewApplication Detail\n * @param {StudentRenewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body?: StudentRenewApplicationRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentRenewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body?: StudentRenewIndividualDetailRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await StudentRenewApiAxiosParamCreator(configuration).apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * StudentRenewApi - factory interface\n * @export\n */\nexport const StudentRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Returns Cancelled StudentRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns StudentRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns StudentRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Student Renew Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body?: StudentRenewPreferenceDetailRequest, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save StudentRenew Record Declaration\n * @param {StudentRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body?: StudentRenewRecordDeclarationRequest, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Student Renew Record Eligibility\n * @param {StudentRenewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body?: StudentRenewRecordEligibilityRequest, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update StudentRenewApplication Detail\n * @param {StudentRenewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body?: StudentRenewApplicationRequest, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentRenewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body?: StudentRenewIndividualDetailRequest, options?: any): AxiosPromise {\n return StudentRenewApiFp(configuration).apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * StudentRenewApi - object-oriented interface\n * @export\n * @class StudentRenewApi\n * @extends {BaseAPI}\n */\nexport class StudentRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Returns Cancelled StudentRenewApplication\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId: number, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns StudentRenew Concurrent Session\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId: number, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Get Preference Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId: number, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns StudentRenew Record Declaration\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId: number, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Student Renew Record Eligibility\n * @param {number} applicationId \n * @param {boolean} isNewApplication \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId: number, isNewApplication: boolean, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(applicationId, isNewApplication, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns Individual Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId: number, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Preference Details\n * @param {StudentRenewPreferenceDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body?: StudentRenewPreferenceDetailRequest, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save StudentRenew Record Declaration\n * @param {StudentRenewRecordDeclarationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body?: StudentRenewRecordDeclarationRequest, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Student Renew Record Eligibility\n * @param {StudentRenewRecordEligibilityRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body?: StudentRenewRecordEligibilityRequest, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update StudentRenewApplication Detail\n * @param {StudentRenewApplicationRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body?: StudentRenewApplicationRequest, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewUpdateStudentRenewApplicationDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Individual Detail\n * @param {StudentRenewIndividualDetailRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof StudentRenewApi\n */\n public apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body?: StudentRenewIndividualDetailRequest, options?: any) {\n return StudentRenewApiFp(this.configuration).apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 1.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { LogEntryBusiness } from '../models';\nimport { ObjectIEnumerableResponse } from '../models';\nimport { ObjectResponse } from '../models';\n/**\n * SystemApi - axios parameter creator\n * @export\n */\nexport const SystemApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary Authorize | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemAuthorizedPingGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/AuthorizedPing`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary All | Returns 401 Unauthorized\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetAuthError401Get: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/GetAuthError401`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary All | Returns 403 Forbidden\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetAuthError403Get: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/GetAuthError403`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/GetBaseDate`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateUtcGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/GetBaseDateUtc`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateWebJobGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/GetBaseDateWebJob`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} seq \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetGeneratePdfExampleSeqGet: async (seq: number, options: any = {}): Promise => {\n // verify required parameter 'seq' is not null or undefined\n if (seq === null || seq === undefined) {\n throw new RequiredError('seq','Required parameter seq was null or undefined when calling apiV1SystemGetGeneratePdfExampleSeqGet.');\n }\n const localVarPath = `/api/v1/System/GetGeneratePdfExample/{seq}`\n .replace(`{${\"seq\"}}`, encodeURIComponent(String(seq)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/Ping`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/PingLsApi`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiPolarisGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/PingLsApiPolaris`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiSchemeApiGet: async (options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/PingLsApiSchemeApi`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary Authorize | Put logs into system\n * @param {LogEntryBusiness} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemSaveLogEntryBusinessPost: async (body?: LogEntryBusiness, options: any = {}): Promise => {\n const localVarPath = `/api/v1/System/SaveLogEntryBusiness`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary API User Only | Set ConfigCurrentDate\n * @param {string} dateTimeString \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemSetConfigCurrentDateDateTimeStringGet: async (dateTimeString: string, options: any = {}): Promise => {\n // verify required parameter 'dateTimeString' is not null or undefined\n if (dateTimeString === null || dateTimeString === undefined) {\n throw new RequiredError('dateTimeString','Required parameter dateTimeString was null or undefined when calling apiV1SystemSetConfigCurrentDateDateTimeStringGet.');\n }\n const localVarPath = `/api/v1/System/SetConfigCurrentDate/{dateTimeString}`\n .replace(`{${\"dateTimeString\"}}`, encodeURIComponent(String(dateTimeString)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SystemApi - functional programming interface\n * @export\n */\nexport const SystemApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary Authorize | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemAuthorizedPingGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemAuthorizedPingGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary All | Returns 401 Unauthorized\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetAuthError401Get(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetAuthError401Get(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary All | Returns 403 Forbidden\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetAuthError403Get(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetAuthError403Get(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetBaseDateGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetBaseDateUtcGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateUtcGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetBaseDateWebJobGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetBaseDateWebJobGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} seq \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemGetGeneratePdfExampleSeqGet(seq: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemGetGeneratePdfExampleSeqGet(seq, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemPingGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemPingLsApiGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemPingLsApiPolarisGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiPolarisGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemPingLsApiSchemeApiGet(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemPingLsApiSchemeApiGet(options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary Authorize | Put logs into system\n * @param {LogEntryBusiness} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemSaveLogEntryBusinessPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary API User Only | Set ConfigCurrentDate\n * @param {string} dateTimeString \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SystemApiAxiosParamCreator(configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SystemApi - factory interface\n * @export\n */\nexport const SystemApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary Authorize | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemAuthorizedPingGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemAuthorizedPingGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary All | Returns 401 Unauthorized\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetAuthError401Get(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetAuthError401Get(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary All | Returns 403 Forbidden\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetAuthError403Get(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetAuthError403Get(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetBaseDateGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateUtcGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetBaseDateUtcGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetBaseDateWebJobGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetBaseDateWebJobGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} seq \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemGetGeneratePdfExampleSeqGet(seq: number, options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemGetGeneratePdfExampleSeqGet(seq, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemPingGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemPingLsApiGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiPolarisGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemPingLsApiPolarisGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemPingLsApiSchemeApiGet(options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemPingLsApiSchemeApiGet(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary Authorize | Put logs into system\n * @param {LogEntryBusiness} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemSaveLogEntryBusinessPost(body, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary API User Only | Set ConfigCurrentDate\n * @param {string} dateTimeString \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any): AxiosPromise {\n return SystemApiFp(configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SystemApi - object-oriented interface\n * @export\n * @class SystemApi\n * @extends {BaseAPI}\n */\nexport class SystemApi extends BaseAPI {\n /**\n * \n * @summary Authorize | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemAuthorizedPingGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemAuthorizedPingGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary All | Returns 401 Unauthorized\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetAuthError401Get(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetAuthError401Get(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary All | Returns 403 Forbidden\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetAuthError403Get(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetAuthError403Get(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetBaseDateGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetBaseDateUtcGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateUtcGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetBaseDateWebJobGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetBaseDateWebJobGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Returns file as stream\n * @param {number} seq \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemGetGeneratePdfExampleSeqGet(seq: number, options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemGetGeneratePdfExampleSeqGet(seq, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemPingGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemPingGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemPingLsApiGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemPingLsApiPolarisGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiPolarisGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Allow Anonymous | Returns current date time\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemPingLsApiSchemeApiGet(options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemPingLsApiSchemeApiGet(options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary Authorize | Put logs into system\n * @param {LogEntryBusiness} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemSaveLogEntryBusinessPost(body?: LogEntryBusiness, options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemSaveLogEntryBusinessPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary API User Only | Set ConfigCurrentDate\n * @param {string} dateTimeString \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SystemApi\n */\n public apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString: string, options?: any) {\n return SystemApiFp(this.configuration).apiV1SystemSetConfigCurrentDateDateTimeStringGet(dateTimeString, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 2.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { Configuration } from \"./configuration\";\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\n\nexport const BASE_PATH = \"/\".replace(/\\/+$/, \"\");\n\n/**\n *\n * @export\n */\nexport const COLLECTION_FORMATS = {\n csv: \",\",\n ssv: \" \",\n tsv: \"\\t\",\n pipes: \"|\",\n};\n\n/**\n *\n * @export\n * @interface RequestArgs\n */\nexport interface RequestArgs {\n url: string;\n options: any;\n}\n\n/**\n *\n * @export\n * @class BaseAPI\n */\nexport class BaseAPI {\n protected configuration: Configuration | undefined;\n\n constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {\n if (configuration) {\n this.configuration = configuration;\n this.basePath = configuration.basePath || this.basePath;\n }\n }\n};\n\n/**\n *\n * @export\n * @class RequiredError\n * @extends {Error}\n */\nexport class RequiredError extends Error {\n name: \"RequiredError\" = \"RequiredError\";\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 2.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { PcRenewPaymentDetailsRequest } from '../models';\nimport { PcRenewPaymentDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * PcRenewApi - axios parameter creator\n * @export\n */\nexport const PcRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2PcRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV2PcRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v2/PcRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2PcRenewSavePaymentDetailsPost: async (body?: PcRenewPaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v2/PcRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {ApplicationId}\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2PcRenewUpdateApplicationStatusPut: async (applicationId?: number, options: any = {}): Promise => {\n const localVarPath = `/api/v2/PcRenew/UpdateApplicationStatus`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof applicationId !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(applicationId !== undefined ? applicationId : {}) : (applicationId || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * PcRenewApi - functional programming interface\n * @export\n */\nexport const PcRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV2PcRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Update Application Status\n * @param {applicationId}\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2PcRenewUpdateApplicationStatusPut(applicationId?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await PcRenewApiAxiosParamCreator(configuration).apiV2PcRenewUpdateApplicationStatusPut(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * PcRenewApi - factory interface\n * @export\n */\nexport const PcRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any): AxiosPromise {\n return PcRenewApiFp(configuration).apiV2PcRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * PcRenewApi - object-oriented interface\n * @export\n * @class PcRenewApi\n * @extends {BaseAPI}\n */\nexport class PcRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV2PcRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PcRenewPaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV2PcRenewSavePaymentDetailsPost(body?: PcRenewPaymentDetailsRequest, options?: any) {\n return PcRenewApiFp(this.configuration).apiV2PcRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Update Application Status\n * @param {applicationId}\n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof PcRenewApi\n */\n public apiV2PcRenewUpdateApplicationStatusPut(applicationId?: number, options?: any) {\n return PcRenewApiFp(this.configuration).apiV2PcRenewUpdateApplicationStatusPut(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 2.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * SmApi - axios parameter creator\n * @export\n */\nexport const SmApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SmGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV2SmGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v2/Sm/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SmSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v2/Sm/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SmApi - functional programming interface\n * @export\n */\nexport const SmApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV2SmGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SmApiAxiosParamCreator(configuration).apiV2SmSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SmApi - factory interface\n * @export\n */\nexport const SmApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV2SmGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return SmApiFp(configuration).apiV2SmSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SmApi - object-oriented interface\n * @export\n * @class SmApi\n * @extends {BaseAPI}\n */\nexport class SmApi extends BaseAPI {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV2SmGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return SmApiFp(this.configuration).apiV2SmGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SmApi\n */\n public apiV2SmSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return SmApiFp(this.configuration).apiV2SmSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * MARS API\n * The Mars Api with Swagger, Swashbuckle, and API Versioning.\n *\n * OpenAPI spec version: 2.0\n * Contact: hitesh.patel@lawsociety.com.au\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport globalAxios, { AxiosPromise, AxiosInstance } from 'axios';\nimport { Configuration } from '../configuration';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../base';\nimport { PaymentDetailsRequest } from '../models';\nimport { PaymentDetailsResponse } from '../models';\nimport { TransactionResponse } from '../models';\n/**\n * SpecAccRenewApi - axios parameter creator\n * @export\n */\nexport const SpecAccRenewApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet: async (applicationId: number, options: any = {}): Promise => {\n // verify required parameter 'applicationId' is not null or undefined\n if (applicationId === null || applicationId === undefined) {\n throw new RequiredError('applicationId','Required parameter applicationId was null or undefined when calling apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet.');\n }\n const localVarPath = `/api/v2/SpecAccRenew/GetPaymentDetails/{applicationId}`\n .replace(`{${\"applicationId\"}}`, encodeURIComponent(String(applicationId)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SpecAccRenewSavePaymentDetailsPost: async (body?: PaymentDetailsRequest, options: any = {}): Promise => {\n const localVarPath = `/api/v2/SpecAccRenew/SavePaymentDetails`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, 'https://example.com');\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication Bearer required\n\n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n const query = new URLSearchParams(localVarUrlObj.search);\n for (const key in localVarQueryParameter) {\n query.set(key, localVarQueryParameter[key]);\n }\n for (const key in options.query) {\n query.set(key, options.query[key]);\n }\n localVarUrlObj.search = (new URLSearchParams(query)).toString();\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n const needsSerialization = (typeof body !== \"string\") || localVarRequestOptions.headers['Content-Type'] === 'application/json';\n localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || \"\");\n\n return {\n url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash,\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * SpecAccRenewApi - functional programming interface\n * @export\n */\nexport const SpecAccRenewApiFp = function(configuration?: Configuration) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async apiV2SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await SpecAccRenewApiAxiosParamCreator(configuration).apiV2SpecAccRenewSavePaymentDetailsPost(body, options);\n return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n },\n }\n};\n\n/**\n * SpecAccRenewApi - factory interface\n * @export\n */\nexport const SpecAccRenewApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n return {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n apiV2SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any): AxiosPromise {\n return SpecAccRenewApiFp(configuration).apiV2SpecAccRenewSavePaymentDetailsPost(body, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * SpecAccRenewApi - object-oriented interface\n * @export\n * @class SpecAccRenewApi\n * @extends {BaseAPI}\n */\nexport class SpecAccRenewApi extends BaseAPI {\n /**\n * \n * @summary External | Get Payment Details\n * @param {number} applicationId \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId: number, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(applicationId, options).then((request) => request(this.axios, this.basePath));\n }\n /**\n * \n * @summary External | Save Payment Details\n * @param {PaymentDetailsRequest} [body] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof SpecAccRenewApi\n */\n public apiV2SpecAccRenewSavePaymentDetailsPost(body?: PaymentDetailsRequest, options?: any) {\n return SpecAccRenewApiFp(this.configuration).apiV2SpecAccRenewSavePaymentDetailsPost(body, options).then((request) => request(this.axios, this.basePath));\n }\n}\n","import globalAxios, { AxiosInstance } from \"axios\";\nimport {\n SystemApi,\n ApplicationApi,\n IndividualApi,\n Configuration,\n PageApi,\n CodeApi,\n PcRenewApi,\n FileApi,\n PcNonRenewApi,\n PaymentApi,\n SmApi,\n AmRenewApi,\n AmNewApi,\n SpecAccRenewApi,\n SpecAccNonRenewApi,\n StudentNewApi,\n StudentRenewApi,\n AdminApi,\n} from \"@/shared/modules/typescript-api-client\";\nimport {\n PcRenewApi as PcRenewApiV2,\n SmApi as SmApiV2,\n SpecAccRenewApi as SpecAccRenewApiV2,\n} from \"@/shared/modules/typescript-api-client-v2/index\";\nexport const BASE_PATH = \"/\".replace(/\\/+$/, \"\");\n\nexport class MARSApi {\n public ApplicationApi?: ApplicationApi;\n public IndividualApi?: IndividualApi;\n public SystemApi?: SystemApi;\n public PageApi?: PageApi;\n public CodeApi?: CodeApi;\n public PcRenewApi?: PcRenewApi;\n public FileApi?: FileApi;\n public PcNonRenewApi?: PcNonRenewApi;\n public PaymentApi?: PaymentApi;\n public SmApi?: SmApi;\n public AmRenewApi?: AmRenewApi;\n public AmNewApi?: AmNewApi;\n public SpecAccRenewApi?: SpecAccRenewApi;\n public SpecAccNonRenewApi?: SpecAccNonRenewApi;\n public StudentNewApi?: StudentNewApi;\n public StudentRenewApi?: StudentRenewApi;\n public AdminApi?: AdminApi;\n public PcRenewApiV2?: PcRenewApiV2;\n public SmApiV2?: SmApiV2;\n public SpecAccRenewApiV2?: SpecAccRenewApiV2;\n\n constructor(\n configuration?: Configuration,\n protected basePath: string = BASE_PATH,\n protected axios: AxiosInstance = globalAxios\n ) {\n this.ApplicationApi = new ApplicationApi(configuration, basePath, axios);\n this.IndividualApi = new IndividualApi(configuration, basePath, axios);\n this.SystemApi = new SystemApi(configuration, basePath, axios);\n this.PageApi = new PageApi(configuration, basePath, axios);\n this.CodeApi = new CodeApi(configuration, basePath, axios);\n this.PcRenewApi = new PcRenewApi(configuration, basePath, axios);\n this.FileApi = new FileApi(configuration, basePath, axios);\n this.PcNonRenewApi = new PcNonRenewApi(configuration, basePath, axios);\n this.PaymentApi = new PaymentApi(configuration, basePath, axios);\n this.SmApi = new SmApi(configuration, basePath, axios);\n this.AmRenewApi = new AmRenewApi(configuration, basePath, axios);\n this.AmNewApi = new AmNewApi(configuration, basePath, axios);\n this.SpecAccRenewApi = new SpecAccRenewApi(configuration, basePath, axios);\n this.SpecAccNonRenewApi = new SpecAccNonRenewApi(\n configuration,\n basePath,\n axios\n );\n this.StudentNewApi = new StudentNewApi(configuration, basePath, axios);\n this.StudentRenewApi = new StudentRenewApi(configuration, basePath, axios);\n this.AdminApi = new AdminApi(configuration, basePath, axios);\n this.PcRenewApiV2 = new PcRenewApiV2(configuration, basePath, axios);\n this.SmApiV2 = new SmApiV2(configuration, basePath, axios);\n this.SpecAccRenewApiV2 = new SpecAccRenewApiV2(\n configuration,\n basePath,\n axios\n );\n }\n}\n","import { Module } from \"vuex\";\n\nconst snackBarStoreModule: Module = {\n state: {\n snackbar: []\n },\n mutations: {\n setSnackbar(state, sb) {\n state.snackbar = sb;\n }\n },\n actions: {\n setSnackbar({ commit }, sb) {\n commit('setSnackbar', sb);\n }\n },\n getters: {\n getSnackbar: (state) => state.snackbar\n }\n}\nexport default snackBarStoreModule;","import { EventEmitter } from \"events\";\nimport { Module } from \"vuex\";\n\nconst eventControllerStoreModule: Module = {\n state: {\n eventController: new EventEmitter()\n },\n getters: {\n getEventController: (state) => state.eventController\n }\n}\nexport default eventControllerStoreModule;","import { Module } from \"vuex\";\nimport { AuthorizedUser } from \"../models/authorized-user\";\n\nconst userAccountStoreModule: Module = {\n state: {\n authorizedUser: new AuthorizedUser()\n },\n mutations: {\n setUserAccount(state, authorizedUser: AuthorizedUser) {\n state.authorizedUser = authorizedUser;\n }\n },\n actions: {\n setUserAccount({ commit }, authorizedUser: AuthorizedUser) {\n commit('setAuthorizedUser', authorizedUser);\n }\n },\n getters: {\n getUserAccount: (state) => state.authorizedUser\n }\n}\nexport default userAccountStoreModule;","import { Module } from \"vuex\";\n\nconst appInfoStoreModule: Module = {\n state: {\n appInfo: {}\n },\n mutations: {\n setAppInfo(state, appInfo) {\n state.appInfo = appInfo;\n window.sessionStorage.setItem('appInfo', JSON.stringify(appInfo));\n }\n },\n actions: {\n setAppInfo({ commit }, appInfo) {\n commit('setAppInfo', appInfo);\n }\n },\n getters: {\n getAppInfo: (state) => state.appInfo\n }\n}\nexport default appInfoStoreModule;","import { Module } from \"vuex\";\n\nconst appRenewStoreModule: Module = {\n state: {\n appRenew: {}\n },\n mutations: {\n setAppRenew(state, app) {\n state.appRenew = app;\n // window.sessionStorage.setItem('appRenew', JSON.stringify(app));\n }\n },\n actions: {\n setAppRenew({ commit }, app) {\n commit('setAppRenew', app);\n }\n },\n getters: {\n getAppRenew: (state) => state.appRenew\n }\n}\nexport default appRenewStoreModule;","import { Module } from \"vuex\";\n\nconst pcrFormDataStoreModule: Module = {\n state: {\n pcrFormData: {}\n },\n mutations: {\n setPcrFormData(state, fd) {\n state.pcrFormData = fd;\n }\n },\n actions: {\n setPcrFormData({ commit }, fd) {\n commit('setPcrFormData', fd);\n }\n },\n getters: {\n getPcrFormData: (state) => state.pcrFormData\n }\n}\nexport default pcrFormDataStoreModule;","import { Module } from \"vuex\";\n\nconst popOverStoreModule: Module = {\n state: {\n popovers: []\n },\n mutations: {\n setPopovers(state, p) {\n state.popovers = p;\n // window.sessionStorage.setItem('popovers', JSON.stringify(p));\n }\n },\n actions: {\n setPopovers({ commit }, p) {\n commit('setPopovers', p);\n }\n },\n getters: {\n getPopovers: (state) => state.popovers\n }\n}\nexport default popOverStoreModule;","import { Module } from \"vuex\";\n\nconst countryListStoreModule: Module = {\n state: {\n countryList: null\n },\n mutations: {\n setCountryList(state, cl) {\n state.countryList = cl;\n window.sessionStorage.setItem('countryList', JSON.stringify(cl));\n }\n },\n actions: {\n setCountryList({ commit }, cl) {\n // console.log('setCountryList: ', cl)\n commit('setCountryList', JSON.stringify(cl));\n }\n },\n getters: {\n getCountryList: (state) => state.countryList\n }\n}\nexport default countryListStoreModule;","import { Module } from \"vuex\";\n\nconst dxExchangeTypeListStoreModule: Module = {\n state: {\n dxExchangeTypeList: null\n },\n mutations: {\n setDxExchangeTypeList(state, dx) {\n state.dxExchangeTypeList = dx;\n window.sessionStorage.setItem('dxExchangeTypeList', JSON.stringify(dx));\n }\n },\n actions: {\n setDxExchangeTypeList({ commit }, dx) {\n // console.log('setCountryList: ', cl)\n commit('setDxExchangeTypeList', JSON.stringify(dx));\n }\n },\n getters: {\n getDxExchangeTypeList: (state) => state.dxExchangeTypeList\n }\n}\nexport default dxExchangeTypeListStoreModule;","import { Module } from \"vuex\";\n\nconst smAppFormDataStoreModule: Module = {\n state: {\n smAppFormData: {}\n },\n mutations: {\n setSmAppFormData(state, fd) {\n state.smAppFormData = fd;\n }\n },\n actions: {\n setSmAppFormData({ commit }, fd) {\n commit('setSmAppFormData', fd);\n }\n },\n getters: {\n getSmAppFormData: (state) => state.smAppFormData\n }\n}\nexport default smAppFormDataStoreModule;","import { Module } from \"vuex\";\nimport { Application } from \"../modules/typescript-api-client/models\";\n\nconst onlineApplicationStoreModule: Module = {\n state: {\n onlineApplication: {}\n },\n mutations: {\n setOnlineApplication(state, app: Application) {\n state.onlineApplication = app;\n }\n },\n actions: {\n setOnlineApplication({ commit }, app: Application) {\n commit('setOnlineApplication', app);\n }\n },\n getters: {\n getOnlineApplication: (state) => state.onlineApplication\n }\n}\nexport default onlineApplicationStoreModule;","import { Module } from \"vuex\";\n\nconst addressTypeStoreModule: Module = {\n state: {\n addressTypeList: null\n },\n mutations: {\n setAddressTypeList(state, at) {\n state.addressTypeList = at;\n window.sessionStorage.setItem('addressTypeList', JSON.stringify(at));\n }\n },\n actions: {\n setAddressTypeList({ commit }, at) {\n commit('setAddressTypeList', JSON.stringify(at));\n }\n },\n getters: {\n getAddressTypeList: (state) => state.addressTypeList\n }\n}\nexport default addressTypeStoreModule;","import { Module } from \"vuex\";\n\nconst sarAppFormDataStoreModule: Module = {\n state: {\n sarAppFormData: {}\n },\n mutations: {\n setSarAppFormData(state, fd) {\n state.sarAppFormData = fd;\n }\n },\n actions: {\n setSarAppFormData({ commit }, fd) {\n commit('setSarAppFormData', fd);\n }\n },\n getters: {\n getSarAppFormData: (state) => state.sarAppFormData\n }\n}\nexport default sarAppFormDataStoreModule;","import { Module } from \"vuex\";\n\nconst amnAppFormDataStoreModule: Module = {\n state: {\n amnAppFormData: {}\n },\n mutations: {\n setAmnAppFormData(state, fd) {\n state.amnAppFormData = fd;\n }\n },\n actions: {\n setAmnAppFormData({ commit }, fd) {\n commit('setAmnAppFormData', fd);\n }\n },\n getters: {\n getAmnAppFormData: (state) => state.amnAppFormData\n }\n}\nexport default amnAppFormDataStoreModule;","import { Module } from \"vuex\";\n\nconst amrAppFormDataStoreModule: Module = {\n state: {\n amrAppFormData: {}\n },\n mutations: {\n setAmrAppFormData(state, fd) {\n state.amrAppFormData = fd;\n // window.sessionStorage.setItem('amrAppFormData', JSON.stringify(fd));\n }\n },\n actions: {\n setAmrAppFormData({ commit }, fd) {\n commit('setAmrAppFormData', fd);\n }\n },\n getters: {\n getAmrAppFormData: (state) => state.amrAppFormData\n }\n}\nexport default amrAppFormDataStoreModule;","import { Module } from \"vuex\";\n\nconst stnAppFormDataStoreModule: Module = {\n state: {\n stnAppFormData: {}\n },\n mutations: {\n setStnAppFormData(state, fd) {\n state.stnAppFormData = fd;\n }\n },\n actions: {\n setStnAppFormData({ commit }, fd) {\n commit('setStnAppFormData', fd);\n }\n },\n getters: {\n getStnAppFormData: (state) => state.stnAppFormData\n }\n}\nexport default stnAppFormDataStoreModule;","import { Module } from \"vuex\";\n\nconst strAppFormDataStoreModule: Module = {\n state: {\n strAppFormData: {}\n },\n mutations: {\n setStrAppFormData(state, fd) {\n state.strAppFormData = fd;\n }\n },\n actions: {\n setStrAppFormData({ commit }, fd) {\n commit('setStrAppFormData', fd);\n }\n },\n getters: {\n getStrAppFormData: (state) => state.strAppFormData\n }\n}\nexport default strAppFormDataStoreModule;","import { createStore } from 'vuex';\nimport snackBarStoreModule from '@/shared/store/snack-bar-store-module';\nimport eventControllerModule from '@/shared/store/event-controller-store-module';\nimport userAccountStoreModule from '@/shared/store/user-account-store-module';\nimport appInfoStoreModule from '@/shared/store/app-info-store-module';\nimport appRenewStoreModule from '@/shared/store/app-renew-store-module';\nimport pcrFormDataStoreModule from '@/shared/store/pcr-formdata-store-module';\nimport popOverStoreModule from '@/shared/store/popover-store-module';\nimport countryListStoreModule from '@/shared/store/countrylist-store-module';\nimport dxExchangeTypeListStoreModule from '@/shared/store/dx-exchangelist-store-module';\nimport smAppFormDataStoreModule from './sm-app-formdata-store-module';\nimport onlineApplicationStoreModule from './online-application-store-module';\nimport addressTypeStoreModule from './address-type-store-module';\nimport sarAppFormDataStoreModule from './sar-app-formdata-store-module';\nimport amnAppFormDataStoreModule from './amn-app-formdata-store-module';\nimport amrAppFormDataStoreModule from './amr-app-formdata-store-module';\nimport stnAppFormDataStoreModule from './stn-app-formdata-store-module';\nimport strAppFormDataStoreModule from './str-app-formdata-store-module';\n\nexport default createStore({\n modules: {\n snackBarStoreModule,\n eventControllerModule,\n userAccountStoreModule,\n appInfoStoreModule,\n appRenewStoreModule,\n pcrFormDataStoreModule,\n popOverStoreModule,\n countryListStoreModule,\n dxExchangeTypeListStoreModule,\n smAppFormDataStoreModule,\n onlineApplicationStoreModule,\n addressTypeStoreModule,\n sarAppFormDataStoreModule,\n stnAppFormDataStoreModule,\n strAppFormDataStoreModule,\n amnAppFormDataStoreModule,\n amrAppFormDataStoreModule\n }\n});\n","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withModifiers as _withModifiers, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6821cd87\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-times\" }, null, -1))\nconst _hoisted_2 = [\n _hoisted_1\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", null, [\n (_ctx.showSnackbar)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n ref: \"snackbar\",\n class: _normalizeClass([\"snackbar\", [_ctx.statusType, _ctx.showSnackbar ? 'show' : '']])\n }, [\n _createElementVNode(\"p\", null, _toDisplayString(_ctx.message), 1),\n _createElementVNode(\"span\", {\n class: \"close\",\n onClick: _cache[0] || (_cache[0] = _withModifiers($event => (_ctx.close()), [\"prevent\",\"stop\"])),\n title: \"Dismiss\"\n }, _hoisted_2)\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Vue } from 'vue-class-component';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\n/**\n * Snackbar\n * \n * @export\n * @class Snackbar\n * @extends {Vue}\n * \n // snackbar usage: \n // import { Options, Vue } from \"vue-class-component\";\n // import { Component } from \"vue-property-decorator\";\n // import SnackBar from \"../shared/components/snackbar/index.vue\";\n // import { EventEmitter } from 'events';\n // import store from '@/store';\n\n\n // @Options({\n // components: {\n // SnackBar\n // }\n // })\n\n\n // get eventCtrl(): EventEmitter {\n // return store.getters.getEventController;\n // }\n\n // someFunction() {\n // this.eventCtrl.emit('show-snackbar', 'error', 'File upload failed');\n // }\n\n // error\n // background-color #f44336\n // warning\n // background-color #ff9800\n // info\n // background-color #2196f3\n // success\n // background-color #4caf50\n */\nexport default class Snackbar extends Vue {\n showSnackbar = false;\n message = '';\n statusType = '';\n timeoutID = 0;\n stayOnTiming = 10000;\n snackbar: any;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n show(statusT: string, message: string) {\n this.statusType = statusT;\n this.stayOnTiming = this.statusType == 'error' ? 7200 * 1000 : 10000;\n this.message = message.replace('AxiosError:', '');\n this.showSnackbar = true;\n setTimeout(() => { this.snackbar = this.$refs.snackbar; }, 0);\n this.timeoutID = setTimeout(() => { this.showSnackbar = false; }, this.stayOnTiming);\n }\n\n close(): void {\n this.showSnackbar = false;\n }\n\n mounted() {\n this.eventCtrl.on('show-snackbar', this.show);\n }\n\n beforeUnmount() {\n this.eventCtrl.removeListener('show-snackbar', this.show);\n }\n\n}\n","import { render } from \"./snackbar.html?vue&type=template&id=6821cd87&scoped=true&ts=true\"\nimport script from \"./snackbar.ts?vue&type=script&lang=ts\"\nexport * from \"./snackbar.ts?vue&type=script&lang=ts\"\n\nimport \"./snackbar.scss?vue&type=style&index=0&id=6821cd87&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6821cd87\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-469a2047\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"session-expired\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Session Expired\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Your application has been restarted on other browser\", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"This session will be closed!\", -1))\nconst _hoisted_5 = { class: \"right\" }\n\nexport function render(_ctx, _cache) {\n const _component_AlertBox = _resolveComponent(\"AlertBox\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.showAlert)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 0,\n showCloseBut: false,\n class: \"alert-box\",\n onClose: _ctx.goHome\n }, {\n header: _withCtx(() => [\n _hoisted_2\n ]),\n body: _withCtx(() => [\n _hoisted_3,\n _hoisted_4\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.goHome()))\n }, \"Exit\")\n ])\n ]),\n _: 1\n }, 8, [\"onClose\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, renderSlot as _renderSlot, createTextVNode as _createTextVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"alert-box\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = {\n class: \"modal-wrapper\",\n ref: \"modalWrapper\"\n}\nconst _hoisted_4 = { class: \"modal-container\" }\nconst _hoisted_5 = { class: \"modal-header\" }\nconst _hoisted_6 = { class: \"modal-body\" }\nconst _hoisted_7 = { class: \"modal-footer\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times-circle close-icon\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.$emit('close')))\n }),\n _createElementVNode(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _createTextVNode(\" default header \")\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"body\", {}, () => [\n _createTextVNode(\" default body \")\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _renderSlot(_ctx.$slots, \"footer\", {}, () => [\n _createTextVNode(\" default footer \"),\n _createElementVNode(\"button\", {\n class: \"modal-default-button\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.$emit('close')))\n }, \" OK \")\n ])\n ])\n ])\n ], 512)\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from 'vue-class-component';\n\n@Options({\n props: {\n modalOpened: Boolean,\n }\n})\nexport default class AlertBox extends Vue {\n private modalOpened!: boolean;\n\n mounted() {\n if (!this.modalOpened) {\n document.body.classList.add('modal-open');\n }\n\n }\n\n beforeUnmount() {\n if (!this.modalOpened) {\n document.body.classList.remove('modal-open');\n }\n }\n\n}\n","import { render } from \"./alert-box.html?vue&type=template&id=f20e6902&ts=true\"\nimport script from \"./alert-box.ts?vue&type=script&lang=ts\"\nexport * from \"./alert-box.ts?vue&type=script&lang=ts\"\n\nimport \"./alert-box.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { Options, Vue } from \"vue-property-decorator\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\n\n@Options({\n components: {\n AlertBox,\n }\n})\nexport default class SessionExpired extends Vue {\n private showAlert = true;\n\n mounted(): void {\n setTimeout(() => {\n this.goHome();\n }, 10000)\n }\n\n private goHome() {\n this.$emit('close');\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n\n}\n\n","import { render } from \"./session-expired.html?vue&type=template&id=469a2047&scoped=true&ts=true\"\nimport script from \"./session-expired.ts?vue&type=script&lang=ts\"\nexport * from \"./session-expired.ts?vue&type=script&lang=ts\"\n\nimport \"./session-expired.scss?vue&type=style&index=0&id=469a2047&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-469a2047\"]])\n\nexport default __exports__","import { API_URL, TOKEN_REFRESH_TIME } from \"@/shared/config/config\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport AuthenticationService from \"@/shared/modules/authentication/authentication.service\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport store from \"@/shared/store\";\nimport axios, { AxiosInstance } from \"axios\";\nimport { EventEmitter } from \"events\";\nimport { Vue } from \"vue-class-component\";\nimport { Provide, Options } from 'vue-property-decorator';\nimport * as HttpStatus from 'http-status-codes';\n\nimport SnackBar from \"../shared/components/snackbar/index.vue\";\nimport SessionExpired from \"./components/session-expired/index.vue\";\n\n@Options({\n components: {\n SnackBar,\n SessionExpired,\n }\n})\nexport default class App extends Vue {\n\n private apiAxios?: AxiosInstance;\n private authApiAxios?: AxiosInstance;\n private gettingToken?: boolean;\n private authService?: AuthenticationService;\n private authorizedUser: AuthorizedUser = new AuthorizedUser;\n\n private sessionExpired = false;\n\n @Provide({ to: 'apiService', reactive: true })\n private apiService: MARSApi = new MARSApi();\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n created(): void {\n this.apiAxios = axios.create();\n this.authApiAxios = axios.create();\n\n this.authorizedUser = store.getters.getUserAccount;\n this.authService = new AuthenticationService(this.authorizedUser, this.authApiAxios);\n this.gettingToken = false;\n // this.authService?.checkAuthentication();\n this.apiAxios.interceptors.request.use(async (config) => {\n\n const refreshToken = (this.authorizedUser.session.issued + TOKEN_REFRESH_TIME)\n < Math.round(new Date().getTime() / 1000) && !this.gettingToken;\n\n while (this.gettingToken) {\n await new Promise(resolve => setTimeout(resolve, 100));\n }\n\n try {\n\n if (refreshToken) {\n this.gettingToken = true;\n this.authorizedUser.token.tokenStr = '';\n await this.authService?.checkAuthentication();\n this.gettingToken = false;\n }\n if (config.headers) {\n config.headers.Authorization = 'bearer ' + this.authorizedUser.token.tokenStr;\n }\n return Promise.resolve(config);\n } catch (err) {\n this.gettingToken = false;\n return Promise.reject(config);\n }\n\n });\n\n this.apiAxios.interceptors.response.use((response) => {\n return response;\n }, (error) => {\n this.sessionExpired = false;\n if (error.response?.status == 400 && error.response.data?.errorCode == 10001) {\n // handle by concurrent handler\n } else if (error.response?.status == 400 && error.response.data?.errorCode == 20001) {\n // console.log('*** Session Expired');\n this.sessionExpired = true;\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Network error: ' + error.message);\n }\n if (error.response?.status === HttpStatus.UNAUTHORIZED || error.response?.status === HttpStatus.FORBIDDEN) {\n // document.location.href = RouteN.DCSI.LoginPage.p + '?redirect=' + this.$route.fullPath;\n this.$router.replace({ name: RouteN.NoAccess.n });\n }\n return Promise.reject(error);\n });\n\n this.apiService = new MARSApi(undefined, API_URL, this.apiAxios);\n }\n\n get store(): any {\n return store;\n }\n\n}\n","import { render } from \"./app.html?vue&type=template&id=1c1a2c35&ts=true\"\nimport script from \"./app.ts?vue&type=script&lang=ts\"\nexport * from \"./app.ts?vue&type=script&lang=ts\"\n\nimport \"./app.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, createVNode as _createVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-495770e2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"home\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"banner\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"banner-img\" }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"wording\" }, \" MY LAW SOCIETY \")\n], -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"portal-apps pt-4\"\n}\nconst _hoisted_4 = { style: {\"display\":\"flex\",\"justify-content\":\"center\",\"margin-top\":\"4rem\"} }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_AppCard = _resolveComponent(\"AppCard\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _hoisted_2,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createVNode(_component_AppCard, {\n applications: _ctx.myApplications,\n downloading: _ctx.downloading,\n practisingCertificate: _ctx.myPractisingCertificate,\n onApply: _ctx.applyApplicationClicked,\n onDownload: _ctx.downloadCertificate\n }, null, 8, [\"applications\", \"downloading\", \"practisingCertificate\", \"onApply\", \"onDownload\"])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_4, [\n (_ctx.downloading)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: 'Downloading certificate...'\n }, null, 8, [\"loadingText\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","export function localUrl(): string {\n const result = window.location.href.split('/');\n return result[0] + '//' + result[2];\n}\n\nexport const AZ_INSTRUMENT_KEY_ADMINAPP: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_ADMINAPP as string;\nexport const AZ_INSTRUMENT_KEY_DESKTOPAPP: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_DESKTOPAPP as string;\n\n// export const TOKEN_URL: string = process.env.VUE_APP_TOKEN_URL as string;\n// export const API_URL: string = localUrl().slice(0, -1);\n// export const IDLE_TIMEOUT: number = parseInt(process.env.VUE_APP_IDLE_TIMEOUT, 10);\n// export const TOKEN_REFRESH_TIME: number = parseInt(process.env.VUE_APP_TOKEN_REFRESH_TIME, 10);\n// export const SELF_URL: string = localUrl();\n","import { ApplicationInsights } from '@microsoft/applicationinsights-web'\nimport { AZ_INSTRUMENT_KEY_DESKTOPAPP } from './config/config'\n\nconst appInsights = new ApplicationInsights({\n config: {\n instrumentationKey: AZ_INSTRUMENT_KEY_DESKTOPAPP,\n enableAutoRouteTracking: true,\n /* ...Other Configuration Options... */\n // https://docs.microsoft.com/en-us/azure/azure-monitor/app/javascript\n }\n});\n\n// https://github.com/microsoft/ApplicationInsights-JS#readme\nexport class AppInsights {\n\n public loadAppInsights() {\n appInsights.loadAppInsights();\n }\n\n public trackPageView() {\n appInsights.trackPageView();\n }\n\n public trackEvent(eventString: string) {\n appInsights.trackEvent({ name: eventString })\n }\n\n // public trackPageViewPerformance() {\n // appInsights.trackPageViewPerformance({name : 'somepage', url: 'some url'});\n // }\n\n public trackException(err: string) {\n appInsights.trackException({ exception: new Error(err) });\n }\n\n public trackTrace(msg: string) {\n appInsights.trackTrace({ message: msg });\n }\n\n public trackMetric(n: string, avg: number) {\n appInsights.trackMetric({ name: n, average: avg });\n }\n\n\n // public trackDependencyData(absUrl: string, resCode: number, method: string, id: string) {\n // appInsights.trackDependencyData({ absoluteUrl: absUrl, responseCode: resCode, method: method, id: id });\n // }\n\n public startTrackPage(pageName: string) {\n appInsights.startTrackPage(pageName);\n }\n\n\n public stopTrackPage(pageName: string, url: string, props: any) {\n // appInsights.stopTrackPage(\"pageName\", null, { customProp1: \"some value\" });\n appInsights.stopTrackPage(pageName, url, props);\n }\n\n public startTrackEvent(et: any) {\n appInsights.startTrackEvent(et);\n }\n\n\n // public stopTrackEvent(et: any, url: string, props: any) {\n // // appInsights.stopTrackEvent(\"event\", null, { customProp1: \"some value\" });\n // }\n\n\n public flush() {\n appInsights.flush();\n }\n\n\n}\n","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7d34a782\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"loading-spinner\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"spinner-main\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-spinner fa-spin fa-6x\" })\n], -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_3))\n}","\nimport { Options, Vue } from 'vue-class-component';\n@Options({\n props: {\n }\n})\nexport default class LoadingSpinner extends Vue {\n\n}\n\n","import { render } from \"./loading-spinner.html?vue&type=template&id=7d34a782&scoped=true&ts=true\"\nimport script from \"./loading-spinner.ts?vue&type=script&lang=ts\"\nexport * from \"./loading-spinner.ts?vue&type=script&lang=ts\"\n\nimport \"./loading-spinner.scss?vue&type=style&index=0&id=7d34a782&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7d34a782\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d09ee75\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-cards\" }\nconst _hoisted_2 = { class: \"app-card\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"card-title\" }, \"My Renewals\", -1))\nconst _hoisted_4 = { class: \"cards\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = { key: 1 }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:Registry@lawsociety.com.au\",\n target: \"_blank\"\n}, \"Registry@lawsociety.com.au\", -1))\nconst _hoisted_9 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_11 = [\n _hoisted_10\n]\nconst _hoisted_12 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_13 = [\"onClick\"]\nconst _hoisted_14 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_15 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_16 = { key: 0 }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Specialist Accreditation\", -1))\nconst _hoisted_18 = [\n _hoisted_17\n]\nconst _hoisted_19 = { key: 1 }\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:specialists@lawsociety.com.au\",\n target: \"_blank\"\n}, \"specialists@lawsociety.com.au\", -1))\nconst _hoisted_21 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_23 = [\n _hoisted_22\n]\nconst _hoisted_24 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_25 = [\"onClick\"]\nconst _hoisted_26 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_27 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_28 = { key: 0 }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Associate Renewals\", -1))\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_31 = { key: 1 }\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:Registry@lawsociety.com.au\",\n target: \"_blank\"\n}, \"Registry@lawsociety.com.au\", -1))\nconst _hoisted_33 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_35 = [\n _hoisted_34\n]\nconst _hoisted_36 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_37 = [\"onClick\"]\nconst _hoisted_38 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_39 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_40 = { key: 0 }\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Student Membership\", -1))\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_43 = { key: 1 }\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:student.services@lawsociety.com.au\",\n target: \"_blank\"\n}, \"student.services@lawsociety.com.au\", -1))\nconst _hoisted_45 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_47 = [\n _hoisted_46\n]\nconst _hoisted_48 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_49 = [\"onClick\"]\nconst _hoisted_50 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_51 = {\n key: 1,\n class: \"cards\"\n}\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"card-body mt-4\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"description\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to renew at the moment\")\n ])\n ])\n], -1))\nconst _hoisted_53 = [\n _hoisted_52\n]\nconst _hoisted_54 = { class: \"app-card\" }\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"card-title\" }, \"My Applications\", -1))\nconst _hoisted_56 = { class: \"cards\" }\nconst _hoisted_57 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_58 = { key: 0 }\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Solicitor Membership\", -1))\nconst _hoisted_60 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_61 = { key: 1 }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:Registry@lawsociety.com.au\",\n target: \"_blank\"\n}, \"Registry@lawsociety.com.au\", -1))\nconst _hoisted_63 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_64 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_65 = [\n _hoisted_64\n]\nconst _hoisted_66 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_67 = [\"onClick\"]\nconst _hoisted_68 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_69 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_70 = { key: 0 }\nconst _hoisted_71 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Associate Membership\", -1))\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_73 = { key: 0 }\nconst _hoisted_74 = { key: 1 }\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:Registry@lawsociety.com.au\",\n target: \"_blank\"\n}, \"Registry@lawsociety.com.au\", -1))\nconst _hoisted_76 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_77 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_78 = [\n _hoisted_77\n]\nconst _hoisted_79 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_80 = [\"onClick\"]\nconst _hoisted_81 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_82 = {\n key: 0,\n class: \"description\"\n}\nconst _hoisted_83 = { key: 0 }\nconst _hoisted_84 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Student Membership\", -1))\nconst _hoisted_85 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_86 = { key: 0 }\nconst _hoisted_87 = { key: 1 }\nconst _hoisted_88 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:student.services@lawsociety.com.au\",\n target: \"_blank\"\n}, \"student.services@lawsociety.com.au\", -1))\nconst _hoisted_89 = {\n key: 1,\n class: \"description\"\n}\nconst _hoisted_90 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n], -1))\nconst _hoisted_91 = [\n _hoisted_90\n]\nconst _hoisted_92 = {\n key: 2,\n class: \"action\"\n}\nconst _hoisted_93 = [\"onClick\"]\nconst _hoisted_94 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_95 = {\n key: 1,\n class: \"cards\"\n}\nconst _hoisted_96 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"card-body mt-4\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"description\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"There is nothing to apply for at the moment\")\n ])\n ])\n], -1))\nconst _hoisted_97 = [\n _hoisted_96\n]\nconst _hoisted_98 = {\n key: 0,\n class: \"app-card\"\n}\nconst _hoisted_99 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"card-title\" }, \"Other\", -1))\nconst _hoisted_100 = { class: \"cards\" }\nconst _hoisted_101 = { class: \"card-body mt-4\" }\nconst _hoisted_102 = { class: \"description\" }\nconst _hoisted_103 = { class: \"action\" }\nconst _hoisted_104 = [\"disabled\", \"onClick\"]\nconst _hoisted_105 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", { class: \"mt-2 pcr-helptext\" }, \" You do not need a physical copy of your practising certificate to demonstrate your entitlement to engage in legal practice \", -1))\nconst _hoisted_106 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center\" }, \"Specialist Accreditation\", -1))\nconst _hoisted_107 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\" Specialists with accreditations in more than one area of law are required to lodge their renewals using a separate form. Please access this form \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/specialist-accreditation\",\n target: \"_blank\"\n }, \"here\"),\n /*#__PURE__*/_createTextVNode(\". If you require assistance, please contact \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:specialists@lawsociety.com.au\",\n target: \"_blank\"\n }, \"specialists@lawsociety.com.au\"),\n /*#__PURE__*/_createTextVNode(\" with any queries. \")\n], -1))\nconst _hoisted_108 = { class: \"right\" }\n\nexport function render(_ctx, _cache) {\n const _component_AlertBoxTypeTwo = _resolveComponent(\"AlertBoxTypeTwo\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n (_ctx.myRenewals?.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.myRenewals, (r) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n (r.applicationType.id == 1)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"card-body mt-4\", r.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (r.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n (r.applicationStatus?.id < 2 && r.lsAppStatus != 'SUBMITTED')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"strong\", null, _toDisplayString(r.description), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createTextVNode(\"Your Practising Certificate Renewal has been submitted for this year. Please contact \"),\n _hoisted_8,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_9, _hoisted_11)),\n (r.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.renew(r))\n }, \"Renew Now\", 8, _hoisted_13)\n ]))\n : _createCommentVNode(\"\", true),\n (r.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (r.applicationType.id == 3)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"card-body mt-4\", (r.applicationStatus?.id > 1 && r.applicationStatus?.id !== 5) || (r.applicationStatus?.id == 5 && r.lsAppStatus == 'SUBMITTED') ? 'applied' : ''])\n }, [\n (r.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_15, [\n ((r.applicationStatus?.id < 2 && r.lsAppStatus != 'SUBMITTED') || (r.applicationStatus?.id == 5 && r.lsAppStatus.includes('MULTIPLE')))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, _hoisted_18))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n (r.applicationStatus?.id == 2 || r.applicationStatus?.id == 4 || (r.applicationStatus?.id == 5 && r.lsAppStatus == 'SUBMITTED'))\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createTextVNode(\" Your Specialist Accreditation Renewal has been submitted for this year. Please contact \"),\n _hoisted_20,\n _createTextVNode(\" with any queries. \")\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_21, _hoisted_23)),\n (r.applicationStatus?.id < 2 || (r.applicationStatus?.id == 5 && r.lsAppStatus.includes('MULTIPLE')))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.renew(r))\n }, \"Renew Now\", 8, _hoisted_25)\n ]))\n : _createCommentVNode(\"\", true),\n (r.applicationStatus?.id > 1 && r.applicationStatus?.id !== 5 || (r.applicationStatus?.id == 5 && r.lsAppStatus == 'SUBMITTED'))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_26, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (r.applicationType.id == 5)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"card-body mt-4\", r.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (r.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n (r.applicationStatus?.id < 2 && r.lsAppStatus != 'SUBMITTED')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _hoisted_30,\n _createElementVNode(\"small\", null, \"Apply for membership on year \" + _toDisplayString(r.applicationYearName), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_31, [\n _createTextVNode(\"Your Associate Membership Renewal has been submitted for this year. Please contact \"),\n _hoisted_32,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_33, _hoisted_35)),\n (r.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.renew(r))\n }, \"Renew Now\", 8, _hoisted_37)\n ]))\n : _createCommentVNode(\"\", true),\n (r.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_38, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (r.applicationType.id == 7)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 3,\n class: _normalizeClass([\"card-body mt-4\", r.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (r.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_39, [\n (r.applicationStatus?.id < 2 && r.lsAppStatus != 'SUBMITTED')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _hoisted_41,\n _hoisted_42,\n _createElementVNode(\"small\", null, \"Apply for membership on year \" + _toDisplayString(r.applicationYearName), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_43, [\n _createTextVNode(\"Your Student Membership Renewal has been submitted for this year. Please contact \"),\n _hoisted_44,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_45, _hoisted_47)),\n (r.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.renew(r))\n }, \"Renew Now\", 8, _hoisted_49)\n ]))\n : _createCommentVNode(\"\", true),\n (r.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_50, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n }), 256))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_51, _hoisted_53))\n ]),\n _createElementVNode(\"div\", _hoisted_54, [\n _hoisted_55,\n (_ctx.myApplications?.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.myApplications, (m) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_56, [\n (m.applicationType.id == 2)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"card-body mt-4\", m.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (m.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_57, [\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_58, [\n _hoisted_59,\n _hoisted_60,\n _createElementVNode(\"small\", null, \"Apply for membership on year \" + _toDisplayString(m.applicationYearName), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_61, [\n _createTextVNode(\"Your Solicitor Membership application for \" + _toDisplayString(m.applicationYearName) + \" has been submitted. Please contact \", 1),\n _hoisted_62,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_63, _hoisted_65)),\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_66, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.apply(m))\n }, \"Apply Now\", 8, _hoisted_67)\n ]))\n : _createCommentVNode(\"\", true),\n (m.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_68, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (m.applicationType.id == 4)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"card-body mt-4\", m.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (m.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_70, [\n _hoisted_71,\n _hoisted_72,\n (!m.isInRenewalPeriod)\n ? (_openBlock(), _createElementBlock(\"small\", _hoisted_73, \"Apply for membership on year \" + _toDisplayString(m.applicationYearName), 1))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_74, [\n _createTextVNode(\" Your Associate Membership application has been submitted. Please contact \"),\n _hoisted_75,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_76, _hoisted_78)),\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_79, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.apply(m))\n }, \"Apply Now\", 8, _hoisted_80)\n ]))\n : _createCommentVNode(\"\", true),\n (m.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_81, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (m.applicationType.id == 6)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"card-body mt-4\", m.applicationStatus?.id > 1 ? 'applied' : ''])\n }, [\n (m.applicationStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_82, [\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_83, [\n _hoisted_84,\n _hoisted_85,\n (!m.isInRenewalPeriod)\n ? (_openBlock(), _createElementBlock(\"small\", _hoisted_86, \"Apply for membership on year \" + _toDisplayString(m.applicationYearName), 1))\n : _createCommentVNode(\"\", true)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_87, [\n _createTextVNode(\" Your Student Membership application has been submitted. Please contact \"),\n _hoisted_88,\n _createTextVNode(\" with any queries. \")\n ]))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_89, _hoisted_91)),\n (m.applicationStatus?.id < 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_92, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: $event => (_ctx.apply(m))\n }, \"Apply Now\", 8, _hoisted_93)\n ]))\n : _createCommentVNode(\"\", true),\n (m.applicationStatus?.id > 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_94, \" Applied \"))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n }), 256))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_95, _hoisted_97))\n ]),\n (_ctx.practisingCertificate?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_98, [\n _hoisted_99,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.practisingCertificate, (r) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_100, [\n _createElementVNode(\"div\", _hoisted_101, [\n _createElementVNode(\"div\", _hoisted_102, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"strong\", null, _toDisplayString(r.description), 1)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_103, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: _ctx.downloading,\n onClick: $event => (_ctx.download(r.pcId))\n }, \"Download Certificate\", 8, _hoisted_104)\n ])\n ]),\n _hoisted_105\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showSARMessage)\n ? (_openBlock(), _createBlock(_component_AlertBoxTypeTwo, {\n key: 1,\n class: \"alert-box\",\n onClose: _cache[1] || (_cache[1] = $event => {_ctx.showSARMessage = !_ctx.showSARMessage;})\n }, {\n header: _withCtx(() => [\n _hoisted_106\n ]),\n body: _withCtx(() => [\n _hoisted_107\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_108, [\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[0] || (_cache[0] = $event => {_ctx.showSARMessage = !_ctx.showSARMessage;})\n }, \"Close\")\n ])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderSlot as _renderSlot, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"alert-box-type-two\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = {\n class: \"modal-wrapper\",\n ref: \"modalWrapper\"\n}\nconst _hoisted_4 = { class: \"modal-container\" }\nconst _hoisted_5 = { class: \"modal-header\" }\nconst _hoisted_6 = { class: \"modal-body\" }\nconst _hoisted_7 = { class: \"modal-footer\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n (_ctx.showCloseIcon)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"fal fa-times close-icon\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.$emit('close')))\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _createTextVNode(\" default header \")\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"body\", {}, () => [\n _createTextVNode(\" default body \")\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _renderSlot(_ctx.$slots, \"footer\", {}, () => [\n _createTextVNode(\" default footer \"),\n _createElementVNode(\"button\", {\n class: \"modal-default-button\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.$emit('close')))\n }, \" OK \")\n ])\n ])\n ])\n ], 512)\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from \"vue-class-component\";\n\n@Options({\n props: {\n modalOpened: Boolean,\n showCloseIcon: {\n type: Boolean,\n default: false,\n },\n },\n})\nexport default class AlertBoxTypeTwo extends Vue {\n private modalOpened!: boolean;\n private showCloseIcon!: boolean;\n\n mounted() {\n if (!this.modalOpened) {\n document.body.classList.add(\"modal-open\");\n }\n }\n\n beforeUnmount() {\n if (!this.modalOpened) {\n document.body.classList.remove(\"modal-open\");\n }\n }\n}\n","import { render } from \"./alert-box-type-two.html?vue&type=template&id=ef96bc96&ts=true\"\nimport script from \"./alert-box-type-two.ts?vue&type=script&lang=ts\"\nexport * from \"./alert-box-type-two.ts?vue&type=script&lang=ts\"\n\nimport \"./alert-box-type-two.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { Options, Prop, Vue } from \"vue-property-decorator\";\nimport { Application, PractisingCertificate } from \"@/shared/modules/typescript-api-client/models\";\nimport AlertBoxTypeTwo from \"@/shared/components/alert-box-type-two/index.vue\";\n\n@Options({\n components: {\n AlertBoxTypeTwo\n }\n})\nexport default class AppCard extends Vue {\n @Prop()\n private applications!: Application[];\n\n @Prop()\n private practisingCertificate!: PractisingCertificate[];\n\n @Prop()\n private downloading!: boolean;\n\n private showSARMessage = false;\n\n // *** ApplicationTypes: = [\n // {\n // \"id\": 1,\n // \"name\": \"Practising Certificate and Solicitor Membership\",\n // \"description\": \"Practising Certificate and Solicitor Membership\"\n // },\n // {\n // \"id\": 2,\n // \"name\": \"Solicitor Membership\",\n // \"description\": \"Solicitor Membership\"\n // },\n // {\n // \"id\": 3,\n // \"name\": \"SpecAccRenewals\",\n // \"description\": \"Specialist Accreditation Renewals\"\n // },\n // {\n // \"id\": 4,\n // \"name\": \"Associate New\",\n // \"description\": \"Associate Membership New\"\n // },\n // {\n // \"id\": 5,\n // \"name\": \"Associate Renewals\",\n // \"description\": \"Associate Membership Renewals\"\n // },\n // {\n // \"id\": 6,\n // \"name\": \"Student Membership New\",\n // \"description\": \"Student Membership\"\n // },\n // {\n // \"id\": 7,\n // \"name\": \"Student Membership Renew\",\n // \"description\": \"Student Membership\"\n // }\n // ],\n\n get myRenewals(): Application[] {\n return this.applications.filter(a => {\n return a.applicationClass.id == 2; // My Renewals\n });\n }\n\n get myApplications(): Application[] {\n return this.applications.filter(a => {\n return a.applicationClass.id == 1; // My Applications\n });\n }\n\n private renew(app: Application): void {\n if (app.applicationStatus?.id == 5) {\n this.showSARMessage = true;\n } else {\n this.$emit('apply', app);\n }\n }\n\n private apply(app: Application): void {\n this.$emit('apply', app);\n }\n\n private download(pcId: number): void {\n this.$emit('download', pcId);\n }\n\n}\n\n","import { render } from \"./app-card.html?vue&type=template&id=5d09ee75&scoped=true&ts=true\"\nimport script from \"./app-card.ts?vue&type=script&lang=ts\"\nexport * from \"./app-card.ts?vue&type=script&lang=ts\"\n\nimport \"./app-card.scss?vue&type=style&index=0&id=5d09ee75&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5d09ee75\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d91030aa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"loading-indicator\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-spinner fa-spin fa-2x\" })\n], -1))\nconst _hoisted_3 = { key: 0 }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n _hoisted_2,\n (_ctx.showLoadingText)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_3, _toDisplayString(_ctx.loadingText), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","import { Options, Prop, Vue } from \"vue-property-decorator\";\n\n@Options({})\nexport default class LoadingIndicator extends Vue {\n\n @Prop({default: true})\n public showLoadingText!: boolean;\n\n @Prop({default: 'Loading'})\n public loadingText!: string;\n}\n","import { render } from \"./loading-indicator.html?vue&type=template&id=d91030aa&scoped=true&ts=true\"\nimport script from \"./loading-indicator.ts?vue&type=script&lang=ts\"\nexport * from \"./loading-indicator.ts?vue&type=script&lang=ts\"\n\nimport \"./loading-indicator.scss?vue&type=style&index=0&id=d91030aa&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d91030aa\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4ff0bc63\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"confirm-dialog\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"popup-modal\"\n}\nconst _hoisted_3 = { class: \"dialog-box\" }\nconst _hoisted_4 = { style: {\"text-align\":\"center\"} }\nconst _hoisted_5 = [\"innerHTML\"]\nconst _hoisted_6 = { class: \"btns right\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (_ctx.isVisible)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times close\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }),\n _createElementVNode(\"h3\", _hoisted_4, _toDisplayString(_ctx.title), 1),\n _createElementVNode(\"p\", { innerHTML: _ctx.message }, null, 8, _hoisted_5),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[1] || (_cache[1] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }, _toDisplayString(_ctx.cancelButton), 1),\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml ml-2\",\n onClick: _cache[2] || (_cache[2] = (...args) => (_ctx._confirm && _ctx._confirm(...args)))\n }, _toDisplayString(_ctx.okButton), 1)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\n\n@Options({\n props: {\n modalOpened: Boolean,\n },\n components: {}\n})\nexport default class ConfirmDialog extends Vue {\n private modalOpened!: boolean;\n\n isVisible = false;\n\n title = '';\n message = '';// Main text content\n okButton = 'OK'; // Text for confirm button; leave it empty because we don't know what we're using it for\n cancelButton = 'Cancel'; // text for cancel button\n\n // Private variables\n private resolvePromise: any;\n private rejectPromise: any;\n\n private open() {\n this.isVisible = true;\n if (!this.modalOpened) {\n document.body.classList.add('modal-open');\n }\n }\n\n private close() {\n this.isVisible = false;\n if (!this.modalOpened) {\n document.body.classList.remove('modal-open');\n }\n }\n\n public show(opts: any = {}) {\n this.title = opts?.title || 'CANCEL ALERT';\n this.message = opts?.message || 'Are you sure?';\n this.okButton = opts?.okButton || 'OK';\n this.cancelButton = opts?.cancelButton || 'Cancel';\n\n this.open();\n // Return promise so the caller can get results\n return new Promise((resolve, reject) => {\n this.resolvePromise = resolve\n this.rejectPromise = reject\n })\n }\n\n _confirm() {\n this.close()\n this.resolvePromise(true)\n }\n\n _cancel() {\n this.close()\n this.resolvePromise(false)\n // Or you can throw an error\n // this.rejectPromise(new Error('User cancelled the dialogue'))\n }\n\n}\n\n","import { render } from \"./confirm-dialogue.html?vue&type=template&id=4ff0bc63&scoped=true&ts=true\"\nimport script from \"./confirm-dialogue.ts?vue&type=script&lang=ts\"\nexport * from \"./confirm-dialogue.ts?vue&type=script&lang=ts\"\n\nimport \"./confirm-dialogue.scss?vue&type=style&index=0&id=4ff0bc63&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4ff0bc63\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport AppCard from \"../app-card/index.vue\";\nimport { Application, PractisingCertificate } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Section } from \"@/shared/components/header-stepper/nav-step\";\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\n\n@Options({\n components: {\n LoadingSpinner,\n LoadingIndicator,\n AppCard,\n ConfirmDialogue,\n }\n})\nexport default class Home extends Vue {\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private applicationStatus: any[] = [];\n private myApplications: Application[] = [];\n private myPractisingCertificate: PractisingCertificate[] = [];\n private isLoadingData = true;\n private downloading = false;\n private popovers: any[] = [];\n\n created() {\n this.getApplicationStatus();\n }\n\n mounted() {\n this.getMyApplications();\n store.dispatch('setAppRenew', {});\n store.dispatch('setOnlineApplication', {});\n window.sessionStorage.removeItem('pcrFormData');\n window.sessionStorage.removeItem('smAppFormData');\n }\n\n private async getApplicationStatus() {\n await this.apiService.CodeApi?.apiV1CodeGetApplicationStatusesGet()\n .then(res => {\n this.applicationStatus = res.data.data;\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to get applications status: ' + err);\n // this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get application status');\n this.showErrorMsg();\n })\n }\n\n private applyApplicationClicked(app: Application): void {\n store.dispatch('setAppRenew', app);\n store.dispatch('setOnlineApplication', app);\n switch (app.applicationType?.id) {\n case 1: // PC\n this.$router.push({ name: RouteN.Mars.PcRenewOverview.n, query: { appId: app.id } });\n break;\n case 2: // SM\n this.$router.push({ name: RouteN.Mars.SmApplication.n, query: { appId: app.id } });\n break;\n case 3: // SAR\n this.$router.push({ name: RouteN.Mars.SarApplication.n, query: { appId: app.id } });\n break;\n case 4: // AMN\n this.$router.push({ name: RouteN.Mars.AmnApplication.n, query: { appId: app.id } });\n break;\n case 5: // AMR\n this.$router.push({ name: RouteN.Mars.AmrApplication.n, query: { appId: app.id } });\n break;\n case 6: // STN\n this.$router.push({ name: RouteN.Mars.StnApplication.n, query: { appId: app.id } });\n break;\n case 7: // STR\n this.$router.push({ name: RouteN.Mars.StrApplication.n, query: { appId: app.id } });\n break;\n default:\n break;\n }\n }\n\n private async getMyApplications() {\n this.isLoadingData = true;\n try {\n\n const resp0: any = await this.apiService.ApplicationApi?.apiV1ApplicationGetMyApplicationsGet();\n const resp1: any = await this.apiService.ApplicationApi?.apiV1ApplicationGetMyPractisingCertificateGet();\n const resp2: any = await this.apiService.PageApi?.apiV1PageGetAllPageContentsGet();\n this.myApplications = resp0.data.data || [];\n this.myPractisingCertificate = resp1.data.data;\n // this.insertMockData();\n\n // store all popovers\n for (let p = 0; p < resp2.data.data.length; p++) {\n this.popovers.push({\n key: resp2.data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp2.data.data[p].content as string,\n isShow: resp2.data.data[p].isShow as boolean,\n title: resp2.data.data[p].title as string,\n pageId: resp2.data.data[p].pageId as number,\n })\n }\n\n store.dispatch('setPopovers', this.popovers);\n\n this.isLoadingData = false;\n } catch (err) {\n this.ai.trackException('Error, Unable to get my applications data: ' + err);\n // this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get my applications data');\n this.showErrorMsg();\n this.isLoadingData = false;\n } finally {\n this.isLoadingData = false;\n }\n\n }\n\n private insertMockData() {\n // Mock Data for SAR and AMN - Remove when data is ready\n this.myApplications.push(\n {\n \"id\": 1134,\n \"key\": \"SARNEW\",\n \"applicationStatus\": {\n \"id\": 1,\n \"name\": \"New\",\n \"description\": \"New\"\n },\n \"applicationClass\": {\n \"id\": 2,\n \"name\": \"Renew\",\n \"description\": \"Renew\"\n },\n \"applicationType\": {\n \"id\": 3,\n \"name\": \"Specialist Accreditation Renewal\",\n \"description\": \"Specialist Accreditation Renewal\"\n },\n \"applicationYearName\": \"2023/24\",\n \"description\": \"Specialist Accreditation Renewal\",\n \"lsAppId\": \"1619755\",\n \"lsAppStatus\": \"new\"\n },\n {\n \"id\": 134,\n \"key\": \"AMN\",\n \"applicationStatus\": {\n \"id\": 1,\n \"name\": \"New\",\n \"description\": \"New\"\n },\n \"applicationClass\": {\n \"id\": 1,\n \"name\": \"New\",\n \"description\": \"New\"\n },\n \"applicationType\": {\n \"id\": 4,\n \"name\": \"Associate Membership\",\n \"description\": \"Associate Membership\"\n },\n \"applicationYearName\": \"2023/24\",\n \"description\": \"Associate Membership\",\n \"lsAppId\": \"1619733455\",\n \"lsAppStatus\": \"new\"\n }\n );\n }\n\n private stringToBlob(bs: string) {\n const byteString = window.atob(bs);\n const arrayBuffer = new ArrayBuffer(byteString.length);\n const int8Array = new Uint8Array(arrayBuffer);\n for (let i = 0; i < byteString.length; i++) {\n int8Array[i] = byteString.charCodeAt(i);\n }\n const blob = new Blob([int8Array], { type: 'application/pdf' });\n return blob;\n }\n\n private downloadCertificate(pcId: number) {\n this.downloading = true;\n this.apiService.ApplicationApi?.apiV1ApplicationGetPractisingCertificateFilePcIdGet(pcId)\n .then(res => {\n const file = res.data.data.data;\n const blob = this.stringToBlob(file.base64AsString);\n const documentURL = window.URL.createObjectURL(blob);\n const downloadLink = document.createElement('a');\n const fileName = file.fileName;\n downloadLink.href = documentURL;\n downloadLink.download = fileName;\n downloadLink.click();\n this.downloading = false;\n })\n .catch(err => {\n this.downloading = false;\n console.log(err);\n this.ai.trackException('Error, Unable to get file for download: ' + err);\n // this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get file for download, PC ID: ' + pcId);\n this.showErrorMsg();\n })\n }\n\n get currentApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private showErrorMsg() {\n const _msg = 'We\\'re sorry, an error has occurred. Please try refreshing your browser to see if that resolves the issue. If you continue to see this message after refreshing, please wait for 5 minutes and try again. We apologise for any inconvenience this may cause.';\n this.eventCtrl.emit('show-snackbar', 'error', _msg);\n }\n}\n\n","import { render } from \"./home.html?vue&type=template&id=495770e2&scoped=true&ts=true\"\nimport script from \"./home.ts?vue&type=script&lang=ts\"\nexport * from \"./home.ts?vue&type=script&lang=ts\"\n\nimport \"./home.scss?vue&type=style&index=0&id=495770e2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-495770e2\"]])\n\nexport default __exports__","\nexport function render(_ctx, _cache) {\n return null\n}","// import { UserAccount, ClientTypeID, ClientType } from '../user/user-account';\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\nimport AuthenticationService from './authentication.service';\nimport { AuthenticationStatusType, AuthenticationStatus } from './authentication-status';\n\nexport class Authentication {\n\n private authService: AuthenticationService;\n private loginCallback: (x: AuthenticationStatusType) => void;\n\n constructor(\n public authorizedUser: AuthorizedUser\n ) {\n this.authService = new AuthenticationService(this.authorizedUser);\n this.loginCallback = null as any;\n }\n\n public runAuthCheck(cb: () => void): void {\n this.loginCallback = cb;\n this.productionAuth();\n }\n\n public logout(cb: () => void): void {\n this.clearBrowserStorages();\n this.deleteAllCookies();\n\n if (typeof cb === 'function') {\n cb();\n }\n }\n\n private clearBrowserStorages(): void {\n try {\n localStorage.clear();\n sessionStorage.clear();\n } catch (err) {\n // console.log(err);\n }\n }\n\n\n private deleteAllCookies() {\n const cookies: string[] = document.cookie.split(';');\n for (const cookie of cookies) {\n const eqPos: number = cookie.indexOf('=');\n const name: string = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;\n document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:00 GMT';\n }\n }\n\n\n private productionAuth(): void {\n this.authService.checkAuthentication()\n .then((res: any) => {\n this.productionVerify();\n })\n .catch((err: any) => {\n this.productionVerify();\n });\n }\n\n private productionVerify(): void {\n // const v1: ClientType = this.userAccount.clientType;\n const v2: AuthenticationStatus = this.authorizedUser.authenticationStatus;\n // const c1: boolean = v1 === ClientTypeID.DesktopApp;\n const c2: boolean = v2 === AuthenticationStatusType.LoggedIn;\n const c3: boolean = v2 === AuthenticationStatusType.NotLogin;\n\n this.authorizedUser.authenticationStatus = c2 ? AuthenticationStatusType.AppAccessPermitted : AuthenticationStatusType.NotLogin;\n\n if (typeof this.loginCallback === 'function') {\n this.loginCallback(this.authorizedUser.authenticationStatus);\n }\n }\n}\n","import { Options, Vue } from \"vue-class-component\";\nimport { Authentication } from '@/shared/modules/authentication/authentication';\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\nimport { SELF_URL } from '@/shared/config/config';\nimport { Url } from '@/shared/config/url';\nimport store from '@/shared/store';\n\n@Options({})\nexport default class Logout extends Vue {\n\n private authentication: Authentication = new Authentication(\n this.userAccount);\n\n created() {\n this.authentication.logout(this.logoutCallBack);\n }\n\n private logoutCallBack(): void {\n setTimeout( () => { document.location.href = SELF_URL + Url.Logout; }, 250);\n }\n\n get userAccount(): AuthorizedUser {\n return store.getters.getUserAccount;\n }\n}\n","import { render } from \"./logout.html?vue&type=template&id=68da5c46&scoped=true&ts=true\"\nimport script from \"./logout.ts?vue&type=script&lang=ts\"\nexport * from \"./logout.ts?vue&type=script&lang=ts\"\n\nimport \"./logout.scss?vue&type=style&index=0&id=68da5c46&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-68da5c46\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64c9fbf7\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"auto-login\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col-12-sm col-12\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"ls-slate\" }, \"Authenticating...\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_StdPageLayout, null, {\n \"body-content\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createVNode(_component_LoadingSpinner)\n ])\n ])\n ])\n ]),\n _: 1\n })\n ]))\n}","import { resolveComponent as _resolveComponent, createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-34607d2a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"std-page-layout-main\" }\n\nexport function render(_ctx, _cache) {\n const _component_PageHeader = _resolveComponent(\"PageHeader\")\n const _component_PageFooter = _resolveComponent(\"PageFooter\")\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_PageHeader, {\n showAppMenu: _ctx.showAccountControl,\n isExternal: _ctx.isExternal\n }, null, 8, [\"showAppMenu\", \"isExternal\"]),\n _renderSlot(_ctx.$slots, \"body-content\", {}, undefined, true),\n _createVNode(_component_PageFooter, {\n baseYear: _ctx.baseYear,\n currentYear: _ctx.currentYear,\n class: \"footer\"\n }, null, 8, [\"baseYear\", \"currentYear\"])\n ]))\n}","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/logo.svg'\nimport _imports_1 from '@/assets/logo_vertical.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-726e8a3e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"section-header\" }\nconst _hoisted_2 = { class: \"page-header-main container\" }\nconst _hoisted_3 = { class: \"page-header\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n class: \"logo\",\n src: _imports_0\n}, null, -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n class: \"logo-small\",\n src: _imports_1\n}, null, -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"app-name\"\n}\nconst _hoisted_7 = [\"innerHTML\"]\n\nexport function render(_ctx, _cache) {\n const _component_AccountInfoPanel = _resolveComponent(\"AccountInfoPanel\")\n const _component_AlertBox = _resolveComponent(\"AlertBox\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n (_ctx.appName)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_6, _toDisplayString(_ctx.appName), 1))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showAppMenu)\n ? (_openBlock(), _createBlock(_component_AccountInfoPanel, {\n key: 0,\n isExternal: _ctx.isExternal\n }, null, 8, [\"isExternal\"]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showCancelAlertBox)\n ? (_openBlock(), _createBlock(_component_AlertBox, {\n key: 0,\n onClose: _cache[2] || (_cache[2] = $event => (_ctx.showCancelAlertBox = false))\n }, {\n header: _withCtx(() => [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.alertBoxTitle), 1)\n ]),\n body: _withCtx(() => [\n _createElementVNode(\"div\", { innerHTML: _ctx.alertBoxBody }, null, 8, _hoisted_7)\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.exitApplication()))\n }, \"Yes\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary sml\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showCancelAlertBox = false))\n }, \"No\")\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, withModifiers as _withModifiers, resolveComponent as _resolveComponent, createBlock as _createBlock, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0558ac43\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"account-info-panel\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"user-info-preview\"\n}\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = { class: \"menuButton-icon\" }\nconst _hoisted_6 = { class: \"menuButton-text\" }\n\nexport function render(_ctx, _cache) {\n const _component_ApplicationMenu = _resolveComponent(\"ApplicationMenu\")\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.appAccessPermitted)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_ctx.infoTextRow0)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_3, _toDisplayString(_ctx.infoTextRow0), 1))\n : _createCommentVNode(\"\", true),\n (_ctx.infoTextRow1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(_ctx.infoTextRow1), 1))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = _withModifiers((...args) => (_ctx.onMenuClicked && _ctx.onMenuClicked(...args)), [\"prevent\",\"stop\"])),\n ref: \"menuButton\",\n class: \"menuButton\"\n }, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(['far', 'fa-3x', _ctx.menuIcon, 'icon'])\n }, null, 2)\n ]),\n _createElementVNode(\"div\", _hoisted_6, _toDisplayString(_ctx.menuButtonText), 1)\n ], 512),\n _createVNode(_Transition, {\n name: \"fade\",\n mode: \"out-in\"\n }, {\n default: _withCtx(() => [\n (_ctx.showMenu)\n ? (_openBlock(), _createBlock(_component_ApplicationMenu, {\n key: 0,\n ref: \"dropDownMenu\",\n show: _ctx.showMenu,\n isExternal: _ctx.isExternal\n }, null, 8, [\"show\", \"isExternal\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}","import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, withDirectives as _withDirectives, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-74c8f2f5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-menu\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Contact Us\", -1))\nconst _hoisted_3 = [\n _hoisted_2\n]\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"FAQs\", -1))\nconst _hoisted_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = { class: \"section-start\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"My Account\", -1))\nconst _hoisted_8 = [\n _hoisted_7\n]\nconst _hoisted_9 = {\n key: 1,\n class: \"section-start\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Logout\", -1))\nconst _hoisted_11 = [\n _hoisted_10\n]\n\nexport function render(_ctx, _cache) {\n return _withDirectives((_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"ul\", null, [\n (_ctx.isExternal)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.goToContactUs()))\n }, _hoisted_3)\n ]),\n _createElementVNode(\"li\", null, [\n _createElementVNode(\"button\", {\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.goToFAQ()))\n }, _hoisted_5)\n ]),\n _createElementVNode(\"li\", _hoisted_6, [\n _createElementVNode(\"button\", {\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.$router.push({ name: _ctx.RouteN.Mars.LogoutPage.n})))\n }, _hoisted_8)\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (!_ctx.isExternal)\n ? (_openBlock(), _createElementBlock(\"li\", _hoisted_9, [\n _createElementVNode(\"button\", {\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.$router.push({ name: _ctx.RouteN.Mac.LogoutPage.n})))\n }, _hoisted_11)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ], 512)), [\n [_vShow, _ctx.show]\n ])\n}","export interface SectionName {\n Details: string;\n Review: string;\n Payment: string;\n Prepayment: string;\n Confirmation: string;\n\n Add: string;\n Update: string;\n\n}\n\nexport const Section: SectionName = {\n Details: 'details',\n Review: 'review',\n Payment: 'payment',\n Prepayment: 'prepayment',\n Confirmation: 'confirmation',\n Add: 'add',\n Update: 'update',\n\n};\n","import { Options, Vue } from 'vue-class-component';\n// import { UserAccount } from '@/components/user/user-account';\nimport { RouteN, RouteName } from '@/shared/constants/route-name';\nimport { Prop } from 'vue-property-decorator';\nimport { SectionName, Section } from '@/shared/constants/section-name';\nimport UserDefine from '@/assets/config/user-define.json';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\n\n@Options({})\nexport default class ApplicationMenuComponent extends Vue {\n\n @Prop({ required: true })\n public show!: boolean;\n\n @Prop({ default: null })\n private isExternal!: boolean;\n\n // get userAccount(): UserAccount {\n // return this.$store.getters.getUserAccount;\n // }\n\n get RouteN(): RouteName {\n return RouteN;\n }\n\n get Section(): SectionName {\n return Section;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private newContract(type: number) {\n this.eventCtrl.emit('new-contract', type);\n }\n\n private goToFAQ() {\n window.open(UserDefine[0].faq_url, 'blank');\n }\n\n private goToAboutDCS() {\n // window.open(UserDefine[0].about_dcs_url, 'blank');\n }\n\n private goToContactUs() {\n window.open(UserDefine[0].contact_us_url, 'blank');\n }\n\n}\n","import { render } from \"./application-menu.html?vue&type=template&id=74c8f2f5&scoped=true&ts=true\"\nimport script from \"./application-menu.ts?vue&type=script&lang=ts\"\nexport * from \"./application-menu.ts?vue&type=script&lang=ts\"\n\nimport \"./application-menu.scss?vue&type=style&index=0&id=74c8f2f5&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-74c8f2f5\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\nimport { Prop, Ref } from 'vue-property-decorator';\nimport ApplicationMenu from '@/shared/components/page-header/application-menu/index.vue';\nimport { RouteN } from '@/shared/constants/route-name';\nimport { AuthorizedUser } from '@/shared/models/authorized-user';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\nimport { AuthenticationStatusType } from '@/shared/modules/authentication/authentication-status';\n// import { _strEndsWithPoly } from '@microsoft/applicationinsights-core-js/types/JavaScriptSDK/HelperFuncs';\n\n@Options({\n components: {\n ApplicationMenu\n }\n})\nexport default class AccountInfoPanel extends Vue {\n\n\n @Prop({ default: null })\n private isExternal!: boolean;\n\n @Ref('dropDownMenu')\n private dropDownMenuUI!: HTMLElement;\n\n public showMenu = false;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n created(): void {\n window.addEventListener('click', this.clickedElement);\n }\n\n beforeUnmount(): void {\n window.removeEventListener('click', this.clickedElement);\n }\n\n private clickedElement(e: MouseEvent): void | boolean {\n const el: HTMLElement = this.dropDownMenuUI;\n const elBut: HTMLElement = this.dropDownMenuUI;\n const target: HTMLElement = e.target as HTMLElement;\n if (el !== target && elBut !== target) {\n this.showMenu = false;\n }\n }\n\n private onMenuClicked() {\n if (!this.isExternal) {\n switch (this.$route.name) {\n default:\n this.showMenu = !this.showMenu;\n break;\n }\n } else {\n switch (this.$route.name) {\n case RouteN.Mars.Home.n:\n this.showMenu = !this.showMenu;\n break;\n case RouteN.Mars.PcRenew.n:\n case RouteN.Mars.PcNoRenew.n:\n case RouteN.Mars.SmApplication.n:\n case RouteN.Mars.SarApplication.n:\n case RouteN.Mars.SaNrApplication.n:\n case RouteN.Mars.StnApplication.n:\n case RouteN.Mars.StrApplication.n:\n case RouteN.Mars.AmnApplication.n:\n case RouteN.Mars.AmrApplication.n:\n if (this.isConfirmationPage) {\n this.showMenu = !this.showMenu;\n } else if(!this.$route.query.sec) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n } else {\n this.cancelApplicationClick();\n }\n break;\n default:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n }\n }\n\n\n }\n\n get infoTextRow0(): string {\n try {\n return this.userAccount?.user?.firstName + ' ' + this.userAccount?.user?.lastName;\n } catch (err) {\n console.log(err);\n return '';\n }\n }\n\n get infoTextRow1(): string {\n try {\n if (this.isExternal) {\n return 'LawID ' + this.userAccount?.user?.lawId;\n } else {\n return '';\n }\n } catch (err) {\n console.log(err);\n return '';\n }\n }\n\n get menuButtonText(): string {\n if (this.isExternal) {\n switch (this.$route.name) {\n case RouteN.Mars.Home.n:\n return 'Menu';\n case RouteN.Mars.PcRenew.n:\n case RouteN.Mars.PcNoRenew.n:\n case RouteN.Mars.SmApplication.n:\n case RouteN.Mars.SarApplication.n:\n case RouteN.Mars.SaNrApplication.n:\n case RouteN.Mars.StnApplication.n:\n case RouteN.Mars.StrApplication.n:\n case RouteN.Mars.AmnApplication.n:\n case RouteN.Mars.AmrApplication.n:\n if (this.isConfirmationPage) {\n return 'Menu';\n } else if (!this.$route.query.sec){\n return 'Close';\n } else {\n return 'Cancel Application';\n }\n default:\n return 'Close';\n }\n }\n else {\n switch (this.$route.name) {\n default:\n return 'Menu';\n }\n }\n\n }\n\n\n get menuIcon(): string {\n if (this.isExternal) {\n switch (this.$route.name) {\n case RouteN.Mars.Home.n:\n return this.showMenu ? 'fa-times' : 'fa-bars';\n case RouteN.Mars.PcNoRenew.n:\n case RouteN.Mars.PcRenew.n:\n case RouteN.Mars.SmApplication.n:\n case RouteN.Mars.SarApplication.n:\n case RouteN.Mars.SaNrApplication.n:\n case RouteN.Mars.StnApplication.n:\n case RouteN.Mars.StrApplication.n:\n case RouteN.Mars.AmnApplication.n:\n case RouteN.Mars.AmrApplication.n:\n if (this.isConfirmationPage) {\n return this.showMenu ? 'fa-times' : 'fa-bars';\n } else {\n return 'fa-times';\n }\n default:\n return 'fa-times';\n }\n }\n else {\n switch (this.$route.name) {\n default:\n return this.showMenu ? 'fa-times' : 'fa-bars';\n }\n }\n }\n\n get selectionTypeClassName(): string {\n // switch (this.$route.name) {\n // case RouteN.Mars.Committee.n:\n // return 'committee';\n // case RouteN.Mars.Member.n:\n // return 'committee-member';\n // default:\n // return '';\n // }\n return '';\n }\n\n get isConfirmationPage(): boolean {\n const section: string = this.$route.query.sec as string || '';\n return section.indexOf('confirmation') > -1;\n }\n\n get isUpdating(): boolean {\n const section: string = this.$route.query.sec as string || '';\n return section.indexOf('update') == 0;\n }\n\n get userAccount(): AuthorizedUser {\n return store.getters.getUserAccount;\n }\n\n get appAccessPermitted(): boolean {\n return this.userAccount.authenticationStatus === AuthenticationStatusType.AppAccessPermitted ||\n this.userAccount.authenticationStatus === AuthenticationStatusType.LoggedIn;\n }\n\n private cancelApplicationClick() {\n if (this.$route.name == RouteN.Mars.PcRenew.n || this.$route.name == RouteN.Mars.PcRenewOverview.n) {\n this.eventCtrl.emit('cancel-pc-renew');\n } else if (this.$route.name == RouteN.Mars.PcNoRenew.n) {\n this.eventCtrl.emit('cancel-pc-no-renew');\n } else if (this.$route.name == RouteN.Mars.SmApplication.n) {\n this.eventCtrl.emit('cancel-sm-application');\n } else if (this.$route.name == RouteN.Mars.SarApplication.n) {\n this.eventCtrl.emit('cancel-sar-application');\n } else if (this.$route.name == RouteN.Mars.SaNrApplication.n) {\n this.eventCtrl.emit('cancel-sanr-application');\n } else if (this.$route.name == RouteN.Mars.StnApplication.n) {\n this.eventCtrl.emit('cancel-stn-application');\n } else if (this.$route.name == RouteN.Mars.StrApplication.n) {\n this.eventCtrl.emit('cancel-str-application'); \n } else if (this.$route.name == RouteN.Mars.AmnApplication.n) {\n this.eventCtrl.emit('cancel-amn-application');\n } else if (this.$route.name == RouteN.Mars.AmrApplication.n) {\n this.eventCtrl.emit('cancel-amr-application');\n }\n }\n\n}\n","import { render } from \"./account-info-panel.html?vue&type=template&id=0558ac43&scoped=true&ts=true\"\nimport script from \"./account-info-panel.ts?vue&type=script&lang=ts\"\nexport * from \"./account-info-panel.ts?vue&type=script&lang=ts\"\n\nimport \"./account-info-panel.scss?vue&type=style&index=0&id=0558ac43&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0558ac43\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\nimport { Inject, Prop, Watch } from 'vue-property-decorator';\nimport { RouteN } from '@/shared/constants/route-name';\nimport AccountInfoPanel from '@/shared/components/page-header/account-info-panel/index.vue';\nimport AlertBox from '@/shared/components/alert-box/index.vue';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { API_URL, SOURCE_BRANCH } from \"@/shared/config/config\";\n\n@Options({\n components: {\n AccountInfoPanel,\n AlertBox,\n }\n})\nexport default class PageHeader extends Vue {\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: true })\n private showAppMenu!: boolean;\n\n @Prop({ default: null })\n private isExternal!: boolean;\n\n private showCancelAlertBox = false;\n private alertBoxTitle = '';\n private alertBoxBody = 'Are you sure you want to cancel?';\n\n private appName = '';\n\n private sourceBranch = SOURCE_BRANCH;\n private apiURL = API_URL;\n public apiBranch = '';\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('$route.name')\n private onRouteChanged(): void {\n this.setAppName();\n }\n\n mounted(): void {\n // this.eventCtrl.on('cancel-adjustment', this.closeAdjustment);\n // this.eventCtrl.on('cancel-update', this.cancelUpdate);\n this.eventCtrl.on('cancel-pc-renew', this.cancelApplication);\n this.eventCtrl.on('cancel-pc-no-renew', this.cancelApplication);\n this.eventCtrl.on('cancel-sm-application', this.cancelApplication);\n this.eventCtrl.on('cancel-sar-application', this.cancelApplication);\n this.eventCtrl.on('cancel-sanr-application', this.cancelApplication);\n this.eventCtrl.on('cancel-amn-application', this.cancelApplication);\n this.eventCtrl.on('cancel-amr-application', this.cancelApplication);\n this.eventCtrl.on('cancel-stn-application', this.cancelApplication);\n this.eventCtrl.on('cancel-str-application', this.cancelApplication);\n this.eventCtrl.on('cancel-stn-fromlink', this.cancelSTApplication);\n this.eventCtrl.on('cancel-str-fromlink', this.cancelSTApplication);\n this.setAppName();\n if (this.env.length > 0) {\n setTimeout(() => {\n this.apiService.SystemApi?.apiV1SystemPingGet()\n .then((res: any) => {\n this.apiBranch = res.data.split('|')[0];\n })\n .catch(err => {\n console.log('error getting branch info: ', err);\n })\n }, 10000);\n }\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('cancel-pc-renew', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-pc-no-renew', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-sm-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-sar-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-sanr-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-amn-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-amr-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-stn-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-str-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-amr-application', this.cancelApplication);\n this.eventCtrl.removeListener('cancel-stn-fromlink', this.cancelSTApplication);\n this.eventCtrl.removeListener('cancel-str-fromlink', this.cancelSTApplication);\n }\n\n private setAppName() {\n const _pathName: string = this.$route.path;\n if (this.isExternal == null) {\n this.appName = '';\n } else if (this.isExternal) { \n if (_pathName.indexOf('/pcr') == 0) {\n this.appName = 'Practising Certificate renewal';\n } else if (_pathName.indexOf('/pc-nor') == 0) {\n this.appName = 'Practising Certificate non-renewal';\n } else if (_pathName.indexOf('/sm-application') == 0) {\n this.appName = 'Solicitor Member';\n } else if (_pathName.indexOf('/sar-application') == 0) {\n this.appName = 'Specialist Accreditation renewal';\n } else if (_pathName.indexOf('/sa-nr-application') == 0) {\n this.appName = 'Specialist Accreditation non-renewal';\n } else if (_pathName.indexOf('/amn-application') == 0) {\n this.appName = 'Associate Membership';\n } else if (_pathName.indexOf('/stn-application') == 0) {\n this.appName = 'Student Membership';\n } else if (_pathName.indexOf('/str-application') == 0) {\n this.appName = 'Student Membership renewal';\n } else if (_pathName.indexOf('/amr-application') == 0) {\n this.appName = 'Associate Membership Renewal';\n } else {\n this.appName = '';\n }\n } else if (!this.isExternal){\n this.appName = 'MARS Admin Console';\n }\n }\n\n private cancelApplication(): void {\n this.alertBoxTitle = \"CANCEL APPLICATION\";\n this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n if (this.isConfirmationPage) {\n this.exitApplication();\n } else {\n this.showCancelAlertBox = true;\n }\n }\n\n private cancelSTApplication(): void {\n this.alertBoxTitle = \"CANCEL APPLICATION\";\n this.alertBoxBody = 'By selecting the \"Associate Membership Application\" link, you will be directed back to the MY LAW SOCIETY portal, and your current application will be cancelled. Once on the portal, locate the Associate Membership card and click the \\'Apply Now\\' button.

Do you wish to continue?';\n if (this.isConfirmationPage) {\n this.exitApplication();\n } else {\n this.showCancelAlertBox = true;\n }\n }\n\n // private cancelPcRenew() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n // private cancelPcNoRenew() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n // private cancelSmApplication() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n // private cancelSarApplication() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n // private cancelAmnApplication() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n // private cancelAmrApplication() {\n // this.alertBoxTitle = \"CANCEL APPLICATION\";\n // this.alertBoxBody = 'By cancelling the application all progress will be lost. Are you sure you want to cancel?';\n // if (this.isConfirmationPage) {\n // this.exitApplication();\n // } else {\n // this.showCancelAlertBox = true;\n // }\n // }\n\n private async exitApplication(): Promise {\n\n try {\n this.showCancelAlertBox = false;\n // clear all application data\n const _appId = store.getters.getAppRenew.id;\n if (this.$route.name == RouteN.Mars.PcRenew.n || this.$route.name == RouteN.Mars.PcRenewOverview.n) {\n await this.apiService.PcRenewApi?.apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.PcNoRenew.n) {\n await this.apiService.PcNonRenewApi?.apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.SmApplication.n) {\n await this.apiService.SmApi?.apiV1SmCancelSmApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.SarApplication.n) {\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewCancelApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.SaNrApplication.n) {\n await this.apiService.SpecAccNonRenewApi?.apiV1SpecAccNonRenewCancelApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.AmnApplication.n) {\n await this.apiService.AmNewApi?.apiV1AmNewCancelAmNewApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.StnApplication.n) {\n await this.apiService.StudentNewApi?.apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.StrApplication.n) {\n await this.apiService.StudentRenewApi?.apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet(_appId);\n } else if (this.$route.name == RouteN.Mars.AmrApplication.n) {\n await this.apiService.AmRenewApi?.apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(_appId);\n }\n } catch (err) {\n console.log(err);\n } finally {\n window.sessionStorage.clear();\n store.dispatch('setPcrFormData', {});\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n }\n\n get isConfirmationPage(): boolean {\n const section: string = this.$route.query.sec as string || '';\n return section.indexOf('confirmation') > -1;\n }\n\n get env(): string {\n const local = window.location.href.indexOf('localhost') > 0 ? 'DEV' : '';\n const dev = window.location.href.indexOf('-dev') > 0 ? 'DEV' : '';\n const sit = window.location.href.indexOf('-sit') > 0 ? 'SIT' : '';\n return local + dev + sit;\n }\n\n get isSameBranchName(): boolean {\n return this.sourceBranch == this.apiBranch;\n }\n\n}\n","import { render } from \"./page-header.html?vue&type=template&id=726e8a3e&scoped=true&ts=true\"\nimport script from \"./page-header.ts?vue&type=script&lang=ts\"\nexport * from \"./page-header.ts?vue&type=script&lang=ts\"\n\nimport \"./page-header.scss?vue&type=style&index=0&id=726e8a3e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-726e8a3e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/logo-white.svg'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-498e207e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"page-footer-main\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col-12 page-footer\" }\nconst _hoisted_5 = { class: \"footer-text\" }\nconst _hoisted_6 = { class: \"footer-text-wrap\" }\nconst _hoisted_7 = { class: \"links\" }\nconst _hoisted_8 = [\"href\"]\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"gap\" }, null, -1))\nconst _hoisted_10 = [\"href\"]\nconst _hoisted_11 = { class: \"copyright\" }\nconst _hoisted_12 = { class: \"footer-logo\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"a\", {\n class: \"link-1\",\n target: \"blank\",\n href: _ctx.termsUrl\n }, \"Terms of Use\", 8, _hoisted_8)\n ]),\n _hoisted_9,\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"a\", {\n class: \"link-2\",\n target: \"blank\",\n href: _ctx.privacyUrl\n }, \"Privacy Policy\", 8, _hoisted_10)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"small\", null, \"© Copyright \" + _toDisplayString(_ctx.copyrightYearRange) + \" - The Law Society of New South Wales (ABN 98 696 304 966, ACN 000 000 699)\", 1)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"img\", {\n class: \"logo\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.logoClick())),\n src: _imports_0,\n alt: \"Footer logo\",\n title: \"The Law Society of New South Wales\"\n })\n ])\n ])\n ])\n ])\n ]))\n}","import moment from 'moment';\nimport { Options, Vue } from 'vue-class-component';\nimport { Prop } from 'vue-property-decorator';\nimport UserDefine from '@/assets/config/user-define.json';\n\n@Options({})\nexport default class PageFooter extends Vue {\n\n @Prop({ default: null })\n private baseYear!: string;\n\n @Prop({ default: null })\n private currentYear!: string;\n\n get termsUrl(): string {\n return UserDefine[0].terms_url;\n }\n get privacyUrl(): string {\n return UserDefine[0].privacy_url;\n }\n\n get copyrightYearRange(): string {\n if (this.baseYear == null) {\n return moment().format('YYYY');\n } else if (this.baseYear == this.currentYear){\n return this.baseYear;\n } else {\n return this.baseYear + ' - ' + this.currentYear;\n }\n }\n\n private logoClick() {\n window.open(UserDefine[0].lnsw_url, 'blank');\n }\n\n}\n","import { render } from \"./page-footer.html?vue&type=template&id=498e207e&scoped=true&ts=true\"\nimport script from \"./page-footer.ts?vue&type=script&lang=ts\"\nexport * from \"./page-footer.ts?vue&type=script&lang=ts\"\n\nimport \"./page-footer.scss?vue&type=style&index=0&id=498e207e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-498e207e\"]])\n\nexport default __exports__","import { Options, Vue } from 'vue-class-component';\nimport PageHeader from '../page-header/page-header/index.vue';\nimport PageFooter from '../page-footer/index.vue';\nimport { Prop } from 'vue-property-decorator';\nimport moment from 'moment';\n\n@Options({\n components: {\n PageHeader,\n PageFooter\n }\n})\nexport default class StdPageLayout extends Vue {\n @Prop({ default: false })\n private showAccountControl!: boolean;\n\n @Prop({ default: null })\n private isExternal!: boolean;\n\n private baseDate: string = new Date().toUTCString();\n \n private baseYear = '2022';\n private currentYear = moment(this.baseDate).format('YYYY');\n}\n\n\n","import { render } from \"./std-page-layout.html?vue&type=template&id=34607d2a&scoped=true&ts=true\"\nimport script from \"./std-page-layout.ts?vue&type=script&lang=ts\"\nexport * from \"./std-page-layout.ts?vue&type=script&lang=ts\"\n\nimport \"./std-page-layout.scss?vue&type=style&index=0&id=34607d2a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-34607d2a\"]])\n\nexport default __exports__","import {Options, Vue} from \"vue-property-decorator\";\nimport StdPageLayout from \"@/shared/components/std-page-layout/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { Authentication } from \"@/shared/modules/authentication/authentication\";\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport store from \"@/shared/store\";\nimport { AuthenticationStatus, AuthenticationStatusType } from \"@/shared/modules/authentication/authentication-status\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport { SELF_URL } from \"@/shared/config/config\";\nimport { Url } from \"@/shared/config/url\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\n\n@Options({\n components: {\n StdPageLayout,\n LoadingSpinner,\n }\n})\nexport default class AutoLogin extends Vue {\n\n private ai = new AppInsights;\n\n private authentication: Authentication = new Authentication(\n this.userAccount\n );\n\n mounted() {\n this.authentication.runAuthCheck(this.authCheckCallBack);\n }\n\n private authCheckCallBack(status: AuthenticationStatus = AuthenticationStatusType.NotLogin): void {\n this.ai.trackEvent('authCheckCallBack: ' + status );\n try {\n const redirect: string = this.$route.query.redirect as string;\n switch (status) {\n case AuthenticationStatusType.AppAccessPermitted:\n setTimeout(() => {\n this.$router.push(\n redirect ? redirect : { name: RouteN.Mars.Main.n }\n );\n }, 250);\n break;\n case AuthenticationStatusType.AppAccessDenied:\n setTimeout(() => { this.$router.push({ name: RouteN.Mars.AccessError.n }); }, 250);\n break;\n case AuthenticationStatusType.NotLogin:\n setTimeout(() => { document.location.href = SELF_URL + Url.Login; }, 250);\n break;\n default:\n setTimeout(() => { document.location.href = SELF_URL + Url.Logout; }, 250);\n break;\n }\n }\n catch(e) {\n this.ai.trackException('authCheckCallBack: ' + e );\n // console.log(\"authCheckCallBack: \"+e);\n throw e;\n }\n \n }\n \n get userAccount(): AuthorizedUser {\n try {\n return store.getters.getUserAccount;\n }\n catch(e) {\n this.ai.trackException('get userAccount: ' + e );\n // console.log(\"get userAccount:\"+e);\n throw e;\n }\n }\n\n}\n\n","import { render } from \"./auto-login.html?vue&type=template&id=64c9fbf7&scoped=true&ts=true\"\nimport script from \"./auto-login.ts?vue&type=script&lang=ts\"\nexport * from \"./auto-login.ts?vue&type=script&lang=ts\"\n\nimport \"./auto-login.scss?vue&type=style&index=0&id=64c9fbf7&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-64c9fbf7\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx, _cache) {\n const _component_router_view = _resolveComponent(\"router-view\")\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createBlock(_component_StdPageLayout, {\n showAccountControl: true,\n isExternal: true\n }, {\n \"body-content\": _withCtx(() => [\n _createVNode(_component_router_view)\n ]),\n _: 1\n }))\n}","export class Session {\n\n constructor(\n public issued: number = 0,\n public expires: number = 0,\n ) {}\n\n public hasExpired(): boolean {\n return Math.round(new Date().getTime() / 1000) >= this.expires;\n }\n}\n","import { Session } from './session';\nimport { IDLE_TIMEOUT } from '@/shared/config/config';\n\nexport class IDLESessionManager {\n\n public checkInterval = 1000;\n private workerID = -1;\n private session: Session = new Session();\n private timeoutCallBack: () => void;\n\n constructor(\n ) {\n this.session = new Session(\n Math.round(new Date().getTime() / 1000),\n Math.round(new Date().getTime() / 1000) + IDLE_TIMEOUT\n );\n this.timeoutCallBack = null as any;\n this.setup();\n }\n\n public run(cb: () => void): void {\n this.timeoutCallBack = cb;\n this.workerID = setInterval(() => {\n this.doCheckSession();\n }, this.checkInterval);\n }\n\n public stop(): void {\n clearInterval(this.workerID);\n window.removeEventListener('mousemove', this.resetTimer, false);\n window.removeEventListener('mousedown', this.resetTimer, false);\n window.removeEventListener('keypress', this.resetTimer, false);\n window.removeEventListener('DOMMouseScroll', this.resetTimer, false);\n window.removeEventListener('mousewheel', this.resetTimer, false);\n window.removeEventListener('touchmove', this.resetTimer, false);\n window.removeEventListener('MSPointerMove', this.resetTimer, false);\n }\n\n public resetTimer: () => void = () => {\n if (Math.round(new Date().getTime() / 1000) - this.session.issued >= 5) {\n this.doCheckSession(); // do another check;\n this.session.issued = Math.round(new Date().getTime() / 1000);\n this.session.expires = Math.round(new Date().getTime() / 1000) + IDLE_TIMEOUT;\n }\n }\n\n private doCheckSession(): void {\n if (this.session.hasExpired()) {\n this.timeoutCallBack();\n this.stop();\n }\n }\n\n private setup(): void {\n window.addEventListener('mousemove', this.resetTimer, false);\n window.addEventListener('mousedown', this.resetTimer, false);\n window.addEventListener('keypress', this.resetTimer, false);\n window.addEventListener('DOMMouseScroll', this.resetTimer, false);\n window.addEventListener('mousewheel', this.resetTimer, false);\n window.addEventListener('touchmove', this.resetTimer, false);\n window.addEventListener('MSPointerMove', this.resetTimer, false);\n }\n\n}\n","import { Options, Vue } from \"vue-property-decorator\";\nimport { IDLESessionManager } from \"@/shared/modules/session/idle-session-manager\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport { NavigationGuardNext, RouteLocationNormalized } from \"vue-router\";\nimport store from \"@/shared/store\";\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport { AuthenticationStatusType } from \"@/shared/modules/authentication/authentication-status\";\nimport StdPageLayout from \"@/shared/components/std-page-layout/index.vue\";\nimport { EventEmitter } from \"events\";\n\nVue.registerHooks(['beforeRouteEnter']);\n\n@Options({\n components: {\n StdPageLayout,\n }\n})\nexport default class ExternalMain extends Vue {\n\n // @Inject({ from: 'apiService', default: new MARSApi() })\n // private apiService!: MARSApi;\n\n // @Provide({ to: 'fileType', reactive: true })\n // private fileTypes!: FileType[];\n\n private idleSessionMgr: IDLESessionManager = new IDLESessionManager();\n\n beforeRouteEnter(to: RouteLocationNormalized, from: RouteLocationNormalized, next: NavigationGuardNext): void {\n const c1: boolean = to.matched.some((record) => record.meta.requiresAuth);\n const c2: boolean = (store.getters.getUserAccount as AuthorizedUser)\n .authenticationStatus === AuthenticationStatusType.AppAccessPermitted;\n // Bypass login check\n // next();\n c1 && !c2 ? next({ name: RouteN.Mars.LoginPage.n, query: { redirect: to.fullPath } }) : next();\n\n }\n\n created(): void {\n document.title = \"My Law Society\";\n // this.loadDataType();\n this.idleSessionMgr.run(this.idleSessionTimeoutCallback);\n }\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n }\n\n beforeUnmount(): void {\n this.idleSessionMgr.stop();\n }\n\n public idleSessionTimeoutCallback(): void {\n console.debug('***** idleSessionTimeoutCallback ***** ');\n store.commit('setPcrFormData', null);\n window.sessionStorage.clear;\n this.$router.push({ name: RouteN.Mars.LogoutPage.n });\n }\n\n get isFixHeader(): boolean {\n switch (this.$route.name) {\n case RouteN.Mars.Home.n:\n return false;\n default:\n return true;\n }\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n}\n\n","import { render } from \"./mars-main.html?vue&type=template&id=61028c2d&scoped=true&ts=true\"\nimport script from \"./mars-main.ts?vue&type=script&lang=ts\"\nexport * from \"./mars-main.ts?vue&type=script&lang=ts\"\n\nimport \"./mars-main.scss?vue&type=style&index=0&id=61028c2d&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-61028c2d\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4fce118f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"offline\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Problem connecting\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"text-line\" }, \" We are currently experiencing a high volume of online applications \", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"text-line\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://lawsociety.com.au\",\n class: \"link\"\n}, \"cancel\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_router_link = _resolveComponent(\"router-link\")\n const _component_StdPageLayout = _resolveComponent(\"StdPageLayout\")\n\n return (_openBlock(), _createBlock(_component_StdPageLayout, null, {\n \"body-content\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(\" Please \"),\n _createVNode(_component_router_link, {\n to: \"home\",\n class: \"link\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\"try again\")\n ]),\n _: 1\n }),\n _createTextVNode(\" or \"),\n _hoisted_7\n ])\n ])\n ]),\n _: 1\n }))\n}","\nimport { Options, Vue } from 'vue-class-component';\nimport StdPageLayout from '@/shared/components/std-page-layout/index.vue';\n\n@Options({\n components: {\n StdPageLayout\n }\n})\nexport default class AccessError extends Vue {\n}\n","import { render } from \"./access-error.html?vue&type=template&id=4fce118f&scoped=true&ts=true\"\nimport script from \"./access-error.ts?vue&type=script&lang=ts\"\nexport * from \"./access-error.ts?vue&type=script&lang=ts\"\n\nimport \"./access-error.scss?vue&type=style&index=0&id=4fce118f&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4fce118f\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, renderList as _renderList, Fragment as _Fragment, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, createTextVNode as _createTextVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-53892c02\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-overview container mt-4\" }\nconst _hoisted_2 = { class: \"btn-bar right mb-2\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"json-content mt-4\"\n}\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = { key: 0 }\nconst _hoisted_6 = {\n key: 2,\n class: \"row\"\n}\nconst _hoisted_7 = { class: \"col-12\" }\nconst _hoisted_8 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_9 = { class: \"radio-button\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_11 = { class: \"radio-button ml-1\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_13 = { style: {\"display\":\"flex\",\"align-items\":\"center\",\"justify-content\":\"space-between\"} }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"NOTE:\"),\n /*#__PURE__*/_createTextVNode(\" If you do not intend on renewing your practising certificate in NSW for the 2025/26 year, please answer 'No' below and complete the online Non-Renewal form. \")\n], -1))\nconst _hoisted_15 = {\n key: 0,\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}\nconst _hoisted_16 = [\"disabled\"]\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.helpContent.isShow)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = true))\n }, \"Help\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.faqClicked()))\n }, \"FAQ\")\n ]),\n (_ctx.htmlContents == [])\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.htmlContents !== [])\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.htmlContents, (h, index) => {\n return (_openBlock(), _createElementBlock(\"span\", null, [\n _createElementVNode(\"span\", { innerHTML: h }, null, 8, _hoisted_4),\n (index < _ctx.htmlContents.length - 1)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_5, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover(_ctx.popoverKeys[index]),\n iconClass: 'fa fa-question-circle'\n }, null, 8, [\"popover\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.popoverKeys.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", _hoisted_9, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.isRenew) = $event)),\n value: true,\n name: \"overview\"\n }, null, 512), [\n [_vModelRadio, _ctx.isRenew]\n ]),\n _hoisted_10\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.isRenew) = $event)),\n value: false,\n name: \"overview\"\n }, null, 512), [\n [_vModelRadio, _ctx.isRenew]\n ]),\n _hoisted_12\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n (_ctx.popoverKeys.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_15, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Preparing application data ...\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.backHome()))\n }, \"Back\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[6] || (_cache[6] = $event => (_ctx.goNext())),\n disabled: _ctx.isRenew === null\n }, \"Next\", 8, _hoisted_16)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 3,\n onClose: _cache[7] || (_cache[7] = $event => (_ctx.showHelpScreen = false)),\n helpContent: _ctx.helpContent\n }, {\n header: _withCtx(() => [\n _hoisted_17\n ]),\n body: _withCtx(() => []),\n _: 1\n }, 8, [\"helpContent\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { normalizeClass as _normalizeClass, resolveDirective as _resolveDirective, createElementVNode as _createElementVNode, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-29c95e4e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"popover\"\n}\n\nexport function render(_ctx, _cache) {\n const _directive_tippy = _resolveDirective(\"tippy\")\n\n return (_ctx.preview || _ctx.popover && (_ctx.popover.isShow && _ctx.popover.content?.length > 0))\n ? (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _withDirectives(_createElementVNode(\"i\", {\n class: _normalizeClass(_ctx.iconClass || 'fa fa-question-circle'),\n style: {\"font-size\":\"20px\"}\n }, null, 2), [\n [_directive_tippy, {content: '\\' + _ctx.popover.title+ '\\' + '\\
' + _ctx.popover.content, interactive: true}]\n ])\n ]))\n : _createCommentVNode(\"\", true)\n}","import { Options, Vue } from \"vue-property-decorator\";\n\nexport interface PopoverView {\n title: string;\n content: string;\n key: string;\n isShow: boolean;\n}\n\n@Options({\n props: {\n popover: Object,\n iconClass: String,\n preview: Boolean,\n },\n components: {\n Popover,\n },\n})\n/* \n* usage: \n* usage: \n*/\nexport default class Popover extends Vue {\n private popover!: PopoverView;\n private iconClass?: string;\n private preview?: boolean;\n\n}\n","import { render } from \"./popover.html?vue&type=template&id=29c95e4e&scoped=true&ts=true\"\nimport script from \"./popover.ts?vue&type=script&lang=ts\"\nexport * from \"./popover.ts?vue&type=script&lang=ts\"\n\nimport \"./popover.scss?vue&type=style&index=0&id=29c95e4e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-29c95e4e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, renderSlot as _renderSlot, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-cfccac6a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"help-screen\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = { class: \"modal-wrapper\" }\nconst _hoisted_4 = { class: \"button-bar\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_6 = { class: \"modal-header\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Help Section:\", -1))\nconst _hoisted_8 = {\n key: 0,\n class: \"modal-body\"\n}\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_10 = {\n class: \"ql-container ql-snow ql-disabled\",\n style: {\"width\":\"100%\",\"border\":\"none\"}\n}\nconst _hoisted_11 = [\"innerHTML\"]\nconst _hoisted_12 = { class: \"modal-footer row\" }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"modal-container\", [{'is-closing' : _ctx.isClosing} ]])\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.close && _ctx.close(...args)))\n }, [\n _createTextVNode(\" Close \"),\n _hoisted_5\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _hoisted_7\n ], true)\n ]),\n (_ctx.helpContent)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _renderSlot(_ctx.$slots, \"body\", {}, () => [\n _createElementVNode(\"h4\", null, _toDisplayString(_ctx.helpContent.title), 1),\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", {\n class: \"ql-editor ql-blank\",\n \"data-gramm\": \"false\",\n contenteditable: \"false\",\n style: {\"padding\":\"0 0\"},\n innerHTML: _ctx.helpContent.content\n }, null, 8, _hoisted_11)\n ])\n ], true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_12, [\n _renderSlot(_ctx.$slots, \"footer\", {}, undefined, true)\n ])\n ], 2)\n ])\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport { PageContent } from '@/shared/modules/typescript-api-client/models';\nimport '@vueup/vue-quill/dist/vue-quill.snow.css';\n@Options({\n props: {\n helpContent: Object\n },\n components: {\n },\n})\nexport default class HelpScreen extends Vue {\n private helpContent!: PageContent;\n private isClosing = false;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n document.addEventListener('keydown', this.onEscape);\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n document.removeEventListener('keydown', this.onEscape);\n }\n\n private onEscape(e: KeyboardEvent) {\n if (e.key.toLowerCase() === 'escape') {\n this.close();\n }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n}\n","import { render } from \"./help-screen.html?vue&type=template&id=cfccac6a&scoped=true&ts=true\"\nimport script from \"./help-screen.ts?vue&type=script&lang=ts\"\nexport * from \"./help-screen.ts?vue&type=script&lang=ts\"\n\nimport \"./help-screen.scss?vue&type=style&index=0&id=cfccac6a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-cfccac6a\"]])\n\nexport default __exports__","// import { MOVED_PERMANENTLY } from \"http-status-codes\";\nimport moment from \"moment\";\nimport { PopoverView } from \"../components/popover/popover\";\nimport store from \"../store\";\nimport { AddressDetail } from \"../modules/typescript-api-client/models\";\n\ndeclare module '@vue/runtime-core' {\n export interface ComponentCustomProperties {\n $formatDateTimeTypeA: (isoStr: string) => string,\n $formatDate: (isoStr: string) => string,\n formatMMYYYY: (isoStr: string) => string,\n $formatDateTimeTypeC: (isoStr: string) => string,\n $formatDateTimeTypeD: (isoStr: string) => string,\n $formatSecToHours: (seconds: number) => string,\n $getPopover: (pKey: string, pageId: number) => PopoverView,\n $addressCleanup: (a: AddressDetail) => AddressDetail,\n }\n}\n\nexport default {\n methods: {\n $addressCleanup(a: AddressDetail): AddressDetail {\n const addressToSaved: AddressDetail = {};\n addressToSaved.id = a.id || 0;\n addressToSaved.countryId = a.countryId;\n addressToSaved.countryName = a.countryName;\n addressToSaved.lsAddressId = a.lsAddressId || null;\n addressToSaved.firmAddMapId = a.firmAddMapId || null;\n addressToSaved.addressTypeId = a.addressTypeId || 0;\n if (a.countryName !== 'AUSTRALIA') {\n addressToSaved.foreignAddress = a.foreignAddress;\n } else {\n switch (a.addressTypeId) {\n case 1:\n addressToSaved.buildingName = a.buildingName;\n addressToSaved.buildingNumber = a.buildingNumber;\n addressToSaved.buildingTypeId = a.buildingTypeId;\n addressToSaved.buildingTypeName = a.buildingTypeName;\n addressToSaved.level = a.level;\n addressToSaved.streetName = a.streetName;\n addressToSaved.streetNumber = a.streetNumber;\n addressToSaved.streetTypeId = a.streetTypeId;\n addressToSaved.streetTypeName = a.streetTypeName;\n\n addressToSaved.postcode = a.postcode;\n addressToSaved.postCodeSuburbId = a.postCodeSuburbId;\n addressToSaved.stateId = a.stateId;\n addressToSaved.state = a.state;\n addressToSaved.stateName = a.stateName;\n addressToSaved.suburbId = a.suburbId;\n addressToSaved.suburbName = a.suburbName;\n break;\n case 2:\n addressToSaved.deliveryTypeId = a.deliveryTypeId;\n addressToSaved.deliveryTypeName = a.deliveryTypeName;\n addressToSaved.poBox = a.poBox;\n addressToSaved.postcode = a.postcode;\n addressToSaved.postCodeSuburbId = a.postCodeSuburbId;\n addressToSaved.stateId = a.stateId;\n addressToSaved.state = a.state;\n addressToSaved.stateName = a.stateName;\n addressToSaved.suburbId = a.suburbId;\n addressToSaved.suburbName = a.suburbName;\n break;\n case 3:\n addressToSaved.dxExchangeTypeId = a.dxExchangeTypeId;\n addressToSaved.dxExchangeTypeName = a.dxExchangeTypeName;\n addressToSaved.dxNumber = a.dxNumber;\n break;\n }\n }\n\n return addressToSaved;\n },\n\n $getPopover(pKey: string, pageId?: number): PopoverView {\n try {\n const _popOver = store.getters.getPopovers.filter((p: { pageId: number; key: string; }) => {\n if (pageId && pageId > 0) {\n return p.key == pKey && p.pageId == pageId;\n } else {\n return p.key == pKey;\n }\n })[0];\n return _popOver;\n } catch (err) {\n return {} as PopoverView;\n }\n },\n\n $formatDateTimeTypeA(isoStr: string): string {\n if (isoStr) {\n return moment(isoStr).format('DD/MM/YYYY HH:mm');\n } else {\n return '';\n }\n },\n $formatDate(isoStr: string): string {\n return isoStr ? moment(isoStr).format('DD/MM/YYYY') : '';\n },\n $formatMMYYYY(isoStr: string): string {\n return isoStr ? moment(isoStr).format('MM/YYYY') : '';\n },\n $formatDateTimeTypeC(isoStr: string): string {\n return moment(isoStr).format('HH:mm');\n },\n $formatDateTimeTypeD(isoStr: string): string {\n return moment(isoStr).format('DD/MM/YYYY HH:mm');\n },\n $formatSecToHours(seconds: number): string {\n if (seconds > 1) {\n return seconds / 60 + ' hours';\n } else if (seconds == 60) {\n return seconds / 60 + ' hour';\n } else {\n return '';\n }\n }\n }\n};\n","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport PcrWordingData from '@/assets/config/pcr-wording.json';\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport { Application, PcRenewIndividualDetail, PageContent, PcRenewApplication } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\n\n@Options({\n components: {\n Popover,\n HelpScreen,\n ConfirmDialogue,\n LoadingIndicator,\n },\n beforeRouteEnter(to: any, from: any, next: any) {\n const pcrApp = store.getters.getAppRenew;\n if (!pcrApp.id) {\n console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class PcrOverview extends Vue {\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private popovers: any[] = [];\n\n private applicationYearName = '';\n private lastApplicationYear = '';\n private lastApplicationYearName = '';\n\n private htmlContents_1 = '';\n\n private htmlContents: string[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private applicationInfo: PcRenewApplication = {};\n\n private pcrFormData: any = {};\n private individualDetails: PcRenewIndividualDetail = {};\n private origNames = {};\n\n private helpContent: PageContent = {};\n\n private contactUs() {\n window.open(UserDefine[0].contact_us_url, 'blank');\n }\n\n private faqClicked() {\n window.open(UserDefine[0].faq_pcr_url, 'blank');\n }\n\n mounted(): void {\n window.scrollTo(0, 0);\n this.loadPageContents();\n }\n\n private getPopOverKeys() {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n private getPopover(pKey: string): PopoverView {\n const _popOver = this.popovers.filter(p => {\n return p.popoverKey == pKey;\n })[0];\n return _popOver;\n }\n\n private async loadPageContents() {\n const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n this.apiService.PcRenewApi?.apiV1PcRenewGetApplicationInfoApplicationIdGet(_appId),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n })\n }\n store.dispatch('setAppInfo', resp[3].data.data);\n this.applicationYearName = resp[3].data.data.applicationYear?.name;\n this.lastApplicationYear = resp[3].data.data.lastApplicationYear?.year;\n this.lastApplicationYearName = resp[3].data.data.lastApplicationYear?.name;\n this.htmlContents_1 = PcrWordingData[0].overview.htmlContents.replaceAll('--[[ApplicationYearName]]--', this.applicationYearName);\n this.htmlContents_1 = this.htmlContents_1.replaceAll('--[[LastApplicationYear]]--', this.lastApplicationYear);\n this.htmlContents_1 = this.htmlContents_1.replaceAll('--[[LastApplicationYearName]]--', this.lastApplicationYearName);\n\n this.htmlContents = this.htmlContents_1.split(/--{{popover:.*\\}}--/gm);\n this.popoverKeys = this.htmlContents_1.split(/--{{popover:/gm);\n this.getPopOverKeys();\n store.dispatch('setPopovers', this.popovers);\n this.helpContent = this.$getPopover('Help', 1);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private backHome() {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n\n private goNext() {\n const _pcrFormData = {\n id: 0,\n }\n store.dispatch('setPcrFormData', _pcrFormData);\n if (this.isRenew !== null) {\n this.checkConcurrentUsage(this.isRenew);\n // } else {\n // this.$router.push({ name: RouteN.Mars.PcNoRenew.n, query: { sec: 'current-details', appId: this.$route.query.appId } });\n }\n\n }\n\n private async checkConcurrentUsage(isRenew: boolean) {\n if (isRenew) {\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n await Promise.all([\n this.apiService.PcRenewApi?.apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet(this.pcrApp.id)\n ]);\n this.$router.push({ name: RouteN.Mars.PcRenew.n, query: { sec: 'current-details', appId: this.$route.query.appId } });\n } catch (err: any) {\n this.errorLoadingDataSet = true;\n // console.log(err.response?.status, err.response?.data.errorCode);\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp(isRenew);\n }\n } finally {\n this.loadingDataSet = false;\n }\n } else {\n this.loadingDataSet = true;\n await this.apiService.PcNonRenewApi?.apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet(this.pcrApp.id)\n .then(() => {\n this.$router.push({ name: RouteN.Mars.PcNoRenew.n, query: { sec: 'current-details', appId: this.$route.query.appId } });\n })\n .catch(err => {\n this.loadingDataSet = false;\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp(isRenew);\n }\n });\n\n }\n\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private confirmCancelConcurrentApp(isRenew: boolean) {\n this.loadingDataSet = true;\n // const _appId = parseInt(this.$route.query.appId as string);\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm.show({\n title: 'You are already logged in elsewhere',\n message: 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n }).then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart(isRenew);\n }\n else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n })\n }\n\n private clearSessionAndStart(isRenew: boolean) {\n this.loadingDataSet = true;\n this.apiService.PcRenewApi?.apiV1PcRenewCancelPcRenewApplicationApplicationIdGet(this.pcrApp.id)\n .then(() => {\n setTimeout(() => {\n this.loadingDataSet = false;\n if (isRenew) {\n this.$router.push({ name: RouteN.Mars.PcRenew.n, query: { sec: 'current-details', appId: this.$route.query.appId } });\n } else {\n this.$router.push({ name: RouteN.Mars.PcNoRenew.n, query: { sec: 'current-details', appId: this.$route.query.appId } });\n }\n }, 2000)\n })\n .catch(() => {\n this.loadingDataSet = false;\n console.log('Unable to clear session');\n });\n }\n\n}\n\n","import { render } from \"./pcr-overview.html?vue&type=template&id=53892c02&scoped=true&ts=true\"\nimport script from \"./pcr-overview.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-overview.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-overview.scss?vue&type=style&index=0&id=53892c02&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-53892c02\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-c4094aee\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr\" }\nconst _hoisted_2 = { class: \"container mt-4\" }\nconst _hoisted_3 = {\n key: 12,\n class: \"pcr-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_PcrCurrentDetails = _resolveComponent(\"PcrCurrentDetails\")\n const _component_PcrPracticeRecord = _resolveComponent(\"PcrPracticeRecord\")\n const _component_PcrAddressDetails = _resolveComponent(\"PcrAddressDetails\")\n const _component_PcrRenewalDetails = _resolveComponent(\"PcrRenewalDetails\")\n const _component_PcrStatutoryRegister = _resolveComponent(\"PcrStatutoryRegister\")\n const _component_PcrAdditionalDetails = _resolveComponent(\"PcrAdditionalDetails\")\n const _component_PcrPreferences = _resolveComponent(\"PcrPreferences\")\n const _component_PcrSpecialistAccreditation = _resolveComponent(\"PcrSpecialistAccreditation\")\n const _component_SarApplicationDeclarations = _resolveComponent(\"SarApplicationDeclarations\")\n const _component_PcrRenewalDeclarations = _resolveComponent(\"PcrRenewalDeclarations\")\n const _component_PcrPaymentDetails = _resolveComponent(\"PcrPaymentDetails\")\n const _component_PcrConfirmation = _resolveComponent(\"PcrConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PcrPracticeRecordAdditionalDetailsPopup = _resolveComponent(\"PcrPracticeRecordAdditionalDetailsPopup\")\n const _component_PcrPracticeRecordPppPopup = _resolveComponent(\"PcrPracticeRecordPppPopup\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n const _component_PaymentModal = _resolveComponent(\"PaymentModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navSteps,\n showHelpBtn: true,\n showFaqBtn: false\n }, null, 8, [\"navSteps\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.currentSection === _ctx.$Section.details)\n ? (_openBlock(), _createBlock(_component_PcrCurrentDetails, {\n key: 0,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.record)\n ? (_openBlock(), _createBlock(_component_PcrPracticeRecord, {\n key: 1,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.address)\n ? (_openBlock(), _createBlock(_component_PcrAddressDetails, {\n key: 2,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.renewal)\n ? (_openBlock(), _createBlock(_component_PcrRenewalDetails, {\n key: 3,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[6] || (_cache[6] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[7] || (_cache[7] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.register)\n ? (_openBlock(), _createBlock(_component_PcrStatutoryRegister, {\n key: 4,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[8] || (_cache[8] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[9] || (_cache[9] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.additional)\n ? (_openBlock(), _createBlock(_component_PcrAdditionalDetails, {\n key: 5,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[10] || (_cache[10] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[11] || (_cache[11] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.preferences)\n ? (_openBlock(), _createBlock(_component_PcrPreferences, {\n key: 6,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[12] || (_cache[12] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[13] || (_cache[13] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.specialistAccreditation)\n ? (_openBlock(), _createBlock(_component_PcrSpecialistAccreditation, {\n key: 7,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[14] || (_cache[14] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[15] || (_cache[15] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.applicationDeclarations)\n ? (_openBlock(), _createBlock(_component_SarApplicationDeclarations, {\n key: 8,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[16] || (_cache[16] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[17] || (_cache[17] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.renewalDeclarations)\n ? (_openBlock(), _createBlock(_component_PcrRenewalDeclarations, {\n key: 9,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[18] || (_cache[18] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[19] || (_cache[19] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_PcrPaymentDetails, {\n key: 10,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[20] || (_cache[20] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[21] || (_cache[21] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_PcrConfirmation, { key: 11 }))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: _ctx.savingText,\n class: \"mr-4\"\n }, null, 8, [\"loadingText\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n onClick: _cache[22] || (_cache[22] = $event => (_ctx.goBack())),\n disabled: _ctx.isSaving || _ctx.isSectionLoading\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving || _ctx.isSectionLoading,\n onClick: _cache[23] || (_cache[23] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(_component_PcrPracticeRecordAdditionalDetailsPopup, {\n ref: \"additionalDetailsPopUp\",\n practiceRecords: _ctx.popupPracticeRecords,\n \"onUpdate:practiceRecords\": _cache[24] || (_cache[24] = $event => ((_ctx.popupPracticeRecords) = $event))\n }, null, 8, [\"practiceRecords\"]),\n _createVNode(_component_PcrPracticeRecordPppPopup, {\n ref: \"pppPopup\",\n practiceRecords: _ctx.practiceRecords,\n \"onUpdate:practiceRecords\": _cache[25] || (_cache[25] = $event => ((_ctx.practiceRecords) = $event))\n }, null, 8, [\"practiceRecords\"]),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 1,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-pcr-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[26] || (_cache[26] = $event => (_ctx.processNotification('close-payment-form'))),\n onPaymentConfirmed: _ctx.paymentConfirmed\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\", \"onPaymentConfirmed\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.applyInternalPayment && _ctx.amountPayable > 0)\n ? (_openBlock(), _createBlock(_component_PaymentModal, {\n key: 2,\n class: \"alert-box\",\n onClose: _cache[27] || (_cache[27] = $event => (_ctx.applyInternalPayment = false)),\n onIsValidCard: _ctx.updateCCStatus,\n paymentFormData: _ctx.pcrFormData,\n \"onUpdate:paymentFormData\": _cache[28] || (_cache[28] = $event => ((_ctx.pcrFormData) = $event)),\n amountPayable: _ctx.amountPayable,\n \"onUpdate:amountPayable\": _cache[29] || (_cache[29] = $event => ((_ctx.amountPayable) = $event)),\n paymentAppName: _ctx.paymentAppName\n }, null, 8, [\"onIsValidCard\", \"paymentFormData\", \"amountPayable\", \"paymentAppName\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, withModifiers as _withModifiers, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/contact-us.png'\nimport _imports_1 from '@/assets/help.png'\nimport _imports_2 from '@/assets/faq.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e78192aa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"swipe-stepper\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"swipe-stepper-main\" }\nconst _hoisted_4 = {\n class: \"nav-bar\",\n id: \"menu-container\"\n}\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"btn-nav-previous\" }, \"   \", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { id: \"btn-nav-next\" }, \"     \", -1))\nconst _hoisted_7 = {\n class: \"menu-inner-box\",\n ref: \"menuInnerBox\"\n}\nconst _hoisted_8 = [\"id\", \"onClick\"]\nconst _hoisted_9 = [\"id\"]\nconst _hoisted_10 = { class: \"buttons\" }\nconst _hoisted_11 = { class: \"buttons-sml\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n class: \"logo\",\n src: _imports_0\n}, null, -1))\nconst _hoisted_13 = [\n _hoisted_12\n]\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n class: \"logo\",\n src: _imports_1\n}, null, -1))\nconst _hoisted_15 = [\n _hoisted_14\n]\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", {\n class: \"logo\",\n src: _imports_2\n}, null, -1))\nconst _hoisted_17 = [\n _hoisted_16\n]\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _hoisted_6,\n _createElementVNode(\"ul\", _hoisted_7, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.navSteps, (s, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n id: s.status,\n onClick: _withModifiers($event => {_ctx.navigate(s);}, [\"prevent\",\"stop\"]),\n class: _normalizeClass([s.status, !s.visible ? 'hide' : ''])\n }, [\n _createElementVNode(\"span\", {\n id: s.routeSecName\n }, _toDisplayString(s.name), 9, _hoisted_9)\n ], 10, _hoisted_8))\n }), 256))\n ], 512)\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.showHelpBtn && _ctx.helpContent?.isShow)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline sml\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = !_ctx.showHelpScreen))\n }, \"Help\"))\n : _createCommentVNode(\"\", true),\n (_ctx.showFaqBtn)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline sml\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.faqLink()))\n }, \"FAQ\"))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"span\", {\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.contactUs())),\n title: \"Contact us\"\n }, _hoisted_13),\n (_ctx.showHelpBtn && _ctx.helpContent.isShow)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.showHelpScreen = !_ctx.showHelpScreen)),\n title: \"Help\"\n }, _hoisted_15))\n : _createCommentVNode(\"\", true),\n (_ctx.showFaqBtn)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.faqLink())),\n title: \"FAQ\"\n }, _hoisted_17))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 0,\n onClose: _cache[6] || (_cache[6] = $event => (_ctx.showHelpScreen = false)),\n helpContent: _ctx.helpContent\n }, {\n header: _withCtx(() => [\n _hoisted_18\n ]),\n body: _withCtx(() => []),\n _: 1\n }, 8, [\"helpContent\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","export enum NavStepStatusID {\n Unknown = 'unknown',\n NotDone = 'not-done',\n Done = 'done',\n Current = 'current',\n}\nexport class NavStep {\n constructor(\n public name: string = '',\n public routeSecName: string = '',\n public visible: boolean = true,\n public status: NavStepStatus = NavStepStatusID.NotDone,\n ) {\n }\n}\n\nexport type NavStepStatus = NavStepStatusID.Unknown | NavStepStatusID.NotDone |\n NavStepStatusID.Done | NavStepStatusID.Current;\nexport interface StepperName {\n applicationDetails: string;\n membershipDetails: string;\n currentDetails: string;\n applicationDeclarations: string;\n renewalDeclarations: string;\n associateMembershipCategory: string;\n currentStatus: string;\n declarations: string;\n details: string;\n record: string;\n address: string;\n renewal: string;\n register: string;\n additional: string;\n preferences: string;\n payment: string;\n confirmation: string;\n}\n\nexport const Step: StepperName = {\n applicationDetails: 'Application Details',\n membershipDetails: 'Membership Details',\n currentDetails: 'Current Details',\n applicationDeclarations: 'Application Declarations',\n renewalDeclarations: 'Renewal Declarations',\n associateMembershipCategory: 'Associate Membership Category',\n currentStatus: 'Current Status',\n declarations: 'Declarations',\n details: 'Current Details',\n record: 'Practice Record',\n address: 'Address Details',\n renewal: 'Renewal Details',\n register: 'Other Details',\n additional: 'Additional Details',\n preferences: 'Preferences',\n payment: 'Payment Details',\n confirmation: 'Confirmation',\n\n}\n\nexport interface SectionName {\n applicationDetails: string;\n membershipDetails: string;\n currentDetails: string;\n applicationDeclarations: string;\n renewalDeclarations: string;\n associateMembershipCategory: string;\n currentStatus: string;\n declarations: string;\n details: string;\n record: string;\n address: string;\n renewal: string;\n register: string;\n additional: string;\n preferences: string;\n payment: string;\n confirmation: string;\n}\n\nexport const Section: SectionName = {\n applicationDetails: 'application-details',\n membershipDetails: 'membership-details',\n currentDetails: 'current-details',\n applicationDeclarations: 'application-declarations',\n renewalDeclarations: 'renewal-declarations',\n associateMembershipCategory: 'associate-membership-category',\n currentStatus: 'current-status',\n declarations: 'declaration',\n details: 'current-details',\n record: 'practice-record',\n address: 'address-details',\n renewal: 'renewal-details',\n register: 'statutory-register',\n additional: 'additional-details',\n preferences: 'preferences',\n payment: 'payment-details',\n confirmation: 'confirmation',\n}\n","import { Options, Vue } from 'vue-class-component';\nimport { NavStep, NavStepStatusID } from './nav-step';\nimport HelpScreen from '@/shared/components/help-screen/index.vue';\nimport UserDefine from '@/assets/config/user-define.json';\nimport { Watch } from 'vue-property-decorator';\nimport { PageContent } from '@/shared/modules/typescript-api-client/models';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\n\n@Options({\n props: {\n navSteps: Array,\n navbarText: String,\n showHelpBtn: Boolean,\n showFaqBtn: Boolean,\n },\n components: {\n HelpScreen,\n }\n})\nexport default class SwipeStepper extends Vue {\n private showHelpScreen = false;\n navSteps!: NavStep[];\n navbarText!: string;\n showHelpBtn!: boolean;\n showFaqBtn!: boolean;\n\n private distance = 0;\n\n private helpContent: PageContent = {\n title: 'Page title here',\n content: 'Help content here',\n isShow: false,\n key: '',\n }\n\n get section(): string {\n return this.$route.query.sec as string;\n }\n\n get helpContentData(): unknown {\n const _helpContentData: any = [{}];\n return _helpContentData;\n }\n\n private navigate(s: NavStep): void {\n const _section: string = this.$route.query.sec as string;\n if (s.status === NavStepStatusID.Done && _section !== 'confirmation') {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n }\n\n private navigateBack() {\n const index = this.currentNavStepIndex;\n if (index > 0) {\n // console.log(this.navSteps[index - 1].routeSecName);\n this.navigate(this.navSteps[index - 1]);\n }\n }\n\n get currentNavStepIndex(): number {\n let index = -1;\n this.navSteps.filter((z) => z.visible).forEach((x, i) => {\n if (x.status === NavStepStatusID.Current) {\n index = i;\n }\n });\n return index;\n }\n\n @Watch('currentNavStepIndex')\n private onNavStepsChanged() {\n setTimeout(() => {\n this.scrollToItem();\n }, 1000)\n\n }\n\n private startY: any = null;\n private startX: any = null;\n private scrollLeft: any = null;\n private scrollTop: any = null;\n private isDown = false;\n private menuInnerBox: any | null = null;\n\n mounted() {\n this.menuInnerBox = this.$refs.menuInnerBox as HTMLElement;\n this.menuInnerBox.addEventListener('mousedown', (e: MouseEvent) => this.mouseIsDown(e));\n this.menuInnerBox.addEventListener('mouseup', (e: MouseEvent) => this.mouseUp(e))\n this.menuInnerBox.addEventListener('mouseleave', (e: MouseEvent) => this.mouseLeave(e));\n this.menuInnerBox.addEventListener('mousemove', (e: MouseEvent) => this.mouseMove(e));\n this.eventCtrl.on('updateHelpContent', this.updateHelpContent);\n }\n\n beforeUnmount(): void {\n this.menuInnerBox.removeEventListener('mousedown', (e: MouseEvent) => this.mouseIsDown(e));\n this.menuInnerBox.removeEventListener('mouseup', (e: MouseEvent) => this.mouseUp(e))\n this.menuInnerBox.removeEventListener('mouseleave', (e: MouseEvent) => this.mouseLeave(e));\n this.menuInnerBox.removeEventListener('mousemove', (e: MouseEvent) => this.mouseMove(e));\n this.eventCtrl.removeListener('updateHelpContent', this.updateHelpContent);\n }\n\n private updateHelpContent(content: any) {\n this.helpContent = content;\n // console.log('nav bar updateHelpContent: ', this.helpContent);\n }\n\n private mouseIsDown(e: MouseEvent) {\n this.isDown = true;\n this.startY = e.pageY - this.menuInnerBox.offsetTop;\n this.startX = e.pageX - this.menuInnerBox.offsetLeft;\n this.scrollLeft = this.menuInnerBox.scrollLeft;\n this.scrollTop = this.menuInnerBox.scrollTop;\n this.menuInnerBox.classList.add('dragging');\n }\n\n private mouseUp(e: MouseEvent) {\n this.isDown = false;\n this.menuInnerBox.classList.remove('dragging');\n }\n\n private mouseLeave(e: MouseEvent) {\n this.isDown = false;\n this.menuInnerBox.classList.remove('dragging');\n }\n\n private mouseMove(e: MouseEvent) {\n if (this.isDown) {\n e.preventDefault();\n\n //Move vertcally\n // const y = e.pageY - container.offsetTop;\n // const walkY = y - startY;\n // container.scrollTop = scrollTop - walkY;\n\n //Move Horizontally\n const x = e.pageX - this.menuInnerBox.offsetLeft;\n const walkX = x - this.startX;\n this.menuInnerBox.scrollLeft = this.scrollLeft - walkX;\n\n }\n }\n\n private scrollToItem() {\n const _menuInnerBox = this.$refs.menuInnerBox as HTMLElement;\n const navItem = document.querySelector('li.current') as HTMLElement;\n _menuInnerBox.scrollTo(navItem?.offsetLeft - 50, 0);\n }\n\n private scroll(distance: number) {\n const _menuInnerBox = this.$refs.menuInnerBox as HTMLElement;\n for (let i = 0; i < 500; i++) {\n setTimeout(() => {\n _menuInnerBox.scrollLeft += distance / 50;\n }, 10 * i);\n }\n }\n\n private contactUs() {\n window.open(UserDefine[0].contact_us_url, 'blank');\n }\n\n private faqLink() {\n const _pathName: string = this.$route.path;\n let fqaLink = UserDefine[0].faq_url;\n if (_pathName.indexOf('/amr-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/AMR-faq';\n } else if (_pathName.indexOf('/amn-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/AMN-faq';\n } else if (_pathName.indexOf('/stn-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/legal-communities/law-students/student-members';\n } else if (_pathName.indexOf('/str-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/legal-communities/law-students/student-members';\n } else if (_pathName.indexOf('/sar-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/SAR-FAQ';\n }\n window.open(fqaLink, 'blank');\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n}\n\n","import { render } from \"./swipe-stepper.html?vue&type=template&id=e78192aa&scoped=true&ts=true\"\nimport script from \"./swipe-stepper.ts?vue&type=script&lang=ts\"\nexport * from \"./swipe-stepper.ts?vue&type=script&lang=ts\"\n\nimport \"./swipe-stepper.scss?vue&type=style&index=0&id=e78192aa&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e78192aa\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, vModelCheckbox as _vModelCheckbox, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4cdcfaaa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-current-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Current Details\", -1))\nconst _hoisted_3 = { class: \"row main-content\" }\nconst _hoisted_4 = { class: \"col-4 pa-3\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center\" }, \"Current Practising Certificate\", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"NSW Admission Date\", -1))\nconst _hoisted_8 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_9 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Current Practising Certificate Type\", -1))\nconst _hoisted_11 = { class: \"mb-3\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Current Practising Certificate Conditions\", -1))\nconst _hoisted_13 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_14 = { class: \"mb-3\" }\nconst _hoisted_15 = { class: \"col-8\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Personal Details\")\n], -1))\nconst _hoisted_17 = {\n class: \"col-6\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Full name\", -1))\nconst _hoisted_19 = { class: \"mb-3\" }\nconst _hoisted_20 = { key: 0 }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Proof of Name Change\", -1))\nconst _hoisted_22 = { class: \"file-list mb-2\" }\nconst _hoisted_23 = { class: \"file-name\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Email for Communication\", -1))\nconst _hoisted_25 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_26 = { class: \"mb-3\" }\nconst _hoisted_27 = {\n class: \"col-6 right-side\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Residential Address\", -1))\nconst _hoisted_29 = { class: \"col-6\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Mobile phone\", -1))\nconst _hoisted_31 = { key: 0 }\nconst _hoisted_32 = { key: 1 }\nconst _hoisted_33 = { class: \"col-6\" }\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business phone\", -1))\nconst _hoisted_35 = { key: 0 }\nconst _hoisted_36 = { key: 1 }\nconst _hoisted_37 = {\n key: 0,\n class: \"col-12 error mt-0\"\n}\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Direct contact information is mandatory. \")\n], -1))\nconst _hoisted_39 = [\n _hoisted_38\n]\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, [\n /*#__PURE__*/_createTextVNode(\"These are your direct or private contact details. These details are not disclosed on the statutory publicly displayed Register of Solicitors. These details are used for the purposes of carrying out regulatory functions under the \"),\n /*#__PURE__*/_createElementVNode(\"i\", null, \"Legal Profession Uniform Law (NSW)\"),\n /*#__PURE__*/_createTextVNode(\".\")\n ])\n], -1))\nconst _hoisted_41 = { class: \"col-12 radios\" }\nconst _hoisted_42 = {\n key: 0,\n class: \"ml-3\"\n}\nconst _hoisted_43 = {\n key: 1,\n class: \"radio-button-group\"\n}\nconst _hoisted_44 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_45 = { class: \"radio-button col-3\" }\nconst _hoisted_46 = [\"disabled\"]\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_48 = { class: \"col-2 ml-0\" }\nconst _hoisted_49 = { class: \"radio-button\" }\nconst _hoisted_50 = [\"disabled\"]\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_52 = { class: \"col-12 right\" }\nconst _hoisted_53 = [\"disabled\"]\nconst _hoisted_54 = { class: \"row mt-3 mb-4\" }\nconst _hoisted_55 = { class: \"checkbox-button\" }\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"checkbox-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkbox-text\" }, \"I do not wish to receive a hard copy of my practising certificate\")\n], -1))\nconst _hoisted_57 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"margin\":\"5px 50px 0 45px\"} }, \" A physical copy of your practising certificate is not a requirement to be entitled to engage in legal practice. A pdf of your practising certificate will be available for download once your 2025/26 practising certificate has been granted. \", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_PcrCurrentDetailsUpdateModal = _resolveComponent(\"PcrCurrentDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _hoisted_6,\n _hoisted_7,\n (_ctx.practisingCertificate.isAdmittedInNsw)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_8, _toDisplayString(_ctx.$formatDate(_ctx.practisingCertificate.nswDateOfAdmission)), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_9, _toDisplayString(_ctx.practisingCertificate.nswAdmissionDateDescription), 1)),\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.practisingCertificate.pcEmpTypeShortDescription), 1),\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, _toDisplayString(_ctx.practisingCertificate.pcConditions), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CertificateConditions', 2)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_15, [\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, [\n _hoisted_18,\n _createElementVNode(\"div\", _hoisted_19, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1),\n (_ctx.nameCheck)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _hoisted_21,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.pcrFormData.individualDetails.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, _toDisplayString(f.originalFileName), 1)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_24,\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"div\", _hoisted_26, _toDisplayString(_ctx.individualDetails.communicationEmail?.email), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('RegulatoryCommunicationsEmail', 2)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_27, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.individualDetails.residentialAddress ? '' : 'phone-error'])\n }, [\n _hoisted_28,\n _createVNode(_component_AddressPreview, {\n address: _ctx.individualDetails.residentialAddress,\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"])\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"row mb-2\", _ctx.contactPhoneInfoMissing ? 'phone-error' : ''])\n }, [\n _createElementVNode(\"div\", _hoisted_29, [\n _hoisted_30,\n (_ctx.contactPhoneInfoMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_32, _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneNumber), 1))\n ]),\n _createElementVNode(\"div\", _hoisted_33, [\n _hoisted_34,\n (_ctx.contactPhoneInfoMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_35, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_36, _toDisplayString(_ctx.individualDetails.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.businessPhone?.phoneNumber), 1))\n ])\n ], 2),\n (_ctx.contactPhoneInfoMissing || _ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_37, _hoisted_39))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_40,\n _createElementVNode(\"div\", _hoisted_41, [\n (!_ctx.contactPhoneInfoMissing && !_ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, \"Are these details correct?\"))\n : _createCommentVNode(\"\", true),\n (!_ctx.contactPhoneInfoMissing && !_ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_43, [\n _createElementVNode(\"span\", _hoisted_44, [\n _createElementVNode(\"label\", _hoisted_45, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: true,\n name: \"overview\",\n disabled: _ctx.contactPhoneInfoMissing\n }, null, 8, _hoisted_46), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_47\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_48, [\n _createElementVNode(\"label\", _hoisted_49, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: false,\n name: \"overview\",\n disabled: _ctx.contactPhoneInfoMissing\n }, null, 8, _hoisted_50), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_51\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_52, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n disabled: !_ctx.contactPhoneInfoMissing && !_ctx.addressMissing && _ctx.individualDetails.isCurrentDetailCorrect !== false,\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.updateCurrentDetails()))\n }, \"Update current details\", 8, _hoisted_53)\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_54, [\n _createElementVNode(\"label\", _hoisted_55, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.individualDetails.noPcHardCopyRequired) = $event))\n }, null, 512), [\n [_vModelCheckbox, _ctx.individualDetails.noPcHardCopyRequired]\n ]),\n _hoisted_56\n ]),\n _hoisted_57\n ])\n ], 64)),\n (_ctx.showUpdateDetailsModal)\n ? (_openBlock(), _createBlock(_component_PcrCurrentDetailsUpdateModal, {\n key: 2,\n currentDetails: _ctx.individualDetails,\n \"onUpdate:currentDetails\": _cache[4] || (_cache[4] = $event => ((_ctx.individualDetails) = $event)),\n origNames: _ctx.origNames,\n \"onUpdate:origNames\": _cache[5] || (_cache[5] = $event => ((_ctx.origNames) = $event)),\n onClose: _cache[6] || (_cache[6] = $event => {_ctx.individualDetails.isCurrentDetailCorrect = null; _ctx.showUpdateDetailsModal = false}),\n onReloadCurrentDetails: _cache[7] || (_cache[7] = $event => (_ctx.reloadCurrentDetails()))\n }, null, 8, [\"currentDetails\", \"origNames\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, normalizeClass as _normalizeClass, createVNode as _createVNode, Transition as _Transition, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-caa150fe\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-current-details-update-modal\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = { class: \"modal-wrapper\" }\nconst _hoisted_4 = { class: \"button-bar\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Update Current Details\")\n], -1))\nconst _hoisted_6 = { class: \"modal-body\" }\nconst _hoisted_7 = { key: 1 }\nconst _hoisted_8 = { class: \"dropdown-menu\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Title \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_10 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_12 = [\"value\"]\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_15 = { class: \"input-box\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"First name\", -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_18 = { class: \"input-box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Other names\", -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Surname\", -1))\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_24 = { class: \"flex-row\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Mobile phone\", -1))\nconst _hoisted_26 = { class: \"field_name\" }\nconst _hoisted_27 = { class: \"ml-2\" }\nconst _hoisted_28 = { style: {\"width\":\"100%\"} }\nconst _hoisted_29 = {\n key: 0,\n class: \"phone-error error\"\n}\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Must input Mobile phone or Business phone \")\n], -1))\nconst _hoisted_31 = [\n _hoisted_30\n]\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_33 = { class: \"field_name\" }\nconst _hoisted_34 = { class: \"validation-msg\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_36 = { key: 0 }\nconst _hoisted_37 = { key: 1 }\nconst _hoisted_38 = { key: 2 }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_40 = { key: 1 }\nconst _hoisted_41 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_43 = { class: \"file-list mb-2\" }\nconst _hoisted_44 = { class: \"file-name\" }\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_46 = [\"onClick\"]\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Residential address for the purposes of carrying out functions under the Uniform Law.\", -1))\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_50 = {\n key: 0,\n class: \"modal-footer row right\"\n}\nconst _hoisted_51 = [\"disabled\"]\nconst _hoisted_52 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"modal-container\", [{'is-closing' : _ctx.isClosing}]]),\n style: {\"min-width\":\"50%\"}\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"div\", null, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times-circle mr-4\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.close && _ctx.close(...args)))\n })\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.formData.title) = $event))\n }, [\n _hoisted_11,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.titles, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: t.id, name: t.name, description: t.description}\n }, _toDisplayString(t.name), 9, _hoisted_12))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.formData.title]\n ])\n ]),\n _hoisted_13\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", _hoisted_15, [\n _hoisted_16,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.formData.firstName) = $event)),\n placeholder: \"First name\",\n maxlength: \"50\",\n onChange: _cache[3] || (_cache[3] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.firstName]\n ])\n ]),\n _hoisted_17,\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.formData.otherName) = $event)),\n placeholder: \"Other name\",\n maxlength: \"50\",\n onChange: _cache[5] || (_cache[5] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.otherName]\n ])\n ]),\n _hoisted_20,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.surname.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_21,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => ((_ctx.formData.surname) = $event)),\n placeholder: \"Surname\",\n maxlength: \"50\",\n onChange: _cache[7] || (_cache[7] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.surname]\n ]),\n _hoisted_22\n ], 2),\n _hoisted_23,\n _createElementVNode(\"div\", _hoisted_24, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_25,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.formData.mobilePhone.phoneNumber) = $event)),\n placeholder: \"Mobile phone\",\n maxlength: \"15\",\n onChange: _cache[9] || (_cache[9] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.mobilePhone.phoneNumber]\n ])\n ], 2),\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_26, [\n _createTextVNode(\"Business phone\"),\n _createElementVNode(\"span\", _hoisted_27, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneDetails', 2),\n style: {\"margin\":\"auto auto\",\"padding\":\"auto auto\"}\n }, null, 8, [\"popover\"])\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_28, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.formData.businessPhone.phoneAreaCode) = $event)),\n style: {\"width\":\"50px\"},\n maxlength: \"5\"\n }, null, 512), [\n [_vModelText, _ctx.formData.businessPhone.phoneAreaCode]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => ((_ctx.formData.businessPhone.phoneNumber) = $event)),\n placeholder: \"Business phone\",\n maxlength: \"15\",\n onChange: _cache[12] || (_cache[12] = $event => (_ctx.nameCheck())),\n style: {\"width\":\"calc(100% - 60px)\",\"margin-left\":\"9px\"}\n }, null, 544), [\n [_vModelText, _ctx.formData.businessPhone.phoneNumber]\n ])\n ])\n ], 2)\n ]),\n (!_ctx.formPhoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_29, _hoisted_31))\n : _createCommentVNode(\"\", true),\n _hoisted_32,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_33, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('RegulatoryCommunicationsEmail', 2)\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => ((_ctx.formData.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onChange: _cache[14] || (_cache[14] = $event => (_ctx.emailCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_34, [\n _hoisted_35,\n (_ctx.formData.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_36, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_37, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_38, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_39,\n (_ctx.requiredFileUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"file-upload mt-4\", _ctx.requiredFileUpload ? 'required' : ''])\n }, [\n _createTextVNode(\" If you changed your name since your last practising certificate was issued, please attach proof of name change. \"),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _ctx.fileListChanged,\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\", \"onFileInputChanged\"]),\n (_ctx.formData.files?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_41, [\n _hoisted_42,\n _createTextVNode(\" Required to attach proof of name change. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_43, [\n _createElementVNode(\"div\", _hoisted_44, [\n _hoisted_45,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_46)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_47,\n _hoisted_48,\n (_ctx.formData.residentialAddress)\n ? (_openBlock(), _createBlock(_component_AddressComponent, {\n key: 2,\n onUpdateAddress: _ctx.updateAddress,\n disableCountrySelection: false,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[15] || (_cache[15] = $event => ((_ctx.isSubmitting) = $event)),\n address: _ctx.formData.residentialAddress,\n \"onUpdate:address\": _cache[16] || (_cache[16] = $event => ((_ctx.formData.residentialAddress) = $event))\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_AddressPreview, {\n address: _ctx.formData.residentialAddress,\n \"onUpdate:address\": _cache[17] || (_cache[17] = $event => ((_ctx.formData.residentialAddress) = $event)),\n style: 'margin-top: 2rem; padding: 1rem 1rem;'\n }, null, 8, [\"address\"])\n ]))\n ]),\n _hoisted_49,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_50, [\n (_ctx.isUpdating)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[18] || (_cache[18] = $event => (_ctx.cancel())),\n disabled: _ctx.isUpdating\n }, \"Cancel\", 8, _hoisted_51),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.isDirty || _ctx.isUpdating,\n onClick: _cache[19] || (_cache[19] = $event => (_ctx.update()))\n }, \"Update\", 8, _hoisted_52)\n ]))\n : _createCommentVNode(\"\", true)\n ], 2)\n ])\n ])\n ]),\n _: 1\n }),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, Fragment as _Fragment, renderSlot as _renderSlot, withModifiers as _withModifiers, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-09e64137\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"accept\", \"name\", \"id\", \"disabled\"]\nconst _hoisted_2 = {\n key: 0,\n class: \"drop-icon\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-upload fa-6x\" }, null, -1))\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = {\n key: 1,\n class: \"control\"\n}\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = { key: 1 }\nconst _hoisted_8 = { class: \"status\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-spinner fa-spin fa-2x\" }, null, -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle fa-2x error\" }, null, -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass(['file-drag-and-drop', _ctx.disabled ? 'disabled' : '']),\n onDragover: _cache[6] || (_cache[6] = _withModifiers(() => {}, [\"prevent\"])),\n onDrop: _cache[7] || (_cache[7] = _withModifiers(() => {}, [\"prevent\"]))\n }, [\n _createElementVNode(\"div\", {\n class: \"drop-panel\",\n onDrop: _cache[3] || (_cache[3] = (...args) => (_ctx.droppedFiles && _ctx.droppedFiles(...args))),\n onDragover: _cache[4] || (_cache[4] = (...args) => (_ctx.dragover && _ctx.dragover(...args))),\n onDragleave: _cache[5] || (_cache[5] = (...args) => (_ctx.dragleave && _ctx.dragleave(...args)))\n }, [\n _createElementVNode(\"input\", {\n type: \"file\",\n style: {\"display\":\"none\"},\n ref: \"fileSelector\",\n multiple: \"\",\n accept: _ctx.acceptedFileTypesOnInput,\n name: 'file-input'+_ctx.id,\n id: 'file-input'+_ctx.id,\n onChange: _cache[0] || (_cache[0] = (...args) => (_ctx.onFileSelected && _ctx.onFileSelected(...args))),\n disabled: _ctx.disabled\n }, null, 40, _hoisted_1),\n (!_ctx.error && !_ctx.uploading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, _hoisted_4))\n : _createCommentVNode(\"\", true),\n (!_ctx.error && !_ctx.uploading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n (!_ctx.uploading && !_ctx.error)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"span\", {\n class: \"text-btn\",\n onClick: _cache[1] || (_cache[1] = (...args) => (_ctx.selectFile && _ctx.selectFile(...args))),\n tabindex: \"0\"\n }, \"Choose a file\"),\n _createTextVNode(\" \"),\n (_ctx.dragAndDropCapable)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_6, \"or drag it here. Maximum file size: \" + _toDisplayString(_ctx.fileSizeLimit) + \"MB\", 1))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.disabled)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_7, [\n _renderSlot(_ctx.$slots, \"disabled-message\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.uploading)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_9,\n _createTextVNode(\"  Uploading... \")\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.error)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_10,\n _createTextVNode(\"  \" + _toDisplayString(_ctx.errorMsg.join(' | ')) + \" \", 1),\n _createElementVNode(\"span\", {\n style: {\"flex\":\"1 100%\"},\n class: \"text-btn\",\n onClick: _cache[2] || (_cache[2] = (...args) => (_ctx.tryAgain && _ctx.tryAgain(...args))),\n tabindex: \"0\"\n }, \"Try Again\")\n ], 64))\n : _createCommentVNode(\"\", true)\n ])\n ], 32)\n ], 34))\n}","\nimport { Vue } from 'vue-class-component';\nimport { Ref, Prop } from 'vue-property-decorator';\n\nexport default class FileDragAndDrop extends Vue {\n\n @Prop({ default: null }) fileInput!: Array;\n @Prop({ default: false }) disabled!: boolean;\n @Prop({ default: false }) uploading!: boolean;\n @Prop({ default: null }) numFileLimit!: number;\n @Prop({ default: 20 }) fileSizeLimit!: number;\n\n @Ref('fileSelector') readonly fileSelector!: HTMLElement;\n\n id: string = this.$guid();\n dragAndDropCapable = false;\n selectedFiles: Array = [];\n error = false;\n errorMsg: Array = [];\n\n private acceptedFileTypesOnInput = \".PDF, .DOC, .DOCX, .XLS, .XLSX, .RFT, .JPG, .PNG\";\n private acceptedFileMineTypeArray = [\n 'application/pdf', \n 'application/msword', \n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n 'application/vnd.ms-excel',\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n 'image/jpg', 'image/jpeg', \n 'image/png'\n ];\n\n mounted(): void {\n this.dragAndDropCapable = this.determineDragAndDropCapable();\n }\n\n private droppedFiles(e: any) {\n e.preventDefault();\n if (!this.disabled) {\n e.currentTarget.classList.remove('drag-over');\n this.selectedFiles = Object.values(e.dataTransfer.files);\n this.checkSelectedFiles(this.selectedFiles);\n this.error = this.errorMsg.length > 0;\n if (!this.error) {\n this.$emit('file-input-changed', this.selectedFiles);\n // this.selectedFiles = [];\n }\n }\n }\n\n private dragover(e: any) {\n e.preventDefault();\n if (!this.disabled) {\n e.currentTarget.classList.add('drag-over');\n }\n }\n\n private dragleave(e: any) {\n e.preventDefault();\n e.currentTarget.classList.remove('drag-over');\n }\n\n private selectFile(e: any) {\n e.target.blur();\n const elm: HTMLElement = this.fileSelector as HTMLElement;\n elm.click();\n }\n\n private tryAgain(): void {\n this.error = false;\n this.selectedFiles = [];\n this.$emit('file-input-changed', this.selectedFiles);\n }\n\n private onFileSelected(event: any) {\n if (!this.disabled) {\n this.selectedFiles = Object.values(event.target.files);\n this.checkSelectedFiles(this.selectedFiles);\n this.error = this.errorMsg.length > 0;\n if (!this.error) {\n this.$emit('file-input-changed', this.selectedFiles);\n // this.selectedFiles = [];\n const elm: any = this.fileSelector;\n elm.value = null;\n }\n }\n }\n\n checkSelectedFiles(fileList: Array): void {\n this.errorMsg = [];\n if (this.numFileLimit && fileList.length > this.numFileLimit) {\n this.errorMsg.push('Too many files selected');\n }\n\n if (this.hasOverSizedFile(fileList, this.fileSizeLimit)) {\n this.errorMsg.push('Document(s) are too large to upload');\n }\n\n if (this.hasProhibitedFileType(fileList, this.acceptedFileMineTypeArray)) {\n this.errorMsg.push('File types allowed to upload: PDF, DOC, DOCX, XLS, XLSX, RFT, JPG, PNG');\n }\n }\n\n private hasOverSizedFile(fileList: Array, sizeLimit: number): boolean {\n return [...fileList].filter(x => (x.size / 1024000) > sizeLimit).length > 0;\n }\n\n private hasProhibitedFileType(fileList: Array, allowedFileType: Array): boolean {\n return [...fileList].filter(x => !allowedFileType.includes(x.type)).length > 0;\n }\n\n public $guid() {\n const S4 = () => {\n // tslint:disable-next-line: no-bitwise\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n };\n // then to call it, plus stitch in '4' in the third group\n // tslint:disable-next-line: max-line-length\n return (S4() + S4() + '-' + S4() + '-4' + S4().substr(0, 3) + '-' + S4() + '-' + S4() + S4() + S4()).toLowerCase();\n }\n\n private determineDragAndDropCapable() {\n\n const div: any = document.createElement('div');\n\n return (('draggable' in div)\n || ('ondragstart' in div && 'ondrop' in div))\n && 'FormData' in window\n && 'FileReader' in window;\n }\n\n}\n","import { render } from \"./file-drag-and-drop.html?vue&type=template&id=09e64137&scoped=true&ts=true\"\nimport script from \"./file-drag-and-drop.ts?vue&type=script&lang=ts\"\nexport * from \"./file-drag-and-drop.ts?vue&type=script&lang=ts\"\n\nimport \"./file-drag-and-drop.scss?vue&type=style&index=0&id=09e64137&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-09e64137\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withKeys as _withKeys, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-47d1afb2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"postcode-search\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"title\" }, [\n /*#__PURE__*/_createTextVNode(\"Search \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\"} }, \"(Enter Suburb name or Postcode to search)\")\n], -1))\nconst _hoisted_3 = { class: \"flex-row autocomplete pa-0 mt-1\" }\nconst _hoisted_4 = { class: \"icon\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"fas fa-spinner fa-spin\"\n}\nconst _hoisted_6 = {\n key: 1,\n class: \"fal fa-search\"\n}\nconst _hoisted_7 = {\n key: 0,\n id: \"autocomplete-results\",\n class: \"autocomplete-results\"\n}\nconst _hoisted_8 = [\"onClick\", \"innerHTML\"]\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_10 = { class: \"flex-row\" }\nconst _hoisted_11 = { style: {\"flex\":\"5\"} }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Suburb\", -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_14 = { style: {\"flex\":\"2\"} }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Postcode\", -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_17 = { style: {\"flex\":\"3\"} }\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"State\", -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"col-12 ma-0\",\n style: {\"width\":\"100%\"},\n type: \"text\",\n ref: \"suburbSearch\",\n autocomplete: \"new-name\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.query) = $event)),\n maxlength: \"50\",\n onInput: _cache[1] || (_cache[1] = $event => (_ctx.formDirty = true)),\n onKeydown: [\n _cache[2] || (_cache[2] = _withKeys((...args) => (_ctx.onArrowDown && _ctx.onArrowDown(...args)), [\"down\"])),\n _cache[3] || (_cache[3] = _withKeys((...args) => (_ctx.onArrowUp && _ctx.onArrowUp(...args)), [\"up\"])),\n _cache[4] || (_cache[4] = _withKeys((...args) => (_ctx.onEnter && _ctx.onEnter(...args)), [\"enter\"]))\n ],\n placeholder: \"Enter Suburb name or Postcode\"\n }, null, 544), [\n [_vModelText, _ctx.query]\n ]),\n _createElementVNode(\"span\", _hoisted_4, [\n (_ctx.isSearching)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_5))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_6))\n ]),\n (_ctx.isOpen && _ctx.suburbList.length > 0)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_7, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.suburbList, (suburb, i) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: i,\n onClick: $event => (_ctx.selectSuburbFromSearch(suburb)),\n class: _normalizeClass([\"autocomplete-result\", { 'is-active': i === _ctx.arrowCounter }]),\n innerHTML: _ctx.highlightWord(suburb.postcode + ', ' + suburb.suburbName.trim() + ', ' + suburb.stateName)\n }, null, 10, _hoisted_8))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box read-only\", {error: _ctx.suburbError}])\n }, [\n _hoisted_12,\n _createElementVNode(\"div\", {\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.$refs['suburbSearch'].focus()))\n }, _toDisplayString(_ctx.suburbName), 1),\n _hoisted_13\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box read-only\", {error: _ctx.suburbError}])\n }, [\n _hoisted_15,\n _createElementVNode(\"div\", {\n onClick: _cache[6] || (_cache[6] = $event => (_ctx.$refs['suburbSearch'].focus()))\n }, _toDisplayString(_ctx.postcode), 1),\n _hoisted_16\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box read-only\", {error: _ctx.suburbError}])\n }, [\n _hoisted_18,\n _createElementVNode(\"div\", {\n onClick: _cache[7] || (_cache[7] = $event => (_ctx.$refs['suburbSearch'].focus()))\n }, _toDisplayString(_ctx.stateName), 1),\n _hoisted_19\n ], 2)\n ])\n ])\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { debounce } from \"lodash\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n\n@Options({\n props: {\n suburbStatePostcode: Object,\n suburbError: Boolean,\n },\n components: {}\n})\nexport default class PostcodeSearch extends Vue {\n private suburbStatePostcode!: SuburbStatePostcode;\n private suburbError!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private query = '';\n private isSearching = false;\n private isOpen = false;\n private isPostcodeSearching = false;\n private isPostcodeOpen = false;\n private isSuburbValid = true;\n private formDirty = false;\n\n private arrowCounter = -1;\n private searchDebounced: any = null;\n\n private suburbList = [];\n private postcodeList = [];\n private canSubmit = true;\n\n private suburbName = '';\n private postcode = '';\n private stateName = '';\n\n @Watch('query')\n private onKeywordChange(): void {\n setTimeout(this.searchDebounced.cancel, 0);\n setTimeout(this.searchDebounced, 0);\n }\n\n mounted(): void {\n this.suburbName = this.suburbStatePostcode.suburbName;\n this.postcode = this.suburbStatePostcode.postcode;\n this.stateName = this.suburbStatePostcode.stateName;\n document.addEventListener('click', this.handleClickOutside);\n\n this.searchDebounced = debounce(() => {\n if (this.query.trim() !== '') {\n this.getSuburbPostcodeList();\n }\n }, 500);\n }\n\n beforeUnmount(): void {\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private handleClickOutside(event: any) {\n if (this.$el !== (event.target)) {\n this.isOpen = false;\n this.arrowCounter = -1;\n }\n }\n\n private getSuburbPostcodeList() {\n // console.log('form is dirty: ', this.formDirty);\n if (this.formDirty) {\n if (this.query.length == 4 && parseInt(this.query) > 999) {\n this.getPostcodeList();\n } else {\n this.getSuburbList();\n }\n }\n }\n\n private getSuburbList() {\n if (this.query.length > 2) {\n this.isSearching = true;\n const body: any = { 'keyword': this.query.trim() }\n this.apiService.CodeApi?.apiV1CodeGetSuburbStatePostcodePost(body)\n .then((res: any) => {\n this.processResult(res);\n })\n .catch((err: any) => {\n this.ai.trackException('Error getting suburb list: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting suburb list: ' + err.response.status);\n this.isSearching = false;\n })\n }\n\n }\n\n private getPostcodeList() {\n if (this.query.length == 4) {\n this.isSearching = true;\n const body: any = { 'keyword': this.query.trim() }\n this.apiService.CodeApi?.apiV1CodeGetSuburbStatePostcodePost(body)\n .then((res: any) => {\n this.processResult(res);\n })\n .catch((err: any) => {\n this.ai.trackException('Error getting Postcode list: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting Postcode List: ' + err.response.status);\n this.isSearching = false;\n })\n }\n }\n\n private processResult(res: any) {\n // const el = this.$refs.suburbName as HTMLElement;\n this.suburbList = [];\n this.suburbList = res.data.data;\n this.isSearching = false;\n // console.log('suburbList.length: ', this.suburbList.length);\n if (this.suburbList.length > 0) {\n this.arrowCounter = -1;\n this.isOpen = this.suburbList.length > 0;\n // el.className = 'has-success';\n // console.log('suburbList: ', this.suburbList);\n } else {\n // console.log('Not result return', this.suburbList.length);\n this.isOpen = false;\n // el.className = 'has-error';\n this.canSubmit = false;\n }\n }\n\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.query + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.suburbList.length > 0) {\n if (this.arrowCounter < this.suburbList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n } else {\n if (this.arrowCounter < this.postcodeList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n this.formDirty = false;\n this.isOpen = false;\n if (this.suburbList.length > 0) {\n this.selectSuburbFromSearch(\n this.suburbList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectSuburbFromSearch(suburb: SuburbStatePostcode) {\n this.isOpen = false;\n this.suburbName = suburb.suburbName;\n this.postcode = suburb.postcode;\n this.stateName = suburb.stateName;\n const _suburb: SuburbStatePostcode = {\n suburbId: suburb.suburbId,\n suburbName: suburb.suburbName,\n postcode: suburb.postcode,\n postCodeSuburbId: suburb.postCodeSuburbId,\n stateId: suburb.stateId,\n stateName: suburb.stateName,\n state: suburb.state,\n }\n this.$emit('updateSuburb', _suburb);\n this.query = '';\n }\n\n}\n\n","import { render } from \"./postcodeSearch.html?vue&type=template&id=47d1afb2&scoped=true&ts=true\"\nimport script from \"./postcodeSearch.ts?vue&type=script&lang=ts\"\nexport * from \"./postcodeSearch.ts?vue&type=script&lang=ts\"\n\nimport \"./postcodeSearch.scss?vue&type=style&index=0&id=47d1afb2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-47d1afb2\"]])\n\nexport default __exports__","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, normalizeStyle as _normalizeStyle, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1dbd892d\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { key: 0 }\nconst _hoisted_2 = { key: 1 }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", {\n class: \"address-preview\",\n style: _normalizeStyle(_ctx.style)\n }, [\n (!_ctx.noTitle)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_1, \"Address Preview:\"))\n : _createCommentVNode(\"\", true),\n (_ctx.address)\n ? (_openBlock(), _createElementBlock(\"pre\", _hoisted_2, _toDisplayString(_ctx.getAddressEncoded), 1))\n : _createCommentVNode(\"\", true)\n ], 4))\n}","import { Options, Vue } from \"vue-property-decorator\";\nimport { AddressDetail } from \"@/shared/modules/typescript-api-client/models\";\n\n\n@Options({\n props: {\n address: Object,\n noTitle: Boolean,\n style: String,\n },\n components: {}\n})\nexport default class AddressPreview extends Vue {\n private address!: AddressDetail;\n private noTitle!: boolean;\n private style!: string;\n\n private addressEncoded = '';\n\n get getAddressEncoded() {\n let address: AddressDetail = this.address;\n const countryName: string = address.countryName ? address.countryName : '';\n let addressEncoded = '';\n address = JSON.parse(JSON.stringify(address).replace(/:null/gi, ':\"\"')); // replace all null value\n if (countryName !== '' && countryName.toLowerCase() == 'australia') {\n const comma = address['suburbName'] && address['suburbName'].length > 0 ? ', ' : ' ';\n switch (address['addressTypeId']) {\n case 1: // Street\n addressEncoded = this.trimLine(address['buildingName']) + '\\n';\n addressEncoded += this.trimLine(address['buildingTypeName'] + ' ' + address['buildingNumber'] + ' ' + address['level']) + '\\n';\n addressEncoded += this.trimLine(address['streetNumber'] + ' ' + address['streetName'] + ' ' + address['streetTypeName']) + '\\n';\n addressEncoded += this.trimLine(address['suburbName'] + comma + address['stateName'] + ' ' + address['postcode']);\n break;\n case 2: // PO Box\n addressEncoded = address['deliveryTypeName'] + ' ' + address['poBox'] + '\\n';\n addressEncoded += address['suburbName'] + comma + address['stateName'] + ' ' + address['postcode'];\n break;\n case 3: // DX address\n addressEncoded = 'DX ' + address['dxNumber'] + '\\n';\n addressEncoded += address['dxExchangeTypeName'] + '\\n';\n break;\n }\n } else if (countryName !== '') {\n addressEncoded = address['foreignAddress'] + '\\n' + address['countryName'];\n } else {\n // addressEncoded = JSON.stringify(address).replaceAll('\"','');\n }\n return addressEncoded.replaceAll('undefined', '').trim();\n }\n\n private trimLine(txt: string) {\n if (txt) {\n return txt.trim();\n } else {\n return '';\n }\n }\n\n}\n\n","import { render } from \"./address-preview.html?vue&type=template&id=1dbd892d&scoped=true&ts=true\"\nimport script from \"./address-preview.ts?vue&type=script&lang=ts\"\nexport * from \"./address-preview.ts?vue&type=script&lang=ts\"\n\nimport \"./address-preview.scss?vue&type=style&index=0&id=1dbd892d&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1dbd892d\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, vModelText as _vModelText, vModelRadio as _vModelRadio, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0d75349a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"address-component\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Country / Region\", -1))\nconst _hoisted_3 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_6 = [\"value\"]\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Required field. \")\n], -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_9 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_11 = { key: 3 }\nconst _hoisted_12 = { key: 0 }\nconst _hoisted_13 = { class: \"row\" }\nconst _hoisted_14 = { class: \"radio-button-group\" }\nconst _hoisted_15 = {\n class: \"col-3 radio-button\",\n style: {\"display\":\"inline\"}\n}\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Street Address\")\n], -1))\nconst _hoisted_17 = {\n class: \"col-3 radio-button\",\n style: {\"display\":\"inline\"}\n}\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"PO Box\")\n], -1))\nconst _hoisted_19 = {\n class: \"col-3 radio-button\",\n style: {\"display\":\"inline\"}\n}\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"DX Address\")\n], -1))\nconst _hoisted_21 = {\n key: 1,\n class: \"\"\n}\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_23 = { class: \"input-box\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Building name \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_26 = { class: \"flex-row address-row1\" }\nconst _hoisted_27 = { style: {\"flex\":\"1\"} }\nconst _hoisted_28 = { class: \"dropdown-menu\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Building type \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_30 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: {id: 0, name: ''} }, null, -1))\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_34 = { style: {\"flex\":\"1\"} }\nconst _hoisted_35 = { class: \"input-box\" }\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Building number \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_37 = { style: {\"flex\":\"1\"} }\nconst _hoisted_38 = { class: \"input-box\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Level / Floor \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_41 = { class: \"flex-row address-row2\" }\nconst _hoisted_42 = { style: {\"flex\":\"2\"} }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Street number\", -1))\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_45 = { style: {\"flex\":\"5\"} }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Street name\", -1))\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_48 = { style: {\"flex\":\"3\"} }\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Street type\", -1))\nconst _hoisted_50 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: {id: 0, name: ' '} }, null, -1))\nconst _hoisted_52 = [\"value\"]\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_54 = { key: 2 }\nconst _hoisted_55 = { class: \"row\" }\nconst _hoisted_56 = { class: \"col-12\" }\nconst _hoisted_57 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Delivery Type\", -1))\nconst _hoisted_58 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\"\n}, \"- Please select -\", -1))\nconst _hoisted_60 = [\"value\"]\nconst _hoisted_61 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_62 = { class: \"row\" }\nconst _hoisted_63 = { class: \"col-12\" }\nconst _hoisted_64 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"PO Box\", -1))\nconst _hoisted_65 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_66 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_67 = { key: 3 }\nconst _hoisted_68 = { class: \"suburb-check pa-1\" }\nconst _hoisted_69 = { key: 4 }\nconst _hoisted_70 = { class: \"row\" }\nconst _hoisted_71 = { class: \"col-12\" }\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"DX Number\", -1))\nconst _hoisted_73 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_74 = { class: \"row\" }\nconst _hoisted_75 = { class: \"col-12\" }\nconst _hoisted_76 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"DX Exchange\", -1))\nconst _hoisted_77 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_78 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: {id: null, name: null},\n style: {\"color\":\"#eee\"},\n disabled: \"\",\n selected: \"\"\n}, null, -1))\nconst _hoisted_79 = [\"value\"]\nconst _hoisted_80 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PostcodeSearch = _resolveComponent(\"PostcodeSearch\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([\"dropdown-menu\", !_ctx.countryCheck && _ctx.isSubmitting ? 'error': ''])\n }, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.country) = $event)),\n onChange: _cache[1] || (_cache[1] = (...args) => (_ctx.setCountry && _ctx.setCountry(...args))),\n disabled: _ctx.disableCountrySelection\n }, [\n _hoisted_5,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.countryList, (c) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: c.id, name: c.name}\n }, _toDisplayString(c.name), 9, _hoisted_6))\n }), 256))\n ], 40, _hoisted_4), [\n [_vModelSelect, _ctx.country]\n ])\n ]),\n _hoisted_7\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_8,\n (_ctx.country.id > 0 && _ctx.country.name !== 'AUSTRALIA')\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass({'address-error': _ctx.newAddress.foreignAddress?.trim() == '' && _ctx.isSubmitting})\n }, [\n _createElementVNode(\"h5\", null, _toDisplayString(_ctx.overseaAddressLabel), 1),\n _withDirectives(_createElementVNode(\"textarea\", {\n style: {\"width\":\"100%\",\"height\":\"8rem\",\"padding\":\"0.5rem\",\"font-family\":\"var(--font-body-text)\"},\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.newAddress.foreignAddress) = $event)),\n maxlength: \"250\"\n }, null, 512), [\n [_vModelText, _ctx.newAddress.foreignAddress]\n ]),\n (!_ctx.foreignAddressCheck && _ctx.isSubmitting)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_9, [\n _hoisted_10,\n _createTextVNode(\" Required field. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (_ctx.country.id > 0 && _ctx.country.name == 'AUSTRALIA')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n (_ctx.showAddressType)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"label\", _hoisted_15, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n name: \"address-type\",\n value: 1,\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.newAddress.addressTypeId) = $event))\n }, null, 512), [\n [_vModelRadio, _ctx.newAddress.addressTypeId]\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"label\", _hoisted_17, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n name: \"address-type\",\n value: 2,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.newAddress.addressTypeId) = $event))\n }, null, 512), [\n [_vModelRadio, _ctx.newAddress.addressTypeId]\n ]),\n _hoisted_18\n ]),\n _createElementVNode(\"label\", _hoisted_19, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no3\",\n name: \"address-type\",\n value: 3,\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.newAddress.addressTypeId) = $event))\n }, null, 512), [\n [_vModelRadio, _ctx.newAddress.addressTypeId]\n ]),\n _hoisted_20\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.newAddress.addressTypeId == 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _hoisted_22,\n _createElementVNode(\"div\", _hoisted_23, [\n _hoisted_24,\n _withDirectives(_createElementVNode(\"input\", {\n placeholder: \"Building name\",\n type: \"text\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => ((_ctx.newAddress.buildingName) = $event)),\n onChange: _cache[7] || (_cache[7] = (...args) => (_ctx.onNewAddressChange && _ctx.onNewAddressChange(...args))),\n maxlength: \"50\"\n }, null, 544), [\n [_vModelText, _ctx.newAddress.buildingName]\n ])\n ]),\n _hoisted_25,\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", _hoisted_27, [\n _createElementVNode(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"div\", _hoisted_30, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.buildingType) = $event)),\n onChange: _cache[9] || (_cache[9] = $event => (_ctx.buildingTypeChange(_ctx.buildingType)))\n }, [\n _hoisted_31,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.buildingTypes, (bt) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: bt.id, name: bt.description}\n }, _toDisplayString(bt.description), 9, _hoisted_32))\n }), 256))\n ], 544), [\n [_vModelSelect, _ctx.buildingType]\n ])\n ]),\n _hoisted_33\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"div\", _hoisted_35, [\n _hoisted_36,\n _withDirectives(_createElementVNode(\"input\", {\n placeholder: \"Building number\",\n type: \"text\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.newAddress.buildingNumber) = $event)),\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.newAddress.buildingNumber]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_37, [\n _createElementVNode(\"div\", _hoisted_38, [\n _hoisted_39,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"e.g. Level 1 or Floor 25\",\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => ((_ctx.newAddress.level) = $event)),\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.newAddress.level]\n ])\n ])\n ])\n ]),\n _hoisted_40,\n _createElementVNode(\"div\", _hoisted_41, [\n _createElementVNode(\"div\", _hoisted_42, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.streetNumberCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_43,\n _withDirectives(_createElementVNode(\"input\", {\n placeholder: \"Street number\",\n type: \"text\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.newAddress.streetNumber) = $event)),\n onChange: _cache[13] || (_cache[13] = (...args) => (_ctx.onNewAddressChange && _ctx.onNewAddressChange(...args))),\n maxlength: \"50\"\n }, null, 544), [\n [_vModelText, _ctx.newAddress.streetNumber]\n ]),\n _hoisted_44\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_45, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.streetNameCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_46,\n _withDirectives(_createElementVNode(\"input\", {\n placeholder: \"Street name\",\n type: \"text\",\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => ((_ctx.newAddress.streetName) = $event)),\n onChange: _cache[15] || (_cache[15] = (...args) => (_ctx.onNewAddressChange && _ctx.onNewAddressChange(...args))),\n maxlength: \"50\"\n }, null, 544), [\n [_vModelText, _ctx.newAddress.streetName]\n ]),\n _hoisted_47\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_48, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"dropdown-menu\", !_ctx.streetTypeCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_49,\n _createElementVNode(\"div\", _hoisted_50, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.streetType) = $event)),\n onChange: _cache[17] || (_cache[17] = $event => (_ctx.streetTypeChange(_ctx.streetType)))\n }, [\n _hoisted_51,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.streetTypes, (st) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: st.id, name: st.description}\n }, _toDisplayString(st.description), 9, _hoisted_52))\n }), 256))\n ], 544), [\n [_vModelSelect, _ctx.streetType]\n ])\n ])\n ], 2)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_53,\n (_ctx.newAddress.addressTypeId == 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_54, [\n _createElementVNode(\"div\", _hoisted_55, [\n _createElementVNode(\"div\", _hoisted_56, [\n (_ctx.deliveryTypeList)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"dropdown-menu\", !_ctx.deliveryTypeCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_57,\n _createElementVNode(\"div\", _hoisted_58, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => ((_ctx.deliveryType) = $event)),\n class: _normalizeClass(!_ctx.deliveryType ? 'placeholder' : ''),\n id: \"deliveryTypeSelection\",\n onChange: _cache[19] || (_cache[19] = $event => (_ctx.setDeliveryType(_ctx.deliveryType)))\n }, [\n _hoisted_59,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.deliveryTypeList, (dt) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: dt.id, name: dt.name}\n }, _toDisplayString(dt.name), 9, _hoisted_60))\n }), 256))\n ], 34), [\n [_vModelSelect, _ctx.deliveryType]\n ])\n ]),\n _hoisted_61\n ], 2))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_62, [\n _createElementVNode(\"div\", _hoisted_63, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.poBoxCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_64,\n _withDirectives(_createElementVNode(\"input\", {\n ref: \"poBox\",\n class: \"po-box\",\n type: \"text\",\n placeholder: \"PO Box\",\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => ((_ctx.newAddress.poBox) = $event)),\n maxlength: \"50\",\n onChange: _cache[21] || (_cache[21] = (...args) => (_ctx.onNewAddressChange && _ctx.onNewAddressChange(...args)))\n }, null, 544), [\n [_vModelText, _ctx.newAddress.poBox]\n ]),\n _hoisted_65\n ], 2)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_66,\n (_ctx.newAddress.addressTypeId == 1 || _ctx.newAddress.addressTypeId == 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_67, [\n _createElementVNode(\"div\", _hoisted_68, [\n _createVNode(_component_PostcodeSearch, {\n suburbStatePostcode: _ctx.suburbStatePostcode,\n \"onUpdate:suburbStatePostcode\": _cache[22] || (_cache[22] = $event => ((_ctx.suburbStatePostcode) = $event)),\n onUpdateSuburb: _ctx.updateSuburb,\n suburbError: _ctx.suburbError,\n \"onUpdate:suburbError\": _cache[23] || (_cache[23] = $event => ((_ctx.suburbError) = $event))\n }, null, 8, [\"suburbStatePostcode\", \"onUpdateSuburb\", \"suburbError\"])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.newAddress.addressTypeId == 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [\n _createElementVNode(\"div\", _hoisted_70, [\n _createElementVNode(\"div\", _hoisted_71, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.dxNumberCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_72,\n _withDirectives(_createElementVNode(\"input\", {\n ref: \"dxNumber\",\n class: \"dx-number\",\n type: \"text\",\n placeholder: \"DX Number\",\n maxlength: \"50\",\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => ((_ctx.newAddress.dxNumber) = $event)),\n onChange: _cache[25] || (_cache[25] = (...args) => (_ctx.onNewAddressChange && _ctx.onNewAddressChange(...args)))\n }, null, 544), [\n [_vModelText, _ctx.newAddress.dxNumber]\n ]),\n _hoisted_73\n ], 2)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_74, [\n _createElementVNode(\"div\", _hoisted_75, [\n (_ctx.deliveryTypeList)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"dropdown-menu\", !_ctx.dxExchangeTypeCheck && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_76,\n _createElementVNode(\"div\", _hoisted_77, [\n _withDirectives(_createElementVNode(\"select\", {\n ref: \"dxExchange\",\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => ((_ctx.dxExchangeType) = $event)),\n class: _normalizeClass(!_ctx.deliveryType ? 'placeholder' : ''),\n onChange: _cache[27] || (_cache[27] = $event => (_ctx.setDxExchangeType(_ctx.dxExchangeType)))\n }, [\n _hoisted_78,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.dxExchangeTypeList, (dx) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: dx.id, name: dx.description}\n }, _toDisplayString(dx.description), 9, _hoisted_79))\n }), 256))\n ], 34), [\n [_vModelSelect, _ctx.dxExchangeType]\n ])\n ]),\n _hoisted_80\n ], 2))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AddressDetail, Country, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\n\n\n@Options({\n props: {\n address: Object,\n showAddressType: Boolean,\n disableCountrySelection: Boolean,\n isSubmitting: Boolean,\n overseaAddressLabel: {\n type: String,\n default: 'Address for service'\n },\n },\n components: {\n PostcodeSearch,\n LoadingIndicator,\n }\n})\nexport default class AddressComponent extends Vue {\n private address!: AddressDetail;\n private isSubmitting!: boolean;\n private showAddressType?: boolean;\n private validAddressDetails!: boolean;\n private disableCountrySelection?: boolean;\n private overseaAddressLabel?: string;\n \n\n private newAddress: AddressDetail = {};\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private countryList: Country[] = [];\n\n // private addressTypeId = 1;\n private buildingTypes = [];\n private streetTypes = [];\n\n private postcodeList = [];\n private deliveryTypeList = [];\n private dxExchangeTypeList = [];\n\n private country: any = {};\n private buildingType: any = '';\n private streetType: any = '';\n private deliveryType: any = '';\n private dxExchangeType: any = '';\n\n private isLoadingData = false;\n private suburbStatePostcode = {};\n\n private streetNumberCheck = true;\n private streetNameCheck = true;\n private streetTypeCheck = true;\n private suburbCheck = true;\n private countryCheck = true;\n private foreignAddressCheck = true;\n private deliveryTypeCheck = true;\n private poBoxCheck = true;\n private dxExchangeTypeCheck = true;\n private dxNumberCheck = true;\n\n @Watch('address')\n private onAddressChange() {\n // this.newAddress = JSON.parse(JSON.stringify(this.address));\n }\n\n @Watch('newAddress.addressTypeId')\n private onRadioOptionChange() {\n if (this.newAddress.addressTypeId == 1) {\n this.deliveryTypeCheck = true;\n this.poBoxCheck = true;\n this.dxExchangeTypeCheck = true;\n this.dxNumberCheck = true;\n }\n if (this.newAddress.addressTypeId == 2) {\n this.streetNumberCheck = true;\n this.streetNameCheck = true;\n this.streetTypeCheck = true;\n this.dxExchangeTypeCheck = true;\n this.dxNumberCheck = true;\n }\n if (this.newAddress.addressTypeId == 3) {\n this.streetNumberCheck = true;\n this.streetNameCheck = true;\n this.streetTypeCheck = true;\n this.deliveryTypeCheck = true;\n this.poBoxCheck = true;\n this.suburbCheck = true;\n }\n this.onNewAddressChange();\n }\n\n @Watch('newAddress.foreignAddress')\n private foreignAddressChange() {\n this.onNewAddressChange();\n }\n\n private onNewAddressChange() {\n this.countryCheck = this.newAddress.countryId && this.newAddress.countryId > 0;\n if (this.newAddress.countryName !== 'AUSTRALIA') {\n this.foreignAddressCheck = this.newAddress.foreignAddress !== '';\n this.$emit('updateAddress', this.newAddress, this.foreignAddressCheck);\n } else {\n this.foreignAddressCheck = true;\n if (this.newAddress.addressTypeId === undefined) {\n this.newAddress.addressTypeId = 1;\n }\n if (this.newAddress.addressTypeId == 1) {\n this.streetNumberCheck = this.newAddress.streetNumber && this.newAddress.streetNumber.trim() !== '';\n this.streetNameCheck = this.newAddress.streetName && this.newAddress.streetName.trim() !== '';\n // this.streetTypeCheck = this.newAddress.streetTypeId !== null && this.newAddress.streetTypeId > 0;\n this.suburbCheck = this.newAddress.suburbId && this.newAddress.suburbId > 0;\n }\n if (this.newAddress.addressTypeId == 2) {\n this.deliveryTypeCheck = this.newAddress.deliveryTypeId !== null && this.newAddress.deliveryTypeId > 0;\n this.poBoxCheck = this.newAddress.poBox && this.newAddress.poBox.trim() !== '';\n this.suburbCheck = this.newAddress.suburbId && this.newAddress.suburbId > 0;\n }\n if (this.newAddress.addressTypeId == 3) {\n this.dxExchangeTypeCheck = this.newAddress.dxExchangeTypeId !== null && this.newAddress.dxExchangeTypeId > 0;\n this.dxNumberCheck = this.newAddress.dxNumber && this.newAddress.dxNumber.trim() !== '';\n }\n\n const _validAddressDetails = this.countryCheck && this.streetNumberCheck && this.streetNameCheck\n && this.streetTypeCheck && this.suburbCheck\n && this.deliveryTypeCheck && this.poBoxCheck && this.dxExchangeTypeCheck && this.dxNumberCheck;\n\n this.$emit('updateAddress', this.newAddress, _validAddressDetails);\n }\n }\n\n mounted(): void {\n this.preLoadData();\n }\n\n private async preLoadData() {\n const _countryList = store.getters.getCountryList;\n this.countryList = _countryList == null ? null : JSON.parse(_countryList);\n\n const dxExchangeTypeList = store.getters.getDxExchangeTypeList;\n this.dxExchangeTypeList = dxExchangeTypeList == null ? null : JSON.parse(dxExchangeTypeList);\n\n this.isLoadingData = true;\n this.$emit('readyState', !this.isLoadingData);\n\n if (this.countryList == null) {\n await this.apiService.CodeApi?.apiV1CodeGetCountriesGet()\n .then((res: any) => {\n this.countryList = res.data.data;\n store.dispatch('setCountryList', this.countryList);\n })\n .catch((err: any) => {\n // console.log(err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting country list: ' + err.response?.status);\n this.ai.trackException('Error getting country list: ' + err);\n })\n }\n\n if (this.dxExchangeTypeList == null) {\n await this.apiService.CodeApi?.apiV1CodeGetDxExchangeListGet()\n .then((res: any) => {\n this.dxExchangeTypeList = res.data.data;\n store.dispatch('setDxExchangeTypeList', this.dxExchangeTypeList);\n })\n .catch((err: any) => {\n // console.log(err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error DX Exchange List: ' + err.response.status);\n this.ai.trackException('Error getting DX Exchange list: ' + err);\n })\n }\n\n try {\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetBuildingTypesGet(),\n this.apiService.CodeApi?.apiV1CodeGetStreetTypesGet(),\n this.apiService.CodeApi?.apiV1CodeGetDeliveryTypesGet(),\n ]);\n this.buildingTypes = resp[0].data.data;\n this.streetTypes = resp[1].data.data;\n this.deliveryTypeList = resp[2].data.data;\n\n this.isLoadingData = false;\n if (this.address?.countryId > 0) {\n this.newAddress = this.address;\n this.country = { id: this.newAddress.countryId, name: this.newAddress.countryName };\n }\n this.suburbStatePostcode = {\n suburbId: this.newAddress.suburbId,\n suburbName: this.newAddress.suburbName,\n postcode: this.newAddress.postcode,\n stateId: this.newAddress.stateId,\n stateName: this.newAddress.stateName,\n state: this.newAddress.state,\n postCodeSuburbId: this.newAddress.postCodeSuburbId,\n }\n this.streetType = {\n id: this.newAddress?.streetTypeId ?? 0,\n name: this.newAddress?.streetTypeName ?? '',\n }\n this.buildingType = {\n id: this.newAddress?.buildingTypeId ?? 0,\n name: this.newAddress?.buildingTypeName ?? '',\n }\n\n if (this.newAddress.deliveryTypeId && this.newAddress.deliveryTypeId !== 0) {\n this.deliveryType = { id: this.newAddress.deliveryTypeId, name: this.newAddress.deliveryTypeName };\n }\n\n if (this.newAddress.dxExchangeTypeId && this.newAddress.dxExchangeTypeId !== 0) {\n this.dxExchangeType = { id: this.newAddress.dxExchangeTypeId, name: this.newAddress.dxExchangeTypeName };\n }\n\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n this.$emit('readyState', !this.isLoadingData);\n }\n }\n\n private setCountry() {\n this.newAddress.countryId = this.country.id;\n this.newAddress.countryName = this.country.name;\n if (this.newAddress.countryName !== 'AUSTRALIA') {\n this.newAddress.foreignAddress = '';\n }\n this.onNewAddressChange();\n }\n\n private buildingTypeChange(bt: any) {\n this.newAddress.buildingTypeId = bt.id;\n this.newAddress.buildingTypeName = bt.name;\n this.onNewAddressChange();\n }\n\n private streetTypeChange(st: any) {\n this.newAddress.streetTypeId = st.id;\n this.newAddress.streetTypeName = st.name;\n this.onNewAddressChange();\n }\n\n private setDeliveryType(dt: any) {\n this.newAddress.deliveryTypeId = dt.id || '';\n this.newAddress.deliveryTypeName = dt.name || '';\n this.onNewAddressChange();\n }\n\n private setDxExchangeType(dx: any) {\n this.newAddress.dxExchangeTypeId = dx.id || '';\n this.newAddress.dxExchangeTypeName = dx.name || '';\n this.onNewAddressChange();\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.newAddress.suburbId = s.suburbId;\n this.newAddress.suburbName = s.suburbName;\n this.newAddress.postcode = s.postcode;\n this.newAddress.stateId = s.stateId;\n this.newAddress.stateName = s.stateName;\n this.newAddress.postCodeSuburbId = s.postCodeSuburbId;\n this.newAddress.state = s.state;\n this.onNewAddressChange();\n }\n\n get suburbError() {\n return !this.suburbCheck && this.isSubmitting;\n }\n\n}\n\n","import { render } from \"./address-component.html?vue&type=template&id=0d75349a&scoped=true&ts=true\"\nimport script from \"./address-component.ts?vue&type=script&lang=ts\"\nexport * from \"./address-component.ts?vue&type=script&lang=ts\"\n\nimport \"./address-component.scss?vue&type=style&index=0&id=0d75349a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0d75349a\"]])\n\nexport default __exports__","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport { AddressDetail, Application, PcRenewFileRequest, PcRenewIndividualDetail, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport AddressComponent from \"../address-component/index.vue\";\nimport _ from 'lodash';\n@Options({\n props: {\n currentDetails: Object,\n origNames: Object,\n },\n components: {\n FileDragAndDrop,\n LoadingIndicator,\n PostcodeSearch,\n AlertBox,\n Popover,\n ConfirmDialogue,\n AddressComponent,\n AddressPreview,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrCurrentDetailsUpdateModal extends Vue {\n private currentDetails!: PcRenewIndividualDetail;\n private origNames!: any;\n\n private isClosing = false;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private titles: any[] = [];\n private buildingTypes: any[] = [];\n private streetTypes: any[] = [];\n private buildingType: any = { id: 0, name: '' };\n private streetType: any = { id: 0, description: '' };\n\n private pcRenewFileTypes: any[] = [];\n private fileIdToDelete = 0;\n\n private popover: PopoverView = {\n key:'',\n content: '

Example:

.headings {
font-family: var(--font-headings);
}

.body-text {
font-family: var(--font-body-text);
}

',\n isShow: false,\n title: '',\n };\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = true;\n\n private requiredFileUpload = false;\n\n private formData: any = {};\n\n private fileList: Array = [];\n private uploading = false;\n private dateReceived: Date = null as any;\n private showDeleteAlert = false;\n\n private isSubmitting = false;\n private suburbStatePostcode: SuburbStatePostcode = {};\n\n // mandatory fields\n private formFirstName = true;\n private formSurname = true;\n private formFileUpload = true;\n private formPhoneNumber = true;\n private formEmail = true;\n private isEmailDuplicated = false;\n private addressCheck = true;\n private isUpdating = false;\n private newSeed = 1;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n this.preloadData();\n this.formData = JSON.parse(JSON.stringify(this.currentDetails));\n // console.log('this.formData: ', this.formData.communicationEmail)\n\n this.streetType = {\n id: this.formData.residentialAddress?.streetTypeId ?? 0,\n name: this.formData.residentialAddress?.streetTypeName ?? '',\n }\n this.buildingType = {\n id: this.formData.residentialAddress?.buildingTypeId ?? 0,\n name: this.formData.residentialAddress?.buildingTypeName ?? '',\n }\n\n this.suburbStatePostcode = {\n suburbId: this.formData.residentialAddress?.suburbId,\n suburbName: this.formData.residentialAddress?.suburbName,\n postcode: this.formData.residentialAddress?.postcode,\n stateId: this.formData.residentialAddress?.stateId,\n stateName: this.formData.residentialAddress?.stateName,\n }\n this.nameCheck();\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n private async preloadData() {\n try {\n // const _memberId: any = parseInt(this.$route.query.memberId as string, 10) || '';\n this.isLoadingData = true;\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetTitlesGet(),\n this.apiService.CodeApi?.apiV1CodeGetPcRenewFileTypesGet(),\n ]);\n this.titles = resp[0].data.data;\n this.pcRenewFileTypes = resp[1].data.data;\n } catch (err) {\n this.isLoadingData = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n }\n }\n\n private cancel() {\n // if (this.isDirty) {\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Cancel Update Current Details',\n // message: 'By cancelling, changes to the current screen will be lost.
Are you sure you want to cancel?',\n // okButton: 'Yes',\n // cancelButton: 'No',\n // }).then((res: any) => {\n // if (res) {\n // this.close();\n // }\n // })\n // } else {\n this.close();\n // }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n this.addressCheck = valid;\n }\n\n private update() {\n this.isSubmitting = true;\n this.isUpdating = true;\n this.formData.isCurrentDetailCorrect = true;\n if (this.formValidated()) {\n this.formData.residentialAddress = this.$addressCleanup(this.formData.residentialAddress);\n this.apiService.PcRenewApi?.apiV1PcRenewUpdatePersonalDetailPost(this.formData)\n .then(() => {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n this.$emit('reloadCurrentDetails');\n this.close();\n })\n .catch(err => {\n this.isUpdating = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n }\n })\n } else {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Please check all required fields');\n }\n\n }\n\n private formValidated(): boolean {\n this.formFirstName = this.formData.firstName.trim() !== '';\n this.formSurname = this.formData.surname.trim() !== '';\n this.formFileUpload = true;\n if (this.requiredFileUpload) {\n this.formFileUpload = this.formData.files.length > 0;\n }\n this.formPhoneNumber = this.formData.mobilePhone.phoneNumber?.trim() !== '' || this.formData.businessPhone.phoneNumber?.trim() !== '';\n this.formEmail = this.emailCheck();\n return this.formSurname && this.formFileUpload && this.addressCheck && this.formPhoneNumber && this.formEmail;\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList);\n }\n\n private deleteFile(id: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete);\n }\n })\n\n }\n\n private buildingTypeChange(bt: any) {\n this.formData.residentialAddress.buildingTypeId = bt.id;\n this.formData.residentialAddress.buildingTypeName = bt.name;\n }\n\n private streetTypeChange(st: any) {\n this.formData.residentialAddress.streetTypeId = st.id;\n this.formData.residentialAddress.streetTypeName = st.name;\n }\n\n private async deleteFileFromServer(id: number) {\n await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id)\n .then(() => {\n for (let i = 0; i < this.formData.files.length; i++) {\n if (this.formData.files[i].id === id) {\n this.formData.files.splice(i, 1);\n }\n }\n this.nameCheck();\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n })\n .catch(err => {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n })\n }\n\n private upload() {\n this.uploadAllFiles(this.fileList);\n }\n\n private async uploadAllFiles(fileList: Array): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File): Promise {\n // const _id: number = parseInt(this.$route.query.investigation as string, 10);\n this.getNextSeed();\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n };\n\n await this.apiService.FileApi?.apiV1FileSavePcRenewFilePost(\n body\n ).then(res => {\n this.formData.files.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n })\n })\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private nameCheck() {\n const _firstNameCheck = this.formData.firstName?.trim() == this.origNames.firstName?.trim();\n const _otherNameCheck = this.formData.otherName?.trim() == this.origNames.otherName?.trim();\n const _surnameCheck = this.formData.surname?.trim() == this.origNames.surname?.trim();\n this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private emailCheck(): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(this.formData.communicationEmail?.email);\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.formData.residentialAddress.suburbId = s.suburbId;\n this.formData.residentialAddress.suburbName = s.suburbName;\n this.formData.residentialAddress.postcode = s.postcode;\n this.formData.residentialAddress.stateId = s.stateId;\n this.formData.residentialAddress.stateName = s.stateName;\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n get isDirty(): boolean {\n return JSON.stringify(this.currentDetails) !== JSON.stringify(this.formData);\n }\n\n private getNextSeed() {\n this.newSeed = this.formData.files.length > 0\n ? (_.maxBy(this.formData.files, (f: PcRenewFileRequest) => f.seed) as PcRenewFileRequest).seed + 1\n : 1;\n }\n\n}\n\n\n\n","import { render } from \"./pcr-current-details-update-modal.html?vue&type=template&id=caa150fe&scoped=true&ts=true\"\nimport script from \"./pcr-current-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-current-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-current-details-update-modal.scss?vue&type=style&index=0&id=caa150fe&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-caa150fe\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { UPDATE_EMAIL_LINK } from '@/shared/config/config';\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport PcrWordingData from '@/assets/config/pcr-wording.json';\nimport PcrCurrentDetailsUpdateModal from \"../pcr-current-details-update-modal/index.vue\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport { AddressDetail, Application, PcRenewIndividualDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n PcrCurrentDetailsUpdateModal,\n AddressPreview,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class PcrCurrentDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n private emailUpdateInfo = (PcrWordingData[0][\"current-details\"][\"email-update-info\"]).replace('--[[UpdateEmailLink]]--', UPDATE_EMAIL_LINK);\n private isDetailsCorrect = NaN;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private practisingCertificate = {};\n private individualDetails: PcRenewIndividualDetail = {};\n private origNames = {};\n\n private contactPhoneInfoMissing = false;\n private addressMissing = false;\n\n private showUpdateDetailsModal = false;\n\n private popovers: PopoverView[] = [];\n\n @Watch('individualDetails.isCurrentDetailCorrect')\n private radioButtonChange() {\n this.eventCtrl.emit('canGoNext', this.individualDetails.isCurrentDetailCorrect);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', true);\n const _origName = store.getters.getPcrFormData.origNames;\n this.origNames = _origName;\n this.getDetails();\n }\n\n private async getDetails() {\n try {\n const _isRenewing = this.pcrFormData.individualDetails?.pcRenewApplicationId > 0;\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PcRenewApi?.apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(\n this.pcrApp.id, !_isRenewing\n ),\n this.apiService.IndividualApi?.apiV1IndividualGetPractisingCertificateDetailsGet(),\n this.apiService.PageApi?.apiV1PageGetPageContentsPageIdGet(2),\n ]);\n this.individualDetails = resp[0].data.data;\n this.individualDetails.isCurrentDetailCorrect = null;\n if (!_isRenewing) {\n this.origNames = {\n firstName: this.individualDetails.firstName,\n otherName: this.individualDetails.otherName,\n surname: this.individualDetails.surname,\n };\n }\n this.pcrFormData.appId = this.pcrApp.id;\n this.pcrFormData.origNames = this.origNames;\n this.pcrFormData.individualDetails = this.individualDetails;\n this.pcrFormData.individualDetails.noPcHardCopyRequired = !_isRenewing ? true : this.individualDetails.noPcHardCopyRequired == true;\n if (this.individualDetails.mobilePhone.phoneNumber || this.individualDetails.businessPhone.phoneNumber) {\n this.contactPhoneInfoMissing = false;\n } else {\n this.individualDetails.mobilePhone.phoneNumber = '';\n this.individualDetails.businessPhone.phoneNumber = '';\n this.contactPhoneInfoMissing = true;\n }\n this.addressMissing = this.individualDetails.residentialAddress == null;\n this.practisingCertificate = resp[1].data.data;\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key:resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n })\n }\n } catch (err: any) {\n this.errorLoadingDataSet = true;\n console.log(err.response?.status, err.response?.data);\n if (err.response?.data && err.response?.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n this.$router.push({ name: RouteN.Mars.Home.n });\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private reloadCurrentDetails() {\n this.apiService.PcRenewApi?.apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(\n this.pcrApp.id, false\n ).then(res => {\n this.individualDetails = res.data.data;\n this.individualDetails.isCurrentDetailCorrect = null;\n this.addressMissing = this.individualDetails.residentialAddress == null;\n this.pcrFormData.individualDetails = this.individualDetails;\n if (this.individualDetails.mobilePhone.phoneNumber || this.individualDetails.businessPhone.phoneNumber) {\n this.contactPhoneInfoMissing = false;\n }\n this.addressMissing = this.individualDetails.residentialAddress == null;\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to reload user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload user details');\n });\n }\n\n private updateCurrentDetails() {\n this.individualDetails.residentialAddress = this.individualDetails.residentialAddress ? this.initAddress(this.individualDetails.residentialAddress) : this.initAddress({});\n this.showUpdateDetailsModal = true;\n }\n\n get userAccount(): AuthorizedUser {\n return store.getters.getUserAccount;\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n get nameCheck() {\n const _firstNameCheck = this.individualDetails?.firstName?.trim() == this.pcrFormData.origNames?.firstName?.trim();\n const _otherNameCheck = this.individualDetails?.otherName?.trim() == this.pcrFormData.origNames?.otherName?.trim();\n const _surnameCheck = this.individualDetails?.surname?.trim() == this.pcrFormData.origNames?.surname?.trim();\n // this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n return !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.firmAddMapId = a.firmAddMapId || 0;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n}\n\n","import { render } from \"./pcr-current-details.html?vue&type=template&id=4cdcfaaa&scoped=true&ts=true\"\nimport script from \"./pcr-current-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-current-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-current-details.scss?vue&type=style&index=0&id=4cdcfaaa&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4cdcfaaa\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-73a84075\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mb-2\" }, \"Current Practice Record\", -1))\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"If the below details are correct, please press 'Next'.\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"If the below details need amending, please choose either 'Change details' or 'Add additional law practice'. \", -1))\nconst _hoisted_6 = { class: \"mb-3 mt-4\" }\nconst _hoisted_7 = { key: 2 }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Our records show you are not recorded with a law practice / employer/ entity\", -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"If these details are correct, please select 'Next'\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"To update your practice record details, please select 'Add additional law practice'\", -1))\nconst _hoisted_11 = [\n _hoisted_8,\n _hoisted_9,\n _hoisted_10\n]\nconst _hoisted_12 = { key: 3 }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PcrPracticeRecordCard = _resolveComponent(\"PcrPracticeRecordCard\")\n const _component_PcrPracticeRecordChangeDetailModal = _resolveComponent(\"PcrPracticeRecordChangeDetailModal\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_ctx.practiceRecords.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", null, \"We need to know what your practice details will be as at 1 July \" + _toDisplayString(_ctx.lastApplicationYear) + \".\", 1),\n _hoisted_4,\n _hoisted_5,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.practiceRecords, (p, index) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createVNode(_component_PcrPracticeRecordCard, {\n practiceRecord: p,\n index: index,\n onChangeDetails: _ctx.changeDetails,\n onRevertDetails: _ctx.revertDetails,\n showNoChange: _ctx.showNoChange,\n \"onUpdate:showNoChange\": _cache[0] || (_cache[0] = $event => ((_ctx.showNoChange) = $event))\n }, null, 8, [\"practiceRecord\", \"index\", \"onChangeDetails\", \"onRevertDetails\", \"showNoChange\"])\n ]))\n }), 256))\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_7, _hoisted_11)),\n (!_ctx.loadingDataSet)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml mt-4 mb-4\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.addPractice()))\n }, \"Add additional law practice\")\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showChangeDetailsModal)\n ? (_openBlock(), _createBlock(_component_PcrPracticeRecordChangeDetailModal, {\n key: 4,\n onClose: _cache[2] || (_cache[2] = $event => (_ctx.showChangeDetailsModal = false)),\n onUpdate: _ctx.update,\n selectedPracticeRecord: _ctx.selectedPracticeRecord,\n \"onUpdate:selectedPracticeRecord\": _cache[3] || (_cache[3] = $event => ((_ctx.selectedPracticeRecord) = $event)),\n pcRenewApplicationId: _ctx.pcRenewApplicationId,\n \"onUpdate:pcRenewApplicationId\": _cache[4] || (_cache[4] = $event => ((_ctx.pcRenewApplicationId) = $event)),\n addNew: _ctx.addNew\n }, null, 8, [\"onUpdate\", \"selectedPracticeRecord\", \"pcRenewApplicationId\", \"addNew\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_ConfirmDialogue, {\n key: 5,\n ref: \"confirmDialogue\",\n modalOpened: false,\n onUpdate: _ctx.update\n }, null, 8, [\"onUpdate\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, Fragment as _Fragment, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from '@/assets/arrow-right-big.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6cf12f1d\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record-card\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"card-header\"\n}\nconst _hoisted_3 = { class: \"card-body\" }\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Name of Law Practice / Employer / Entity\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Employment Status\", -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_12 = { class: \"phone-numbers\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Phone\", -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Fax\", -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_16 = {\n key: 1,\n class: \"right\"\n}\nconst _hoisted_17 = {\n key: 2,\n class: \"ribbon\"\n}\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \" Original \", -1))\nconst _hoisted_19 = [\n _hoisted_18\n]\nconst _hoisted_20 = {\n key: 3,\n class: \"ribbon\"\n}\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \" No Change \", -1))\nconst _hoisted_22 = [\n _hoisted_21\n]\nconst _hoisted_23 = {\n key: 1,\n class: \"gap\"\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"img\", { src: _imports_0 }, null, -1))\nconst _hoisted_25 = [\n _hoisted_24\n]\nconst _hoisted_26 = {\n key: 0,\n class: \"card-header\"\n}\nconst _hoisted_27 = { class: \"card-body\" }\nconst _hoisted_28 = { key: 0 }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Name of Law Practice / Employer / Entity\", -1))\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Practice Type\", -1))\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Employment Status\", -1))\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_36 = { key: 2 }\nconst _hoisted_37 = { key: 0 }\nconst _hoisted_38 = { key: 1 }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_42 = { class: \"phone-numbers\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Phone\", -1))\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Fax\", -1))\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_46 = { class: \"right\" }\nconst _hoisted_47 = { class: \"ribbon\" }\nconst _hoisted_48 = { key: 0 }\nconst _hoisted_49 = { key: 1 }\n\nexport function render(_ctx, _cache) {\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_Popover = _resolveComponent(\"Popover\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"cards\", _ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name ? 'updated':''])\n }, [\n (_ctx.practiceRecord.originalPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"card original\", _ctx.practiceRecord.originalPracticeRecord?.isPpp ? 'principal' : ''])\n }, [\n (_ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"h5\", _hoisted_2, \"Current Practice Record\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.practiceRecord.originalPracticeRecord?.isPpp)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_4, \"Principal Place of Practice\"))\n : _createCommentVNode(\"\", true),\n _hoisted_5,\n _hoisted_6,\n _createTextVNode(\" \" + _toDisplayString(_ctx.practiceRecord.originalPracticeRecord.name) + \" \", 1),\n _hoisted_7,\n _hoisted_8,\n _createTextVNode(\" \" + _toDisplayString(_ctx.practiceRecord.originalPracticeRecord.employmentStatus?.name) + \"   \", 1),\n _hoisted_9,\n _hoisted_10,\n _createVNode(_component_AddressPreview, {\n address: _ctx.getSelectedAddressFromArray(_ctx.practiceRecord.originalPracticeRecord.recordPracticeAddresses),\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"]),\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", null, [\n _hoisted_13,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumberFromArray(_ctx.practiceRecord.originalPracticeRecord.recordPracticeAddresses, false)), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _hoisted_14,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumberFromArray(_ctx.practiceRecord.originalPracticeRecord.recordPracticeAddresses, true)), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneNumbers', 3)\n }, null, 8, [\"popover\"])\n ])\n ]),\n _hoisted_15,\n (!_ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"button\", {\n class: \"btn btn-primary sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.changeDetails(false)))\n }, \"Change details\")\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, _hoisted_19))\n : (_ctx.showNoChange)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, _hoisted_22))\n : _createCommentVNode(\"\", true)\n ])\n ], 2))\n : _createCommentVNode(\"\", true),\n (_ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_23, _hoisted_25))\n : _createCommentVNode(\"\", true),\n (_ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"card new-record\", {principal: _ctx.practiceRecord.newPracticeRecord?.isPpp && !_ctx.practiceRecord.originalPracticeRecord?.name, ceased :_ctx.practiceRecord.newPracticeRecord?.employmentStatus.id == '999999999' }])\n }, [\n (_ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"h5\", _hoisted_26, \"Updated Practice Record\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_27, [\n (_ctx.practiceRecord.newPracticeRecord?.isPpp)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_28, \"Principal Place of Practice\"))\n : _createCommentVNode(\"\", true),\n _hoisted_29,\n _hoisted_30,\n _createTextVNode(\" \" + _toDisplayString(_ctx.practiceRecord.newPracticeRecord.name) + \" \", 1),\n (_ctx.practiceRecord.newPracticeRecord.firmId == null)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_31,\n _hoisted_32,\n _createTextVNode(\" \" + _toDisplayString(_ctx.practiceRecord.newPracticeRecord.firmType?.description) + \"   \", 1)\n ], 64))\n : _createCommentVNode(\"\", true),\n _hoisted_33,\n _hoisted_34,\n _createTextVNode(\" \" + _toDisplayString(_ctx.practiceRecord.newPracticeRecord.employmentStatus?.name) + \"   \", 1),\n _hoisted_35,\n (!_ctx.sameEmploymentStatus)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, [\n (_ctx.practiceRecord.newPracticeRecord.employmentStatus.id == 999999999)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_37, \"Cessation Date\"))\n : (_openBlock(), _createElementBlock(\"h4\", _hoisted_38, \"Date of Change\")),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$formatDate(_ctx.practiceRecord.newPracticeRecord.effectiveDate)) + \"   \", 1)\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_39,\n _hoisted_40,\n _createVNode(_component_AddressPreview, {\n address: _ctx.getSelectedAddressFromArray(_ctx.practiceRecord.newPracticeRecord.recordPracticeAddresses),\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"]),\n (_ctx.practiceRecord.newPracticeRecord.firmId)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 3 }, [\n _hoisted_41,\n _createElementVNode(\"div\", _hoisted_42, [\n _createElementVNode(\"div\", null, [\n _hoisted_43,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumberFromArray(_ctx.practiceRecord.newPracticeRecord.recordPracticeAddresses, false)), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _hoisted_44,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumberFromArray(_ctx.practiceRecord.newPracticeRecord.recordPracticeAddresses, true)), 1)\n ]),\n _createElementVNode(\"div\", null, [\n (_ctx.practiceRecord.newPracticeRecord.employmentStatus?.id !== 999999999)\n ? (_openBlock(), _createBlock(_component_Popover, {\n key: 0,\n popover: _ctx.$getPopover('PhoneNumbers', 3)\n }, null, 8, [\"popover\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n _hoisted_45,\n _createElementVNode(\"div\", _hoisted_46, [\n _createElementVNode(\"button\", {\n class: _normalizeClass([\"btn btn-outline sml mr-2\", {abc: _ctx.practiceRecord.newPracticeRecord?.isPpp}]),\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.revertDetails()))\n }, _toDisplayString(_ctx.btnTextRevertDelete), 3),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary sml\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.changeDetails(false)))\n }, \"Change details\")\n ]),\n _createElementVNode(\"div\", _hoisted_47, [\n (_ctx.practiceRecord.originalPracticeRecord?.name && _ctx.practiceRecord.newPracticeRecord?.name)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_48, \" Revised \"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_49, \" New \"))\n ])\n ])\n ], 2))\n : _createCommentVNode(\"\", true)\n ], 2)\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { PracticeDetails } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n index: Number,\n practiceRecord: Object,\n showNoChange: Boolean,\n },\n components: {\n Popover,\n AddressPreview,\n },\n mixins: [\n FormatDateTimeMixin\n ]\n})\nexport default class PcrPracticeRecordCard extends Vue {\n private index!: number;\n private practiceRecord!: PracticeDetails;\n private showNoChange!: boolean\n\n private isPrincipalPlace = false;\n\n private popover: PopoverView = {\n key:'',\n content: 'Hello world',\n isShow: true,\n title: ''\n };\n\n private changeDetails(addNew: boolean) {\n this.$emit('changeDetails', this.index, this.practiceRecord, addNew);\n }\n\n private revertDetails() {\n this.$emit('revertDetails', this.index, this.practiceRecord);\n }\n\n private getSelectedAddressFromArray(addresses: any[]) {\n const _selectedAddress: any[] = addresses.filter(a => {\n return a.isSelected;\n });\n return _selectedAddress[0]?.address ? _selectedAddress[0].address : addresses[0].address;\n }\n\n private getSelectedPhoneNumberFromArray(addresses: any[], isFax: boolean) {\n const _selectedAddress = addresses.find(a => a.isSelected);\n const address = _selectedAddress || addresses[0];\n if(isFax) {\n return address.businessFax?.phoneNumber ? address.businessFax?.phoneAreaCode + ' ' + address.businessFax?.phoneNumber : '';\n } else {\n return address.businessPhone?.phoneNumber ? address.businessPhone?.phoneAreaCode + ' ' + address.businessPhone?.phoneNumber : '';\n }\n }\n\n get btnTextRevertDelete(): string {\n return this.practiceRecord.originalPracticeRecord?.name ? 'Revert details' : 'Delete details';\n }\n\n get sameEmploymentStatus() {\n return this.practiceRecord.originalPracticeRecord?.employmentStatus?.id == this.practiceRecord.newPracticeRecord?.employmentStatus?.id;\n }\n\n}\n\n","import { render } from \"./pcr-practice-record-card.html?vue&type=template&id=6cf12f1d&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record-card.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record-card.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record-card.scss?vue&type=style&index=0&id=6cf12f1d&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6cf12f1d\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vModelText as _vModelText, withKeys as _withKeys, withDirectives as _withDirectives, createElementBlock as _createElementBlock, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, vModelSelect as _vModelSelect, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-243aff97\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record-change-detail-modal\" }\nconst _hoisted_2 = { class: \"modal-body\" }\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Law Practice / Employer / Entity name\", -1))\nconst _hoisted_5 = {\n key: 0,\n class: \"flex-row autocomplete pa-0 ma-0\"\n}\nconst _hoisted_6 = { class: \"icon\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"fas fa-spinner fa-spin\"\n}\nconst _hoisted_8 = {\n key: 1,\n class: \"fal fa-search\"\n}\nconst _hoisted_9 = {\n key: 0,\n id: \"autocomplete-results\",\n class: \"autocomplete-results\"\n}\nconst _hoisted_10 = [\"onClick\", \"innerHTML\"]\nconst _hoisted_11 = {\n key: 1,\n class: \"not-found\"\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"No search results found\", -1))\nconst _hoisted_13 = { class: \"center buttons\" }\nconst _hoisted_14 = {\n key: 2,\n class: \"input-box\"\n}\nconst _hoisted_15 = [\"disabled\"]\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_17 = { key: 1 }\nconst _hoisted_18 = { class: \"input-box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Law Practice / Employer / Entity name\", -1))\nconst _hoisted_20 = [\"disabled\"]\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Practice Type\", -1))\nconst _hoisted_23 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_24 = [\"disabled\"]\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_26 = [\"value\"]\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Employment Status\", -1))\nconst _hoisted_30 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_31 = [\"disabled\"]\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_33 = [\"value\"]\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_36 = {\n key: 0,\n class: \"field_name\"\n}\nconst _hoisted_37 = {\n key: 1,\n class: \"field_name\"\n}\nconst _hoisted_38 = {\n key: 4,\n class: \"validation-msg\"\n}\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_40 = { key: 4 }\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Select Law Practice / Employer / Entity address\", -1))\nconst _hoisted_44 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_45 = [\"disabled\"]\nconst _hoisted_46 = [\"value\"]\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_49 = { key: 6 }\nconst _hoisted_50 = { key: 7 }\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_52 = {\n key: 0,\n class: \"phone-numbers\"\n}\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Phone\", -1))\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Fax\", -1))\nconst _hoisted_55 = { style: {\"align-self\":\"center\"} }\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_57 = { class: \"modal-footer mt-4\" }\nconst _hoisted_58 = [\"disabled\"]\nconst _hoisted_59 = [\"disabled\"]\nconst _hoisted_60 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n _createElementVNode(\"h4\", null, _toDisplayString(_ctx.headerTitleText), 1)\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", null, [\n (_ctx.addNew)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n (!_ctx.addNewPractice)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"col-12 ma-0\",\n style: {\"width\":\"100%\",\"border-radius\":\"0\"},\n type: \"text\",\n ref: \"practiceSearch\",\n autocomplete: \"new-name\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.keyword) = $event)),\n maxlength: \"50\",\n onInput: _cache[1] || (_cache[1] = $event => (_ctx.isFormDirty = true)),\n onKeydown: [\n _cache[2] || (_cache[2] = _withKeys((...args) => (_ctx.onArrowDown && _ctx.onArrowDown(...args)), [\"down\"])),\n _cache[3] || (_cache[3] = _withKeys((...args) => (_ctx.onArrowUp && _ctx.onArrowUp(...args)), [\"up\"])),\n _cache[4] || (_cache[4] = _withKeys((...args) => (_ctx.onEnter && _ctx.onEnter(...args)), [\"enter\"]))\n ],\n placeholder: \"Search Practice name\"\n }, null, 544), [\n [_vModelText, _ctx.keyword]\n ]),\n _createElementVNode(\"span\", _hoisted_6, [\n (_ctx.isSearching)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_7))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_8))\n ]),\n (_ctx.isOpen && _ctx.practiceList.length > 0 && !_ctx.addNewPractice)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_9, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.practiceList, (p, i) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: i,\n onClick: $event => (_ctx.selectPracticeFromSearch(p)),\n class: _normalizeClass([\"autocomplete-result\", { 'is-active': i === _ctx.arrowCounter }]),\n innerHTML: _ctx.highlightWord(p.firmName)\n }, null, 10, _hoisted_10))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isOpen && _ctx.noSearchResult && !_ctx.addNewPractice)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml mr-1\",\n onClick: _cache[5] || (_cache[5] = (...args) => (_ctx.searchAgain && _ctx.searchAgain(...args)))\n }, \"Search again\"),\n _createTextVNode(\" or \"),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary sml ml-2\",\n onClick: _cache[6] || (_cache[6] = (...args) => (_ctx.addNewPracticeFromHere && _ctx.addNewPracticeFromHere(...args)))\n }, \"Add new\")\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.addNewPractice)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.newRecord.name) = $event)),\n placeholder: \"Enter new practice name\",\n maxlength: \"50\",\n disabled: !_ctx.isNewlyAdded || !_ctx.addNew\n }, null, 8, _hoisted_15), [\n [_vModelText, _ctx.newRecord.name]\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_16\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.newRecord.name) = $event)),\n placeholder: \"Name\",\n maxlength: \"50\",\n disabled: !_ctx.isNewlyAdded || !_ctx.addNew\n }, null, 8, _hoisted_20), [\n [_vModelText, _ctx.newRecord.name]\n ])\n ])\n ])),\n _hoisted_21,\n ((_ctx.addNew && _ctx.newRecord.firmId == null && _ctx.addNewPractice) || (_ctx.newRecord.name && _ctx.newRecord.firmId == null ))\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"dropdown-menu\", {error: !_ctx.firmTypeCheck}])\n }, [\n _hoisted_22,\n _createElementVNode(\"div\", _hoisted_23, [\n _withDirectives(_createElementVNode(\"select\", {\n onChange: _cache[9] || (_cache[9] = $event => (_ctx.loadData(_ctx.newRecord.firmType))),\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.newRecord.firmType) = $event)),\n disabled: _ctx.practiceTypeList.length == 0\n }, [\n _hoisted_25,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.practiceTypeList, (s) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: s.id, name: s.name, description: s.description}\n }, _toDisplayString(s.description), 9, _hoisted_26))\n }), 256))\n ], 40, _hoisted_24), [\n [_vModelSelect, _ctx.newRecord.firmType]\n ])\n ]),\n _hoisted_27\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_28,\n (_ctx.isLoadingEmploymentStatus)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 3 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"dropdown-menu\", _ctx.empStatusCheck ? '' : 'error'])\n }, [\n _hoisted_29,\n _createElementVNode(\"div\", _hoisted_30, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => ((_ctx.newRecord.employmentStatus) = $event)),\n onChange: _cache[12] || (_cache[12] = (...args) => (_ctx.formCheck && _ctx.formCheck(...args))),\n disabled: _ctx.employmentStatusList.length == 0\n }, [\n _hoisted_32,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.employmentStatusList, (s) => {\n return (_openBlock(), _createElementBlock(\"option\", { value: s }, _toDisplayString(s.name), 9, _hoisted_33))\n }), 256))\n ], 40, _hoisted_31), [\n [_vModelSelect, _ctx.newRecord.employmentStatus]\n ])\n ]),\n _hoisted_34\n ], 2),\n _hoisted_35,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.dateError ? 'error' : ''])\n }, [\n (_ctx.newRecord.employmentStatus?.id == 999999999)\n ? (_openBlock(), _createElementBlock(\"label\", _hoisted_36, \"Cessation Date\"))\n : (_openBlock(), _createElementBlock(\"label\", _hoisted_37, \"Date of Change\")),\n (_ctx.sameEmploymentStatus)\n ? (_openBlock(), _createBlock(_component_date_picker, {\n key: 2,\n format: \"DD/MM/YYYY\",\n \"input-class\": \"normal\",\n disabled: _ctx.sameEmploymentStatus,\n \"disabled-date\": _ctx.disableAfterJulyTheFirst\n }, null, 8, [\"disabled\", \"disabled-date\"]))\n : (_openBlock(), _createBlock(_component_date_picker, {\n key: 3,\n value: _ctx.effectiveDate,\n \"onUpdate:value\": _cache[13] || (_cache[13] = $event => ((_ctx.effectiveDate) = $event)),\n format: \"DD/MM/YYYY\",\n \"input-class\": \"normal\",\n disabled: _ctx.sameEmploymentStatus,\n \"disabled-date\": _ctx.disableAfterJulyTheFirst\n }, null, 8, [\"value\", \"disabled\", \"disabled-date\"])),\n (_ctx.dateError)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_38, [\n _hoisted_39,\n _createTextVNode(\"Required field. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_ctx.addNewPractice || (_ctx.newRecord.name && _ctx.newRecord.firmId == null))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _hoisted_41,\n _createVNode(_component_AddressComponent, {\n onUpdateAddress: _ctx.updateAddress,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[14] || (_cache[14] = $event => ((_ctx.isSubmitting) = $event)),\n showAddressType: false,\n address: _ctx.recordPracticeAddresses[_ctx.selectedAddressIndex].address,\n \"onUpdate:address\": _cache[15] || (_cache[15] = $event => ((_ctx.recordPracticeAddresses[_ctx.selectedAddressIndex].address) = $event))\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\"])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_42,\n (_ctx.recordPracticeAddresses && _ctx.recordPracticeAddresses?.length > 1)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 5,\n class: _normalizeClass([\"dropdown-menu\", !_ctx.addressCheck && _ctx.isFormDirty ? 'error' : ''])\n }, [\n _hoisted_43,\n _createElementVNode(\"div\", _hoisted_44, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.selectedAddressIndex) = $event)),\n onChange: _cache[17] || (_cache[17] = (...args) => (_ctx.setAddressId && _ctx.setAddressId(...args))),\n disabled: _ctx.newRecord.employmentStatus?.id === 999999999\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.addressList, (a, index) => {\n return (_openBlock(), _createElementBlock(\"option\", { value: index }, _toDisplayString(a.address), 9, _hoisted_46))\n }), 256))\n ], 40, _hoisted_45), [\n [_vModelSelect, _ctx.selectedAddressIndex]\n ])\n ]),\n _hoisted_47\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_48,\n (_ctx.previewAddress)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [\n _createVNode(_component_AddressPreview, {\n address: _ctx.previewAddress,\n style: 'padding: 1rem 1rem;'\n }, null, 8, [\"address\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.newRecord.firmId > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_50, [\n _hoisted_51,\n (!_ctx.addNewPractice && _ctx.employmentStatusList.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_52, [\n _createElementVNode(\"div\", null, [\n _hoisted_53,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumber(false)), 1)\n ]),\n _createElementVNode(\"div\", null, [\n _hoisted_54,\n _createTextVNode(\" \" + _toDisplayString(_ctx.getSelectedPhoneNumber(true)), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_55, [\n (_ctx.newRecord.employmentStatus?.id !== 999999999)\n ? (_openBlock(), _createBlock(_component_Popover, {\n key: 0,\n popover: _ctx.$getPopover('PhoneNumbers', 3),\n style: {\"margin-top\":\"1.75rem\"}\n }, null, 8, [\"popover\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_56,\n _createElementVNode(\"div\", _hoisted_57, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[18] || (_cache[18] = $event => (_ctx.cancel())),\n disabled: _ctx.isSaving\n }, \"Cancel\", 8, _hoisted_58),\n (_ctx.addNew)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-primary\",\n onClick: _cache[19] || (_cache[19] = $event => (_ctx.update())),\n disabled: _ctx.isSaving || _ctx.isLoadingData || _ctx.newRecord.name?.length == 0\n }, \"Save\", 8, _hoisted_59))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 2,\n class: \"btn btn-primary\",\n onClick: _cache[20] || (_cache[20] = $event => (_ctx.update())),\n disabled: _ctx.isLoadingData || _ctx.isSaving\n }, \"Save\", 8, _hoisted_60))\n ])\n ])\n ]),\n _: 1\n }, 8, [\"onClose\"])\n ]))\n}","import { renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-31f8bad1\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"modal-window\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = { class: \"modal-wrapper\" }\nconst _hoisted_4 = { class: \"button-bar\" }\nconst _hoisted_5 = { class: \"modal-title\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Modal Title\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Modal Body\", -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"modal-container\", [{'is-closing' : _ctx.isClosing}]]),\n style: {\"min-width\":\"50%\"}\n }, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"modal-title\", {}, () => [\n _hoisted_6\n ], true)\n ]),\n _createElementVNode(\"i\", {\n class: \"fal fa-times-circle\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.close && _ctx.close(...args)))\n })\n ]),\n _renderSlot(_ctx.$slots, \"modal-body\", {}, () => [\n _hoisted_7\n ], true)\n ], 2)\n ])\n ])\n ]),\n _: 3\n })\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class ModalWindow extends Vue {\n\n private isClosing = false;\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n mounted(): void {\n document.body.classList.add('modal-open');\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n}\n\n","import { render } from \"./modal-window.html?vue&type=template&id=31f8bad1&scoped=true&ts=true\"\nimport script from \"./modal-window.ts?vue&type=script&lang=ts\"\nexport * from \"./modal-window.ts?vue&type=script&lang=ts\"\n\nimport \"./modal-window.scss?vue&type=style&index=0&id=31f8bad1&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-31f8bad1\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport DatePicker from 'vue-datepicker-next';\nimport 'vue-datepicker-next/index.css';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail, Application, EmploymentStatus, FirmType, RecordPractice, RecordPracticeAddress, RecordPracticeRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport { debounce, orderBy } from \"lodash\";\nimport AddressComponent from \"../address-component/index.vue\";\n\n@Options({\n props: {\n selectedPracticeRecord: Object,\n pcRenewApplicationId: Number,\n addNew: Boolean,\n },\n components: {\n ModalWindow,\n LoadingIndicator,\n DatePicker,\n Popover,\n AddressPreview,\n ConfirmDialogue,\n AddressComponent,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrPracticeRecordChangeDetailModal extends Vue {\n private selectedPracticeRecord!: any;\n private pcRenewApplicationId!: number;\n private addNew!: boolean;\n private headerTitleText = '';\n\n private ai = new AppInsights;\n private newRecord: RecordPractice = {};\n private isFormDirty = false;\n private employmentStatusList: EmploymentStatus[] = [];\n private practiceTypeList: FirmType[] = [];\n private practiceType: FirmType = {};\n private addressList: any[] = [];\n private selectedAddressId = 0;\n private selectedAddressIndex = 0;\n private addressCheck = true;\n private isSaving = false;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = false;\n private isLoadingEmploymentStatus = false;\n private isSubmitting = false;\n private dateOfChange = '';\n private isNewlyAdded = false;\n\n private keyword = '';\n private arrowCounter = -1;\n private searchDebounced: any = null;\n private isSearching = false;\n private stopSearch = false;\n private isOpen = false;\n private practiceList: any = [];\n\n private firmId = 0;\n private noSearchResult = false;\n private addNewPractice = false;\n\n private effectiveDate: any = null;\n private firmTypeCheck = true;\n private empStatusCheck = true;\n private validAddressDetails = true;\n\n private countryList = [];\n\n @Watch('keyword')\n private onKeywordChange(): void {\n if (this.keyword.trim().length > 2 && !this.stopSearch) {\n setTimeout(this.searchDebounced.cancel, 0);\n setTimeout(this.searchDebounced, 0);\n }\n }\n\n\n private dateError = false;\n\n private recordPracticeAddresses: RecordPracticeAddress[] = [];\n\n mounted(): void {\n this.loadPracticeTypeList();\n if (this.addNew) {\n this.headerTitleText = 'Add additional Law Practice / Employer / Entity';\n this.newRecord = { ... this.selectedPracticeRecord.newPracticeRecord };\n this.getAddressList();\n this.getAddressId();\n this.effectiveDate = null;\n } else {\n this.newRecord = { ... (this.selectedPracticeRecord.newPracticeRecord?.name ? this.selectedPracticeRecord.newPracticeRecord : this.selectedPracticeRecord.originalPracticeRecord) };\n this.effectiveDate = this.selectedPracticeRecord.newPracticeRecord?.name && !this.sameEmploymentStatus ? new Date(this.newRecord.effectiveDate) : null;\n this.recordPracticeAddresses = JSON.parse(JSON.stringify(this.newRecord.recordPracticeAddresses));\n this.recordPracticeAddresses = this.recordPracticeAddresses.map((item) => {\n return {\n id: item.id,\n isSelected: item.isSelected,\n address: item.address,\n inlineAddress: this.getAddressInline(item.address),\n businessPhone: item.businessPhone,\n businessFax: item.businessFax\n };\n });\n this.recordPracticeAddresses = orderBy(this.recordPracticeAddresses, ['inlineAddress', 'asc']);\n this.selectedAddressIndex = 0;\n this.headerTitleText = 'Update Law Practice / Employer / Entity';\n if (this.newRecord.firmId == null) {\n this.headerTitleText = 'Edit new Law Practice / Employer / Entity';\n }\n this.getAddressList();\n this.getAddressId();\n this.loadData();\n }\n\n this.isNewlyAdded = !this.selectedPracticeRecord.originalPracticeRecord?.name;\n\n this.searchDebounced = debounce(() => {\n if (this.keyword.trim() !== '') {\n this.getPracticeList();\n }\n }, 500);\n\n }\n\n private async loadPracticeTypeList() {\n await this.apiService.CodeApi?.apiV1CodeGetFirmTypesGet()\n .then(res => {\n this.practiceTypeList = (res.data.data).filter((p: { id: number, firmName: string; }) => {\n return p.id !== 4 && p.firmName !== 'F';\n });\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get practice types: ' + err);\n this.ai.trackException('Error, Unable to get practice types: ' + err);\n })\n }\n\n private getPracticeList() {\n this.isSearching = true;\n this.apiService.PcRenewApi?.apiV1PcRenewSearchFirmsPost({\n skip: 0,\n take: 0,\n keyword: this.keyword\n }).then(res => {\n this.isSearching = false;\n this.practiceList = res.data.data;\n if (this.practiceList.length > 0) {\n this.isOpen = true;\n this.noSearchResult = false;\n } else {\n if (!this.stopSearch) {\n this.isOpen = false;\n this.noSearchResult = true;\n this.recordPracticeAddresses = [];\n this.practiceType = {};\n this.firmId = 0;\n this.newRecord.firmId = null;\n } else {\n this.stopSearch = false;\n }\n }\n\n })\n .catch(err => {\n this.isSearching = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get practice result: ' + err);\n this.ai.trackException('Error, Unable to get practice result: ' + err);\n })\n }\n\n private async loadData(practiceType?: FirmType) {\n let _firmTypeId = this.newRecord.firmType?.id\n if (practiceType && practiceType.id > 0) {\n _firmTypeId = practiceType.id;\n this.newRecord.employmentStatus = null;\n }\n this.isLoadingEmploymentStatus = true;\n await this.apiService.CodeApi?.apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet(_firmTypeId)\n .then(res => {\n this.employmentStatusList = res.data.data;\n this.employmentStatusList = orderBy(this.employmentStatusList, ['name'], 'asc');\n this.isLoadingEmploymentStatus = false;\n })\n .catch(err => {\n this.isLoadingEmploymentStatus = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get practice records: ' + err);\n this.ai.trackException('Error, Unable to get practice records: ' + err);\n })\n }\n\n private searchAgain() {\n this.noSearchResult = false;\n this.headerTitleText = 'Add additional Law Practice / Employer / Entity';\n this.keyword = '';\n const _searchBox = this.$refs.practiceSearch as HTMLElement;\n _searchBox.focus();\n }\n\n private addNewPracticeFromHere() {\n this.headerTitleText = 'Add new Law Practice / Employer / Entity';\n this.newRecord.name = this.keyword;\n this.addNewPractice = true;\n this.selectedAddressIndex = 0;\n this.recordPracticeAddresses.push(this.initAddress({}));\n }\n\n private cancel() {\n this.close();\n }\n\n private close() {\n this.$emit('close');\n }\n\n private update() {\n this.isSubmitting = true;\n if (this.formValidated()) {\n this.newRecord.recordPracticeAddresses = this.recordPracticeAddresses;\n const _rec = {\n originalPracticeRecord: this.selectedPracticeRecord.originalPracticeRecord,\n newPracticeRecord: this.newRecord\n }\n const _newPracticeRecord = _rec.newPracticeRecord as RecordPractice;\n const _recordPracticeRequest: RecordPracticeRequest = _newPracticeRecord;\n this.isSaving = true;\n this.apiService.PcRenewApi?.apiV1PcRenewSavePracticeDetailsPost(_recordPracticeRequest)\n .then(() => {\n this.eventCtrl.emit('show-snackbar', 'success', 'Practice records updated');\n this.$emit('update', _rec, this.addNew);\n this.isSaving = false;\n this.close();\n })\n .catch(err => {\n this.isSaving = false;\n let _msg = 'Unable to update practice records: ' + err;\n if (err.response?.status == 400 && err.response.data?.errorCode == 30002) {\n _msg = 'Error: Practice record already exists';\n }\n this.eventCtrl.emit('show-snackbar', 'error', _msg);\n this.ai.trackException('Error, Unable to update practice records: ' + err);\n })\n\n }\n }\n\n private formValidated(): boolean {\n this.empStatusCheck = this.newRecord.employmentStatus?.id > 0;\n if (this.addNewPractice) {\n this.firmTypeCheck = this.newRecord.firmType?.id > 0;\n }\n this.newRecord.effectiveDate = this.effectiveDate;\n if (!this.sameEmploymentStatus) {\n this.dateError = this.isFormDirty && this.newRecord.effectiveDate == null;\n } else {\n this.dateError = false;\n }\n this.addressCheck = this.addressList.length > 1 ? this.selectedAddressId > -1 : true;\n return !this.dateError && this.empStatusCheck && this.addressCheck && this.validAddressDetails;\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.keyword + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.practiceList.length > 0) {\n if (this.arrowCounter < this.practiceList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n } else {\n if (this.arrowCounter < this.practiceList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n this.isFormDirty = false;\n this.isOpen = false;\n if (this.practiceList.length > 0) {\n this.selectPracticeFromSearch(\n this.practiceList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectPracticeFromSearch(p: any) {\n this.isOpen = false;\n this.stopSearch = true;\n this.keyword = p.firmName;\n setTimeout(() => {\n this.stopSearch = false;\n }, 500)\n this.apiService.PcRenewApi?.apiV1PcRenewGetPracticeByFirmIdFirmIdGet(p.firmId)\n .then(async res => {\n this.newRecord = res.data.data;\n this.newRecord.pcRenewApplicationId = this.pcRenewApplicationId;\n this.recordPracticeAddresses = JSON.parse(JSON.stringify(this.newRecord.recordPracticeAddresses));\n this.recordPracticeAddresses = this.recordPracticeAddresses.map((item) => {\n return {\n id: item.id,\n isSelected: item.isSelected,\n address: item.address,\n inlineAddress: this.getAddressInline(item.address),\n businessPhone: item.businessPhone,\n businessFax: item.businessFax\n };\n });\n this.recordPracticeAddresses = orderBy(this.recordPracticeAddresses, ['inlineAddress', 'asc']);\n this.selectedAddressIndex = 0;\n this.getAddressList();\n this.getAddressId();\n await this.apiService.CodeApi?.apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(this.newRecord.firmId)\n .then(res => {\n this.employmentStatusList = res.data.data;\n this.employmentStatusList = orderBy(this.employmentStatusList, ['name'], 'asc');\n })\n .catch(err => {\n console.log(err)\n })\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to select this practice: ' + err);\n this.ai.trackException('Error, Unable to select this practice: ' + err);\n })\n\n // this.$emit('updateSuburb', _suburb);\n // this.keyword = '';\n }\n\n private getAddressId() {\n for (let i = 0; i < this.recordPracticeAddresses.length; i++) {\n if (this.recordPracticeAddresses[i].isSelected) {\n this.selectedAddressIndex = i;\n this.selectedAddressId = this.recordPracticeAddresses[i].id;\n }\n }\n }\n\n private setAddressId() {\n this.formCheck();\n this.recordPracticeAddresses.forEach(r => {\n r.isSelected = false;\n });\n this.recordPracticeAddresses[this.selectedAddressIndex].isSelected = true;\n }\n\n private getAddressList() {\n if (this.addNew && this.recordPracticeAddresses.length > 1) {\n this.setAddressId();\n }\n this.addressList = [];\n this.selectedAddressIndex = 0;\n for (let i = 0; i < this.recordPracticeAddresses.length; i++) {\n this.addressList.push({\n id: this.recordPracticeAddresses[i].id,\n address: this.getAddressInline(this.recordPracticeAddresses[i].address)\n })\n }\n }\n\n private getAddressInline(add: AddressDetail) {\n let address: AddressDetail = add;\n const countryName: string = address.countryName ? address.countryName : '';\n let addressEncoded = '';\n address = JSON.parse(JSON.stringify(address).replace(/:null/gi, ':\"\"')); // replace all null value\n if (countryName !== '' && countryName.toLowerCase() == 'australia') {\n switch (address['addressTypeId']) {\n case 1: // Street\n addressEncoded = address['buildingName'] + ' ';\n addressEncoded += address['buildingTypeName'] + ' ' + address['buildingNumber'] + ' ' + address['level'] + ', ';\n addressEncoded += address['streetNumber'] + ' ' + address['streetName'] + ' ' + address['streetTypeName'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 2: // PO Box\n addressEncoded = address['deliveryTypeName'] + ' ' + address['poBox'] + ',';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 3: // DX address\n addressEncoded = 'DX ' + address['dxNumber'] + ',';\n addressEncoded += address['dxExchangeTypeName'] + ',';\n break;\n }\n } else if (countryName !== '') {\n addressEncoded = address['foreignAddress'] + ', ' + address['countryName'];\n } else {\n addressEncoded = JSON.stringify(address).replaceAll('\"', '');\n }\n return addressEncoded.replace(',', ' ').trim();\n }\n\n private formCheck() {\n this.isFormDirty = true;\n if (this.isSubmitting) {\n this.formValidated();\n }\n }\n\n private updateAddress(address: AddressDetail, validAddressDetails: boolean) {\n this.formCheck();\n this.recordPracticeAddresses = [];\n this.recordPracticeAddresses.push({ id: 0, isSelected: true, address: address });\n this.validAddressDetails = validAddressDetails;\n }\n\n private disableAfterJulyTheFirst(date: any) {\n const lastApplicationYear = store.getters.getAppInfo.lastApplicationYear.year;\n return date > new Date(new Date(lastApplicationYear + '-07-01T23:59:59'));\n }\n\n get sameEmploymentStatus(): boolean {\n return this.selectedPracticeRecord.originalPracticeRecord?.employmentStatus?.id == this.newRecord?.employmentStatus?.id;\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.firmAddMapId = a.firmAddMapId || 0;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n get previewAddress(): AddressDetail {\n return this.recordPracticeAddresses[this.selectedAddressIndex]?.address;\n }\n\n private getSelectedPhoneNumber(isFax: boolean): string {\n const practiceAddress = this.recordPracticeAddresses[this.selectedAddressIndex];\n const phoneNumber = isFax ? practiceAddress.businessFax : practiceAddress.businessPhone\n return phoneNumber?.phoneNumber ? phoneNumber.phoneAreaCode + ' ' + phoneNumber.phoneNumber : '';\n }\n\n}\n\n","import { render } from \"./pcr-practice-record-change-detail-modal.html?vue&type=template&id=243aff97&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record-change-detail-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record-change-detail-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record-change-detail-modal.scss?vue&type=style&index=0&id=243aff97&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-243aff97\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport PcrPracticeRecordCard from \"../pcr-practice-record-card/index.vue\";\nimport PcrPracticeRecordChangeDetailModal from \"../pcr-practice-record-change-detail-modal/index.vue\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AddressDetail, Application, RecordPracticeAddress } from \"@/shared/modules/typescript-api-client/models\";\nimport ConfirmDialogue from \"@/shared/components/confirm-dialogue/index.vue\";\n// import PcrPracticeRecordAdditionalDetailsPopup from \"../pcr-practice-record-additional-details-popup/index.vue\";\nimport { PracticeDetails } from \"@/shared/modules/typescript-api-client/models/practice-details\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n PcrPracticeRecordCard,\n PcrPracticeRecordChangeDetailModal,\n LoadingIndicator,\n ConfirmDialogue,\n // PcrPracticeRecordAdditionalDetailsPopup,\n }\n})\nexport default class PcrPracticeRecord extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private loadingDataSet = true;\n private addNew = false;\n private additionDetailsConfirmed = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n private showChangeDetailsModal = false;\n\n private practiceRecords: PracticeDetails[] = [];\n private popupPracticeRecords: PracticeDetails[] = [];\n\n private selectedPracticeRecord: any;\n private selectedRecordIndex = 0;\n private showNoChange = false;\n\n mounted(): void {\n this.eventCtrl.on('reloadPracticeRecord', this.loadPracticeRecord);\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n this.loadPracticeRecord();\n this.canGoNextCheck();\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('reloadPracticeRecord', this.loadPracticeRecord);\n }\n\n private async loadPracticeRecord(isNew?: boolean) {\n this.loadingDataSet = true;\n await this.apiService.PcRenewApi?.apiV1PcRenewGetPracticeDetailsApplicationIdGet(this.pcrApp.id)\n .then(res => {\n this.practiceRecords = this.sortPPP(res.data.data);\n this.practiceRecords.forEach((p, index) => {\n if (p.originalPracticeRecord?.employmentStatus?.id == p.newPracticeRecord?.employmentStatus?.id\n && this.selectedAddress(p.originalPracticeRecord?.recordPracticeAddresses) == this.selectedAddress(p.newPracticeRecord?.recordPracticeAddresses)\n ) {\n this.revertDetails(index, p);\n }\n })\n this.showNoChangeCheck();\n this.pcrFormData.practiceRecords = this.practiceRecords;\n this.loadingDataSet = false;\n // if (isNew) {\n // this.additionalPracticeDetailsPopup();\n // }\n })\n .catch(err => {\n this.loadingDataSet = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get practice records: ' + err);\n this.ai.trackException('Error, Unable to get practice records: ' + err);\n })\n }\n\n private selectedAddress(addresses: RecordPracticeAddress[]) {\n const _a = addresses.filter(a => {\n return a.isSelected\n })\n // console.log(JSON.stringify(_a[0].address));\n return this.getAddressInline(_a[0].address);\n }\n\n private sortPPP(records: PracticeDetails[]) {\n const _isPpp = records.filter(r => {\n return r.originalPracticeRecord?.isPpp || r.newPracticeRecord?.isPpp;\n })\n\n const _notPpp = records.filter(r => {\n return !r.originalPracticeRecord?.isPpp && !r.newPracticeRecord?.isPpp;\n })\n return [..._isPpp, ..._notPpp];\n }\n\n private addPractice() {\n const _newP =\n {\n \"originalPracticeRecord\": null,\n \"newPracticeRecord\": {\n pcRenewApplicationId: this.pcRenewApplicationId,\n isPrincipalPlace: false,\n name: '',\n employmentStatus: {},\n businessPhone: '',\n businessFax: '',\n recordPracticeAddresses: [\n { address: {} }\n ]\n }\n };\n\n this.changeDetails(this.practiceRecords.length, _newP, true);\n }\n\n get pcRenewApplicationId() {\n return this.pcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n private changeDetails(cardIndex: number, p: any, addNew: boolean) {\n // console.log('Change details', cardIndex, JSON.stringify(p), addNew);\n this.selectedPracticeRecord = p;\n this.selectedRecordIndex = cardIndex;\n this.addNew = addNew;\n this.showChangeDetailsModal = true;\n }\n\n private revertDetails(cardIndex: number, p: any) {\n this.apiService.PcRenewApi?.apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete(\n this.pcRenewApplicationId, // pcRenewApplicationId\n this.practiceRecords[cardIndex].newPracticeRecord.id // recordPracticeId\n )\n .then(() => {\n if (this.practiceRecords[cardIndex].originalPracticeRecord?.name) {\n this.practiceRecords[cardIndex].newPracticeRecord = null;\n } else {\n this.practiceRecords.splice(cardIndex, 1);\n }\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to revert practice records: ' + err);\n this.ai.trackException('Error, Unable to revert practice records: ' + err);\n })\n this.showNoChangeCheck();\n }\n\n private additionalPracticeDetailsPopup() {\n const _nonCeased = this.practiceRecords.filter(pr => {\n const _isCeased = pr.newPracticeRecord && pr.newPracticeRecord.employmentStatus?.id == 999999999;\n return pr.originalPracticeRecord !== null && !_isCeased;\n })\n if (_nonCeased.length > 0) {\n this.popupPracticeRecords = this.practiceRecords.filter(pr => {\n return pr.originalPracticeRecord !== null;\n });\n const _confirm: any = this.$refs.additionalDetailsPopUp;\n _confirm.show({\n title: 'Additional Practice Details',\n message: 'You have added new practice details, are you engaged in legal practice for more than one Law Practice / Employer / Entity?',\n okButton: 'Save',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.loadPracticeRecord(false);\n this.additionDetailsConfirmed = true;\n }\n })\n } else {\n this.additionDetailsConfirmed = true;\n }\n\n }\n\n private closeModal(p: any) {\n this.showChangeDetailsModal = false;\n }\n\n private update(p: any, isNew: boolean) {\n this.loadPracticeRecord(isNew);\n }\n\n private showNoChangeCheck(): boolean {\n setTimeout(() => {\n this.showNoChange = false;\n this.practiceRecords.forEach(p => {\n if (this.practiceRecords.length > 1 && p.newPracticeRecord !== null) {\n this.showNoChange = true;\n }\n })\n }, 1000)\n return this.showNoChange;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get lastApplicationYear(): number {\n return store.getters.getAppInfo.lastApplicationYear.year;\n }\n\n private getAddressInline(add: AddressDetail) {\n let address: AddressDetail = add;\n const countryName: string = address.countryName ? address.countryName : '';\n let addressEncoded = '';\n address = JSON.parse(JSON.stringify(address).replace(/:null/gi, ':\"\"')); // replace all null value\n if (countryName !== '' && countryName.toLowerCase() == 'australia') {\n switch (address['addressTypeId']) {\n case 1: // Street\n addressEncoded = address['buildingName'] + ' ';\n addressEncoded += address['buildingTypeName'] + ' ' + address['buildingNumber'] + ' ' + address['level'] + ', ';\n addressEncoded += address['streetNumber'] + ' ' + address['streetName'] + ' ' + address['streetTypeName'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 2: // PO Box\n addressEncoded = address['deliveryTypeName'] + ' ' + address['poBox'] + ',';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 3: // DX address\n addressEncoded = 'DX ' + address['dxNumber'] + ',';\n addressEncoded += address['dxExchangeTypeName'];\n break;\n }\n } else if (countryName !== '') {\n addressEncoded = address['foreignAddress'] + ', ' + address['countryName'];\n } else {\n addressEncoded = JSON.stringify(address).replaceAll('\"', '');\n }\n return addressEncoded.replace(',', '').trim();\n }\n\n}\n\n","import { render } from \"./pcr-practice-record.html?vue&type=template&id=73a84075&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record.scss?vue&type=style&index=0&id=73a84075&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-73a84075\"]])\n\nexport default __exports__","export enum NavStepStatusID {\n Unknown = 'unknown',\n NotDone = 'not-done',\n Done = 'done',\n Current = 'current',\n}\nexport class NavStep {\n constructor(\n public name: string = '',\n public routeSecName: string = '',\n public visible: boolean = true,\n public status: NavStepStatus = NavStepStatusID.NotDone,\n ) {\n }\n}\n\nexport type NavStepStatus = NavStepStatusID.Unknown | NavStepStatusID.NotDone |\n NavStepStatusID.Done | NavStepStatusID.Current;\nexport interface StepperName {\n applicationDetails: string;\n applicantDetails: string;\n eligibility: string;\n membershipDetails: string;\n currentDetails: string;\n applicationDeclarations: string;\n renewalDeclarations: string;\n associateMembershipCategory: string;\n currentStatus: string;\n declaration: string;\n declarations: string;\n details: string;\n record: string;\n address: string;\n renewal: string;\n register: string;\n additional: string;\n preferences: string;\n specialistAccreditation: string;\n payment: string;\n confirmation: string;\n}\n\nexport const Step: StepperName = {\n applicationDetails: 'Application Details',\n applicantDetails: 'Applicant Details',\n eligibility: 'Eligibility',\n membershipDetails: 'Membership Details',\n currentDetails: 'Current Details',\n applicationDeclarations: 'Application Declarations',\n renewalDeclarations: 'Renewal Declarations',\n associateMembershipCategory: 'Associate Membership Category',\n currentStatus: 'Current Status',\n declaration: 'Declaration',\n declarations: 'Declarations',\n details: 'Current Details',\n record: 'Practice Record',\n address: 'Address Details',\n renewal: 'Renewal Details',\n register: 'Other Details',\n additional: 'Additional Details',\n preferences: 'Preferences',\n specialistAccreditation: 'Specialist Accreditation',\n payment: 'Payment Details',\n confirmation: 'Confirmation',\n\n}\n\nexport interface SectionName {\n applicationDetails: string;\n applicantDetails: string;\n eligibility: string;\n membershipDetails: string;\n currentDetails: string;\n applicationDeclarations: string;\n renewalDeclarations: string;\n associateMembershipCategory: string;\n currentStatus: string;\n declaration: string;\n declarations: string;\n details: string;\n record: string;\n address: string;\n renewal: string;\n register: string;\n additional: string;\n preferences: string;\n specialistAccreditation: string;\n payment: string;\n confirmation: string;\n}\n\nexport const Section: SectionName = {\n applicationDetails: 'application-details',\n applicantDetails: 'applicant-details',\n eligibility: 'eligibility',\n membershipDetails: 'membership-details',\n currentDetails: 'current-details',\n applicationDeclarations: 'application-declarations',\n renewalDeclarations: 'renewal-declarations',\n associateMembershipCategory: 'associate-membership-category',\n currentStatus: 'current-status',\n declaration: 'declaration',\n declarations: 'declaration',\n details: 'current-details',\n record: 'practice-record',\n address: 'address-details',\n renewal: 'renewal-details',\n register: 'statutory-register',\n additional: 'additional-details',\n preferences: 'preferences',\n specialistAccreditation: 'specialist-accreditation',\n payment: 'payment-details',\n confirmation: 'confirmation',\n}\n","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelRadio as _vModelRadio, withDirectives as _withDirectives, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4f817c41\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-address-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mb-2\" }, \"Address Details\", -1))\nconst _hoisted_3 = { class: \"address-option service-address\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { style: {\"display\":\"inline\"} }, \"Please select your address for service for the purposes of carrying out our functions under the Uniform Law \", -1))\nconst _hoisted_5 = { class: \"row\" }\nconst _hoisted_6 = {\n key: 1,\n class: \"col-12\"\n}\nconst _hoisted_7 = { class: \"radio-button\" }\nconst _hoisted_8 = [\"disabled\", \"value\"]\nconst _hoisted_9 = { class: \"radio-button-elmt\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_11 = { class: \"radio-text\" }\nconst _hoisted_12 = [\"innerHTML\"]\nconst _hoisted_13 = {\n key: 0,\n class: \"button-rows\"\n}\nconst _hoisted_14 = [\"onClick\"]\nconst _hoisted_15 = [\"onClick\"]\nconst _hoisted_16 = { key: 0 }\nconst _hoisted_17 = { key: 1 }\nconst _hoisted_18 = { class: \"address-option service-address mt-3\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Please select your preferred postal address for the purposes of carrying out our functions under the Uniform Law and for regulatory communications from the Law Society\", -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"display\":\"flex\",\"align-items\":\"center\",\"justify-content\":\"space-between\",\"margin\":\"5px 0px 0 0\"} }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Note:\"),\n /*#__PURE__*/_createTextVNode(\" Your postal address is the address that will appear on your tax invoice following the payment section. \")\n ])\n], -1))\nconst _hoisted_21 = { class: \"row\" }\nconst _hoisted_22 = {\n key: 1,\n class: \"col-12\"\n}\nconst _hoisted_23 = { class: \"radio-button\" }\nconst _hoisted_24 = [\"disabled\", \"value\"]\nconst _hoisted_25 = { class: \"radio-button-elmt\" }\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_27 = { class: \"radio-text\" }\nconst _hoisted_28 = [\"innerHTML\"]\nconst _hoisted_29 = {\n key: 0,\n class: \"button-rows\"\n}\nconst _hoisted_30 = [\"onClick\"]\nconst _hoisted_31 = [\"onClick\"]\nconst _hoisted_32 = { key: 0 }\nconst _hoisted_33 = { key: 1 }\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PcrAddressDetailsUpdateModal = _resolveComponent(\"PcrAddressDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('ServiceAddress', 4)\n }, null, 8, [\"popover\"]),\n _createElementVNode(\"div\", _hoisted_5, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.pcRenewAddressDetails.serviceAddresses)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.pcRenewAddressDetails.serviceAddresses, (a, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"radio-button-group\", {'disabled': !a.isSelectable && (a.pcRenewAddressTypeId == 2)}])\n }, [\n _createElementVNode(\"label\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n name: \"service-address\",\n disabled: !a.isSelectable,\n value: index,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.serviceAddressOption) = $event))\n }, null, 8, _hoisted_8), [\n [_vModelRadio, _ctx.serviceAddressOption]\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"span\", _hoisted_11, [\n _createElementVNode(\"span\", {\n innerHTML: _ctx.getAddressDisplay(a)\n }, null, 8, _hoisted_12),\n (a.pcRenewAddressTypeId == 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: $event => (_ctx.openEdit(1, index))\n }, \"Edit\", 8, _hoisted_14),\n (a.isSelectable && _ctx.pcrFormData.isRevertibleService)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-tertiary sml ml-2\",\n onClick: $event => (_ctx.revertAddress(1, index))\n }, [\n (_ctx.pcrFormData.isServiceAddressBlank)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_16, \"Delete details\"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_17, \"Revert details\"))\n ], 8, _hoisted_15))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ], 2))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.pcRenewAddressDetails.postalAddresses)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.pcRenewAddressDetails.postalAddresses, (p, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"radio-button-group\", {'disabled': !p.isSelectable && (p.pcRenewAddressTypeId == 5)}])\n }, [\n _createElementVNode(\"label\", _hoisted_23, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n name: \"postal-address\",\n disabled: !p.isSelectable,\n value: index,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.postalAddressOption) = $event))\n }, null, 8, _hoisted_24), [\n [_vModelRadio, _ctx.postalAddressOption]\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _hoisted_26,\n _createElementVNode(\"span\", _hoisted_27, [\n _createElementVNode(\"span\", {\n innerHTML: _ctx.getAddressDisplay(p)\n }, null, 8, _hoisted_28),\n (p.pcRenewAddressTypeId == 6)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_29, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary sml\",\n onClick: $event => (_ctx.openEdit(2, index))\n }, \"Edit\", 8, _hoisted_30),\n (p.isSelectable && _ctx.pcrFormData.isRevertiblePostal)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-tertiary sml ml-2\",\n onClick: $event => (_ctx.revertAddress(2, index))\n }, [\n (_ctx.pcrFormData.isPostalAddressBlank)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_32, \"Delete details\"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_33, \"Revert details\"))\n ], 8, _hoisted_31))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])\n ], 2))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n (_ctx.showUpdateModal)\n ? (_openBlock(), _createBlock(_component_PcrAddressDetailsUpdateModal, {\n key: 0,\n onClose: _cache[2] || (_cache[2] = $event => (_ctx.showUpdateModal = false)),\n editAddressType: _ctx.editAddressType,\n address: _ctx.addressToEdit,\n \"onUpdate:address\": _cache[3] || (_cache[3] = $event => ((_ctx.addressToEdit) = $event)),\n onReload: _ctx.reload\n }, null, 8, [\"editAddressType\", \"address\", \"onReload\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b18aee52\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-address-details-update-modal\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = { class: \"modal-body\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \"Please enter your preferred address for service\", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_7 = {\n key: 0,\n class: \"modal-footer row right\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n (_ctx.editAddressType == 1)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_2, \"Address for Service\"))\n : _createCommentVNode(\"\", true),\n (_ctx.editAddressType == 2)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_3, \"Postal Address\"))\n : _createCommentVNode(\"\", true)\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.address)\n ? (_openBlock(), _createBlock(_component_AddressComponent, {\n key: 1,\n onUpdateAddress: _ctx.updateAddress,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[0] || (_cache[0] = $event => ((_ctx.isSubmitting) = $event)),\n address: _ctx.address,\n \"onUpdate:address\": _cache[1] || (_cache[1] = $event => ((_ctx.address) = $event)),\n showAddressType: _ctx.editAddressType == 2\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\", \"showAddressType\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_AddressPreview, {\n address: _ctx.address,\n \"onUpdate:address\": _cache[2] || (_cache[2] = $event => ((_ctx.address) = $event)),\n style: 'padding: 1rem;'\n }, null, 8, [\"address\"])\n ]),\n _hoisted_6,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.cancel()))\n }, \"Cancel\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.update()))\n }, \"Update\")\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"])\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport AddressComponent from \"../address-component/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\n@Options({\n props: {\n editAddressType: Number,\n address: Object,\n },\n components: {\n ModalWindow,\n AddressPreview,\n AddressComponent,\n LoadingIndicator,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrAddressDetailsUpdateModal extends Vue {\n private address!: AddressDetail;\n private editAddressType!: number;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = false;\n\n private isSubmitting = false;\n\n private formData: any = {};\n private formValid = false;\n\n mounted(): void {\n // this.preloadData();\n }\n\n private saveServiceAddress() {\n this.apiService.PcRenewApi?.apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost(\n this.pcRenewApplicationId, this.$addressCleanup(this.address)\n )\n .then(res => {\n this.$emit('reload', this.editAddressType, true);\n this.eventCtrl.emit('show-snackbar', 'success', 'Service address updated: ');\n this.close();\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to save Service address: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Service address: ' + err);\n })\n }\n\n\n private savePostalAddress() {\n this.apiService.PcRenewApi?.apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost(\n this.pcRenewApplicationId, this.$addressCleanup(this.address)\n )\n .then(res => {\n this.$emit('reload', this.editAddressType, true);\n this.eventCtrl.emit('show-snackbar', 'success', 'Postal address updated: ');\n this.close();\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to save Postal address: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Postal address: ' + err);\n })\n }\n\n private saveOtherAddress() {\n this.apiService.PcRenewApi?.apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost(\n this.pcRenewApplicationId, this.$addressCleanup(this.address)\n )\n .then(res => {\n this.$emit('reload', this.editAddressType, true);\n this.eventCtrl.emit('show-snackbar', 'success', 'Other address updated: ');\n this.close();\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to save Postal address: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Other address: ' + err);\n })\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n // console.log('update address: ', address, valid);\n this.formValid = valid;\n }\n\n private update() {\n this.isSubmitting = true;\n if (this.formValid) {\n switch (this.editAddressType) {\n case 1:\n this.saveServiceAddress();\n break;\n case 2:\n this.savePostalAddress();\n break;\n case 3:\n this.saveOtherAddress();\n break;\n }\n }\n }\n\n private cancel() {\n this.close();\n }\n\n private close() {\n this.$emit('close');\n }\n\n get pcRenewApplicationId() {\n return store.getters.getPcrFormData.individualDetails.pcRenewApplicationId;\n }\n}\n","import { render } from \"./pcr-address-details-update-modal.html?vue&type=template&id=b18aee52&scoped=true&ts=true\"\nimport script from \"./pcr-address-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-address-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-address-details-update-modal.scss?vue&type=style&index=0&id=b18aee52&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b18aee52\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { EventEmitter } from \"events\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport PcrAddressDetailsUpdateModal from \"../pcr-address-details-update-modal/index.vue\";\nimport { AddressDetail, PcRenewAddressDetails, PcRenewAddressType, RecordAddress } from \"@/shared/modules/typescript-api-client/models\";\nimport store from \"@/shared/store\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { orderBy } from \"lodash\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n Popover,\n PcrAddressDetailsUpdateModal,\n LoadingIndicator,\n },\n mixins: [\n FormatDateTimeMixin\n ]\n})\nexport default class PcrAddressDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('isLoadingData')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.isLoadingData);\n }\n\n private showUpdateModal = false;\n private editAddressType = 0; // 1 - Service; 2 - Postal\n\n private serviceAddressOption = 10;\n private postalAddressOption = 10;\n\n private pcRenewAddressDetails: PcRenewAddressDetails = {};\n\n private addressToEdit: AddressDetail = {};\n private addressTypes: PcRenewAddressType[] = [];\n private isLoadingData = false;\n\n @Watch('serviceAddressOption')\n private onServiceAddressOptionChange() {\n this.setServiceAddress();\n }\n\n @Watch('postalAddressOption')\n private onPostalAddressOptionChange() {\n this.setPostalAddress();\n }\n\n mounted() {\n this.getAddresses();\n }\n\n private async getAddresses(isReload?: boolean) {\n this.isLoadingData = true;\n await this.apiService.CodeApi?.apiV1CodeGetPcRenewAddressTypesGet()\n .then(res => {\n this.addressTypes = res.data.data;\n store.dispatch('setAddressTypeList', this.addressTypes);\n }).catch(err => {\n this.ai.trackException('Error, Unable to load address types: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load address types' + err);\n });\n\n await this.apiService.PcRenewApi?.apiV1PcRenewGetAddressDetailsApplicationIdGet(this.appId)\n .then(res => {\n this.pcRenewAddressDetails = res.data.data;\n this.pcRenewAddressDetails.serviceAddresses = orderBy(this.pcRenewAddressDetails.serviceAddresses, ['pcRenewAddressTypeId'], 'asc');\n this.pcRenewAddressDetails.postalAddresses = orderBy(this.pcRenewAddressDetails.postalAddresses, ['pcRenewAddressTypeId'], 'asc');\n if (isReload) {\n this.setServiceAddress();\n this.setPostalAddress();\n } else {\n this.getSelectedAddresses();\n }\n this.canGoNextCheck();\n this.isLoadingData = false;\n })\n .catch(err => {\n this.isLoadingData = false;\n this.ai.trackException('Error, Unable to load address details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load address details' + err);\n })\n\n }\n\n private setServiceAddress() {\n this.pcRenewAddressDetails.serviceAddresses.forEach((a: { isSelected: boolean; }) => {\n a.isSelected = false;\n });\n if (this.serviceAddressOption < this.pcRenewAddressDetails.serviceAddresses.length) {\n if (this.pcRenewAddressDetails.serviceAddresses[this.serviceAddressOption].address) {\n this.pcRenewAddressDetails.serviceAddresses[this.serviceAddressOption].isSelected = true;\n } else {\n this.serviceAddressOption = 10;\n }\n }\n this.canGoNextCheck();\n }\n\n private setPostalAddress() {\n this.pcRenewAddressDetails.postalAddresses.forEach((a: { isSelected: boolean; }) => {\n a.isSelected = false;\n });\n if (this.postalAddressOption < this.pcRenewAddressDetails.postalAddresses.length) {\n if (this.pcRenewAddressDetails.postalAddresses[this.postalAddressOption].address) {\n this.pcRenewAddressDetails.postalAddresses[this.postalAddressOption].isSelected = true;\n } else {\n this.postalAddressOption = 10;\n }\n }\n this.canGoNextCheck();\n }\n\n private openEdit(type: number, index: number) {\n this.editAddressType = type;\n this.addressToEdit = this.editAddressType == 1 ? { ... this.pcRenewAddressDetails.serviceAddresses[index]?.address } : { ... this.pcRenewAddressDetails.postalAddresses[index]?.address };\n this.addressToEdit = this.initAddress(this.addressToEdit);\n this.showUpdateModal = true;\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n a.firmAddMapId = a.firmAddMapId || 0;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n private canGoNextCheck() {\n this.pcrFormData.pcRenewAddressDetails = this.pcRenewAddressDetails;\n this.eventCtrl.emit('canGoNext', this.serviceAddressOption < 10 && this.postalAddressOption < 10);\n }\n\n private getSelectedAddresses() {\n for (let i = 0; i < this.pcRenewAddressDetails.serviceAddresses.length; i++) {\n if (this.pcRenewAddressDetails.serviceAddresses[i].isSelected) {\n this.serviceAddressOption = i;\n }\n }\n for (let i = 0; i < this.pcRenewAddressDetails.postalAddresses.length; i++) {\n if (this.pcRenewAddressDetails.postalAddresses[i].isSelected) {\n this.postalAddressOption = i;\n }\n }\n }\n\n private reload(editAddressType: number, isRevertible: boolean) {\n if (editAddressType == 1) {\n this.pcrFormData.isRevertibleService = isRevertible;\n } else {\n this.pcrFormData.isRevertiblePostal = isRevertible;\n }\n this.getSelectedAddresses();\n this.getAddresses(true);\n }\n\n get appId(): number {\n return this.pcrFormData.appId;\n }\n\n get pcRenewApplicationId(): number {\n return this.pcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n private getAddressLabel(id: number): string {\n return this.addressTypes.filter(a => {\n return a.id == id;\n })[0].description;\n }\n\n private getAddressDisplay(a: RecordAddress): string {\n const _label = this.getAddressLabel(a.pcRenewAddressTypeId);\n let _address = this.getAddressInline(a.address);\n\n if (_address == '' && a.pcRenewAddressTypeId == 2 || _address == '' && a.pcRenewAddressTypeId == 5) {\n _address = 'PPP does not exist';\n } else if (a.address?.deliveryTypeId == 8 && a.pcRenewAddressTypeId == 2) {\n _address = 'Address for Service must be a street address (practice street is not disclosed)';\n }\n if (_address.length == 0) {\n _address = '(Address is blank. Select the Edit button to add new address)';\n if (a.pcRenewAddressTypeId == 3) {\n this.pcrFormData.isServiceAddressBlank = true;\n }\n if (a.pcRenewAddressTypeId == 6) {\n this.pcrFormData.isPostalAddressBlank = true;\n }\n }\n return _label + ' - ' + _address;\n }\n\n private getAddressInline(add: AddressDetail) {\n if (add == null) {\n return '';\n }\n let address: AddressDetail = add;\n const countryName: string = address.countryName ? address.countryName : '';\n let addressEncoded = '';\n address = JSON.parse(JSON.stringify(address).replace(/:null/gi, ':\"\"')); // replace all null value\n if (countryName !== '' && countryName.toLowerCase() == 'australia') {\n switch (address['addressTypeId']) {\n case 1: // Street\n addressEncoded = address['buildingName'] + ' ';\n addressEncoded += address['buildingTypeName'] + ' ' + address['buildingNumber'] + ' ' + address['level'] + ', ';\n addressEncoded += address['streetNumber'] + ' ' + address['streetName'] + ' ' + address['streetTypeName'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 2: // PO Box\n addressEncoded = address['deliveryTypeName'] + ' ' + address['poBox'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 3: // DX address\n addressEncoded = 'DX ' + address['dxNumber'] + ', ';\n addressEncoded += address['dxExchangeTypeName'];\n break;\n }\n } else if (countryName !== '') {\n addressEncoded = address['foreignAddress'] + ', ' + address['countryName'];\n } else {\n addressEncoded = JSON.stringify(address).replaceAll('\"', '');\n }\n return addressEncoded.replace(',', '').trim();\n }\n\n private revertAddress(type: number, index: number) {\n const addressDetailId = type == 1 ? this.pcRenewAddressDetails.serviceAddresses[index]?.address.id : this.pcRenewAddressDetails.postalAddresses[index]?.address.id;\n this.apiService.PcRenewApi?.apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut(this.pcRenewApplicationId, addressDetailId)\n .then(() => {\n this.reload(type, false);\n this.eventCtrl.emit('show-snackbar', 'success', 'Address details reverted');\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to revert address details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to revert address details' + err);\n })\n }\n\n}\n\n","import { render } from \"./pcr-address-details.html?vue&type=template&id=4f817c41&scoped=true&ts=true\"\nimport script from \"./pcr-address-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-address-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-address-details.scss?vue&type=style&index=0&id=4f817c41&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4f817c41\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f7ced6f2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/_createStaticVNode(\"

Confirmation

Your application was successfully received
Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly

Your renewal application will now be assessed. Once assessment is complete, your practising certificate will issue in due course. A hard copy will issue by post unless you opted to not receive a hard copy in your online renewal. A digital copy of your practising certificate will be available for download in the renewal portal once your renewal has issued.

A 2025/26 Solicitor ID card will issue by post in due course once your renewal has finalised.

If you have any questions regarding your application please contact us

You will now be taken to the Practising Certificate Survey which takes approximately 4 minutes to complete. Those that successfully complete the survey will be given the opportunity to enter the draw to win one of five $100 Visa gift cards. Findings from this survey provide valuable insights into the aggregate work of practising solicitors, participation by those from diverse populations and emerging trends in the profession. Data is used by the Law Society to inform decisions and best support NSW solicitors. All information collected is anonymous. The Survey is being administered by an independent research agency (Urbis). If you do not wish to complete the Survey, please close the window when it opens.
\", 3)\nconst _hoisted_5 = [\n _hoisted_2\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class PcrConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('pcrFormData');\n store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./pcr-confirmation.html?vue&type=template&id=f7ced6f2&scoped=true&ts=true\"\nimport script from \"./pcr-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-confirmation.scss?vue&type=style&index=0&id=f7ced6f2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f7ced6f2\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createVNode as _createVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, vModelRadio as _vModelRadio, withDirectives as _withDirectives, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6b5eee25\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Amount (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = [\"data-label\"]\nconst _hoisted_9 = { class: \"hide-in-mobile mr-1\" }\nconst _hoisted_10 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_12 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_13 = {\n \"data-label\": \"Membership\",\n class: \"desc\"\n}\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"hide-in-mobile mr-1\" }, \"Membership\", -1))\nconst _hoisted_15 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_16 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_17 = {\n key: 0,\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_18 = {\n key: 1,\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency input\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"dollar-sign mr-2\" }, \"$\", -1))\nconst _hoisted_20 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_22 = { key: 0 }\nconst _hoisted_23 = {\n colspan: \"4\",\n class: \"message\"\n}\nconst _hoisted_24 = { class: \"life-member\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle mr-2\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createTextVNode(\"Life Membership \")\n], -1))\nconst _hoisted_26 = [\"innerHTML\"]\nconst _hoisted_27 = { key: 1 }\nconst _hoisted_28 = {\n colspan: \"4\",\n class: \"message\"\n}\nconst _hoisted_29 = {\n key: 0,\n class: \"membership-warning mb-4\"\n}\nconst _hoisted_30 = { class: \"note\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_32 = [\"innerHTML\"]\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Do you want to proceed without Membership?\", -1))\nconst _hoisted_34 = { class: \"row\" }\nconst _hoisted_35 = { class: \"col-12\" }\nconst _hoisted_36 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_37 = { class: \"radio-button\" }\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes, I understand and want to proceed\")\n], -1))\nconst _hoisted_39 = { class: \"radio-button ml-1\" }\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No, I want to have Membership, add it back in\")\n], -1))\nconst _hoisted_41 = { class: \"tr-invoice-total\" }\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"invoice-total bold\",\n \"data-label\": \"Invoice Total\"\n}, \"Invoice Total\", -1))\nconst _hoisted_43 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency bold\"\n}\nconst _hoisted_44 = {\n \"data-label\": \"GST\",\n class: \"currency bold\"\n}\nconst _hoisted_45 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency bold\"\n}\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_47 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"payment-header\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Practice Payment Breakdown\")\n], -1))\nconst _hoisted_49 = { class: \"calculate-paid mt-0\" }\nconst _hoisted_50 = { class: \"paid-table mb-4\" }\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"td\", {\n colspan: \"4\",\n class: \"pa-2\",\n style: {\"background-color\":\"var(--ls-sandstone-light)\"}\n }, [\n /*#__PURE__*/_createTextVNode(\" Please note: This is \"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"NOT\"),\n /*#__PURE__*/_createTextVNode(\" a valid application for the purposes of the legal profession legislation until payment is received by the Law Society. If you ceased with your employer, it is your responsibility to ensure payment has been made. \")\n ])\n], -1))\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount paid by Practice / Employer\")\n], -1))\nconst _hoisted_53 = { class: \"currency right pr-4\" }\nconst _hoisted_54 = { class: \"desc\" }\nconst _hoisted_55 = { class: \"pl-4\" }\nconst _hoisted_56 = { class: \"currency right pr-4\" }\nconst _hoisted_57 = { key: 0 }\nconst _hoisted_58 = { class: \"desc\" }\nconst _hoisted_59 = { class: \"pl-4\" }\nconst _hoisted_60 = { class: \"currency right pr-4\" }\nconst _hoisted_61 = { class: \"border-top\" }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount paid by you using card\")\n], -1))\nconst _hoisted_63 = { class: \"currency right pr-4\" }\nconst _hoisted_64 = { class: \"desc\" }\nconst _hoisted_65 = { class: \"pl-4\" }\nconst _hoisted_66 = { class: \"currency right pr-4\" }\nconst _hoisted_67 = { key: 1 }\nconst _hoisted_68 = { class: \"desc\" }\nconst _hoisted_69 = { class: \"pl-4\" }\nconst _hoisted_70 = { class: \"currency right pr-4\" }\nconst _hoisted_71 = { class: \"amount-payable border-top\" }\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"desc\",\n style: {\"font-size\":\"larger\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"\" }, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount Payable\")\n ])\n], -1))\nconst _hoisted_73 = {\n class: \"currency right pr-4\",\n style: {\"font-size\":\"larger\"}\n}\nconst _hoisted_74 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center\" }, \"Notification\", -1))\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \" Your employer has already advised on the fees they will cover for your online application. You are still required to complete the online application. If you have any questions or need further information about the payments made, kindly contact your employer before finalising your application. \"),\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \"Select the Continue button to proceed.\")\n], -1))\nconst _hoisted_76 = { class: \"right\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_ErrorIndicator = _resolveComponent(\"ErrorIndicator\")\n const _component_CurrencyInput = _resolveComponent(\"CurrencyInput\")\n const _component_AlertBoxTypeTwo = _resolveComponent(\"AlertBoxTypeTwo\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.lineItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", {\n \"data-label\": lineItem.name,\n class: \"desc\"\n }, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(lineItem.name), 1),\n (lineItem.name == 'Fidelity Fund Contribution')\n ? (_openBlock(), _createBlock(_component_Popover, {\n key: 0,\n popover: _ctx.$getPopover('FidelityFundContribution', 7),\n class: \"ml-1\"\n }, null, 8, [\"popover\"]))\n : _createCommentVNode(\"\", true)\n ], 8, _hoisted_8),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).gst)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_13, [\n _hoisted_14,\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('MembershipFee', 7),\n class: \"ml-1\"\n }, null, 8, [\"popover\"]),\n (_ctx.getPayableItem('Membership').lsFeeName.length == 0)\n ? (_openBlock(), _createBlock(_component_ErrorIndicator, {\n key: 0,\n showErrorText: false\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"td\", _hoisted_15, _toDisplayString(_ctx.membershipAmount == 0 ? _ctx.toCurrency(0) : _ctx.membershipAmount !== _ctx.defaultMembershipAmount ?\n '' : _ctx.toCurrency(_ctx.getPayableItem('Membership')?.amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_16, _toDisplayString(_ctx.membershipAmount == 0 ? _ctx.toCurrency(0) : _ctx.membershipAmount !== _ctx.defaultMembershipAmount ?\n '' : _ctx.toCurrency(_ctx.getPayableItem('Membership')?.gst)), 1),\n (_ctx.specAccRenewalFlag)\n ? (_openBlock(), _createElementBlock(\"td\", _hoisted_17, _toDisplayString(_ctx.toCurrency(_ctx.membershipAmount)), 1))\n : (_openBlock(), _createElementBlock(\"td\", _hoisted_18, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-amount mr-4\", {error: _ctx.membershipAmount != _ctx.defaultMembershipAmount && _ctx.membershipAmount != 0}]),\n style: {\"position\":\"relative\"}\n }, [\n _hoisted_19,\n _createVNode(_component_CurrencyInput, {\n class: \"amount pr-1\",\n modelValue: _ctx.membershipAmount,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.membershipAmount) = $event)),\n onKeyup: _ctx.canGoNextCheck,\n disabled: _ctx.disableInput || _ctx.getPayableItem('Membership').lsFeeName.length == 0 || _ctx.pcrFormData?.paymentDetails?.isLifeMember || _ctx.getPayableItem('Membership').isPaidByPractice,\n options: { currency: 'USD', currencyDisplay: 'hidden', autoDecimalDigits: 'true' }\n }, null, 8, [\"modelValue\", \"onKeyup\", \"disabled\"]),\n (_ctx.membershipAmount != _ctx.defaultMembershipAmount && _ctx.membershipAmount != 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _hoisted_21,\n _createTextVNode(\" Amount should be \" + _toDisplayString(_ctx.defaultMembershipAmount) + \" or 0 \", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ], 2)\n ]))\n ]),\n (_ctx.pcrFormData?.paymentDetails?.isLifeMember)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_22, [\n _createElementVNode(\"td\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createElementVNode(\"div\", {\n class: \"ml-2\",\n innerHTML: _ctx.lMhelpText.message\n }, null, 8, _hoisted_26)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.membershipAmount == 0 && !_ctx.inValidPayableItems() && !_ctx.pcrFormData?.paymentDetails?.isLifeMember)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_27, [\n _createElementVNode(\"td\", _hoisted_28, [\n (_ctx.helpText?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_29, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.helpText, (h) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [\n _hoisted_31,\n _createElementVNode(\"div\", {\n innerHTML: h.message\n }, null, 8, _hoisted_32)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_33,\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"div\", _hoisted_35, [\n _createElementVNode(\"div\", _hoisted_36, [\n _createElementVNode(\"label\", _hoisted_37, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.withOutMembership) = $event)),\n value: true,\n name: \"withOutMembership\"\n }, null, 512), [\n [_vModelRadio, _ctx.withOutMembership]\n ]),\n _hoisted_38\n ]),\n _createElementVNode(\"label\", _hoisted_39, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.withOutMembership) = $event)),\n value: false,\n name: \"withOutMembership\"\n }, null, 512), [\n [_vModelRadio, _ctx.withOutMembership]\n ]),\n _hoisted_40\n ])\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", _hoisted_41, [\n _hoisted_42,\n _createElementVNode(\"td\", _hoisted_43, _toDisplayString(_ctx.toCurrency(_ctx.getTotalFees)), 1),\n _createElementVNode(\"td\", _hoisted_44, _toDisplayString(_ctx.toCurrency(_ctx.getTotalGST)), 1),\n _createElementVNode(\"td\", _hoisted_45, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ]),\n _createElementVNode(\"tr\", null, [\n _hoisted_46,\n _createElementVNode(\"td\", _hoisted_47, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ])),\n (_ctx.ifAnyPaidByPractice)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_48,\n _createElementVNode(\"div\", _hoisted_49, [\n _createElementVNode(\"table\", _hoisted_50, [\n _createElementVNode(\"tbody\", null, [\n _hoisted_51,\n _createElementVNode(\"tr\", null, [\n _hoisted_52,\n _createElementVNode(\"td\", _hoisted_53, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.totalAmountPaid)), 1)\n ])\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.paidItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_54, [\n _createElementVNode(\"div\", _hoisted_55, _toDisplayString(lineItem.name), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_56, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n (_ctx.getPayableItem('Membership').isPaidByPractice)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_57, [\n _createElementVNode(\"td\", _hoisted_58, [\n _createElementVNode(\"div\", _hoisted_59, [\n _createTextVNode(\" Membership \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PpMembershipFee', 7),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ])\n ]),\n _createElementVNode(\"td\", _hoisted_60, _toDisplayString(_ctx.toCurrency(_ctx.membershipAmount)), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", _hoisted_61, [\n _hoisted_62,\n _createElementVNode(\"td\", _hoisted_63, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.getTotal - _ctx.totalAmountPaid)), 1)\n ])\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.unpaidItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_64, [\n _createElementVNode(\"div\", _hoisted_65, _toDisplayString(lineItem.name), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_66, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n (!_ctx.getPayableItem('Membership').isPaidByPractice)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_67, [\n _createElementVNode(\"td\", _hoisted_68, [\n _createElementVNode(\"div\", _hoisted_69, [\n _createTextVNode(\"Membership \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PpMembershipFee', 7),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ])\n ]),\n _createElementVNode(\"td\", _hoisted_70, _toDisplayString(_ctx.toCurrency(_ctx.membershipAmount)), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", _hoisted_71, [\n _hoisted_72,\n _createElementVNode(\"td\", _hoisted_73, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.getTotal - _ctx.totalAmountPaid)), 1)\n ])\n ])\n ])\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.showNotificationBox)\n ? (_openBlock(), _createBlock(_component_AlertBoxTypeTwo, {\n key: 3,\n class: \"alert-box\",\n onClose: _cache[4] || (_cache[4] = $event => (_ctx.showNotificationBox = false))\n }, {\n header: _withCtx(() => [\n _hoisted_74\n ]),\n body: _withCtx(() => [\n _hoisted_75\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_76, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary\",\n onClick: _cache[3] || (_cache[3] = $event => {_ctx.showNotificationBox = !_ctx.showNotificationBox;})\n }, \" Continue \")\n ])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","\n\n\n\n","import { render } from \"./index.vue?vue&type=template&id=14c91398\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-6ffd0983\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"error-indicator\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-2x\" })\n], -1))\nconst _hoisted_3 = { key: 0 }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", null, [\n _hoisted_2,\n (_ctx.showErrorText)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_3, _toDisplayString(_ctx.errorText), 1))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","import { Options, Prop, Vue } from \"vue-property-decorator\";\n\n\n@Options({})\nexport default class ErrorIndicator extends Vue {\n\n @Prop({default: true})\n public showErrorText!: boolean;\n\n @Prop({default: 'Error'})\n public errorText!: string;\n}\n","import { render } from \"./error-indicator.html?vue&type=template&id=6ffd0983&scoped=true&ts=true\"\nimport script from \"./error-indicator.ts?vue&type=script&lang=ts\"\nexport * from \"./error-indicator.ts?vue&type=script&lang=ts\"\n\nimport \"./error-indicator.scss?vue&type=style&index=0&id=6ffd0983&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6ffd0983\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from 'vue-property-decorator';\nimport Popover from '@/shared/components/popover/index.vue';\nimport CurrencyInput from '@/shared/components/currency-input/index.vue';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport moment from 'moment';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport ErrorIndicator from '@/shared/components/error-indicator/index.vue';\nimport { orderBy } from 'lodash';\nimport AlertBoxTypeTwo from '@/shared/components/alert-box-type-two/index.vue';\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n paymentToken: String,\n },\n emits: ['update: paymentToken'],\n components: {\n Popover,\n CurrencyInput,\n LoadingIndicator,\n ErrorIndicator,\n AlertBoxTypeTwo,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class PcrPaymentDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n private paymentToken!: string;\n private ai = new AppInsights();\n private loadingDataSet = true;\n\n private specAccRenewalFlag = false;\n private isSpecAccWithPracticeEmployer = false;\n private showNotificationBox = false;\n private ifAnyPaidByPractice = false;\n private isCreditCardValid = false;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('withOutMembership')\n private onWithOutMembershipChange() {\n if (this.withOutMembership !== null) {\n this.canGoNextCheck();\n }\n }\n\n private membershipAmount = 0;\n private defaultMembershipAmount = 440;\n private withOutMembership = null;\n private isLifeTimeMember = false;\n private disableInput = false;\n private lineItems: any[] = [];\n\n private ccPaymentReady = false;\n\n private removeMembership() {\n this.disableInput = true;\n this.withOutMembership = null;\n this.membershipAmount = 0;\n this.canGoNextCheck();\n }\n\n mounted(): void {\n // this.membershipAmount = this.defaultMembershipAmount;\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any =\n await this.apiService.PcRenewApiV2?.apiV2PcRenewGetPaymentDetailsApplicationIdGet(\n this.appId,\n );\n this.pcrFormData.paymentDetails = resp.data.data;\n\n // sort by line item order\n this.lineItems = orderBy(this.pcrFormData.paymentDetails.lineItems, ['order'], ['asc']);\n\n // check if any line item is paid by the practice\n this.ifAnyPaidByPractice = this.lineItems.some((x: any) => x.isPaidByPractice);\n\n this.showNotificationBox = this.ifAnyPaidByPractice;\n\n for (let i = 0; i < this.lineItems.length; i++) {\n if (this.lineItems[i].name == 'Membership') {\n this.lineItems.splice(i, 1);\n }\n }\n this.specAccRenewalFlag = resp.data.data.specAccRenewalFlag;\n this.isSpecAccWithPracticeEmployer = resp.data.data.isSpecAccWithPracticeEmployer;\n this.initSync();\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n // get paymentTypes(): any[] {\n // return this.pcrFormData.paymentDetails.paymentTypes;\n // }\n\n // get paymentItems(): any[] {\n // return this.pcrFormData.paymentDetails.lineItems;\n // }\n\n private initSync(): void {\n if (\n this.pcrFormData?.paymentDetails?.noMembership ||\n this.pcrFormData?.paymentDetails?.noMembership == null\n ) {\n this.membershipAmount = this.getPayableItem('Membership').total;\n this.defaultMembershipAmount = this.getPayableItem('Membership').lsTotal;\n } else {\n this.membershipAmount = 0;\n }\n this.withOutMembership = this.pcrFormData?.paymentDetails?.noMembership ?? null;\n this.isLifeTimeMember = this.pcrFormData?.paymentDetails?.isLifeMember ?? null;\n }\n\n private syncData(): void {\n if (!this.loadingDataSet) {\n this.pcrFormData.paymentDetails.noMembership = this.withOutMembership;\n this.pcrFormData.paymentDetails.lineItems.forEach((x: any, i: number) => {\n if (x.name == 'Membership' && (this.withOutMembership || this.isLifeTimeMember)) {\n this.pcrFormData.paymentDetails.lineItems[i].total = 0;\n this.pcrFormData.paymentDetails.lineItems[i].gst = 0;\n this.pcrFormData.paymentDetails.lineItems[i].amountGstExcluded = 0;\n } else {\n this.pcrFormData.paymentDetails.lineItems[i].total =\n this.pcrFormData.paymentDetails.lineItems[i].lsTotal;\n this.pcrFormData.paymentDetails.lineItems[i].gst =\n this.pcrFormData.paymentDetails.lineItems[i].lsGst;\n this.pcrFormData.paymentDetails.lineItems[i].amountGstExcluded =\n this.pcrFormData.paymentDetails.lineItems[i].lsAmountGstExcluded;\n }\n });\n }\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.pcrFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase(),\n );\n\n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0,\n };\n }\n }\n\n private inValidPayableItems(): boolean {\n return (\n this.getPayableItem('Membership').lsFeeName.length == 0 ||\n this.getPayableItem('Practising Certificate').lsFeeName.length == 0 ||\n this.getPayableItem('Fidelity Fund Contribution').lsFeeName.length == 0\n );\n }\n\n private updateCCStatus(status: boolean): void {\n this.ccPaymentReady = status;\n this.canGoNextCheck();\n }\n\n private canGoNextCheck() {\n if (this.isSpecAccWithPracticeEmployer) {\n this.eventCtrl.emit('canGoNext', this.ccPaymentReady);\n } else {\n if (this.withOutMembership == false) {\n this.disableInput = false;\n this.membershipAmount = this.defaultMembershipAmount;\n }\n this.syncData();\n\n const _check1 = this.membershipAmount == this.defaultMembershipAmount;\n const _check2 =\n this.membershipAmount == 0 &&\n (this.withOutMembership || this.pcrFormData?.paymentDetails?.isLifeMember);\n\n this.eventCtrl.emit('canGoNext', (_check1 || _check2) && !this.inValidPayableItems());\n if (this.withOutMembership == false) {\n this.withOutMembership = null;\n }\n }\n }\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2,\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n get helpText(): any[] {\n return orderBy(this.pcrFormData.paymentDetails.helpTexts, ['priority'], 'asc');\n }\n\n get lMhelpText(): any {\n const lmMsg = orderBy(\n this.pcrFormData.paymentDetails.helpTexts.filter((x: any) => x.messageType == 'LM'),\n ['priority'],\n 'asc',\n );\n if (lmMsg.length > 0) {\n return lmMsg[0];\n } else {\n return {\n message: '',\n messageType: '',\n priority: null,\n };\n }\n }\n\n get appId() {\n return this.pcrFormData.appId;\n }\n\n get getTotalFees(): number {\n const items = this.pcrFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).amountGstExcluded;\n }\n return _total;\n }\n\n get getTotalGST(): number {\n const items = this.pcrFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).gst;\n }\n return _total;\n }\n\n get getTotal(): number {\n const items = this.pcrFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).total;\n }\n return _total;\n }\n\n get totalAmountPaid(): number {\n const items = this.pcrFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n if (items[i].isPaidByPractice) {\n _total += this.getPayableItem(items[i].name).total;\n }\n }\n return _total;\n }\n\n get paidItems(): any[] {\n return this.lineItems?.filter((x: any) => x.isPaidByPractice);\n }\n\n get unpaidItems(): any[] {\n return this.lineItems?.filter((x: any) => !x.isPaidByPractice);\n }\n\n get lastApplicationYearFrom(): string {\n const _lastAppYear = store.getters.getAppInfo.lastApplicationYear?.effectiveStartDate;\n return moment(_lastAppYear).format('YYYY');\n }\n}\n","import { render } from \"./pcr-payment-details.html?vue&type=template&id=6b5eee25&scoped=true&ts=true\"\nimport script from \"./pcr-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-payment-details.scss?vue&type=style&index=0&id=6b5eee25&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6b5eee25\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-274d88ff\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-preferences\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Preferences\", -1))\nconst _hoisted_3 = { class: \"content-wrapper\" }\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Email Preferences \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select one or more email preferences:\", -1))\nconst _hoisted_8 = { class: \"checkboxes\" }\nconst _hoisted_9 = { class: \"row\" }\nconst _hoisted_10 = { class: \"col-12\" }\nconst _hoisted_11 = { class: \"checkbox-button\" }\nconst _hoisted_12 = [\"onUpdate:modelValue\"]\nconst _hoisted_13 = { class: \"checkbox-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_15 = { class: \"checkbox-text\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4 mb-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Communications from the selected committees will be sent to your preferred email address.\")\n], -1))\nconst _hoisted_17 = { class: \"right-side\" }\nconst _hoisted_18 = { class: \"box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Areas of Interest \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select the areas of law you are interested in:\", -1))\nconst _hoisted_21 = { class: \"checkboxes\" }\nconst _hoisted_22 = { class: \"row\" }\nconst _hoisted_23 = { class: \"col-12\" }\nconst _hoisted_24 = { class: \"checkbox-button\" }\nconst _hoisted_25 = [\"onUpdate:modelValue\"]\nconst _hoisted_26 = { class: \"checkbox-elmt\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_28 = { class: \"checkbox-text\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"This information will help us provide you with the most relevant content of interest to you.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sortedPreferences, (e) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((e.isSelected) = $event)\n }, null, 8, _hoisted_12), [\n [_vModelCheckbox, e.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(e.emailPreference.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(this.pcrFormData.preferenceDetail?.recordAreaOfInterests, (a) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"label\", _hoisted_24, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((a.isSelected) = $event)\n }, null, 8, _hoisted_25), [\n [_vModelCheckbox, a.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"span\", _hoisted_28, _toDisplayString(a.areaOfInterest.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_29\n ])\n ])\n ]))\n}","import { AppInsights } from \"@/mars-app/appInsights\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { orderBy } from \"lodash\";\nimport { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n }\n})\nexport default class PcrPreferences extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private emailPreferencesList: any[] = [];\n private areaOfInterestsList: any[] = [];\n\n private loadingDataSet = false;\n private errorLoadingDataSet = false;\n\n private option_SAR = null;\n\n private recordAreaOfInterests: any[] = [];\n private recordEmailPreferences: any[] = [];\n private recordLinkedApplication: any = null;\n // private specAccRenewalFlag: any = null;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n // @Watch('specAccRenewalFlag')\n // private onSpecAccRenewalFlagChange() {\n // if (this.recordLinkedApplication && this.specAccRenewalFlag !== null) {\n // this.pcrFormData.preferenceDetail.recordLinkedApplication.specAccRenewalFlag = this.specAccRenewalFlag;\n // this.canGoNextCheck();\n // }\n // }\n\n mounted(): void {\n this.getCheckBoxesList();\n this.canGoNextCheck();\n }\n\n private async getCheckBoxesList() {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n this.apiService.PcRenewApi?.apiV1PcRenewGetPreferenceDetailsApplicationIdGet(this.appId)\n .then(res => {\n this.loadingDataSet = false;\n this.pcrFormData.preferenceDetail = res.data.data;\n this.recordLinkedApplication = res.data.data.recordLinkedApplication;\n // if (this.recordLinkedApplication) {\n // this.specAccRenewalFlag = this.recordLinkedApplication?.specAccRenewalFlag;\n // } else {\n // this.specAccRenewalFlag = false;\n // }\n this.canGoNextCheck();\n })\n .catch(err => {\n this.errorLoadingDataSet = true;\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n })\n }\n\n get sortedPreferences() {\n return orderBy(this.pcrFormData.preferenceDetail?.recordEmailPreferences, ['emailPreference.sortOrder'], 'asc');\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get appId() {\n return this.pcrFormData.appId;\n }\n\n}\n\n","import { render } from \"./pcr-preferences.html?vue&type=template&id=274d88ff&scoped=true&ts=true\"\nimport script from \"./pcr-preferences.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-preferences.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-preferences.scss?vue&type=style&index=0&id=274d88ff&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-274d88ff\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, vModelCheckbox as _vModelCheckbox, vModelText as _vModelText, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2d489a6e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-renewal-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Renewal Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"steps mt-4\"\n}\nconst _hoisted_4 = { class: \"step-indicator-wrapper\" }\nconst _hoisted_5 = { class: \"answers\" }\nconst _hoisted_6 = {\n key: 0,\n class: \"step\"\n}\nconst _hoisted_7 = [\"innerHTML\"]\nconst _hoisted_8 = { class: \"row\" }\nconst _hoisted_9 = { class: \"col-12\" }\nconst _hoisted_10 = { class: \"radio-button-group\" }\nconst _hoisted_11 = { class: \"radio-button\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = { class: \"radio-button-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_15 = [\"innerHTML\"]\nconst _hoisted_16 = { class: \"radio-button\" }\nconst _hoisted_17 = [\"disabled\"]\nconst _hoisted_18 = { class: \"radio-button-elmt\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_20 = [\"innerHTML\"]\nconst _hoisted_21 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_23 = { class: \"file-list mb-2\" }\nconst _hoisted_24 = { class: \"file-name\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_26 = [\"onClick\"]\nconst _hoisted_27 = {\n key: 1,\n class: \"step\"\n}\nconst _hoisted_28 = [\"innerHTML\"]\nconst _hoisted_29 = { class: \"row\" }\nconst _hoisted_30 = { class: \"col-12\" }\nconst _hoisted_31 = { class: \"radio-button-group\" }\nconst _hoisted_32 = { class: \"radio-button\" }\nconst _hoisted_33 = [\"disabled\"]\nconst _hoisted_34 = { class: \"radio-button-elmt\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_36 = [\"innerHTML\"]\nconst _hoisted_37 = { class: \"radio-button\" }\nconst _hoisted_38 = [\"disabled\"]\nconst _hoisted_39 = { class: \"radio-button-elmt\" }\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_41 = [\"innerHTML\"]\nconst _hoisted_42 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_44 = { class: \"file-list mb-2\" }\nconst _hoisted_45 = { class: \"file-name\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_47 = [\"onClick\"]\nconst _hoisted_48 = {\n key: 2,\n class: \"step\"\n}\nconst _hoisted_49 = [\"innerHTML\"]\nconst _hoisted_50 = { class: \"row\" }\nconst _hoisted_51 = { class: \"col-12\" }\nconst _hoisted_52 = { class: \"radio-button-group\" }\nconst _hoisted_53 = { class: \"radio-button\" }\nconst _hoisted_54 = { class: \"radio-button-elmt\" }\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_56 = [\"innerHTML\"]\nconst _hoisted_57 = { class: \"radio-button\" }\nconst _hoisted_58 = { class: \"radio-button-elmt\" }\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_60 = [\"innerHTML\"]\nconst _hoisted_61 = {\n key: 0,\n class: \"ml-4 mt-2 sub-questions\"\n}\nconst _hoisted_62 = [\"innerHTML\"]\nconst _hoisted_63 = { class: \"row\" }\nconst _hoisted_64 = { class: \"col-12\" }\nconst _hoisted_65 = { class: \"checkbox-button\" }\nconst _hoisted_66 = { class: \"checkbox-elmt\" }\nconst _hoisted_67 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_68 = [\"innerHTML\"]\nconst _hoisted_69 = { key: 0 }\nconst _hoisted_70 = [\"innerHTML\"]\nconst _hoisted_71 = [\"innerHTML\"]\nconst _hoisted_72 = { class: \"row pl-1\" }\nconst _hoisted_73 = { class: \"checkbox-button\" }\nconst _hoisted_74 = { class: \"checkbox-elmt\" }\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_76 = [\"innerHTML\"]\nconst _hoisted_77 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_78 = [\n _hoisted_77\n]\nconst _hoisted_79 = [\"innerHTML\"]\nconst _hoisted_80 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_81 = { class: \"row\" }\nconst _hoisted_82 = { class: \"col-12\" }\nconst _hoisted_83 = { class: \"checkbox-button\" }\nconst _hoisted_84 = { class: \"checkbox-elmt\" }\nconst _hoisted_85 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_86 = [\"innerHTML\"]\nconst _hoisted_87 = { key: 1 }\nconst _hoisted_88 = [\"innerHTML\"]\nconst _hoisted_89 = { class: \"ml-4\" }\nconst _hoisted_90 = { class: \"row\" }\nconst _hoisted_91 = { class: \"checkbox-button\" }\nconst _hoisted_92 = { class: \"checkbox-elmt\" }\nconst _hoisted_93 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_94 = [\"innerHTML\"]\nconst _hoisted_95 = { class: \"row\" }\nconst _hoisted_96 = { class: \"checkbox-button\" }\nconst _hoisted_97 = { class: \"checkbox-elmt\" }\nconst _hoisted_98 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_99 = [\"innerHTML\"]\nconst _hoisted_100 = { class: \"row\" }\nconst _hoisted_101 = { class: \"checkbox-button\" }\nconst _hoisted_102 = { class: \"checkbox-elmt\" }\nconst _hoisted_103 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_104 = [\"innerHTML\"]\nconst _hoisted_105 = { class: \"row\" }\nconst _hoisted_106 = { class: \"checkbox-button\" }\nconst _hoisted_107 = { class: \"checkbox-elmt\" }\nconst _hoisted_108 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_109 = [\"innerHTML\"]\nconst _hoisted_110 = { class: \"row\" }\nconst _hoisted_111 = { class: \"checkbox-button\" }\nconst _hoisted_112 = { class: \"checkbox-elmt\" }\nconst _hoisted_113 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_114 = [\"innerHTML\"]\nconst _hoisted_115 = { class: \"row\" }\nconst _hoisted_116 = { class: \"checkbox-button\" }\nconst _hoisted_117 = { class: \"checkbox-elmt\" }\nconst _hoisted_118 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_119 = [\"innerHTML\"]\nconst _hoisted_120 = { class: \"row\" }\nconst _hoisted_121 = { class: \"checkbox-button\" }\nconst _hoisted_122 = { class: \"checkbox-elmt\" }\nconst _hoisted_123 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_124 = [\"innerHTML\"]\nconst _hoisted_125 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_126 = [\n _hoisted_125\n]\nconst _hoisted_127 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_128 = [\"innerHTML\"]\nconst _hoisted_129 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_130 = [\"innerHTML\"]\nconst _hoisted_131 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_132 = { class: \"radio-button\" }\nconst _hoisted_133 = { class: \"radio-button-elmt\" }\nconst _hoisted_134 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_135 = { class: \"radio-text\" }\nconst _hoisted_136 = [\"innerHTML\"]\nconst _hoisted_137 = [\"innerHTML\"]\nconst _hoisted_138 = {\n key: 3,\n class: \"step\"\n}\nconst _hoisted_139 = { class: \"row\" }\nconst _hoisted_140 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"mb-3\" }, \"Declaration for the purpose of applying to renew your practising certificate\", -1))\nconst _hoisted_141 = { class: \"row\" }\nconst _hoisted_142 = { class: \"col-12\" }\nconst _hoisted_143 = { class: \"checkbox-button\" }\nconst _hoisted_144 = { class: \"checkbox-elmt\" }\nconst _hoisted_145 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_146 = [\"innerHTML\"]\nconst _hoisted_147 = { class: \"right mt-2\" }\nconst _hoisted_148 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_149 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_StepIndicator = _resolveComponent(\"StepIndicator\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_StepIndicator, {\n steps: _ctx.steps,\n \"onUpdate:steps\": _cache[0] || (_cache[0] = $event => ((_ctx.steps) = $event)),\n currentStepIndex: _ctx.currentStepIndex,\n \"onUpdate:currentStepIndex\": _cache[1] || (_cache[1] = $event => ((_ctx.currentStepIndex) = $event))\n }, null, 8, [\"steps\", \"currentStepIndex\"])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n (_ctx.currentStepIndex == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", { innerHTML: _ctx.step_1_q_1 }, null, 8, _hoisted_7),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n disabled: _ctx.uploading,\n name: \"radio-step1\",\n value: 0,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.radio_step1) = $event)),\n onChange: _cache[3] || (_cache[3] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 40, _hoisted_12), [\n [_vModelRadio, _ctx.radio_step1]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_1_a_1\n }, null, 8, _hoisted_15)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n disabled: _ctx.uploading,\n type: \"radio\",\n name: \"radio-step1\",\n value: 1,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.radio_step1) = $event)),\n onChange: _cache[5] || (_cache[5] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 40, _hoisted_17), [\n [_vModelRadio, _ctx.radio_step1]\n ]),\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_1_a_2\n }, null, 8, _hoisted_20)\n ])\n ])\n ])\n ]),\n (_ctx.radio_step1 > 0)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"col-12 file-upload\", _ctx.radio_step1 || _ctx.fitAndProperPersonFileList?.length > 0 ? 'required' : ''])\n }, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[6] || (_cache[6] = $event => (_ctx.fileListChanged($event, 2))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.fitAndProperPersonFileList?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _hoisted_22,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.fitAndProperPersonFileList, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_26)\n ]))\n }), 256))\n ], 2))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n _createElementVNode(\"div\", { innerHTML: _ctx.step_2_q_1 }, null, 8, _hoisted_28),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"div\", _hoisted_31, [\n _createElementVNode(\"label\", _hoisted_32, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n disabled: _ctx.uploading,\n name: \"radio-step2\",\n value: 0,\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.radio_step2) = $event)),\n onChange: _cache[8] || (_cache[8] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 40, _hoisted_33), [\n [_vModelRadio, _ctx.radio_step2]\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _hoisted_35,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_2_a_1\n }, null, 8, _hoisted_36)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_37, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n disabled: _ctx.uploading,\n name: \"radio-step2\",\n value: 1,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => ((_ctx.radio_step2) = $event)),\n onChange: _cache[10] || (_cache[10] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 40, _hoisted_38), [\n [_vModelRadio, _ctx.radio_step2]\n ]),\n _createElementVNode(\"div\", _hoisted_39, [\n _hoisted_40,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_2_a_2\n }, null, 8, _hoisted_41)\n ])\n ])\n ])\n ])\n ]),\n (_ctx.radio_step2 > 0)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"col-12 file-upload\", _ctx.radio_step2 || _ctx.showCauseEventsFileList?.length > 0 ? 'required' : ''])\n }, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[11] || (_cache[11] = $event => (_ctx.fileListChanged($event, 3))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.showCauseEventsFileList?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, [\n _hoisted_43,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.showCauseEventsFileList, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_44, [\n _createElementVNode(\"div\", _hoisted_45, [\n _hoisted_46,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_47)\n ]))\n }), 256))\n ], 2))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_48, [\n _createElementVNode(\"div\", { innerHTML: _ctx.step_3_q_1 }, null, 8, _hoisted_49),\n _createElementVNode(\"div\", _hoisted_50, [\n _createElementVNode(\"div\", _hoisted_51, [\n _createElementVNode(\"div\", _hoisted_52, [\n _createElementVNode(\"label\", _hoisted_53, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n name: \"radio-step3\",\n value: 1,\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.radio_step3) = $event)),\n onChange: _cache[13] || (_cache[13] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelRadio, _ctx.radio_step3]\n ]),\n _createElementVNode(\"div\", _hoisted_54, [\n _hoisted_55,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_3_a_1\n }, null, 8, _hoisted_56)\n ])\n ]),\n _createElementVNode(\"label\", _hoisted_57, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n name: \"radio-step3\",\n value: 2,\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => ((_ctx.radio_step3) = $event)),\n onChange: _cache[15] || (_cache[15] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelRadio, _ctx.radio_step3]\n ]),\n _createElementVNode(\"div\", _hoisted_58, [\n _hoisted_59,\n _createElementVNode(\"span\", {\n class: \"radio-text\",\n innerHTML: _ctx.step_3_a_2\n }, null, 8, _hoisted_60)\n ])\n ]),\n (_ctx.radio_step3 == 2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_61, [\n _createElementVNode(\"h4\", { innerHTML: _ctx.step_3_a_2_c_1_title }, null, 8, _hoisted_62),\n _createElementVNode(\"div\", _hoisted_63, [\n _createElementVNode(\"div\", _hoisted_64, [\n _createElementVNode(\"label\", _hoisted_65, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.check_s3_c1) = $event)),\n onChange: _cache[17] || (_cache[17] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c1]\n ]),\n _createElementVNode(\"div\", _hoisted_66, [\n _hoisted_67,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_1\n }, null, 8, _hoisted_68)\n ])\n ])\n ])\n ]),\n (_ctx.check_s3_c1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [\n _createElementVNode(\"div\", {\n class: \"col-12 mb-4 mt-0\",\n innerHTML: _ctx.step_3_a_2_c_1_notice\n }, null, 8, _hoisted_70),\n _createElementVNode(\"h4\", {\n class: \"pl-2\",\n innerHTML: _ctx.step_3_a_2_c_2_title\n }, null, 8, _hoisted_71),\n _createElementVNode(\"div\", _hoisted_72, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.check_s3_c2 ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_73, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => ((_ctx.check_s3_c2) = $event)),\n onChange: _cache[19] || (_cache[19] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c2]\n ]),\n _createElementVNode(\"div\", _hoisted_74, [\n _hoisted_75,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_2\n }, null, 8, _hoisted_76)\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass(['checkbox2-validation', 'pl-1', !_ctx.check_s3_c2 ? 'error' : ''])\n }, _hoisted_78, 2)\n ]),\n _createElementVNode(\"div\", {\n class: \"pl-2\",\n innerHTML: _ctx.step_3_a_2_c_2_note\n }, null, 8, _hoisted_79),\n _createElementVNode(\"div\", {\n class: _normalizeClass(['row', 'pr-1', 'ml-2', 'textarea_box', !_ctx.textarea_1 && _ctx.textarea_1.length == 0 ? 'error' : ''])\n }, [\n _withDirectives(_createElementVNode(\"textarea\", {\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => ((_ctx.textarea_1) = $event)),\n maxlength: \"500\",\n onKeyup: _cache[21] || (_cache[21] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelText, _ctx.textarea_1]\n ]),\n _hoisted_80\n ], 2)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_81, [\n _createElementVNode(\"div\", _hoisted_82, [\n _createElementVNode(\"label\", _hoisted_83, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => ((_ctx.check_s3_c3) = $event)),\n onChange: _cache[23] || (_cache[23] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3]\n ]),\n _createElementVNode(\"div\", _hoisted_84, [\n _hoisted_85,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3\n }, null, 8, _hoisted_86)\n ])\n ])\n ])\n ]),\n (_ctx.check_s3_c3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_87, [\n _createElementVNode(\"div\", {\n class: \"ml-4\",\n innerHTML: _ctx.step_3_a_2_c_3_note\n }, null, 8, _hoisted_88),\n _createElementVNode(\"div\", _hoisted_89, [\n _createElementVNode(\"div\", _hoisted_90, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_91, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => ((_ctx.check_s3_c3_1) = $event)),\n onChange: _cache[25] || (_cache[25] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_1]\n ]),\n _createElementVNode(\"div\", _hoisted_92, [\n _hoisted_93,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_1\n }, null, 8, _hoisted_94)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_95, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_96, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => ((_ctx.check_s3_c3_2) = $event)),\n onChange: _cache[27] || (_cache[27] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_2]\n ]),\n _createElementVNode(\"div\", _hoisted_97, [\n _hoisted_98,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_2\n }, null, 8, _hoisted_99)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_100, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_101, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[28] || (_cache[28] = $event => ((_ctx.check_s3_c3_3) = $event)),\n onChange: _cache[29] || (_cache[29] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_3]\n ]),\n _createElementVNode(\"div\", _hoisted_102, [\n _hoisted_103,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_3\n }, null, 8, _hoisted_104)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_105, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_106, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[30] || (_cache[30] = $event => ((_ctx.check_s3_c3_4) = $event)),\n onChange: _cache[31] || (_cache[31] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_4]\n ]),\n _createElementVNode(\"div\", _hoisted_107, [\n _hoisted_108,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_4\n }, null, 8, _hoisted_109)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_110, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_111, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[32] || (_cache[32] = $event => ((_ctx.check_s3_c3_5) = $event)),\n onChange: _cache[33] || (_cache[33] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_5]\n ]),\n _createElementVNode(\"div\", _hoisted_112, [\n _hoisted_113,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_5\n }, null, 8, _hoisted_114)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_115, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_116, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[34] || (_cache[34] = $event => ((_ctx.check_s3_c3_6) = $event)),\n onChange: _cache[35] || (_cache[35] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_6]\n ]),\n _createElementVNode(\"div\", _hoisted_117, [\n _hoisted_118,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_6\n }, null, 8, _hoisted_119)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_120, [\n _createElementVNode(\"div\", {\n class: _normalizeClass(['col-12', !_ctx.atLeastOneRuleSelected() ? 'checkbox2-btn-error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_121, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[36] || (_cache[36] = $event => ((_ctx.check_s3_c3_7) = $event)),\n onChange: _cache[37] || (_cache[37] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_s3_c3_7]\n ]),\n _createElementVNode(\"div\", _hoisted_122, [\n _hoisted_123,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_3_a_2_c_3_7\n }, null, 8, _hoisted_124)\n ])\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass(['checkbox2-validation', 'pl-1', !_ctx.atLeastOneRuleSelected() ? 'error' : ''])\n }, _hoisted_126, 2),\n _hoisted_127,\n _createElementVNode(\"h4\", { innerHTML: _ctx.step_3_a_2_c_3_title }, null, 8, _hoisted_128),\n _createElementVNode(\"div\", {\n class: _normalizeClass(['row', 'textarea_box', !_ctx.textarea_2 && _ctx.textarea_2.length == 0 ? 'error' : ''])\n }, [\n _withDirectives(_createElementVNode(\"textarea\", {\n \"onUpdate:modelValue\": _cache[38] || (_cache[38] = $event => ((_ctx.textarea_2) = $event)),\n maxlength: \"500\",\n onKeyup: _cache[39] || (_cache[39] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelText, _ctx.textarea_2]\n ]),\n _hoisted_129\n ], 2),\n _createElementVNode(\"div\", { innerHTML: _ctx.step_3_a_2_c_3_footnote }, null, 8, _hoisted_130),\n _hoisted_131\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_132, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n name: \"radio-step3\",\n value: 3,\n \"onUpdate:modelValue\": _cache[40] || (_cache[40] = $event => ((_ctx.radio_step3) = $event)),\n onChange: _cache[41] || (_cache[41] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelRadio, _ctx.radio_step3]\n ]),\n _createElementVNode(\"div\", _hoisted_133, [\n _hoisted_134,\n _createElementVNode(\"span\", _hoisted_135, [\n _createElementVNode(\"span\", { innerHTML: _ctx.step_3_a_3 }, null, 8, _hoisted_136)\n ])\n ])\n ])\n ])\n ])\n ]),\n _createElementVNode(\"div\", { innerHTML: _ctx.step_3_a_3_note }, null, 8, _hoisted_137)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 3)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_138, [\n _createElementVNode(\"div\", _hoisted_139, [\n _hoisted_140,\n _createElementVNode(\"div\", _hoisted_141, [\n _createElementVNode(\"div\", _hoisted_142, [\n _createElementVNode(\"label\", _hoisted_143, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[42] || (_cache[42] = $event => ((_ctx.check_1) = $event)),\n onChange: _cache[43] || (_cache[43] = $event => (_ctx.isValidatedCheck(_ctx.currentStepIndex)))\n }, null, 544), [\n [_vModelCheckbox, _ctx.check_1]\n ]),\n _createElementVNode(\"div\", _hoisted_144, [\n _hoisted_145,\n _createElementVNode(\"span\", {\n class: \"checkbox-text\",\n innerHTML: _ctx.step_4_c_2a\n }, null, 8, _hoisted_146)\n ])\n ])\n ])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_147, [\n _hoisted_148,\n (_ctx.currentStepIndex !== 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline sml mr-2\",\n onClick: _cache[44] || (_cache[44] = $event => (_ctx.stepBack()))\n }, \"Back\"))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex < 3)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-secondary sml\",\n disabled: !_ctx.isValidated,\n onClick: _cache[45] || (_cache[45] = $event => (_ctx.nextStep()))\n }, \"Proceed\", 8, _hoisted_149))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-9e07e456\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"step-icon\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-check\" }, null, -1))\nconst _hoisted_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = { class: \"description\" }\nconst _hoisted_7 = {\n key: 0,\n class: \"pop-over ml-3\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n\n return (_openBlock(), _createElementBlock(\"section\", {\n class: _normalizeClass([\"step-indicator\", _ctx.styleClass])\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.steps, (s, index) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"step\", s.completed ? 'completed' : s.current ? 'current' : ''])\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n (!s.completed)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_2, _toDisplayString(s.name), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_3, _hoisted_5))\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _createTextVNode(\"  \" + _toDisplayString(s.description) + \"  \", 1),\n (s.popoverKey)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_7, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover(s.popoverKey),\n iconClass: 'fa fa-question-circle'\n }, null, 8, [\"popover\"])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n (index < _ctx.steps.length - 1)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"indicator-line\", s.current ? 'current' : s.completed ? 'completed' : '' ])\n }, null, 2))\n : _createCommentVNode(\"\", true)\n ], 64))\n }), 256))\n ], 2))\n}","import { Options, Vue } from \"vue-property-decorator\";\nimport Popover from \"../popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\nexport interface Step {\n name: string,\n description: string,\n current: boolean,\n completed: boolean,\n popoverKey?: string,\n}\n@Options({\n props: {\n steps: Object,\n currentStepIndex: Number,\n },\n components: {\n Popover,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class StepIndicator extends Vue {\n private steps!: Step[];\n private currentStepIndex!: number;\n\n // get shift(): number {\n // if (window.innerWidth < 780) {\n // console.log(window.innerWidth);\n // return 5;\n // }\n // return 0;\n // }\n\n get styleClass() {\n if (this.currentStepIndex !== -1) {\n return 'class-' + this.currentStepIndex;\n } else {\n return '';\n }\n }\n\n}\n\n","import { render } from \"./step-indicator.html?vue&type=template&id=9e07e456&scoped=true&ts=true\"\nimport script from \"./step-indicator.ts?vue&type=script&lang=ts\"\nexport * from \"./step-indicator.ts?vue&type=script&lang=ts\"\n\nimport \"./step-indicator.scss?vue&type=style&index=0&id=9e07e456&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-9e07e456\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport StepIndicator from \"@/shared/components/step-indicator/index.vue\";\nimport { Step } from \"@/shared/components/step-indicator/step-indicator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport { Application, PcRenewFileRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport PcrWordingData from '@/assets/config/pcr-wording.json';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport moment from \"moment\";\nimport _ from \"lodash\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading', 'update:pcrFormData'],\n components: {\n StepIndicator,\n LoadingIndicator,\n FileDragAndDrop,\n ConfirmDialogue,\n Popover,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrRenewalDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n private loadingDataSet = true;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('files')\n private onFileListChanged() {\n this.isValidatedCheck(this.currentStepIndex);\n }\n\n @Watch('currentStepIndex')\n private onCurrentStepIndexChange() {\n this.isValidatedCheck(this.currentStepIndex);\n }\n\n // read wording from JSON file\n private step_1_q_1 = PcrWordingData[0]['renewals-details'].step_1_q_1;\n private step_1_a_1 = PcrWordingData[0]['renewals-details'].step_1_a_1;\n private step_1_a_2 = PcrWordingData[0]['renewals-details'].step_1_a_2;\n\n private step_2_q_1 = PcrWordingData[0]['renewals-details'].step_2_q_1;\n private step_2_a_1 = PcrWordingData[0]['renewals-details'].step_2_a_1;\n private step_2_a_2 = PcrWordingData[0]['renewals-details'].step_2_a_2;\n\n private step_3_q_1 = PcrWordingData[0]['renewals-details'].step_3_q_1;\n private step_3_a_1 = PcrWordingData[0]['renewals-details'].step_3_a_1;\n\n private step_3_a_2 = PcrWordingData[0]['renewals-details'].step_3_a_2;\n private step_3_a_2_c_1_title = PcrWordingData[0]['renewals-details'].step_3_a_2_c_1_title;\n private step_3_a_2_c_1 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_1.replaceAll('--[[CurrentApplicationYear]]--', this.currentApplicationYear);\n private step_3_a_2_c_1_notice = PcrWordingData[0]['renewals-details'].step_3_a_2_c_1_notice;\n private step_3_a_2_c_2_title = PcrWordingData[0]['renewals-details'].step_3_a_2_c_2_title;\n private step_3_a_2_c_2 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_2.replaceAll('--[[CurrentApplicationYear]]--', this.currentApplicationYear);\n private step_3_a_2_c_2_note = PcrWordingData[0]['renewals-details'].step_3_a_2_c_2_note;\n\n private step_3_a_2_c_3_note = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_note;\n private step_3_a_2_c_3 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3;\n private step_3_a_2_c_3_1 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_1;\n private step_3_a_2_c_3_2 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_2;\n private step_3_a_2_c_3_3 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_3;\n private step_3_a_2_c_3_4 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_4;\n private step_3_a_2_c_3_5 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_5;\n private step_3_a_2_c_3_6 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_6;\n private step_3_a_2_c_3_7 = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_7;\n private step_3_a_2_c_3_title = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_title;\n private step_3_a_2_c_3_footnote = PcrWordingData[0]['renewals-details'].step_3_a_2_c_3_footnote;\n\n private step_3_a_3 = PcrWordingData[0]['renewals-details'].step_3_a_3;\n private step_3_a_3_note = PcrWordingData[0]['renewals-details'].step_3_a_3_note.replaceAll('--[[CurrentApplicationYear]]--', this.currentApplicationYear).replaceAll('--[[LastApplicationYear]]--', this.lastApplicationYearFrom);\n\n private step_4_c_1 = PcrWordingData[0]['renewals-details'].step_4_c_1;\n private step_4_c_2a = PcrWordingData[0]['renewals-details'].step_4_c_2a;\n private step_4_c_2b = PcrWordingData[0]['renewals-details'].step_4_c_2b;\n private step_4_c_3 = PcrWordingData[0]['renewals-details'].step_4_c_3;\n private step_4_c_4 = PcrWordingData[0]['renewals-details'].step_4_c_4;\n\n private currentStepIndex = 0;\n private isValidated = false;\n private newSeed = 1;\n\n private steps: Step[] = [\n { name: '1', description: 'Fit and proper person', completed: false, current: true },\n { name: '2', description: 'Show cause events', completed: false, current: false },\n { name: '3', description: 'Continuing professional development', completed: false, current: false, popoverKey: 'ContinuingProfessionalDevelopment' },\n { name: '4', description: 'Declaration', completed: false, current: false },\n ]\n\n private uploading = false;\n private requiredFileUpload = false;\n private files: any[] = [];\n private fileList: Array = [];\n private fileIdToDelete = 0;\n\n private radio_step1 = -1;\n private radio_step2 = -1;\n private radio_step3 = -1;\n private radio_step4 = -1;\n\n private check_1 = false;\n // private check_2 = false;\n // private check_3 = false;\n // private check_4 = false;\n // private check_5 = false;\n\n private check_s3_c1 = false;\n private check_s3_c2 = false;\n private check_s3_c3 = false;\n private check_s3_c3_1 = false;\n private check_s3_c3_2 = false;\n private check_s3_c3_3 = false;\n private check_s3_c3_4 = false;\n private check_s3_c3_5 = false;\n private check_s3_c3_6 = false;\n private check_s3_c3_7 = false;\n\n private textarea_1 = '';\n private textarea_2 = '';\n // private textarea_3 = '';\n // private textarea_3_check = false;\n\n @Watch('radio_step1')\n private onRadioStep1Changed(): void {\n if (this.radio_step1 == 0) {\n this.files = this.files.filter(x => x.PcRenewFileTypeId !== 2);\n }\n }\n\n @Watch('radio_step2')\n private onRadioStep2Changed(): void {\n if (this.radio_step2 == 0) {\n this.files = this.files.filter(x => x.PcRenewFileTypeId !== 3);\n }\n }\n\n mounted(): void {\n window.scrollTo(0, 0);\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n this.loadRenewDetails();\n this.canGoNextCheck();\n }\n\n private isValidatedCheck(stepIndex: number) {\n switch (stepIndex) {\n case 0:\n this.isValidated = this.radio_step1 == 0 || (this.radio_step1 == 1 && this.fitAndProperPersonFileList.length > 0);\n break;\n case 1:\n this.isValidated = this.radio_step2 == 0 || (this.radio_step2 == 1 && this.showCauseEventsFileList.length > 0);\n break;\n case 2:\n this.isValidated = this.isStep3Valid();\n break;\n case 3:\n // this.textarea_3_check = this.textarea_3.trim() !== '';\n // this.isValidated = this.check_1 && (this.check_2 || this.check_3 && this.textarea_3_check) && this.check_4 && this.check_5;\n this.isValidated = this.check_1;\n break;\n }\n this.steps[stepIndex].completed = this.isValidated;\n this.canGoNextCheck();\n }\n\n private isStep3Valid(): boolean {\n\n let _cond1 = false;\n let _cond2 = false;\n let _cond3 = false;\n\n if (this.radio_step3 == 1 || this.radio_step3 == 3) {\n return true;\n } else if (this.radio_step3 == 2) {\n\n if ((this.check_s3_c1 && this.check_s3_c2 && (typeof this.textarea_1 == 'string' && this.textarea_1.length != 0) || !this.check_s3_c1)) {\n _cond1 = true;\n } else {\n _cond1 = false;\n }\n\n if ((this.check_s3_c3 && this.atLeastOneRuleSelected() &&\n (typeof this.textarea_2 == 'string' && this.textarea_2.length != 0)) || !this.check_s3_c3) {\n _cond2 = true\n } else {\n _cond2 = false;\n }\n\n _cond3 = !this.check_s3_c1 && !this.check_s3_c3;\n\n return _cond1 && _cond2 && !_cond3;\n } else {\n return false;\n }\n }\n\n private atLeastOneRuleSelected(): boolean {\n return this.check_s3_c3_1 ||\n this.check_s3_c3_2 ||\n this.check_s3_c3_3 ||\n this.check_s3_c3_4 ||\n this.check_s3_c3_5 ||\n this.check_s3_c3_6 ||\n this.check_s3_c3_7;\n }\n\n private stepBack() {\n this.steps[this.currentStepIndex].current = false;\n this.steps[this.currentStepIndex].completed = false;\n this.currentStepIndex--;\n this.steps[this.currentStepIndex].current = true;\n this.syncData();\n // this.eventCtrl.emit('canGoNext', false);\n }\n\n private nextStep() {\n this.currentStepIndex++;\n for (let i = 0; i < this.currentStepIndex; i++) {\n this.steps[i].completed = true;\n this.steps[i].current = false;\n }\n this.steps[this.currentStepIndex].completed = false;\n this.steps[this.currentStepIndex].current = true;\n this.syncData();\n }\n\n private fileListChanged(fileList: Array, pcRenewFileType: number): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList, pcRenewFileType);\n }\n\n private deleteFile(id: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete);\n }\n })\n\n }\n\n private deleteFileFromServer(id: number) {\n this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id)\n .then(res => {\n for (let i = 0; i < this.files.length; i++) {\n if (this.files[i].id === id) {\n this.files.splice(i, 1);\n }\n }\n this.isValidatedCheck(this.currentStepIndex);\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n })\n .catch(err => {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n })\n }\n\n\n private async uploadAllFiles(fileList: Array, pcRenewFileType: number): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x, pcRenewFileType)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File, pcRenewFileType: number): Promise {\n // const _id: number = parseInt(this.$route.query.investigation as string, 10);\n this.getNextSeed();\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: pcRenewFileType, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n };\n\n await this.apiService.FileApi?.apiV1FileSavePcRenewFilePost(\n body\n ).then((res: any) => {\n this.files.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: pcRenewFileType, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n });\n this.isValidatedCheck(this.currentStepIndex);\n })\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private async loadRenewDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await this.apiService.PcRenewApi?.apiV1PcRenewGetPcRenewalDetailsApplicationIdGet(this.pcrApp.id);\n this.pcrFormData.renewDetails = resp.data.data;\n this.initSync();\n\n this.steps.forEach((x, i) => {\n this.steps[i].completed = false;\n });\n this.steps[0].current = true;\n\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get renew details: ' + err);\n this.ai.trackException('Error, Unable to get renew details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private initSync(): void {\n\n if (this.pcrFormData.renewDetails?.fitAndProperFlag == null) {\n this.radio_step1 = -1;\n } else if (this.pcrFormData.renewDetails?.fitAndProperFlag) {\n this.radio_step1 = 1;\n } else {\n this.radio_step1 = 0;\n }\n\n if (this.pcrFormData.renewDetails?.showCauseEventsFlag == null) {\n this.radio_step2 = -1;\n } else if (this.pcrFormData.renewDetails?.showCauseEventsFlag) {\n this.radio_step2 = 1;\n } else {\n this.radio_step2 = 0;\n }\n\n this.radio_step3 = this.pcrFormData.renewDetails?.pcRenewCpdAnswerTypeId ?? -1;\n this.check_s3_c1 = this.pcrFormData.renewDetails?.cpdQuestionFlag1;\n this.check_s3_c2 = this.pcrFormData.renewDetails?.cpdQuestionFlag2;\n this.textarea_1 = this.pcrFormData.renewDetails?.cpdNonComplianceNote ?? '';\n this.check_s3_c3 = this.pcrFormData.renewDetails?.cpdQuestionExemptionFlag;\n this.check_s3_c3_1 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag1;\n this.check_s3_c3_2 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag2;\n this.check_s3_c3_3 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag3;\n this.check_s3_c3_4 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag4;\n this.check_s3_c3_5 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag5;\n this.check_s3_c3_6 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag6;\n this.check_s3_c3_7 = this.pcrFormData.renewDetails?.cpdQuestionExemptionRuleFlag7;\n this.textarea_2 = this.pcrFormData.renewDetails?.cpdQuestionExemptionNote ?? '';\n this.check_1 = this.pcrFormData.renewDetails?.pcRenewalDeclarationFlag1;\n // this.check_2 = this.pcrFormData.renewDetails?.pcRenewalDeclarationFlag2;\n // this.check_3 = this.pcrFormData.renewDetails?.pcRenewalDeclarationFlag3;\n // this.check_4 = this.pcrFormData.renewDetails?.pcRenewalDeclarationFlag4;\n // this.check_5 = this.pcrFormData.renewDetails?.pcRenewalDeclarationFlag5;\n // this.textarea_3 = this.pcrFormData.renewDetails?.pcRenewalDeclarationNote ?? '';\n if (this.pcrFormData.renewDetails?.fitAndProperFiles?.length > 0) {\n this.files = [\n ...this.files,\n ...this.pcrFormData.renewDetails?.fitAndProperFiles.map((x: any) => {\n return {\n id: x.id,\n fileName: x.originalFileName,\n seed: x.seed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: 2,\n }\n })];\n } else {\n this.pcrFormData.renewDetails.fitAndProperFiles = [];\n }\n\n if (this.pcrFormData.renewDetails?.showCauseEventsFiles?.length > 0) {\n this.files = [\n ...this.files,\n ...this.pcrFormData.renewDetails?.showCauseEventsFiles.map((x: any) => {\n return {\n id: x.id,\n fileName: x.originalFileName,\n seed: x.seed,\n applicationId: this.pcrApp.id,\n PcRenewFileTypeId: 3,\n }\n })];\n } else {\n this.pcrFormData.renewDetails.showCauseEventsFiles = [];\n }\n // console.log(this.files);\n }\n\n private syncData(): void {\n if (!this.loadingDataSet) {\n this.pcrFormData.renewDetails.fitAndProperFlag = this.radio_step1 == 1;\n this.pcrFormData.renewDetails.showCauseEventsFlag = this.radio_step2 == 1;\n this.pcrFormData.renewDetails.pcRenewCpdAnswerTypeId = this.radio_step3;\n this.pcrFormData.renewDetails.cpdQuestionFlag1 = this.check_s3_c1;\n this.pcrFormData.renewDetails.cpdQuestionFlag2 = this.check_s3_c2;\n this.pcrFormData.renewDetails.cpdNonComplianceNote = this.textarea_1;\n this.pcrFormData.renewDetails.cpdQuestionExemptionFlag = this.check_s3_c3;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag1 = this.check_s3_c3_1;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag2 = this.check_s3_c3_2;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag3 = this.check_s3_c3_3;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag4 = this.check_s3_c3_4;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag5 = this.check_s3_c3_5;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag6 = this.check_s3_c3_6;\n this.pcrFormData.renewDetails.cpdQuestionExemptionRuleFlag7 = this.check_s3_c3_7;\n this.pcrFormData.renewDetails.cpdQuestionExemptionNote = this.textarea_2;\n this.pcrFormData.renewDetails.pcRenewalDeclarationFlag1 = this.check_1;\n // this.pcrFormData.renewDetails.pcRenewalDeclarationFlag2 = this.check_2;\n // this.pcrFormData.renewDetails.pcRenewalDeclarationFlag3 = this.check_3;\n // this.pcrFormData.renewDetails.pcRenewalDeclarationFlag4 = this.check_4;\n // this.pcrFormData.renewDetails.pcRenewalDeclarationFlag5 = this.check_5;\n // this.pcrFormData.renewDetails.pcRenewalDeclarationNote = this.textarea_3;\n this.pcrFormData.renewDetails.fitAndProperFiles = this.fitAndProperPersonFileList;\n this.pcrFormData.renewDetails.showCauseEventsFiles = this.showCauseEventsFileList;\n }\n }\n\n get fitAndProperPersonFileList(): any {\n return this.files.filter(x => x.PcRenewFileTypeId == 2);\n }\n\n get showCauseEventsFileList(): any {\n return this.files.filter(x => x.PcRenewFileTypeId == 3);\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n get currentApplicationYear(): string {\n const _currentAppYear = store.getters.getAppInfo.applicationYear?.effectiveStartDate;\n return moment(_currentAppYear).format('YYYY');\n }\n\n get lastApplicationYearFrom(): string {\n const _lastAppYear = store.getters.getAppInfo.lastApplicationYear?.effectiveStartDate;\n return moment(_lastAppYear).format('YYYY');\n }\n\n private canGoNextCheck() {\n this.syncData();\n this.eventCtrl.emit('canGoNext', this.steps[0].completed && this.steps[1].completed && this.steps[2].completed && this.steps[3].completed);\n }\n\n private getNextSeed() {\n const fileList = this.currentStepIndex == 0 ? this.fitAndProperPersonFileList : this.showCauseEventsFileList;\n this.newSeed = fileList.length > 0\n ? (_.maxBy(fileList, (f: PcRenewFileRequest) => f.seed) as PcRenewFileRequest).seed + 1\n : 1;\n }\n\n}\n\n","import { render } from \"./pcr-renewal-details.html?vue&type=template&id=2d489a6e&scoped=true&ts=true\"\nimport script from \"./pcr-renewal-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-renewal-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-renewal-details.scss?vue&type=style&index=0&id=2d489a6e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2d489a6e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vModelText as _vModelText, withDirectives as _withDirectives, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createVNode as _createVNode, Fragment as _Fragment, renderList as _renderList, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5a3d1597\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"pcr-statutory-register\",\n style: {\"min-height\":\"500px\"}\n}\nconst _hoisted_2 = {\n key: 0,\n class: \"other-details mb-4\"\n}\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mb-4\" }, \"Other Details\", -1))\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = {\n class: \"input-box mt-4\",\n style: {\"max-width\":\"500px\"}\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Email for publication on Register of Solicitors\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"mb-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"If this field is left blank, no email will be published on the Register of Solicitors\")\n], -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_10 = {\n key: 1,\n class: \"mt-4\"\n}\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mb-2\" }, \"Register of Solicitors\", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"mt-4 center\" }, \"Details for the Register of Solicitors published on the Law Society website\", -1))\nconst _hoisted_13 = { class: \"flexbox\" }\nconst _hoisted_14 = { class: \"item item-1\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center\" }, \"Current Details\", -1))\nconst _hoisted_16 = {\n key: 0,\n class: \"body\"\n}\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Full name\", -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Current Practising Certificate Type\", -1))\nconst _hoisted_19 = {\n key: 0,\n class: \"input-box mt-2\"\n}\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Email for publication on Register of Solicitors\", -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"mb-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"If this field is left blank, no email will be published on the Register of Solicitors \")\n], -1))\nconst _hoisted_22 = {\n key: 0,\n class: \"item item-2\"\n}\nconst _hoisted_23 = {\n key: 0,\n class: \"center\"\n}\nconst _hoisted_24 = { class: \"body\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Principal Place of Practice\", -1))\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Law Practice / Employer/ Entity\", -1))\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Employment Status\", -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Law Practice / Employer / Entity Postal address\", -1))\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business phone\", -1))\nconst _hoisted_31 = { key: 0 }\nconst _hoisted_32 = { key: 1 }\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business fax\", -1))\nconst _hoisted_34 = { key: 2 }\nconst _hoisted_35 = { key: 3 }\nconst _hoisted_36 = {\n key: 1,\n class: \"item item-3\"\n}\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center\" }, \"Additional Law Practice / Employer / Entity\", -1))\nconst _hoisted_38 = { class: \"body\" }\nconst _hoisted_39 = { class: \"address\" }\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Law Practice / Employer/ Entity\", -1))\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Employment Status\", -1))\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business phone\", -1))\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business fax\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_PcrAddressDetailsUpdateModal = _resolveComponent(\"PcrAddressDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (!_ctx.showStatutoryRegisterDetails)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _hoisted_3,\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.statutoryRegisterDetails.publicationEmail)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"Email address\",\n maxlength: \"50\",\n onKeyup: _cache[0] || (_cache[0] = (...args) => (_ctx.canGoNextCheck && _ctx.canGoNextCheck(...args))),\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.statutoryRegisterDetails.publicationEmail.email) = $event))\n }, null, 544), [\n [_vModelText, _ctx.statutoryRegisterDetails.publicationEmail.email]\n ])\n ]),\n _hoisted_7\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_8,\n _hoisted_9\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showStatutoryRegisterDetails)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _hoisted_11,\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n (_ctx.statutoryRegisterDetails)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _hoisted_17,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.statutoryRegisterDetails.title?.name) + \" \" + _toDisplayString(_ctx.statutoryRegisterDetails.firstName) + \" \" + _toDisplayString(_ctx.statutoryRegisterDetails.otherName) + \" \" + _toDisplayString(_ctx.statutoryRegisterDetails.surname), 1),\n _hoisted_18,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.statutoryRegisterDetails.individualPracticeCertificate?.pcEmpTypeShortDescription), 1),\n (_ctx.statutoryRegisterDetails.publicationEmail)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, [\n _hoisted_20,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"Email address\",\n maxlength: \"50\",\n onKeyup: _cache[2] || (_cache[2] = (...args) => (_ctx.canGoNextCheck && _ctx.canGoNextCheck(...args))),\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.statutoryRegisterDetails.publicationEmail.email) = $event))\n }, null, 544), [\n [_vModelText, _ctx.statutoryRegisterDetails.publicationEmail.email]\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_21\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.statutoryRegisterDetails.principalPlacePractice)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n (_ctx.statutoryRegisterDetails.principalPlacePractice)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_23, \" Contact details for the office of the practitioner in this jurisdiction\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_24, [\n (_ctx.statutoryRegisterDetails.principalPlacePractice)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_25,\n _hoisted_26,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.name), 1),\n _hoisted_27,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.employmentStatus?.name), 1),\n _hoisted_28,\n _createVNode(_component_AddressPreview, {\n address: _ctx.getSelectedAddressFromArray(this.statutoryRegisterDetails.principalPlacePractice?.recordPracticeAddresses),\n noTitle: true,\n style: 'background: none'\n }, null, 8, [\"address\"]),\n _hoisted_29,\n _createVNode(_component_AddressPreview, {\n address: this.statutoryRegisterDetails.principalPlacePractice?.postalAddress,\n noTitle: true,\n style: 'background: none'\n }, null, 8, [\"address\"]),\n _hoisted_30,\n (_ctx.statutoryRegisterDetails.principalPlacePractice?.businessPhone)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.businessPhone?.phoneNumber), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_32, \"No Record\")),\n _hoisted_33,\n (_ctx.statutoryRegisterDetails.principalPlacePractice?.businessFax)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.businessFax?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.statutoryRegisterDetails.principalPlacePractice?.businessFax?.phoneNumber), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_35, \"No Record\"))\n ], 64))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.recordPractices.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, [\n _hoisted_37,\n _createElementVNode(\"div\", _hoisted_38, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.recordPractices, (r) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_39, [\n _hoisted_40,\n _createElementVNode(\"div\", null, _toDisplayString(r.name), 1),\n _hoisted_41,\n _createElementVNode(\"div\", null, _toDisplayString(r.employmentStatus?.name), 1),\n _hoisted_42,\n _createVNode(_component_AddressPreview, {\n address: _ctx.selectedOtherAddress(r.recordPracticeAddresses),\n noTitle: true\n }, null, 8, [\"address\"]),\n _hoisted_43,\n _createElementVNode(\"div\", null, _toDisplayString(r.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(r.businessPhone?.phoneNumber), 1),\n _hoisted_44,\n _createElementVNode(\"div\", null, _toDisplayString(r.businessFax?.phoneAreaCode) + \" \" + _toDisplayString(r.businessFax?.phoneNumber), 1)\n ]))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showUpdateModal)\n ? (_openBlock(), _createBlock(_component_PcrAddressDetailsUpdateModal, {\n key: 2,\n onClose: _cache[4] || (_cache[4] = $event => (_ctx.showUpdateModal = false)),\n editAddressType: _ctx.editAddressType,\n address: _ctx.addressToEdit,\n \"onUpdate:address\": _cache[5] || (_cache[5] = $event => ((_ctx.addressToEdit) = $event)),\n onReload: _ctx.reload\n }, null, 8, [\"editAddressType\", \"address\", \"onReload\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1bb92891\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n key: 0,\n class: \"dropdown-selection\"\n}\nconst _hoisted_2 = [\"title\"]\nconst _hoisted_3 = { key: 0 }\nconst _hoisted_4 = [\"onClick\", \"innerHTML\"]\n\nexport function render(_ctx, _cache) {\n return (_ctx.listItems.length > 0)\n ? (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"text-box pl-3\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.toggleOpen && _ctx.toggleOpen(...args))),\n title: _ctx.inputDisplay\n }, _toDisplayString(_ctx.inputDisplay), 9, _hoisted_2),\n (_ctx.dropdownOpen)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.listItems, (l, idx) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: idx,\n onClick: $event => (_ctx.clicked(idx)),\n class: _normalizeClass([\"dropdown-list\", { selected: idx == _ctx.listIndex }]),\n innerHTML: l.htmlText\n }, null, 10, _hoisted_4))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n}","\nimport { Options, Vue } from \"vue-property-decorator\";\n\n@Options({\n props: {\n listItems: Array,\n currentIndex: Number,\n isValid: Boolean,\n },\n components: {}\n})\nexport default class DropdownSelection extends Vue {\n private listItems!: any[];\n private currentIndex!: number;\n private isValid!: boolean;\n\n private dropdownOpen = false;\n private listIndex = 0;\n\n mounted() {\n if (this.currentIndex + 1 < this.listItems.length) {\n this.listIndex = this.currentIndex;\n }\n }\n\n get inputDisplay() {\n if (this.currentIndex == 999999999) {\n return '--- Please Select --- ';\n } else {\n return this.listItems[this.currentIndex].htmlText;\n }\n }\n\n private toggleOpen() {\n this.dropdownOpen = !this.dropdownOpen;\n }\n\n private clicked(i: number) {\n this.$emit('itemSelected', i);\n this.dropdownOpen = false;\n }\n\n\n}\n\n","import { render } from \"./dropdown-selection.html?vue&type=template&id=1bb92891&scoped=true&ts=true\"\nimport script from \"./dropdown-selection.ts?vue&type=script&lang=ts\"\nexport * from \"./dropdown-selection.ts?vue&type=script&lang=ts\"\n\nimport \"./dropdown-selection.scss?vue&type=style&index=0&id=1bb92891&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1bb92891\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport { AddressDetail, PcRenewAddressType, RecordAddress, RecordPracticeAddress } from \"@/shared/modules/typescript-api-client/models\";\nimport { orderBy } from \"lodash\";\nimport DropdownSelection from \"@/shared/components/dropdown-selection/index.vue\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport moment from \"moment\";\nimport PcrAddressDetailsUpdateModal from \"../pcr-address-details-update-modal/index.vue\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n Popover,\n AddressPreview,\n DropdownSelection,\n LoadingIndicator,\n PcrAddressDetailsUpdateModal,\n },\n mixins: [\n FormatDateTimeMixin\n ]\n})\nexport default class PcrStatutoryRegister extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private showStatutoryRegisterDetails = false;\n private statutoryRegisterDetails: any = {};\n private addressList: any[] = [];\n private selectedAddressId = 0;\n private registerAddressOption = 10;\n\n private showUpdateModal = false;\n private editAddressType = 0;\n private addressToEdit = {};\n\n private pcRenewAddressTypes: PcRenewAddressType[] = [];\n\n private recordPractices: AddressDetail[] = [];\n private isLoadingData = false;\n\n @Watch('registerAddressOption')\n private registerAddressOptionChange() {\n this.setRegisterAddress();\n }\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.isLoadingData);\n }\n\n get isTesting() {\n const _local = window.location.href.indexOf('https://localhost:44341/') == 0;\n const _dev = window.location.href.indexOf('fe-dev') > 0;\n const _sit = window.location.href.indexOf('fe-sit') > 0;\n const _uat = window.location.href.indexOf('fe-uat') > 0;\n return _local || _dev || _sit || _uat;\n }\n\n mounted(): void {\n this.loadStatutoryRegisterDetails();\n this.eventCtrl.emit('canGoNext', false);\n }\n\n private loadStatutoryRegisterDetails() {\n this.isLoadingData = true;\n // const lastApplicationYear = store.getters.getAppInfo.lastApplicationYear.year;\n this.apiService.CodeApi?.apiV1CodeGetPcRenewAddressTypesGet()\n .then(res => {\n this.pcRenewAddressTypes = res.data.data;\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to get PC renew address types: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get PC renew address types: ' + err);\n })\n\n this.apiService.PcRenewApi?.apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet(this.appId)\n .then(res => {\n this.statutoryRegisterDetails = res.data.data;\n this.recordPractices = this.statutoryRegisterDetails.recordPractices.filter((p: { employmentStatus: { id: number; }; effectiveDate: moment.MomentInput; isPpp: any; }) => {\n return !p.isPpp && !p.isPpp;\n })\n this.statutoryRegisterDetails.recordStatutoryRegisterAddresses = orderBy(\n this.statutoryRegisterDetails.recordStatutoryRegisterAddresses,\n ['pcRenewAddressTypeId'], 'asc');\n // this.getAddressList();\n this.getAddressId();\n this.pcrFormData.statutoryRegisterDetails = this.statutoryRegisterDetails;\n this.isLoadingData = false;\n this.canGoNextCheck();\n })\n .catch(err => {\n this.isLoadingData = false;\n this.ai.trackException('Error, Unable to load Statutory register details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load Statutory register details: ' + err);\n })\n }\n\n\n get isAddressValid() {\n return this.registerAddressOption < 10;\n }\n\n private getPcRenewAddressType(id: number) {\n return this.pcRenewAddressTypes.filter(p => {\n return p.id === id;\n })[0].description;\n }\n\n private selectedOtherAddress(addresses: RecordPracticeAddress[]) {\n const _selectedAddress: any[] = addresses.filter(a => {\n return a.isSelected;\n });\n return _selectedAddress[0]?.address ? _selectedAddress[0].address : addresses[0].address;\n }\n\n private getAddressId() {\n for (let i = 0; i < this.statutoryRegisterDetails.recordStatutoryRegisterAddresses.length; i++) {\n if (this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[i].isSelected) {\n this.registerAddressOption = i;\n this.selectedAddressId = this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[i].id;\n }\n }\n }\n\n // private setAddressId(idx: number) {\n // this.registerAddressOption = idx;\n // this.statutoryRegisterDetails.recordStatutoryRegisterAddresses.forEach((a: { isSelected: boolean; }) => {\n // a.isSelected = false;\n // });\n // this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[this.registerAddressOption].isSelected = true;\n // this.canGoNextCheck();\n // }\n\n private getAddressInline(add: AddressDetail) {\n if (add == null) {\n return '';\n }\n let address: AddressDetail = add;\n const countryName: string = address.countryName ? address.countryName : '';\n let addressEncoded = '';\n address = JSON.parse(JSON.stringify(address).replace(/:null/gi, ':\"\"')); // replace all null value\n if (countryName !== '' && countryName.toLowerCase() == 'australia') {\n switch (address['addressTypeId']) {\n case 1: // Street\n addressEncoded = address['buildingName'] + ' ';\n addressEncoded += address['buildingTypeName'] + ' ' + address['buildingNumber'] + ' ' + address['level'] + ', ';\n addressEncoded += address['streetNumber'] + ' ' + address['streetName'] + ' ' + address['streetTypeName'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 2: // PO Box\n addressEncoded = address['deliveryTypeName'] + ' ' + address['poBox'] + ', ';\n addressEncoded += address['suburbName'] + ', ' + address['stateName'] + ' ' + address['postcode'];\n break;\n case 3: // DX address\n addressEncoded = 'DX ' + address['dxNumber'] + ', ';\n addressEncoded += address['dxExchangeTypeName'];\n break;\n }\n } else if (countryName !== '') {\n addressEncoded = address['foreignAddress'] + ', ' + address['countryName'];\n } else {\n addressEncoded = JSON.stringify(address).replaceAll('\"', '');\n }\n return addressEncoded.replace(',', ' ').trim();\n }\n\n get appId(): number {\n return this.pcrFormData.appId;\n }\n\n get pcRenewApplicationId(): number {\n return this.pcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n private canGoNextCheck() {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n const _validateEmail = this.statutoryRegisterDetails.publicationEmail.email == null || this.statutoryRegisterDetails.publicationEmail.email == '' || this.statutoryRegisterDetails.publicationEmail.email.match(\n emailRegex\n );\n // ignore showStatutoryRegisterDetails for now #17042 PCR - Statutory Register Enhancements\n // const _validateAddress = this.showStatutoryRegisterDetails ? this.isAddressValid : true\n this.showStatutoryRegisterDetails = true;\n const _validateAddress = true;\n this.eventCtrl.emit('canGoNext', _validateAddress && _validateEmail);\n }\n\n private getSelectedAddressFromArray(addresses: any[]) {\n const _selectedAddress: any[] = addresses.filter(a => {\n return a.isSelected;\n });\n return _selectedAddress[0]?.address ? _selectedAddress[0].address : addresses[0].address;\n }\n\n private getAddressLabel(id: number): string {\n const _addressTypes: any[] = JSON.parse(store.getters.getAddressTypeList);\n return _addressTypes.filter((a: any) => {\n return a.id == id;\n })[0].description;\n }\n\n private getAddressDisplay(a: RecordAddress): string {\n const _label = this.getAddressLabel(a.pcRenewAddressTypeId);\n let _address = this.getAddressInline(a.address);\n if ( _address == '' && a.pcRenewAddressTypeId == 8) {\n _address = 'PPP does not exist';\n } else if (a.address?.deliveryTypeId == 8 && a.pcRenewAddressTypeId == 8) {\n _address = 'Address must be a street address (practice street is not disclosed)';\n }\n if (_address.length == 0) {\n _address = '(Address is blank. Select the Edit button to add new address)';\n this.pcrFormData.isStatutoryAddressBlank = true;\n }\n return _label + ' - ' + _address;\n\n }\n\n private setRegisterAddress() {\n this.statutoryRegisterDetails.recordStatutoryRegisterAddresses.forEach((a: { isSelected: boolean; }) => {\n a.isSelected = false;\n });\n if (this.registerAddressOption < this.statutoryRegisterDetails.recordStatutoryRegisterAddresses.length) {\n if (this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[this.registerAddressOption].address) {\n this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[this.registerAddressOption].isSelected = true;\n } else {\n this.registerAddressOption = 10;\n }\n }\n this.canGoNextCheck();\n }\n\n private openEdit(type: number, index: number) {\n this.editAddressType = type;\n // save current change before open modal\n this.saveStatutoryRegister();\n this.addressToEdit = { ...this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[index]?.address};\n this.addressToEdit = this.initAddress(this.addressToEdit);\n this.showUpdateModal = true;\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n a.firmAddMapId = a.firmAddMapId || 0;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n private reload(editAddressType: number, isRevertible: boolean) {\n this.pcrFormData.isRevertibleStatutory = isRevertible;\n this.getSelectedAddresses();\n this.loadStatutoryRegisterDetails();\n }\n\n private getSelectedAddresses() {\n for (let i = 0; i < this.statutoryRegisterDetails.recordStatutoryRegisterAddresses.length; i++) {\n if (this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[i].isSelected) {\n this.registerAddressOption = i;\n }\n }\n }\n\n private revertAddress(type: number, index: number) {\n const addressDetailId = this.statutoryRegisterDetails.recordStatutoryRegisterAddresses[index]?.address.id;\n this.apiService.PcRenewApi?.apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut(this.pcRenewApplicationId, addressDetailId)\n .then(res => {\n this.reload(type, false);\n this.eventCtrl.emit('show-snackbar', 'success', 'Address details reverted');\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to revert address details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to revert address details' + err);\n })\n }\n\n private saveStatutoryRegister() {\n // save current change before open modal\n this.apiService.PcRenewApi?.apiV1PcRenewSaveStatutoryRegisterDetailsPost(this.pcrFormData.statutoryRegisterDetails)\n .then(res => {\n // this.eventCtrl.emit('show-snackbar', 'success', 'Statutory Register updated');\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save data: ' + err);\n this.ai.trackException('Error, Unable to save data: ' + err);\n })\n }\n\n}\n\n","import { render } from \"./pcr-statutory-register.html?vue&type=template&id=5a3d1597&scoped=true&ts=true\"\nimport script from \"./pcr-statutory-register.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-statutory-register.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-statutory-register.scss?vue&type=style&index=0&id=5a3d1597&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5a3d1597\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, vModelRadio as _vModelRadio, vModelText as _vModelText, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7f964059\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-additional-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Additional Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Main Areas of Practice \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_6 = {\n key: 0,\n class: \"checkboxes\"\n}\nconst _hoisted_7 = { class: \"row\" }\nconst _hoisted_8 = { class: \"col-12\" }\nconst _hoisted_9 = { class: \"checkbox-button\" }\nconst _hoisted_10 = [\"onUpdate:modelValue\"]\nconst _hoisted_11 = { class: \"checkbox-elmt\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_13 = { class: \"checkbox-text\" }\nconst _hoisted_14 = { class: \"right-side\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"Does your current role require you to hold a practising certificate in order to carry out \"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"any\"),\n /*#__PURE__*/_createTextVNode(\" of your responsibilities i.e., so as to provide legal advice/engage in legal practice?\")\n], -1))\nconst _hoisted_17 = { class: \"row\" }\nconst _hoisted_18 = { class: \"col-12\" }\nconst _hoisted_19 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_20 = { class: \"radio-button\" }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_22 = { class: \"radio-button ml-1\" }\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"mt-4\" }, \" What is your current job title at your principal place of practice? \", -1))\nconst _hoisted_25 = { class: \"row mt-4\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n (_ctx.additionalDetails?.areaOfLaws)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.additionalDetails.areaOfLaws, (c) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", _hoisted_9, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((c.isSelected) = $event)\n }, null, 8, _hoisted_10), [\n [_vModelCheckbox, c.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"span\", _hoisted_13, _toDisplayString(c.description), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_14, [\n _hoisted_15,\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"label\", _hoisted_20, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.additionalDetails.pcRequiredFlag) = $event)),\n value: true,\n name: \"q1\",\n onChange: _cache[1] || (_cache[1] = (...args) => (_ctx.canGoNextCheck && _ctx.canGoNextCheck(...args)))\n }, null, 544), [\n [_vModelRadio, _ctx.additionalDetails.pcRequiredFlag]\n ]),\n _hoisted_21\n ]),\n _createElementVNode(\"label\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.additionalDetails.pcRequiredFlag) = $event)),\n value: false,\n name: \"q1\",\n onChange: _cache[3] || (_cache[3] = (...args) => (_ctx.canGoNextCheck && _ctx.canGoNextCheck(...args)))\n }, null, 544), [\n [_vModelRadio, _ctx.additionalDetails.pcRequiredFlag]\n ]),\n _hoisted_23\n ])\n ])\n ])\n ]),\n _hoisted_24,\n _createElementVNode(\"div\", _hoisted_25, [\n _withDirectives(_createElementVNode(\"textarea\", {\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.additionalDetails.pppJobTitle) = $event)),\n onInput: _cache[5] || (_cache[5] = (...args) => (_ctx.canGoNextCheck && _ctx.canGoNextCheck(...args))),\n maxlength: \"250\",\n style: {\"height\":\"5rem\",\"resize\":\"vertical\",\"width\":\"100%\",\"padding\":\"0.5rem\",\"font-family\":\"var(--font-body-text)\",\"font-size\":\"1rem\"}\n }, null, 544), [\n [_vModelText, _ctx.additionalDetails.pppJobTitle]\n ])\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { RecordAdditionalDetails } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\n\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n }\n})\nexport default class PcrAdditionalDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private loadingDataSet = false;\n\n private additionalDetails: RecordAdditionalDetails = {};\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n \n mounted() {\n this.loadAdditionalDetails();\n }\n\n private async loadAdditionalDetails() {\n this.loadingDataSet = true;\n await this.apiService.PcRenewApi?.apiV1PcRenewGetAdditionalDetailsApplicationIdGet(this.appId)\n .then(res => {\n this.additionalDetails = res.data.data;\n this.pcrFormData.additionalDetails = this.additionalDetails;\n this.loadingDataSet = false;\n this.canGoNextCheck();\n })\n .catch(err => {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load Additional details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load Additional details' + err);\n })\n }\n\n private canGoNextCheck() {\n // const _jobTitleCheck = this.additionalDetails.pppJobTitle && this.additionalDetails.pppJobTitle.trim() !== '';\n // const _options = this.additionalDetails.pcRequiredFlag !== null;\n // this.eventCtrl.emit('canGoNext', _jobTitleCheck && _options);\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get appId(): number {\n return this.pcrFormData.appId;\n }\n\n get pcRenewApplicationId(): number {\n return this.pcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n}\n\n","import { render } from \"./pcr-additional-details.html?vue&type=template&id=7f964059&scoped=true&ts=true\"\nimport script from \"./pcr-additional-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-additional-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-additional-details.scss?vue&type=style&index=0&id=7f964059&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7f964059\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7e3ee90e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record-ppp-popup\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"popup-modal\"\n}\nconst _hoisted_3 = { class: \"dialog-box\" }\nconst _hoisted_4 = { class: \"center\" }\nconst _hoisted_5 = { style: {\"display\":\"inline\"} }\nconst _hoisted_6 = { class: \"practice-cards row mt-3\" }\nconst _hoisted_7 = { class: \"col-6\" }\nconst _hoisted_8 = { class: \"btns right\" }\nconst _hoisted_9 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_PcrPracticeRecordPppCard = _resolveComponent(\"PcrPracticeRecordPppCard\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (_ctx.isVisible)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times close\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"h3\", _hoisted_5, _toDisplayString(_ctx.title), 1),\n _createTextVNode(),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('SelectPPP', 3)\n }, null, 8, [\"popover\"]),\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.message), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.newRecords, (p, index) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createVNode(_component_PcrPracticeRecordPppCard, {\n newRecord: _ctx.newRecords[index],\n \"onUpdate:newRecord\": $event => ((_ctx.newRecords[index]) = $event),\n index: index,\n onPppSelected: _ctx.pppSelected\n }, null, 8, [\"newRecord\", \"onUpdate:newRecord\", \"index\", \"onPppSelected\"])\n ]))\n }), 256))\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary\",\n onClick: _cache[1] || (_cache[1] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }, _toDisplayString(_ctx.cancelButton), 1),\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary ml-2\",\n onClick: _cache[2] || (_cache[2] = (...args) => (_ctx._confirm && _ctx._confirm(...args))),\n disabled: !_ctx.pppCheck\n }, _toDisplayString(_ctx.okButton), 9, _hoisted_9)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, Fragment as _Fragment, resolveComponent as _resolveComponent, createVNode as _createVNode, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3a531b7a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record-ppp-card\" }\nconst _hoisted_2 = [\"disabled\"]\nconst _hoisted_3 = { class: \"btn-body\" }\nconst _hoisted_4 = { style: {\"display\":\"flex\"} }\nconst _hoisted_5 = {\n key: 0,\n class: \"tick-mark p\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-check\" }, null, -1))\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = {\n key: 1,\n class: \"tick-mark\"\n}\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-circle\" }, null, -1))\nconst _hoisted_10 = [\n _hoisted_9\n]\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", {\n class: \"ml-2\",\n style: {\"margin\":\"auto auto\"}\n}, \"Select as your Principal Place of Practice\", -1))\nconst _hoisted_12 = { key: 0 }\nconst _hoisted_13 = { key: 1 }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Name of Law Practice / Employer / Entity\", -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Practice Type\", -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Employment Status\", -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_21 = { key: 3 }\nconst _hoisted_22 = { key: 0 }\nconst _hoisted_23 = { key: 1 }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_27 = {\n key: 4,\n class: \"error\"\n}\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_29 = { key: 5 }\n\nexport function render(_ctx, _cache) {\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"button\", {\n class: _normalizeClass([\"practice-card\", _ctx.newRecord.isPpp? 'ppp': '']),\n disabled: _ctx.newRecord.isCeased,\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.pppClicked(_ctx.index)))\n }, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n (_ctx.newRecord.isPpp && !_ctx.newRecord.isCeased)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _hoisted_7))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_8, _hoisted_10)),\n _hoisted_11\n ]),\n (_ctx.newRecord.isPpp)\n ? (_openBlock(), _createElementBlock(\"h3\", _hoisted_12, \"Principal Place of Practice\"))\n : (_openBlock(), _createElementBlock(\"h3\", _hoisted_13, \"  \")),\n _hoisted_14,\n _hoisted_15,\n _createTextVNode(\" \" + _toDisplayString(_ctx.newRecord.name) + \" \", 1),\n (_ctx.newRecord.firmId == null)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_16,\n _hoisted_17,\n _createTextVNode(\" \" + _toDisplayString(_ctx.newRecord.firmType?.description) + \"   \", 1)\n ], 64))\n : _createCommentVNode(\"\", true),\n _hoisted_18,\n _hoisted_19,\n _createTextVNode(\" \" + _toDisplayString(_ctx.newRecord.employmentStatus.name) + \" \", 1),\n _hoisted_20,\n (_ctx.newRecord.hasEmploymentStatusChanged)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n (_ctx.newRecord.employmentStatus.id == 999999999)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_22, \"Cessation Date\"))\n : (_openBlock(), _createElementBlock(\"h4\", _hoisted_23, \"Date of Change\")),\n _createTextVNode(\" \" + _toDisplayString(_ctx.$formatDate(_ctx.newRecord.effectiveDate)) + \"   \", 1)\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_24,\n _hoisted_25,\n _createVNode(_component_AddressPreview, {\n address: _ctx.getSelectedAddressFromArray(_ctx.newRecord.recordPracticeAddresses),\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"]),\n _hoisted_26,\n (_ctx.newRecord.isCeased)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n _hoisted_28,\n _createTextVNode(\" You cannot select this as your PPP \")\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_29, \"   \"))\n ])\n ], 10, _hoisted_2)\n ]))\n}","import { Options, Vue } from \"vue-property-decorator\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport FormatDateTimeMixin from \"@/shared/mixins/format-datetime\";\n\n@Options({\n props: {\n newRecord: Object,\n index: Number,\n },\n components: {\n AddressPreview,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class PcrPracticeRecordPppCard extends Vue {\n private newRecord!: any;\n private index!: number;\n\n private pppClicked(i: number) {\n this.$emit('pppSelected', this.index);\n }\n\n private getSelectedAddressFromArray(addresses: any[]) {\n const _selectedAddress: any[] = addresses.filter(a => {\n return a.isSelected;\n });\n return _selectedAddress[0]?.address ? _selectedAddress[0].address : addresses[0].address;\n }\n\n}\n\n","import { render } from \"./pcr-practice-record-ppp-card.html?vue&type=template&id=3a531b7a&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record-ppp-card.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record-ppp-card.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record-ppp-card.scss?vue&type=style&index=0&id=3a531b7a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3a531b7a\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport PcrPracticeRecordPppCard from \"../pcr-practice-record-ppp-card/index.vue\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { PracticeDetails } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n\n@Options({\n props: {\n practiceRecords: Object,\n },\n components: {\n PcrPracticeRecordPppCard,\n Popover,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrPracticeRecordPppPopup extends Vue {\n private practiceRecords!: PracticeDetails[];\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n isVisible = false;\n\n title = '';\n message = '';// Main text content\n okButton = 'OK'; // Text for confirm button; leave it empty because we don't know what we're using it for\n cancelButton = 'Cancel'; // text for cancel button\n\n // Private variables\n private resolvePromise: any;\n private rejectPromise: any;\n\n private newRecords: any[] = [];\n\n @Watch('practiceRecords')\n private onPracticeRecordsChange(){\n this.getPractices();\n }\n\n\n private getPractices() {\n this.newRecords = [];\n for (let r = 0; r < this.practiceRecords.length; r++) {\n if (this.practiceRecords[r].newPracticeRecord?.name) {\n this.newRecords.push(this.practiceRecords[r].newPracticeRecord);\n } else {\n this.newRecords.push(this.practiceRecords[r].originalPracticeRecord);\n this.newRecords[r].hasEmploymentStatusChanged = this.sameEmploymentStatus(this.practiceRecords[r])\n }\n this.newRecords[r].effectiveDate = this.newRecords[r].effectiveDate ? new Date(this.newRecords[r].effectiveDate) : null;\n }\n }\n\n private sameEmploymentStatus(practiceRecord: any ): boolean {\n return practiceRecord.originalPracticeRecord?.employmentStatus?.id == practiceRecord.newRecord?.employmentStatus?.id;\n }\n\n private open() {\n setTimeout(() => {\n // delay add class to allow other popup to close\n document.body.classList.add('modal-open');\n }, 250);\n this.isVisible = true;\n\n }\n\n private close() {\n this.isVisible = false;\n document.body.classList.remove('modal-open');\n }\n\n public show(opts: any = {}) {\n this.title = opts?.title || 'CANCEL ALERT';\n this.message = opts?.message || 'Are you sure?';\n this.okButton = opts?.okButton || 'OK';\n this.cancelButton = opts?.cancelButton || 'Cancel';\n this.getPractices();\n this.open();\n // Return promise so the caller can get results\n return new Promise((resolve, reject) => {\n this.resolvePromise = resolve\n this.rejectPromise = reject\n })\n }\n\n private pppSelected(index: number) {\n this.newRecords.forEach((p: { isPpp: boolean; }) => {\n p.isPpp = false;\n });\n this.newRecords[index].isPpp = true;\n }\n\n _confirm() {\n this.updatePrincipalPlacePractice();\n }\n\n get pppCheck(): boolean {\n const _isPpp = this.newRecords.filter(p=>{\n return p.isPpp && !p.isCeased;\n });\n return _isPpp.length == 1;\n }\n\n private async updatePrincipalPlacePractice() {\n const _ppp = this.newRecords.filter((r: { isPpp: boolean; }) => {\n return r.isPpp\n })[0];\n if (_ppp?.id && _ppp.id > 0) {\n await this.apiService.PcRenewApi?.apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(\n this.pcRenewApplicationId, // pcRenewApplicationId\n _ppp.id // recordPracticeId\n )\n .then(() => {\n this.eventCtrl.emit('show-snackbar', 'success', 'PPP record updated');\n this.close()\n this.resolvePromise(true)\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update PPP record: ' + err);\n this.ai.trackException('Error, Unable to update PPP record: ' + err);\n })\n } else {\n this.close()\n this.resolvePromise(true)\n }\n\n }\n\n _cancel() {\n this.close();\n this.resolvePromise(false)\n // Or you can throw an error\n // this.rejectPromise(new Error('User cancelled the dialogue'))\n }\n\n get pcRenewApplicationId() {\n return store.getters.getPcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n}\n\n","import { render } from \"./pcr-practice-record-ppp-popup.html?vue&type=template&id=7e3ee90e&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record-ppp-popup.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record-ppp-popup.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record-ppp-popup.scss?vue&type=style&index=0&id=7e3ee90e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7e3ee90e\"]])\n\nexport default __exports__","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, Transition as _Transition, withCtx as _withCtx, createVNode as _createVNode, resolveComponent as _resolveComponent } from \"vue\"\n\nconst _hoisted_1 = { class: \"payment-popup\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = {\n class: \"modal-wrapper\",\n ref: \"modalWrapper\"\n}\nconst _hoisted_4 = { class: \"modal-container\" }\nconst _hoisted_5 = /*#__PURE__*/_createElementVNode(\"div\", { class: \"modal-header\" }, [\n /*#__PURE__*/_createElementVNode(\"h3\", null, \"Payment\")\n], -1)\nconst _hoisted_6 = { class: \"modal-body\" }\nconst _hoisted_7 = [\"src\"]\n\nexport function render(_ctx, _cache) {\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n (!_ctx.disableCloseButton || _ctx.iFrameLoaded)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"fal fa-times close-icon\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.confirmAlert && _ctx.confirmAlert(...args)))\n }))\n : _createCommentVNode(\"\", true),\n _hoisted_5,\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"iframe\", {\n ref: \"paymentApp\",\n class: \"paymentApp\",\n src: _ctx.paymentAppSRC()\n }, null, 8, _hoisted_7)\n ])\n ])\n ], 512)\n ])\n ]),\n _: 1\n }),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelPaymentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { PAYMENTAPP_URL, SELF_URL } from '@/shared/config/config';\nimport { PaymentTransaction } from '@/shared/models/payment-transaction';\nimport { Options, Vue } from 'vue-class-component';\nimport { Prop, Ref } from 'vue-property-decorator';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\n\n@Options({\n components: {\n ConfirmDialogue,\n LoadingIndicator\n },\n})\nexport default class PaymentPopup extends Vue {\n\n @Ref('paymentApp') readonly paymentAppIframe!: any;\n\n @Prop({ default: false })\n private modalOpened!: boolean;\n\n @Prop({ default: '' })\n private paymentAppName!: string;\n\n @Prop({ default: {} })\n private paymentTransaction!: PaymentTransaction;\n\n @Prop({ default: '' })\n private cancelEventName!: string;\n\n @Prop({ default: false })\n private disableCloseButton!: boolean;\n\n @Prop({ default: '' })\n private sessionId!: string;\n\n @Prop({ default: false })\n private validPaymentPage!: boolean;\n\n private targetOrigin = PAYMENTAPP_URL;\n\n private loadingIFrame = true;\n private iFrameLoaded = false;\n\n mounted() {\n if (!this.modalOpened) {\n document.body.classList.add('modal-open');\n }\n\n this.paymentAppIframe.onload = () => {\n this.iFrameLoaded = true;\n this.loadingIFrame = false;\n }\n\n this.eventCtrl.on(this.cancelEventName, this.confirmAlert);\n }\n\n beforeUnmount() {\n if (!this.modalOpened) {\n document.body.classList.remove('modal-open');\n }\n this.eventCtrl.removeListener(this.cancelEventName, this.confirmAlert);\n }\n\n private paymentAppSRC(): string {\n const host = PAYMENTAPP_URL;\n const tK = this.paymentTransaction.transactionKey;\n const sK = this.paymentTransaction.secureKey;\n const tO = SELF_URL;\n const pApname = this.paymentAppName;\n const src = host + '?' +\n 'tK=' + encodeURIComponent(tK) + '&' +\n 'sK=' + encodeURIComponent(sK) + '&' +\n 'tO=' + encodeURIComponent(tO) + '&' +\n 'pApname=' + encodeURIComponent(pApname) + '&' +\n 'sSid=' + encodeURIComponent(this.sessionId);\n return src;\n }\n\n private confirmAlert() {\n if (this.disableCloseButton) {\n return;\n }\n const _confirm: any = this.$refs.confirmCancelPaymentDialogue;\n _confirm.show({\n title: 'Cancel Payment',\n message: 'Are you sure you want to cancel your payment?',\n okButton: 'Yes, cancel payment',\n cancelButton: 'No, do not cancel',\n }).then((res: any) => {\n if (res) {\n if (this.iFrameLoaded && this.validPaymentPage) {\n this.paymentAppIframe.contentWindow.postMessage({\n sessionId: this.sessionId,\n paymentAppName: this.paymentAppName,\n action: 'proceed-cancel-payment'\n }, this.targetOrigin);\n } else {\n this.$emit('close');\n }\n }\n })\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n}\n","import { render } from \"./payment-popup.html?vue&type=template&id=67254c9e&ts=true\"\nimport script from \"./payment-popup.ts?vue&type=script&lang=ts\"\nexport * from \"./payment-popup.ts?vue&type=script&lang=ts\"\n\nimport \"./payment-popup.scss?vue&type=style&index=0&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export class PaymentTransaction {\n constructor(\n public transactionKey: string = '',\n public secureKey: string = '',\n ) { }\n}\n","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, vModelRadio as _vModelRadio, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createCommentVNode as _createCommentVNode, createBlock as _createBlock, Transition as _Transition, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1ea955b2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-practice-record-additional-details-popup\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"popup-modal\"\n}\nconst _hoisted_3 = { class: \"dialog-box\" }\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = { class: \"radio-button-group\" }\nconst _hoisted_6 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_7 = { class: \"radio-button col-3\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_9 = { class: \"col-2 ml-0\" }\nconst _hoisted_10 = { class: \"radio-button\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_12 = {\n key: 0,\n class: \"practice-group\"\n}\nconst _hoisted_13 = { class: \"p-card\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity\", -1))\nconst _hoisted_15 = { class: \"row\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-6 ml-0\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Employment Status\"),\n /*#__PURE__*/_createTextVNode(\" Ceased \")\n], -1))\nconst _hoisted_17 = { class: \"col-6\" }\nconst _hoisted_18 = { class: \"input-box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Cessation Date\", -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity address\", -1))\nconst _hoisted_22 = { class: \"btns right\" }\nconst _hoisted_23 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n (_ctx.isVisible)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"i\", {\n class: \"fal fa-times close\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }),\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.title), 1),\n _createElementVNode(\"p\", { innerHTML: _ctx.message }, null, 8, _hoisted_4),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"span\", _hoisted_6, [\n _createElementVNode(\"label\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n value: true,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.answer) = $event)),\n name: \"radio\"\n }, null, 512), [\n [_vModelRadio, _ctx.answer]\n ]),\n _hoisted_8\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_9, [\n _createElementVNode(\"label\", _hoisted_10, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.answer) = $event)),\n value: false,\n name: \"radio\"\n }, null, 512), [\n [_vModelRadio, _ctx.answer]\n ]),\n _hoisted_11\n ])\n ])\n ]),\n (_ctx.answer == false && _ctx.practiceRecords.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.newRecords, (p) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _hoisted_14,\n _createTextVNode(\" \" + _toDisplayString(p.name) + \" \", 1),\n _createElementVNode(\"div\", _hoisted_15, [\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: p.effectiveDate,\n \"onUpdate:value\": $event => ((p.effectiveDate) = $event),\n \"input-class\": \"normal\",\n \"disabled-date\": _ctx.disableAfterJulyTheFirst\n }, null, 8, [\"value\", \"onUpdate:value\", \"disabled-date\"])\n ])\n ])\n ]),\n _hoisted_20,\n _hoisted_21,\n _createVNode(_component_AddressPreview, {\n address: p.recordPracticeAddresses[0].address,\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"])\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_22, [\n (_ctx.isSavingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-tertiary\",\n onClick: _cache[3] || (_cache[3] = (...args) => (_ctx._cancel && _ctx._cancel(...args)))\n }, _toDisplayString(_ctx.cancelButton), 1),\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary ml-2\",\n onClick: _cache[4] || (_cache[4] = (...args) => (_ctx._confirm && _ctx._confirm(...args))),\n disabled: !_ctx.canSubmit\n }, _toDisplayString(_ctx.okButton), 9, _hoisted_23)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]))\n}","\nimport { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport DatePicker from 'vue-datepicker-next';\nimport 'vue-datepicker-next/index.css';\nimport { PracticeDetails, RecordPractice, RecordPracticeRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\n@Options({\n props: {\n practiceRecords: Object\n },\n components: {\n DatePicker,\n AddressPreview,\n LoadingIndicator,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrPracticeRecordAdditionalDetailsPopup extends Vue {\n private practiceRecords!: PracticeDetails[];\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n isVisible = false;\n\n title = '';\n message = '';// Main text content\n okButton = 'OK'; // Text for confirm button; leave it empty because we don't know what we're using it for\n cancelButton = 'Cancel'; // text for cancel button\n\n // Private variables\n private resolvePromise: any;\n private rejectPromise: any;\n\n private answer: any = null;\n private newRecords: RecordPractice[] = [];\n\n private selectedAddressId = 0;\n private selectedAddressIndex = 0;\n\n private isSavingData = false;\n\n @Watch('practiceRecords')\n private onRecordsChange() {\n this.newRecords = [];\n for (let r = 0; r < this.practiceRecords.length; r++) {\n if (this.practiceRecords[r].newPracticeRecord?.name) {\n this.newRecords.push(this.practiceRecords[r].newPracticeRecord);\n } else {\n this.newRecords.push(this.practiceRecords[r].originalPracticeRecord);\n }\n this.newRecords[r].effectiveDate = null;\n }\n }\n\n private open() {\n this.answer = null;\n setTimeout(() => {\n // delay add class to allow other popup to close\n document.body.classList.add('modal-open');\n }, 500);\n this.isVisible = true;\n }\n\n private close() {\n this.isVisible = false;\n document.body.classList.remove('modal-open');\n }\n\n public show(opts: any = {}) {\n this.title = opts?.title || 'CANCEL ALERT';\n this.message = opts?.message || 'Are you sure?';\n this.okButton = opts?.okButton || 'OK';\n this.cancelButton = opts?.cancelButton || 'Cancel';\n\n this.open();\n // Return promise so the caller can get results\n return new Promise((resolve, reject) => {\n this.resolvePromise = resolve\n this.rejectPromise = reject\n })\n }\n\n async _confirm() {\n if (!this.answer) {\n await this.updateRecords();\n }\n setTimeout(() => {\n this.close();\n this.resolvePromise(true);\n }, this.answer ? 0 : 1000);\n\n }\n\n _cancel() {\n this.close()\n this.resolvePromise(false)\n // Or you can throw an error\n // this.rejectPromise(new Error('User cancelled the dialogue'))\n }\n\n private async updateRecords() {\n this.isSavingData = true;\n for (let i = 0; i < this.practiceRecords.length; i++) {\n if (this.newRecords[i].effectiveDate) {\n this.newRecords[i].employmentStatus = { id: 999999999, name: \"Ceased\", description: \"Creased\" };\n this.newRecords[i].recordPracticeAddresses = this.setSelectedAddress(this.newRecords[i].recordPracticeAddresses);\n const _rec = {\n originalPracticeRecord: this.practiceRecords[i].originalPracticeRecord,\n newPracticeRecord: this.newRecords[i],\n }\n await this.updatePracticeDetailsPost(_rec);\n }\n }\n this.isSavingData = false;\n }\n\n private setSelectedAddress(addresses: any[]) {\n let foundIt = false;\n for (let i = 0; i < addresses.length; i++) {\n if (addresses[i].isSelected) {\n foundIt = true;\n }\n }\n if (!foundIt) {\n addresses[0].isSelected = true;\n }\n return addresses;\n }\n\n private async updatePracticeDetailsPost(record: any) {\n const _newPracticeRecord = record.newPracticeRecord as RecordPractice;\n const _recordPracticeRequest: RecordPracticeRequest = _newPracticeRecord;\n const _address = this.getSelectedAddressFromArray(_recordPracticeRequest.recordPracticeAddresses);\n _recordPracticeRequest.recordPracticeAddresses.address = this.$addressCleanup(_address);\n await this.apiService.PcRenewApi?.apiV1PcRenewSavePracticeDetailsPost(_recordPracticeRequest)\n .then(() => {\n this.eventCtrl.emit('show-snackbar', 'success', 'Practice records updated');\n })\n .catch(err => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update practice records: ' + err);\n this.ai.trackException('Error, Unable to update practice records: ' + err);\n })\n }\n\n private getSelectedAddressFromArray(addresses: any[]) {\n const _selectedAddress: any[] = addresses.filter(a => {\n return a.isSelected;\n });\n return _selectedAddress[0]?.address ? _selectedAddress[0].address : addresses[0].address;\n }\n\n private disableAfterJulyTheFirst(date: any) {\n const lastApplicationYear = store.getters.getAppInfo.lastApplicationYear.year;\n return date > new Date(new Date(lastApplicationYear + '-07-01T23:59:59'));\n }\n\n get effectiveDateCount() {\n return this.newRecords.filter(r => {\n return r.effectiveDate !== null;\n }).length;\n }\n\n get canSubmit() {\n return this.answer || this.effectiveDateCount > 0;\n }\n\n}\n\n","import { render } from \"./pcr-practice-record-additional-details-popup.html?vue&type=template&id=1ea955b2&scoped=true&ts=true\"\nimport script from \"./pcr-practice-record-additional-details-popup.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-practice-record-additional-details-popup.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-practice-record-additional-details-popup.scss?vue&type=style&index=0&id=1ea955b2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1ea955b2\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, Fragment as _Fragment, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3b4c6210\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-application-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Application Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"steps mt-4\"\n}\nconst _hoisted_4 = { class: \"step-indicator-wrapper\" }\nconst _hoisted_5 = { class: \"answers\" }\nconst _hoisted_6 = { class: \"right mt-2\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_8 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_StepIndicator = _resolveComponent(\"StepIndicator\")\n const _component_AppDeclarationFour = _resolveComponent(\"AppDeclarationFour\")\n const _component_AppDeclarationFive = _resolveComponent(\"AppDeclarationFive\")\n const _component_AppDeclarationThree = _resolveComponent(\"AppDeclarationThree\")\n const _component_AppDeclarationOne = _resolveComponent(\"AppDeclarationOne\")\n const _component_AppDeclarationTwo = _resolveComponent(\"AppDeclarationTwo\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_StepIndicator, {\n steps: _ctx.steps,\n \"onUpdate:steps\": _cache[0] || (_cache[0] = $event => ((_ctx.steps) = $event)),\n currentStepIndex: _ctx.currentStepIndex,\n \"onUpdate:currentStepIndex\": _cache[1] || (_cache[1] = $event => ((_ctx.currentStepIndex) = $event))\n }, null, 8, [\"steps\", \"currentStepIndex\"])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n (_ctx.isPCHolder)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n (_ctx.currentStepIndex == 0)\n ? (_openBlock(), _createBlock(_component_AppDeclarationFour, {\n key: 0,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[2] || (_cache[2] = $event => ((_ctx.declarationForm) = $event)),\n isPcrApp: _ctx.isPcrApp,\n \"onUpdate:isPcrApp\": _cache[3] || (_cache[3] = $event => ((_ctx.isPcrApp) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[4] || (_cache[4] = $event => (_ctx.updateBothHolderDeclaration1($event))),\n onValidForm: _cache[5] || (_cache[5] = $event => (_ctx.setFormValidationStatus($event, 0)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"isPcrApp\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 1)\n ? (_openBlock(), _createBlock(_component_AppDeclarationFive, {\n key: 1,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[6] || (_cache[6] = $event => ((_ctx.declarationForm) = $event)),\n isPcrApp: _ctx.isPcrApp,\n \"onUpdate:isPcrApp\": _cache[7] || (_cache[7] = $event => ((_ctx.isPcrApp) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[8] || (_cache[8] = $event => (_ctx.updateBothHolderDeclaration2($event))),\n onValidForm: _cache[9] || (_cache[9] = $event => (_ctx.setFormValidationStatus($event, 1)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"isPcrApp\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 2)\n ? (_openBlock(), _createBlock(_component_AppDeclarationThree, {\n key: 2,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[10] || (_cache[10] = $event => ((_ctx.declarationForm) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[11] || (_cache[11] = $event => (_ctx.updateBothHolderDeclaration3($event))),\n onValidForm: _cache[12] || (_cache[12] = $event => (_ctx.setFormValidationStatus($event, 2)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n (_ctx.currentStepIndex == 0)\n ? (_openBlock(), _createBlock(_component_AppDeclarationOne, {\n key: 0,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[13] || (_cache[13] = $event => ((_ctx.declarationForm) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[14] || (_cache[14] = $event => (_ctx.updateInterstateHolderDeclaration1($event))),\n onValidForm: _cache[15] || (_cache[15] = $event => (_ctx.setFormValidationStatus($event, 0)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 1)\n ? (_openBlock(), _createBlock(_component_AppDeclarationTwo, {\n key: 1,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[16] || (_cache[16] = $event => ((_ctx.declarationForm) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[17] || (_cache[17] = $event => (_ctx.updateInterstateHolderDeclaration2($event))),\n onValidForm: _cache[18] || (_cache[18] = $event => (_ctx.setFormValidationStatus($event, 1)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 2)\n ? (_openBlock(), _createBlock(_component_AppDeclarationFour, {\n key: 2,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[19] || (_cache[19] = $event => ((_ctx.declarationForm) = $event)),\n isPcrApp: _ctx.isPcrApp,\n \"onUpdate:isPcrApp\": _cache[20] || (_cache[20] = $event => ((_ctx.isPcrApp) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[21] || (_cache[21] = $event => (_ctx.updateBothHolderDeclaration1($event))),\n onValidForm: _cache[22] || (_cache[22] = $event => (_ctx.setFormValidationStatus($event, 2)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"isPcrApp\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 3)\n ? (_openBlock(), _createBlock(_component_AppDeclarationFive, {\n key: 3,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[23] || (_cache[23] = $event => ((_ctx.declarationForm) = $event)),\n isPcrApp: _ctx.isPcrApp,\n \"onUpdate:isPcrApp\": _cache[24] || (_cache[24] = $event => ((_ctx.isPcrApp) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[25] || (_cache[25] = $event => (_ctx.updateBothHolderDeclaration2($event))),\n onValidForm: _cache[26] || (_cache[26] = $event => (_ctx.setFormValidationStatus($event, 3)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"isPcrApp\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex == 4)\n ? (_openBlock(), _createBlock(_component_AppDeclarationThree, {\n key: 4,\n class: \"step\",\n uploading: _ctx.uploading,\n declarationForm: _ctx.declarationForm,\n \"onUpdate:declarationForm\": _cache[27] || (_cache[27] = $event => ((_ctx.declarationForm) = $event)),\n onDeleteFile: _ctx.deleteFile,\n onFormChanged: _cache[28] || (_cache[28] = $event => (_ctx.updateBothHolderDeclaration3($event))),\n onValidForm: _cache[29] || (_cache[29] = $event => (_ctx.setFormValidationStatus($event, 4)))\n }, null, 8, [\"uploading\", \"declarationForm\", \"onDeleteFile\"]))\n : _createCommentVNode(\"\", true)\n ], 64)),\n _createElementVNode(\"div\", _hoisted_6, [\n _hoisted_7,\n (_ctx.currentStepIndex !== 0)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline sml mr-2\",\n onClick: _cache[30] || (_cache[30] = $event => (_ctx.stepBack()))\n }, \"Back\"))\n : _createCommentVNode(\"\", true),\n (_ctx.currentStepIndex < (_ctx.isPCHolder ? 2 : 4))\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-secondary sml\",\n disabled: !_ctx.isValidStep || (_ctx.declarationForm.involvement22 && _ctx.isPcrApp) || (_ctx.declarationForm.completedCpdPoints22 && _ctx.isPcrApp && _ctx.currentStepIndex == 1),\n onClick: _cache[31] || (_cache[31] = $event => (_ctx.nextStep()))\n }, \"Proceed\", 8, _hoisted_8))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ])),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1e984888\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-declaration-one\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"I hold a current Practising Certificate issued outside of the NSW jurisdiction\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"mt-2\" }, \"Please attach a copy of your interstate practising certificate.\", -1))\nconst _hoisted_4 = { class: \"mt-3\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_7 = { class: \"file-list mb-2\" }\nconst _hoisted_8 = { class: \"file-name\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_10 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[0] || (_cache[0] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.declarationForm?.interstatePCFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.declarationForm.interstatePCFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_10)\n ]))\n }), 256))\n ])\n ]))\n}","import { Inject, Options, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\n\n@Options({\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AppDeclarationOne extends Vue {\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: false})\n private uploading!: boolean;\n\n @Prop()\n private declarationForm!: SarRecordApplicationDeclaration;\n\n private selectedOption = null as any;\n private fileList: Array = [];\n\n // @Watch('selectedOption')\n // private onSelectedOptionChanged(): void {\n // this.$emit('formChanged', {\n // selectedOption: this.selectedOption,\n // fileList: this.fileList\n // });\n // this.$emit('validForm', this.isFormValid());\n // }\n\n @Watch('declarationForm.interstatePCFiles.length')\n private pcFileListChanged(): void {\n this.$emit('validForm', this.isFormValid());\n }\n\n mounted(): void {\n this.$nextTick(() => {\n this.$emit('validForm', this.isFormValid());\n });\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n // selectedOption: this.selectedOption,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n // if (this.selectedOption == 0) {\n // return true;\n // } else if (this.selectedOption == 1 && this.declarationForm?.interstatePCFiles?.length > 0) {\n // return true;\n // } else {\n // return false;\n // }\n\n return this.declarationForm?.interstatePCFiles?.length > 0;\n }\n\n // private updateOptions(): void {\n // this.selectedOption = this.declarationForm.isNswPcHolderFlag ? 0 : this.declarationForm.isInterstatePcHolderFlag ? 1 : this.declarationForm.isNoPcHolderFlag ? 2 : null as any;\n // }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./app-declaration-one.html?vue&type=template&id=1e984888&scoped=true&ts=true\"\nimport script from \"./app-declaration-one.ts?vue&type=script&lang=ts\"\nexport * from \"./app-declaration-one.ts?vue&type=script&lang=ts\"\n\nimport \"./app-declaration-one.scss?vue&type=style&index=0&id=1e984888&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1e984888\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1e04d0d8\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-declaration-two\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"I am a full solicitor member of an equivalent body in Australia and intend to renew my membership\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"mt-2\" }, \"Please attach a copy of your interstate membership.\", -1))\nconst _hoisted_4 = { class: \"mt-3\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_7 = { class: \"file-list mb-2\" }\nconst _hoisted_8 = { class: \"file-name\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_10 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[0] || (_cache[0] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.declarationForm?.interstateMembershipFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _hoisted_6,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.declarationForm.interstateMembershipFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_10)\n ]))\n }), 256))\n ])\n ]))\n}","import { Inject, Options, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\n\n@Options({\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AppDeclarationTwo extends Vue {\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: false})\n private uploading!: boolean;\n\n @Prop()\n private declarationForm!: SarRecordApplicationDeclaration;\n\n private selectedOption = null as any;\n private fileList: Array = [];\n\n // @Watch('selectedOption')\n // private onSelectedOptionChanged(): void {\n // this.$emit('formChanged', {\n // selectedOption: this.selectedOption,\n // fileList: this.fileList\n // });\n // this.$emit('validForm', this.isFormValid());\n // }\n\n @Watch('declarationForm.interstateMembershipFiles.length')\n private smFileListChanged(): void {\n this.$emit('validForm', this.isFormValid());\n }\n\n mounted(): void {\n this.$nextTick(() => {\n this.$emit('validForm', this.isFormValid());\n });\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n // selectedOption: this.selectedOption,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n // if (this.selectedOption == 0) {\n // return true;\n // } else if (this.selectedOption == 1 && this.declarationForm?.interstateMembershipFiles?.length > 0) {\n // return true;\n // } else {\n // return false;\n // }\n\n return this.declarationForm?.interstateMembershipFiles?.length > 0;\n }\n\n // private updateOptions(): void {\n // this.selectedOption = this.declarationForm.isNswSmHolderFlag ? 0 : this.declarationForm.isInterstateSmHolderFlag ? 1 : this.declarationForm.isNoSmHolderFlag ? 2 : null as any;\n // }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./app-declaration-two.html?vue&type=template&id=1e04d0d8&scoped=true&ts=true\"\nimport script from \"./app-declaration-two.ts?vue&type=script&lang=ts\"\nexport * from \"./app-declaration-two.ts?vue&type=script&lang=ts\"\n\nimport \"./app-declaration-two.scss?vue&type=style&index=0&id=1e04d0d8&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1e04d0d8\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, createStaticVNode as _createStaticVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-321ce390\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-declaration-three\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Since your last renewal have you been subject to adverse action by a regulatory authority\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Note:\", -1))\nconst _hoisted_5 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_6 = { class: \"radio-button\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_8 = {\n key: 0,\n class: \"mt-3 ml-5\"\n}\nconst _hoisted_9 = { class: \"mt-2\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", null, \"legal profession uniform law (NSW)\", -1))\nconst _hoisted_11 = { class: \"ml-5 mt-3\" }\nconst _hoisted_12 = /*#__PURE__*/_createStaticVNode(\"
Important: Disclosure of any Adverse Action does not satisfy your professional obligations of disclosure under the legal profession uniform law (NSW) (Professional Disclosure Obligations), which must be made either when submitting an application to renew your practising certificate, or, any other time in writing to psd@lawsociety.com.au. The Law Society Specialist Accreditation team may share any information you disclose regarding Adverse Actions to the Professional Standards Department of the Law Society, but its right to do so does not affect in any way your separate Professional Disclosure Obligations.
Adverse Action
You must provide a written statement to the Specialist Accreditation Board which includes
  1. A statement of the facts.
  2. An explanation as to the circumstance; and
  3. Why, despite the adverse action taken against you, you consider yourself to be fit to hold Specialist Accreditation.
\", 3)\nconst _hoisted_15 = { class: \"mt-3\" }\nconst _hoisted_16 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_18 = { class: \"file-list mb-2\" }\nconst _hoisted_19 = { class: \"file-name\" }\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = { class: \"radio-button ml-1\" }\nconst _hoisted_23 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _hoisted_3,\n _createElementVNode(\"span\", null, [\n _hoisted_4,\n _createTextVNode(\" for the purpose of this renewal, adverse action  \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Adverse Action', 11)\n }, null, 8, [\"popover\"])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"label\", _hoisted_6, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.selectedOption) = $event)),\n value: true,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_7\n ]),\n (_ctx.selectedOption == 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createTextVNode(\" I consent and authorise, including for the purposes of the Privacy Act and section 462(2) of the \"),\n _hoisted_10,\n _createTextVNode(\", the Professional Standards Department of the Law Society of NSW, the NSW Bar Association and the Legal Services Commissioner (or any equivalent bodies in another Australian state or Territory), to advise the Specialist Accreditation Board and release to the Specialist Accreditation Board any information in relation to any matter (however described) that is required to be disclosed under the rules and procedures of the Specialist Accreditation program in place from time to time (whether or not that matter has been disclosed by me to the Board)   \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Additional Information', 11)\n }, null, 8, [\"popover\"])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_15, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[1] || (_cache[1] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.declarationForm?.adverseActionFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _hoisted_17,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.declarationForm.adverseActionFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _createElementVNode(\"div\", _hoisted_19, [\n _hoisted_20,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_21)\n ]))\n }), 256))\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_22, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.selectedOption) = $event)),\n value: false,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_23\n ])\n ])\n ]))\n}","import { Inject, Options, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\n\n@Options({\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AppDeclarationThree extends Vue {\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: false})\n private uploading!: boolean;\n\n @Prop()\n private declarationForm!: SarRecordApplicationDeclaration;\n\n private selectedOption = null as any;\n private fileList: Array = [];\n\n @Watch('selectedOption')\n private onSelectedOptionChanged(): void {\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('declarationForm.adverseActionFiles.length')\n private adverseActionFileListChanged(): void {\n this.$emit('validForm', this.isFormValid());\n }\n\n mounted(): void {\n this.updateOptions();\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n if (this.selectedOption == null) {\n return false;\n } else if (this.selectedOption == false && this.selectedOption != null) {\n return true;\n } else if (this.selectedOption == true) {\n return this.declarationForm?.adverseActionFiles?.length > 0;\n } else {\n return false;\n }\n }\n\n private updateOptions(): void {\n this.selectedOption = this.declarationForm.adverseAction1 == true ? true :\n this.declarationForm.adverseAction2 == true ? false : null as any;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./app-declaration-three.html?vue&type=template&id=321ce390&scoped=true&ts=true\"\nimport script from \"./app-declaration-three.ts?vue&type=script&lang=ts\"\nexport * from \"./app-declaration-three.ts?vue&type=script&lang=ts\"\n\nimport \"./app-declaration-three.scss?vue&type=style&index=0&id=321ce390&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-321ce390\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vModelRadio as _vModelRadio, createElementVNode as _createElementVNode, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2e0f92f2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-declaration-four\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_5 = { class: \"radio-button\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_7 = { class: \"radio-button ml-1\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_9 = {\n key: 0,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Apply for Exemption\", -1))\nconst _hoisted_11 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_12 = { class: \"radio-button\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_14 = {\n key: 0,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_15 = { key: 0 }\nconst _hoisted_16 = { key: 1 }\nconst _hoisted_17 = { class: \"radio-button-group exemption-reason mt-3\" }\nconst _hoisted_18 = { class: \"radio-button\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Changed in Work Practices\")\n], -1))\nconst _hoisted_20 = { class: \"radio-button\" }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Moved to full time academia\")\n], -1))\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Please upload a written statement to the Specialist Accreditation Board\", -1))\nconst _hoisted_23 = { class: \"mt-3 ml-5 mr-5\" }\nconst _hoisted_24 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_26 = { class: \"file-list mb-2\" }\nconst _hoisted_27 = { class: \"file-name\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_29 = [\"onClick\"]\nconst _hoisted_30 = { class: \"radio-button ml-1\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_32 = {\n key: 1,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Involvement in the area(s) of accreditation\", -1))\nconst _hoisted_34 = { key: 0 }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"mailto:specialists@lawsociety.com.au\",\n class: \"link\"\n}, \"specialists@lawsociety.com.au\", -1))\nconst _hoisted_36 = { key: 1 }\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \" As you have selected no to maintaining substantial involvement of no less than 25% of full-time practice, and have selected no to an exemption, your Specialist Accreditation renewal cannot progress. \", -1))\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please take one of the following actions:\", -1))\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ol\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Review Your Choice\")\n ]),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Contact Us\"),\n /*#__PURE__*/_createTextVNode(\": Reach out to \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"mailto:specialists@lawsociety.com.au\",\n class: \"link\"\n }, \"specialists@lawsociety.com.au\")\n ]),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Proceed to Renewal\"),\n /*#__PURE__*/_createTextVNode(\": Click the \\\"Next\\\" button to continue with your Practising Certificate Renewal only.\")\n ])\n], -1))\nconst _hoisted_41 = [\n _hoisted_37,\n _hoisted_38,\n _hoisted_39,\n _hoisted_40\n]\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_2, [\n _createTextVNode(\"In the period of 1 May \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-2) + \" - 30 April \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-1) + \". I have maintained substantial involvement in the area(s) of accreditation no less than 25% of normal full-time practice  \", 1),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Involvement', 17)\n }, null, 8, [\"popover\"])\n ]))\n : (_openBlock(), _createElementBlock(\"h4\", _hoisted_3, [\n _createTextVNode(\"In the period of 1 May \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-2) + \" - 30 April \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-1) + \". I have maintained substantial involvement in the area(s) of accreditation no less than 25% of normal full-time practice  \", 1),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Involvement', 11)\n }, null, 8, [\"popover\"])\n ])),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"label\", _hoisted_5, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.selectedOption) = $event)),\n value: true,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_6\n ]),\n _createElementVNode(\"label\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.selectedOption) = $event)),\n value: false,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_8\n ]),\n (_ctx.selectedOption == false)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"label\", _hoisted_12, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no_opt1\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.selectedOption2) = $event)),\n value: true,\n name: \"no-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption2]\n ]),\n _hoisted_13\n ]),\n (_ctx.selectedOption2 == true)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n (_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_15, [\n _createTextVNode(\"Exemption Reason  \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Exemption - Exemption Reason', 17)\n }, null, 8, [\"popover\"])\n ]))\n : (_openBlock(), _createElementBlock(\"h4\", _hoisted_16, [\n _createTextVNode(\"Exemption Reason  \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Exemption - Exemption Reason', 11)\n }, null, 8, [\"popover\"])\n ])),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"label\", _hoisted_18, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_exmpt_reason1\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.selectedOption3) = $event)),\n value: true,\n name: \"exmpt-reason\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption3]\n ]),\n _hoisted_19\n ]),\n _createElementVNode(\"label\", _hoisted_20, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_exmpt_reason2\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.selectedOption3) = $event)),\n value: false,\n name: \"exmpt-reason\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption3]\n ]),\n _hoisted_21\n ])\n ]),\n (_ctx.selectedOption3 != null)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_22,\n _createElementVNode(\"div\", _hoisted_23, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[5] || (_cache[5] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.declarationForm?.exemptionReasonFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, [\n _hoisted_25,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.declarationForm.exemptionReasonFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", _hoisted_27, [\n _hoisted_28,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_29)\n ]))\n }), 256))\n ])\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_30, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no_opt2\",\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => ((_ctx.selectedOption2) = $event)),\n value: false,\n name: \"no-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption2]\n ]),\n _hoisted_31\n ]),\n (_ctx.selectedOption2 == false)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32, [\n _hoisted_33,\n (!_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_34, [\n _createTextVNode(\" As you have selected no to maintaining substantial involvement of no less than 25% of full-time practice, and have selected no to an exemption, your renewal cannot progress. Please review your selection or contact \"),\n _hoisted_35\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, _hoisted_41))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","import { Inject, Options, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\n\n@Options({\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AppDeclarationFour extends Vue {\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: false })\n private uploading!: boolean;\n\n @Prop({ default: false })\n private isPcrApp!: boolean;\n\n @Prop()\n private declarationForm!: SarRecordApplicationDeclaration;\n\n private selectedOption = null as any;\n private selectedOption2 = null as any;\n private selectedOption3 = null as any;\n\n private fileList: Array = [];\n\n @Watch('selectedOption')\n private onSelectedOptionChanged(): void {\n if(this.selectedOption) {\n this.selectedOption2 = null;\n this.selectedOption3 = null;\n }\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n selectedOption3: this.selectedOption3,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('selectedOption2')\n private onSelectedOption2Changed(): void {\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n selectedOption3: this.selectedOption3,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('selectedOption3')\n private onSelectedOption3Changed(): void {\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n selectedOption3: this.selectedOption3,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('declarationForm.exemptionReasonFiles.length')\n private exemptionReasionFileListChanged(): void {\n this.$emit('validForm', this.isFormValid());\n }\n\n mounted(): void {\n this.updateOptions();\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n selectedOption3: this.selectedOption3,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n if (this.isPcrApp && this.selectedOption2 !== null && this.selectedOption2 === false) {\n return true;\n } else {\n if (this.selectedOption == null) {\n return false;\n } else if (this.selectedOption != null && this.selectedOption) {\n return true;\n } else if (this.selectedOption != null && this.selectedOption == false) {\n return this.validExemptionForm();\n } else {\n return false;\n }\n }\n }\n\n private validExemptionForm(): boolean {\n if (this.selectedOption2 == null) {\n return false;\n } else if ((this.selectedOption2 != null && this.selectedOption2 == true) &&\n this.declarationForm?.exemptionReasonFiles?.length > 0) {\n return this.validExemptionReasonAndFiles();\n } else if (this.selectedOption2 != null && this.selectedOption2 == false) {\n return false;\n } else {\n return false;\n }\n }\n\n private validExemptionReasonAndFiles(): boolean {\n if (this.selectedOption3 == null) {\n return false;\n } else if ((this.selectedOption3 != null && this.selectedOption3 == true) &&\n this.declarationForm?.exemptionReasonFiles?.length > 0) {\n return true;\n } else if ((this.selectedOption3 != null && this.selectedOption3 == false) &&\n this.declarationForm?.exemptionReasonFiles?.length > 0) {\n return true;\n } else {\n return false;\n }\n }\n\n private updateOptions(): void {\n this.selectedOption = this.declarationForm.involvement1 == true ? true :\n this.declarationForm.involvement2 == true ? false : null as any;\n this.selectedOption2 = this.declarationForm.involvement21 == true ? true :\n this.declarationForm.involvement22 == true ? false : null as any;\n this.selectedOption3 = this.declarationForm.involvement211 == true ? true :\n this.declarationForm.involvement212 == true ? false : null as any;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./app-declaration-four.html?vue&type=template&id=2e0f92f2&scoped=true&ts=true\"\nimport script from \"./app-declaration-four.ts?vue&type=script&lang=ts\"\nexport * from \"./app-declaration-four.ts?vue&type=script&lang=ts\"\n\nimport \"./app-declaration-four.scss?vue&type=style&index=0&id=2e0f92f2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2e0f92f2\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f7ce814c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"app-declaration-five\" }\nconst _hoisted_2 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_3 = { class: \"radio-button\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_5 = { class: \"radio-button ml-1\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_7 = {\n key: 0,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_8 = { key: 0 }\nconst _hoisted_9 = { key: 1 }\nconst _hoisted_10 = { class: \"radio-button-group mt-3\" }\nconst _hoisted_11 = { class: \"radio-button\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"An extension of time to complete my outstanding CPD requirements before 30 June\")\n], -1))\nconst _hoisted_13 = {\n key: 0,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Details of Non Compliance\", -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"Extenuating circumstances\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"Planned and confirmed CPD completed before June 30\")\n], -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/SAR/001\",\n target: \"_blank\",\n class: \"link\"\n}, \"Information for Accredited Specialists handbook\", -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"Reasons for seeking an extension\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"Details of any planned CPD including name and date of course/s\")\n], -1))\nconst _hoisted_20 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_22 = { class: \"file-list mb-2\" }\nconst _hoisted_23 = { class: \"file-name\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_25 = [\"onClick\"]\nconst _hoisted_26 = { class: \"radio-button ml-1\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"An exemption\")\n], -1))\nconst _hoisted_28 = {\n key: 1,\n class: \"mt-3 ml-2 pl-5\"\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"CPD Exemption\", -1))\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\" Specialists who have experienced significant unforeseen and extenuating hardship and have been unable to complete the 10 CPD points for renewal as a result, may be eligible to request that the program exercise its discretion. This is providing that all other renewal requirements from the CPD requirement. \"),\n /*#__PURE__*/_createElementVNode(\"br\"),\n /*#__PURE__*/_createElementVNode(\"br\"),\n /*#__PURE__*/_createTextVNode(\" Please submit a written statement that outlines the reasons for a non-compliance and any supporting documentation to \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"mailto:specialists@lawsociety.com.au\",\n class: \"link\"\n }, \"specialists@lawsociety.com.au\"),\n /*#__PURE__*/_createTextVNode(\". \")\n], -1))\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_32 = { key: 0 }\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Practising Certificate Renewal\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"h4\", null, \"In the period of 1 May \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-2) + \" – 30 April \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-1) + \". I have completed 10 CPD points in the area(s) of accreditation\", 1),\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"label\", _hoisted_3, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.selectedOption) = $event)),\n value: true,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_4\n ]),\n _createElementVNode(\"label\", _hoisted_5, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.selectedOption) = $event)),\n value: false,\n name: \"declaration1\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption]\n ]),\n _hoisted_6\n ]),\n (_ctx.selectedOption == false)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n (_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_8, [\n _createTextVNode(\"I wish to apply for \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Exemption - I wish to apply for', 17)\n }, null, 8, [\"popover\"])\n ]))\n : (_openBlock(), _createElementBlock(\"h4\", _hoisted_9, [\n _createTextVNode(\"I wish to apply for \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Exemption - I wish to apply for', 11)\n }, null, 8, [\"popover\"])\n ])),\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no_opt1\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.selectedOption2) = $event)),\n value: true,\n name: \"apply-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption2]\n ]),\n _hoisted_12\n ]),\n (_ctx.selectedOption2 == true)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"div\", null, [\n _createTextVNode(\" Specialists who are unable to complete the 10 CPD points for renewal may request an extension of time until 30 June \" + _toDisplayString(_ctx.onlineApplication.applicationYear.year-1) + \" where one of the following circumstances applies. \", 1),\n _hoisted_15,\n _createTextVNode(\" For further information please visit the \"),\n _hoisted_16,\n _createTextVNode(\". \"),\n _hoisted_17,\n _hoisted_18,\n _createTextVNode(\" To request an extension, please upload a written statement and any relevant supporting documentation outlining the following \"),\n _hoisted_19\n ]),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[3] || (_cache[3] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.declarationForm?.extensionStatementFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _hoisted_21,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.declarationForm.extensionStatementFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _hoisted_24,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_25)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_26, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no_opt2\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.selectedOption2) = $event)),\n value: false,\n name: \"apply-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.selectedOption2]\n ]),\n _hoisted_27\n ]),\n (_ctx.selectedOption2 == false)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _hoisted_30,\n _hoisted_31,\n (_ctx.isPcrApp)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32, [\n _createTextVNode(\" As a result of your current selection, you are unable to proceed with the Specialist Accreditation section. To continue, please click on \\\"Next\\\" button for the \"),\n _hoisted_33,\n _createTextVNode(\". \")\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n}","import { Inject, Options, Prop, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\n\n@Options({\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AppDeclarationFive extends Vue {\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n @Prop({ default: false })\n private uploading!: boolean;\n\n @Prop({ default: false })\n private isPcrApp!: boolean;\n\n @Prop()\n private declarationForm!: SarRecordApplicationDeclaration;\n\n private selectedOption = null as any;\n private selectedOption2 = null as any;\n private fileList: Array = [];\n\n @Watch('selectedOption')\n private onSelectedOptionChanged(): void {\n if(this.selectedOption) {\n this.selectedOption2 = null;\n }\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('selectedOption2')\n private onSelectedOption2Changed(): void {\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n }\n\n @Watch('declarationForm.extensionStatementFiles.length')\n private extensionFileListChanged(): void {\n this.$emit('validForm', this.isFormValid());\n }\n\n mounted(): void {\n this.updateOptions();\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n selectedOption2: this.selectedOption2,\n fileList: this.fileList\n });\n this.$emit('validForm', this.isFormValid());\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n if (this.isPcrApp && this.selectedOption2 !== null && this.selectedOption2 === false) {\n return true;\n } else {\n if (this.selectedOption == null) {\n return false;\n } else if (this.selectedOption != null && this.selectedOption == true) {\n return true;\n } else if (this.selectedOption != null && this.selectedOption == false) {\n console.log('Valid Form 5', this.validApplyExtensionForm());\n return this.validApplyExtensionForm();\n } else {\n return false;\n }\n }\n }\n\n private validApplyExtensionForm(): boolean {\n if (this.selectedOption2 == null) {\n return false;\n } else if ((this.selectedOption2 != null && this.selectedOption2 == true) &&\n this.declarationForm?.extensionStatementFiles?.length > 0) {\n return true;\n } else if (this.selectedOption2 != null && this.selectedOption2 == false) {\n return false;\n } else {\n return false;\n }\n }\n\n private updateOptions(): void {\n this.selectedOption = this.declarationForm.completedCpdPoints1 == true ? true :\n this.declarationForm.completedCpdPoints2 == true ? false : null as any;\n this.selectedOption2 = this.declarationForm.completedCpdPoints21 == true ? true :\n this.declarationForm.completedCpdPoints22 == true ? false : null as any;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./app-declaration-five.html?vue&type=template&id=f7ce814c&scoped=true&ts=true\"\nimport script from \"./app-declaration-five.ts?vue&type=script&lang=ts\"\nexport * from \"./app-declaration-five.ts?vue&type=script&lang=ts\"\n\nimport \"./app-declaration-five.scss?vue&type=style&index=0&id=f7ce814c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f7ce814c\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n// import { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SarRecordApplicationDeclaration } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport StepIndicator from \"@/shared/components/step-indicator/index.vue\";\nimport { Step } from \"@/shared/components/step-indicator/step-indicator\";\nimport AppDeclarationOne from \"./app-declaration-one/index.vue\";\nimport AppDeclarationTwo from \"./app-declaration-two/index.vue\";\nimport AppDeclarationThree from \"./app-declaration-three/index.vue\";\nimport AppDeclarationFour from \"./app-declaration-four/index.vue\";\nimport AppDeclarationFive from \"./app-declaration-five/index.vue\";\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\n\n@Options({\n props: {\n pcrFormData: Object,\n sarAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n StepIndicator,\n AppDeclarationOne,\n AppDeclarationTwo,\n AppDeclarationThree,\n AppDeclarationFour,\n AppDeclarationFive,\n ConfirmDialogue\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SarApplicationDeclarations extends Vue {\n private sarAppFormData!: any;\n private isSectionLoading!: boolean;\n private pcrFormData!: any;\n\n private isPcrApp = false;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n private uploading = false;\n\n private currentStepIndex = 0;\n private isPCHolder = null;\n\n\n private steps: Step[] = [];\n\n private stepsNSWOnly: Step[] = [\n { name: '1', description: 'Application Declaration 1', completed: false, current: true },\n { name: '2', description: 'Application Declaration 2', completed: false, current: false },\n { name: '3', description: 'Application Declaration 3', completed: false, current: false }\n ];\n\n private stepsInterstate: Step[] = [\n { name: '1', description: 'Application Declaration 1', completed: false, current: true },\n { name: '2', description: 'Application Declaration 2', completed: false, current: false },\n { name: '3', description: 'Application Declaration 3', completed: false, current: false },\n { name: '4', description: 'Application Declaration 4', completed: false, current: false },\n { name: '5', description: 'Application Declaration 5', completed: false, current: false }\n ];\n\n\n private declarationFormValid1 = false;\n private declarationFormValid2 = false;\n private declarationFormValid3 = false;\n private declarationFormValid4 = false;\n private declarationFormValid5 = false;\n\n private declarationForm: SarRecordApplicationDeclaration = {};\n\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.isPcrApp = this.pcrFormData?.appId > 0;\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n if (this.isPcrApp) {\n const recordId = this.pcrFormData?.sarRecordLinkedApplication?.id;\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.PcRenewApi?.apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet(recordId),\n this.apiService.CodeApi?.apiV1CodeGetPcRenewFileTypesGet()\n ]);\n this.pcrFormData['sarDeclaration'] = resp[0].data.data;\n this.isPCHolder = true as any;\n this.steps = this.stepsNSWOnly;\n this.initSync();\n store.dispatch('setPcrFormData', this.pcrFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n } else {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet(this.onlineApplication.id),\n this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewCheckPcHolderGet(this.onlineApplication.id),\n this.apiService.CodeApi?.apiV1CodeGetSpecAccFileTypesGet()\n ]);\n this.sarAppFormData['sarDeclaration'] = resp[0].data.data;\n this.isPCHolder = resp[1].data.data;\n this.sarAppFormData.sarDeclaration.isNswPcHolder = this.isPCHolder;\n this.steps = this.isPCHolder ? this.stepsNSWOnly : this.stepsInterstate;\n this.initSync();\n store.dispatch('setSarAppFormData', this.sarAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n }\n\n private updateInterstateHolderDeclaration1(data: any): void {\n this.sarAppFormData.sarDeclaration.isInterstatePcHolder = data.fileList?.length > 0;\n this.uploadAllFiles(data.fileList, 1);\n this.syncData();\n }\n\n private updateInterstateHolderDeclaration2(data: any): void {\n this.sarAppFormData.sarDeclaration.isInterstateSmHolder = data.fileList?.length > 0;\n this.uploadAllFiles(data.fileList, 2);\n this.syncData();\n }\n\n private updateBothHolderDeclaration1(data: any): void {\n\n this.declarationForm.involvement1 = data.selectedOption == true ? true : null;\n if (this.declarationForm.involvement2 != (data.selectedOption == false ? true : null)) {\n this.declarationForm.exemptionReasonFiles = [];\n }\n this.declarationForm.involvement2 = data.selectedOption == false ? true : null;\n\n this.declarationForm.involvement21 = data.selectedOption2 == true ? true : null;\n if (this.declarationForm.involvement22 != (data.selectedOption2 == false ? true : null)) {\n this.declarationForm.exemptionReasonFiles = [];\n }\n this.declarationForm.involvement22 = data.selectedOption2 == false ? true : null;\n\n this.declarationForm.involvement211 = data.selectedOption3 == true ? true : null;\n this.declarationForm.involvement212 = data.selectedOption3 == false ? true : null;\n const _fileTypeId = this.isPcrApp ? 7 : 3;\n this.uploadAllFiles(data.fileList, _fileTypeId);\n this.syncData();\n }\n\n private updateBothHolderDeclaration2(data: any): void {\n this.declarationForm.completedCpdPoints1 = data.selectedOption == true ? true : null;\n if (this.declarationForm.completedCpdPoints2 != (data.selectedOption == false ? true : null)) {\n this.declarationForm.extensionStatementFiles = [];\n }\n this.declarationForm.completedCpdPoints2 = data.selectedOption == false ? true : null;\n\n this.declarationForm.completedCpdPoints21 = data.selectedOption2 == true ? true : null;\n if (this.declarationForm.completedCpdPoints22 != (data.selectedOption2 == false ? true : null)) {\n this.declarationForm.extensionStatementFiles = [];\n }\n this.declarationForm.completedCpdPoints22 = data.selectedOption2 == false ? true : null;\n\n const _fileTypeId = this.isPcrApp ? 8 : 4;\n this.uploadAllFiles(data.fileList, _fileTypeId);\n this.syncData();\n }\n\n private updateBothHolderDeclaration3(data: any): void {\n\n this.declarationForm.adverseAction1 = data.selectedOption == true ? true : null;\n if (this.declarationForm.adverseAction2 != (data.selectedOption == false ? true : null)) {\n this.declarationForm.adverseActionFiles = [];\n }\n this.declarationForm.adverseAction2 = data.selectedOption == false ? true : null;\n\n const _fileTypeId = this.isPcrApp ? 9 : 5;\n this.uploadAllFiles(data.fileList, _fileTypeId);\n this.syncData();\n }\n\n // private updateDeclaration1(data: any): void {\n // this.declarationForm.isNswPcHolderFlag = data.selectedOption == 0 ? true : null;\n // if (this.declarationForm.isInterstatePcHolderFlag != (data.selectedOption == 1 ? true : null)) {\n // this.declarationForm.interstatePCFiles = [];\n // }\n // this.declarationForm.isInterstatePcHolderFlag = data.selectedOption == 1 ? true : null;\n // this.declarationForm.isNoPcHolderFlag = data.selectedOption == 2 ? true : null;\n // this.uploadAllFiles(data.fileList, 1);\n // this.syncData();\n // }\n\n // private updateDeclaration2(data: any): void {\n // this.declarationForm.isNswSmHolderFlag = data.selectedOption == 0 ? true : null;\n // if (this.declarationForm.isInterstateSmHolderFlag != (data.selectedOption == 1 ? true : null)) {\n // this.declarationForm.interstateMembershipFiles = [];\n // }\n // this.declarationForm.isInterstateSmHolderFlag = data.selectedOption == 1 ? true : null;\n // this.declarationForm.isNoSmHolderFlag = data.selectedOption == 2 ? true : null;\n // this.uploadAllFiles(data.fileList, 2);\n // this.syncData();\n // }\n\n // private updateDeclaration3(data: any): void {\n // this.declarationForm.nswGovtOrSoleSolicitorDirectorFlag = data.selectedOption == true ? true : null;\n // this.declarationForm.eligibleForDiscountFlag = data.selectedOption == false ? true : null;\n // this.syncData();\n // }\n\n // private updateDeclaration4(data: any): void {\n // this.declarationForm.applicationDeclaration4Flag1 = data.selectedOption == true ? true : null;\n // if (this.declarationForm.applicationDeclaration4Flag2 != (data.selectedOption == false ? true : null)) {\n // this.declarationForm.exemptionReasonFiles = [];\n // }\n // this.declarationForm.applicationDeclaration4Flag2 = data.selectedOption == false ? true : null;\n\n // this.declarationForm.applicationDeclaration4Flag21 = data.selectedOption2 == true ? true : null;\n // if (this.declarationForm.applicationDeclaration4Flag22 != (data.selectedOption2 == false ? true : null)) {\n // this.declarationForm.exemptionReasonFiles = [];\n // }\n // this.declarationForm.applicationDeclaration4Flag22 = data.selectedOption2 == false ? true : null;\n\n // this.declarationForm.applicationDeclaration4Flag211 = data.selectedOption3 == true ? true : null;\n // this.declarationForm.applicationDeclaration4Flag212 = data.selectedOption3 == false ? true : null;\n\n // this.uploadAllFiles(data.fileList, 3);\n // this.syncData();\n // }\n\n // private updateDeclaration5(data: any): void {\n // this.declarationForm.applicationDeclaration5Flag1 = data.selectedOption == true ? true : null;\n // if (this.declarationForm.applicationDeclaration5Flag2 != (data.selectedOption == false ? true : null)) {\n // this.declarationForm.extensionStatementFiles = [];\n // }\n // this.declarationForm.applicationDeclaration5Flag2 = data.selectedOption == false ? true : null;\n\n // this.declarationForm.applicationDeclaration5Flag21 = data.selectedOption2 == true ? true : null;\n // if (this.declarationForm.applicationDeclaration5Flag22 != (data.selectedOption2 == false ? true : null)) {\n // this.declarationForm.extensionStatementFiles = [];\n // }\n // this.declarationForm.applicationDeclaration5Flag22 = data.selectedOption2 == false ? true : null;\n\n // this.uploadAllFiles(data.fileList, 4);\n // this.syncData();\n // }\n\n private initSync(): void {\n if (this.isPcrApp) {\n this.declarationForm = JSON.parse(JSON.stringify(this.pcrFormData['sarDeclaration']));\n } else {\n this.declarationForm = JSON.parse(JSON.stringify(this.sarAppFormData['sarDeclaration']));\n }\n\n if (!this.declarationForm.interstatePCFiles) {\n this.declarationForm.interstatePCFiles = [];\n }\n\n if (!this.declarationForm.interstateMembershipFiles) {\n this.declarationForm.interstateMembershipFiles = [];\n }\n\n if (!this.declarationForm.exemptionReasonFiles) {\n this.declarationForm.exemptionReasonFiles = [];\n }\n\n if (!this.declarationForm.extensionStatementFiles) {\n this.declarationForm.extensionStatementFiles = [];\n }\n\n if (!this.declarationForm.adverseActionFiles) {\n this.declarationForm.adverseActionFiles = [];\n }\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n if (this.isPcrApp) {\n this.pcrFormData['sarDeclaration'] = this.declarationForm;\n }\n else {\n this.sarAppFormData['sarDeclaration'] = this.declarationForm;\n }\n }\n } catch (err) {\n console.log(err);\n }\n this.canGoNextCheck();\n }\n\n private stepBack(): void {\n this.steps[this.currentStepIndex].current = false;\n this.steps[this.currentStepIndex].completed = false;\n this.currentStepIndex--;\n this.steps[this.currentStepIndex].current = true;\n this.syncData();\n // this.eventCtrl.emit('canGoNext', false);\n }\n\n private nextStep(): void {\n this.currentStepIndex++;\n for (let i = 0; i < this.currentStepIndex; i++) {\n this.steps[i].completed = true;\n this.steps[i].current = false;\n }\n this.steps[this.currentStepIndex].completed = false;\n this.steps[this.currentStepIndex].current = true;\n this.syncData();\n }\n\n\n private isValidForm(): boolean {\n if (this.isPcrApp && this.declarationForm?.involvement22) {\n return true;\n }\n if (this.isPcrApp && this.declarationForm?.completedCpdPoints22) {\n return true;\n }\n\n if (this.isPCHolder) {\n return this.declarationFormValid1 && this.declarationFormValid2 &&\n this.declarationFormValid3;\n } else if (!this.isPCHolder && this.isPCHolder != null) {\n return this.declarationFormValid1 && this.declarationFormValid2 &&\n this.declarationFormValid3 && this.declarationFormValid4 && this.declarationFormValid5;\n } else {\n return false;\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n private async uploadAllFiles(fileList: Array, fileTypeId: number): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x, fileTypeId)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File, fileTypeId: number): Promise {\n const _applicationId = this.isPcrApp ? this.pcrFormData?.sarRecordLinkedApplication?.linkedApplicationId : this.onlineApplication.id;\n\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: 0,\n applicationId: _applicationId,\n specAccFileTypeId: fileTypeId,\n pcRenewLinkedApplicationFileTypeId: fileTypeId,\n };\n\n let resp: any;\n if (this.isPcrApp) {\n resp = await this.apiService.FileApi?.apiV1FileSavePcRenewLinkedApplicationFilePost(body);\n } else {\n resp = await this.apiService.FileApi?.apiV1FileSaveSpecAccFilePost(body);\n }\n\n switch (fileTypeId) {\n case 1:\n this.declarationForm.interstatePCFiles.push({\n id: resp.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n })\n break;\n case 2:\n this.declarationForm.interstateMembershipFiles.push({\n id: resp.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n })\n break;\n case 3:\n case 7:\n this.declarationForm.exemptionReasonFiles.push({\n id: resp.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n })\n break;\n case 4:\n case 8:\n this.declarationForm.extensionStatementFiles.push({\n id: resp.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n })\n break;\n case 5:\n case 9:\n this.declarationForm.adverseActionFiles.push({\n id: resp.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n })\n break;\n }\n\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private deleteFile(id: number) {\n const _fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(_fileIdToDelete);\n }\n })\n }\n\n private async deleteFileFromServer(id: number): Promise {\n let files: any[] = [];\n\n if (this.isPCHolder) {\n switch (this.currentStepIndex) {\n case 0:\n files = this.declarationForm.exemptionReasonFiles;\n break;\n case 1:\n files = this.declarationForm.extensionStatementFiles;\n break;\n case 2:\n files = this.declarationForm.adverseActionFiles;\n break;\n }\n } else {\n switch (this.currentStepIndex) {\n case 0:\n files = this.declarationForm.interstatePCFiles;\n break;\n case 1:\n files = this.declarationForm.interstateMembershipFiles;\n break;\n case 2:\n files = this.declarationForm.exemptionReasonFiles;\n break;\n case 3:\n files = this.declarationForm.extensionStatementFiles;\n break;\n case 4:\n files = this.declarationForm.adverseActionFiles;\n break;\n }\n }\n\n try {\n const resp: any = await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id);\n for (let i = 0; i < files.length; i++) {\n if (files[i].id === id) {\n files.splice(i, 1);\n }\n }\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n\n } catch (err) {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n\n } finally {\n this.canGoNextCheck();\n }\n }\n\n private setFormValidationStatus(status: any, index: number) {\n switch (index) {\n case 0:\n this.declarationFormValid1 = status;\n break;\n case 1:\n this.declarationFormValid2 = status;\n break;\n case 2:\n this.declarationFormValid3 = status;\n break;\n case 3:\n this.declarationFormValid4 = status;\n break;\n case 4:\n this.declarationFormValid5 = status;\n break;\n }\n this.steps[index].completed = status;\n this.canGoNextCheck();\n }\n\n get isValidStep(): boolean {\n switch (this.currentStepIndex) {\n case 0:\n return this.declarationFormValid1;\n case 1:\n return this.declarationFormValid2;\n case 2:\n return this.declarationFormValid3;\n case 3:\n return this.declarationFormValid4;\n case 4:\n return this.declarationFormValid5;\n default:\n return false;\n }\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./sar-application-declarations.html?vue&type=template&id=3b4c6210&scoped=true&ts=true\"\nimport script from \"./sar-application-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-application-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-application-declarations.scss?vue&type=style&index=0&id=3b4c6210&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3b4c6210\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelRadio as _vModelRadio, withDirectives as _withDirectives, createVNode as _createVNode, vModelText as _vModelText, normalizeClass as _normalizeClass, vModelSelect as _vModelSelect, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-621b54d5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-specialist-accreditation\" }\nconst _hoisted_2 = { key: 1 }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, [\n /*#__PURE__*/_createTextVNode(\"Please refer to Information for Accredited Specialists \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/SAR/001\",\n target: \"_blank\"\n }, \"here\"),\n /*#__PURE__*/_createTextVNode(\".\")\n], -1))\nconst _hoisted_5 = { class: \"area-of-law\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Area of Law:\", -1))\nconst _hoisted_7 = { class: \"area-of-law__list\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Are you renewing your specialist accreditation?\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"note-of-change mt-3\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-2 mt-1\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note that any changes to your current Principal Place of Practice or Employment type will not affect the charged fee. This information is applicable throughout the Specialist Accreditation renewal process only.\")\n], -1))\nconst _hoisted_11 = { class: \"row\" }\nconst _hoisted_12 = { class: \"col-12\" }\nconst _hoisted_13 = { class: \"radio-button-group\" }\nconst _hoisted_14 = { class: \"radio-button\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_16 = { class: \"radio-button\" }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_18 = {\n key: 0,\n class: \"renewal-flag2 col-12 pl-5\"\n}\nconst _hoisted_19 = { class: \"radio-button-group\" }\nconst _hoisted_20 = { class: \"radio-button\" }\nconst _hoisted_21 = { class: \"radio-button-elmt\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_23 = { class: \"radio-text\" }\nconst _hoisted_24 = { key: 0 }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2 pl-5 mt-2 mb-2 col-12 note-of-change\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-2 mt-1\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"Applications for a leave of Absence are \"),\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"not\"),\n /*#__PURE__*/_createTextVNode(\" automatic and practitioners will be informed of the outcome.\")\n ])\n], -1))\nconst _hoisted_26 = { class: \"ml-2 pl-5\" }\nconst _hoisted_27 = { class: \"input-box col-5\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", { class: \"field_name\" }, \"Leave start date - Leave return date\", -1))\nconst _hoisted_29 = { class: \"mt-2 col-8\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Reason(s) for seeking leave\", -1))\nconst _hoisted_31 = { class: \"radio-button\" }\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Apply for Non-Renewal\")\n], -1))\nconst _hoisted_33 = {\n key: 1,\n class: \"ml-2 pl-5 col-6 mb-3\"\n}\nconst _hoisted_34 = { class: \"dropdown-menu\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", { class: \"field_name\" }, \"Non-renewing Reason\", -1))\nconst _hoisted_36 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: null,\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_38 = [\"value\"]\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_40 = { class: \"radio-button\" }\nconst _hoisted_41 = {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_43 = { class: \"radio-text\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _createElementVNode(\"h3\", null, _toDisplayString(_ctx.currentApplicationYear) + \" APPLICATION FOR RENEWAL OF YOUR SPECIALIST ACCREDITATION\", 1),\n _hoisted_3,\n _hoisted_4,\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sarRecordLinkedAreaOfLaws, (aol) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_7, _toDisplayString(aol.description), 1))\n }), 256))\n ]),\n _hoisted_8,\n _hoisted_9,\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"label\", _hoisted_14, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag1) = $event)),\n value: true,\n name: \"option_SAR\"\n }, null, 512), [\n [_vModelRadio, _ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag1]\n ]),\n _hoisted_15\n ]),\n _createElementVNode(\"label\", _hoisted_16, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag2) = $event)),\n value: true,\n name: \"option_SAR\"\n }, null, 512), [\n [_vModelRadio, _ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag2]\n ]),\n _hoisted_17\n ]),\n (_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag2)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"label\", _hoisted_20, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag21) = $event)),\n value: true,\n name: \"option_SAR_2\"\n }, null, 512), [\n [_vModelRadio, _ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag21]\n ]),\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createElementVNode(\"span\", _hoisted_23, [\n _createTextVNode(\"Apply for Leave of Absence   \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('LeaveOfAbsence', 51)\n }, null, 8, [\"popover\"])\n ])\n ])\n ])\n ]),\n (_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag21)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_24, [\n _hoisted_25,\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", _hoisted_27, [\n _hoisted_28,\n _createVNode(_component_date_picker, {\n range: \"\",\n format: \"DD/MM/YYYY\",\n value: _ctx.dateRangeSelected,\n \"onUpdate:value\": _cache[3] || (_cache[3] = $event => ((_ctx.dateRangeSelected) = $event)),\n \"input-class\": \"normal\"\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _hoisted_30,\n _withDirectives(_createElementVNode(\"textarea\", {\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.reasons) = $event)),\n style: {\"width\":\"100%\",\"height\":\"8rem\",\"padding\":\"0.5rem\",\"font-family\":\"var(--font-body-text)\"},\n maxlength: \"5000\",\n placeholder: \"Enter note (5000 characters limit)\"\n }, null, 512), [\n [_vModelText, _ctx.reasons]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [_ctx.reasons?.length === 5000 ? 'full' : '']])\n }, _toDisplayString(_ctx.reasons?.length || 0) + \"/5000 characters \", 3)\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_31, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag22) = $event)),\n value: true,\n name: \"option_SAR_2\"\n }, null, 512), [\n [_vModelRadio, _ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag22]\n ]),\n _hoisted_32\n ]),\n (_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag22)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_33, [\n _createElementVNode(\"div\", _hoisted_34, [\n _hoisted_35,\n _createElementVNode(\"div\", _hoisted_36, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[6] || (_cache[6] = $event => ((_ctx.selectedReason) = $event))\n }, [\n _hoisted_37,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.nonRenewalReasons, (reason) => {\n return (_openBlock(), _createElementBlock(\"option\", { value: reason }, _toDisplayString(reason.name), 9, _hoisted_38))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.selectedReason]\n ])\n ]),\n _hoisted_39\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_40, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no3\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag3) = $event)),\n value: true,\n name: \"option_SAR\"\n }, null, 512), [\n [_vModelRadio, _ctx.pcrFormData.sarRecordLinkedApplication.renewalFlag3]\n ]),\n _createElementVNode(\"div\", _hoisted_41, [\n _hoisted_42,\n _createElementVNode(\"span\", _hoisted_43, \"I am currently on a leave of absence past 30 June \" + _toDisplayString(_ctx.lastApplicationYear), 1)\n ])\n ])\n ])\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport store from \"@/shared/store\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application, NonRenewalReason } from \"@/shared/modules/typescript-api-client/models\";\nimport DatePicker from 'vue-datepicker-next';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading', 'update:pcrFormData'],\n components: {\n LoadingIndicator,\n DatePicker,\n Popover,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcrSpecialistAccreditation extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n private loadingDataSet = true;\n private sarRecordLinkedAreaOfLaws: any[] = [];\n private specAccRenewalFlag = 0;\n private nonRenewalReasons = [] as any;\n private selectedReason: NonRenewalReason = null as any;\n private reasons = '';\n private leaveStartDate: Date | null = null;\n private leaveReturnDate: Date | null = null;\n private dateRangeSelected: [Date | null, Date | null] = [null, null];\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n get currentApplicationYear(): string {\n return store.getters.getAppInfo.applicationYear?.name;\n }\n\n get lastApplicationYear(): number {\n return store.getters.getAppInfo.lastApplicationYear.year;\n }\n\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag1')\n private onRenewalFlag1Changed(): void {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag1) {\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag2 = false;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag21 = null;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag22 = null;\n this.pcrFormData.sarRecordLinkedApplication.nonRenewalReasonId = null;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag3 = false;\n }\n this.canGoNextCheck();\n }\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag2')\n private onRenewalFlag2Changed(): void {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag2) {\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag1 = false;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag3 = false;\n }\n this.canGoNextCheck();\n }\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag21')\n private onRenewalFlag21Changed(): void {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag21) {\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag22 = null;\n this.pcrFormData.sarRecordLinkedApplication.nonRenewalReasonId = null;\n this.selectedReason = null as any;\n this.reasons = null as any;\n this.leaveStartDate = null as any;\n this.leaveReturnDate = null as any;\n this.dateRangeSelected = [this.leaveStartDate, this.leaveReturnDate];\n }\n this.canGoNextCheck();\n }\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag22')\n private onRenewalFlag22Changed(): void {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag22) {\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag21 = false;\n this.pcrFormData.sarRecordLinkedApplication.nonRenewalReasonId = null;\n this.selectedReason = null as any;\n this.reasons = null as any;\n this.leaveStartDate = null as any;\n this.leaveReturnDate = null as any;\n this.dateRangeSelected = [this.leaveStartDate, this.leaveReturnDate];\n }\n this.canGoNextCheck();\n }\n\n @Watch('selectedReason')\n private onSelectedReasonChanged(): void {\n this.pcrFormData.sarRecordLinkedApplication.nonRenewalReasonId = this.selectedReason?.id ?? null;\n this.canGoNextCheck();\n }\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag3')\n private onRenewalFlag3Changed(): void {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag3) {\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag1 = false;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag2 = false;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag21 = null;\n this.pcrFormData.sarRecordLinkedApplication.renewalFlag22 = null;\n this.pcrFormData.sarRecordLinkedApplication.nonRenewalReasonId = null;\n }\n this.canGoNextCheck();\n }\n\n @Watch('reasons')\n private onReasonsChanged(): void {\n this.pcrFormData.sarRecordLinkedApplication.reasons = this.reasons;\n this.canGoNextCheck();\n }\n\n @Watch('dateRangeSelected')\n private onDateRangeSelectedChanged(): void {\n this.pcrFormData.sarRecordLinkedApplication.leaveStartDate = this.dateRangeSelected[0];\n this.pcrFormData.sarRecordLinkedApplication.leaveReturnDate = this.dateRangeSelected[1];\n this.canGoNextCheck();\n }\n\n mounted(): void {\n this.preloadData();\n this.canGoNextCheck();\n }\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetSpecAccNonRenewalReasonsGet(),\n ]);\n await this.loadData();\n this.nonRenewalReasons = resp[0].data.data;\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async loadData(): Promise {\n this.loadingDataSet = true;\n await this.apiService.PcRenewApi?.apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet(this.pcrApp.id)\n .then(res => {\n this.pcrFormData.sarRecordLinkedApplication = res.data.data;\n this.sarRecordLinkedAreaOfLaws = this.pcrFormData.sarRecordLinkedApplication.sarRecordLinkedAreaOfLaws ?? [];\n this.selectedReason = this.pcrFormData.sarRecordLinkedApplication.sarRecordLinkedNonRenewalDetail?.nonRenewalReason ?? null as any;\n this.reasons = this.pcrFormData.sarRecordLinkedApplication.sarRecordLinkedLeaveOfAbsence?.reasons ?? '';\n this.leaveStartDate = new Date(this.pcrFormData.sarRecordLinkedApplication.sarRecordLinkedLeaveOfAbsence?.leaveStartDate) ?? null;\n this.leaveReturnDate = new Date(this.pcrFormData.sarRecordLinkedApplication.sarRecordLinkedLeaveOfAbsence?.leaveReturnDate) ?? null;\n this.dateRangeSelected = [this.leaveStartDate, this.leaveReturnDate];\n this.loadingDataSet = false;\n })\n .catch(err => {\n this.loadingDataSet = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get linked spec acc record: ' + err);\n this.ai.trackException('Error, Unable to get linked spec acc records: ' + err);\n })\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private isValidForm(): boolean {\n if (this.pcrFormData.sarRecordLinkedApplication?.renewalFlag1) {\n return this.pcrFormData.sarRecordLinkedApplication?.renewalFlag1;\n }\n else if (this.pcrFormData.sarRecordLinkedApplication?.renewalFlag2) {\n if (this.pcrFormData.sarRecordLinkedApplication.renewalFlag21) {\n return this.pcrFormData.sarRecordLinkedApplication?.renewalFlag21 && this.pcrFormData.sarRecordLinkedApplication?.leaveStartDate && this.pcrFormData.sarRecordLinkedApplication?.leaveReturnDate && this.pcrFormData.sarRecordLinkedApplication?.reasons;\n } else {\n return this.pcrFormData.sarRecordLinkedApplication?.renewalFlag22 && this.pcrFormData.sarRecordLinkedApplication?.nonRenewalReasonId > 0;\n }\n }\n else if (this.pcrFormData.sarRecordLinkedApplication?.renewalFlag3) {\n return this.pcrFormData.sarRecordLinkedApplication?.renewalFlag3;\n }\n return false;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n}\n\n\n","import { render } from \"./pcr-specialist-accreditation.html?vue&type=template&id=621b54d5&scoped=true&ts=true\"\nimport script from \"./pcr-specialist-accreditation.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-specialist-accreditation.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-specialist-accreditation.scss?vue&type=style&index=0&id=621b54d5&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-621b54d5\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-aa597c96\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pcr-renewal-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 declarations mt-4\" }, [\n /*#__PURE__*/_createTextVNode(\" By clicking “Next” I declare that: \"),\n /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n ])\n], -1))\nconst _hoisted_4 = [\n _hoisted_2,\n _hoisted_3\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_4))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n },\n mixins: [],\n})\nexport default class PcrRenewalDeclarations extends Vue {\n private isSectionLoading!: boolean;\n private pcrFormData!: any;\n\n private ai = new AppInsights;\n private loadingDataSet = true;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n \n mounted(): void {\n this.getApplicationId();\n }\n\n private getApplicationId(): void {\n this.apiService.PcRenewApi?.apiV1PcRenewGetRecordDeclarationApplicationIdGet(this.pcrFormData.appId)\n .then((res: any) => {\n this.pcrFormData.recordDeclarationApplicationId = res.data.data || { id: 0 };\n this.eventCtrl.emit('canGoNext', true);\n })\n .catch((err: any) => {\n this.ai.trackException('Error, Unable to load declaration data : ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load declaration data');\n this.eventCtrl.emit('canGoNext', false);\n })\n }\n\n}\n\n","import { render } from \"./pcr-renewal-declarations.html?vue&type=template&id=aa597c96&scoped=true&ts=true\"\nimport script from \"./pcr-renewal-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr-renewal-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr-renewal-declarations.scss?vue&type=style&index=0&id=aa597c96&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-aa597c96\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createVNode as _createVNode, Transition as _Transition, withCtx as _withCtx, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-64292d12\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"alert-box-type-two\" }\nconst _hoisted_2 = { class: \"modal-mask\" }\nconst _hoisted_3 = {\n class: \"modal-wrapper\",\n ref: \"modalWrapper\"\n}\nconst _hoisted_4 = { class: \"modal-container\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"modal-header\" }, [\n /*#__PURE__*/_createElementVNode(\"h3\", { class: \"heading ml-3 pb-0\" }, \"Payment\")\n], -1))\nconst _hoisted_6 = { class: \"modal-body payment-app\" }\nconst _hoisted_7 = {\n class: \"pa-3\",\n style: {\"border\":\"1px solid #abc\"}\n}\nconst _hoisted_8 = { class: \"amount-payable\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Amount Payable:\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \"Only accepts the following card types: Direct Debit, Mastercard, Visa or AMEX.\", -1))\nconst _hoisted_11 = { class: \"button-group right mt-4\" }\nconst _hoisted_12 = [\"disabled\"]\nconst _hoisted_13 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_loadingSpinner = _resolveComponent(\"loadingSpinner\")\n const _component_CreditCardPayment = _resolveComponent(\"CreditCardPayment\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_Transition, { name: \"modal\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"div\", _hoisted_6, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_loadingSpinner, {\n key: 0,\n showLoadingText: false\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _createElementVNode(\"div\", null, _toDisplayString(_ctx.toCurrency(_ctx.amountPayable)), 1)\n ]),\n _hoisted_10,\n _createVNode(_component_CreditCardPayment, {\n paymentToken: _ctx.paymentToken,\n \"onUpdate:paymentToken\": _cache[0] || (_cache[0] = $event => ((_ctx.paymentToken) = $event)),\n isCreditCardValid: _ctx.isCreditCardValid,\n \"onUpdate:isCreditCardValid\": _cache[1] || (_cache[1] = $event => ((_ctx.isCreditCardValid) = $event))\n }, null, 8, [\"paymentToken\", \"isCreditCardValid\"])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.$emit('close'))),\n disabled: _ctx.isLoadingData\n }, \" Cancel Payment \", 8, _hoisted_12),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[3] || (_cache[3] = (...args) => (_ctx.applyPaymentRequested && _ctx.applyPaymentRequested(...args))),\n disabled: !_ctx.isCreditCardValid || _ctx.isLoadingData\n }, \" Make payment \", 8, _hoisted_13)\n ])\n ])\n ])\n ], 512)\n ])\n ]),\n _: 1\n })\n ]))\n}","declare module '@vue/runtime-core' {\n export interface ComponentCustomProperties {\n $convertToDollarValue: (v: number) => string,\n }\n}\n\nexport default {\n methods: {\n $convertToDollarValue(v: number): string {\n try {\n const formatter = new Intl.NumberFormat('en-AU', {\n style: 'currency',\n currency: 'AUD',\n minimumFractionDigits: 2\n });\n return formatter.format(v);\n } catch (err) {\n return '0.00';\n }\n }\n },\n};\n","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, createElementVNode as _createElementVNode, withDirectives as _withDirectives, withModifiers as _withModifiers, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0f8c9a1c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"credit-card-payment\" }\nconst _hoisted_2 = {\n key: 0,\n class: \"fa fa-spinner fa-pulse fa-2x fa-fw\",\n style: {\"margin-top\":\"1em\"}\n}\nconst _hoisted_3 = [\"id\"]\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"error\" }, \"Credit Card payment is not available\", -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.loadingLibStatus == -1 || (_ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == -1))\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_2))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"div\", {\n id: _ctx.paywayFrameGuid,\n class: \"payway-div\"\n }, null, 8, _hoisted_3), [\n [_vShow, _ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == 1]\n ]),\n (_ctx.loadingLibStatus == 0 || (_ctx.loadingLibStatus == 1 && _ctx.createPayWayFrameStatus == 0))\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_4,\n _createElementVNode(\"small\", {\n style: {\"cursor\":\"pointer\"},\n onClick: _cache[0] || (_cache[0] = _withModifiers($event => (_ctx.reloadPaymentForm()), [\"stop\"]))\n }, \"Click Here to reload\")\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n}","export const paywayStyle = {\n 'body': {\n // 'padding': '1em 0',\n // 'font-size': '16px',\n },\n '.payway-card': {\n // background: 'none',\n // border: 'none',\n // 'border-radius': '5px',\n margin: '0 0',\n // padding: '0 0',\n },\n 'label, legend' : {\n // 'position': 'absolute',\n // 'font-weight': 'bold !important',\n },\n 'input, select': {\n // height: '40px',\n // 'border-bottom': '2px solid grey !important',\n },\n 'input:focus, select:focus': {\n // 'outline': '2px solid rgba(240,100,35,0.8) !important',\n // 'box-shadow': '0 0 0 4px rgba(240,100,35,0.8) !important',\n 'z-index' : '100'\n },\n '#cardholderName' : {\n // 'width': '80vw !important',\n // 'height': '40px !important',\n // 'border-bottom': '2px solid grey',\n // 'line-height': 'normal',\n },\n 'label.payway-creditcard-expirationseparator': {\n // display: 'none',\n // 'line-height': '50px'\n },\n\n}\n","export function localUrl(): string {\n const result = window.location.href.split('/');\n return result[0] + '//' + result[2] + '/';\n}\n\nexport const AZ_INSTRUMENT_KEY_PAYMENTAPP: string = process.env.VUE_APP_AZ_INSTRUMENT_KEY_PAYMENTAPP as string;\nexport const PUBLISHABLE_API_KEY: string = process.env.VUE_APP_PAYWAY_PUBLISHABLE_API_KEY as string;\n\nexport const TOKEN_URL: string = process.env.VUE_APP_TOKEN_URL as string;\nexport const API_URL: string = localUrl().slice(0, -1);\nexport const API_PAYMENT_URL: string = process.env.VUE_APP_API_URL as string;\nexport const IDLE_TIMEOUT: number = parseInt(process.env.VUE_APP_IDLE_TIMEOUT, 10);\nexport const TOKEN_REFRESH_TIME: number = parseInt(process.env.VUE_APP_TOKEN_REFRESH_TIME, 10);\nexport const SELF_URL: string = localUrl();\n","import { Options, Vue } from 'vue-property-decorator';\nimport { paywayStyle } from './payway-style';\nimport { PUBLISHABLE_API_KEY, SELF_URL } from '../config/config';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\nimport { AppInsights } from '@/mars-app/appInsights';\n\ndeclare let payway: any;\n\n@Options({\n props: {\n paymentToken: String,\n isCreditCardValid: Boolean,\n },\n emits: ['update:paymentToken', 'update:isCreditCardValid'],\n components: {},\n})\nexport default class CreditCardPayment extends Vue {\n private paymentToken!: string;\n private isCreditCardValid!: boolean;\n\n private ai = new AppInsights();\n\n private paywayEl: HTMLElement | null = null;\n private paywayFrameGuid = '837494741234567895857494639628373';\n\n // For PayWay Lib Checking\n private numberOfRetry = 2;\n private timeout = 10;\n private numberOfTried = 0;\n private startTime = Math.round(new Date().getTime() / 1000);\n private endTime = this.startTime + this.timeout;\n private loadingLibStatus = -1;\n private paymentDeclined = false;\n\n private createFrameRetry = 5;\n private createFrameNumberOfTried = 0;\n private createPayWayFrameStatus = -1;\n\n private creditCardFrame: any = null;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private localDebug = false;\n\n created() {\n this.localDebug = SELF_URL.indexOf('localhost') >= 0;\n setTimeout(() => {\n this.loadPayWayLib();\n this.checkPayWayLib();\n }, 500);\n }\n\n mounted(): void {\n this.eventCtrl.on('process-payment-application', this.requestToProcessPayment);\n }\n\n beforeUnmount() {\n this.eventCtrl.removeListener('process-payment-application', this.requestToProcessPayment);\n }\n\n private loadPayWayLib() {\n this.paywayEl = document.createElement('script');\n this.paywayEl.setAttribute('src', 'https://api.payway.com.au/rest/v1/payway.js');\n document.head.appendChild(this.paywayEl);\n // console.log('PayWayLib loaded')\n }\n\n public isPayWayLibReady(): boolean {\n try {\n // console.log('PayWayLib Ready -- ', typeof payway.createCreditCardFrame);\n return typeof payway.createCreditCardFrame === 'function';\n } catch (err) {\n console.log('PayWayLib is not ready!!! ', err);\n return false;\n }\n }\n\n private checkPayWayLib() {\n if (!this.isPayWayLibReady() && this.numberOfTried < this.numberOfRetry) {\n if (Math.round(new Date().getTime() / 1000) > this.endTime) {\n this.numberOfTried++;\n this.startTime = Math.round(new Date().getTime() / 1000);\n this.endTime = this.startTime + this.timeout;\n this.removePayWayLib();\n setTimeout(() => {\n this.loadPayWayLib();\n this.checkPayWayLib();\n }, 500);\n } else if (this.numberOfTried < this.numberOfRetry) {\n setTimeout(this.checkPayWayLib, 500);\n }\n } else if (this.numberOfTried >= this.numberOfRetry) {\n this.loadingLibStatus = 0;\n this.numberOfTried = 0;\n this.startTime = 0;\n this.endTime = 0;\n } else if (this.isPayWayLibReady()) {\n this.loadingLibStatus = 1;\n this.createPayWayFrame();\n }\n }\n\n public removePayWayLib(): void {\n console.log('removing PayWayLib ...');\n try {\n document.body.removeChild(this.paywayEl as HTMLElement);\n } catch (err) {\n console.log(err);\n }\n try {\n this.paywayEl = null;\n } catch (err) {\n console.log(err);\n }\n try {\n payway = null;\n } catch (err) {\n console.log(err);\n }\n }\n\n public createPayWayFrame(): void {\n const myStyle = paywayStyle;\n const options = {\n publishableApiKey: PUBLISHABLE_API_KEY,\n tokenMode: 'callback',\n container: this.paywayFrameGuid,\n onValid: () => {\n this.$emit('update:isCreditCardValid', true);\n this.paymentDeclined = false;\n },\n onInvalid: () => {\n this.$emit('update:isCreditCardValid', false);\n this.paymentDeclined = false;\n },\n style: myStyle,\n };\n\n const createdCallback = (err: any, frame: any) => {\n if (err && this.createFrameNumberOfTried < this.createFrameRetry) {\n this.createFrameNumberOfTried++;\n this.removePayWayFrame();\n this.createPayWayFrame();\n } else if (err && this.createFrameNumberOfTried >= this.createFrameRetry) {\n this.createPayWayFrameStatus = 0;\n this.createFrameNumberOfTried = 0;\n } else {\n // Save the created frame for when we get the token\n this.creditCardFrame = frame;\n this.createPayWayFrameStatus = 1;\n this.$nextTick(() => {\n const elm: HTMLElement = document.getElementById(this.paywayFrameGuid) as HTMLElement;\n try {\n (elm.childNodes[0] as HTMLElement).setAttribute('width', '100%');\n (elm.childNodes[0] as HTMLElement).setAttribute('height', '315px');\n } catch (err) {\n console.log(err);\n }\n });\n }\n };\n\n payway.createCreditCardFrame(options, createdCallback);\n }\n\n public removePayWayFrame(): void {\n try {\n this.creditCardFrame.destroy();\n } catch (err) {\n console.log(err);\n }\n\n try {\n this.creditCardFrame = null;\n } catch (err) {\n console.log(err);\n }\n }\n\n public reloadPaymentForm(): void {\n this.removePayWayLib();\n this.removePayWayFrame();\n\n this.loadingLibStatus = -1;\n this.createPayWayFrameStatus = -1;\n\n this.startTime = Math.round(new Date().getTime() / 1000);\n this.endTime = this.startTime + this.timeout;\n\n this.loadPayWayLib();\n this.checkPayWayLib();\n }\n\n public requestToProcessPayment(cb: (token: string) => Promise = null as any): void {\n console.log('requestToProcessPayment .............');\n this.paymentDeclined = false;\n const tokenCallback = (err: any, data: any) => {\n if (err) {\n this.paymentDeclined = true;\n } else if (data.singleUseTokenId) {\n this.$emit('update:paymentToken', data.singleUseTokenId);\n\n // complete the payment in cb - applyPayment()\n if (typeof cb === 'function') {\n // console.log('cb: ', cb)\n cb(data.singleUseTokenId)\n .then((res) => {\n // console.log('call back res: ', res);\n if (res === 3 || res === 5) {\n this.paymentDeclined = true;\n }\n })\n .catch((error) => {\n this.paymentDeclined = true;\n // console.log('Error in callback function: ', error);\n this.ai.trackException('Error submit payment: ' + JSON.stringify(error));\n });\n }\n }\n };\n\n this.creditCardFrame.getToken(tokenCallback);\n }\n}\n","import { render } from \"./credit-card-payment.html?vue&type=template&id=0f8c9a1c&scoped=true&ts=true\"\nimport script from \"./credit-card-payment.ts?vue&type=script&lang=ts\"\nexport * from \"./credit-card-payment.ts?vue&type=script&lang=ts\"\n\nimport \"./credit-card-payment.scss?vue&type=style&index=0&id=0f8c9a1c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0f8c9a1c\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from 'vue-property-decorator';\nimport ErrorIndicator from '@/shared/components/error-indicator/index.vue';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport LoadingSpinner from '@/shared/components/loading-spinner/index.vue';\nimport CurrencyFormatMixin from '@/shared/mixins/number-formatting';\nimport { PaymentType } from '@/shared/modules/typescript-api-client/models';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport CreditCardPayment from './credit-card-payment/index.vue';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport { AppInsights } from '@/mars-app/appInsights';\n\n@Options({\n props: {\n paymentFormData: Object,\n amountPayable: Number,\n paymentAppName: String,\n },\n\n components: {\n LoadingIndicator,\n ErrorIndicator,\n LoadingSpinner,\n CreditCardPayment,\n },\n mixins: [CurrencyFormatMixin],\n})\nexport default class PaymentModal extends Vue {\n private paymentFormData!: any;\n private amountPayable!: number;\n private paymentAppName!: string;\n\n private paymentToken = '';\n private isCreditCardValid = false;\n\n @Watch('isCreditCardValid')\n private onCreditCardValidChanged(): void {\n this.$emit('isValidCard', this.isCreditCardValid);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private paymentMethod = null as any;\n private selectedPaymentMethod = { id: 5 } as PaymentType;\n\n private delay = 3000;\n\n private processingPayment = false;\n private errorProcessingPayment = false;\n private paymentProcessed = false;\n\n private cancellingPayment = false;\n private errorCancellingPayment = false;\n private cancelPaymentSucceeded = false;\n\n private loadingTransaction = false;\n private errorLoadingTransaction = false;\n private transactionLoaded = false;\n\n private ai = new AppInsights();\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n }\n\n beforeUnmount() {\n document.body.classList.remove('modal-open');\n }\n\n private applyPaymentRequested(): void {\n this.eventCtrl.emit('process-payment-application', this.applyPayment);\n }\n\n private isLoadingData = false;\n\n private async applyPayment() {\n this.isLoadingData = true;\n this.eventCtrl.emit('cardSubmitting', true);\n if (this.paymentToken === '') return;\n this.paymentFormData.paymentDetails.singleUseTokenId = this.paymentToken;\n switch (this.paymentAppName) {\n case 'pcr-payment':\n this.applyPcrPayment();\n break;\n case 'sar-payment':\n this.applySarPayment();\n break;\n case 'sm-payment':\n this.applySmPayment();\n break;\n default:\n this.eventCtrl.emit('cardSubmitting', false);\n this.errorProcessPayment('Invalid payment application name');\n break;\n }\n }\n\n private async applyPcrPayment() {\n await this.apiService.PcRenewApiV2?.apiV2PcRenewSavePaymentDetailsPost(\n this.paymentFormData.paymentDetails,\n )\n .then(() => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.$emit('close');\n this.eventCtrl.emit('navigateTo', 11); // confirmation page\n })\n .catch((err) => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.errorProcessPayment(err);\n });\n }\n\n private async applySarPayment() {\n await this.apiService.SpecAccRenewApiV2?.apiV2SpecAccRenewSavePaymentDetailsPost(\n this.paymentFormData.paymentDetails,\n )\n .then(() => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.$emit('close');\n this.eventCtrl.emit('navigateTo', 4); // confirmation page\n })\n .catch((err) => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.errorProcessPayment(err);\n });\n }\n\n private async applySmPayment() {\n if (this.paymentAppName === 'sm-payment') {\n await this.apiService.SmApiV2?.apiV2SmSavePaymentDetailsPost(\n this.paymentFormData.paymentDetails,\n )\n .then(() => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.$emit('close');\n this.eventCtrl.emit('navigateTo', 2); // confirmation page\n })\n .catch((err) => {\n this.isLoadingData = false;\n this.eventCtrl.emit('cardSubmitting', false);\n this.errorProcessPayment(err);\n });\n }\n }\n\n private errorProcessPayment(err: any) {\n if (err.response?.data && err.response.data?.errorCode == 1) {\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'An unexpected error occurred while preparing your contract. Please email dcs@lawsociety.com.au with the error code \"0104\". Do not resubmit payment.',\n );\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err.response));\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to process payment: ' + err.message);\n this.ai.trackException('Error on process payment: ' + JSON.stringify(err));\n }\n }\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2,\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n}\n","import { render } from \"./payment-modal.html?vue&type=template&id=64292d12&scoped=true&ts=true\"\nimport script from \"./payment-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./payment-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./payment-modal.scss?vue&type=style&index=0&id=64292d12&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-64292d12\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from 'vue-property-decorator';\nimport SwipeStepper from '@/shared/components/swipe-stepper/index.vue';\nimport LoadingSpinner from '@/shared/components/loading-spinner/index.vue';\nimport { RouteN } from '@/shared/constants/route-name';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\nimport PcrCurrentDetails from '../pcr-current-details/index.vue';\nimport PcrPracticeRecord from '../pcr-practice-record/index.vue';\nimport {\n NavStep,\n NavStepStatusID,\n Section,\n Step,\n} from '@/shared/components/header-stepper/nav-step';\nimport PcrAddressDetails from '../pcr-address-details/index.vue';\nimport PcrConfirmation from '../pcr-confirmation/index.vue';\nimport PcrPaymentDetails from '../pcr-payment-details/index.vue';\nimport PcrPreferences from '../pcr-preferences/index.vue';\nimport PcrRenewalDetails from '../pcr-renewal-details/index.vue';\nimport PcrStatutoryRegister from '../pcr-statutory-register/index.vue';\nimport PcrAdditionalDetails from '../pcr-additional-details/index.vue';\nimport PcrPracticeRecordPppPopup from '../pcr-practice-record-ppp-popup/index.vue';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport {\n Application,\n PageContent,\n PracticeDetails,\n} from '@/shared/modules/typescript-api-client/models';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport PaymentPopup from '../payment-popup/index.vue';\nimport { PaymentTransaction } from '@/shared/models/payment-transaction';\nimport { PAYMENTAPP_URL } from '@/shared/config/config';\nimport PcrPracticeRecordAdditionalDetailsPopup from '../pcr-practice-record-additional-details-popup/index.vue';\nimport SarApplicationDeclarations from '../sar-app/sar-application-declarations/index.vue';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport PcrSpecialistAccreditation from '../pcr-specialist-accreditation/index.vue';\nimport PcrRenewalDeclarations from '../pcr-renewal-declarations/index.vue';\nimport AlertBoxTypeTwo from '@/shared/components/alert-box-type-two/index.vue';\nimport PaymentModal from '../payment-modal/index.vue';\n\n@Options({\n components: {\n LoadingSpinner,\n LoadingIndicator,\n SwipeStepper,\n PcrCurrentDetails,\n PcrPracticeRecord,\n PcrAddressDetails,\n PcrRenewalDetails,\n PcrStatutoryRegister,\n PcrAdditionalDetails,\n PcrPreferences,\n PcrSpecialistAccreditation,\n SarApplicationDeclarations,\n PcrRenewalDeclarations,\n PcrPaymentDetails,\n PcrConfirmation,\n PcrPracticeRecordPppPopup,\n PcrPracticeRecordAdditionalDetailsPopup,\n PaymentPopup,\n AlertBoxTypeTwo,\n PaymentModal,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const pcrApp = store.getters.getAppRenew;\n if (!pcrApp.id) {\n // console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n },\n beforeRouteLeave(to: any, from: any, next: any) {\n next(); // don't check for now;\n },\n})\nexport default class Pcr extends Vue {\n private ai = new AppInsights();\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getPcrFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n get $Section() {\n return Section;\n }\n\n private applyInternalPayment = false;\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Cancel Application';\n // private nextButtonText = 'Next';\n\n private practiceRecords: PracticeDetails[] = [];\n private popupPracticeRecords: PracticeDetails[] = [];\n\n private helpContent: PageContent = {};\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private navSteps = [\n new NavStep(Step.details, Section.details), // 0\n new NavStep(Step.record, Section.record), // 1\n new NavStep(Step.address, Section.address), // 2\n new NavStep(Step.renewal, Section.renewal), // 3\n new NavStep(Step.register, Section.register), // 4\n new NavStep(Step.additional, Section.additional), // 5\n new NavStep(Step.preferences, Section.preferences), // 6\n new NavStep(Step.specialistAccreditation, Section.specialistAccreditation), // 7\n new NavStep(Step.applicationDeclarations, Section.applicationDeclarations), // 8\n new NavStep(Step.renewalDeclarations, Section.renewalDeclarations), // 9\n new NavStep(Step.payment, Section.payment), // 10\n new NavStep(Step.confirmation, Section.confirmation), // 11\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n private isSaving = false;\n\n private pcrFormData: any = {};\n private showPaymentPopup = false;\n private disablePaymentPopupCloseBut = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction();\n private validPaymentPage = false;\n\n private ping: any;\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'pcr-payment';\n private amountPayable = 0;\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _appRenew = store.getters.getAppRenew;\n if (!_appRenew.id) {\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Invalid Page entry, please choose an option from Portal home',\n );\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n this.eventCtrl.on('navigateTo', this.navigateTo);\n this.eventCtrl.on('cardSubmitting', this.cardSubmitting);\n // this.eventCtrl.on('pc-payment-confirmed', this.paymentConfirmed);\n // this.eventCtrl.on('remove-pcr-payment-window', this.removePaymentWindow);\n window.addEventListener('message', this.receivedNotification);\n\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n this.updateStepsUI();\n }\n\n beforeUnmount(): void {\n // this.eventCtrl.removeListener('canSubmit', () => { this.canGoNext = false });\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n this.eventCtrl.removeListener('navigateTo', this.navigateTo);\n this.eventCtrl.removeListener('cardSubmitting', this.cardSubmitting);\n // this.eventCtrl.removeListener('pc-payment-confirmed', this.paymentConfirmed);\n // this.eventCtrl.removeListener('remove-pcr-payment-window', this.removePaymentWindow);\n window.removeEventListener('message', this.receivedNotification);\n // clearInterval(this.ping);\n }\n\n private cardSubmitting(isCardSubmitting: boolean): void {\n this.isSaving = isCardSubmitting;\n }\n\n private navigateTo(stepIndex: number): void {\n this.navigate(this.navSteps[stepIndex]);\n }\n\n private receivedNotification(event: any): void {\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n // console.log('Received Notifications -- MARSApp');\n // console.log('action: ', action);\n // console.log('payment url: ', event?.origin, PAYMENTAPP_URL);\n // console.log('sessionId: ', event?.data?.sessionId, this.sessionId);\n // console.log('paymentAppName', event?.data?.paymentAppName, this.paymentAppName);\n // console.log('failed verification: ', !validOrigin, !validSessionId, !validPaymentApp);\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-pcr-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n // console.log(dataO);\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n if (_section !== Section.details) {\n this.backButtonText = 'Back';\n } else {\n this.backButtonText = 'Cancel application';\n }\n // console.log('setCurrentStep: ', this.pcrFormData?.paymentDetails?.isSpecAccWithPracticeEmployer, _section);\n // if (this.pcrFormData.paymentDetails?.isSpecAccWithPracticeEmployer && _section == Section.payment) {\n // this.nextButtonText = 'Submit';\n // } else {\n // this.nextButtonText = 'Next';\n // }\n this.backButtonVisible = true;\n\n switch (_section) {\n case Section.details:\n this.setSteps(0);\n break;\n case Section.record:\n this.setSteps(1);\n break;\n case Section.address:\n this.setSteps(2);\n break;\n case Section.renewal:\n this.setSteps(3);\n break;\n case Section.register:\n this.setSteps(4);\n break;\n case Section.additional:\n this.setSteps(5);\n break;\n case Section.preferences:\n this.setSteps(6);\n break;\n case Section.specialistAccreditation:\n this.setSteps(7);\n break;\n case Section.applicationDeclarations:\n this.setSteps(8);\n break;\n case Section.renewalDeclarations:\n this.setSteps(9);\n break;\n case Section.payment:\n this.setSteps(10);\n break;\n case Section.confirmation:\n this.setSteps(11);\n this.backButtonVisible = false;\n break;\n default:\n break;\n }\n }\n\n get nextButtonText() {\n const _section: string = this.$route.query.sec as string;\n if (\n this.pcrFormData.paymentDetails?.isSpecAccWithPracticeEmployer &&\n _section == Section.payment\n ) {\n return 'Submit';\n } else {\n return 'Next';\n }\n }\n\n get savingText() {\n const _section: string = this.$route.query.sec as string;\n if (\n this.pcrFormData.paymentDetails?.isSpecAccWithPracticeEmployer &&\n _section == Section.payment\n ) {\n return 'Processing... Do not refresh or click any button on your browser.';\n } else {\n return 'Saving...';\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone;\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done;\n }\n this.navSteps[n].status = NavStepStatusID.Current;\n // the confirmation page\n const _confirmation = this.navSteps.length - 1;\n if (n === _confirmation) {\n for (let i = 0; i < _confirmation; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown;\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0: // Section.details\n this.helpContent = this.$getPopover('Help', 2);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1: // Section.record\n this.helpContent = this.$getPopover('Help', 3);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2: // Section.address\n this.helpContent = this.$getPopover('Help', 4);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3: // Section.renewal\n this.helpContent = this.$getPopover('Help', 5);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4: // Section.other\n this.helpContent = this.$getPopover('Help', 6);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 5: // Section.additional\n this.helpContent = this.$getPopover('Help', 15);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 6: // Section.preferences\n this.helpContent = this.$getPopover('Help', 16);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 7: // Section.specialistAccreditation\n this.helpContent = this.$getPopover('Help', 51);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 8: // Section.applicationDeclarations\n this.helpContent = this.$getPopover('Help', 17);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 9: // Section.renewalDeclarations\n this.helpContent = this.$getPopover('Help', 18);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 10:\n this.helpContent = this.$getPopover('Help', 7);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 11:\n this.helpContent = this.$getPopover('Help', 19);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n this.applyInternalPayment = false;\n switch (_section) {\n case Section.details:\n this.eventCtrl.emit('cancel-pc-renew');\n // this.$router.push({ name: RouteN.Mars.PcRenewOverview.n, query: { appId: this.$route.query.appId } });\n break;\n case Section.record:\n this.navigate(this.navSteps[0]);\n break;\n case Section.address:\n this.navigate(this.navSteps[1]);\n break;\n case Section.renewal:\n this.navigate(this.navSteps[2]);\n break;\n case Section.register:\n this.navigate(this.navSteps[3]);\n break;\n case Section.additional:\n this.navigate(this.navSteps[4]);\n break;\n case Section.preferences:\n this.navigate(this.navSteps[5]);\n break;\n case Section.specialistAccreditation:\n this.navigate(this.navSteps[6]);\n break;\n case Section.applicationDeclarations:\n this.navigate(this.navSteps[7]);\n break;\n case Section.renewalDeclarations:\n if (this.specAccRenewalFlag) {\n this.navigate(this.navSteps[8]);\n } else if (this.isSarStatusNew) {\n this.navigate(this.navSteps[7]);\n } else {\n this.navigate(this.navSteps[6]);\n }\n break;\n case Section.payment:\n this.navigate(this.navSteps[9]);\n break;\n case Section.confirmation:\n this.eventCtrl.emit('cancel-purchase');\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setPcrFormData', this.pcrFormData);\n const _section = this.$route.query.sec as string;\n switch (_section) {\n case Section.details:\n this.saveIndividualDetails(1);\n // this.navigate(this.navSteps[1]);\n break;\n case Section.record:\n this.additionalPracticeDetailsPopup();\n break;\n case Section.address:\n this.saveAddress();\n // this.navigate(this.navSteps[3]);\n break;\n case Section.renewal:\n this.savePCRenewalDetails();\n break;\n case Section.register:\n this.saveStatutoryRegister();\n // this.navigate(this.navSteps[5]);\n break;\n case Section.additional:\n this.saveAdditionalDetails();\n break;\n case Section.preferences:\n this.savePreferences();\n // this.navigate(this.navSteps[7]);\n break;\n case Section.specialistAccreditation:\n this.saveSpecialistAccreditation();\n // this.navigate(this.navSteps[8]);\n break;\n case Section.applicationDeclarations:\n this.saveApplicationDeclarations();\n // this.navigate(this.navSteps[8 or 9]);\n break;\n case Section.renewalDeclarations:\n this.saveRenewalDeclarations();\n // this.navigate(this.navSteps[9]);\n break;\n case Section.payment:\n if (this.pcrFormData?.paymentDetails?.isSpecAccWithPracticeEmployer) {\n this.savePcPaymentDetailsInternal();\n } else {\n this.savePcPaymentDetails();\n }\n // this.navigate(this.navSteps[10]);\n break;\n case Section.confirmation:\n this.openSurveyWindow();\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n }\n\n private openSurveyWindow() {\n const _url = 'https://www.lawsociety.com.au/pcrsurvey';\n window.open(_url, '_blank');\n }\n\n private saveAddress() {\n this.isSaving = true;\n const _body = this.pcrFormData.pcRenewAddressDetails;\n this.apiService.PcRenewApi?.apiV1PcRenewSaveAddressDetailsPost(_body)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Address details updated');\n this.navigate(this.navSteps[3]);\n })\n .catch((err) => {\n this.isSaving = false;\n this.ai.trackException('Error, Unable to update address details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update address details: ' + err);\n });\n }\n\n private saveStatutoryRegister() {\n this.isSaving = true;\n this.apiService.PcRenewApi?.apiV1PcRenewSaveStatutoryRegisterDetailsPost(\n this.pcrFormData.statutoryRegisterDetails,\n )\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Statutory Register updated');\n this.navigate(this.navSteps[5]);\n })\n .catch((err) => {\n this.isSaving = false;\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Unable to update Statutory Register: ' + err,\n );\n this.ai.trackException('Error, Unable to update Statutory Register: ' + err);\n });\n }\n\n private savePreferences() {\n this.isSaving = true;\n this.apiService.PcRenewApi?.apiV1PcRenewSavePreferenceDetailsPost(\n this.pcrFormData.preferenceDetail,\n )\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User preference updated');\n if (this.isSarStatusNew) {\n this.navigate(this.navSteps[7]);\n } else {\n this.navigate(this.navSteps[9]);\n }\n })\n .catch((err) => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update user preference: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n });\n }\n\n private saveSpecialistAccreditation() {\n this.isSaving = true;\n this.apiService.PcRenewApi?.apiV1PcRenewSaveSarRecordLinkedApplicationPost(\n this.pcrFormData.sarRecordLinkedApplication,\n )\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Specialist Accreditation updated');\n if (this.specAccRenewalFlag) {\n this.navigate(this.navSteps[8]);\n } else {\n this.navigate(this.navSteps[9]);\n }\n })\n .catch((err) => {\n this.isSaving = false;\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Unable to update Specialist Accreditation: ' + err,\n );\n this.ai.trackException('Error, Unable to update Specialist Accreditation: ' + err);\n });\n }\n\n private saveIndividualDetails(step: number) {\n this.isSaving = true;\n this.apiService.PcRenewApi?.apiV1PcRenewUpdatePersonalDetailPost(\n this.pcrFormData.individualDetails,\n )\n .then(() => {\n this.isSaving = false;\n this.navigate(this.navSteps[step]);\n // this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n })\n .catch((err: any) => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n });\n }\n\n private async confirmPPP() {\n if (this.pcrFormData.practiceRecords.length > 0) {\n // const lastApplicationYear = store.getters.getAppInfo.lastApplicationYear.year;\n const _isCeased = this.pcrFormData.practiceRecords.filter((pr: PracticeDetails) => {\n const _realCessationStatus = pr.newPracticeRecord?.isCeased;\n return pr.newPracticeRecord && _realCessationStatus;\n });\n\n const _notCeased = this.pcrFormData.practiceRecords.filter((pr: PracticeDetails) => {\n return pr.newPracticeRecord?.name\n ? !pr.newPracticeRecord.isCeased\n : !pr.originalPracticeRecord.isCeased;\n });\n\n // console.log( _isCeased.length, _notCeased.length, _notCeased[0].newPracticeRecord?.id, _notCeased[0].originalPracticeRecord?.id);\n\n if (\n this.pcrFormData.practiceRecords.length == 1 &&\n this.pcrFormData.practiceRecords[0]?.originalPracticeRecord?.isCeased\n ) {\n // console.log('case 1');\n this.navigate(this.navSteps[2]);\n } else if (\n this.pcrFormData.practiceRecords.length == 1 &&\n this.pcrFormData.practiceRecords[0]?.newPracticeRecord?.isCeased\n ) {\n // console.log('case 2');\n this.navigate(this.navSteps[2]);\n } else if (\n this.pcrFormData.practiceRecords.length == 1 &&\n this.pcrFormData.practiceRecords[0].newPracticeRecord &&\n !this.pcrFormData.practiceRecords[0]?.newPracticeRecord?.isCeased\n ) {\n // console.log('case 3');\n this.updatePPPandSkip(this.pcrFormData.practiceRecords[0].newPracticeRecord?.id);\n } else if (\n this.pcrFormData.practiceRecords.length == 1 &&\n this.pcrFormData.practiceRecords[0].originalPracticeRecord &&\n !this.pcrFormData.practiceRecords[0]?.originalPracticeRecord?.isCeased\n ) {\n // console.log('case 4');\n this.updatePPPandSkip(this.pcrFormData.practiceRecords[0].originalPracticeRecord.id);\n } else if (_notCeased.length == 1 && _notCeased[0].originalPracticeRecord) {\n // console.log('case 5');\n const _recordPracticeId =\n _notCeased[0].newPracticeRecord?.id || _notCeased[0].originalPracticeRecord?.id;\n this.updatePPPandSkip(_recordPracticeId);\n } else if (this.pcrFormData.practiceRecords.length - _isCeased.length == 1) {\n // console.log('case 6' );\n if (_notCeased.length == 1) {\n // set the only 1 as PPP by default\n const _recordPracticeId =\n _notCeased[0].newPracticeRecord?.id || _notCeased[0].originalPracticeRecord?.id;\n this.updatePPPandSkip(_recordPracticeId);\n }\n } else {\n // console.log('case 7');\n if (this.pcrFormData.practiceRecords.length - _isCeased.length > 0) {\n this.practiceRecords = JSON.parse(JSON.stringify(this.pcrFormData.practiceRecords));\n const _confirm: any = this.$refs.pppPopup;\n _confirm\n .show({\n title: 'Select Principal Place of Practice',\n message:\n 'We need to know what your Principal Place of Practice will be as 1 July ' +\n this.lastApplicationYear,\n okButton: 'Next',\n cancelButton: 'Cancel',\n })\n .then((res: any) => {\n if (res) {\n this.savePPP();\n } else {\n // enable PPP selection\n // this.pcrFormData.practiceRecords = this.practiceRecords;\n }\n });\n } else {\n this.navigate(this.navSteps[2]);\n }\n }\n } else {\n this.navigate(this.navSteps[2]);\n }\n }\n\n private async updatePPPandSkip(recordPracticeId: number) {\n await this.apiService.PcRenewApi?.apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut(\n this.pcRenewApplicationId, // pcRenewApplicationId\n recordPracticeId, // recordPracticeId\n )\n .then(() => {\n this.eventCtrl.emit('show-snackbar', 'success', 'PPP record updated');\n this.navigate(this.navSteps[2]);\n })\n .catch((err) => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update PPP record: ' + err);\n this.ai.trackException('Error, Unable to update PPP record: ' + err);\n });\n }\n\n private savePPP() {\n this.saveIndividualDetails(2);\n // this.navigate(this.navSteps[2]);\n }\n\n private async savePCRenewalDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.PcRenewApi?.apiV1PcRenewSavePcRenewalDetailsPost(\n this.pcrFormData.renewDetails,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Renew details saved');\n this.isSaving = false;\n this.navigate(this.navSteps[4]);\n } catch (err) {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save renew details: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n }\n }\n\n private async saveAdditionalDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.PcRenewApi?.apiV1PcRenewSaveAdditionalDetailsPost(\n this.pcrFormData.additionalDetails,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Additional details saved');\n this.isSaving = false;\n this.navigate(this.navSteps[6]);\n } catch (err) {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Additional details: ' + err);\n this.ai.trackException('Error, Unable to save Additional details: ' + err);\n }\n }\n\n private async savePcPaymentDetailsInternal() {\n this.eventCtrl.emit('apply-cc-payment');\n }\n\n private async savePcPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n let totalCost = 0;\n let ifAnyPaidByPractice = false;\n this.pcrFormData.paymentDetails?.lineItems.forEach((x: any) => {\n totalCost += x.total;\n });\n ifAnyPaidByPractice = this.pcrFormData.paymentDetails?.lineItems.some(\n (x: any) => x.isPaidByPractice,\n );\n this.amountPayable =\n totalCost -\n this.pcrFormData.paymentDetails?.lineItems\n .filter((x: any) => x.isPaidByPractice)\n .reduce((a: any, b: any) => a + b.total, 0);\n\n if (!ifAnyPaidByPractice || this.amountPayable === 0) {\n // save payment details with external payment page\n await this.apiService.PcRenewApiV2?.apiV2PcRenewSavePaymentDetailsPost(\n this.pcrFormData.paymentDetails,\n )\n .then((resp) => {\n // console.log('savePaymentDetailsPost: ', resp);\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n if (resp.data.data.isRequiredToOpenPymtApp) {\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n // this.showPaymentPopup = true;\n } else {\n this.navigate(this.navSteps[11]);\n }\n })\n .catch((err) => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n });\n } else {\n // save payment details with internal payment page\n this.applyInternalPayment = true;\n }\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private removePaymentWindow(): void {\n this.showPaymentPopup = false;\n }\n\n private paymentConfirmed() {\n this.showPaymentPopup = false;\n this.updateApplicationStatus();\n this.navigate(this.navSteps[11]);\n }\n\n private async updateApplicationStatus() {\n try {\n await this.apiService.PcRenewApiV2?.apiV2PcRenewUpdateApplicationStatusPut(this.appId);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update application status: ' + err);\n this.ai.trackException('Error, Unable to update application status: ' + err);\n }\n }\n\n get appId(): number {\n return store.getters.getAppRenew.id;\n }\n\n get pcRenewApplicationId() {\n return store.getters.getPcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n get isSarStatusNew(): boolean {\n return this.pcrFormData?.individualDetails?.isSarStatusNew;\n }\n\n get lastApplicationYear(): number {\n return store.getters.getAppInfo.lastApplicationYear.year;\n }\n\n // private additionDetailsConfirmed = false;\n\n private additionalPracticeDetailsPopup() {\n const _nonCeased = this.pcrFormData.practiceRecords.filter(\n (pr: {\n newPracticeRecord: { employmentStatus: { id: number } };\n originalPracticeRecord: null;\n }) => {\n const _isCeased =\n pr.newPracticeRecord && pr.newPracticeRecord.employmentStatus?.id == 999999999;\n return pr.originalPracticeRecord !== null && !_isCeased;\n },\n );\n\n const _newlyAdded = this.pcrFormData.practiceRecords.filter(\n (pr: {\n newPracticeRecord: { employmentStatus: { id: number } };\n originalPracticeRecord: null;\n }) => {\n const _isCeased =\n pr.newPracticeRecord && pr.newPracticeRecord.employmentStatus?.id == 999999999;\n return pr.originalPracticeRecord == null && !_isCeased;\n },\n );\n if (_nonCeased.length > 0 && _newlyAdded.length > 0) {\n this.popupPracticeRecords = this.pcrFormData.practiceRecords.filter(\n (pr: { originalPracticeRecord: null }) => {\n return pr.originalPracticeRecord !== null;\n },\n );\n const _confirm: any = this.$refs.additionalDetailsPopUp;\n _confirm\n .show({\n title: 'Additional Practice Details',\n message:\n 'You have added new practice details, are you engaged in legal practice for more than one Law Practice / Employer / Entity?',\n okButton: 'Save',\n cancelButton: 'Cancel',\n })\n .then((res: any) => {\n if (res) {\n // this.loadPracticeRecord(false);\n // update the top screen.\n this.eventCtrl.emit('reloadPracticeRecord');\n // this.additionDetailsConfirmed = true;\n this.reloadPracticeRecord();\n }\n });\n } else {\n // this.additionDetailsConfirmed = true;\n this.confirmPPP();\n }\n }\n\n private async reloadPracticeRecord(isNew?: boolean) {\n await this.apiService.PcRenewApi?.apiV1PcRenewGetPracticeDetailsApplicationIdGet(this.pcrApp.id)\n .then((res) => {\n this.practiceRecords = this.sortPPP(res.data.data);\n // this.practiceRecords.forEach((p, index) => {\n // if (p.originalPracticeRecord?.employmentStatus?.id == p.newPracticeRecord?.employmentStatus?.id\n // && this.selectedAddress(p.originalPracticeRecord?.recordPracticeAddresses) == this.selectedAddress(p.newPracticeRecord?.recordPracticeAddresses)\n // ) {\n // this.revertDetails(index, p);\n // }\n // })\n this.pcrFormData.practiceRecords = this.practiceRecords;\n this.confirmPPP();\n })\n .catch((err) => {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload practice records: ' + err);\n this.ai.trackException('Error, Unable to reload practice records: ' + err);\n });\n }\n\n private sortPPP(records: PracticeDetails[]) {\n const _isPpp = records.filter((r) => {\n return r.originalPracticeRecord?.isPpp || r.newPracticeRecord?.isPpp;\n });\n\n const _notPpp = records.filter((r) => {\n return !r.originalPracticeRecord?.isPpp && !r.newPracticeRecord?.isPpp;\n });\n return [..._isPpp, ..._notPpp];\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n @Watch('pcrFormData.sarRecordLinkedApplication.renewalFlag1')\n private onSpecAccRenewalFlagChange(): void {\n this.updateStepsUI();\n }\n\n @Watch('pcrFormData.individualDetails.isSarStatusNew')\n private onIsSarStatusNewChange(): void {\n this.updateStepsUI();\n }\n\n get specAccRenewalFlag() {\n return this.pcrFormData?.sarRecordLinkedApplication?.renewalFlag1;\n }\n\n private updateStepsUI(): void {\n if (this.isSarStatusNew) {\n this.navSteps[7].visible = true;\n if (this.specAccRenewalFlag) {\n this.navSteps[8].visible = true;\n } else {\n this.navSteps[8].visible = false;\n }\n } else {\n this.navSteps[7].visible = false;\n this.navSteps[8].visible = false;\n }\n }\n\n private async saveApplicationDeclarations() {\n this.isSaving = true;\n try {\n await this.apiService.PcRenewApi?.apiV1PcRenewSaveSarApplicationDeclarationPost(\n this.pcrFormData.sarDeclaration,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Application declarations saved');\n this.isSaving = false;\n this.navigate(this.navSteps[9]);\n } catch (err) {\n this.isSaving = false;\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Unable to save Application declarations: ' + err,\n );\n this.ai.trackException('Error, Unable to save Application declarations: ' + err);\n }\n }\n\n private async saveRenewalDeclarations() {\n this.isSaving = true;\n try {\n await this.apiService.PcRenewApi?.apiV1PcRenewSaveRecordDeclarationPost({\n id: this.pcrFormData.recordDeclarationApplicationId.id,\n pcRenewApplicationId: this.pcrFormData.individualDetails?.pcRenewApplicationId,\n });\n this.eventCtrl.emit('show-snackbar', 'success', 'Renewal declarations saved');\n this.isSaving = false;\n this.navigate(this.navSteps[10]);\n } catch (err) {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Renewal declarations: ' + err);\n this.ai.trackException('Error, Unable to save Renewal declarations: ' + err);\n }\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n get paymentTypes(): any[] {\n return this.pcrFormData.paymentDetails?.paymentTypes;\n }\n\n get paymentItems(): any[] {\n return this.pcrFormData.paymentDetails?.lineItems;\n }\n\n private paymentToken = '';\n\n private updateCCStatus(val: boolean) {\n console.log('updateCCStatus: ', val);\n }\n}\n","import { render } from \"./pcr.html?vue&type=template&id=c4094aee&scoped=true&ts=true\"\nimport script from \"./pcr.ts?vue&type=script&lang=ts\"\nexport * from \"./pcr.ts?vue&type=script&lang=ts\"\n\nimport \"./pcr.scss?vue&type=style&index=0&id=c4094aee&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c4094aee\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-c5c1bec2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor\" }\nconst _hoisted_2 = { class: \"container mt-4\" }\nconst _hoisted_3 = {\n key: 4,\n class: \"pc-nor-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_PcNorCurrentDetails = _resolveComponent(\"PcNorCurrentDetails\")\n const _component_PcNorDeclarations = _resolveComponent(\"PcNorDeclarations\")\n const _component_PcNorPaymentDetails = _resolveComponent(\"PcNorPaymentDetails\")\n const _component_PcNorConfirmation = _resolveComponent(\"PcNorConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true\n }, null, 8, [\"navSteps\"]),\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.currentSection === _ctx.$Section.details)\n ? (_openBlock(), _createBlock(_component_PcNorCurrentDetails, {\n key: 0,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event)),\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[2] || (_cache[2] = $event => ((_ctx.isSubmitting) = $event)),\n isEmailDuplicated: _ctx.isEmailDuplicated,\n \"onUpdate:isEmailDuplicated\": _cache[3] || (_cache[3] = $event => ((_ctx.isEmailDuplicated) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\", \"isSubmitting\", \"isEmailDuplicated\"]))\n : (_ctx.currentSection === _ctx.$Section.declarations)\n ? (_openBlock(), _createBlock(_component_PcNorDeclarations, {\n key: 1,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event)),\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[6] || (_cache[6] = $event => ((_ctx.isSubmitting) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\", \"isSubmitting\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_PcNorPaymentDetails, {\n key: 2,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[7] || (_cache[7] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[8] || (_cache[8] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_PcNorConfirmation, {\n key: 3,\n pcrFormData: _ctx.pcrFormData,\n \"onUpdate:pcrFormData\": _cache[9] || (_cache[9] = $event => ((_ctx.pcrFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[10] || (_cache[10] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"pcrFormData\", \"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[11] || (_cache[11] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[12] || (_cache[12] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 1,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-pc-nor-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[13] || (_cache[13] = $event => (_ctx.processNotification('close-payment-form')))\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createVNode as _createVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, withDirectives as _withDirectives, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, Fragment as _Fragment, renderList as _renderList, vModelSelect as _vModelSelect, vModelRadio as _vModelRadio, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-46ee2306\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor-current-details\" }\nconst _hoisted_2 = [\"innerHTML\"]\nconst _hoisted_3 = { class: \"content-wrapper\" }\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center mb-3\" }, \"Current Details\", -1))\nconst _hoisted_7 = { class: \"input-box\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Full name \", -1))\nconst _hoisted_9 = { class: \"mt-3\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"height\":\"1.65rem\"} }, null, -1))\nconst _hoisted_11 = { class: \"field_name\" }\nconst _hoisted_12 = { class: \"validation-msg\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_14 = { key: 0 }\nconst _hoisted_15 = { key: 1 }\nconst _hoisted_16 = { key: 2 }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_19 = { class: \"postal-address pa-3\" }\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Postal Address\", -1))\nconst _hoisted_21 = { class: \"col-12 right\" }\nconst _hoisted_22 = { key: 0 }\nconst _hoisted_23 = { key: 1 }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_25 = { class: \"right-side\" }\nconst _hoisted_26 = { class: \"box\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center mb-3\" }, \"Non-Renewal Details\", -1))\nconst _hoisted_28 = { class: \"dropdown-menu\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Reason for Not Renewing PC\", -1))\nconst _hoisted_30 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_35 = { class: \"input-box\" }\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of ceasing to Practise in NSW\", -1))\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_38 = { class: \"col-12 radios\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Principal in a practice\", -1))\nconst _hoisted_40 = { class: \"radio-button-group\" }\nconst _hoisted_41 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_42 = { class: \"radio-button col-3\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_44 = { class: \"col-2 ml-0\" }\nconst _hoisted_45 = { class: \"radio-button\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_48 = { class: \"col-12 radios\" }\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Practice Closed\", -1))\nconst _hoisted_50 = { class: \"radio-button-group\" }\nconst _hoisted_51 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_52 = { class: \"radio-button col-3\" }\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_54 = { class: \"col-2 ml-0\" }\nconst _hoisted_55 = { class: \"radio-button\" }\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_57 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_58 = { class: \"input-box\" }\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Who has the files\", -1))\nconst _hoisted_60 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_61 = { class: \"col-12 radios\" }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Successor to practice\", -1))\nconst _hoisted_63 = { class: \"radio-button-group\" }\nconst _hoisted_64 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_65 = { class: \"radio-button col-3\" }\nconst _hoisted_66 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_67 = { class: \"col-2 ml-0\" }\nconst _hoisted_68 = { class: \"radio-button\" }\nconst _hoisted_69 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_71 = { class: \"input-box\" }\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Successor name\", -1))\nconst _hoisted_73 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_74 = { class: \"col-12 radios\" }\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Apply for Associate Membership\", -1))\nconst _hoisted_76 = { class: \"radio-button-group\" }\nconst _hoisted_77 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_78 = { class: \"radio-button col-3\" }\nconst _hoisted_79 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_80 = { class: \"col-2 ml-0\" }\nconst _hoisted_81 = { class: \"radio-button\" }\nconst _hoisted_82 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_83 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_PcNorAddressDetailsUpdateModal = _resolveComponent(\"PcNorAddressDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", {\n class: \"center\",\n innerHTML: _ctx.heading1\n }, null, 8, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1)\n ]),\n _hoisted_10,\n (_ctx.individualDetails.communicationEmail)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"input-box\", _ctx.individualDetails.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_11, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('RegulatoryCommunicationsEmail', 20)\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onKeyup: _cache[1] || (_cache[1] = $event => (_ctx.saveEmailAsTemp()))\n }, null, 544), [\n [_vModelText, _ctx.individualDetails.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_12, [\n _hoisted_13,\n (_ctx.individualDetails.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_14, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_15, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_16, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_17,\n (_ctx.applyAssociateMember)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_18,\n _createElementVNode(\"div\", {\n class: _normalizeClass(['postal-address-main', !_ctx.individualDetails?.postalAddress ? 'error': ''])\n }, [\n _createElementVNode(\"div\", _hoisted_19, [\n _hoisted_20,\n _createVNode(_component_AddressPreview, {\n noTitle: true,\n address: _ctx.individualDetails.postalAddress,\n \"onUpdate:address\": _cache[2] || (_cache[2] = $event => ((_ctx.individualDetails.postalAddress) = $event)),\n style: _normalizeStyle('padding: 0.5rem 1rem;')\n }, null, 8, [\"address\", \"style\"]),\n _createElementVNode(\"div\", _hoisted_21, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n onClick: _cache[3] || (_cache[3] = (...args) => (_ctx.showPostalAddressUpdateModal && _ctx.showPostalAddressUpdateModal(...args)))\n }, [\n (_ctx.individualDetails?.postalAddress)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_22, \"Update postal address\"))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_23, \"Add postal address\"))\n ])\n ])\n ]),\n _hoisted_24\n ], 2)\n ], 64))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"div\", _hoisted_30, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.noRenewalReason) = $event)),\n onChange: _cache[5] || (_cache[5] = $event => (_ctx.syncData()))\n }, [\n _hoisted_31,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.noRenewalReasons, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", { value: t }, _toDisplayString(t.name), 9, _hoisted_32))\n }), 256))\n ], 544), [\n [_vModelSelect, _ctx.noRenewalReason]\n ])\n ]),\n _hoisted_33\n ]),\n _hoisted_34,\n _createElementVNode(\"div\", _hoisted_35, [\n _hoisted_36,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: _ctx.effectiveEndDate,\n \"onUpdate:value\": _cache[6] || (_cache[6] = $event => ((_ctx.effectiveEndDate) = $event)),\n \"input-class\": \"normal\",\n onChange: _cache[7] || (_cache[7] = $event => (_ctx.syncData())),\n \"disabled-date\": _ctx.firstOfJulyTo30thOfJune\n }, null, 8, [\"value\", \"disabled-date\"])\n ]),\n _hoisted_37,\n _createElementVNode(\"div\", _hoisted_38, [\n _hoisted_39,\n _createElementVNode(\"div\", _hoisted_40, [\n _createElementVNode(\"span\", _hoisted_41, [\n _createElementVNode(\"label\", _hoisted_42, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.principalInAPractice) = $event)),\n value: true,\n name: \"principal_in_practice\",\n onChange: _cache[9] || (_cache[9] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.principalInAPractice]\n ]),\n _hoisted_43\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_44, [\n _createElementVNode(\"label\", _hoisted_45, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.principalInAPractice) = $event)),\n value: false,\n name: \"principal_in_practice\",\n onChange: _cache[11] || (_cache[11] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.principalInAPractice]\n ]),\n _hoisted_46\n ])\n ])\n ])\n ]),\n (_ctx.principalInAPractice)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_47,\n _createElementVNode(\"div\", _hoisted_48, [\n _hoisted_49,\n _createElementVNode(\"div\", _hoisted_50, [\n _createElementVNode(\"span\", _hoisted_51, [\n _createElementVNode(\"label\", _hoisted_52, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.practiceClosed) = $event)),\n value: true,\n name: \"practice_closed\",\n onChange: _cache[13] || (_cache[13] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.practiceClosed]\n ]),\n _hoisted_53\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_54, [\n _createElementVNode(\"label\", _hoisted_55, [\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => ((_ctx.practiceClosed) = $event)),\n type: \"radio\",\n value: false,\n name: \"practice_closed\",\n onChange: _cache[15] || (_cache[15] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.practiceClosed]\n ]),\n _hoisted_56\n ])\n ])\n ])\n ]),\n (_ctx.practiceClosed)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_57,\n _createElementVNode(\"div\", _hoisted_58, [\n _hoisted_59,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.whoHasTheFile) = $event)),\n maxlength: \"50\",\n onKeyup: _cache[17] || (_cache[17] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelText, _ctx.whoHasTheFile]\n ])\n ]),\n _hoisted_60,\n _createElementVNode(\"div\", _hoisted_61, [\n _hoisted_62,\n _createElementVNode(\"div\", _hoisted_63, [\n _createElementVNode(\"span\", _hoisted_64, [\n _createElementVNode(\"label\", _hoisted_65, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => ((_ctx.practiceSuccessor) = $event)),\n value: true,\n name: \"successor_to_practice\",\n onChange: _cache[19] || (_cache[19] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.practiceSuccessor]\n ]),\n _hoisted_66\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_67, [\n _createElementVNode(\"label\", _hoisted_68, [\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => ((_ctx.practiceSuccessor) = $event)),\n type: \"radio\",\n value: false,\n name: \"successor_to_practice\",\n onChange: _cache[21] || (_cache[21] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.practiceSuccessor]\n ]),\n _hoisted_69\n ])\n ])\n ])\n ]),\n (_ctx.practiceSuccessor)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_70,\n _createElementVNode(\"div\", _hoisted_71, [\n _hoisted_72,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[22] || (_cache[22] = $event => ((_ctx.successorName) = $event)),\n maxlength: \"50\",\n onKeyup: _cache[23] || (_cache[23] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelText, _ctx.successorName]\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true),\n (!_ctx.pcrFormData?.individualDetails?.isLifeMember)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_73,\n _createElementVNode(\"div\", _hoisted_74, [\n _hoisted_75,\n _createElementVNode(\"div\", _hoisted_76, [\n _createElementVNode(\"span\", _hoisted_77, [\n _createElementVNode(\"label\", _hoisted_78, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[24] || (_cache[24] = $event => ((_ctx.applyAssociateMember) = $event)),\n value: true,\n name: \"apply_for_associate_member\",\n onChange: _cache[25] || (_cache[25] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.applyAssociateMember]\n ]),\n _hoisted_79\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_80, [\n _createElementVNode(\"label\", _hoisted_81, [\n _withDirectives(_createElementVNode(\"input\", {\n \"onUpdate:modelValue\": _cache[26] || (_cache[26] = $event => ((_ctx.applyAssociateMember) = $event)),\n type: \"radio\",\n value: false,\n name: \"apply_for_associate_member\",\n onChange: _cache[27] || (_cache[27] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelRadio, _ctx.applyAssociateMember]\n ]),\n _hoisted_82\n ])\n ])\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n _hoisted_83\n ])\n ])\n ])\n ], 64)),\n (_ctx.showUpdateModal)\n ? (_openBlock(), _createBlock(_component_PcNorAddressDetailsUpdateModal, {\n key: 2,\n onClose: _cache[28] || (_cache[28] = $event => (_ctx.showUpdateModal = false)),\n editAddressType: _ctx.editAddressType,\n address: _ctx.editPostalAddress,\n \"onUpdate:address\": _cache[29] || (_cache[29] = $event => ((_ctx.editPostalAddress) = $event)),\n onReload: _ctx.reload\n }, null, 8, [\"editAddressType\", \"address\", \"onReload\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, withCtx as _withCtx, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-939784de\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor-address-details-update-modal\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = { key: 1 }\nconst _hoisted_4 = { class: \"modal-body\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \"Please enter your preferred postal address\", -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_7 = {\n key: 0,\n class: \"modal-footer row right\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n (_ctx.editAddressType == 1)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_2, \"Address for Service\"))\n : _createCommentVNode(\"\", true),\n (_ctx.editAddressType == 2)\n ? (_openBlock(), _createElementBlock(\"h4\", _hoisted_3, \"Postal Address\"))\n : _createCommentVNode(\"\", true)\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n (_ctx.address)\n ? (_openBlock(), _createBlock(_component_AddressComponent, {\n key: 0,\n onUpdateAddress: _ctx.updateAddress,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[0] || (_cache[0] = $event => ((_ctx.isSubmitting) = $event)),\n address: _ctx.address,\n \"onUpdate:address\": _cache[1] || (_cache[1] = $event => ((_ctx.address) = $event)),\n onReadyState: _ctx.updateAddressComponentState,\n showAddressType: _ctx.editAddressType == 2\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\", \"onReadyState\", \"showAddressType\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.addressComponentReady)\n ? (_openBlock(), _createBlock(_component_AddressPreview, {\n key: 1,\n address: _ctx.address,\n \"onUpdate:address\": _cache[2] || (_cache[2] = $event => ((_ctx.address) = $event)),\n style: 'padding: 1rem;'\n }, null, 8, [\"address\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_6,\n (_ctx.addressComponentReady)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.cancel()))\n }, \"Cancel\"),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[4] || (_cache[4] = $event => (_ctx.update()))\n }, \"Update\")\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"])\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport AddressComponent from \"../address-component/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\n@Options({\n props: {\n editAddressType: Number,\n address: Object,\n },\n components: {\n ModalWindow,\n AddressPreview,\n AddressComponent,\n LoadingIndicator,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\nexport default class PcNorAddressDetailsUpdateModal extends Vue {\n private address!: AddressDetail;\n private editAddressType!: number;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = false;\n\n private isSubmitting = false;\n\n private formData: any = {};\n private formValid = false;\n private addressComponentReady = false;\n\n private savePostalAddress() {\n this.apiService.PcNonRenewApi?.apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost(\n this.pcRenewApplicationId, this.$addressCleanup(this.address)\n )\n .then((res: any) => {\n this.$emit('reload');\n this.eventCtrl.emit('show-snackbar', 'success', 'Postal address updated: ');\n this.close();\n })\n .catch((err: any) => {\n this.ai.trackException('Error, Unable to save Postal address: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Postal address: ' + err);\n })\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n // console.log('update address: ', address, valid);\n this.formValid = valid;\n }\n\n private update() {\n this.isSubmitting = true;\n if (this.formValid) {\n this.savePostalAddress();\n }\n }\n\n private cancel() {\n this.close();\n }\n\n private close() {\n this.$emit('close');\n }\n\n private updateAddressComponentState(state: boolean): void {\n this.addressComponentReady = state;\n }\n\n get pcRenewApplicationId() {\n try {\n // console.log(store.getters.getPcrFormData);\n return store.getters.getPcrFormData.individualDetails.pcRenewApplicationId;\n } catch (err) {\n console.log(err);\n return null;\n }\n\n }\n}\n","import { render } from \"./pc-nor-address-details-update-modal.html?vue&type=template&id=939784de&scoped=true&ts=true\"\nimport script from \"./pc-nor-address-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor-address-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor-address-details-update-modal.scss?vue&type=style&index=0&id=939784de&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-939784de\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { UPDATE_EMAIL_LINK } from '@/shared/config/config';\n// import { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport Popover from \"@/shared/components/popover/index.vue\";\n// import { PopoverView } from \"@/shared/components/popover/popover\";\nimport { AddressDetail, Application, PcRenewIndividualDetail, NonRenewalReason } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport DatePicker from 'vue-datepicker-next';\nimport PcNorAddressDetailsUpdateModal from \"../pc-nor-address-details-update-modal/index.vue\";\nimport PcNorWordingData from '@/assets/config/pc-nor-wording.json';\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n isSubmitting: Boolean,\n isEmailDuplicated: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n PcNorAddressDetailsUpdateModal,\n AddressPreview,\n DatePicker\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class PcNorCurrentDetails extends Vue {\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n private isSubmitting!: boolean;\n private isEmailDuplicated!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private heading1 = PcNorWordingData[0][\"current-details\"][\"heading1\"].replaceAll('--[[ApplicationYearName]]--', this.appInfo.applicationYear?.name);\n private emailUpdateInfo = (PcNorWordingData[0][\"current-details\"][\"email-update-info\"]).replace('--[[UpdateEmailLink]]--', UPDATE_EMAIL_LINK);\n private declaration_check1_text = PcNorWordingData[0][\"current-details\"][\"declaration_check_1\"];\n private declaration_check2_text = PcNorWordingData[0][\"current-details\"][\"declaration_check_2\"];\n\n private individualDetails: PcRenewIndividualDetail = {};\n private noRenewalReasons: NonRenewalReason[] = [];\n private editAddressType = 2;\n\n private loadingDataSet = false;\n\n private noRenewalReason = null;\n private effectiveEndDate: any = null;\n private principalInAPractice = null;\n private practiceClosed = null;\n private whoHasTheFile = '';\n private practiceSuccessor = null;\n private successorName = '';\n private applyAssociateMember = null;\n private declaration1 = null;\n private declaration2 = null;\n\n private editPostalAddress: AddressDetail = {};\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n\n private showUpdateModal = false;\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetNonRenewalReasonGet(),\n this.getIndividualDetails()\n ]);\n await this.getNoRenewalDetails();\n this.noRenewalReasons = resp[0].data.data;\n store.dispatch('setPcrFormData', this.pcrFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async getIndividualDetails(): Promise {\n try {\n const _isRenewing = this.pcrFormData.individualDetails?.pcRenewApplicationId > 0;\n const resp: any = await this.apiService.PcNonRenewApi?.apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(this.pcrApp.id, !_isRenewing);\n this.individualDetails = resp.data.data;\n if (this.pcrFormData.tempEmail) {\n this.individualDetails.communicationEmail.email = this.pcrFormData.tempEmail;\n }\n this.pcrFormData['individualDetails'] = this.individualDetails;\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err: any) {\n if (err.response?.data && err.response.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n this.$router.push({ name: RouteN.Mars.Home.n });\n return Promise.reject(false);\n }\n }\n\n private async getNoRenewalDetails(): Promise {\n try {\n const resp: any = await this.apiService.PcNonRenewApi?.apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet(this.pcrApp.id);\n this.pcrFormData.noRenewDetails = resp.data.data;\n this.initSync();\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err) {\n if (!this.pcrFormData?.noRenewDetails) {\n this.pcrFormData['noRenewDetails'] = {};\n this.pcrFormData['noRenewDetails']['nonRenewalReason'] = null;\n this.pcrFormData['noRenewDetails']['effectiveEndDate'] = '';\n this.pcrFormData['noRenewDetails']['isPracticePrincipal'] = null;\n this.pcrFormData['noRenewDetails']['isPracticeClosed'] = null;\n this.pcrFormData['noRenewDetails']['whoHasTheFiles'] = '';\n this.pcrFormData['noRenewDetails']['isPracticeSuccessor'] = null;\n this.pcrFormData['noRenewDetails']['successorName'] = '';\n this.pcrFormData['noRenewDetails']['isApplyAssociateMembership'] = null;\n //this.pcrFormData['noRenewDetails']['declaration1'] = null;\n //this.pcrFormData['noRenewDetails']['declaration2'] = null;\n }\n return Promise.reject(false);\n }\n }\n\n private initSync(): void {\n this.noRenewalReason = this.pcrFormData.noRenewDetails.nonRenewalReason;\n this.effectiveEndDate = this.pcrFormData.noRenewDetails.effectiveEndDate ? new Date(this.pcrFormData.noRenewDetails.effectiveEndDate) : null;\n this.principalInAPractice = this.pcrFormData.noRenewDetails.isPracticePrincipal;\n this.practiceClosed = this.pcrFormData.noRenewDetails.isPracticeClosed;\n this.whoHasTheFile = this.pcrFormData.noRenewDetails.whoHasTheFiles;\n this.practiceSuccessor = this.pcrFormData.noRenewDetails.isPracticeSuccessor;\n this.successorName = this.pcrFormData.noRenewDetails.successorName;\n this.applyAssociateMember = this.pcrFormData.noRenewDetails.isApplyAssociateMembership;\n this.declaration1 = this.pcrFormData.noRenewDetails.declaration1;\n this.declaration2 = this.pcrFormData.noRenewDetails.declaration2;\n this.eventCtrl.emit('updateStepUI');\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n this.pcrFormData.noRenewDetails.nonRenewalReason = this.noRenewalReason;\n this.pcrFormData.noRenewDetails.effectiveEndDate = this.effectiveEndDate;\n this.pcrFormData.noRenewDetails.isPracticePrincipal = this.principalInAPractice;\n this.pcrFormData.noRenewDetails.isPracticeClosed = !this.principalInAPractice ? false : this.practiceClosed;\n this.pcrFormData.noRenewDetails.whoHasTheFiles = !this.principalInAPractice || !this.practiceClosed ? null : this.whoHasTheFile;\n this.pcrFormData.noRenewDetails.isPracticeSuccessor = !this.principalInAPractice || !this.practiceClosed ? null : this.practiceSuccessor;\n this.pcrFormData.noRenewDetails.successorName = !this.principalInAPractice || !this.practiceClosed || !this.practiceSuccessor ? null : this.successorName;\n this.pcrFormData.noRenewDetails.isApplyAssociateMembership = this.applyAssociateMember;\n this.pcrFormData.noRenewDetails.declaration1 = this.declaration1;\n this.pcrFormData.noRenewDetails.declaration2 = this.declaration2;\n this.pcrFormData.noRenewDetails.communicationEmail = this.individualDetails.communicationEmail;\n if (this.pcrFormData.tempEmail) {\n this.pcrFormData.noRenewDetails.communicationEmail.email = this.pcrFormData.tempEmail;\n }\n }\n } catch (err) {\n console.log(err);\n }\n this.eventCtrl.emit('updateStepUI');\n this.canGoNextCheck();\n }\n\n\n private isValidateForm(): boolean {\n let _cond1 = false;\n let _cond2 = false;\n let _cond3 = false;\n\n if (this.noRenewalReason && this.effectiveEndDate) {\n _cond1 = true;\n } else {\n _cond1 = false;\n }\n\n _cond2 = this.principleInPracticeIsValid();\n\n if ((this.applyAssociateMember && !!this.individualDetails?.postalAddress) ||\n (this.applyAssociateMember != null && !this.applyAssociateMember)\n ) {\n _cond3 = true;\n } else {\n _cond3 = false;\n }\n\n return _cond1 && _cond2 && (this.pcrFormData?.individualDetails?.isLifeMember || _cond3) && this.emailCheck();\n }\n\n private principleInPracticeIsValid(): boolean {\n if (this.principalInAPractice != null) {\n if (this.principalInAPractice) {\n return this.practiceClosedIsValid();\n } else {\n return true;\n }\n } else {\n return false;\n }\n }\n\n private practiceClosedIsValid(): boolean {\n if (this.practiceClosed != null) {\n if (this.practiceClosed) {\n return typeof this.whoHasTheFile == 'string' && this.whoHasTheFile?.length > 0 && this.successorPracticeIsValid();\n } else {\n return true;\n }\n } else {\n return false;\n }\n }\n\n private successorPracticeIsValid(): boolean {\n if (this.practiceSuccessor != null) {\n if (this.practiceSuccessor) {\n return typeof this.successorName == 'string' && this.successorName?.length > 0;\n } else {\n return true;\n }\n } else {\n return false;\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidateForm());\n }\n\n private reload() {\n this.getIndividualDetails();\n }\n\n private showPostalAddressUpdateModal() {\n if (this.individualDetails?.postalAddress) {\n this.editPostalAddress = { ... this.individualDetails.postalAddress };\n } else {\n this.editPostalAddress = { ... this.initAddress(this.editPostalAddress) };\n }\n this.showUpdateModal = true;\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.firmAddMapId = a.firmAddMapId || 0;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n get appInfo(): any {\n return store.getters.getAppInfo;\n }\n\n private emailCheck(): boolean {\n const isBlank = this.individualDetails.communicationEmail?.email?.trim() == '';\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return !isBlank && emailRegex.test(this.individualDetails.communicationEmail?.email);\n }\n\n private saveEmailAsTemp() {\n this.pcrFormData.tempEmail = this.individualDetails.communicationEmail?.email?.trim();\n this.canGoNextCheck();\n }\n\n private firstOfJulyTo30thOfJune(date: any) {\n const lastApplicationYear = store.getters.getAppInfo.lastApplicationYear.year;\n return new Date(new Date((lastApplicationYear - 1) + '-06-30T23:59:59')) > date || date > new Date(new Date(lastApplicationYear + '-06-30T23:59:59'));\n }\n\n}\n\n","import { render } from \"./pc-nor-current-details.html?vue&type=template&id=46ee2306&scoped=true&ts=true\"\nimport script from \"./pc-nor-current-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor-current-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor-current-details.scss?vue&type=style&index=0&id=46ee2306&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-46ee2306\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4b197169\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 declarations mt-4\" }, [\n /*#__PURE__*/_createTextVNode(\" By clicking “Next” I declare that: \"),\n /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n ])\n], -1))\nconst _hoisted_4 = [\n _hoisted_2,\n _hoisted_3\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_4))\n}","import {Options, Vue} from \"vue-property-decorator\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\n\n\n@Options({\n components: {}\n})\nexport default class PcNorDeclarations extends Vue {\n \n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n mounted(): void {\n this.eventCtrl.emit('canGoNext', true);\n\n }\n}\n\n","import { render } from \"./pc-nor-declarations.html?vue&type=template&id=4b197169&scoped=true&ts=true\"\nimport script from \"./pc-nor-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor-declarations.scss?vue&type=style&index=0&id=4b197169&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4b197169\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-45a7843e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your registration please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ]),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\" You will now be taken to a Survey, results of which will provide information about the profile of, and key reasons for, people leaving the legal profession. The survey will take 2 - 3 minutes to complete. Those that successfully complete the survey will be given the opportunity to enter the draw to \"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"win one of five $100 Visa gift cards\"),\n /*#__PURE__*/_createTextVNode(\". All information collected is anonymous. The Survey is being administered by an independent research agency (Urbis). If you do not wish to complete the Survey, please close the window when it opens. \")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class PcNorConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('pcrFormData');\n store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./pc-nor-confirmation.html?vue&type=template&id=45a7843e&scoped=true&ts=true\"\nimport script from \"./pc-nor-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor-confirmation.scss?vue&type=style&index=0&id=45a7843e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-45a7843e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-61511dfa\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pc-nor-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Total Price (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n \"data-label\": \"Associate Membership Fee\",\n class: \"desc\"\n}, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"hide-in-mobile mr-1\" }, \"Associate Membership Fee\"),\n /*#__PURE__*/_createTextVNode(\" \")\n], -1))\nconst _hoisted_9 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_10 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_12 = { class: \"total\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total bold\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_14 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n _createElementVNode(\"tr\", null, [\n _hoisted_8,\n _createElementVNode(\"td\", _hoisted_9, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem('Associate Membership Fee').amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem('Associate Membership Fee').gst)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem('Associate Membership Fee').total)), 1)\n ]),\n _createElementVNode(\"tr\", _hoisted_12, [\n _hoisted_13,\n _createElementVNode(\"td\", _hoisted_14, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\n\n@Options({\n props: {\n pcrFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n LoadingIndicator\n },\n mixins: [FormatDateTimeMixin]\n})\nexport default class PcNorPaymentDetails extends Vue {\n\n private pcrFormData!: any;\n private isSectionLoading!: boolean;\n private ai = new AppInsights;\n private loadingDataSet = true;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n\n mounted(): void {\n this.canGoNextCheck();\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n console.log(store.getters);\n this.loadingDataSet = true;\n const resp: any = await this.apiService.PcNonRenewApi?.apiV1PcNonRenewGetPaymentDetailsApplicationIdGet(this.pcrApp.id);\n this.pcrFormData.paymentDetails = resp.data.data;\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.pcrFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase()\n );\n \n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n \n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0, \n localOW: true\n }\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.getPayableItem('Associate Membership Fee').total > 0);\n }\n\n get pcrApp(): Application {\n return store.getters.getAppRenew;\n }\n get getTotal(): number {\n return this.getPayableItem('Associate Membership Fee').total;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n\n}\n\n","import { render } from \"./pc-nor-payment-details.html?vue&type=template&id=61511dfa&scoped=true&ts=true\"\nimport script from \"./pc-nor-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor-payment-details.scss?vue&type=style&index=0&id=61511dfa&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-61511dfa\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport SwipeStepper from \"@/shared/components/swipe-stepper/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport PcNorCurrentDetails from \"../pc-nor-current-details/index.vue\";\nimport PcNorDeclarations from \"../pc-nor-declarations/index.vue\";\nimport PcNorConfirmation from \"../pc-nor-confirmation/index.vue\";\nimport PcNorPaymentDetails from \"../pc-nor-payment-details/index.vue\";\nimport PaymentPopup from \"../payment-popup/index.vue\";\nimport { PaymentTransaction } from \"@/shared/models/payment-transaction\";\nimport { PAYMENTAPP_URL } from \"@/shared/config/config\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { PageContent, RecordNonRenewalDeclarationRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\n\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n PcNorCurrentDetails,\n PcNorDeclarations,\n PcNorConfirmation,\n PcNorPaymentDetails,\n PaymentPopup,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const pcrApp = store.getters.getAppRenew;\n if (!pcrApp.id) {\n // console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n }\n})\nexport default class PcNoR extends Vue {\n private ai = new AppInsights;\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getPcrFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n get $Section() {\n return Section;\n }\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private navSteps = [\n new NavStep(Step.details, Section.details),\n new NavStep(Step.declarations, Section.declarations),\n new NavStep(Step.payment, Section.payment),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n private isSubmitting = false;\n private isEmailDuplicated = false;\n\n private pcrFormData: any = {};\n private showPaymentPopup = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction;\n private disablePaymentPopupCloseBut = false;\n private validPaymentPage = false;\n\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'pc-nor-payment';\n\n private isSaving = false;\n private helpContent: PageContent = {};\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n // hide the payment step \n this.navSteps[2].visible = false;\n const _appRenew = store.getters.getAppRenew;\n if (!_appRenew.id) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Invalid Page entry, please choose an option from Portal home');\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n this.eventCtrl.on('updateStepUI', this.updateStepsUI);\n window.addEventListener('message', this.receivedNotification);\n // this.eventCtrl.on('pc-nor-payment-confirmed', this.paymentConfirmed);\n\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n this.eventCtrl.removeListener('updateStepUI', this.updateStepsUI);\n window.removeEventListener('message', this.receivedNotification);\n // this.eventCtrl.removeListener('pc-nor-payment-confirmed', this.paymentConfirmed);\n }\n\n private receivedNotification(event: any): void {\n\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n // console.log('Received Notifications -- MARSApp');\n // console.log(action);\n // console.log(event?.origin, PAYMENTAPP_URL);\n // console.log(event?.data?.sessionId, this.sessionId);\n // console.log(event?.data?.paymentAppName, this.paymentAppName);\n // console.log('failed verification', !validOrigin, !validSessionId, !validPaymentApp);\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-pc-nor-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n // console.log(dataO);\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n if (_section !== Section.details) {\n this.backButtonText = 'Back';\n } else {\n this.backButtonText = 'Cancel application'\n }\n switch (_section) {\n case Section.details:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.declarations:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.payment:\n this.setSteps(2);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(3);\n this.backButtonVisible = false;\n this.nextButtonText = 'Next';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done\n }\n this.navSteps[n].status = NavStepStatusID.Current\n // the confirmation page\n const confirmationPage = this.navSteps.length - 1;\n if (n === confirmationPage) {\n for (let i = 0; i < confirmationPage; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 20);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 52);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 21);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 22);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private updateStepsUI(): void {\n if (this.pcrFormData?.noRenewDetails.isApplyAssociateMembership) {\n this.navSteps[2].visible = true;\n } else {\n this.navSteps[2].visible = false;\n }\n\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n switch (_section) {\n case Section.details:\n this.eventCtrl.emit('cancel-pc-no-renew');\n break;\n case Section.declarations:\n this.navigate(this.navSteps[0]);\n break;\n case Section.payment:\n this.navigate(this.navSteps[1]);\n break;\n case Section.confirmation:\n\n this.eventCtrl.emit('cancel-purchase');\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setPcrFormData', this.pcrFormData);\n const _section = this.$route.query.sec as string;\n switch (_section) {\n case Section.details:\n this.savePCNoRenewDetails();\n break;\n case Section.declarations:\n this.saveDeclarations();\n break;\n case Section.payment:\n // this.navigate(this.navSteps[3]);\n this.savePcNoRenewPaymentDetails();\n break;\n case Section.confirmation:\n this.openSurveyWindow();\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n\n }\n\n private async saveDeclarations(): Promise {\n this.isSubmitting = true;\n this.isSaving = true;\n const body: RecordNonRenewalDeclarationRequest = {\n pcRenewApplicationId: this.pcrFormData.individualDetails.pcRenewApplicationId,\n }\n await this.apiService.PcNonRenewApi?.apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost(body)\n .then(() => {\n this.isSaving = false;\n this.isSubmitting = false;\n if (this.pcrFormData?.noRenewDetails?.isApplyAssociateMembership) {\n this.navigate(this.navSteps[2]);\n } else {\n this.navigate(this.navSteps[3]);\n }\n })\n .catch(err => {\n this.isSaving = false;\n this.isSubmitting = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save declaration: ' + err);\n this.ai.trackException('Error, Unable to to save declaration:: ' + err);\n })\n }\n\n private async savePCNoRenewDetails(): Promise {\n this.isSubmitting = true;\n this.isSaving = true;\n this.pcrFormData.noRenewDetails.communicationEmail = this.pcrFormData.individualDetails.communicationEmail;\n await this.apiService.PcNonRenewApi?.apiV1PcNonRenewSaveRecordNonRenewalDetailsPost(this.pcrFormData.noRenewDetails)\n .then(() => {\n this.isEmailDuplicated = false;\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details saved');\n this.navigate(this.navSteps[1]);\n\n })\n .catch(err => {\n this.isSaving = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n }\n });\n\n }\n\n private async savePcNoRenewPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n const resp: any = await this.apiService.PcNonRenewApi?.apiV1PcNonRenewSavePaymentDetailsPost(this.pcrFormData.paymentDetails);\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n // this.navigate(this.navSteps[8]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private openSurveyWindow() {\n const _url = \"https://www.lawsociety.com.au/pcnrsurvey\";\n window.open(_url, '_blank');\n }\n\n\n private paymentConfirmed() {\n this.showPaymentPopup = false;\n this.navigate(this.navSteps[3]);\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get appId(): number {\n return store.getters.getAppRenew.id;\n }\n\n get pcRenewApplicationId() {\n return store.getters.getPcrFormData.individualDetails.pcRenewApplicationId;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get isDebugging() {\n return window.location.href.indexOf('https://localhost:44341/') == 0 && navigator.platform.toUpperCase().indexOf('MAC') >= 0;\n }\n\n get debugText() {\n return JSON.stringify(this.pcrFormData, undefined, 2);\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n}\n\n","import { render } from \"./pc-nor.html?vue&type=template&id=c5c1bec2&scoped=true&ts=true\"\nimport script from \"./pc-nor.ts?vue&type=script&lang=ts\"\nexport * from \"./pc-nor.ts?vue&type=script&lang=ts\"\n\nimport \"./pc-nor.scss?vue&type=style&index=0&id=c5c1bec2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c5c1bec2\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, createVNode as _createVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-9d9c584c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sm-application\" }\nconst _hoisted_2 = { class: \"container mt-4\" }\nconst _hoisted_3 = {\n key: 4,\n class: \"sm-application-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_SmOverview = _resolveComponent(\"SmOverview\")\n const _component_SmApplicationDetails = _resolveComponent(\"SmApplicationDetails\")\n const _component_SmPaymentDetails = _resolveComponent(\"SmPaymentDetails\")\n const _component_SmConfirmation = _resolveComponent(\"SmConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n const _component_PaymentModal = _resolveComponent(\"PaymentModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData || _ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _withDirectives(_createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true\n }, null, 8, [\"navSteps\"]), [\n [_vShow, !_ctx.isOverviewPage]\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.isOverviewPage)\n ? (_openBlock(), _createBlock(_component_SmOverview, { key: 0 }))\n : (_ctx.currentSection === _ctx.$Section.applicationDetails)\n ? (_openBlock(), _createBlock(_component_SmApplicationDetails, {\n key: 1,\n smAppFormData: _ctx.smAppFormData,\n \"onUpdate:smAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.smAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"smAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_SmPaymentDetails, {\n key: 2,\n smAppFormData: _ctx.smAppFormData,\n \"onUpdate:smAppFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.smAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"smAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_SmConfirmation, {\n key: 3,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[4] || (_cache[4] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[6] || (_cache[6] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ], 64)),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 2,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-sm-application-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[7] || (_cache[7] = $event => (_ctx.processNotification('close-payment-form')))\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512),\n (_ctx.applyInternalPayment && _ctx.amountPayable > 0)\n ? (_openBlock(), _createBlock(_component_PaymentModal, {\n key: 3,\n class: \"alert-box\",\n onClose: _cache[8] || (_cache[8] = $event => (_ctx.applyInternalPayment = false)),\n paymentFormData: _ctx.smAppFormData,\n \"onUpdate:paymentFormData\": _cache[9] || (_cache[9] = $event => ((_ctx.smAppFormData) = $event)),\n amountPayable: _ctx.amountPayable,\n \"onUpdate:amountPayable\": _cache[10] || (_cache[10] = $event => ((_ctx.amountPayable) = $event)),\n paymentAppName: _ctx.paymentAppName\n }, null, 8, [\"paymentFormData\", \"amountPayable\", \"paymentAppName\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-535e2164\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sm-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Total Price (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = [\"data-label\"]\nconst _hoisted_9 = { class: \"hide-in-mobile mr-1\" }\nconst _hoisted_10 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_12 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_13 = { class: \"total\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total bold\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_15 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"payment-header\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Practice Payment Breakdown\")\n], -1))\nconst _hoisted_17 = { class: \"calculate-paid mt-0\" }\nconst _hoisted_18 = { class: \"paid-table mb-4\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"td\", {\n colspan: \"4\",\n class: \"pa-2\",\n style: {\"background-color\":\"var(--ls-sandstone-light)\"}\n }, [\n /*#__PURE__*/_createTextVNode(\" Please note: This is \"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"NOT\"),\n /*#__PURE__*/_createTextVNode(\" a valid application for the purposes of the legal profession legislation until payment is received by the Law Society. If you ceased with your employer, it is your responsibility to ensure payment has been made. \")\n ])\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount paid by Practice / Employer\")\n], -1))\nconst _hoisted_21 = { class: \"currency right pr-4\" }\nconst _hoisted_22 = { class: \"desc\" }\nconst _hoisted_23 = { class: \"pl-4\" }\nconst _hoisted_24 = { class: \"currency right pr-4\" }\nconst _hoisted_25 = { key: 0 }\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { class: \"desc\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"pl-4\" }, \"Membership\")\n], -1))\nconst _hoisted_27 = { class: \"currency right pr-4\" }\nconst _hoisted_28 = { class: \"amount-payable\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"desc\",\n style: {\"font-size\":\"larger\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"\" }, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount Payable\")\n ])\n], -1))\nconst _hoisted_30 = {\n class: \"currency right pr-4\",\n style: {\"font-size\":\"larger\"}\n}\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center\" }, \"Notification\", -1))\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \" Your employer has already advised on the fees they will cover for your online application. You are still required to complete the online application. If you have any questions or need further information about the payments made, kindly contact your employer before finalising your application. \"),\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \"Select the Continue button to proceed.\")\n], -1))\nconst _hoisted_33 = { class: \"right\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_AlertBoxTypeTwo = _resolveComponent(\"AlertBoxTypeTwo\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.lineItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", {\n \"data-label\": lineItem.name,\n class: \"desc\"\n }, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(lineItem.name), 1),\n _createTextVNode(\"   \")\n ], 8, _hoisted_8),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).gst)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"td\", _hoisted_15, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ])),\n (_ctx.ifAnyPaidByPractice)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"table\", _hoisted_18, [\n _createElementVNode(\"tbody\", null, [\n _hoisted_19,\n _createElementVNode(\"tr\", null, [\n _hoisted_20,\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.totalAmountPaid)), 1)\n ])\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.paidItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, _toDisplayString(lineItem.name), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_24, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n (_ctx.getPayableItem('Membership').isPaidByPractice)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_25, [\n _hoisted_26,\n _createElementVNode(\"td\", _hoisted_27, _toDisplayString(_ctx.toCurrency(_ctx.membershipAmount)), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"td\", _hoisted_30, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.getTotal - _ctx.totalAmountPaid)), 1)\n ])\n ])\n ])\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.showNotificationBox)\n ? (_openBlock(), _createBlock(_component_AlertBoxTypeTwo, {\n key: 3,\n class: \"alert-box\",\n onClose: _cache[1] || (_cache[1] = $event => (_ctx.showNotificationBox = false))\n }, {\n header: _withCtx(() => [\n _hoisted_31\n ]),\n body: _withCtx(() => [\n _hoisted_32\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_33, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary\",\n onClick: _cache[0] || (_cache[0] = $event => {_ctx.showNotificationBox = !_ctx.showNotificationBox;})\n }, \" Continue \")\n ])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from 'vue-property-decorator';\nimport Popover from '@/shared/components/popover/index.vue';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport { Application } from '@/shared/modules/typescript-api-client/models';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from 'lodash';\nimport AlertBoxTypeTwo from '@/shared/components/alert-box-type-two/index.vue';\n\n@Options({\n props: {\n smAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n LoadingIndicator,\n AlertBoxTypeTwo,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SmPaymentDetails extends Vue {\n private smAppFormData!: any;\n private isSectionLoading!: boolean;\n private ai = new AppInsights();\n private loadingDataSet = true;\n private lineItems: any[] = [];\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showNotificationBox = false;\n private ifAnyPaidByPractice = false;\n\n mounted(): void {\n this.canGoNextCheck();\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await this.apiService.SmApiV2?.apiV2SmGetPaymentDetailsApplicationIdGet(\n this.onlineApplication.id,\n );\n\n this.smAppFormData.paymentDetails = resp.data.data;\n this.lineItems = orderBy(this.smAppFormData.paymentDetails.lineItems, ['order'], ['asc']);\n // check if any line item is paid by the practice\n this.ifAnyPaidByPractice = this.lineItems.some((x: any) => x.isPaidByPractice);\n\n this.showNotificationBox = this.ifAnyPaidByPractice;\n\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2,\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.smAppFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase(),\n );\n\n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0,\n };\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.getPayableItem(this.itemMembershipName).total > 0);\n }\n\n get itemMembershipName(): string {\n return 'SOLICITOR MEMBERSHIP ' + this.onlineApplication.applicationYearName;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get getTotal(): number {\n const items = this.smAppFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).total;\n }\n return _total;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get totalAmountPaid(): number {\n const items = this.smAppFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n if (items[i].isPaidByPractice) {\n _total += this.getPayableItem(items[i].name).total;\n }\n }\n return _total;\n }\n\n get paidItems(): any[] {\n return this.lineItems?.filter((x: any) => x.isPaidByPractice);\n }\n}\n","import { render } from \"./sm-payment-details.html?vue&type=template&id=535e2164&scoped=true&ts=true\"\nimport script from \"./sm-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./sm-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./sm-payment-details.scss?vue&type=style&index=0&id=535e2164&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-535e2164\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1efa6cfc\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sm-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","// import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class SmConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('smAppFormData');\n // store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./sm-confirmation.html?vue&type=template&id=1efa6cfc&scoped=true&ts=true\"\nimport script from \"./sm-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./sm-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./sm-confirmation.scss?vue&type=style&index=0&id=1efa6cfc&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1efa6cfc\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createVNode as _createVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, createStaticVNode as _createStaticVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-869bcae0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sm-application-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Application Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center mb-3\" }, \"Personal Details\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Full name\", -1))\nconst _hoisted_8 = { class: \"mb-3\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Email for Communication\", -1))\nconst _hoisted_10 = { class: \"mb-3\" }\nconst _hoisted_11 = { class: \"comm_email_main\" }\nconst _hoisted_12 = { class: \"comm_email_text\" }\nconst _hoisted_13 = { class: \"popover_item\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Phone\", -1))\nconst _hoisted_15 = { class: \"mb-3\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Mobile Phone\", -1))\nconst _hoisted_17 = { class: \"mb-3\" }\nconst _hoisted_18 = /*#__PURE__*/_createStaticVNode(\"

Declarations

By clicking “Next” I declare that:
  • The contents of this application are true and correct; and
  • I have read the Personal Information Collection Notice and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.
\", 1)\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1),\n _hoisted_9,\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"span\", _hoisted_12, _toDisplayString(_ctx.individualDetails.communicationEmail?.email), 1),\n _createElementVNode(\"span\", _hoisted_13, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail', 8)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", _hoisted_15, _toDisplayString(_ctx.individualDetails?.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails?.businessPhone?.phoneNumber), 1),\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, _toDisplayString(_ctx.individualDetails?.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails?.mobilePhone?.phoneNumber), 1)\n ])\n ]),\n _hoisted_18\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application, SmIndividualDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\n// import SmApplicationWording from '@/assets/config/sm-application-wording.json';\n\n@Options({\n props: {\n smAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SmApplicationDetails extends Vue {\n private smAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n // private declaration_check1_text = SmApplicationWording[0][\"application-details\"][\"declaration_check_1\"];\n // private declaration_check2_text = SmApplicationWording[0][\"application-details\"][\"declaration_check_2\"];\n\n private individualDetails: SmIndividualDetail = {};\n\n private loadingDataSet = false;\n // private declaration1 = null;\n // private declaration2 = null;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n await Promise.all([\n this.getSmIndividualDetails()\n ]);\n store.dispatch('setSmAppFormData', this.smAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async getSmIndividualDetails(): Promise {\n try {\n const _isRenewing = !!this.smAppFormData.individualDetails;\n const resp: any = await this.apiService.SmApi?.apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet(\n this.onlineApplication.id, !_isRenewing\n );\n this.individualDetails = resp.data.data;\n this.smAppFormData['smIndividualDetails'] = this.individualDetails;\n // this.initSync();\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err: any) {\n // if (!this.smAppFormData?.smIndividualDetails) {\n // this.smAppFormData['smIndividualDetails']['declaration1'] = null;\n // this.smAppFormData['smIndividualDetails']['declaration2'] = null;\n // }\n if (err.response?.data && err.response.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n // this.$router.push({ name: RouteN.Mars.Home.n });\n return Promise.reject(false);\n }\n }\n\n // private initSync(): void {\n // this.declaration1 = this.smAppFormData.smIndividualDetails.declaration1;\n // this.declaration2 = this.smAppFormData.smIndividualDetails.declaration2;\n // }\n\n // private syncData(): void {\n // try {\n // // if (!this.loadingDataSet) {\n // // this.smAppFormData.smIndividualDetails.declaration1 = this.declaration1;\n // // this.smAppFormData.smIndividualDetails.declaration2 = this.declaration2;\n // // }\n // } catch (err) {\n // console.log(err);\n // }\n // this.canGoNextCheck();\n // }\n\n\n private isValidateForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidateForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./sm-application-details.html?vue&type=template&id=869bcae0&scoped=true&ts=true\"\nimport script from \"./sm-application-details.ts?vue&type=script&lang=ts\"\nexport * from \"./sm-application-details.ts?vue&type=script&lang=ts\"\n\nimport \"./sm-application-details.scss?vue&type=style&index=0&id=869bcae0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-869bcae0\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d2cd5bec\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sm-overview mt-4\" }\nconst _hoisted_2 = { class: \"btn-bar right mb-2\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"json-content mt-4\"\n}\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.helpContent.isShow)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = true))\n }, \"Help\"))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.htmlContents_1)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.htmlContents_1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { innerHTML: _ctx.htmlContents_1 }, null, 8, _hoisted_4)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 2,\n onClose: _cache[2] || (_cache[2] = $event => (_ctx.showHelpScreen = false)),\n helpContent: _ctx.helpContent\n }, {\n header: _withCtx(() => [\n _hoisted_5\n ]),\n body: _withCtx(() => []),\n _: 1\n }, 8, [\"helpContent\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport SmApplicationWording from '@/assets/config/sm-application-wording.json';\n// import { RouteN } from \"@/shared/constants/route-name\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application, PageContent } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n components: {\n Popover,\n HelpScreen,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SmOverview extends Vue {\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private popovers: any[] = [];\n\n private htmlContents_1 = '';\n\n private htmlContents: string[] = [];\n\n private helpContent: PageContent = {};\n\n private contactUs() {\n window.open(UserDefine[0].contact_us_url, '_blank');\n }\n\n mounted(): void {\n window.scrollTo(0, 0);\n this.loadPageContents();\n setTimeout(() => {\n this.eventCtrl.emit('canGoNext', true);\n this.helpContent = this.$getPopover('Help', 23);\n }, 500);\n }\n\n private async loadPageContents() {\n console.log('Load Contents');\n this.loadingDataSet = false;\n this.htmlContents_1 = SmApplicationWording[0][\"overview\"][\"htmlContents\"].replaceAll('--[[ApplicationYearName]]--', this.onlineApplication.applicationYearName);\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n}\n\n","import { render } from \"./sm-overview.html?vue&type=template&id=d2cd5bec&scoped=true&ts=true\"\nimport script from \"./sm-overview.ts?vue&type=script&lang=ts\"\nexport * from \"./sm-overview.ts?vue&type=script&lang=ts\"\n\nimport \"./sm-overview.scss?vue&type=style&index=0&id=d2cd5bec&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d2cd5bec\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from 'vue-property-decorator';\nimport SwipeStepper from '@/shared/components/swipe-stepper/index.vue';\nimport LoadingSpinner from '@/shared/components/loading-spinner/index.vue';\nimport { RouteN } from '@/shared/constants/route-name';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\nimport {\n NavStep,\n NavStepStatusID,\n Section,\n Step,\n} from '@/shared/components/header-stepper/nav-step';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { PaymentTransaction } from '@/shared/models/payment-transaction';\nimport { PAYMENTAPP_URL } from '@/shared/config/config';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport SmPaymentDetails from '../sm-payment-details/index.vue';\nimport SmConfirmation from '../sm-confirmation/index.vue';\nimport SmApplicationDetails from '../sm-application-details/index.vue';\nimport SmOverview from '../sm-overview/index.vue';\nimport PaymentPopup from '../../payment-popup/index.vue';\nimport { Application, PageContent } from '@/shared/modules/typescript-api-client/models';\nimport { PopoverView } from '@/shared/components/popover/popover';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport PaymentModal from '../../payment-modal/index.vue';\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n SmApplicationDetails,\n SmConfirmation,\n SmPaymentDetails,\n SmOverview,\n PaymentPopup,\n ConfirmDialogue,\n LoadingIndicator,\n PaymentModal,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n },\n})\nexport default class SmApplication extends Vue {\n private ai = new AppInsights();\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getSmAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private helpContent: PageContent = {};\n\n private navSteps = [\n new NavStep(Step.applicationDetails, Section.applicationDetails),\n new NavStep(Step.payment, Section.payment),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private smAppFormData: any = {};\n private showPaymentPopup = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction();\n private disablePaymentPopupCloseBut = false;\n private validPaymentPage = false;\n\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'sm-payment';\n private amountPayable = 0;\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n private applyInternalPayment = false;\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n if (!_onlineApp.id) {\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Invalid Page entry, please choose an option from Portal home',\n );\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n window.addEventListener('message', this.receivedNotification);\n\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n this.loadPageContents();\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n window.removeEventListener('message', this.receivedNotification);\n }\n\n private receivedNotification(event: any): void {\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-sm-application-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n this.nextButtonText = 'Next';\n }\n\n switch (_section) {\n case Section.applicationDetails:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.payment:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(2);\n this.backButtonVisible = false;\n this.nextButtonText = 'Next';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone;\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done;\n }\n this.navSteps[n].status = NavStepStatusID.Current;\n // the confirmation page\n if (n === 2) {\n for (let i = 0; i < 2; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown;\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 8);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 24);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 25);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n\n switch (_section) {\n case Section.applicationDetails:\n // this.eventCtrl.emit('cancel-sm-application');\n this.$router.push({\n name: RouteN.Mars.SmApplication.n,\n query: { appId: this.$route.query.appId },\n });\n break;\n case Section.payment:\n this.navigate(this.navSteps[0]);\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setSmAppFormData', this.smAppFormData);\n const _section = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n this.checkConcurrentApplication();\n }\n\n switch (_section) {\n case Section.applicationDetails:\n this.saveSmApplicationDetails();\n break;\n case Section.payment:\n this.saveSmPaymentDetails();\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n }\n\n private async checkConcurrentApplication() {\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n await this.apiService.SmApi?.apiV1SmCheckSmConcurrentSessionApplicationIdGet(\n this.onlineApplication.id,\n );\n\n this.navigate(this.navSteps[0]);\n } catch (err: any) {\n this.errorLoadingDataSet = true;\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private async saveSmApplicationDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SmApi?.apiV1SmSaveApplicationDetailsPost(\n this.smAppFormData.smIndividualDetails,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Application details saved');\n this.navigate(this.navSteps[1]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Application details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveSmPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n let totalCost = 0;\n let ifAnyPaidByPractice = false;\n this.smAppFormData.paymentDetails?.lineItems.forEach((x: any) => {\n totalCost += x.total;\n });\n ifAnyPaidByPractice = this.smAppFormData.paymentDetails?.lineItems.some(\n (x: any) => x.isPaidByPractice,\n );\n this.amountPayable =\n totalCost -\n this.smAppFormData.paymentDetails?.lineItems\n .filter((x: any) => x.isPaidByPractice)\n .reduce((a: any, b: any) => a + b.total, 0);\n if (!ifAnyPaidByPractice || this.amountPayable === 0) {\n const resp: any = await this.apiService.SmApiV2?.apiV2SmSavePaymentDetailsPost(\n this.smAppFormData.paymentDetails,\n );\n if (resp.data.data.isRequiredToOpenPymtApp) {\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n } else {\n this.navigate(this.navSteps[2]);\n }\n } else {\n // internal payment\n this.applyInternalPayment = true;\n }\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private paymentConfirmed(): void {\n this.showPaymentPopup = false;\n this.navigate(this.navSteps[2]);\n }\n\n private getPopOverKeys(): void {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n private getPopover(pKey: string): PopoverView {\n const _popOver = this.popovers.filter((p) => {\n return p.popoverKey == pKey;\n })[0];\n return _popOver;\n }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n });\n }\n\n this.getPopOverKeys();\n\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private confirmCancelConcurrentApp() {\n this.loadingDataSet = true;\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm\n .show({\n title: 'You are already logged in elsewhere',\n message:\n 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n })\n .then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart();\n } else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n });\n }\n\n private async clearSessionAndStart(): Promise {\n try {\n this.loadingDataSet = true;\n await this.apiService.SmApi?.apiV1SmCancelSmApplicationApplicationIdGet(\n this.onlineApplication.id,\n );\n this.loadingDataSet = false;\n this.navigate(this.navSteps[0]);\n } catch {\n this.loadingDataSet = false;\n }\n }\n\n get isOverviewPage(): boolean {\n return !this.$route.query.sec && this.$route.name == RouteN.Mars.SmApplication.n;\n }\n\n get $Section() {\n return Section;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n}\n","import { render } from \"./sm-application.html?vue&type=template&id=9d9c584c&scoped=true&ts=true\"\nimport script from \"./sm-application.ts?vue&type=script&lang=ts\"\nexport * from \"./sm-application.ts?vue&type=script&lang=ts\"\n\nimport \"./sm-application.scss?vue&type=style&index=0&id=9d9c584c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-9d9c584c\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, createVNode as _createVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-688b1c02\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-application\" }\nconst _hoisted_2 = { class: \"container mt-4\" }\nconst _hoisted_3 = {\n key: 6,\n class: \"sar-application-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_SarOverview = _resolveComponent(\"SarOverview\")\n const _component_SarCurrentDetails = _resolveComponent(\"SarCurrentDetails\")\n const _component_SarApplicationDeclarations = _resolveComponent(\"SarApplicationDeclarations\")\n const _component_SarRenewalDeclarations = _resolveComponent(\"SarRenewalDeclarations\")\n const _component_SarPaymentDetails = _resolveComponent(\"SarPaymentDetails\")\n const _component_SarConfirmation = _resolveComponent(\"SarConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n const _component_PaymentModal = _resolveComponent(\"PaymentModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData || _ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _withDirectives(_createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true,\n showFaqBtn: true\n }, null, 8, [\"navSteps\"]), [\n [_vShow, !_ctx.isOverviewPage]\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.isOverviewPage)\n ? (_openBlock(), _createBlock(_component_SarOverview, {\n key: 0,\n sarAppFormData: _ctx.sarAppFormData,\n \"onUpdate:sarAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.sarAppFormData) = $event))\n }, null, 8, [\"sarAppFormData\"]))\n : (_ctx.currentSection === _ctx.$Section.currentDetails)\n ? (_openBlock(), _createBlock(_component_SarCurrentDetails, {\n key: 1,\n sarAppFormData: _ctx.sarAppFormData,\n \"onUpdate:sarAppFormData\": _cache[1] || (_cache[1] = $event => ((_ctx.sarAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[2] || (_cache[2] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"sarAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.applicationDeclarations)\n ? (_openBlock(), _createBlock(_component_SarApplicationDeclarations, {\n key: 2,\n sarAppFormData: _ctx.sarAppFormData,\n \"onUpdate:sarAppFormData\": _cache[3] || (_cache[3] = $event => ((_ctx.sarAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[4] || (_cache[4] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"sarAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.renewalDeclarations)\n ? (_openBlock(), _createBlock(_component_SarRenewalDeclarations, {\n key: 3,\n sarAppFormData: _ctx.sarAppFormData,\n \"onUpdate:sarAppFormData\": _cache[5] || (_cache[5] = $event => ((_ctx.sarAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[6] || (_cache[6] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"sarAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_SarPaymentDetails, {\n key: 4,\n sarAppFormData: _ctx.sarAppFormData,\n \"onUpdate:sarAppFormData\": _cache[7] || (_cache[7] = $event => ((_ctx.sarAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[8] || (_cache[8] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"sarAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_SarConfirmation, {\n key: 5,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[9] || (_cache[9] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[11] || (_cache[11] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ], 64)),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 2,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-sar-application-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[12] || (_cache[12] = $event => (_ctx.processNotification('close-payment-form')))\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512),\n (_ctx.applyInternalPayment && _ctx.amountPayable > 0)\n ? (_openBlock(), _createBlock(_component_PaymentModal, {\n key: 3,\n class: \"alert-box\",\n onClose: _cache[13] || (_cache[13] = $event => (_ctx.applyInternalPayment = false)),\n paymentFormData: _ctx.sarAppFormData,\n \"onUpdate:paymentFormData\": _cache[14] || (_cache[14] = $event => ((_ctx.sarAppFormData) = $event)),\n amountPayable: _ctx.amountPayable,\n \"onUpdate:amountPayable\": _cache[15] || (_cache[15] = $event => ((_ctx.amountPayable) = $event)),\n paymentAppName: _ctx.paymentAppName\n }, null, 8, [\"paymentFormData\", \"amountPayable\", \"paymentAppName\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, vModelRadio as _vModelRadio, withDirectives as _withDirectives, createVNode as _createVNode, createTextVNode as _createTextVNode, vModelText as _vModelText, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, Fragment as _Fragment, renderList as _renderList, vModelSelect as _vModelSelect, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4ddfab12\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-overview mt-4\" }\nconst _hoisted_2 = { class: \"btn-bar right mb-2\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"json-content mt-4\"\n}\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"note-of-change mt-3\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-2 mt-1\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note that any changes to your current Principal Place of Practice or Employment type will not affect the charged fee. This information is applicable throughout the Specialist Accreditation renewal process only.\")\n], -1))\nconst _hoisted_6 = { class: \"row\" }\nconst _hoisted_7 = { class: \"col-12\" }\nconst _hoisted_8 = { class: \"radio-button-group\" }\nconst _hoisted_9 = { class: \"radio-button\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_11 = { class: \"radio-button\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_13 = {\n key: 0,\n class: \"col-12 pl-5\"\n}\nconst _hoisted_14 = { class: \"radio-button-group\" }\nconst _hoisted_15 = { class: \"radio-button\" }\nconst _hoisted_16 = { class: \"radio-button-elmt\" }\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_18 = { class: \"radio-text\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2 pl-5 mt-2 mb-2 col-12 note-of-change\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-2 mt-1\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"Applications for a leave of Absence are \"),\n /*#__PURE__*/_createElementVNode(\"strong\", null, \"not\"),\n /*#__PURE__*/_createTextVNode(\" automatic and practitioners will be informed of the outcome.\")\n ])\n], -1))\nconst _hoisted_20 = { class: \"ml-2 pl-5\" }\nconst _hoisted_21 = { class: \"input-box col-5\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", { class: \"field_name\" }, \"Leave start date - Leave return date\", -1))\nconst _hoisted_23 = { class: \"mt-2 col-8\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Reason(s) for seeking leave\", -1))\nconst _hoisted_25 = { class: \"radio-button\" }\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"radio-button-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Apply for Non-Renewal\")\n], -1))\nconst _hoisted_27 = {\n key: 1,\n class: \"ml-2 pl-5 col-6\"\n}\nconst _hoisted_28 = { class: \"dropdown-menu\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", { class: \"field_name\" }, \"Non-renewing Reason\", -1))\nconst _hoisted_30 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: null,\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_32 = [\"value\"]\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.helpContent.isShow)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = true))\n }, \"Help\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.sarFAQ()))\n }, \"FAQ\")\n ]),\n (!_ctx.htmlContents_1)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.htmlContents_1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { innerHTML: _ctx.htmlContents_1 }, null, 8, _hoisted_4),\n _hoisted_5\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"label\", _hoisted_9, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.renewingType) = $event)),\n value: 0,\n name: \"overview\"\n }, null, 512), [\n [_vModelRadio, _ctx.renewingType]\n ]),\n _hoisted_10\n ]),\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = $event => ((_ctx.renewingType) = $event)),\n value: 1,\n name: \"overview\"\n }, null, 512), [\n [_vModelRadio, _ctx.renewingType]\n ]),\n _hoisted_12\n ]),\n (_ctx.renewingType === 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"label\", _hoisted_15, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no_opt1\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.noRenewApplyType) = $event)),\n value: true,\n name: \"no-apply-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.noRenewApplyType]\n ]),\n _createElementVNode(\"div\", _hoisted_16, [\n _hoisted_17,\n _createElementVNode(\"span\", _hoisted_18, [\n _createTextVNode(\"Apply for Leave of Absence  \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('Leave of Absence', 30)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n (_ctx.noRenewApplyType == true)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_19,\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createVNode(_component_date_picker, {\n range: \"\",\n format: \"DD/MM/YYYY\",\n value: _ctx.dateRangeSelected,\n \"onUpdate:value\": _cache[6] || (_cache[6] = $event => ((_ctx.dateRangeSelected) = $event)),\n \"input-class\": \"normal\"\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_23, [\n _hoisted_24,\n _withDirectives(_createElementVNode(\"textarea\", {\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.reasonSeekingLeave) = $event)),\n style: {\"width\":\"100%\",\"height\":\"8rem\",\"padding\":\"0.5rem\",\"font-family\":\"var(--font-body-text)\"},\n maxlength: \"5000\",\n placeholder: \"Enter note (5000 characters limit)\"\n }, null, 512), [\n [_vModelText, _ctx.reasonSeekingLeave]\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"footnote\", [_ctx.reasonSeekingLeave?.length === 5000 ? 'full' : '']])\n }, _toDisplayString(_ctx.reasonSeekingLeave?.length || 0) + \"/5000 characters \", 3)\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", _hoisted_25, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no_opt2\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.noRenewApplyType) = $event)),\n value: false,\n name: \"no-apply-option\"\n }, null, 512), [\n [_vModelRadio, _ctx.noRenewApplyType]\n ]),\n _hoisted_26\n ]),\n (_ctx.noRenewApplyType == false)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_27, [\n _createElementVNode(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"div\", _hoisted_30, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => ((_ctx.selectedReason) = $event))\n }, [\n _hoisted_31,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.nonRenewalReasons, (reason) => {\n return (_openBlock(), _createElementBlock(\"option\", { value: reason }, _toDisplayString(reason.name), 9, _hoisted_32))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.selectedReason]\n ])\n ]),\n _hoisted_33\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 2,\n onClose: _cache[10] || (_cache[10] = $event => (_ctx.showHelpScreen = false)),\n helpContent: _ctx.helpContent\n }, {\n header: _withCtx(() => [\n _hoisted_34\n ]),\n body: _withCtx(() => []),\n _: 1\n }, 8, [\"helpContent\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport SarApplicationWording from '@/assets/config/sar-application-wording.json';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application, NonRenewalReason, PageContent, SarRecordLeaveOfAbsenceRequest, SarRecordNonRenewalDetailRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n sarAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['sarAppFormData'],\n components: {\n Popover,\n HelpScreen,\n LoadingIndicator,\n DatePicker,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SarOverview extends Vue {\n private sarAppFormData!: any;\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private popovers: any[] = [];\n\n private htmlContents_1 = '';\n\n private renewingType = null as any;\n private noRenewApplyType = null as any;\n \n private leaveOfAbsenceText = '';\n\n private helpContent: PageContent = {};\n private nonRenewalReasons: NonRenewalReason[] = [];\n private selectedReason: NonRenewalReason = null as any;\n // private leaveStartDate: Date | null = null;\n // private leaveReturnDate: Date | null = null;\n private dateRangeSelected: [Date | null, Date | null] = [null, null];\n private reasonSeekingLeave = '';\n \n private contactUs(): void {\n window.open(UserDefine[0].contact_us_url, '_blank');\n }\n\n private sarFAQ(): void {\n window.open(UserDefine[0].faq_sar_url, '_blank');\n }\n\n @Watch('renewingType')\n private onRenewingTypeChanged(): void {\n this.sarAppFormData['sarOverview']['decision'] = this.renewingType;\n if (this.renewingType == 0) {\n this.noRenewApplyType = null as any;\n this.selectedReason = null as any;\n this.dateRangeSelected = [null, null];\n this.reasonSeekingLeave = null as any;\n }\n this.$emit('sarAppFormData', this.sarAppFormData);\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n @Watch('noRenewApplyType')\n private onNoRenewApplyTypeChanged(): void {\n this.sarAppFormData['sarOverview']['nonRenewType'] = this.noRenewApplyType;\n if (this.noRenewApplyType) {\n this.selectedReason = null as any;\n } else if (!this.noRenewApplyType && this.noRenewApplyType !== null) {\n this.dateRangeSelected = [null, null];\n this.reasonSeekingLeave = null as any;\n }\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n @Watch('selectedReason')\n private onSelectedReasonChanged(): void {\n const data: SarRecordNonRenewalDetailRequest = {\n applicationId: this.onlineApplication.id,\n isNewApplication:\ttrue,\n nonRenewalReasonId: this.selectedReason?.id ?? null,\n } \n this.sarAppFormData['sarOverview']['nonRenewalDetails'] = data;\n this.$emit('sarAppFormData', this.sarAppFormData);\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n @Watch('dateRangeSelected')\n private onLeaveStartDateChanged(): void {\n const data: SarRecordLeaveOfAbsenceRequest = {\n applicationId: this.onlineApplication.id,\n leaveStartDate: this.dateRangeSelected[0] ?? null,\n leaveReturnDate: this.dateRangeSelected[1] ?? null,\n reasons: this.reasonSeekingLeave,\n }\n this.sarAppFormData['sarOverview']['leaveOfAbsence'] = data;\n this.$emit('sarAppFormData', this.sarAppFormData);\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n // @Watch('leaveStartDate')\n // private onLeaveStartDateChanged(): void {\n // const data: SarRecordLeaveOfAbsenceRequest = {\n // applicationId: this.onlineApplication.id,\n // leaveStartDate: this.leaveStartDate,\n // leaveReturnDate: this.leaveReturnDate,\n // reasons: this.reasonSeekingLeave,\n // }\n // this.sarAppFormData['sarOverview']['leaveOfAbsence'] = data;\n // this.$emit('sarAppFormData', this.sarAppFormData);\n // this.eventCtrl.emit('canGoNext', this.isValidForm());\n // }\n\n // @Watch('leaveReturnDate')\n // private onLeaveReturnDateChanged(): void {\n // const data: SarRecordLeaveOfAbsenceRequest = {\n // applicationId: this.onlineApplication.id,\n // leaveStartDate: this.leaveStartDate,\n // leaveReturnDate: this.leaveReturnDate,\n // reasons: this.reasonSeekingLeave,\n // }\n // this.sarAppFormData['sarOverview']['leaveOfAbsence'] = data;\n // this.$emit('sarAppFormData', this.sarAppFormData);\n // this.eventCtrl.emit('canGoNext', this.isValidForm());\n // }\n\n @Watch('reasonSeekingLeave')\n private onReasonSeekingLeaveChanged(): void {\n const data: SarRecordLeaveOfAbsenceRequest = {\n applicationId: this.onlineApplication.id,\n leaveStartDate: this.dateRangeSelected[0] ?? null,\n leaveReturnDate: this.dateRangeSelected[1] ?? null,\n reasons: this.reasonSeekingLeave,\n }\n this.sarAppFormData['sarOverview']['leaveOfAbsence'] = data;\n this.$emit('sarAppFormData', this.sarAppFormData);\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n created(): void {\n this.sarAppFormData['sarOverview'] = {\n decision: null,\n nonRenewType: null,\n leaveOfAbsence: null,\n };\n this.$emit('sarAppFormData', this.sarAppFormData);\n }\n\n mounted(): void {\n window.scrollTo(0, 0);\n this.loadPageContents();\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetSpecAccNonRenewalReasonsGet()\n ]);\n this.nonRenewalReasons = resp[0].data.data;\n } catch (err) {\n console.log(err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private async loadPageContents() {\n this.loadingDataSet = false;\n this.htmlContents_1 = SarApplicationWording[0].overview.htmlContents.replaceAll('--[[ApplicationYearName]]--', this.onlineApplication.applicationYearName);\n this.leaveOfAbsenceText = SarApplicationWording[0].overview.leaveOfAbsence;\n this.helpContent = this.$getPopover('Help', 30);\n }\n\n private isValidForm(): boolean {\n if (this.renewingType == 0) {\n return true;\n } else if (this.renewingType == 1) {\n if (this.noRenewApplyType == true) {\n return this.isValidLeaveOfAbsenceForm();\n } else if (this.noRenewApplyType == false && this.noRenewApplyType != null) {\n return this.isValidNonRenewalForm();\n } else {\n return false;\n }\n } else {\n return false;\n }\n }\n\n private isValidLeaveOfAbsenceForm(): boolean {\n return this.dateRangeSelected[0] != null && this.dateRangeSelected[1] != null &&\n this.reasonSeekingLeave != null && this.reasonSeekingLeave?.trim()?.length > 0;\n }\n\n private isValidNonRenewalForm(): boolean {\n return this.selectedReason != null;\n }\n\n // private initData(): void {\n // }\n\n // private syncData(): void {\n\n // }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./sar-overview.html?vue&type=template&id=4ddfab12&scoped=true&ts=true\"\nimport script from \"./sar-overview.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-overview.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-overview.scss?vue&type=style&index=0&id=4ddfab12&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4ddfab12\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20fc3ffe\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-current-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Current Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"row main-content\"\n}\nconst _hoisted_4 = { class: \"col-4 pa-3\" }\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center\" }, \"Area of Law\", -1))\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = { class: \"col-8\" }\nconst _hoisted_8 = { class: \"col-6 left-side pl-3 pr-2\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mt-2 mb-2\" }, \"Personal Details\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"LawID Number\", -1))\nconst _hoisted_11 = { class: \"mb-3\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Full name\", -1))\nconst _hoisted_13 = { class: \"mb-3\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Email for Communication\", -1))\nconst _hoisted_15 = { class: \"mb-3\" }\nconst _hoisted_16 = { class: \"comm_email_main\" }\nconst _hoisted_17 = { class: \"comm_email_text\" }\nconst _hoisted_18 = { class: \"popover_item\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Business Phone\", -1))\nconst _hoisted_20 = { class: \"mb-3\" }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Mobile Phone\", -1))\nconst _hoisted_22 = { class: \"mb-3\" }\nconst _hoisted_23 = { class: \"col-6 right-side pl-3 pr-3\" }\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mt-2 mb-2\" }, \"Practice Details\", -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Principal Place of Practice\", -1))\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Name of Law Practice / Employer / Entity\", -1))\nconst _hoisted_28 = { class: \"mb-3\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Employment Status\", -1))\nconst _hoisted_30 = { class: \"mb-3\" }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Law Practice / Employer / Entity Address\", -1))\nconst _hoisted_32 = { class: \"mb-3\" }\nconst _hoisted_33 = {\n key: 1,\n class: \"left\"\n}\nconst _hoisted_34 = { class: \"col-12 radios\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-3\" }, \"Have your details changed?\", -1))\nconst _hoisted_36 = { class: \"radio-button-group\" }\nconst _hoisted_37 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_38 = { class: \"radio-button col-3\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_40 = {\n class: \"col-2 ml-0\",\n style: {\"min-width\":\"270px\"}\n}\nconst _hoisted_41 = { class: \"radio-button\" }\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_43 = {\n key: 0,\n class: \"col-12 ma-3\"\n}\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"mailto:registry@lawsociety.com.au\"\n}, \"registry@lawsociety.com.au\", -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n (_ctx.currentDetails?.areaOfLaws?.length > 0)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.currentDetails.areaOfLaws, (area) => {\n return (_openBlock(), _createElementBlock(\"li\", null, _toDisplayString(area.description), 1))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _hoisted_9,\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.currentDetails.lawId), 1),\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, _toDisplayString(_ctx.currentDetails.title?.name) + \" \" + _toDisplayString(_ctx.currentDetails.firstName) + \" \" + _toDisplayString(_ctx.currentDetails.otherName) + \" \" + _toDisplayString(_ctx.currentDetails.surname), 1),\n _hoisted_14,\n _createElementVNode(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"span\", _hoisted_17, _toDisplayString(_ctx.currentDetails.communicationEmail?.email), 1),\n _createElementVNode(\"span\", _hoisted_18, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('RegulatoryCommunicationsEmail', 10)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _hoisted_19,\n _createElementVNode(\"div\", _hoisted_20, _toDisplayString(_ctx.currentDetails?.businessPhone?.phoneNumber ? _ctx.currentDetails?.businessPhone?.phoneAreaCode + ' ' + _ctx.currentDetails?.businessPhone?.phoneNumber : 'No record'), 1),\n _hoisted_21,\n _createElementVNode(\"div\", _hoisted_22, _toDisplayString(_ctx.currentDetails?.mobilePhone?.phoneNumber ?? 'No record'), 1)\n ]),\n _createElementVNode(\"div\", _hoisted_23, [\n _hoisted_24,\n (_ctx.currentDetails?.practice?.length > 0)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_25,\n _hoisted_26,\n _hoisted_27,\n _createElementVNode(\"div\", _hoisted_28, _toDisplayString(_ctx.currentDetails?.practice[0]?.name), 1),\n _hoisted_29,\n _createElementVNode(\"div\", _hoisted_30, _toDisplayString(_ctx.currentDetails?.practice[0]?.employmentStatus.name), 1),\n _hoisted_31,\n _createElementVNode(\"div\", _hoisted_32, _toDisplayString(_ctx.currentDetails?.practice[0]?.mainAddress.fullAddress), 1)\n ], 64))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_33, \"Our records show you are not recorded with a Law Practice / Employer / Entity\"))\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _hoisted_35,\n _createElementVNode(\"div\", _hoisted_36, [\n _createElementVNode(\"span\", _hoisted_37, [\n _createElementVNode(\"label\", _hoisted_38, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n value: true,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.detailsChanged) = $event)),\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.detailsChanged]\n ]),\n _hoisted_39\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_40, [\n _createElementVNode(\"label\", _hoisted_41, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.detailsChanged) = $event)),\n value: false,\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.detailsChanged]\n ]),\n _hoisted_42\n ])\n ])\n ]),\n (_ctx.detailsChanged)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_43, [\n _createTextVNode(\"Please contact the Registry department at \"),\n _hoisted_44,\n _createTextVNode(\" to update your details before renewing your specialist accreditation\")\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\n\n@Options({\n props: {\n sarAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SarCurrentDetails extends Vue {\n private sarAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private currentDetails: any = {};\n\n private detailsChanged = null as any;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('detailsChanged')\n private ondetailsChangedOptionChanged(): void {\n this.syncData();\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([this.getRecordCurrentDetails()]);\n store.dispatch('setSarAppFormData', this.sarAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async getRecordCurrentDetails(): Promise {\n try {\n const _isRenewing = !!this.sarAppFormData.currentDetails;\n const resp: any = await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet(\n this.onlineApplication.id, !_isRenewing\n );\n this.currentDetails = resp.data.data;\n this.sarAppFormData['currentDetails'] = this.currentDetails;\n this.initSync();\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err: any) {\n console.log(err);\n if (err.response?.data && err.response.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n return Promise.reject(false);\n }\n }\n\n private initSync(): void {\n this.detailsChanged = this.sarAppFormData.currentDetails.sarApplication.isCurrentDetailsChanged ?? null;\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n this.sarAppFormData.currentDetails.sarApplication.isCurrentDetailsChanged = this.detailsChanged;\n }\n } catch (err) {\n console.log(err);\n }\n this.canGoNextCheck();\n }\n\n\n private isValidForm(): boolean {\n return this.detailsChanged != null;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./sar-current-details.html?vue&type=template&id=20fc3ffe&scoped=true&ts=true\"\nimport script from \"./sar-current-details.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-current-details.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-current-details.scss?vue&type=style&index=0&id=20fc3ffe&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-20fc3ffe\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-28a89f9a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","// import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class SarConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('sarAppFormData');\n // store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./sar-confirmation.html?vue&type=template&id=28a89f9a&scoped=true&ts=true\"\nimport script from \"./sar-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-confirmation.scss?vue&type=style&index=0&id=28a89f9a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-28a89f9a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-9a6ca910\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Total Price (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = [\"data-label\"]\nconst _hoisted_9 = { class: \"hide-in-mobile mr-1\" }\nconst _hoisted_10 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_12 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_13 = { class: \"total\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total bold\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_15 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"payment-header\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Practice Payment Breakdown\")\n], -1))\nconst _hoisted_17 = { class: \"calculate-paid mt-0\" }\nconst _hoisted_18 = { class: \"paid-table mb-4\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"td\", {\n colspan: \"4\",\n class: \"pa-2\",\n style: {\"background-color\":\"var(--ls-sandstone-light)\"}\n }, [\n /*#__PURE__*/_createTextVNode(\" Please note: This is \"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"NOT\"),\n /*#__PURE__*/_createTextVNode(\" a valid application for the purposes of the legal profession legislation until payment is received by the Law Society. If you ceased with your employer, it is your responsibility to ensure payment has been made. \")\n ])\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount paid by Practice / Employer\")\n], -1))\nconst _hoisted_21 = { class: \"currency right pr-4\" }\nconst _hoisted_22 = { class: \"desc\" }\nconst _hoisted_23 = { class: \"pl-4\" }\nconst _hoisted_24 = { class: \"currency right pr-4\" }\nconst _hoisted_25 = { key: 0 }\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", { class: \"desc\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"pl-4\" }, \"Membership\")\n], -1))\nconst _hoisted_27 = { class: \"currency right pr-4\" }\nconst _hoisted_28 = { class: \"border-top\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount paid by you using card\")\n], -1))\nconst _hoisted_30 = { class: \"currency right pr-4\" }\nconst _hoisted_31 = { class: \"desc\" }\nconst _hoisted_32 = { class: \"pl-4\" }\nconst _hoisted_33 = { class: \"currency right pr-4\" }\nconst _hoisted_34 = { class: \"amount-payable\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"desc\",\n style: {\"font-size\":\"larger\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"\" }, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Amount Payable\")\n ])\n], -1))\nconst _hoisted_36 = {\n class: \"currency right pr-4\",\n style: {\"font-size\":\"larger\"}\n}\nconst _hoisted_37 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"center\" }, \"Notification\", -1))\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \" Your employer has already advised on the fees they will cover for your online application. You are still required to complete the online application. If you have any questions or need further information about the payments made, kindly contact your employer before finalising your application. \"),\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-weight\":\"400\"} }, \"Select the Continue button to proceed.\")\n], -1))\nconst _hoisted_39 = { class: \"right\" }\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_AlertBoxTypeTwo = _resolveComponent(\"AlertBoxTypeTwo\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.lineItems, (lI) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", {\n \"data-label\": lI.name,\n class: \"desc\"\n }, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(lI.name), 1),\n _createTextVNode(\"   \")\n ], 8, _hoisted_8),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lI.name).amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lI.name).gst)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lI.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"td\", _hoisted_15, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ])),\n (_ctx.ifAnyPaidByPractice)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"table\", _hoisted_18, [\n _createElementVNode(\"tbody\", null, [\n _hoisted_19,\n _createElementVNode(\"tr\", null, [\n _hoisted_20,\n _createElementVNode(\"td\", _hoisted_21, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.totalAmountPaid)), 1)\n ])\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.paidItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, _toDisplayString(lineItem.name), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_24, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n (_ctx.getPayableItem('Membership').isPaidByPractice)\n ? (_openBlock(), _createElementBlock(\"tr\", _hoisted_25, [\n _hoisted_26,\n _createElementVNode(\"td\", _hoisted_27, _toDisplayString(_ctx.toCurrency(_ctx.membershipAmount)), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"tr\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"td\", _hoisted_30, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.getTotal - _ctx.totalAmountPaid)), 1)\n ])\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.unpaidItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", _hoisted_31, [\n _createElementVNode(\"div\", _hoisted_32, _toDisplayString(lineItem.name), 1)\n ]),\n _createElementVNode(\"td\", _hoisted_33, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", _hoisted_34, [\n _hoisted_35,\n _createElementVNode(\"td\", _hoisted_36, [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.toCurrency(_ctx.getTotal - _ctx.totalAmountPaid)), 1)\n ])\n ])\n ])\n ])\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n (_ctx.showNotificationBox)\n ? (_openBlock(), _createBlock(_component_AlertBoxTypeTwo, {\n key: 3,\n class: \"alert-box\",\n onClose: _cache[1] || (_cache[1] = $event => (_ctx.showNotificationBox = false))\n }, {\n header: _withCtx(() => [\n _hoisted_37\n ]),\n body: _withCtx(() => [\n _hoisted_38\n ]),\n footer: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_39, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary\",\n onClick: _cache[0] || (_cache[0] = $event => {_ctx.showNotificationBox = !_ctx.showNotificationBox;})\n }, \" Continue \")\n ])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from 'vue-property-decorator';\nimport Popover from '@/shared/components/popover/index.vue';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { EventEmitter } from 'events';\nimport store from '@/shared/store';\nimport { Application, LineItem } from '@/shared/modules/typescript-api-client/models';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from 'lodash';\nimport AlertBoxTypeTwo from '@/shared/components/alert-box-type-two/index.vue';\n\n@Options({\n props: {\n sarAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n LoadingIndicator,\n AlertBoxTypeTwo,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SarPaymentDetails extends Vue {\n private sarAppFormData!: any;\n private isSectionLoading!: boolean;\n private ai = new AppInsights();\n private loadingDataSet = true;\n\n private showNotificationBox = false;\n private ifAnyPaidByPractice = false;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n mounted(): void {\n this.canGoNextCheck();\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any =\n await this.apiService.SpecAccRenewApiV2?.apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet(\n this.onlineApplication.id,\n );\n this.sarAppFormData.paymentDetails = resp.data.data;\n\n // check if any line item is paid by the practice\n this.ifAnyPaidByPractice = this.lineItems.some((x: any) => x.isPaidByPractice);\n\n this.showNotificationBox = this.ifAnyPaidByPractice;\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2,\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.sarAppFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase(),\n );\n\n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0,\n };\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get item1Name(): string {\n return 'Criminal Law';\n }\n\n get lineItems(): LineItem[] {\n return orderBy(this.sarAppFormData.paymentDetails.lineItems, ['order'], 'asc') || [];\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n get getTotal(): number {\n let total = 0;\n this.lineItems.forEach((x) => {\n total += x.total;\n });\n return total;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get totalAmountPaid(): number {\n const items = this.sarAppFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n if (items[i].isPaidByPractice) {\n _total += this.getPayableItem(items[i].name).total;\n }\n }\n return _total;\n }\n\n get paidItems(): any[] {\n return this.lineItems?.filter((x: any) => x.isPaidByPractice);\n }\n\n get unpaidItems(): any[] {\n return this.lineItems?.filter((x: any) => !x.isPaidByPractice);\n }\n}\n","import { render } from \"./sar-payment-details.html?vue&type=template&id=9a6ca910&scoped=true&ts=true\"\nimport script from \"./sar-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-payment-details.scss?vue&type=style&index=0&id=9a6ca910&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-9a6ca910\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-15903e70\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-renewal-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Renewal Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"col-12 declarations mt-4\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createTextVNode(\" By clicking “Next” I declare that: \"),\n _hoisted_4\n ]))\n ]))\n}","import { Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\n// import { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport DatePicker from 'vue-datepicker-next';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\n\n@Options({\n props: {\n pcrFormData: Object,\n sarAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop,\n DatePicker,\n ConfirmDialogue\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class SarRenewalDeclarations extends Vue {\n private sarAppFormData!: any;\n private isSectionLoading!: boolean;\n private pcrFormData!: any;\n\n private ai = new AppInsights;\n private isPcrApp = false;\n\n // @Inject({ from: 'apiService', default: new MARSApi() })\n // private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n // private uploading = false;\n // private fileList: Array = [];\n // private applicationTrueCorrect = null as any;\n // private adverseAction = null as any;\n // private declarationDate = null as any;\n\n // private renewalDeclarationForm: any = {};\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n // @Watch('adverseAction')\n // private onAdverseActionChanged(): void {\n // if (!this.adverseAction) {\n // this.renewalDeclarationForm.adverseActionFiles = [];\n // }\n // this.syncData();\n // }\n\n // @Watch('applicationTrueCorrect')\n // private onApplicationTrueCorrectChanged(): void {\n // this.syncData();\n // }\n\n // @Watch('declarationDate')\n // private onDeclarationDateChanged(): void {\n // this.syncData();\n // }\n\n // @Watch('renewalDeclarationForm.adverseActionFiles.length')\n // private adverseActionFileListChanged(): void {\n // this.syncData();\n // }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.isPcrApp = this.pcrFormData?.appId > 0;\n // this.preloadData();\n this.canGoNextCheck();\n }\n\n\n // private async preloadData(): Promise {\n // if (this.isPcrApp) {\n // const recordLinkedApplicationId = this.pcrFormData?.preferenceDetail?.recordLinkedApplication?.linkedApplicationId;\n // try {\n // this.loadingDataSet = true;\n // const resp: any = await Promise.all([\n // this.apiService.PcRenewApi?.apiV1PcRenewGetRenewalDeclarationLinkedApplicationIdGet(recordLinkedApplicationId),\n // ]);\n // this.pcrFormData['sarRenewalDeclaration'] = resp[0].data.data;\n // this.initSync();\n // store.dispatch('setPcrFormData', this.pcrFormData);\n // } catch (err) {\n // console.log(err);\n // } finally {\n // this.canGoNextCheck();\n // this.loadingDataSet = false;\n // }\n // } else {\n // try {\n // this.loadingDataSet = true;\n // // const resp: any = await Promise.all([\n // // this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewGetRenewalDeclarationApplicationIdGet(this.onlineApplication.id)\n // // ]);\n // // this.sarAppFormData['sarRenewalDeclaration'] = resp[0].data.data;\n // this.initSync();\n // store.dispatch('setSarAppFormData', this.sarAppFormData);\n // } catch (err) {\n // console.log(err);\n // } finally {\n // this.canGoNextCheck();\n // this.loadingDataSet = false;\n // }\n // }\n\n // }\n\n // private initSync(): void {\n // if (this.isPcrApp) {\n // this.renewalDeclarationForm = JSON.parse(JSON.stringify(this.pcrFormData['sarRenewalDeclaration']));\n // } else {\n // this.renewalDeclarationForm = JSON.parse(JSON.stringify(this.sarAppFormData['sarRenewalDeclaration']));\n // }\n\n // // if (!this.renewalDeclarationForm.adverseActionFiles) {\n // // this.renewalDeclarationForm.adverseActionFiles = [];\n // // }\n\n // // this.adverseAction = this.renewalDeclarationForm.renewalDeclarationFlag1 ?? null;\n // // this.applicationTrueCorrect = this.renewalDeclarationForm.renewalDeclarationFlag2 ?? null;\n\n // }\n\n // private syncData(): void {\n // try {\n // if (!this.loadingDataSet) {\n // this.renewalDeclarationForm.renewalDeclarationFlag1 = this.adverseAction;\n // this.renewalDeclarationForm.renewalDeclarationFlag2 = this.applicationTrueCorrect;\n // this.renewalDeclarationForm.declarationDate = this.declarationDate;\n // if (this.isPcrApp) {\n // this.pcrFormData['sarRenewalDeclaration'] = this.renewalDeclarationForm;\n // }\n // else {\n // this.sarAppFormData['sarRenewalDeclaration'] = this.renewalDeclarationForm;\n // }\n // }\n // } catch (err) {\n // console.log(err);\n // }\n // this.canGoNextCheck();\n // }\n\n // private fileListChanged(fileList: Array): void {\n // this.fileList = fileList;\n // this.uploadAllFiles(fileList, 4);\n // this.fileList = [];\n // }\n\n private isValidForm(): boolean {\n return true;\n }\n\n // private isAdverseActionValidForm(): boolean {\n // if (this.adverseAction == null) {\n // return false;\n // } else if (this.adverseAction != null && this.adverseAction == false) {\n // return true;\n // } else if ((this.adverseAction != null && this.adverseAction == true) &&\n // this.renewalDeclarationForm.adverseActionFiles.length > 0) {\n // return true;\n // } else {\n // return false;\n // }\n // }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n // private async uploadAllFiles(fileList: Array, specAccFileType: number): Promise {\n // const allRequests: Array> = [];\n // this.uploading = true;\n // try {\n // if (fileList.length > 0) {\n // fileList.forEach((x) => allRequests.push(this.uploadFile(x, specAccFileType)));\n // await Promise.all(allRequests);\n // this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n // }\n // } catch (err: any) {\n // this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n // this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n // } finally {\n // this.syncData();\n // this.uploading = false;\n // }\n // }\n\n // private async uploadFile(file: File, specAccFileType: number): Promise {\n // const _applicationId = this.isPcrApp ? this.pcrFormData?.preferenceDetail?.recordLinkedApplication?.linkedApplicationId : this.onlineApplication.id;\n\n // try {\n // const fileStr = await this.fileToString(file);\n // const body = {\n // id: 0,\n // fileName: file.name,\n // fileExtension: file.name,\n // fileDataUrl: fileStr,\n // seed: 0,\n // applicationId: _applicationId,\n // specAccFileTypeId: specAccFileType,\n // pcRenewLinkedApplicationFileTypeId: specAccFileType,\n // };\n\n // let resp: any;\n // if (this.isPcrApp) {\n // resp = await this.apiService.FileApi?.apiV1FileSavePcRenewLinkedApplicationFilePost(body);\n // } else {\n // resp = await this.apiService.FileApi?.apiV1FileSaveSpecAccFilePost(body);\n // }\n // switch (specAccFileType) {\n // case 4:\n // this.renewalDeclarationForm.adverseActionFiles.push({\n // id: resp.data.data.data,\n // fileName: file.name,\n // fileExtension: file.name,\n // // fileDataUrl: fileStr,\n // applicationId: this.onlineApplication.id,\n // })\n // break;\n // }\n\n // return Promise.resolve(true);\n // } catch (err) {\n // console.log(err);\n // return Promise.resolve(false);\n // }\n // }\n\n // private fileToString(file: File): Promise {\n // return new Promise((resolve, reject) => {\n // const reader = new FileReader();\n // reader.readAsDataURL(file);\n // reader.onload = () => {\n // return resolve(reader.result as string);\n // };\n\n // reader.onabort = () => {\n // return reject();\n // }\n\n // reader.onerror = () => {\n // return reject();\n // }\n // });\n // }\n\n // private deleteFile(id: number) {\n // const _fileIdToDelete = id;\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Delete File',\n // message: 'Are you sure you want to delete this file?',\n // okButton: 'Delete',\n // cancelButton: 'Cancel',\n // }).then((res: any) => {\n // if (res) {\n // this.deleteFileFromServer(_fileIdToDelete);\n // }\n // })\n // }\n\n // private async deleteFileFromServer(id: number): Promise {\n // let files: any[] = [];\n // files = this.renewalDeclarationForm.adverseActionFiles;\n // try {\n // const resp: any = await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id);\n // for (let i = 0; i < files.length; i++) {\n // if (files[i].id === id) {\n // files.splice(i, 1);\n // }\n // }\n // this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n\n // } catch (err) {\n // this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n // this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n\n // } finally {\n // this.canGoNextCheck();\n // }\n // }\n\n // private notToday(date: Date) {\n // const today = new Date();\n // today.setHours(0, 0, 0, 0);\n // return date > today || date < today;\n // }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./sar-renewal-declarations.html?vue&type=template&id=15903e70&scoped=true&ts=true\"\nimport script from \"./sar-renewal-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-renewal-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-renewal-declarations.scss?vue&type=style&index=0&id=15903e70&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-15903e70\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from 'vue-property-decorator';\nimport SwipeStepper from '@/shared/components/swipe-stepper/index.vue';\nimport LoadingSpinner from '@/shared/components/loading-spinner/index.vue';\nimport { RouteN } from '@/shared/constants/route-name';\nimport store from '@/shared/store';\nimport { EventEmitter } from 'events';\nimport {\n NavStep,\n NavStepStatusID,\n Section,\n Step,\n} from '@/shared/components/header-stepper/nav-step';\nimport { MARSApi } from '@/shared/modules/mars-api';\nimport { AppInsights } from '@/mars-app/appInsights';\nimport { PaymentTransaction } from '@/shared/models/payment-transaction';\nimport { PAYMENTAPP_URL } from '@/shared/config/config';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport SarOverview from '../sar-overview/index.vue';\nimport PaymentPopup from '../../payment-popup/index.vue';\nimport { Application, PageContent } from '@/shared/modules/typescript-api-client/models';\nimport { PopoverView } from '@/shared/components/popover/popover';\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport SarCurrentDetails from '../sar-current-details/index.vue';\nimport SarConfirmation from '../sar-confirmation/index.vue';\nimport SarPaymentDetails from '../sar-payment-details/index.vue';\nimport SarRenewalDeclarations from '../sar-renewal-declarations/index.vue';\nimport SarApplicationDeclarations from '../sar-application-declarations/index.vue';\nimport AlertBoxTypeTwo from '@/shared/components/alert-box-type-two/index.vue';\nimport PaymentModal from '../../payment-modal/index.vue';\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n SarRenewalDeclarations,\n SarApplicationDeclarations,\n SarCurrentDetails,\n SarConfirmation,\n SarPaymentDetails,\n SarOverview,\n PaymentPopup,\n ConfirmDialogue,\n LoadingIndicator,\n AlertBoxTypeTwo,\n PaymentModal,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n },\n})\nexport default class SarApplication extends Vue {\n private ai = new AppInsights();\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getSarAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Watch('sarAppFormData', { deep: true })\n private OnSarAppFormDataChange(): void {\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n this.nextButtonText = 'Submit';\n } else {\n this.nextButtonText = 'Next';\n }\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private helpContent: PageContent = {};\n\n private navSteps = [\n new NavStep(Step.currentDetails, Section.currentDetails),\n new NavStep(Step.applicationDeclarations, Section.applicationDeclarations),\n new NavStep(Step.renewalDeclarations, Section.renewalDeclarations),\n new NavStep(Step.payment, Section.payment),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private sarAppFormData: any = {};\n private showPaymentPopup = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction();\n private disablePaymentPopupCloseBut = false;\n private validPaymentPage = false;\n\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'sar-payment';\n private amountPayable = 0;\n private applyInternalPayment = false;\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n if (!_onlineApp.id) {\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Invalid Page entry, please choose an option from Portal home',\n );\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n window.addEventListener('message', this.receivedNotification);\n\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n this.loadPageContents();\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n window.removeEventListener('message', this.receivedNotification);\n }\n\n private receivedNotification(event: any): void {\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n // console.log('Received Notifications -- MARSApp');\n // console.log(action);\n // console.log(event?.origin, PAYMENTAPP_URL);\n // console.log(event?.data?.sessionId, this.sessionId);\n // console.log(event?.data?.paymentAppName, this.paymentAppName);\n // console.log('failed verification', !validOrigin , !validSessionId , !validPaymentApp);\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-sar-application-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n this.nextButtonText = 'Submit';\n } else {\n this.nextButtonText = 'Next';\n }\n }\n\n switch (_section) {\n case Section.currentDetails:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.applicationDeclarations:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.renewalDeclarations:\n this.setSteps(2);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.payment:\n this.setSteps(3);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(4);\n this.backButtonVisible = false;\n this.nextButtonText = 'Next';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone;\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done;\n }\n this.navSteps[n].status = NavStepStatusID.Current;\n // the confirmation page\n if (n === 4) {\n for (let i = 0; i < 4; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown;\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 10);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 11);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 31);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 32);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4:\n this.helpContent = this.$getPopover('Help', 33);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n\n switch (_section) {\n case Section.currentDetails:\n this.eventCtrl.emit('cancel-sar-application');\n break;\n case Section.applicationDeclarations:\n this.navigate(this.navSteps[0]);\n break;\n case Section.renewalDeclarations:\n this.navigate(this.navSteps[1]);\n break;\n case Section.payment:\n this.navigate(this.navSteps[2]);\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setSarAppFormData', this.sarAppFormData);\n const _section = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n if (this.sarAppFormData?.sarOverview?.decision != null) {\n this.checkConcurrentApplication();\n }\n }\n\n switch (_section) {\n case Section.currentDetails:\n // this.navigate(this.navSteps[1]);\n this.saveSarCurrentDetails();\n break;\n case Section.applicationDeclarations:\n // this.navigate(this.navSteps[2]);\n this.saveSarApplicationDeclaration();\n break;\n case Section.renewalDeclarations:\n // this.navigate(this.navSteps[3]);\n this.saveSarRenewalDeclaration();\n break;\n case Section.payment:\n this.saveSarPaymentDetails();\n // this.navigate(this.navSteps[4]);\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n }\n\n private async checkConcurrentApplication() {\n const nonRenewType = this.sarAppFormData?.sarOverview?.nonRenewType;\n try {\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n this.isSaving = true;\n } else {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n }\n\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet(\n this.onlineApplication.id,\n );\n\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n if (this.sarAppFormData?.sarOverview?.nonRenewType == true) {\n this.applyForleaveOfAbsence();\n } else if (\n this.sarAppFormData?.sarOverview?.nonRenewType == false &&\n this.sarAppFormData?.sarOverview?.nonRenewType != null\n ) {\n this.applyForNonRenewal();\n }\n } else {\n this.navigate(this.navSteps[0]);\n }\n } catch (err: any) {\n if (this.sarAppFormData?.sarOverview?.decision == 0) {\n this.errorLoadingDataSet = true;\n }\n\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n } finally {\n if (this.sarAppFormData?.sarOverview?.decision == 0) {\n this.loadingDataSet = false;\n }\n }\n }\n\n private async applyForleaveOfAbsence(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SpecAccNonRenewApi?.apiV1SpecAccNonRenewSaveLeaveOfAbsencePost(\n this.sarAppFormData.sarOverview.leaveOfAbsence,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Apply for leave of absence submitted');\n this.navigate(this.navSteps[4]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to submit leave of absense: ' + err);\n this.ai.trackException('Error, Unable to submit leave of absense: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async applyForNonRenewal(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SpecAccNonRenewApi?.apiV1SpecAccNonRenewSaveNonRenewalDetailsPost(\n this.sarAppFormData.sarOverview.nonRenewalDetails,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Apply for leave of absence submitted');\n this.navigate(this.navSteps[4]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to submit leave of absense: ' + err);\n this.ai.trackException('Error, Unable to submit leave of absense: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveSarCurrentDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewSaveCurrentDetailsChangedPost({\n sarApplicationId: this.sarAppFormData.currentDetails.sarApplicationId,\n isCurrentDetailsChanged:\n this.sarAppFormData.currentDetails.sarApplication.isCurrentDetailsChanged,\n });\n this.eventCtrl.emit('show-snackbar', 'success', 'Application details saved');\n this.navigate(this.navSteps[1]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save application details: ' + err);\n this.ai.trackException('Error, Unable to save application details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveSarApplicationDeclaration(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewSaveApplicationDeclarationPost(\n this.sarAppFormData.sarDeclaration,\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Application declaration saved');\n this.navigate(this.navSteps[2]);\n } catch (err) {\n this.eventCtrl.emit(\n 'show-snackbar',\n 'error',\n 'Unable to save Application declaration: ' + err,\n );\n this.ai.trackException('Error, Unable to save Application declaration: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveSarRenewalDeclaration(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewSaveRenewalDeclarationPost({\n sarApplicationId: this.sarAppFormData.currentDetails.sarApplicationId,\n });\n this.eventCtrl.emit('show-snackbar', 'success', 'Renewal declaration saved');\n this.navigate(this.navSteps[3]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Renewal declaration: ' + err);\n this.ai.trackException('Error, Unable to save Renewal declaration: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveSarPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n let totalCost = 0;\n let ifAnyPaidByPractice = false;\n this.sarAppFormData.paymentDetails?.lineItems.forEach((x: any) => {\n totalCost += x.total;\n });\n ifAnyPaidByPractice = this.sarAppFormData.paymentDetails?.lineItems.some(\n (x: any) => x.isPaidByPractice,\n );\n this.amountPayable =\n totalCost -\n this.sarAppFormData.paymentDetails?.lineItems\n .filter((x: any) => x.isPaidByPractice)\n .reduce((a: any, b: any) => a + b.total, 0);\n if (!ifAnyPaidByPractice || this.amountPayable === 0) {\n const resp: any =\n await this.apiService.SpecAccRenewApiV2?.apiV2SpecAccRenewSavePaymentDetailsPost(\n this.sarAppFormData.paymentDetails,\n );\n if (resp.data.data.isRequiredToOpenPymtApp) {\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n } else {\n this.navigate(this.navSteps[11]);\n }\n } else {\n // internal payment\n this.applyInternalPayment = true;\n }\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private paymentConfirmed(): void {\n this.showPaymentPopup = false;\n this.navigate(this.navSteps[4]);\n }\n\n private getPopOverKeys(): void {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n private getPopover(pKey: string): PopoverView {\n const _popOver = this.popovers.filter((p) => {\n return p.popoverKey == pKey;\n })[0];\n return _popOver;\n }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n // this.loadingDataSet = true;\n // this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n });\n }\n this.getPopOverKeys();\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private confirmCancelConcurrentApp() {\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n this.isSaving = true;\n } else {\n this.loadingDataSet = true;\n }\n\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm\n .show({\n title: 'You are already logged in elsewhere',\n message:\n 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n })\n .then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart();\n } else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n });\n }\n\n private async clearSessionAndStart(): Promise {\n try {\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n this.isSaving = true;\n } else {\n this.loadingDataSet = true;\n }\n\n await this.apiService.SpecAccRenewApi?.apiV1SpecAccRenewCancelApplicationApplicationIdGet(\n this.onlineApplication.id,\n );\n\n if (this.sarAppFormData?.sarOverview?.decision == 1) {\n if (this.sarAppFormData?.sarOverview?.nonRenewType == true) {\n this.applyForleaveOfAbsence();\n } else if (\n this.sarAppFormData?.sarOverview?.nonRenewType == false &&\n this.sarAppFormData?.sarOverview?.nonRenewType != null\n ) {\n this.applyForNonRenewal();\n }\n } else {\n this.loadingDataSet = false;\n this.navigate(this.navSteps[0]);\n }\n } catch (err) {\n console.log('error', err);\n }\n }\n\n get isOverviewPage(): boolean {\n return !this.$route.query.sec && this.$route.name == RouteN.Mars.SarApplication.n;\n }\n\n get $Section() {\n return Section;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n}\n","import { render } from \"./sar-application.html?vue&type=template&id=688b1c02&scoped=true&ts=true\"\nimport script from \"./sar-application.ts?vue&type=script&lang=ts\"\nexport * from \"./sar-application.ts?vue&type=script&lang=ts\"\n\nimport \"./sar-application.scss?vue&type=style&index=0&id=688b1c02&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-688b1c02\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, createVNode as _createVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-8f2a3748\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-application\" }\nconst _hoisted_2 = { class: \"container mt-4\" }\nconst _hoisted_3 = { class: \"amn-application-footer\" }\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_AmnOverview = _resolveComponent(\"AmnOverview\")\n const _component_AmnApplicantDetails = _resolveComponent(\"AmnApplicantDetails\")\n const _component_AmnAssociateMCategory = _resolveComponent(\"AmnAssociateMCategory\")\n const _component_AmnCurrentStatus = _resolveComponent(\"AmnCurrentStatus\")\n const _component_AmnPreferences = _resolveComponent(\"AmnPreferences\")\n const _component_AmnDeclarations = _resolveComponent(\"AmnDeclarations\")\n const _component_AmnPaymentDetails = _resolveComponent(\"AmnPaymentDetails\")\n const _component_AmnConfirmation = _resolveComponent(\"AmnConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (_ctx.isLoadingData || _ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _withDirectives(_createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true,\n showFaqBtn: true\n }, null, 8, [\"navSteps\"]), [\n [_vShow, !_ctx.isOverviewPage]\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.isOverviewPage)\n ? (_openBlock(), _createBlock(_component_AmnOverview, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.currentSection === _ctx.$Section.applicantDetails)\n ? (_openBlock(), _createBlock(_component_AmnApplicantDetails, {\n key: 1,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.associateMembershipCategory)\n ? (_openBlock(), _createBlock(_component_AmnAssociateMCategory, {\n key: 2,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.currentStatus)\n ? (_openBlock(), _createBlock(_component_AmnCurrentStatus, {\n key: 3,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.preferences)\n ? (_openBlock(), _createBlock(_component_AmnPreferences, {\n key: 4,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[6] || (_cache[6] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[7] || (_cache[7] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.declarations)\n ? (_openBlock(), _createBlock(_component_AmnDeclarations, {\n key: 5,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[8] || (_cache[8] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[9] || (_cache[9] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_AmnPaymentDetails, {\n key: 6,\n amnAppFormData: _ctx.amnAppFormData,\n \"onUpdate:amnAppFormData\": _cache[10] || (_cache[10] = $event => ((_ctx.amnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[11] || (_cache[11] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_AmnConfirmation, {\n key: 7,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[12] || (_cache[12] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving || _ctx.isSectionLoading,\n onClick: _cache[13] || (_cache[13] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving || _ctx.isSectionLoading,\n onClick: _cache[14] || (_cache[14] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ])\n ]),\n _hoisted_7\n ], 64)),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 2,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-amn-application-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[15] || (_cache[15] = $event => (_ctx.processNotification('close-payment-form')))\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, withModifiers as _withModifiers, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2a5a15af\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"header-stepper\" }\nconst _hoisted_2 = { class: \"wrapper container\" }\nconst _hoisted_3 = { class: \"header-stepper-main\" }\nconst _hoisted_4 = {\n key: 0,\n class: \"m-steps\"\n}\nconst _hoisted_5 = { class: \"stepBackIcon\" }\nconst _hoisted_6 = [\"onClick\"]\nconst _hoisted_7 = {\n key: 1,\n class: \"m-steps white\"\n}\nconst _hoisted_8 = { class: \"buttons\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.navSteps.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"span\", _hoisted_5, [\n (_ctx.currentNavStepIndex() > 0 && _ctx.currentNavStepIndex() < _ctx.navSteps.length - 1)\n ? (_openBlock(), _createElementBlock(\"i\", {\n key: 0,\n class: \"fal fa-angle-left\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.navigateBack()))\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"ul\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.navSteps, (s) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n onClick: _withModifiers($event => {_ctx.navigate(s);}, [\"prevent\",\"stop\"]),\n class: _normalizeClass([s.status, !s.visible ? 'hide' : ''])\n }, _toDisplayString(s.name), 11, _hoisted_6))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.navSteps.length === 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_7, _toDisplayString(_ctx.navbarText), 1))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_8, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.showHelpBtn)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline sml\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.showHelpScreen = !_ctx.showHelpScreen))\n }, \"Help\"))\n : _createCommentVNode(\"\", true),\n (_ctx.showFaqBtn)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline sml\",\n onClick: _cache[3] || (_cache[3] = $event => (_ctx.faqLink()))\n }, \"FAQ\"))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 0,\n onClose: _cache[4] || (_cache[4] = $event => (_ctx.showHelpScreen = false))\n }, {\n header: _withCtx(() => [\n _hoisted_9\n ]),\n body: _withCtx(() => []),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport { NavStep, NavStepStatusID } from './nav-step';\nimport HelpScreen from '@/shared/components/help-screen/index.vue';\nimport UserDefine from '@/assets/config/user-define.json';\n// import HelpContentData from '@/assets/config/help-text.json';\n// import { RouteN } from \"@/shared/constants/route-name\";\n\n@Options({\n props: {\n navSteps: Array,\n navbarText: String,\n showHelpBtn: Boolean,\n showFaqBtn: Boolean,\n },\n components: {\n HelpScreen,\n // HelpContent,\n }\n})\nexport default class HeaderStepper extends Vue {\n private showHelpScreen = false;\n navSteps!: NavStep[];\n navbarText!: string;\n showHelpBtn!: boolean;\n showFaqBtn!: boolean;\n\n get section(): string {\n return this.$route.query.sec as string;\n }\n\n get helpContentData(): unknown {\n const _helpContentData: any = [{}];\n return _helpContentData;\n }\n\n private navigate(s: NavStep): void {\n const _section: string = this.$route.query.sec as string;\n if (s.status === NavStepStatusID.Done && _section !== 'confirmation') {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n }\n\n private navigateBack() {\n const index = this.currentNavStepIndex();\n if (index > 0) {\n // console.log(this.navSteps[index - 1].routeSecName);\n this.navigate(this.navSteps[index - 1]);\n }\n }\n\n private currentNavStepIndex(): number {\n let index = -1;\n this.navSteps.filter((z) => z.visible).forEach((x, i) => {\n if (x.status === NavStepStatusID.Current) {\n index = i;\n }\n });\n return index;\n }\n\n private contactUs() {\n window.open(UserDefine[0].contact_us_url, 'blank');\n }\n\n private faqLink() {\n const _pathName: string = this.$route.path;\n let fqaLink = UserDefine[0].faq_url;\n if (_pathName.indexOf('/amr-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/AMR-faq';\n } else if (_pathName.indexOf('/amn-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/AMN-faq';\n } else if (_pathName.indexOf('/stn-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/STN-faq';\n } else if (_pathName.indexOf('/str-application') == 0) {\n fqaLink = 'https://www.lawsociety.com.au/STR-faq';\n }\n window.open(fqaLink, 'blank');\n }\n\n\n}\n\n","import { render } from \"./header-stepper.html?vue&type=template&id=2a5a15af&scoped=true&ts=true\"\nimport script from \"./header-stepper.ts?vue&type=script&lang=ts\"\nexport * from \"./header-stepper.ts?vue&type=script&lang=ts\"\n\nimport \"./header-stepper.scss?vue&type=style&index=0&id=2a5a15af&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2a5a15af\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, vModelCheckbox as _vModelCheckbox, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-20e9740a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-applicant-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Applicant Details\", -1))\nconst _hoisted_3 = { class: \"row main-content\" }\nconst _hoisted_4 = { class: \"col-12\" }\nconst _hoisted_5 = {\n class: \"col-6 pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Applicant Details\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Full name\", -1))\nconst _hoisted_8 = { class: \"mb-3\" }\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Name Change\", -1))\nconst _hoisted_10 = { class: \"file-list mb-2\" }\nconst _hoisted_11 = { class: \"file-name\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_13 = { class: \"mb-2\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Preferred First Name\", -1))\nconst _hoisted_15 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_16 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_17 = { class: \"mb-2\" }\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Post Nominals\", -1))\nconst _hoisted_19 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_20 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Gender\", -1))\nconst _hoisted_22 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_23 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Date of Birth\", -1))\nconst _hoisted_25 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_26 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Place of Birth\", -1))\nconst _hoisted_28 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_29 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Country of Birth\", -1))\nconst _hoisted_31 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_32 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_33 = {\n class: \"col-6 right-side pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Contact Details\")\n], -1))\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Email for Communication\", -1))\nconst _hoisted_36 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_37 = { class: \"mb-3 mr-2\" }\nconst _hoisted_38 = { class: \"row mb-2\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Personal Mobile\", -1))\nconst _hoisted_40 = { key: 0 }\nconst _hoisted_41 = { key: 1 }\nconst _hoisted_42 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Work Mobile\", -1))\nconst _hoisted_43 = { key: 0 }\nconst _hoisted_44 = { key: 1 }\nconst _hoisted_45 = { class: \"row mb-2\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business Phone\", -1))\nconst _hoisted_47 = { key: 0 }\nconst _hoisted_48 = { key: 1 }\nconst _hoisted_49 = { class: \"col-6\" }\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business Fax\", -1))\nconst _hoisted_51 = { key: 0 }\nconst _hoisted_52 = { key: 1 }\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Postal Address\", -1))\nconst _hoisted_54 = { class: \"col-12 radios\" }\nconst _hoisted_55 = {\n key: 0,\n class: \"ml-3\"\n}\nconst _hoisted_56 = {\n key: 1,\n class: \"radio-button-group\"\n}\nconst _hoisted_57 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_58 = { class: \"radio-button col-3\" }\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_60 = { class: \"col-2 ml-0\" }\nconst _hoisted_61 = { class: \"radio-button\" }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_63 = { class: \"col-12 right\" }\nconst _hoisted_64 = [\"disabled\"]\nconst _hoisted_65 = { class: \"application-year-option mt-3\" }\nconst _hoisted_66 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"I am applying for:\", -1))\nconst _hoisted_67 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_68 = [\"onUpdate:modelValue\", \"disabled\"]\nconst _hoisted_69 = {\n class: \"checkbox-elmt\",\n style: {\"border\":\"none\"}\n}\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_71 = { class: \"checkbox-text\" }\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_73 = { key: 0 }\nconst _hoisted_74 = { style: {\"font-weight\":\"normal\"} }\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_76 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"display\":\"flex\",\"align-items\":\"center\"} }, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle ml-2 mr-2\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2 mr-2\" }, \" The Current Associate Membership year runs from 1st July to 30th June. Applications made between April – June include two years of membership by default. You have the option to apply for the current year only, but your membership will expire on 30th June this year. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_AmnApplicationDetailsUpdateModal = _resolveComponent(\"AmnApplicationDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingSurname ? 'field-error' : ''])\n }, [\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1)\n ], 2),\n (_ctx.hasNameChanged)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass(_ctx.missingFiles ? 'field-error' : '')\n }, [\n _hoisted_9,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.amnAppFormData.individualDetails.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(f.originalFileName), 1)\n ]))\n }), 256))\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n (_ctx.missingPreferredName)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_15, \"No record\"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_16, _toDisplayString(_ctx.individualDetails.preferredName), 1))\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _hoisted_18,\n (_ctx.individualDetails.postNominals)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_19, _toDisplayString(_ctx.individualDetails.postNominals), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_20, \"No record\"))\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingGender ? 'field-error' : ''])\n }, [\n _hoisted_21,\n (_ctx.individualDetails.gender)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, _toDisplayString(_ctx.individualDetails.gender?.description), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_23, \"No record\"))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingBirthDate ? 'field-error' : ''])\n }, [\n _hoisted_24,\n (_ctx.individualDetails.birthDate)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_25, _toDisplayString(_ctx.$formatDate(_ctx.individualDetails.birthDate)), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_26, \"No record\"))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingPlaceOfBirth ? 'field-error' : ''])\n }, [\n _hoisted_27,\n (_ctx.individualDetails.birthPlace)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, _toDisplayString(_ctx.individualDetails.birthPlace), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_29, \"No record\"))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingCountryOfBirth ? 'field-error' : ''])\n }, [\n _hoisted_30,\n (_ctx.individualDetails.birthPlaceCountry)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_31, _toDisplayString(_ctx.individualDetails.birthPlaceCountry?.name), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_32, \"No record\"))\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_33, [\n _hoisted_34,\n _createElementVNode(\"div\", {\n class: _normalizeClass(_ctx.missingEmail ? 'field-error' : '')\n }, [\n _hoisted_35,\n _createElementVNode(\"div\", _hoisted_36, [\n _createElementVNode(\"div\", _hoisted_37, _toDisplayString(_ctx.individualDetails.communicationEmail?.email), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail', 12)\n }, null, 8, [\"popover\"])\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", _hoisted_38, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'field-error' : ''])\n }, [\n _hoisted_39,\n (!_ctx.individualDetails.mobilePhone?.phoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_41, _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'field-error' : ''])\n }, [\n _hoisted_42,\n (!_ctx.individualDetails.workPhone?.phoneNumber )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_43, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_44, _toDisplayString(_ctx.individualDetails.workPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.workPhone?.phoneNumber), 1))\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_45, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'field-error' : ''])\n }, [\n _hoisted_46,\n (!_ctx.individualDetails.businessPhone?.phoneNumber )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_47, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_48, _toDisplayString(_ctx.individualDetails.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.businessPhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", _hoisted_49, [\n _hoisted_50,\n (!_ctx.individualDetails.businessFax?.phoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_51, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_52, _toDisplayString(_ctx.individualDetails.businessFax?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.businessFax?.phoneNumber), 1))\n ])\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.addressMissing ? 'field-error' : ''])\n }, [\n _hoisted_53,\n _createVNode(_component_AddressPreview, {\n address: _ctx.individualDetails.postalAddress,\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_54, [\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_55, \"Are these details correct?\"))\n : _createCommentVNode(\"\", true),\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_56, [\n _createElementVNode(\"span\", _hoisted_57, [\n _createElementVNode(\"label\", _hoisted_58, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n value: true,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_59\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_60, [\n _createElementVNode(\"label\", _hoisted_61, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: false,\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_62\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_63, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n disabled: _ctx.isValidForm && _ctx.individualDetails.isCurrentDetailCorrect !== false,\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.updateCurrentDetails()))\n }, \"Update current details\", 8, _hoisted_64)\n ])\n ])\n ])\n ]),\n (_ctx.individualDetails.amNewRecordApplicationYears?.length > 1)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"div\", _hoisted_65, [\n _hoisted_66,\n _hoisted_67,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.individualDetails.amNewRecordApplicationYears, (c, idx) => {\n return (_openBlock(), _createElementBlock(\"label\", {\n class: _normalizeClass([\"checkbox-button\", c.readOnly ? 'disabled' : ''])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((c.isSelected) = $event),\n disabled: c.readOnly\n }, null, 8, _hoisted_68), [\n [_vModelCheckbox, c.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_69, [\n _hoisted_70,\n _createElementVNode(\"span\", _hoisted_71, [\n _createTextVNode(\"Associate Membership \" + _toDisplayString(c.applicationYear.name) + \" \", 1),\n _hoisted_72,\n _createTextVNode(\"Amount: \"),\n (!_ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_73, [\n _createTextVNode(_toDisplayString(_ctx.toCurrency(c.total)) + \" \", 1),\n _createElementVNode(\"i\", _hoisted_74, \"(\" + _toDisplayString(c.totalGst > 0 ? 'incl.' : 'ex.') + \" GST)\", 1)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _hoisted_75\n ], 2))\n }), 256))\n ]),\n _hoisted_76\n ], 64))\n : _createCommentVNode(\"\", true)\n ], 64)),\n (_ctx.showUpdateDetailsModal)\n ? (_openBlock(), _createBlock(_component_AmnApplicationDetailsUpdateModal, {\n key: 2,\n currentDetails: _ctx.individualDetails,\n \"onUpdate:currentDetails\": _cache[3] || (_cache[3] = $event => ((_ctx.individualDetails) = $event)),\n origNames: _ctx.origNames,\n \"onUpdate:origNames\": _cache[4] || (_cache[4] = $event => ((_ctx.origNames) = $event)),\n disallowUpdate: _ctx.disallowUpdate,\n \"onUpdate:disallowUpdate\": _cache[5] || (_cache[5] = $event => ((_ctx.disallowUpdate) = $event)),\n onClose: _cache[6] || (_cache[6] = $event => {_ctx.individualDetails.isCurrentDetailCorrect = null; _ctx.reloadCurrentDetails(); _ctx.showUpdateDetailsModal = false}),\n onReloadCurrentDetails: _cache[7] || (_cache[7] = $event => (_ctx.reloadCurrentDetails()))\n }, null, 8, [\"currentDetails\", \"origNames\", \"disallowUpdate\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, normalizeClass as _normalizeClass, createVNode as _createVNode, vModelRadio as _vModelRadio, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3d6cb97c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-application-details-update-modal\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Update Current Details\", -1))\nconst _hoisted_3 = { class: \"modal-body\" }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = { class: \"dropdown-menu\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Title \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_12 = { class: \"input-box\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"First name\", -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_15 = { class: \"input-box\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Other names (Optional)\", -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Surname\", -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_20 = { key: 0 }\nconst _hoisted_21 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_23 = { class: \"file-list mb-2\" }\nconst _hoisted_24 = { class: \"file-name\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_26 = [\"onClick\"]\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_28 = { class: \"input-box\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Preferred first name (Optional)\", -1))\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_31 = { class: \"input-box\" }\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Post nominals (Optional)\", -1))\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Other information details\", -1))\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_37 = {\n key: 1,\n class: \"disableNote\",\n style: {\"display\":\"flex\",\"justify-content\":\"flex-start\"}\n}\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle mr-2\",\n style: {\"margin\":\"auto 0\",\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n}, null, -1))\nconst _hoisted_39 = [\"innerHTML\"]\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Gender\", -1))\nconst _hoisted_41 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_42 = { class: \"radio-button col-3\" }\nconst _hoisted_43 = [\"onUpdate:modelValue\", \"value\", \"disabled\"]\nconst _hoisted_44 = {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" }, null, -1))\nconst _hoisted_46 = [\n _hoisted_45\n]\nconst _hoisted_47 = { class: \"radio-text\" }\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of birth\", -1))\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Place of birth\", -1))\nconst _hoisted_53 = [\"disabled\"]\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Country of birth\", -1))\nconst _hoisted_57 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_58 = [\"disabled\"]\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_60 = [\"value\"]\nconst _hoisted_61 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Required field. \")\n], -1))\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_63 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_64 = { class: \"flex-row\" }\nconst _hoisted_65 = { style: {\"margin\":\"0 !important\",\"padding\":\"0 !important\"} }\nconst _hoisted_66 = { class: \"ml-2\" }\nconst _hoisted_67 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please provide at least one of the following contact numbers: personal mobile, work mobile, or business phone.\")\n], -1))\nconst _hoisted_68 = { class: \"flex-row\" }\nconst _hoisted_69 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Personal mobile\", -1))\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Work mobile\", -1))\nconst _hoisted_71 = { class: \"flex-row\" }\nconst _hoisted_72 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Business phone\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"ml-2\" })\n], -1))\nconst _hoisted_73 = { style: {\"width\":\"100%\"} }\nconst _hoisted_74 = {\n style: {\"flex\":\"1\"},\n class: \"input-box\"\n}\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Business fax\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"ml-2\" })\n], -1))\nconst _hoisted_76 = { style: {\"width\":\"100%\"} }\nconst _hoisted_77 = {\n key: 3,\n class: \"phone-error error\"\n}\nconst _hoisted_78 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Must input Mobile phone or Work phone or Business phone \")\n], -1))\nconst _hoisted_79 = [\n _hoisted_78\n]\nconst _hoisted_80 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_81 = { class: \"field_name\" }\nconst _hoisted_82 = { class: \"validation-msg\" }\nconst _hoisted_83 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_84 = { key: 0 }\nconst _hoisted_85 = { key: 1 }\nconst _hoisted_86 = { key: 2 }\nconst _hoisted_87 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12 mt-2 mb-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_88 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_89 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Please enter your preferred postal address\", -1))\nconst _hoisted_90 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_91 = {\n key: 0,\n class: \"modal-footer row right\"\n}\nconst _hoisted_92 = [\"disabled\"]\nconst _hoisted_93 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n _hoisted_2\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.formData.title) = $event))\n }, [\n _hoisted_8,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.titles, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: t.id, name: t.name, description: t.description}\n }, _toDisplayString(t.name), 9, _hoisted_9))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.formData.title]\n ])\n ]),\n _hoisted_10\n ]),\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.formData.firstName) = $event)),\n placeholder: \"First name\",\n maxlength: \"50\",\n onKeyup: _cache[2] || (_cache[2] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.firstName]\n ])\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", _hoisted_15, [\n _hoisted_16,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.formData.otherName) = $event)),\n placeholder: \"Other name\",\n maxlength: \"50\",\n onKeyup: _cache[4] || (_cache[4] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.otherName]\n ])\n ]),\n _hoisted_17,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.surname?.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_18,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.formData.surname) = $event)),\n placeholder: \"Surname\",\n maxlength: \"50\",\n onKeyup: _cache[6] || (_cache[6] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.surname]\n ]),\n _hoisted_19\n ], 2),\n (_ctx.requiredFileUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"file-upload mt-4\", _ctx.requiredFileUpload ? 'required' : ''])\n }, [\n _createTextVNode(\" Please attach proof of name change. \"),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _ctx.fileListChanged,\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\", \"onFileInputChanged\"]),\n (_ctx.formData.files?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _hoisted_22,\n _createTextVNode(\" Required to attach proof of name change. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_26)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_27,\n _createElementVNode(\"div\", _hoisted_28, [\n _hoisted_29,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.formData.preferredName) = $event)),\n placeholder: \"Preferred first name\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.preferredName]\n ])\n ]),\n _hoisted_30,\n _createElementVNode(\"div\", _hoisted_31, [\n _hoisted_32,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[8] || (_cache[8] = $event => ((_ctx.formData.postNominals) = $event)),\n placeholder: \"Post nominals\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.postNominals]\n ])\n ]),\n _hoisted_33,\n _hoisted_34,\n _hoisted_35,\n _hoisted_36,\n (_ctx.disableNote?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_37, [\n _hoisted_38,\n _createElementVNode(\"span\", { innerHTML: _ctx.disableNote }, null, 8, _hoisted_39)\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.gender && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_40,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"row radio-button-group\", !_ctx.formData.gender && _ctx.isSubmitting ? 'error' : ''])\n }, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.genderList, (gender) => {\n return (_openBlock(), _createElementBlock(\"span\", _hoisted_41, [\n _createElementVNode(\"label\", _hoisted_42, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": $event => ((_ctx.formData.gender) = $event),\n value: gender,\n disabled: _ctx.disallowUpdate.gender\n }, null, 8, _hoisted_43), [\n [_vModelRadio, _ctx.formData.gender]\n ]),\n _createElementVNode(\"div\", _hoisted_44, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"radio-checkmark-box ml-0\", _ctx.disallowUpdate.gender ? 'disabled' : ''])\n }, _hoisted_46, 2),\n _createElementVNode(\"span\", _hoisted_47, _toDisplayString(gender.description), 1)\n ])\n ])\n ]))\n }), 256))\n ], 2),\n _hoisted_48\n ], 2),\n _hoisted_49,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.birthDate && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_50,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: _ctx.formData.birthDate,\n \"onUpdate:value\": _cache[9] || (_cache[9] = $event => ((_ctx.formData.birthDate) = $event)),\n \"input-class\": \"normal\",\n \"disabled-date\": _ctx.disabledAfterToday,\n disabled: _ctx.disallowUpdate.birthDate,\n onChange: _cache[10] || (_cache[10] = $event => (_ctx.dateValidation()))\n }, null, 8, [\"value\", \"disabled-date\", \"disabled\"])\n ], 2),\n _hoisted_51,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.birthPlace?.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_52,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => ((_ctx.formData.birthPlace) = $event)),\n placeholder: \"Place of birth\",\n maxlength: \"50\",\n disabled: _ctx.disallowUpdate.birthPlace\n }, null, 8, _hoisted_53), [\n [_vModelText, _ctx.formData.birthPlace]\n ]),\n _hoisted_54\n ], 2),\n _hoisted_55,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 2,\n class: _normalizeClass([\"dropdown-menu\", !_ctx.formData.birthPlaceCountry && _ctx.isSubmitting ? 'error': ''])\n }, [\n _hoisted_56,\n _createElementVNode(\"div\", _hoisted_57, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.formData.birthPlaceCountry) = $event)),\n disabled: _ctx.disallowUpdate.birthPlaceCountry\n }, [\n _hoisted_59,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.countryList, (c) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: c.id, name: c.name, description: c.description }\n }, _toDisplayString(c.name), 9, _hoisted_60))\n }), 256))\n ], 8, _hoisted_58), [\n [_vModelSelect, _ctx.formData.birthPlaceCountry]\n ])\n ]),\n _hoisted_61\n ], 2))\n : _createCommentVNode(\"\", true),\n _hoisted_62,\n _hoisted_63,\n _createElementVNode(\"div\", _hoisted_64, [\n _createElementVNode(\"h4\", _hoisted_65, [\n _createTextVNode(\"Contact details\"),\n _createElementVNode(\"span\", _hoisted_66, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneDetails', 12),\n style: {\"margin\":\"auto auto\",\"padding\":\"auto auto\"}\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _hoisted_67,\n _createElementVNode(\"div\", _hoisted_68, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_69,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = $event => ((_ctx.formData.mobilePhone.phoneNumber) = $event)),\n placeholder: \"Personal mobile\",\n maxlength: \"15\",\n onChange: _cache[14] || (_cache[14] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.mobilePhone.phoneNumber]\n ])\n ], 2),\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_70,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => ((_ctx.formData.workPhone.phoneNumber) = $event)),\n placeholder: \"Work mobile\",\n maxlength: \"15\",\n onChange: _cache[16] || (_cache[16] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.workPhone.phoneNumber]\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_71, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_72,\n _createElementVNode(\"span\", _hoisted_73, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => ((_ctx.formData.businessPhone.phoneAreaCode) = $event)),\n style: {\"width\":\"50px\"},\n maxlength: \"5\"\n }, null, 512), [\n [_vModelText, _ctx.formData.businessPhone.phoneAreaCode]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[18] || (_cache[18] = $event => ((_ctx.formData.businessPhone.phoneNumber) = $event)),\n placeholder: \"Business phone\",\n maxlength: \"15\",\n onChange: _cache[19] || (_cache[19] = $event => (_ctx.nameCheck())),\n style: {\"width\":\"calc(100% - 60px)\",\"margin-left\":\"9px\"}\n }, null, 544), [\n [_vModelText, _ctx.formData.businessPhone.phoneNumber]\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", _hoisted_74, [\n _hoisted_75,\n _createElementVNode(\"span\", _hoisted_76, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[20] || (_cache[20] = $event => ((_ctx.formData.businessFax.phoneAreaCode) = $event)),\n style: {\"width\":\"50px\"},\n maxlength: \"5\"\n }, null, 512), [\n [_vModelText, _ctx.formData.businessFax.phoneAreaCode]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = $event => ((_ctx.formData.businessFax.phoneNumber) = $event)),\n placeholder: \"Business fax\",\n maxlength: \"15\",\n onChange: _cache[22] || (_cache[22] = $event => (_ctx.nameCheck())),\n style: {\"width\":\"calc(100% - 60px)\",\"margin-left\":\"9px\"}\n }, null, 544), [\n [_vModelText, _ctx.formData.businessFax.phoneNumber]\n ])\n ])\n ])\n ]),\n (!_ctx.formPhoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_77, _hoisted_79))\n : _createCommentVNode(\"\", true),\n _hoisted_80,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_81, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail' , 12),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[23] || (_cache[23] = $event => ((_ctx.formData.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onChange: _cache[24] || (_cache[24] = $event => (_ctx.emailCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_82, [\n _hoisted_83,\n (_ctx.formData.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_84, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_85, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_86, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_87,\n _hoisted_88,\n _hoisted_89,\n (_ctx.formData.postalAddress)\n ? (_openBlock(), _createBlock(_component_AddressComponent, {\n key: 4,\n onUpdateAddress: _ctx.updateAddress,\n disableCountrySelection: false,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[25] || (_cache[25] = $event => ((_ctx.isSubmitting) = $event)),\n address: _ctx.formData.postalAddress,\n \"onUpdate:address\": _cache[26] || (_cache[26] = $event => ((_ctx.formData.postalAddress) = $event)),\n showAddressType: true,\n overseaAddressLabel: 'Postal Address'\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_AddressPreview, {\n address: _ctx.formData.postalAddress,\n \"onUpdate:address\": _cache[27] || (_cache[27] = $event => ((_ctx.formData.postalAddress) = $event)),\n style: 'margin-top: 2rem; padding: 1rem 1rem;'\n }, null, 8, [\"address\"])\n ]))\n ]),\n _hoisted_90,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_91, [\n (_ctx.isUpdating)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[28] || (_cache[28] = $event => (_ctx.cancel())),\n disabled: _ctx.isUpdating\n }, \"Cancel\", 8, _hoisted_92),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[29] || (_cache[29] = $event => (_ctx.update())),\n disabled: !_ctx.isDirty || _ctx.isUpdating\n }, \"Update\", 8, _hoisted_93)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"]),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail, AmNewIndividualDetail, Application, Country, PcRenewFileRequest, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport _, { orderBy } from \"lodash\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport AddressComponent from \"../../address-component/index.vue\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n currentDetails: Object,\n origNames: Object,\n disallowUpdate: Object,\n },\n components: {\n FileDragAndDrop,\n LoadingIndicator,\n PostcodeSearch,\n AlertBox,\n Popover,\n ConfirmDialogue,\n AddressComponent,\n AddressPreview,\n ModalWindow,\n DatePicker,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\n\nexport default class AmnApplicationDetailsUpdateModal extends Vue {\n\n private currentDetails!: AmNewIndividualDetail;\n private origNames!: any;\n private disallowUpdate!: any;\n\n private isClosing = false;\n private disableNote = '';\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private titles: any[] = [];\n private buildingTypes: any[] = [];\n private streetTypes: any[] = [];\n private buildingType: any = { id: 0, name: '' };\n private streetType: any = { id: 0, description: '' };\n\n private pcRenewFileTypes: any[] = [];\n private fileIdToDelete = 0;\n\n private popover: PopoverView = {\n key:'',\n title: '',\n isShow: true,\n content: '

Example:

.headings {
font-family: var(--font-headings);
}

.body-text {
font-family: var(--font-body-text);
}

',\n };\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = true;\n\n private requiredFileUpload = false;\n\n private formData: any = {};\n\n private fileList: Array = [];\n private uploading = false;\n private dateReceived: Date = null as any;\n private showDeleteAlert = false;\n\n private isSubmitting = false;\n private suburbStatePostcode: SuburbStatePostcode = {};\n\n // mandatory fields\n private formFirstName = true;\n private formSurname = true;\n private formFileUpload = true;\n private formPhoneNumber = true;\n private formEmail = true;\n private isEmailDuplicated = false;\n private addressCheck = true;\n private isUpdating = false;\n private newSeed = 1;\n\n private formBirthPlace = true;\n private formBirthDate = true;\n private formBirthCountry = true;\n private formGender = true;\n\n private countryList: Country[] = [];\n private genderList: any[] = [];\n\n mounted(): void {\n document.body.classList.add('modal-open');\n this.getCountyList();\n this.preloadData();\n this.formData = JSON.parse(JSON.stringify(this.currentDetails));\n this.formData.postalAddress = this.formData.postalAddress ? this.initAddress(this.formData.postalAddress) : this.initAddress({});\n // console.log('this.formData: ', this.formData.communicationEmail)\n // if (!this.formData.files) {\n // this.formData.files = [];\n // }\n this.formData.birthDate = this.formData.birthDate ? new Date(this.formData.birthDate) : null;\n\n this.streetType = {\n id: this.formData.postalAddress?.streetTypeId ?? 0,\n name: this.formData.postalAddress?.streetTypeName ?? '',\n }\n this.buildingType = {\n id: this.formData.postalAddress?.buildingTypeId ?? 0,\n name: this.formData.postalAddress?.buildingTypeName ?? '',\n }\n\n this.suburbStatePostcode = {\n suburbId: this.formData.postalAddress?.suburbId,\n suburbName: this.formData.postalAddress?.suburbName,\n postcode: this.formData.postalAddress?.postcode,\n stateId: this.formData.postalAddress?.stateId,\n stateName: this.formData.postalAddress?.stateName,\n }\n this.nameCheck();\n this.getNote();\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n a.firmAddMapId = a.firmAddMapId || 0;\n\n return a;\n }\n\n private async preloadData() {\n try {\n // const _memberId: any = parseInt(this.$route.query.memberId as string, 10) || '';\n this.isLoadingData = true;\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetTitlesGet(),\n this.apiService.CodeApi?.apiV1CodeGetPcRenewFileTypesGet(),\n this.apiService.CodeApi?.apiV1CodeGetGendersGet(),\n ]);\n this.titles = resp[0].data.data;\n this.pcRenewFileTypes = resp[1].data.data;\n this.genderList = resp[2].data.data;\n this.genderList = orderBy(this.genderList, ['id'], 'asc');\n\n } catch (err) {\n this.isLoadingData = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n }\n }\n\n private async getCountyList() {\n const _countryList = store.getters.getCountryList;\n this.countryList = _countryList == null ? null : JSON.parse(_countryList);\n\n this.isLoadingData = true;\n this.$emit('readyState', !this.isLoadingData);\n\n if (this.countryList == null) {\n await this.apiService.CodeApi?.apiV1CodeGetCountriesGet()\n .then((res: any) => {\n this.countryList = res.data.data;\n store.dispatch('setCountryList', this.countryList);\n })\n .catch((err: any) => {\n // console.log(err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting country list: ' + err.response?.status);\n this.ai.trackException('Error getting country list: ' + err);\n })\n }\n }\n\n private setGender(opt: number) {\n if (opt == 2) {\n this.formData.gender = { id: 2, name: \"F\", description: \"FEMALE\" }\n } else {\n this.formData.gender = { id: 1, name: \"M\", description: \"MALE\" }\n }\n }\n\n private cancel() {\n // if (this.isDirty) {\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Cancel Update Current Details',\n // message: 'By cancelling, changes to the current screen will be lost.
Are you sure you want to cancel?',\n // okButton: 'Yes',\n // cancelButton: 'No',\n // }).then((res: any) => {\n // if (res) {\n // this.close();\n // }\n // })\n // } else {\n this.close();\n // }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n this.addressCheck = valid;\n }\n\n private async update() {\n this.isSubmitting = true;\n this.isUpdating = true;\n this.formData.isCurrentDetailCorrect = true;\n if (this.formValidated()) {\n this.formData.postalAddress = this.$addressCleanup(this.formData.postalAddress);\n await this.apiService.AmNewApi?.apiV1AmNewUpdateAmNewIndividualDetailPost(this.formData)\n .then(() => {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n this.$emit('reloadCurrentDetails');\n this.close();\n })\n .catch(err => {\n this.isUpdating = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n }\n })\n } else {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Please check all required fields');\n }\n\n }\n\n private formValidated(): boolean {\n this.formFirstName = this.formData.firstName?.trim() !== '';\n this.formSurname = this.formData.surname?.trim() !== '';\n\n this.formFileUpload = true;\n if (this.requiredFileUpload) {\n this.formFileUpload = this.formData.files.length > 0;\n }\n this.formPhoneNumber = this.formData.mobilePhone?.phoneNumber?.trim() !== ''\n || this.formData.businessPhone?.phoneNumber?.trim() !== '' || this.formData.workPhone?.phoneNumber?.trim() !== '';\n\n this.formEmail = this.emailCheck();\n this.formBirthPlace = this.formData.birthPlace && this.formData.birthPlace?.trim() !== '';\n //this.formBirthDate = this.formData.birthDate >= new Date('Jan 01 1910');\n this.formBirthDate = this.formData.birthDate;\n this.formBirthCountry = this.formData.birthPlaceCountry;\n this.formGender = this.formData.gender?.id;\n\n return this.formSurname && this.formFileUpload && this.addressCheck && this.formPhoneNumber && this.formEmail\n && this.formBirthPlace && this.formBirthDate && this.formBirthCountry && this.formGender;\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList);\n }\n\n private deleteFile(id: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete);\n }\n })\n\n }\n\n private buildingTypeChange(bt: any) {\n this.formData.postalAddress.buildingTypeId = bt.id;\n this.formData.postalAddress.buildingTypeName = bt.name;\n }\n\n private streetTypeChange(st: any) {\n this.formData.postalAddress.streetTypeId = st.id;\n this.formData.postalAddress.streetTypeName = st.name;\n }\n\n private async deleteFileFromServer(id: number) {\n await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id)\n .then(() => {\n for (let i = 0; i < this.formData.files.length; i++) {\n if (this.formData.files[i].id === id) {\n this.formData.files.splice(i, 1);\n }\n }\n this.nameCheck();\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n })\n .catch(err => {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n })\n }\n\n private async uploadAllFiles(fileList: Array): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x)));\n await Promise.all(allRequests);\n // this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File): Promise {\n // const _id: number = parseInt(this.$route.query.investigation as string, 10);\n this.getNextSeed();\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.onlineApplication.id,\n amNewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n };\n\n await this.apiService.FileApi?.apiV1FileSaveAmNewFilePost(\n body\n ).then(res => {\n this.formData.files.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.onlineApplication.id,\n amNewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n })\n })\n\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private nameCheck() {\n const _firstNameCheck = this.formData.firstName?.trim() == this.origNames?.firstName?.trim();\n const _otherNameCheck = (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') || (this.formData.otherName?.trim() == this.origNames?.otherName?.trim());\n const _surnameCheck = this.formData.surname?.trim() == this.origNames?.surname?.trim();\n\n if (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') {\n this.formData.otherName = this.origNames?.otherName;\n }\n this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private emailCheck(): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(this.formData.communicationEmail?.email);\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.formData.postalAddress.suburbId = s.suburbId;\n this.formData.postalAddress.suburbName = s.suburbName;\n this.formData.postalAddress.postcode = s.postcode;\n this.formData.postalAddress.stateId = s.stateId;\n this.formData.postalAddress.stateName = s.stateName;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get isDirty(): boolean {\n return JSON.stringify(this.currentDetails) !== JSON.stringify(this.formData);\n }\n\n private disabledAfterToday(date: Date) {\n const today = new Date();\n const oldDate = new Date('Jan 01 1910');\n today.setHours(0, 0, 0, 0);\n //return date > today || date < oldDate;\n return date > today;\n }\n\n private dateValidation(){\n //console.log(this.formData.birthDate);\n if (this.formData.birthDate < new Date('Jan 01 1910'))\n {\n this.formData.birthDate = null;\n }\n }\n\n private getNextSeed() {\n this.newSeed = this.formData.files?.length > 0\n ? (_.maxBy(this.formData.files, (f: PcRenewFileRequest) => f.seed) as PcRenewFileRequest).seed + 1\n : 1;\n }\n\n private getNote() {\n const note1 = 'Please contact the Registry department at registry@lawsociety.com.au should you wish to update your existing information';\n const note2 = 'Please provide the required information on the screen or reach out to the registry department at registry@lawsociety.com.au if any of your current details need to be updated';\n const shouldContactRegistry = this.disallowUpdate.gender && this.disallowUpdate.birthDate && this.disallowUpdate.birthPlace && this.disallowUpdate.birthPlaceCountry;\n if (shouldContactRegistry) {\n this.disableNote = note1;\n } else if (this.disallowUpdate.gender || this.disallowUpdate.birthDate || this.disallowUpdate.birthPlace || this.disallowUpdate.birthPlaceCountry) {\n this.disableNote = note2;\n }\n this.disableNote = '';\n }\n\n}\n","import { render } from \"./amn-application-details-update-modal.html?vue&type=template&id=3d6cb97c&scoped=true&ts=true\"\nimport script from \"./amn-application-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-application-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-application-details-update-modal.scss?vue&type=style&index=0&id=3d6cb97c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3d6cb97c\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AmNewIndividualDetail, Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport AmnApplicationDetailsUpdateModal from \"../amn-application-details-update-modal/index.vue\";\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n AddressPreview,\n AmnApplicationDetailsUpdateModal,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnApplicantDetails extends Vue {\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private individualDetails: AmNewIndividualDetail = {};\n private origNames = {};\n private disallowUpdate = { gender: false, birthDate: false, birthPlace: false, birthPlaceCountry: false };\n\n private showUpdateDetailsModal = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('individualDetails.isCurrentDetailCorrect')\n private radioButtonChange() {\n this.canGoNextCheck();\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.eventCtrl.emit('canGoNext', false);\n const _origName = this.amnAppFormData.origNames;\n this.origNames = _origName;\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n const _isRenewing = this.amnAppFormData.individualDetails?.amNewApplicationId > 0;\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.AmNewApi?.apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(this.onlineApplication.id, !_isRenewing)\n ]);\n this.individualDetails = resp[0].data.data;\n this.amnAppFormData.individualDetails = this.individualDetails;\n if (!_isRenewing) {\n this.origNames = {\n firstName: this.individualDetails.firstName,\n otherName: this.individualDetails.otherName,\n surname: this.individualDetails.surname,\n };\n this.disallowUpdate = {\n gender: this.individualDetails.hasIndId && this.individualDetails.gender !== null,\n birthDate: this.individualDetails.hasIndId && this.individualDetails.birthDate !== null,\n birthPlace: this.individualDetails.hasIndId && this.individualDetails.birthPlace !== null,\n birthPlaceCountry: this.individualDetails.hasIndId && this.individualDetails.birthPlaceCountry !== null,\n }\n }\n this.amnAppFormData.origNames = this.origNames;\n this.amnAppFormData.disallowUpdate = this.disallowUpdate;\n store.dispatch('setAmnAppFormData', this.amnAppFormData);\n this.canGoNextCheck();\n\n } catch (err) {\n this.ai.trackException('Error, Unable to load application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n get hasNameChanged() {\n const _firstNameCheck = this.individualDetails?.firstName?.trim() == this.amnAppFormData.origNames?.firstName?.trim();\n const _otherNameCheck = this.individualDetails?.otherName?.trim() == this.amnAppFormData.origNames?.otherName?.trim();\n const _surnameCheck = this.individualDetails?.surname?.trim() == this.amnAppFormData.origNames?.surname?.trim();\n return !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n get missingSurname(): boolean {\n return !this.individualDetails.surname;\n }\n\n get missingPreferredName(): boolean {\n return !this.individualDetails.preferredName;\n }\n get missingFiles(): boolean {\n return this.hasNameChanged && this.individualDetails?.files?.length < 1;\n }\n get missingGender(): boolean {\n return !this.individualDetails.gender;\n }\n get missingBirthDate(): boolean {\n return !this.individualDetails.birthDate;\n }\n get missingPlaceOfBirth(): boolean {\n return !this.individualDetails.birthPlace;\n }\n get missingCountryOfBirth(): boolean {\n return !this.individualDetails.birthPlaceCountry;\n }\n get missingEmail(): boolean {\n return !this.individualDetails.communicationEmail?.email;\n }\n get contactPhoneInfoMissing(): boolean {\n return !(this.individualDetails?.mobilePhone?.phoneNumber || this.individualDetails?.businessPhone?.phoneNumber || this.individualDetails?.workPhone?.phoneNumber);\n }\n get addressMissing(): boolean {\n return !this.individualDetails?.postalAddress;\n }\n\n get isValidForm(): boolean {\n return !this.missingSurname && !this.missingGender && !this.missingBirthDate && !this.missingFiles && !this.missingPlaceOfBirth\n && !this.missingCountryOfBirth && !this.missingEmail && !this.contactPhoneInfoMissing && !this.addressMissing;\n }\n\n private canGoNextCheck() {\n const correctInfo: boolean = this.amnAppFormData.individualDetails?.isCurrentDetailCorrect ? true : false;\n this.eventCtrl.emit('canGoNext', this.isValidForm && correctInfo, 'application details');\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n private updateCurrentDetails() {\n this.individualDetails.workPhone = this.individualDetails.workPhone?.phoneNumber ? this.individualDetails.workPhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessFax = this.individualDetails.businessFax?.phoneNumber ? this.individualDetails.businessFax :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.mobilePhone = this.individualDetails.mobilePhone?.phoneNumber ? this.individualDetails.mobilePhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessPhone = this.individualDetails.businessPhone?.phoneNumber ? this.individualDetails.businessPhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.birthPlace = this.individualDetails.birthPlace || '';\n this.showUpdateDetailsModal = true;\n }\n\n private async reloadCurrentDetails() {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.AmNewApi?.apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet(this.onlineApplication.id, false)\n ]);\n this.individualDetails = resp[0].data.data;\n this.amnAppFormData.individualDetails = this.individualDetails;\n store.dispatch('setAmnAppFormData', this.amnAppFormData);\n this.canGoNextCheck();\n } catch (err) {\n this.ai.trackException('Error, Unable to reload application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private toCurrency(value: any): string {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n}\n\n\n","import { render } from \"./amn-applicant-details.html?vue&type=template&id=20e9740a&scoped=true&ts=true\"\nimport script from \"./amn-applicant-details.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-applicant-details.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-applicant-details.scss?vue&type=style&index=0&id=20e9740a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-20e9740a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelRadio as _vModelRadio, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-43e86204\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-associate-m-category\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Associate Membership Category\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"mt-3\" }, \"Please indicate the category under which you seek to be eligible for associate membership to The Law Society\", -1))\nconst _hoisted_4 = { class: \"row main-content mt-3\" }\nconst _hoisted_5 = { class: \"radio-button-group\" }\nconst _hoisted_6 = { class: \"mb-3\" }\nconst _hoisted_7 = { class: \"radio-button mb-3\" }\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = { class: \"radio-button-elmt\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n], -1))\nconst _hoisted_11 = { class: \"radio-text\" }\nconst _hoisted_12 = {\n key: 0,\n class: \"ml-4 pt-2\"\n}\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Note:\"),\n /*#__PURE__*/_createTextVNode(\" Associate Membership does not authorise you to either engage in legal practice in this jurisdiction or be held out as being authorised to engage in legal practice in this jurisdiction, unless you are the holder of an Australian practising certificate or an Australian Registration Certificate as an Australian-Registered Foreign Lawyer.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_AmnAssociateMCategoryOne = _resolveComponent(\"AmnAssociateMCategoryOne\")\n const _component_AmnAssociateMCategoryTwo = _resolveComponent(\"AmnAssociateMCategoryTwo\")\n const _component_AmnAssociateMCategoryThree = _resolveComponent(\"AmnAssociateMCategoryThree\")\n const _component_AmnAssociateMCategoryFour = _resolveComponent(\"AmnAssociateMCategoryFour\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.categoryList, (c, idx) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _createElementVNode(\"label\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.currentSelection) = $event)),\n value: c.id,\n name: \"am-category\"\n }, null, 8, _hoisted_8), [\n [_vModelRadio, _ctx.currentSelection]\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n _createElementVNode(\"span\", _hoisted_11, _toDisplayString(c.description), 1)\n ])\n ]),\n (_ctx.currentSelection == idx + 1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n (idx==0)\n ? (_openBlock(), _createBlock(_component_AmnAssociateMCategoryOne, {\n key: 0,\n categoryDetail: _ctx.amnAppFormData.categoryDetail,\n \"onUpdate:categoryDetail\": _cache[1] || (_cache[1] = $event => ((_ctx.amnAppFormData.categoryDetail) = $event)),\n australianJurisdictionsList: _ctx.australianJurisdictionsList,\n \"onUpdate:australianJurisdictionsList\": _cache[2] || (_cache[2] = $event => ((_ctx.australianJurisdictionsList) = $event)),\n onFormChanged: _ctx.formChanged,\n onDeleteFile: _ctx.deleteFile,\n uploading: _ctx.uploading,\n \"onUpdate:uploading\": _cache[3] || (_cache[3] = $event => ((_ctx.uploading) = $event))\n }, null, 8, [\"categoryDetail\", \"australianJurisdictionsList\", \"onFormChanged\", \"onDeleteFile\", \"uploading\"]))\n : _createCommentVNode(\"\", true),\n (idx==1)\n ? (_openBlock(), _createBlock(_component_AmnAssociateMCategoryTwo, {\n key: 1,\n categoryDetail: _ctx.amnAppFormData.categoryDetail,\n \"onUpdate:categoryDetail\": _cache[4] || (_cache[4] = $event => ((_ctx.amnAppFormData.categoryDetail) = $event)),\n admissionPlaceList: _ctx.admissionPlaceList,\n \"onUpdate:admissionPlaceList\": _cache[5] || (_cache[5] = $event => ((_ctx.admissionPlaceList) = $event)),\n onFormChanged: _ctx.formChanged,\n onDeleteFile: _ctx.deleteFile,\n uploading: _ctx.uploading,\n \"onUpdate:uploading\": _cache[6] || (_cache[6] = $event => ((_ctx.uploading) = $event))\n }, null, 8, [\"categoryDetail\", \"admissionPlaceList\", \"onFormChanged\", \"onDeleteFile\", \"uploading\"]))\n : _createCommentVNode(\"\", true),\n (idx==2)\n ? (_openBlock(), _createBlock(_component_AmnAssociateMCategoryThree, {\n key: 2,\n categoryDetail: _ctx.amnAppFormData.categoryDetail,\n \"onUpdate:categoryDetail\": _cache[7] || (_cache[7] = $event => ((_ctx.amnAppFormData.categoryDetail) = $event)),\n onIsBusy: _ctx.isBusy\n }, null, 8, [\"categoryDetail\", \"onIsBusy\"]))\n : _createCommentVNode(\"\", true),\n (idx==3)\n ? (_openBlock(), _createBlock(_component_AmnAssociateMCategoryFour, {\n key: 3,\n categoryDetail: _ctx.amnAppFormData.categoryDetail,\n \"onUpdate:categoryDetail\": _cache[8] || (_cache[8] = $event => ((_ctx.amnAppFormData.categoryDetail) = $event)),\n onFormChanged: _ctx.formChanged,\n onDeleteFile: _ctx.deleteFile,\n uploading: _ctx.uploading,\n \"onUpdate:uploading\": _cache[9] || (_cache[9] = $event => ((_ctx.uploading) = $event))\n }, null, 8, [\"categoryDetail\", \"onFormChanged\", \"onDeleteFile\", \"uploading\"]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n }), 256)),\n _hoisted_13\n ])\n ])\n ], 64)),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode, vModelSelect as _vModelSelect, withDirectives as _withDirectives, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-504b3075\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-associate-m-category-one\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Select this category if you have been admitted to practise law in a State or Territory of Australia but do not hold a current practising certifcate issued by The Law Society of New South Wales\", -1))\nconst _hoisted_3 = {\n class: \"mt-2\",\n style: {\"border\":\"1px solid var(--ls-slate)\"}\n}\nconst _hoisted_4 = { style: {\"margin\":\"7.5px 15px\"} }\nconst _hoisted_5 = { style: {\"display\":\"flex\",\"margin\":\"7.5px 0 !important\",\"flex-flow\":\"row wrap\",\"justify-content\":\"space-between\",\"align-items\":\"center\"} }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Jurisdiction(s) within Australia where you are admitted\", -1))\nconst _hoisted_7 = [\"disabled\"]\nconst _hoisted_8 = { style: {\"padding\":\"10px\",\"margin\":\"7.5px 0\",\"display\":\"flex\",\"flex-flow\":\"row nowrap\",\"justify-content\":\"space-between\",\"border\":\"1px solid grey\",\"align-items\":\"center\"} }\nconst _hoisted_9 = {\n class: \"input-box mt-2\",\n style: {\"width\":\"100%\",\"margin-right\":\"0.5em\"}\n}\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of admission\", -1))\nconst _hoisted_11 = {\n class: \"dropdown-menu mt-1\",\n style: {\"width\":\"100%\",\"margin-left\":\"0.5em\",\"margin-right\":\"0.5em\"}\n}\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Jurisdiction\", -1))\nconst _hoisted_13 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_14 = [\"onUpdate:modelValue\"]\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: null,\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_16 = [\"value\"]\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_18 = [\"disabled\", \"onClick\"]\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", null, \"Attach a copy of the Certificate of Admission\", -1))\nconst _hoisted_21 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_23 = { class: \"file-list mb-2\" }\nconst _hoisted_24 = { class: \"file-name\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_26 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"button\", {\n disabled: !_ctx.allowAddJurisdiction,\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.addJurisdictionRow())),\n class: \"btn btn-secondary\"\n }, \"Add\", 8, _hoisted_7)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.jurisdictionList, (jL, index) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _createElementVNode(\"div\", _hoisted_9, [\n _hoisted_10,\n _createVNode(_component_date_picker, {\n onChange: _cache[1] || (_cache[1] = $event => (_ctx.updateData())),\n format: \"DD/MM/YYYY\",\n value: jL.admissionDate,\n \"onUpdate:value\": $event => ((jL.admissionDate) = $event),\n \"input-class\": \"normal\"\n }, null, 8, [\"value\", \"onUpdate:value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createElementVNode(\"div\", _hoisted_13, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": $event => ((jL.australianJurisdiction) = $event),\n onChange: _cache[2] || (_cache[2] = $event => (_ctx.updateData()))\n }, [\n _hoisted_15,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.australianJurisdictionsList, (a) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n (!_ctx.offJurisdiction(jL.australianJurisdiction, a))\n ? (_openBlock(), _createElementBlock(\"option\", {\n key: 0,\n value: a\n }, _toDisplayString(a.name), 9, _hoisted_16))\n : _createCommentVNode(\"\", true)\n ], 64))\n }), 256))\n ], 40, _hoisted_14), [\n [_vModelSelect, jL.australianJurisdiction]\n ])\n ]),\n _hoisted_17\n ]),\n _createElementVNode(\"button\", {\n disabled: _ctx.jurisdictionList.length == 1,\n onClick: $event => (_ctx.deleteJurisdictionRow(index)),\n class: \"btn btn-secondary sml\",\n style: {\"margin-left\":\"0.5em\",\"margin-top\":\"2em\"}\n }, \"Remove\", 8, _hoisted_18)\n ]))\n }), 256))\n ])\n ]),\n _hoisted_19,\n _hoisted_20,\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[3] || (_cache[3] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.categoryDetail.admittedInAustraliaFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_21, [\n _hoisted_22,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.categoryDetail.admittedInAustraliaFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, [\n _hoisted_25,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_26)\n ]))\n }), 256))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AmNewRecordCategoryDetailJurisdiction, Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n categoryDetail: Object,\n isSectionLoading: Boolean,\n australianJurisdictionsList: Array,\n uploading: Boolean,\n },\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop,\n DatePicker\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnAssociateMCategoryOne extends Vue {\n private categoryDetail!: any;\n private isSectionLoading!: boolean;\n private australianJurisdictionsList!: any;\n private uploading!: boolean;\n\n private jurisdictionList: Array = [];\n\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n // 1 - admittedInAustraliaFiles\n // 2 - foreignLawyerFiles\n // 3 - \n // 4 - qualificationInstitutionFiles\n private selectedOption = null as any;\n\n private fileList: Array = [];\n\n private australianJurisdiction: any = {};\n\n\n mounted(): void {\n if (this.categoryDetail?.amNewRecordCategoryDetailJurisdictions?.length > 0) {\n\n this.jurisdictionList = JSON.parse(JSON.stringify(this.categoryDetail.amNewRecordCategoryDetailJurisdictions));\n this.jurisdictionList.forEach((x: AmNewRecordCategoryDetailJurisdiction, i) => {\n this.jurisdictionList[i].admissionDate = new Date(x.admissionDate);\n });\n this.updateData();\n } else {\n this.jurisdictionList.push({\n id: 0,\n admissionDate: null,\n australianJurisdiction: null,\n });\n }\n }\n\n updateData(): void {\n this.categoryDetail.amNewRecordCategoryDetailJurisdictions = this.jurisdictionList;\n this.$emit('formChanged', {\n selectedOption: 1,\n fileList: this.fileList,\n });\n this.fileList = [];\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: 1,\n fileList: this.fileList,\n });\n this.fileList = [];\n }\n\n private deleteFile(fileId?: number): void {\n this.$emit('deleteFile', fileId);\n }\n\n private addJurisdictionRow(): void {\n if (this.allowAddJurisdiction) {\n this.jurisdictionList.unshift({\n id: 0,\n admissionDate: null,\n australianJurisdiction: null\n });\n this.updateData();\n }\n }\n\n private deleteJurisdictionRow(index: number): void {\n if (this.jurisdictionList.length != 1) {\n this.jurisdictionList.splice(index, 1);\n this.updateData();\n }\n }\n\n private offJurisdiction(selectedVal: any, itemToChk: any): boolean {\n if(selectedVal) {\n return this.jurisdictionList.filter(\n x => itemToChk.id == x?.australianJurisdiction?.id && selectedVal.id !== x?.australianJurisdiction?.id\n ).length > 0;\n } else {\n return this.jurisdictionList.filter(x => itemToChk.id == x?.australianJurisdiction?.id).length > 0;\n }\n }\n\n get allowAddJurisdiction(): boolean {\n return this.jurisdictionList?.length < this.australianJurisdictionsList.length &&\n !(this.jurisdictionList.filter((jurisdiction: any) => !jurisdiction.admissionDate || !jurisdiction.australianJurisdiction).length > 0);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amn-associate-m-category-one.html?vue&type=template&id=504b3075&scoped=true&ts=true\"\nimport script from \"./amn-associate-m-category-one.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-associate-m-category-one.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-associate-m-category-one.scss?vue&type=style&index=0&id=504b3075&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-504b3075\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, createTextVNode as _createTextVNode, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-41416069\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-associate-m-category-two\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Select this category if you have been admitted to practise law in a foreign jurisdiction\", -1))\nconst _hoisted_3 = { class: \"input-box mt-2\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of admission in foreign jurisdiction\", -1))\nconst _hoisted_5 = { class: \"dropdown-menu mt-2\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Place of admission\", -1))\nconst _hoisted_7 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", {\n value: \"\",\n disabled: \"\",\n selected: \"\"\n}, \"-- Please select --\", -1))\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = { class: \"input-box mt-2\" }\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of foreign jurisdiction\", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", null, \"Attach a copy of the Certificate of Admission\", -1))\nconst _hoisted_14 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_16 = { class: \"file-list mb-2\" }\nconst _hoisted_17 = { class: \"file-name\" }\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_19 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: _ctx.categoryDetail.admissionDate,\n \"onUpdate:value\": _cache[0] || (_cache[0] = $event => ((_ctx.categoryDetail.admissionDate) = $event)),\n \"input-class\": \"normal\"\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.categoryDetail.admissionPlace) = $event))\n }, [\n _hoisted_8,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.admissionPlaceList, (a) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: a.id, name: a.name, description: a.description}\n }, _toDisplayString(a.description), 9, _hoisted_9))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.categoryDetail.admissionPlace]\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n _hoisted_11,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.categoryDetail.foreignJurisdiction) = $event)),\n placeholder: \"e.g. New York\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.categoryDetail.foreignJurisdiction]\n ])\n ]),\n _hoisted_12,\n _hoisted_13,\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[3] || (_cache[3] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.categoryDetail.foreignLawyerFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _hoisted_15,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.categoryDetail.foreignLawyerFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_16, [\n _createElementVNode(\"div\", _hoisted_17, [\n _hoisted_18,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_19)\n ]))\n }), 256))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n categoryDetail: Object,\n isSectionLoading: Boolean,\n admissionPlaceList: Array,\n uploading: Boolean,\n },\n components: {\n LoadingIndicator,\n Popover,\n FileDragAndDrop,\n DatePicker\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnAssociateMCategoryTwo extends Vue {\n private categoryDetail!: any;\n private isSectionLoading!: boolean;\n private admissionPlaceList!: any;\n private uploading!: boolean;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n // 1 - admittedInAustraliaFiles\n // 2 - foreignLawyerFiles\n // 3 - \n // 4 - qualificationInstitutionFiles\n private selectedOption = 2;\n\n private fileList: Array = [];\n\n @Watch('selectedOption')\n private onSelectedOptionChanged(): void {\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n fileList: this.fileList\n });\n\n this.$emit('validForm', this.isFormValid());\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: this.selectedOption,\n fileList: this.fileList,\n });\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private isFormValid(): boolean {\n if (this.selectedOption == 0) {\n return true;\n } else if (this.selectedOption == 1 && this.fileList.length > 0) {\n return true;\n } else {\n return false;\n }\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amn-associate-m-category-two.html?vue&type=template&id=41416069&scoped=true&ts=true\"\nimport script from \"./amn-associate-m-category-two.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-associate-m-category-two.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-associate-m-category-two.scss?vue&type=style&index=0&id=41416069&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-41416069\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, vModelText as _vModelText, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5acf1876\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-associate-m-category-three\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Select this category if you are employed in a management role in a law office and the principal(s) are Solicitor Members of The Law Society of New South Wales\", -1))\nconst _hoisted_3 = {\n key: 0,\n class: \"input-box mt-2\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Jurisdiction\", -1))\nconst _hoisted_5 = { class: \"input-box mt-2\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Your job title\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-info-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Please note, your employer may be contacted in order to confirm your employment status. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_FirmSearch = _resolveComponent(\"FirmSearch\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createVNode(_component_FirmSearch, {\n firm: _ctx.firm,\n \"onUpdate:firm\": _cache[0] || (_cache[0] = $event => ((_ctx.firm) = $event)),\n label: 'Name of law office',\n onUpdateFirm: _ctx.updateFirm,\n onIsBusy: _ctx.isBusy,\n onAddNewFirm: _ctx.addNewFirm\n }, null, 8, [\"firm\", \"onUpdateFirm\", \"onIsBusy\", \"onAddNewFirm\"]),\n (_ctx.categoryDetail.firmId == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"e.g. New South Wales\",\n maxlength: \"50\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.categoryDetail.jurisdiction) = $event))\n }, null, 512), [\n [_vModelText, _ctx.categoryDetail.jurisdiction]\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"Job title\",\n maxlength: \"50\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.categoryDetail.jobTitle) = $event))\n }, null, 512), [\n [_vModelText, _ctx.categoryDetail.jobTitle]\n ]),\n _hoisted_7\n ])\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vModelText as _vModelText, withKeys as _withKeys, withDirectives as _withDirectives, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, vShow as _vShow, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-29e57ce5\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"firm-search\" }\nconst _hoisted_2 = {\n class: \"input-box mt-3\",\n style: {\"display\":\"flex\",\"flex-direction\":\"row\",\"justify-content\":\"space-between\"}\n}\nconst _hoisted_3 = { class: \"field_name\" }\nconst _hoisted_4 = { class: \"flex-row autocomplete pa-0 mt-1\" }\nconst _hoisted_5 = { class: \"icon\" }\nconst _hoisted_6 = {\n key: 0,\n class: \"fas fa-spinner fa-spin\"\n}\nconst _hoisted_7 = {\n key: 1,\n class: \"fal fa-search\"\n}\nconst _hoisted_8 = {\n key: 0,\n id: \"autocomplete-results\",\n class: \"autocomplete-results\"\n}\nconst _hoisted_9 = [\"onClick\", \"innerHTML\"]\nconst _hoisted_10 = {\n key: 0,\n class: \"not-found\"\n}\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"No search results found\", -1))\nconst _hoisted_12 = { class: \"center buttons\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Search again or\", -1))\nconst _hoisted_14 = { class: \"input-box\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"span\", null, [\n _createElementVNode(\"label\", _hoisted_3, _toDisplayString(_ctx.label), 1)\n ]),\n _createElementVNode(\"span\", null, [\n (_ctx.addNewFirm)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-secondary sml\",\n onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.searchAgain && _ctx.searchAgain(...args)))\n }, \"Search again\"))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _withDirectives(_createElementVNode(\"div\", _hoisted_4, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"ma-0\",\n style: {\"width\":\"100%\"},\n type: \"text\",\n ref: \"firmSearch\",\n autocomplete: \"new-name\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.firm.firmName) = $event)),\n maxlength: \"50\",\n onInput: _cache[2] || (_cache[2] = $event => (_ctx.formDirty = true)),\n onKeydown: [\n _cache[3] || (_cache[3] = _withKeys((...args) => (_ctx.onArrowDown && _ctx.onArrowDown(...args)), [\"down\"])),\n _cache[4] || (_cache[4] = _withKeys((...args) => (_ctx.onArrowUp && _ctx.onArrowUp(...args)), [\"up\"])),\n _cache[5] || (_cache[5] = _withKeys((...args) => (_ctx.onEnter && _ctx.onEnter(...args)), [\"enter\"]))\n ],\n placeholder: \"Enter firm name to search\"\n }, null, 544), [\n [_vModelText, _ctx.firm.firmName]\n ]),\n _createElementVNode(\"span\", _hoisted_5, [\n (_ctx.isSearching)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_6))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_7))\n ]),\n (_ctx.isOpen && _ctx.firmList.length > 0)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_8, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.firmList, (f, i) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: i,\n onClick: $event => (_ctx.selectFirmFromSearch(f)),\n class: _normalizeClass([\"autocomplete-result\", { 'is-active': i === _ctx.arrowCounter }]),\n innerHTML: _ctx.highlightWord( f.firmName.trim() )\n }, null, 10, _hoisted_9))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ], 512), [\n [_vShow, !_ctx.addNewFirm]\n ]),\n (!_ctx.isOpen && _ctx.noSearchResult && !_ctx.addNewFirm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _createElementVNode(\"button\", {\n class: \"btn btn-primary sml ml-2\",\n onClick: _cache[6] || (_cache[6] = (...args) => (_ctx.addNewFirmFromHere && _ctx.addNewFirmFromHere(...args)))\n }, \"Add new\")\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"div\", _hoisted_14, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.newFirmName) = $event)),\n ref: \"addNewFirmName\",\n placeholder: \"Enter name\",\n maxlength: \"50\",\n onInput: _cache[8] || (_cache[8] = $event => (_ctx.formDirty = true))\n }, null, 544), [\n [_vModelText, _ctx.newFirmName]\n ])\n ], 512), [\n [_vShow, _ctx.addNewFirm]\n ]),\n _hoisted_15\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { debounce } from \"lodash\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { FirmNameSearch } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n firm: Object,\n label: String,\n },\n components: {}\n})\nexport default class FirmSearch extends Vue {\n private firm!: FirmNameSearch;\n private label!: string;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n // private keyword = this.firm?.firmName ? this.firm.firmName : '';\n private isSearching = false;\n private isOpen = false;\n private stopSearch = false;\n\n private formDirty = false;\n\n private arrowCounter = -1;\n private searchDebounced: any = null;\n\n private noSearchResult = false;\n private addNewFirm = false;\n\n private firmList = [];\n\n private newFirmName = '';\n\n @Watch('isSearching')\n private isSearchingChange() {\n this.$emit('isBusy', this.isSearching || this.isOpen);\n }\n\n @Watch('isOpen')\n private isOpenChange() {\n this.$emit('isBusy', this.isSearching || this.isOpen);\n }\n\n @Watch('firm.firmName')\n private onKeywordChange(): void {\n if (!this.addNewFirm) {\n this.$emit('isBusy', this.isSearching || this.isOpen);\n if (this.firm.firmName?.trim().length > 2 && !this.stopSearch && this.formDirty) {\n setTimeout(this.searchDebounced.cancel, 0);\n setTimeout(this.searchDebounced, 0);\n }\n }\n }\n\n @Watch('newFirmName')\n private onNewFirmNameChange(): void {\n if (this.newFirmName?.length > 0) {\n this.$emit('updateFirm', {\n firmId: this.firm.firmId,\n firmName: this.newFirmName,\n });\n }\n this.$emit('isBusy', false);\n }\n\n mounted(): void {\n document.addEventListener('click', this.handleClickOutside);\n this.searchDebounced = debounce(() => {\n this.stopSearch = false;\n if (this.firm.firmName.trim() !== '') {\n this.getFirmList();\n }\n }, 500);\n this.$nextTick(() => {\n this.addNewFirm = this.firm.firmId === 0;\n this.newFirmName = this.firm.firmName;\n });\n }\n\n beforeUnmount(): void {\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private handleClickOutside(event: any) {\n if (this.$el !== (event.target)) {\n if (this.isOpen) {\n this.isOpen = false;\n this.arrowCounter = -1;\n this.$emit('updateFirm', {\n firmId: null,\n firmName: '',\n });\n }\n }\n }\n\n private getFirmList() {\n if (this.firm.firmName.length > 2) {\n this.isSearching = true;\n\n const body: any = {\n skip: 0,\n take: 0,\n keyword: this.firm.firmName.trim(),\n }\n this.apiService.CodeApi?.apiV1CodeSearchFirmsPost(body)\n .then((res: any) => {\n this.processResult(res);\n })\n .catch((err: any) => {\n this.ai.trackException('Error getting firm list: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting firm list: ' + err);\n this.isSearching = false;\n })\n }\n\n }\n\n private processResult(res: any) {\n this.firmList = res.data.data;\n this.isSearching = false;\n if (this.firmList.length > 0) {\n this.arrowCounter = -1;\n this.isOpen = this.firmList.length > 0;\n this.noSearchResult = false;\n } else {\n this.$emit('updateFirm', {\n firmId: null,\n firmName: '',\n });\n this.isOpen = false;\n this.noSearchResult = true;\n const el = this.$refs['firmSearch'] as HTMLElement;\n setTimeout(() => {\n el.focus(), 500\n })\n }\n }\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.firm.firmName + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.firmList.length > 0) {\n if (this.arrowCounter < this.firmList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n this.formDirty = false;\n this.isOpen = false;\n if (this.firmList.length > 0) {\n this.selectFirmFromSearch(\n this.firmList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectFirmFromSearch(firm: any) {\n this.isOpen = false;\n this.stopSearch = true;\n // this.firmName = firm.firmName;\n // this.firmId = firm.firmId;\n // this.firm.firmName = firm.firmName;\n setTimeout(() => {\n this.stopSearch = false;\n }, 500)\n const _firm: FirmNameSearch =\n { firmId: firm.firmId, firmName: firm.firmName };\n this.$emit('updateFirm', _firm);\n // this.keyword = '';\n }\n\n private addNewFirmFromHere() {\n this.addNewFirm = true;\n this.newFirmName = '';\n this.firm.firmId = 0;\n this.$emit('updateFirm', {\n firmId: this.firm.firmId,\n firmName: this.newFirmName,\n });\n const el = this.$refs['addNewFirmName'] as HTMLElement;\n setTimeout(() => {\n el.focus(), 500\n })\n }\n\n private searchAgain() {\n this.addNewFirm = false;\n this.$emit('updateFirm', {\n firmId: null,\n firmName: '',\n });\n const el = this.$refs['firmSearch'] as HTMLElement;\n setTimeout(() => {\n el.focus(), 500\n })\n }\n\n}\n\n","import { render } from \"./firmSearch.html?vue&type=template&id=29e57ce5&scoped=true&ts=true\"\nimport script from \"./firmSearch.ts?vue&type=script&lang=ts\"\nexport * from \"./firmSearch.ts?vue&type=script&lang=ts\"\n\nimport \"./firmSearch.scss?vue&type=style&index=0&id=29e57ce5&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-29e57ce5\"]])\n\nexport default __exports__","import { Options, Vue } from \"vue-property-decorator\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FirmSearch from \"@/shared/components/firmSearch/index.vue\";\nimport { FirmNameSearch } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n categoryDetail: Object,\n },\n components: {\n LoadingIndicator,\n FirmSearch,\n },\n})\nexport default class AmnAssociateMCategoryThree extends Vue {\n private categoryDetail!: any;\n\n private firm: FirmNameSearch = {};\n private isAddNewFirm = false;\n\n mounted(): void {\n this.firm = { firmId: this.categoryDetail.firmId, firmName: this.categoryDetail.firmName };\n }\n\n private updateFirm(firm: FirmNameSearch) {\n this.firm = firm;\n this.categoryDetail.firmId = firm.firmId;\n this.categoryDetail.firmName = firm.firmName;\n this.categoryDetail.jurisdiction = this.firm.firmId === 0 ? this.categoryDetail.jurisdiction : '';\n }\n\n private isBusy(isBusy: boolean) {\n this.$emit('isBusy', isBusy);\n }\n\n private addNewFirm(isAddNew: boolean) {\n this.isAddNewFirm = isAddNew;\n }\n\n}\n\n","import { render } from \"./amn-associate-m-category-three.html?vue&type=template&id=5acf1876&scoped=true&ts=true\"\nimport script from \"./amn-associate-m-category-three.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-associate-m-category-three.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-associate-m-category-three.scss?vue&type=style&index=0&id=5acf1876&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5acf1876\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, vModelText as _vModelText, withDirectives as _withDirectives, resolveComponent as _resolveComponent, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-c43d506a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-associate-m-category-four\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Select this category if you have a legal qualification recognised for the purpose of admission as a lawyer in Australia and you do not fit into any of the other categories\", -1))\nconst _hoisted_3 = { class: \"input-box mt-2\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of legal qualification\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"input-box mt-2\" }, [\n /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of institution\")\n], -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", null, \"Attach a copy of your degree or qualification.\", -1))\nconst _hoisted_8 = {\n key: 0,\n class: \"validation-msg error ml-1\"\n}\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_10 = { class: \"file-list mb-2\" }\nconst _hoisted_11 = { class: \"file-name\" }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_13 = [\"onClick\"]\n\nexport function render(_ctx, _cache) {\n const _component_InstitutionSearch = _resolveComponent(\"InstitutionSearch\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _hoisted_4,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n placeholder: \"Name of legal qualification\",\n maxlength: \"50\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.categoryDetail.legalQualification) = $event))\n }, null, 512), [\n [_vModelText, _ctx.categoryDetail.legalQualification]\n ])\n ]),\n _hoisted_5,\n _createVNode(_component_InstitutionSearch, {\n institution: _ctx.categoryDetail.qualificationInstitution,\n \"onUpdate:institution\": _cache[1] || (_cache[1] = $event => ((_ctx.categoryDetail.qualificationInstitution) = $event)),\n onUpdateInstitution: _ctx.updateInstitution\n }, null, 8, [\"institution\", \"onUpdateInstitution\"]),\n _hoisted_6,\n _hoisted_7,\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[2] || (_cache[2] = $event => (_ctx.fileListChanged($event))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.categoryDetail.qualificationInstitutionFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n _hoisted_9,\n _createTextVNode(\" File required. \")\n ]))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.categoryDetail.qualificationInstitutionFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _hoisted_12,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_13)\n ]))\n }), 256))\n ]))\n}","import { vModelText as _vModelText, withKeys as _withKeys, createElementVNode as _createElementVNode, withDirectives as _withDirectives, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3a265c6f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"institution-search\" }\nconst _hoisted_2 = { class: \"icon\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"fas fa-spinner fa-spin\"\n}\nconst _hoisted_4 = {\n key: 1,\n class: \"fal fa-search\"\n}\nconst _hoisted_5 = {\n key: 0,\n id: \"autocomplete-results\",\n class: \"autocomplete-results\"\n}\nconst _hoisted_6 = [\"onClick\", \"innerHTML\"]\nconst _hoisted_7 = {\n key: 1,\n id: \"autocomplete-results\",\n class: \"autocomplete-results\"\n}\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"li\", { class: \"no-result\" }, \"No search result found\", -1))\nconst _hoisted_9 = { class: \"no-result-helper\" }\nconst _hoisted_10 = { style: {\"display\":\"absolute\",\"margin-top\":\"-35px\",\"margin-left\":\"calc(100% - 114px)\"} }\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n (!_ctx.showInputField)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"flex-row autocomplete pa-0 mt-1\", _ctx.error ? 'error': ''])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"ma-0\",\n style: {\"width\":\"100%\"},\n type: \"text\",\n ref: \"firmSearch\",\n autocomplete: \"new-name\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.autoCompInstitution) = $event)),\n maxlength: \"50\",\n onInput: _cache[1] || (_cache[1] = $event => (_ctx.formDirty = true)),\n onKeydown: [\n _cache[2] || (_cache[2] = _withKeys((...args) => (_ctx.onArrowDown && _ctx.onArrowDown(...args)), [\"down\"])),\n _cache[3] || (_cache[3] = _withKeys((...args) => (_ctx.onArrowUp && _ctx.onArrowUp(...args)), [\"up\"])),\n _cache[4] || (_cache[4] = _withKeys((...args) => (_ctx.onEnter && _ctx.onEnter(...args)), [\"enter\"]))\n ],\n placeholder: \"Enter keyword to search\"\n }, null, 544), [\n [_vModelText, _ctx.autoCompInstitution]\n ]),\n _createElementVNode(\"span\", _hoisted_2, [\n (_ctx.isSearching)\n ? (_openBlock(), _createElementBlock(\"i\", _hoisted_3))\n : (_openBlock(), _createElementBlock(\"i\", _hoisted_4))\n ]),\n (_ctx.isOpen && _ctx.institutionList.length > 0)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_5, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.institutionList, (f, i) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: i,\n onClick: $event => (_ctx.selectFirmFromSearch(f)),\n class: _normalizeClass([\"autocomplete-result\", { 'is-active': i === _ctx.arrowCounter }]),\n innerHTML: _ctx.highlightWord( f.name.trim() )\n }, null, 10, _hoisted_6))\n }), 128))\n ]))\n : (_ctx.formDirty && !this.isSearching && _ctx.institutionList.length == 0 && _ctx.enableAddInstitution)\n ? (_openBlock(), _createElementBlock(\"ul\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"li\", _hoisted_9, [\n _createTextVNode(\" Search again or \"),\n _createElementVNode(\"button\", {\n class: \"btn ml-2 btn-primary sml\",\n onClick: _cache[5] || (_cache[5] = $event => (_ctx.addNewInstitution()))\n }, \"Add new\")\n ])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2))\n : _createCommentVNode(\"\", true),\n (_ctx.showInputField && _ctx.enableAddInstitution)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"button\", {\n class: \"btn ml-2 btn-secondary sml right\",\n onClick: _cache[6] || (_cache[6] = $event => (_ctx.showSearchField()))\n }, \"Search again\")\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.error ? 'error': ''])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.manualInstitution) = $event)),\n placeholder: \"Enter name\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.manualInstitution]\n ])\n ], 2)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { debounce } from \"lodash\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { QualificationInstitution } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n institution: Object,\n error: Boolean,\n enableAddInstitution: Boolean,\n },\n components: {}\n})\nexport default class InstitutionSearch extends Vue {\n private institution!: QualificationInstitution;\n private error!: boolean;\n private enableAddInstitution!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n // private keyword = this.firm?.firmName ? this.institution.firmName : '';\n private isSearching = false;\n private isOpen = false;\n private stopSearch = false;\n\n // private isFirmIdValid = true;\n private formDirty = false;\n\n private arrowCounter = -1;\n private searchDebounced: any = null;\n\n private institutionList: QualificationInstitution[] = [];\n private showInputField = false;\n // private firmIdList = [];\n\n // private firmName = '';\n // private firmId = '';\n\n private manualInstitution = '';\n private autoCompInstitution = '';\n\n @Watch('isSearching')\n private isSearchingChange() {\n this.$emit('isBusy', this.isSearching || this.isOpen);\n }\n\n @Watch('isOpen')\n private isOpenChange() {\n this.$emit('isBusy', this.isSearching || this.isOpen);\n }\n\n @Watch('autoCompInstitution')\n private onKeywordChange(): void {\n this.$emit('isBusy', true);\n if ((this.institution?.name?.length > 0 && this.institution?.id != 0) &&\n this.autoCompInstitution !== this.institution?.name) {\n this.$emit('updateInstitution', null);\n } else if (this.autoCompInstitution.trim().length > 2 && !this.stopSearch && this.formDirty) {\n setTimeout(this.searchDebounced.cancel, 0);\n setTimeout(this.searchDebounced, 0);\n }\n // if (this.institutionList.filter((x: any) => x.id == this.institution?.id).length == 1) {\n // this.autoCompInstitution = this.institution.name;\n // } else {\n // this.$emit('updateInstitution', null);\n // if (this.autoCompInstitution?.trim().length > 2 && !this.stopSearch && this.formDirty) {\n // setTimeout(this.searchDebounced.cancel, 0);\n // setTimeout(this.searchDebounced, 0);\n // }\n // }\n }\n\n // @Watch('institution.id')\n // private onInstitutionIdChanged(): void {\n // console.log(this.institution);\n // if (this.institution?.id === 0) {\n // this.showInputField = true;\n // }\n // }\n\n @Watch('manualInstitution')\n private onManualInstitutionChanged(): void {\n if (this.manualInstitution?.trim().length == 0) {\n this.$emit('updateInstitution', null);\n } else {\n this.$emit('updateInstitution', {\n id: 0,\n name: this.manualInstitution,\n });\n }\n }\n\n mounted(): void {\n document.addEventListener('click', this.handleClickOutside);\n this.searchDebounced = debounce(() => {\n this.stopSearch = false;\n if (this.autoCompInstitution.trim() !== '') {\n this.getInstitutionsList();\n }\n }, 500);\n\n if (this.institution?.id >= 0) {\n this.institutionList.push(this.institution);\n }\n\n if (this.institution.id === 0) {\n this.manualInstitution = this.institution.name;\n this.isOpen = false;\n this.formDirty = false;\n this.showInputField = true;\n } else if (this.institution == null || this.institution.id >= 0) {\n this.autoCompInstitution = this.institution.name;\n this.isOpen = false;\n this.formDirty = false;\n this.showInputField = false;\n }\n\n }\n\n beforeUnmount(): void {\n document.addEventListener('click', this.handleClickOutside);\n }\n\n private handleClickOutside(event: any) {\n if (this.$el !== (event.target)) {\n if (this.isOpen) {\n this.isOpen = false;\n this.arrowCounter = -1;\n this.$emit('updateInstitution', null);\n }\n }\n }\n\n private getInstitutionsList() {\n if (this.autoCompInstitution.length > 2) {\n this.isSearching = true;\n\n const body: any = {\n skip: 0,\n take: 0,\n keyword: this.autoCompInstitution.trim(),\n }\n this.apiService.CodeApi?.apiV1CodeGetQualificationInstitutionsByKeywordSearchPost(body)\n .then((res: any) => {\n this.processResult(res);\n })\n .catch((err: any) => {\n this.ai.trackException('Error getting institution list: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Error getting institution list: ' + err);\n this.isSearching = false;\n })\n }\n\n }\n\n private processResult(res: any) {\n this.institutionList = res.data.data;\n this.isSearching = false;\n if (this.institutionList.length > 0) {\n this.arrowCounter = -1;\n this.isOpen = this.institutionList.length > 0;\n } else {\n this.$emit('updateInstitution', null);\n this.isOpen = false;\n }\n }\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.institution.name + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.institutionList.length > 0) {\n if (this.arrowCounter < this.institutionList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n this.formDirty = false;\n this.isOpen = false;\n if (this.institutionList.length > 0) {\n this.selectFirmFromSearch(\n this.institutionList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectFirmFromSearch(institution: QualificationInstitution) {\n this.isOpen = false;\n this.stopSearch = true;\n // this.firmName = firm.firmName;\n // this.firmId = firm.firmId;\n // this.institution.name = firm.firmName;\n setTimeout(() => {\n this.stopSearch = false;\n }, 500)\n const _institution: QualificationInstitution =\n { id: institution.id, name: institution.name, description: institution.description };\n this.autoCompInstitution = institution.name;\n this.$emit('updateInstitution', _institution);\n // this.keyword = '';\n }\n\n // private manualInput(institution: string): void {\n // console.log(institution);\n // this.$emit('updateInstitution', {\n // id: 0,\n // name: institution,\n // });\n // }\n\n private addNewInstitution(): void {\n this.isOpen = false;\n this.formDirty = false;\n this.showInputField = true;\n this.$emit('updateInstitution', null);\n }\n\n private showSearchField(): void {\n this.isOpen = false;\n this.formDirty = false;\n this.showInputField = false;\n this.$emit('updateInstitution', null);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n}\n\n\n\n","import { render } from \"./institutionSearch.html?vue&type=template&id=3a265c6f&scoped=true&ts=true\"\nimport script from \"./institutionSearch.ts?vue&type=script&lang=ts\"\nexport * from \"./institutionSearch.ts?vue&type=script&lang=ts\"\n\nimport \"./institutionSearch.scss?vue&type=style&index=0&id=3a265c6f&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3a265c6f\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport InstitutionSearch from \"@/shared/components/institutionSearch/index.vue\";\nimport { QualificationInstitution } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n categoryDetail: Object,\n uploading: Boolean,\n },\n components: {\n LoadingIndicator,\n FileDragAndDrop,\n InstitutionSearch,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnAssociateMCategoryFour extends Vue {\n private categoryDetail!: any;\n private uploading!: boolean;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n // 1 - admittedInAustraliaFiles\n // 2 - foreignLawyerFiles\n // 3 - \n // 4 - qualificationInstitutionFiles\n private selectedOption = null as any;\n\n private fileList: Array = [];\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.$emit('formChanged', {\n selectedOption: 4,\n fileList: this.fileList,\n });\n }\n\n private deleteFile(fileId?: number) {\n this.$emit('deleteFile', fileId);\n }\n\n private updateInstitution(institution: QualificationInstitution) {\n this.categoryDetail.qualificationInstitution = institution;\n }\n\n // private isBusy(isBusy: boolean) {\n // this.$emit('isBusy', isBusy);\n // }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n // get onlineApplication(): Application {\n // return store.getters.getOnlineApplication;\n // }\n\n}\n\n","import { render } from \"./amn-associate-m-category-four.html?vue&type=template&id=c43d506a&scoped=true&ts=true\"\nimport script from \"./amn-associate-m-category-four.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-associate-m-category-four.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-associate-m-category-four.scss?vue&type=style&index=0&id=c43d506a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c43d506a\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AmNewCategory, AmNewRecordCategoryDetail, Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport AmnAssociateMCategoryOne from \"./amn-associate-m-category-one/index.vue\";\nimport AmnAssociateMCategoryTwo from \"./amn-associate-m-category-two/index.vue\";\nimport AmnAssociateMCategoryThree from \"./amn-associate-m-category-three/index.vue\";\nimport AmnAssociateMCategoryFour from \"./amn-associate-m-category-four/index.vue\";\nimport _ from \"lodash\";\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n AmnAssociateMCategoryOne,\n AmnAssociateMCategoryTwo,\n AmnAssociateMCategoryThree,\n AmnAssociateMCategoryFour,\n ConfirmDialogue,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnAssociateMCategory extends Vue {\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private categoryList: AmNewCategory[] = [];\n private currentSelection = -1;\n private australianJurisdictionsList: any = {};\n private admissionPlaceList: any = {};\n\n private newSeed = 1;\n private uploading = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('currentSelection')\n private selectionChange() {\n this.initData();\n }\n\n @Watch('amnAppFormData.categoryDetail.admissionDate')\n private admissionDateChanged() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.australianJurisdiction')\n private australianJurisdictionChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.admissionPlace')\n private admissionPlaceChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.foreignJurisdiction')\n private foreignJurisdictionChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.firmName')\n private firmNameChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.jurisdiction')\n private jurisdictionChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.jobTitle')\n private jobTitleChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.legalQualification')\n private legalQualificationChange() {\n this.canGoNextCheck();\n }\n\n @Watch('amnAppFormData.categoryDetail.qualificationInstitution')\n private qualificationInstitutionChange() {\n console.log('watch', this.amnAppFormData?.categoryDetail?.qualificationInstitution);\n this.canGoNextCheck();\n }\n\n\n mounted() {\n this.eventCtrl.emit('canGoNext', false);\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetAmNewCategoriesGet(),\n this.apiService.AmNewApi?.apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet(this.onlineApplication.id),\n this.apiService.CodeApi?.apiV1CodeGetAustralianJurisdictionsGet(),\n this.apiService.CodeApi?.apiV1CodeGetAdmissionPlacesGet(),\n ]);\n this.categoryList = resp[0].data;\n this.amnAppFormData.categoryDetail = resp[1].data.data;\n this.australianJurisdictionsList = resp[2].data.data;\n this.admissionPlaceList = resp[3].data.data;\n this.currentSelection = this.amnAppFormData?.categoryDetail?.amNewCategoryId || -1;\n this.initData();\n store.dispatch('setAmnAppFormData', this.amnAppFormData);\n } catch (err) {\n this.ai.trackException('Error, Unable to load category details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load category details: ' + err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private initData() {\n let categoryDetail: AmNewRecordCategoryDetail = {};\n\n switch (this.currentSelection) {\n case 1:\n categoryDetail = {\n id: this.amnAppFormData.categoryDetail?.id || 0,\n amNewCategoryId: this.currentSelection,\n amNewApplicationId: this.amnAppFormData.individualDetails.amNewApplicationId,\n amNewRecordCategoryDetailJurisdictions: this.amnAppFormData.categoryDetail?.amNewRecordCategoryDetailJurisdictions || [],\n admittedInAustraliaFiles: this.amnAppFormData.categoryDetail?.admittedInAustraliaFiles || [],\n };\n break;\n case 2:\n categoryDetail = {\n id: this.amnAppFormData.categoryDetail?.id || 0,\n amNewCategoryId: this.currentSelection,\n amNewApplicationId: this.amnAppFormData.individualDetails.amNewApplicationId,\n admissionDate: this.amnAppFormData.categoryDetail?.foreignJurisdiction ? new Date(this.amnAppFormData.categoryDetail?.admissionDate) || null : null,\n admissionPlace: this.amnAppFormData.categoryDetail?.admissionPlace || null,\n foreignJurisdiction: this.amnAppFormData.categoryDetail?.foreignJurisdiction || '',\n foreignLawyerFiles: this.amnAppFormData.categoryDetail?.foreignLawyerFiles || [],\n };\n break;\n case 3:\n categoryDetail = {\n id: this.amnAppFormData.categoryDetail?.id || 0,\n amNewCategoryId: this.currentSelection,\n amNewApplicationId: this.amnAppFormData.individualDetails.amNewApplicationId,\n firmId: this.amnAppFormData.categoryDetail.firmId,\n firmName: this.amnAppFormData.categoryDetail.firmName || '',\n jurisdiction: this.amnAppFormData.categoryDetail?.jurisdiction || '',\n jobTitle: this.amnAppFormData.categoryDetail?.jobTitle || '',\n };\n break;\n case 4:\n categoryDetail = {\n id: this.amnAppFormData.categoryDetail?.id || 0,\n amNewCategoryId: this.currentSelection,\n amNewApplicationId: this.amnAppFormData.individualDetails.amNewApplicationId,\n legalQualification: this.amnAppFormData.categoryDetail?.legalQualification || '',\n qualificationInstitution: this.amnAppFormData.categoryDetail?.qualificationInstitution || {},\n qualificationInstitutionFiles: this.amnAppFormData.categoryDetail?.qualificationInstitutionFiles || [],\n };\n break;\n }\n\n this.amnAppFormData.categoryDetail = categoryDetail;\n this.$emit('update:isSectionLoading', false);\n this.canGoNextCheck();\n }\n\n private isFormValid(): boolean {\n const _admissionDate = this.amnAppFormData.categoryDetail.admissionDate?.toString().length > 12;\n const _validAustralianJurisdiction =\n this.amnAppFormData.categoryDetail?.amNewRecordCategoryDetailJurisdictions?.length > 0 &&\n this.amnAppFormData.categoryDetail?.amNewRecordCategoryDetailJurisdictions.filter(\n (x: any) => !x.admissionDate || !x.australianJurisdiction).length == 0;\n const _admittedInAustraliaFiles = this.amnAppFormData.categoryDetail?.admittedInAustraliaFiles?.length > 0;\n const _admissionPlaceId = this.amnAppFormData.categoryDetail?.admissionPlace?.id > 0;\n const _foreignJurisdiction = this.amnAppFormData.categoryDetail?.foreignJurisdiction && this.amnAppFormData.categoryDetail?.foreignJurisdiction?.trim() !== '';\n const _foreignLawyerFiles = this.amnAppFormData.categoryDetail?.foreignLawyerFiles?.length > 0;\n const _firmId = this.amnAppFormData.categoryDetail?.firmId >= 0;\n const _jurisdiction = this.amnAppFormData.categoryDetail?.firmId == 0 ? this.amnAppFormData.categoryDetail?.jurisdiction && this.amnAppFormData.categoryDetail?.jurisdiction?.trim() !== '' : true;\n const _firmName = this.amnAppFormData.categoryDetail?.firmName && this.amnAppFormData.categoryDetail?.firmName?.trim() !== '';\n const _jobTitle = this.amnAppFormData.categoryDetail?.jobTitle && this.amnAppFormData.categoryDetail?.jobTitle?.trim() !== '';\n const _legalQualification = this.amnAppFormData.categoryDetail?.legalQualification && this.amnAppFormData.categoryDetail?.legalQualification?.trim() !== '';\n const _qualificationInstitution = this.amnAppFormData.categoryDetail?.qualificationInstitution?.id > 0;\n const _qualificationInstitutionFiles = this.amnAppFormData.categoryDetail?.qualificationInstitutionFiles?.length > 0;\n\n switch (this.currentSelection) {\n case 1:\n return _validAustralianJurisdiction && _admittedInAustraliaFiles;\n case 2:\n return _admissionDate && _admissionPlaceId && _foreignJurisdiction && _foreignLawyerFiles;\n case 3:\n return _firmId && _firmName && _jobTitle && _jurisdiction;\n case 4:\n return _legalQualification && _qualificationInstitution && _qualificationInstitutionFiles;\n }\n return false;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isFormValid());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get amnApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private fileList: File[] = [];\n\n private formChanged(formData: any): void {\n const category: number = formData.selectionOption;\n this.fileList = formData.fileList;\n this.uploadAllFiles(category, this.fileList);\n }\n\n private deleteFile(id: number) {\n const _fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(_fileIdToDelete);\n }\n })\n\n }\n\n private async deleteFileFromServer(id: number) {\n let files: any[] = [];\n switch (this.currentSelection) {\n case 1:\n files = this.amnAppFormData.categoryDetail.admittedInAustraliaFiles;\n break;\n case 2:\n files = this.amnAppFormData.categoryDetail.foreignLawyerFiles;\n break;\n case 4:\n files = this.amnAppFormData.categoryDetail.qualificationInstitutionFiles;\n break;\n }\n await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id)\n .then(res => {\n console.log('File deleted: ', res);\n for (let i = 0; i < files.length; i++) {\n if (files[i].id === id) {\n files.splice(i, 1);\n }\n }\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n switch (this.currentSelection) {\n case 1:\n this.amnAppFormData.categoryDetail.admittedInAustraliaFiles = files;\n break;\n case 2:\n this.amnAppFormData.categoryDetail.foreignLawyerFiles = files;\n break;\n case 4:\n this.amnAppFormData.categoryDetail.qualificationInstitutionFiles = files;\n break;\n }\n })\n .catch(err => {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n })\n this.canGoNextCheck();\n\n }\n\n private async uploadAllFiles(category: number, fileList: Array): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n this.canGoNextCheck();\n }\n }\n\n private async uploadFile(file: File): Promise {\n // const _id: number = parseInt(this.$route.query.investigation as string, 10);\n this.getNextSeed();\n let _fileTypeId = 0;\n try {\n switch (this.currentSelection) {\n case 1:\n _fileTypeId = 2;\n break;\n case 2:\n _fileTypeId = 3;\n break;\n case 4:\n _fileTypeId = 4;\n break;\n }\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.onlineApplication.id,\n amNewFileTypeId: _fileTypeId,\n };\n switch (this.currentSelection) {\n case 1:\n await this.apiService.FileApi?.apiV1FileSaveAmNewFilePost(\n body\n ).then(res => {\n this.amnAppFormData.categoryDetail.admittedInAustraliaFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.amnAppFormData.id,\n })\n })\n break;\n case 2:\n await this.apiService.FileApi?.apiV1FileSaveAmNewFilePost(\n body\n ).then(res => {\n this.amnAppFormData.categoryDetail.foreignLawyerFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.amnAppFormData.id,\n })\n })\n break;\n case 3:\n break;\n case 4:\n await this.apiService.FileApi?.apiV1FileSaveAmNewFilePost(\n body\n ).then(res => {\n this.amnAppFormData.categoryDetail.qualificationInstitutionFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.amnAppFormData.id,\n })\n })\n break;\n }\n\n\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private getNextSeed() {\n let files = [];\n switch (this.currentSelection) {\n case 1:\n files = this.amnAppFormData.categoryDetail.admittedInAustraliaFiles;\n break;\n case 2:\n files = this.amnAppFormData.categoryDetail.foreignLawyerFiles;\n break;\n case 4:\n files = this.amnAppFormData.categoryDetail.qualificationInstitutionFiles;\n break;\n }\n\n this.newSeed = files.length > 0\n ? (_.maxBy(files, (f: any) => f.seed) as any).seed + 1\n : 1;\n }\n\n private isBusy(isBusy: boolean) {\n this.$emit('update:isSectionLoading', isBusy);\n }\n\n}\n\n","import { render } from \"./amn-associate-m-category.html?vue&type=template&id=43e86204&scoped=true&ts=true\"\nimport script from \"./amn-associate-m-category.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-associate-m-category.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-associate-m-category.scss?vue&type=style&index=0&id=43e86204&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-43e86204\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e6b50aa8\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-preferences\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Preferences\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Email Preferences \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select one or more email preferences:\", -1))\nconst _hoisted_8 = { class: \"checkboxes\" }\nconst _hoisted_9 = { class: \"row\" }\nconst _hoisted_10 = { class: \"col-12\" }\nconst _hoisted_11 = { class: \"checkbox-button\" }\nconst _hoisted_12 = [\"onUpdate:modelValue\"]\nconst _hoisted_13 = { class: \"checkbox-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_15 = { class: \"checkbox-text\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4 mb-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Communications from chosen Committees will be sent to your chosen email for communications address.\")\n], -1))\nconst _hoisted_17 = { class: \"right-side\" }\nconst _hoisted_18 = { class: \"box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Areas of Interest \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select the areas of law you are interested in:\", -1))\nconst _hoisted_21 = { class: \"checkboxes\" }\nconst _hoisted_22 = { class: \"row\" }\nconst _hoisted_23 = { class: \"col-12\" }\nconst _hoisted_24 = { class: \"checkbox-button\" }\nconst _hoisted_25 = [\"onUpdate:modelValue\"]\nconst _hoisted_26 = { class: \"checkbox-elmt\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_28 = { class: \"checkbox-text\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note: This information will be used to help improve the relevant email and web content.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sortedPreferences, (e) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((e.isSelected) = $event)\n }, null, 8, _hoisted_12), [\n [_vModelCheckbox, e.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(e.emailPreference.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(this.amnAppFormData.preferenceDetail?.recordAreaOfInterests, (a) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"label\", _hoisted_24, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((a.isSelected) = $event)\n }, null, 8, _hoisted_25), [\n [_vModelCheckbox, a.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"span\", _hoisted_28, _toDisplayString(a.areaOfInterest.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_29\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n// import { AuthorizedUser } from \"@/shared/models/authorized-user\";\n// import Popover from \"@/shared/components/popover/index.vue\";\n// import { PopoverView } from \"@/shared/components/popover/popover\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n // Popover\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnPreferences extends Vue {\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private emailPreferencesList: any[] = [];\n private areaOfInterestsList: any[] = [];\n\n private errorLoadingDataSet = false;\n\n private option_SAR = null;\n\n private recordAreaOfInterests: any[] = [];\n private recordEmailPreferences: any[] = [];\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.getCheckBoxesList();\n }\n\n private async getCheckBoxesList() {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n this.apiService.AmNewApi?.apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet(this.onlineApplication.id)\n .then(res => {\n this.loadingDataSet = false;\n this.amnAppFormData.preferenceDetail = res.data.data;\n })\n .catch(err => {\n this.errorLoadingDataSet = true;\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n })\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n // private async preloadData(): Promise {\n // try {\n // this.loadingDataSet = true;\n // // const resp: any = await Promise.all([]);\n // store.dispatch('setAmnAppFormData', this.amnAppFormData);\n // } catch (err) {\n // console.log(err);\n // } finally {\n // this.canGoNextCheck();\n // this.loadingDataSet = false;\n // }\n // }\n\n // private initSync(): void {\n // console.log('InitSync');\n // }\n\n // private syncData(): void {\n // try {\n // if (!this.loadingDataSet) {\n // console.log('syncData');\n // }\n // } catch (err) {\n // console.log(err);\n // }\n // this.canGoNextCheck();\n // }\n\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get sortedPreferences() {\n return orderBy(this.amnAppFormData.preferenceDetail?.recordEmailPreferences, ['emailPreference.sortOrder'], 'asc');\n }\n \n}\n\n","import { render } from \"./amn-preferences.html?vue&type=template&id=e6b50aa8&scoped=true&ts=true\"\nimport script from \"./amn-preferences.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-preferences.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-preferences.scss?vue&type=style&index=0&id=e6b50aa8&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e6b50aa8\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-04fca0ec\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"col-12 declarations mt-4\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createTextVNode(\" By clicking “Next” I declare that: \"),\n _hoisted_4\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AmNewRecordDeclarationRequest, Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n DatePicker,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnDeclarations extends Vue {\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.amnAppFormData.amrDeclarations = {};\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.updateAmrDeclaration();\n }\n\n private updateAmrDeclaration() {\n const _amnDeclaration: AmNewRecordDeclarationRequest = {\n id: 0,\n amNewApplicationId: this.amnAppFormData.individualDetails?.amNewApplicationId,\n }\n this.amnAppFormData.amnDeclarations = _amnDeclaration;\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amn-declarations.html?vue&type=template&id=04fca0ec&scoped=true&ts=true\"\nimport script from \"./amn-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-declarations.scss?vue&type=style&index=0&id=04fca0ec&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-04fca0ec\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-78de9bd2\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Total Price (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = [\"data-label\"]\nconst _hoisted_9 = { class: \"hide-in-mobile mr-1\" }\nconst _hoisted_10 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_12 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_13 = { class: \"total\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total bold\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_15 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.lineItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", {\n \"data-label\": lineItem.name,\n class: \"desc\"\n }, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(lineItem.name), 1),\n _createTextVNode(\"  \")\n ], 8, _hoisted_8),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).gst)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"td\", _hoisted_15, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n LoadingIndicator\n },\n mixins: [FormatDateTimeMixin]\n})\nexport default class AmnPaymentDetails extends Vue {\n\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n private ai = new AppInsights;\n private loadingDataSet = true;\n private lineItems: any[] = [];\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n\n mounted(): void {\n this.canGoNextCheck();\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await this.apiService.AmNewApi?.apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet(this.onlineApplication.id);\n this.amnAppFormData.paymentDetails = resp.data.data;\n this.lineItems = orderBy(this.amnAppFormData.paymentDetails.lineItems, ['order'], 'asc');\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n this.loadingDataSet = false;\n }\n\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.amnAppFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase()\n );\n\n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n\n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0\n }\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get itemMembershipName(): string {\n return 'ASSOCIATE MEMBERSHIP ' + this.onlineApplication.applicationYearName;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get getTotal(): number {\n const items = this.amnAppFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).total;\n }\n return _total;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n\n}\n\n","import { render } from \"./amn-payment-details.html?vue&type=template&id=78de9bd2&scoped=true&ts=true\"\nimport script from \"./amn-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-payment-details.scss?vue&type=style&index=0&id=78de9bd2&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-78de9bd2\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-f70ca318\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","// import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class AmnConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('amnAppFormData');\n // store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./amn-confirmation.html?vue&type=template&id=f70ca318&scoped=true&ts=true\"\nimport script from \"./amn-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-confirmation.scss?vue&type=style&index=0&id=f70ca318&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f70ca318\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-0ea3cdec\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"sar-overview mt-4\" }\nconst _hoisted_2 = { class: \"btn-bar right mb-2\" }\nconst _hoisted_3 = {\n key: 1,\n class: \"json-content mt-4\"\n}\nconst _hoisted_4 = [\"innerHTML\"]\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, null, -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml\",\n onClick: _cache[0] || (_cache[0] = $event => (_ctx.contactUs()))\n }, \"Contact Us\"),\n (_ctx.helpContent.isShow)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 0,\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[1] || (_cache[1] = $event => (_ctx.showHelpScreen = true))\n }, \"Help\"))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline dark sml ml-2\",\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.faqClicked()))\n }, \"FAQ\")\n ]),\n (!_ctx.htmlContents_1)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_ctx.htmlContents_1)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", { innerHTML: _ctx.htmlContents_1 }, null, 8, _hoisted_4)\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 2,\n onClose: _cache[3] || (_cache[3] = $event => (_ctx.showHelpScreen = false)),\n helpContent: _ctx.helpContent\n }, {\n header: _withCtx(() => [\n _hoisted_5\n ]),\n body: _withCtx(() => []),\n _: 1\n }, 8, [\"helpContent\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport AmnApplicationWording from '@/assets/config/amn-application-wording.json';\n// import { RouteN } from \"@/shared/constants/route-name\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { PageContent } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n components: {\n Popover,\n HelpScreen,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmnOverview extends Vue {\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private popovers: any[] = [];\n\n private htmlContents_1 = '';\n\n private htmlContents: string[] = [];\n\n private helpContent: PageContent = {};\n\n private contactUs() {\n window.open(UserDefine[0].contact_us_url, '_blank');\n }\n\n mounted(): void {\n window.scrollTo(0, 0);\n this.loadPageContents();\n this.eventCtrl.emit('canGoNext', true);\n this.helpContent = this.$getPopover('Help', 36);\n }\n\n private async loadPageContents() {\n this.loadingDataSet = false;\n this.htmlContents_1 = AmnApplicationWording[0][\"overview\"][\"htmlContents\"];\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private faqClicked() {\n window.open(UserDefine[0].faq_amn_url, 'blank');\n }\n\n}\n\n","import { render } from \"./amn-overview.html?vue&type=template&id=0ea3cdec&scoped=true&ts=true\"\nimport script from \"./amn-overview.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-overview.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-overview.scss?vue&type=style&index=0&id=0ea3cdec&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0ea3cdec\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e0bd269c\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amn-current-status\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, [\n /*#__PURE__*/_createTextVNode(\"Current status \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font\":\"0.9em sans-serif\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_4 = {\n class: \"dropdown-menu\",\n style: {\"max-width\":\"500px\"}\n}\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createElementVNode(\"h5\", null, \"Please select an option that is most appropriate to your current status\")\n], -1))\nconst _hoisted_6 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_8 = [\"value\"]\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_10 = {\n key: 0,\n class: \"input-box\",\n style: {\"max-width\":\"500px\"}\n}\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, null, -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3 mt-1\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"The Law Society is committed to providing the most appropriate services for its associate members. Therefore, we plan to survey members at various intervals in the future to identify areas where the Society can assist its associate members and develop services that are relevant to their needs. Your co-operation is appreciated in completing the above question.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _hoisted_5,\n _createElementVNode(\"div\", _hoisted_6, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.currentStatus) = $event)),\n onChange: _cache[1] || (_cache[1] = $event => (_ctx.currentStatusChange()))\n }, [\n _hoisted_7,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.currentStatusList, (c) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: c.id, name: c.name, description: c.description }\n }, _toDisplayString(c.name), 9, _hoisted_8))\n }), 256))\n ], 544), [\n [_vModelSelect, _ctx.currentStatus]\n ])\n ])\n ]),\n _hoisted_9,\n (_ctx.currentStatus?.id == 15)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _hoisted_11,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = $event => ((_ctx.otherStatus) = $event)),\n placeholder: \"Please specify\",\n maxlength: \"50\",\n onInput: _cache[3] || (_cache[3] = $event => (_ctx.currentStatusChange()))\n }, null, 544), [\n [_vModelText, _ctx.otherStatus]\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_12,\n _hoisted_13,\n _hoisted_14\n ], 64))\n ]))\n}","\nimport { Inject, Options, Vue } from \"vue-property-decorator\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport { filter } from \"lodash\";\n\n@Options({\n props: {\n amnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n }\n})\nexport default class AmnCurrentStatus extends Vue {\n private amnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n private loadingDataSet = false;\n private currentStatusList = [];\n private currentStatus: any = {};\n private otherStatus = '';\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n mounted() {\n this.eventCtrl.emit('canGoNext', false);\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetCurrentStatusesGet(),\n this.apiService.AmNewApi?.apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet(this.onlineApplication.id),\n ]);\n this.currentStatusList = this.sortStatus(resp[0].data.data);\n this.amnAppFormData.currentStatus = resp[1].data.data || { id: 0, amNewApplicationId: this.amnAppFormData.individualDetails.amNewApplicationId, currentStatus: {} };\n this.currentStatus = resp[1].data.data?.currentStatus;\n this.otherStatus = resp[1].data.data?.description || '';\n store.dispatch('setAmnAppFormData', this.amnAppFormData);\n } catch (err) {\n this.ai.trackException('Error, Unable to load current status: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load current status: ' + err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private sortStatus(statuses: any[]): [] {\n const list = statuses;\n const _otherStatus = filter(list, { name: 'Other (Please Specify)' })[0];\n list.sort((a, b) => a.name === _otherStatus.name ? 1 : b.name === _otherStatus.name ? -1 : a.name.localeCompare(b.name));\n return list as [];\n }\n\n private currentStatusChange() {\n this.amnAppFormData.currentStatus.currentStatus = this.currentStatus;\n this.amnAppFormData.currentStatus.description = this.currentStatus?.id == 15 ? this.otherStatus : '';\n this.canGoNextCheck();\n }\n\n private isValidForm(): boolean {\n if (this.currentStatus?.id == 15) {\n return this.otherStatus.trim() !== '';\n }\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amn-current-status.html?vue&type=template&id=e0bd269c&scoped=true&ts=true\"\nimport script from \"./amn-current-status.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-current-status.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-current-status.scss?vue&type=style&index=0&id=e0bd269c&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e0bd269c\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport HeaderStepper from \"@/shared/components/header-stepper/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { PaymentTransaction } from \"@/shared/models/payment-transaction\";\nimport { PAYMENTAPP_URL } from \"@/shared/config/config\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport PaymentPopup from \"../../payment-popup/index.vue\";\nimport { Application, PageContent } from \"@/shared/modules/typescript-api-client/models\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport AmnApplicantDetails from \"../amn-applicant-details/index.vue\";\nimport AmnAssociateMCategory from \"../amn-associate-m-category/index.vue\";\nimport AmnPreferences from \"../amn-preferences/index.vue\";\nimport AmnDeclarations from \"../amn-declarations/index.vue\";\nimport AmnPaymentDetails from \"../amn-payment-details/index.vue\";\nimport AmnConfirmation from \"../amn-confirmation/index.vue\";\nimport AmnOverview from \"../amn-overview/index.vue\";\nimport AmnCurrentStatus from \"../amn-current-status/index.vue\";\nimport SwipeStepper from \"@/shared/components/swipe-stepper/index.vue\";\n\n@Options({\n components: {\n LoadingSpinner,\n HeaderStepper,\n SwipeStepper,\n AmnOverview,\n AmnApplicantDetails,\n AmnAssociateMCategory,\n AmnCurrentStatus,\n AmnPreferences,\n AmnDeclarations,\n AmnPaymentDetails,\n AmnConfirmation,\n PaymentPopup,\n ConfirmDialogue,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n // console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n }\n})\nexport default class AmnApplication extends Vue {\n private ai = new AppInsights;\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getAmnAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private helpContent: PageContent = {};\n\n private navSteps = [\n new NavStep(Step.applicantDetails, Section.applicantDetails),\n new NavStep(Step.associateMembershipCategory, Section.associateMembershipCategory),\n new NavStep(Step.currentStatus, Section.currentStatus),\n new NavStep(Step.preferences, Section.preferences),\n new NavStep(Step.declarations, Section.declarations),\n new NavStep(Step.payment, Section.payment),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private amnAppFormData: any = {};\n private showPaymentPopup = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction;\n private disablePaymentPopupCloseBut = false;\n private validPaymentPage = false;\n\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'amn-payment';\n\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n private checkingConcurrency = true;\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n if (!_onlineApp.id) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Invalid Page entry, please choose an option from Portal home');\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n window.scrollTo(0, 0);\n this.setCurrentStep();\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n window.addEventListener('message', this.receivedNotification);\n\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n this.loadPageContents();\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n window.removeEventListener('message', this.receivedNotification);\n }\n\n private receivedNotification(event: any): void {\n\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-amn-application-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n this.nextButtonText = 'Next';\n }\n\n switch (_section) {\n case Section.applicantDetails:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.associateMembershipCategory:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.currentStatus:\n this.setSteps(2);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.preferences:\n this.setSteps(3);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.declarations:\n this.setSteps(4);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.payment:\n this.setSteps(5);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(6);\n this.backButtonVisible = false;\n this.nextButtonText = 'Close';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done\n }\n this.navSteps[n].status = NavStepStatusID.Current\n // the confirmation page\n if (n === 6) {\n for (let i = 0; i < 6; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 12);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 37);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 38);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 39);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4:\n this.helpContent = this.$getPopover('Help', 40);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 5:\n this.helpContent = this.$getPopover('Help', 41);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 6:\n this.helpContent = this.$getPopover('Help', 42);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n // console.log('helpContent: ', JSON.stringify(this.helpContent));\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n\n switch (_section) {\n case Section.applicantDetails:\n this.eventCtrl.emit('cancel-amn-application');\n break;\n case Section.associateMembershipCategory:\n this.navigate(this.navSteps[0]);\n break;\n case Section.currentStatus:\n this.navigate(this.navSteps[1]);\n break;\n case Section.preferences:\n this.navigate(this.navSteps[2]);\n break;\n case Section.declarations:\n this.navigate(this.navSteps[3]);\n break;\n case Section.payment:\n this.navigate(this.navSteps[4]);\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setAmnAppFormData', this.amnAppFormData);\n const _section = this.$route.query.sec as string;\n\n if (this.isOverviewPage) {\n // this.navigate(this.navSteps[0]);\n this.checkConcurrentApplication();\n }\n\n switch (_section) {\n case Section.applicantDetails:\n // this.navigate(this.navSteps[1]);\n this.saveAmnApplicantDetails();\n break;\n case Section.associateMembershipCategory:\n // this.navigate(this.navSteps[2]);\n this.saveAssociateMembershipCategory();\n break;\n case Section.currentStatus:\n // this.navigate(this.navSteps[3]);\n this.saveCurrentStatus();\n break;\n case Section.preferences:\n this.saveAmnPreferenceDetailData();\n // this.navigate(this.navSteps[4]);\n break;\n case Section.declarations:\n this.saveAmnDeclarationsData();\n // this.navigate(this.navSteps[5]);\n break;\n case Section.payment:\n this.saveAmnPaymentDetails();\n // this.navigate(this.navSteps[6]);\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n\n }\n\n private async checkConcurrentApplication() {\n this.checkingConcurrency = true;\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any = await this.apiService.AmNewApi?.apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet(\n this.onlineApplication.id\n )\n this.navigate(this.navSteps[0]);\n } catch (err: any) {\n this.errorLoadingDataSet = true;\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private async saveAmnApplicantDetails() {\n this.isSaving = true;\n try {\n await this.apiService.AmNewApi?.apiV1AmNewUpdateAmNewApplicationDetailPost({\n id: this.amnAppFormData.individualDetails.amNewApplicationId,\n isCurrentDetailCorrect: this.amnAppFormData.individualDetails.isCurrentDetailCorrect,\n amNewRecordApplicationYears: this.amnAppFormData.individualDetails.amNewRecordApplicationYears,\n });\n this.eventCtrl.emit('show-snackbar', 'success', 'Application details saved');\n this.navigate(this.navSteps[1]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Application details: ' + err);\n } finally {\n this.isSaving = false;\n }\n\n }\n\n private async saveAssociateMembershipCategory() {\n this.isSaving = true;\n try {\n await this.apiService.AmNewApi?.apiV1AmNewSaveAmNewRecordCategoryDetailPost(\n this.amnAppFormData.categoryDetail\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Category details saved');\n this.navigate(this.navSteps[2]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save category details: ' + err);\n this.ai.trackException('Error, Unable to save category details: ' + err);\n } finally {\n this.isSaving = false;\n }\n\n }\n\n private async saveCurrentStatus() {\n this.isSaving = true;\n try {\n await this.apiService.AmNewApi?.apiV1AmNewSaveAmNewRecordCurrentStatusPost(\n this.amnAppFormData.currentStatus\n );\n this.eventCtrl.emit('show-snackbar', 'success', 'Current status saved');\n this.navigate(this.navSteps[3]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save current status: ' + err);\n this.ai.trackException('Error, Unable to save current status: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveAmnPreferenceDetailData() {\n this.isSaving = true;\n await this.apiService.AmNewApi?.apiV1AmNewSaveAmNewPreferenceDetailDataPost(this.amnAppFormData.preferenceDetail)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User preference updated');\n this.navigate(this.navSteps[4]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update user preference: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n })\n }\n\n private async saveAmnDeclarationsData() {\n this.isSaving = true;\n await this.apiService.AmNewApi?.apiV1AmNewSaveAmNewRecordDeclarationPost(this.amnAppFormData.amnDeclarations)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User declaration saved');\n this.navigate(this.navSteps[5]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save user declaration: ' + err);\n this.ai.trackException('Error, Unable to save user declaration: ' + err);\n })\n }\n\n private async saveAmnPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n const resp: any = await this.apiService.AmNewApi?.apiV1AmNewSavePaymentDetailsPost(this.amnAppFormData.paymentDetails);\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private paymentConfirmed(): void {\n this.showPaymentPopup = false;\n this.navigate(this.navSteps[6]);\n }\n\n private getPopOverKeys(): void {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n private getPopover(pKey: string): PopoverView {\n const _popOver = this.popovers.filter(p => {\n return p.popoverKey == pKey;\n })[0];\n return _popOver;\n }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n isShow: resp[2].data.data[p].isShow as boolean,\n })\n }\n this.getPopOverKeys();\n\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private confirmCancelConcurrentApp() {\n this.loadingDataSet = true;\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm.show({\n title: 'You are already logged in elsewhere',\n message: 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n }).then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart();\n }\n else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n })\n }\n\n private async clearSessionAndStart(): Promise {\n try {\n this.loadingDataSet = true;\n await this.apiService.AmNewApi?.apiV1AmNewCancelAmNewApplicationApplicationIdGet(this.onlineApplication.id);\n this.loadingDataSet = false;\n this.navigate(this.navSteps[0]);\n } catch {\n this.loadingDataSet = false;\n }\n }\n\n get isOverviewPage(): boolean {\n return !this.$route.query.sec && this.$route.name == RouteN.Mars.AmnApplication.n;\n }\n\n get $Section() {\n return Section;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amn-application.html?vue&type=template&id=8f2a3748&scoped=true&ts=true\"\nimport script from \"./amn-application.ts?vue&type=script&lang=ts\"\nexport * from \"./amn-application.ts?vue&type=script&lang=ts\"\n\nimport \"./amn-application.scss?vue&type=style&index=0&id=8f2a3748&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-8f2a3748\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-342fae7d\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-application\" }\nconst _hoisted_2 = {\n key: 1,\n class: \"container mt-4\"\n}\nconst _hoisted_3 = {\n key: 5,\n class: \"stn-application-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_StnEligibility = _resolveComponent(\"StnEligibility\")\n const _component_StnApplicantDetails = _resolveComponent(\"StnApplicantDetails\")\n const _component_StnPreferences = _resolveComponent(\"StnPreferences\")\n const _component_StnDeclaration = _resolveComponent(\"StnDeclaration\")\n const _component_StnConfirmation = _resolveComponent(\"StnConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true,\n showFaqBtn: true\n }, null, 8, [\"navSteps\"]),\n (_ctx.isLoadingData || _ctx.loadingDataSet || _ctx.checkingConcurrency)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_ctx.currentSection === _ctx.$Section.eligibility)\n ? (_openBlock(), _createBlock(_component_StnEligibility, {\n key: 0,\n stnAppFormData: _ctx.stnAppFormData,\n \"onUpdate:stnAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.stnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"stnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.applicantDetails)\n ? (_openBlock(), _createBlock(_component_StnApplicantDetails, {\n key: 1,\n stnAppFormData: _ctx.stnAppFormData,\n \"onUpdate:stnAppFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.stnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"stnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.preferences)\n ? (_openBlock(), _createBlock(_component_StnPreferences, {\n key: 2,\n stnAppFormData: _ctx.stnAppFormData,\n \"onUpdate:stnAppFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.stnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"stnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.declarations)\n ? (_openBlock(), _createBlock(_component_StnDeclaration, {\n key: 3,\n stnAppFormData: _ctx.stnAppFormData,\n \"onUpdate:stnAppFormData\": _cache[6] || (_cache[6] = $event => ((_ctx.stnAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[7] || (_cache[7] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"stnAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_StnConfirmation, {\n key: 4,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[8] || (_cache[8] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[9] || (_cache[9] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ])),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-7dc15e57\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-eligibility mt-4\" }\nconst _hoisted_2 = { class: \"content mt-4\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mt-4 mb-4\" }, \"Eligibility\", -1))\nconst _hoisted_4 = { class: \"col-12 declare-option\" }\nconst _hoisted_5 = { class: \"checkbox-button\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"checkbox-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkbox-text\" }, \" I am studying law, or have successfully completed a course in law at any university, college or institution in Australia recognised for admission as a lawyer in Australia and intend to practise as a legal practitioner. \")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have been admitted to practise law in a State or Territory of Australia but do not hold a current practising certificate issued by The Law Society of New South Wales\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have been admitted to practise law in a foreign jurisdiction\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"are employed in a management role in a law office and the principal(s) are Solicitor Members of The Law Society of New South Wales\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have a legal qualification recognised for the purpose of admission as a lawyer in Australia and you do not fit into any of the other above categories\")\n], -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"USING THIS ONLINE FORM\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Next\", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Back\", -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-question-circle\",\n style: {\"font-size\":\"20px\"}\n}, null, -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"h3\", null, \"Overview\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", null, [\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"label\", _hoisted_5, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.isStudying) = $event)),\n onChange: _cache[1] || (_cache[1] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelCheckbox, _ctx.isStudying]\n ]),\n _hoisted_6\n ])\n ]),\n _hoisted_7,\n _createElementVNode(\"div\", null, [\n _createTextVNode(\"Please do not complete this form (instead complete the \"),\n _createElementVNode(\"span\", {\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.exitApplication())),\n class: \"link\"\n }, \"Associate Membership Application\"),\n _createTextVNode(\") if you:\")\n ]),\n _hoisted_8,\n _hoisted_9,\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" and \"),\n _hoisted_12,\n _createTextVNode(\" will move you through each page in the form.\"),\n _hoisted_13,\n _createTextVNode(\"Selecting the Cancel Application button will NOT save any details you have entered.\"),\n _hoisted_14,\n _createTextVNode(\"All questions are mandatory except where indicated otherwise.\"),\n _hoisted_15,\n _createTextVNode(\"For desktop users, place your cursor on the \"),\n _hoisted_16,\n _createTextVNode(\" symbol and for mobile users, you can tap on the symbol to see further information about the question.\"),\n _hoisted_17,\n _hoisted_18\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 0,\n onClose: _cache[3] || (_cache[3] = $event => (_ctx.showHelpScreen = false))\n }, {\n header: _withCtx(() => [\n _hoisted_19\n ]),\n body: _withCtx(() => []),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n stnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n HelpScreen,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class StnEligibility extends Vue {\n private ai = new AppInsights;\n\n private stnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private studentRecord: any = {};\n private isStudying = false;\n\n\n \n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n await Promise.all([\n this.getStudentApplication()\n ]);\n store.dispatch('setStnAppFormData', this.stnAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async getStudentApplication(): Promise {\n try {\n const _isRenewing = !!this.stnAppFormData.studentRecord;\n const resp: any = await this.apiService.StudentNewApi?.apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet(\n this.onlineApplication.id, !_isRenewing\n );\n this.studentRecord = resp.data.data;\n this.stnAppFormData['studentRecord'] = this.studentRecord;\n this.initSync();\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err: any) {\n if (err.response?.data && err.response.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n // this.$router.push({ name: RouteN.Mars.Home.n });\n return Promise.reject(false);\n }\n }\n\n private initSync(): void {\n this.isStudying = this.studentRecord.eligibilityFlag1;\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n this.studentRecord.eligibilityFlag1 = this.isStudying;\n }\n } catch (err) {\n console.log(err);\n }\n this.canGoNextCheck();\n }\n\n private isValidateForm(): boolean {\n return !!this.isStudying;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidateForm());\n }\n\n private exitApplication(): void {\n this.eventCtrl.emit('cancel-stn-fromlink');\n }\n\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n}","import { render } from \"./stn-eligibility.html?vue&type=template&id=7dc15e57&scoped=true&ts=true\"\nimport script from \"./stn-eligibility.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-eligibility.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-eligibility.scss?vue&type=style&index=0&id=7dc15e57&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7dc15e57\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createTextVNode as _createTextVNode, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, vModelCheckbox as _vModelCheckbox, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-18e0f42b\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-applicant-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Applicant Details\", -1))\nconst _hoisted_3 = { class: \"row main-content\" }\nconst _hoisted_4 = { class: \"col-12\" }\nconst _hoisted_5 = {\n class: \"col-6 pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Applicant Details\")\n], -1))\nconst _hoisted_7 = { class: \"mb-2\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"LawID\", -1))\nconst _hoisted_9 = { class: \"mb-3\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Full Name\", -1))\nconst _hoisted_11 = { class: \"mb-3\" }\nconst _hoisted_12 = {\n key: 0,\n class: \"mb-2\"\n}\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Name Change\", -1))\nconst _hoisted_14 = { class: \"mb-3\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Personal Mobile\", -1))\nconst _hoisted_16 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_17 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Email for Communication\", -1))\nconst _hoisted_19 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_20 = { class: \"mb-3 mr-2\" }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Date of Birth\", -1))\nconst _hoisted_22 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_23 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Postcode\", -1))\nconst _hoisted_25 = { class: \"mb-3\" }\nconst _hoisted_26 = {\n class: \"col-6 right-side pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Student Details\")\n], -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Institution\", -1))\nconst _hoisted_29 = { class: \"mb-3\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Law Course\", -1))\nconst _hoisted_31 = { class: \"mb-3\" }\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Student Number\", -1))\nconst _hoisted_33 = { class: \"mb-3\" }\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Student Email\", -1))\nconst _hoisted_35 = { class: \"mb-3\" }\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Enrolment\", -1))\nconst _hoisted_37 = { class: \"mb-3\" }\nconst _hoisted_38 = { class: \"col-12 radios\" }\nconst _hoisted_39 = {\n key: 0,\n class: \"ml-3\"\n}\nconst _hoisted_40 = {\n key: 1,\n class: \"radio-button-group\"\n}\nconst _hoisted_41 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_42 = { class: \"radio-button col-3\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_44 = { class: \"col-2 ml-0\" }\nconst _hoisted_45 = { class: \"radio-button\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_47 = { class: \"col-12 right\" }\nconst _hoisted_48 = [\"disabled\"]\nconst _hoisted_49 = { class: \"application-year-option mt-3\" }\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"I am applying for:\", -1))\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_52 = [\"onUpdate:modelValue\", \"disabled\"]\nconst _hoisted_53 = {\n class: \"checkbox-elmt\",\n style: {\"border\":\"none\"}\n}\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_55 = { class: \"checkbox-text\" }\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_57 = { style: {\"font-weight\":\"normal\"} }\nconst _hoisted_58 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"display\":\"flex\",\"align-items\":\"center\"} }, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle ml-2 mr-2\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2 mr-2\" }, \" The Current Student Membership year runs from 1st July to 30th June. Applications made between January – June will include two years of membership by default. You have the option to apply for the current year only, but your membership will expire on 30th June this year. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_StnApplicantDetailsUpdateModal = _resolveComponent(\"StnApplicantDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(_ctx.individualDetails?.lawId ?? 'No record'), 1)\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingSurname ? 'field-error' : ''])\n }, [\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1)\n ], 2),\n (_ctx.hasNameChanged && _ctx.individualDetails?.nameChangeFiles?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _hoisted_13,\n _createElementVNode(\"div\", _hoisted_14, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.individualDetails.nameChangeFiles, (nameChanged) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createTextVNode(_toDisplayString(nameChanged.originalFileName ?? ' '), 1)\n ], 64))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingMobilePhone ? 'field-error' : ''])\n }, [\n _hoisted_15,\n (!_ctx.individualDetails.mobilePhone)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, \"No record\"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingEmail ? 'field-error' : ''])\n }, [\n _hoisted_18,\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, _toDisplayString(_ctx.individualDetails.communicationEmail?.email ?? 'No record'), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail', 13)\n }, null, 8, [\"popover\"])\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingDOB ? 'field-error' : ''])\n }, [\n _hoisted_21,\n (_ctx.individualDetails.birthDate)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, _toDisplayString(_ctx.$formatDate(_ctx.individualDetails.birthDate)), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_23, \"No record\"))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingPostcode ? 'field-error' : ''])\n }, [\n _hoisted_24,\n _createElementVNode(\"div\", _hoisted_25, _toDisplayString(_ctx.individualDetails?.postalAddress?.postcode ?? 'No record'), 1)\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingInstitution ? 'field-error' : ''])\n }, [\n _hoisted_28,\n _createElementVNode(\"div\", _hoisted_29, _toDisplayString(_ctx.individualDetails?.qualificationInstitution?.name ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingLawDegree ? 'field-error' : ''])\n }, [\n _hoisted_30,\n _createElementVNode(\"div\", _hoisted_31, _toDisplayString(_ctx.individualDetails?.lawDegree ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingStudentNumber ? 'field-error' : ''])\n }, [\n _hoisted_32,\n _createElementVNode(\"div\", _hoisted_33, _toDisplayString(_ctx.individualDetails?.studentNumber ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingStudentEmail ? 'field-error' : ''])\n }, [\n _hoisted_34,\n _createElementVNode(\"div\", _hoisted_35, _toDisplayString(_ctx.individualDetails?.studentEmail ?? 'No record'), 1)\n ], 2),\n ((!_ctx.individualDetails?.studentEmail || !_ctx.individualDetails?.studentEmail.endsWith('edu.au')) && _ctx.individualDetails?.studentProofDocumentFiles?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"mb-2\", _ctx.missingProofOfEnrolment ? 'field-error' : ''])\n }, [\n _hoisted_36,\n _createElementVNode(\"div\", _hoisted_37, [\n (_ctx.individualDetails?.studentProofDocumentFiles?.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.individualDetails.studentProofDocumentFiles, (proof) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createTextVNode(_toDisplayString(proof.originalFileName ?? ' '), 1)\n ], 64))\n }), 256))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createTextVNode(\" No record \")\n ], 64))\n ])\n ], 2))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_38, [\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_39, \"Are these details correct?\"))\n : _createCommentVNode(\"\", true),\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _createElementVNode(\"span\", _hoisted_41, [\n _createElementVNode(\"label\", _hoisted_42, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n value: true,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_43\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_44, [\n _createElementVNode(\"label\", _hoisted_45, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: false,\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_46\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_47, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n disabled: _ctx.isValidForm && _ctx.individualDetails.isCurrentDetailCorrect !== false,\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.updateCurrentDetails()))\n }, \"Update current details\", 8, _hoisted_48)\n ])\n ])\n ])\n ]),\n (_ctx.individualDetails.studentNewRecordApplicationYears?.length > 1)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"div\", _hoisted_49, [\n _hoisted_50,\n _hoisted_51,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.individualDetails.studentNewRecordApplicationYears, (c, idx) => {\n return (_openBlock(), _createElementBlock(\"label\", {\n class: _normalizeClass([\"checkbox-button\", c.readOnly ? 'disabled' : ''])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((c.isSelected) = $event),\n disabled: c.readOnly\n }, null, 8, _hoisted_52), [\n [_vModelCheckbox, c.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_53, [\n _hoisted_54,\n _createElementVNode(\"span\", _hoisted_55, [\n _createTextVNode(\"Student Membership \" + _toDisplayString(c.applicationYear.name) + \" \", 1),\n _hoisted_56,\n _createTextVNode(\"Amount: \" + _toDisplayString(_ctx.toCurrency(c.total)) + \" \", 1),\n _createElementVNode(\"i\", _hoisted_57, \"(\" + _toDisplayString(c.totalGst > 0 ? 'incl.' : 'ex.') + \" GST)\", 1)\n ])\n ]),\n _hoisted_58\n ], 2))\n }), 256))\n ]),\n _hoisted_59\n ], 64))\n : _createCommentVNode(\"\", true)\n ], 64)),\n (_ctx.showUpdateDetailsModal)\n ? (_openBlock(), _createBlock(_component_StnApplicantDetailsUpdateModal, {\n key: 2,\n currentDetails: _ctx.individualDetails,\n \"onUpdate:currentDetails\": _cache[3] || (_cache[3] = $event => ((_ctx.individualDetails) = $event)),\n origNames: _ctx.origNames,\n \"onUpdate:origNames\": _cache[4] || (_cache[4] = $event => ((_ctx.origNames) = $event)),\n disallowUpdate: _ctx.disallowUpdate,\n \"onUpdate:disallowUpdate\": _cache[5] || (_cache[5] = $event => ((_ctx.disallowUpdate) = $event)),\n onClose: _cache[6] || (_cache[6] = $event => {_ctx.individualDetails.isCurrentDetailCorrect = null; _ctx.reloadCurrentDetails(); _ctx.showUpdateDetailsModal = false}),\n onReloadCurrentDetails: _cache[7] || (_cache[7] = $event => (_ctx.reloadCurrentDetails()))\n }, null, 8, [\"currentDetails\", \"origNames\", \"disallowUpdate\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, normalizeClass as _normalizeClass, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-3e7b9941\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-applicant-details-update-modal\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Update Current Details\", -1))\nconst _hoisted_3 = { class: \"modal-body\" }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = { class: \"dropdown-menu\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Title \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_12 = { class: \"input-box\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"First name\", -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Surname\", -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_17 = { key: 0 }\nconst _hoisted_18 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_20 = { class: \"file-list mb-2\" }\nconst _hoisted_21 = { class: \"file-name\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_23 = [\"onClick\"]\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of birth\", -1))\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_28 = {\n key: 1,\n class: \"disableNote mt-2\",\n style: {\"display\":\"flex\",\"justify-content\":\"flex-start\"}\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle mr-2\",\n style: {\"margin\":\"auto 0\",\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n}, null, -1))\nconst _hoisted_30 = [\"innerHTML\"]\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_34 = { class: \"flex-row\" }\nconst _hoisted_35 = { style: {\"margin\":\"0 !important\",\"padding\":\"0 !important\"} }\nconst _hoisted_36 = { class: \"ml-2\" }\nconst _hoisted_37 = { class: \"flex-row\" }\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Personal mobile\", -1))\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_41 = { class: \"field_name\" }\nconst _hoisted_42 = { class: \"validation-msg\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_44 = { key: 0 }\nconst _hoisted_45 = { key: 1 }\nconst _hoisted_46 = { key: 2 }\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12 mt-2 mb-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Student Details\", -1))\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of institution\", -1))\nconst _hoisted_51 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of law course\", -1))\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_57 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Student number\", -1))\nconst _hoisted_58 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_60 = { class: \"field_name\" }\nconst _hoisted_61 = { class: \"validation-msg\" }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_63 = { key: 0 }\nconst _hoisted_64 = { key: 1 }\nconst _hoisted_65 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_66 = { key: 2 }\nconst _hoisted_67 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"input-box\" }, [\n /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Proof of enrolment\")\n], -1))\nconst _hoisted_68 = { class: \"file-upload\" }\nconst _hoisted_69 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_71 = { class: \"file-list mb-2\" }\nconst _hoisted_72 = { class: \"file-name\" }\nconst _hoisted_73 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_74 = [\"onClick\"]\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_76 = {\n key: 0,\n class: \"modal-footer row right\"\n}\nconst _hoisted_77 = [\"disabled\"]\nconst _hoisted_78 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_PostcodeSearch = _resolveComponent(\"PostcodeSearch\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_InstitutionSearch = _resolveComponent(\"InstitutionSearch\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n _hoisted_2\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.formData.title) = $event))\n }, [\n _hoisted_8,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.titles, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: t.id, name: t.name, description: t.description}\n }, _toDisplayString(t.name), 9, _hoisted_9))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.formData.title]\n ])\n ]),\n _hoisted_10\n ]),\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.formData.firstName) = $event)),\n placeholder: \"First name\",\n maxlength: \"50\",\n onKeyup: _cache[2] || (_cache[2] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.firstName]\n ])\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.surname?.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_15,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.formData.surname) = $event)),\n placeholder: \"Surname\",\n maxlength: \"50\",\n onKeyup: _cache[4] || (_cache[4] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.surname]\n ]),\n _hoisted_16\n ], 2),\n (_ctx.requiredFileUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"file-upload mt-4\", _ctx.requiredFileUpload ? 'required' : ''])\n }, [\n _createTextVNode(\" Please attach proof of name change. \"),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[5] || (_cache[5] = $event => (_ctx.fileListChanged($event, 1))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.formData.nameChangeFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" Required to attach proof of name change. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.nameChangeFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id, 1))\n }, \"Delete\", 8, _hoisted_23)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_24,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.birthDate && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_25,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: _ctx.formData.birthDate,\n \"onUpdate:value\": _cache[6] || (_cache[6] = $event => ((_ctx.formData.birthDate) = $event)),\n \"input-class\": \"normal\",\n \"disabled-date\": _ctx.disabledAfterToday,\n disabled: _ctx.disallowUpdate.birthDate,\n onChange: _cache[7] || (_cache[7] = $event => (_ctx.dateValidation()))\n }, null, 8, [\"value\", \"disabled-date\", \"disabled\"]),\n _hoisted_26\n ], 2),\n _hoisted_27,\n (_ctx.disallowUpdate.birthDate)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", { innerHTML: _ctx.disableNote }, null, 8, _hoisted_30)\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_31,\n _createVNode(_component_PostcodeSearch, {\n suburbStatePostcode: _ctx.suburbStatePostcode,\n \"onUpdate:suburbStatePostcode\": _cache[8] || (_cache[8] = $event => ((_ctx.suburbStatePostcode) = $event)),\n onUpdateSuburb: _ctx.updateSuburb,\n suburbError: _ctx.suburbError,\n \"onUpdate:suburbError\": _cache[9] || (_cache[9] = $event => ((_ctx.suburbError) = $event))\n }, null, 8, [\"suburbStatePostcode\", \"onUpdateSuburb\", \"suburbError\"]),\n _hoisted_32,\n _hoisted_33,\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"h4\", _hoisted_35, [\n _createTextVNode(\"Contact details\"),\n _createElementVNode(\"span\", _hoisted_36, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneDetails', 13),\n style: {\"margin\":\"auto auto\",\"padding\":\"auto auto\"}\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_37, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_38,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.formData.mobilePhone.phoneNumber) = $event)),\n placeholder: \"Personal mobile\",\n maxlength: \"15\",\n onChange: _cache[11] || (_cache[11] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.mobilePhone.phoneNumber]\n ]),\n _hoisted_39\n ], 2)\n ]),\n _hoisted_40,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_41, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail' , 13),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.formData.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onChange: _cache[13] || (_cache[13] = $event => (_ctx.emailCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_42, [\n _hoisted_43,\n (_ctx.formData.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_44, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_45, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_46, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_47,\n _hoisted_48,\n _hoisted_49,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.qualificationInstitution?.id == null && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_50,\n _createVNode(_component_InstitutionSearch, {\n style: {\"width\":\"100%\"},\n institution: _ctx.formData.qualificationInstitution,\n \"onUpdate:institution\": _cache[14] || (_cache[14] = $event => ((_ctx.formData.qualificationInstitution) = $event)),\n onUpdateInstitution: _ctx.updateInstitution,\n onIsBusy: _ctx.isBusy,\n enableAddInstitution: true,\n error: _ctx.formData.qualificationInstitution?.id == null && _ctx.isSubmitting\n }, null, 8, [\"institution\", \"onUpdateInstitution\", \"onIsBusy\", \"error\"]),\n (_ctx.formData.qualificationInstitution?.id== null && _ctx.isSubmitting)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_51, [\n _hoisted_52,\n _createTextVNode(\"Required field. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _hoisted_53,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.lawDegree && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_54,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => ((_ctx.formData.lawDegree) = $event)),\n placeholder: \"Enter law course\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.lawDegree]\n ]),\n _hoisted_55\n ], 2),\n _hoisted_56,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.studentNumber && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_57,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.formData.studentNumber) = $event)),\n placeholder: \"Enter student number\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.studentNumber]\n ]),\n _hoisted_58\n ], 2),\n _hoisted_59,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.studentEmail?.trim() === '' || !_ctx.studentEmailCheck(_ctx.formData.studentEmail)) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_60, [\n _createTextVNode(\"Student email \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('StudentEmail' , 13),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => ((_ctx.formData.studentEmail) = $event)),\n placeholder: \"Enter student email\",\n maxlength: \"50\",\n onChange: _cache[18] || (_cache[18] = (...args) => (_ctx.validateStudentEmail && _ctx.validateStudentEmail(...args)))\n }, null, 544), [\n [_vModelText, _ctx.formData.studentEmail]\n ]),\n _createElementVNode(\"span\", _hoisted_61, [\n _hoisted_62,\n (_ctx.formData.studentEmail?.trim() === '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_63, \"Please enter student email.\"))\n : (!_ctx.studentEmailCheck(_ctx.formData.studentEmail))\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_64, \"Invalid student email format.\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_65,\n (_ctx.requiredProofOfEnrolment)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_66, [\n _hoisted_67,\n _createElementVNode(\"div\", _hoisted_68, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[19] || (_cache[19] = $event => (_ctx.fileListChanged($event, 2))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.formData.studentProofDocumentFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [\n _hoisted_70,\n _createTextVNode(\" Required to attach proof of enrolment. \")\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.studentProofDocumentFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_71, [\n _createElementVNode(\"div\", _hoisted_72, [\n _hoisted_73,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id, 2))\n }, \"Delete\", 8, _hoisted_74)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n ]),\n _hoisted_75,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_76, [\n (_ctx.isUpdating)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[20] || (_cache[20] = $event => (_ctx.cancel())),\n disabled: _ctx.isUpdating\n }, \"Cancel\", 8, _hoisted_77),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[21] || (_cache[21] = $event => (_ctx.update())),\n disabled: !_ctx.isDirty || _ctx.isUpdating\n }, \"Update\", 8, _hoisted_78)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"]),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail, Application, PcRenewFileRequest, QualificationInstitution, StudentNewIndividualDetail, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport _, {orderBy, reject} from \"lodash\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\nimport Popover, {PopoverView} from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport DatePicker from 'vue-datepicker-next';\nimport InstitutionSearch from \"@/shared/components/institutionSearch/index.vue\";\nimport { STUDENT_EMAIL_VALIDATION_SUFFIX } from '@/shared/config/config';\n\n@Options({\n props: {\n currentDetails: Object,\n origNames: Object,\n disallowUpdate: Object,\n },\n components: {\n FileDragAndDrop,\n LoadingIndicator,\n PostcodeSearch,\n AlertBox,\n Popover,\n ConfirmDialogue,\n ModalWindow,\n DatePicker,\n InstitutionSearch\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\n\nexport default class StnApplicantDetailsUpdateModal extends Vue {\n\n private currentDetails!: StudentNewIndividualDetail;\n private origNames!: any;\n private disallowUpdate!: any;\n private requiredProofOfEnrolment!: boolean;\n\n //email validation\n get isEmailValid(): boolean {\n const email = this.formData?.studentEmail;\n return email.length<1 || email.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX);\n }\n\n @Watch('formData.studentEmail')\n private onStudentEmailChange() {\n this.requiredProofOfEnrolment = !this.isEmailValid; // If email is invalid, set to true\n }\n\n private isClosing = false;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private titles: any[] = [];\n // private buildingTypes: any[] = [];\n // private streetTypes: any[] = [];\n // private buildingType: any = { id: 0, name: '' };\n // private streetType: any = { id: 0, description: '' };\n\n // private pcRenewFileTypes: any[] = [];\n private proofOfEnrollementTypes: any[] = [];\n private fileIdToDelete = 0;\n\n private suburbStatePostcode = {};\n\n private keyword = '';\n private arrowCounter = -1;\n private searchDebounced: any = null;\n private isSearching = false;\n private stopSearch = false;\n private isOpen = false;\n private institutionList: any = [];\n\n private firmId = 0;\n private noSearchResult = false;\n private addNewPractice = false;\n\n private popover: PopoverView = {\n key:'',\n content: '

Example:

.headings {
font-family: var(--font-headings);
}

.body-text {
font-family: var(--font-body-text);
}

',\n isShow: false,\n title: '',\n };\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = true;\n\n private requiredFileUpload = false;\n\n private formData: any = {};\n\n private fileList: Array = [];\n private uploading = false;\n private dateReceived: Date = null as any;\n private showDeleteAlert = false;\n\n private isSubmitting = false;\n\n // mandatory fields\n private formFirstName = true;\n private formSurname = true;\n private formFileUpload = true;\n private formPhoneNumber = true;\n private formEmail = true;\n private formStudentEmail = true;\n private isEmailDuplicated = false;\n private addressCheck = true;\n private isUpdating = false;\n // private newSeed = 1;\n\n private formBirthPlace = true;\n private formBirthDate = true;\n private formBirthCountry = true;\n private formGender = true;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n this.preloadData();\n this.formData = JSON.parse(JSON.stringify(this.currentDetails));\n this.formData.postalAddress = this.formData.postalAddress ? this.initAddress(this.formData.postalAddress) : this.initAddress({});\n if (!this.formData.nameChangeFiles) {\n this.formData.nameChangeFiles = [];\n }\n this.formData.birthDate = this.formData.birthDate ? new Date(this.formData.birthDate) : null;\n\n this.suburbStatePostcode = {\n suburbId: this.formData.postalAddress?.suburbId,\n suburbName: this.formData.postalAddress?.suburbName,\n postcode: this.formData.postalAddress?.postcode,\n stateId: this.formData.postalAddress?.stateId,\n stateName: this.formData.postalAddress?.stateName,\n }\n\n if (!this.formData.studentProofDocumentFiles) {\n this.formData.studentProofDocumentFiles = [];\n }\n\n this.nameCheck();\n\n this.formData.qualificationInstitution = this.formData.qualificationInstitution ?? {};\n\n\n // this.searchDebounced = debounce(() => {\n // if (this.keyword.trim() !== '') {\n // this.getSuburbPostcodeList();\n // }\n // }, 500);\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n // a.buildingName = a.buildingName || '';\n // a.buildingNumber = a.buildingNumber || null;\n // a.buildingTypeId = a.buildingTypeId || 0;\n // a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n // a.deliveryTypeId = a.deliveryTypeId || 0;\n // a.deliveryTypeName = a.deliveryTypeName || null;\n // a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n // a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n // a.dxNumber = a.dxNumber || null;\n // a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n // a.level = a.level || null;\n // a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n // a.streetName = a.streetName || null;\n // a.streetNumber = a.streetNumber || null;\n // a.streetTypeId = a.streetTypeId || 0;\n // a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n // a.firmAddMapId = a.firmAddMapId || 0;\n\n return a;\n }\n\n private async preloadData() {\n try {\n // const _memberId: any = parseInt(this.$route.query.memberId as string, 10) || '';\n this.isLoadingData = true;\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetTitlesGet(),\n this.apiService.CodeApi?.apiV1CodeGetStudentNewFileTypesGet(),\n // this.apiService.CodeApi?.apiV1CodeGetGendersGet(),\n ]);\n this.titles = resp[0].data.data;\n // this.pcRenewFileTypes = resp[1].data.data;\n // this.genderList = resp[2].data.data;\n // this.genderList = orderBy(this.genderList, ['id'], 'asc');\n\n } catch (err) {\n this.isLoadingData = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n }\n }\n\n private updateInstitution(institution: QualificationInstitution) {\n this.formData.qualificationInstitution = institution;\n }\n\n private isBusy(isBusy: boolean) {\n this.$emit('isBusy', isBusy);\n }\n\n // private async getCountyList() {\n // const _countryList = store.getters.getCountryList;\n // this.countryList = _countryList == null ? null : JSON.parse(_countryList);\n\n // this.isLoadingData = true;\n // this.$emit('readyState', !this.isLoadingData);\n\n // if (this.countryList == null) {\n // await this.apiService.CodeApi?.apiV1CodeGetCountriesGet()\n // .then((res: any) => {\n // this.countryList = res.data.data;\n // store.dispatch('setCountryList', this.countryList);\n // })\n // .catch((err: any) => {\n // // console.log(err);\n // this.eventCtrl.emit('show-snackbar', 'error', 'Error getting country list: ' + err.response?.status);\n // this.ai.trackException('Error getting country list: ' + err);\n // })\n // }\n // }\n\n // private setGender(opt: number) {\n // if (opt == 2) {\n // this.formData.gender = { id: 2, name: \"F\", description: \"FEMALE\" }\n // } else {\n // this.formData.gender = { id: 1, name: \"M\", description: \"MALE\" }\n // }\n // }\n\n private cancel() {\n // if (this.isDirty) {\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Cancel Update Current Details',\n // message: 'By cancelling, changes to the current screen will be lost.
Are you sure you want to cancel?',\n // okButton: 'Yes',\n // cancelButton: 'No',\n // }).then((res: any) => {\n // if (res) {\n // this.close();\n // }\n // })\n // } else {\n this.close();\n // }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n this.addressCheck = valid;\n }\n\n private async deleteStudentProofFromServerWhenEmailIsValid()\n {\n for (let i = 0; i < this.formData.studentProofDocumentFiles.length; i++) {\n this.formData.studentProofDocumentFiles.splice(i, 1);\n }\n }\n\n private async update() {\n this.isSubmitting = true;\n this.isUpdating = true;\n this.formData.isCurrentDetailCorrect = true;\n if (this.formValidated()) {\n this.formData.postalAddress = this.$addressCleanup(this.formData.postalAddress);\n if(!this.requiredProofOfEnrolment)\n {\n await this.deleteStudentProofFromServerWhenEmailIsValid();\n }\n await this.apiService.StudentNewApi?.apiV1StudentNewUpdateStudentNewIndividualDetailPost(this.formData)\n .then(() => {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n this.$emit('reloadCurrentDetails');\n this.close();\n })\n .catch(err => {\n this.isUpdating = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n }\n })\n } else {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Please check all required fields');\n }\n\n }\n\n private formValidated(): boolean {\n this.formFirstName = this.formData.firstName?.trim() !== '';\n this.formSurname = this.formData.surname?.trim() !== '';\n\n this.formFileUpload = true;\n if (this.requiredFileUpload) {\n this.formFileUpload = this.formData.nameChangeFiles.length > 0;\n }\n this.formPhoneNumber = this.formData.mobilePhone?.phoneNumber?.trim() !== '';\n this.formEmail = this.emailCheck();\n this.formStudentEmail = this.studentEmailCheck(this.formData.studentEmail?.trim());\n\n const isProofRequired = !this.isEmailValid && this.formData.studentProofDocumentFiles?.length === 0;\n\n // this.formStudentEmail = this.emailCheck(this.formData.studentEmail?.email);\n //this.formBirthDate = this.formData.birthDate >= new Date('Jan 01 1910');\n this.formBirthDate = this.formData.birthDate;\n return this.formSurname && this.formFileUpload && this.addressCheck && this.formPhoneNumber && this.formEmail && this.formBirthDate &&\n this.formData?.qualificationInstitution?.id >=0 && this.formData.lawDegree && this.formData.studentNumber && this.formStudentEmail && !isProofRequired\n }\n\n private fileListChanged(fileList: Array, studentNewFileType: number): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList, studentNewFileType);\n }\n\n private deleteFile(id: number, studentNewFileType: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete, studentNewFileType);\n }\n })\n\n }\n\n // private buildingTypeChange(bt: any) {\n // this.formData.postalAddress.buildingTypeId = bt.id;\n // this.formData.postalAddress.buildingTypeName = bt.name;\n // }\n\n // private streetTypeChange(st: any) {\n // this.formData.postalAddress.streetTypeId = st.id;\n // this.formData.postalAddress.streetTypeName = st.name;\n // }\n\n private async deleteFileFromServer(id: number, studentNewFileType: number) {\n try {\n if (studentNewFileType == 1) {\n for (let i = 0; i < this.formData.nameChangeFiles.length; i++) {\n if (this.formData.nameChangeFiles[i].id === id) {\n this.formData.nameChangeFiles.splice(i, 1);\n }\n }\n } else if (studentNewFileType == 2) {\n for (let i = 0; i < this.formData.studentProofDocumentFiles.length; i++) {\n if (this.formData.studentProofDocumentFiles[i].id === id) {\n this.formData.studentProofDocumentFiles.splice(i, 1);\n }\n }\n }\n this.nameCheck();\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n\n } catch (err) {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n }\n }\n\n private async uploadAllFiles(fileList: Array, studentNewFileType: number): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x, studentNewFileType)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File, studentNewFileType: number): Promise {\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentNewFileTypeId: studentNewFileType,\n };\n\n const res: any = await this.apiService.FileApi?.apiV1FileSaveStudentNewFilePost(body);\n\n if (studentNewFileType == 1) {\n this.formData.nameChangeFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentNewFileTypeId: studentNewFileType,\n });\n\n } else if (studentNewFileType == 2) {\n this.formData.studentProofDocumentFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentNewFileTypeId: studentNewFileType,\n })\n }\n\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private nameCheck() {\n const _firstNameCheck = this.formData.firstName?.trim() == this.origNames?.firstName?.trim();\n const _otherNameCheck = (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') || (this.formData.otherName?.trim() == this.origNames?.otherName?.trim());\n const _surnameCheck = this.formData.surname?.trim() == this.origNames?.surname?.trim();\n\n if (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') {\n this.formData.otherName = this.origNames?.otherName;\n }\n this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private emailCheck(): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(this.formData.communicationEmail?.email);\n }\n\n private studentEmailCheck(email: string | undefined): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return email ? emailRegex.test(email) : false;\n }\n private validateStudentEmail(): void {\n this.formStudentEmail = this.studentEmailCheck(this.formData.studentEmail?.trim());\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.formData.postalAddress.suburbId = s.suburbId;\n this.formData.postalAddress.suburbName = s.suburbName;\n this.formData.postalAddress.postCodeSuburbId = s.postCodeSuburbId;\n this.formData.postalAddress.postcode = s.postcode;\n this.formData.postalAddress.stateId = s.stateId;\n this.formData.postalAddress.stateName = s.stateName;\n this.formData.postalAddress.state = s.state;\n }\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.keyword + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.institutionList.length > 0) {\n if (this.arrowCounter < this.institutionList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n } else {\n if (this.arrowCounter < this.institutionList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n // this.isFormDirty = false;\n this.isOpen = false;\n if (this.institutionList.length > 0) {\n this.selectInstitutionFromSearch(\n this.institutionList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectInstitutionFromSearch(p: any) {\n this.isOpen = false;\n this.stopSearch = true;\n this.keyword = p.firmName;\n setTimeout(() => {\n this.stopSearch = false;\n }, 500)\n // this.apiService.PcRenewApi?.apiV1PcRenewGetPracticeByFirmIdFirmIdGet(p.firmId)\n // .then(async res => {\n // this.newRecord = res.data.data;\n // this.newRecord.pcRenewApplicationId = this.pcRenewApplicationId;\n // this.recordPracticeAddresses = JSON.parse(JSON.stringify(this.newRecord.recordPracticeAddresses));\n // this.recordPracticeAddresses = this.recordPracticeAddresses.map((item) => {\n // return {\n // id: item.id,\n // isSelected: item.isSelected,\n // address: item.address,\n // inlineAddress: this.getAddressInline(item.address),\n // businessPhone: item.businessPhone,\n // businessFax: item.businessFax\n // };\n // });\n // this.recordPracticeAddresses = orderBy(this.recordPracticeAddresses, ['inlineAddress', 'asc']);\n // this.selectedAddressIndex = 0;\n // this.getAddressList();\n // this.getAddressId();\n // await this.apiService.CodeApi?.apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(this.newRecord.firmId)\n // .then(res => {\n // this.employmentStatusList = res.data.data;\n // this.employmentStatusList = orderBy(this.employmentStatusList, ['name'], 'asc');\n // })\n // .catch(err => {\n // console.log(err)\n // })\n // })\n // .catch(err => {\n // this.eventCtrl.emit('show-snackbar', 'error', 'Unable to select this practice: ' + err);\n // this.ai.trackException('Error, Unable to select this practice: ' + err);\n // })\n\n // this.$emit('updateSuburb', _suburb);\n // this.keyword = '';\n }\n\n get suburbError() {\n return (!this.formData?.postalAddress?.suburbId || !this.formData?.postalAddress?.suburbName || !this.formData?.postalAddress?.postcode ||\n !this.formData?.postalAddress?.stateId || !this.formData?.postalAddress?.stateName || !this.formData?.postalAddress?.state) && this.isSubmitting;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get isDirty(): boolean {\n return JSON.stringify(this.currentDetails) !== JSON.stringify(this.formData);\n }\n\n private disabledAfterToday(date: Date) {\n const today = new Date();\n const oldDate = new Date('Jan 01 1910');\n today.setHours(0, 0, 0, 0);\n //return date > today || date < oldDate;\n return date > today;\n }\n\n // get hasLSID(): boolean {\n // return this.formData.hasIndId;\n // }\n\n @Watch('formData.birthDate')\n private dateChanged()\n {\n //console.log(this.formData.birthDate);\n //this.formData.birthDate = null;\n //console.log(new Date('Jan 01 1910'));\n //if (this.formData.birthDate < new Date('Jan 01 1910'))\n //{\n // this.formData.birthDate = null;\n // }\n }\n\nprivate dateValidation(){\n //console.log(this.formData.birthDate);\n if (this.formData.birthDate < new Date('Jan 01 1910'))\n {\n this.formData.birthDate = null;\n }\n}\n\n\n // private dateOfBirthChanged = false;\n // get disableDateOfBirth(): boolean {\n // return this.hasLSID && this.formData.birthDate !== null;\n // }\n\n get disableNote(): string {\n return 'If you would like to update your current date of birth information, please get in touch with the Student Services team by emailing registry@lawsociety.com.au.'\n }\n\n}\n","import { render } from \"./stn-applicant-details-update-modal.html?vue&type=template&id=3e7b9941&scoped=true&ts=true\"\nimport script from \"./stn-applicant-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-applicant-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-applicant-details-update-modal.scss?vue&type=style&index=0&id=3e7b9941&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3e7b9941\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application, StudentNewIndividualDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport StnApplicantDetailsUpdateModal from \"../stn-applicant-details-update-modal/index.vue\";\nimport { STUDENT_EMAIL_VALIDATION_SUFFIX } from '@/shared/config/config';\n\n\n@Options({\n props: {\n stnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n AddressPreview,\n StnApplicantDetailsUpdateModal,\n },\n mixins: [FormatDateTimeMixin],\n})\n\nexport default class StnApplicantDetails extends Vue {\n private stnAppFormData!: any;\n private isSectionLoading!: boolean;\n private requiredProofOfEnrolment!: boolean;\n\n //email validation\n\n get isEmailValid(): boolean {\n const email = this.individualDetails?.studentEmail || '';\n return email && email.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX);\n }\n\n // @Watch('individualDetails.studentEmail')\n // private onStudentEmailChange() {\n // this.requiredProofOfEnrolment = !this.isEmailValid;\n // }\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private individualDetails: StudentNewIndividualDetail = {};\n private origNames = {};\n\n private showUpdateDetailsModal = false;\n\n private disallowUpdate: any = {};\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('individualDetails.isCurrentDetailCorrect')\n private radioButtonChange() {\n this.canGoNextCheck();\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.eventCtrl.emit('canGoNext', false);\n const _origName = this.stnAppFormData.origNames;\n this.origNames = _origName;\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n const _isRenewing = this.stnAppFormData.individualDetails?.studentNewApplicationId > 0;\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.StudentNewApi?.apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(this.onlineApplication.id, !_isRenewing)\n ]);\n this.individualDetails = resp[0].data.data;\n this.stnAppFormData.individualDetails = this.individualDetails;\n\n // Validate email during preload\n this.requiredProofOfEnrolment = !this.isEmailValid;\n\n if (!_isRenewing) {\n this.origNames = {\n firstName: this.individualDetails.firstName,\n otherName: this.individualDetails.otherName,\n surname: this.individualDetails.surname,\n };\n this.disallowUpdate = {\n birthDate: this.individualDetails.hasIndId && this.individualDetails.birthDate !== null,\n };\n }\n this.stnAppFormData.origNames = this.origNames;\n this.stnAppFormData.disallowUpdate = this.disallowUpdate;\n store.dispatch('setStnAppFormData', this.stnAppFormData);\n\n this.canGoNextCheck();\n\n } catch (err) {\n this.ai.trackException('Error, Unable to load application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n get hasNameChanged() {\n const _firstNameCheck = this.individualDetails?.firstName?.trim() == this.stnAppFormData.origNames?.firstName?.trim();\n const _otherNameCheck = this.individualDetails?.otherName?.trim() == this.stnAppFormData.origNames?.otherName?.trim();\n const _surnameCheck = this.individualDetails?.surname?.trim() == this.stnAppFormData.origNames?.surname?.trim();\n return !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n get missingSurname(): boolean { \n return !this.individualDetails.surname;\n }\n\n get missingMobilePhone(): boolean {\n return !this.individualDetails?.mobilePhone?.phoneNumber;\n }\n\n get missingDOB(): boolean {\n return !this.individualDetails?.birthDate;\n }\n\n get missingEmail(): boolean {\n return !this.individualDetails.communicationEmail?.email;\n }\n\n get missingPostcode(): boolean {\n return !this.individualDetails?.postalAddress?.postcode;\n }\n\n get missingInstitution(): boolean {\n return !this.individualDetails?.qualificationInstitution;\n }\n\n get missingLawDegree(): boolean {\n return !this.individualDetails?.lawDegree;\n }\n\n get missingStudentNumber(): boolean {\n return !this.individualDetails?.studentNumber;\n }\n\n get missingStudentEmail(): boolean {\n return !this.individualDetails?.studentEmail;\n }\n\n get missingProofOfEnrolment(): boolean {\n return !this.individualDetails?.studentEmail.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX) && this.individualDetails?.studentProofDocumentFiles?.length == 0;\n }\n\n get isValidForm(): boolean {\n return !this.missingSurname && !this.missingMobilePhone && !this.missingDOB && !this.missingEmail && !this.missingPostcode &&\n !this.missingInstitution && !this.missingLawDegree && !this.missingStudentNumber && !this.missingStudentEmail;\n }\n\n private canGoNextCheck() {\n const correctInfo: boolean = this.stnAppFormData.individualDetails?.isCurrentDetailCorrect ? true : false;\n this.eventCtrl.emit('canGoNext', this.isValidForm && correctInfo);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n private updateCurrentDetails() {\n // this.individualDetails.workPhone = this.individualDetails.workPhone?.phoneNumber ? this.individualDetails.workPhone :\n // { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.businessFax = this.individualDetails.businessFax?.phoneNumber ? this.individualDetails.businessFax :\n // { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.mobilePhone = this.individualDetails.mobilePhone?.phoneNumber ? this.individualDetails.mobilePhone :\n { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.businessPhone = this.individualDetails.businessPhone?.phoneNumber ? this.individualDetails.businessPhone :\n // { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.birthPlace = this.individualDetails.birthPlace || '';\n this.showUpdateDetailsModal = true;\n }\n\n private async resetStudentProof()\n {\n this.individualDetails.studentProofDocumentFiles = [];\n }\n\n private async reloadCurrentDetails() {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.StudentNewApi?.apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet(this.onlineApplication.id, false)\n ]);\n this.individualDetails = resp[0].data.data;\n if(this.individualDetails.studentEmail.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX))\n {\n this.individualDetails.studentProofDocumentFiles = [];\n }\n this.stnAppFormData.individualDetails = this.individualDetails;\n store.dispatch('setStnAppFormData', this.stnAppFormData);\n this.canGoNextCheck();\n } catch (err) {\n this.ai.trackException('Error, Unable to reload application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private toCurrency(value: any): string {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n}\n\n\n","import { render } from \"./stn-applicant-details.html?vue&type=template&id=18e0f42b&scoped=true&ts=true\"\nimport script from \"./stn-applicant-details.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-applicant-details.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-applicant-details.scss?vue&type=style&index=0&id=18e0f42b&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-18e0f42b\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-086a44cd\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-preferences\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Preferences\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Email Preferences \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select one or more email preferences:\", -1))\nconst _hoisted_8 = { class: \"checkboxes\" }\nconst _hoisted_9 = { class: \"row\" }\nconst _hoisted_10 = { class: \"col-12\" }\nconst _hoisted_11 = { class: \"checkbox-button\" }\nconst _hoisted_12 = [\"onUpdate:modelValue\"]\nconst _hoisted_13 = { class: \"checkbox-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_15 = { class: \"checkbox-text\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4 mb-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Communications from chosen Committees will be sent to your chosen email for communications address.\")\n], -1))\nconst _hoisted_17 = { class: \"right-side\" }\nconst _hoisted_18 = { class: \"box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Areas of Interest \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select the areas of law you are interested in:\", -1))\nconst _hoisted_21 = { class: \"checkboxes\" }\nconst _hoisted_22 = { class: \"row\" }\nconst _hoisted_23 = { class: \"col-12\" }\nconst _hoisted_24 = { class: \"checkbox-button\" }\nconst _hoisted_25 = [\"onUpdate:modelValue\"]\nconst _hoisted_26 = { class: \"checkbox-elmt\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_28 = { class: \"checkbox-text\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note: This information will be used to help improve the relevant email and web content.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sortedPreferences, (e) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((e.isSelected) = $event)\n }, null, 8, _hoisted_12), [\n [_vModelCheckbox, e.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(e.emailPreference.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(this.stnAppFormData.preferenceDetail?.recordAreaOfInterests, (a) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"label\", _hoisted_24, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((a.isSelected) = $event)\n }, null, 8, _hoisted_25), [\n [_vModelCheckbox, a.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"span\", _hoisted_28, _toDisplayString(a.areaOfInterest.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_29\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n stnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class StnPreferences extends Vue {\n private stnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private emailPreferencesList: any[] = [];\n private areaOfInterestsList: any[] = [];\n\n private errorLoadingDataSet = false;\n\n private recordAreaOfInterests: any[] = [];\n private recordEmailPreferences: any[] = [];\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.getCheckBoxesList();\n }\n\n private async getCheckBoxesList() {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n this.apiService.StudentNewApi?.apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet(this.onlineApplication.id)\n .then(res => {\n this.loadingDataSet = false;\n this.stnAppFormData.preferenceDetail = res.data.data;\n })\n .catch(err => {\n this.errorLoadingDataSet = true;\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n })\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get sortedPreferences() {\n return orderBy(this.stnAppFormData.preferenceDetail?.recordEmailPreferences, ['emailPreference.sortOrder'], 'asc');\n }\n \n}\n\n","import { render } from \"./stn-preferences.html?vue&type=template&id=086a44cd&scoped=true&ts=true\"\nimport script from \"./stn-preferences.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-preferences.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-preferences.scss?vue&type=style&index=0&id=086a44cd&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-086a44cd\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-05da60de\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-declaration\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"col-12 declarations mt-4\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createTextVNode(\" By clicking “Next” I declare that: \"),\n _hoisted_4\n ]))\n ]))\n}","import { Options, Prop, Vue } from \"vue-property-decorator\";\n\n@Options({})\nexport default class LoadingIndicator extends Vue {\n\n @Prop({default: true})\n public showLoadingText!: boolean;\n\n @Prop({default: 'Loading'})\n public loadingText!: string;\n}\n","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/loading-indicator\";\nimport DatePicker from 'vue-datepicker-next';\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { Application, StudentNewRecordDeclarationRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\n\n@Options({\n props: {\n stnAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n DatePicker,\n }\n})\nexport default class StnDeclaration extends Vue {\n private stnAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n private loadingDataSet = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.stnAppFormData.stnDeclarations = {};\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.updateStnDeclaration(); \n }\n\n private updateStnDeclaration() {\n const _stnDeclaration: StudentNewRecordDeclarationRequest = {\n id: 0,\n studentNewApplicationId: this.stnAppFormData.studentRecord?.studentNewApplicationId,\n }\n this.stnAppFormData.stnDeclarations = _stnDeclaration;\n this.canGoNextCheck();\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n}\n\n\n","import { render } from \"./stn-declaration.html?vue&type=template&id=05da60de&scoped=true&ts=true\"\nimport script from \"./stn-declaration.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-declaration.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-declaration.scss?vue&type=style&index=0&id=05da60de&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-05da60de\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-99f60e56\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"stn-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","// import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class StnConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('stnAppFormData');\n // store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./stn-confirmation.html?vue&type=template&id=99f60e56&scoped=true&ts=true\"\nimport script from \"./stn-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-confirmation.scss?vue&type=style&index=0&id=99f60e56&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-99f60e56\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport SwipeStepper from \"@/shared/components/swipe-stepper/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application, PageContent } from \"@/shared/modules/typescript-api-client/models\";\n// import { PopoverView } from \"@/shared/components/popover/popover\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport StnEligibility from \"../stn-eligibility/index.vue\";\nimport StnApplicantDetails from \"../stn-applicant-details/index.vue\";\nimport StnPreferences from \"../stn-preferences/index.vue\";\nimport StnDeclaration from \"../stn-declaration/index.vue\";\nimport StnConfirmation from \"../stn-confirmation/index.vue\";\n\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n StnEligibility,\n StnApplicantDetails,\n StnPreferences,\n StnDeclaration,\n StnConfirmation,\n ConfirmDialogue,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n }\n})\nexport default class StnApplication extends Vue {\n private ai = new AppInsights;\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getStnAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private navSteps = [\n new NavStep(Step.eligibility, Section.eligibility),\n new NavStep(Step.applicantDetails, Section.applicantDetails),\n new NavStep(Step.preferences, Section.preferences),\n new NavStep(Step.declarations, Section.declarations),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private stnAppFormData: any = {};\n\n private sessionId = new Date().getTime() + '';\n\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private checkingConcurrency = false;\n\n private helpContent: PageContent = {};\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n\n if (!_onlineApp.id) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Invalid Page entry, please choose an option from Portal home');\n this.$router.push({ name: RouteN.Mars.Home.n });\n } else {\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n // window.addEventListener('message', this.receivedNotification);\n\n this.checkingConcurrency = true;\n this.checkConcurrentApplication(this.onlineApplication);\n this.loadPageContents();\n }\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n // window.removeEventListener('message', this.receivedNotification);\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n this.nextButtonText = 'Next';\n }\n\n switch (_section) {\n case Section.eligibility:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.applicantDetails:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.preferences:\n this.setSteps(2);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.declarations:\n this.setSteps(3);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(4);\n this.backButtonVisible = false;\n this.nextButtonText = 'Close';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done\n }\n this.navSteps[n].status = NavStepStatusID.Current\n // the confirmation page\n if (n === 5) {\n for (let i = 0; i < 5; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 43);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 13);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 44);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 45);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4:\n this.helpContent = this.$getPopover('Help', 46);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n // if (this.isOverviewPage) {\n // this.$router.push({ name: RouteN.Mars.Home.n});\n // }\n\n switch (_section) {\n case Section.eligibility:\n this.eventCtrl.emit('cancel-stn-application');\n break;\n case Section.applicantDetails:\n this.navigate(this.navSteps[0]);\n break;\n case Section.preferences:\n this.navigate(this.navSteps[1]);\n break;\n case Section.declaration:\n this.navigate(this.navSteps[2]);\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setStnAppFormData', this.stnAppFormData);\n const _section = this.$route.query.sec as string;\n\n // if (this.isOverviewPage) {\n // this.checkConcurrentApplication();\n // }\n\n switch (_section) {\n case Section.eligibility:\n this.saveEligibility();\n break;\n case Section.applicantDetails:\n this.saveApplicantDetails();\n break;\n case Section.preferences:\n this.saveStnPreferenceDetailData();\n break;\n case Section.declaration:\n this.saveStnDeclarationsData()\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n\n }\n\n private checkConcurrentApplication(app: Application) {\n this.apiService.StudentNewApi?.apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet(app.id, true)\n .then(res => {\n const _stnAppFormData = {\n id: app.id,\n origNames: {}\n }\n store.dispatch('setStnAppFormData', _stnAppFormData);\n this.$router.push({ name: RouteN.Mars.StnApplication.n, query: { appId: app.id, sec: Section.eligibility } });\n })\n .catch(err => {\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n }).finally(() => {\n this.checkingConcurrency = false;\n });\n\n }\n\n private async saveEligibility(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.StudentNewApi?.apiV1StudentNewSaveStudentNewRecordEligibilityPost(this.stnAppFormData.studentRecord);\n this.eventCtrl.emit('show-snackbar', 'success', 'Eligibility details saved');\n this.navigate(this.navSteps[1]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Eligibility details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveApplicantDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.StudentNewApi?.apiV1StudentNewUpdateStudentNewApplicationDetailPost(this.stnAppFormData.individualDetails);\n this.eventCtrl.emit('show-snackbar', 'success', 'Applicant details saved');\n this.navigate(this.navSteps[2]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Applicant details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n\n private async saveStnPreferenceDetailData() {\n this.isSaving = true;\n try {\n this.isSaving = true;\n await this.apiService.StudentNewApi?.apiV1StudentNewSaveStudentNewPreferenceDetailDataPost(this.stnAppFormData.preferenceDetail);\n this.eventCtrl.emit('show-snackbar', 'success', 'User preference updated');\n this.navigate(this.navSteps[3]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update user preference: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveStnDeclarationsData() {\n this.isSaving = true;\n await this.apiService.StudentNewApi?.apiV1StudentNewSaveStudentNewRecordDeclarationPost(this.stnAppFormData.stnDeclarations)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User declaration saved');\n this.navigate(this.navSteps[4]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save user declaration: ' + err);\n this.ai.trackException('Error, Unable to save user declaration: ' + err);\n })\n }\n\n private getPopOverKeys(): void {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n // private getPopover(pKey: string): PopoverView {\n // const _popOver = this.popovers.filter(p => {\n // return p.popoverKey == pKey;\n // })[0];\n // return _popOver;\n // }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n // push all page contents to store including popovers and help pages\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n })\n }\n this.getPopOverKeys();\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private confirmCancelConcurrentApp() {\n this.loadingDataSet = true;\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm.show({\n title: 'You are already logged in elsewhere',\n message: 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n }).then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart();\n }\n else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n })\n }\n\n private async clearSessionAndStart(): Promise {\n try {\n this.loadingDataSet = true;\n await this.apiService.StudentNewApi?.apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(this.onlineApplication.id);\n this.loadingDataSet = false;\n this.navigate(this.navSteps[0]);\n\n } catch {\n this.loadingDataSet = false;\n\n }\n }\n\n // get isOverviewPage(): boolean {\n // return !this.$route.query.sec && this.$route.name == RouteN.Mars.SmApplication.n;\n // }\n\n get $Section() {\n return Section;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n}\n\n","import { render } from \"./stn-application.html?vue&type=template&id=342fae7d&scoped=true&ts=true\"\nimport script from \"./stn-application.ts?vue&type=script&lang=ts\"\nexport * from \"./stn-application.ts?vue&type=script&lang=ts\"\n\nimport \"./stn-application.scss?vue&type=style&index=0&id=342fae7d&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-342fae7d\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-03d8c230\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-application\" }\nconst _hoisted_2 = {\n key: 1,\n class: \"container mt-4\"\n}\nconst _hoisted_3 = {\n key: 5,\n class: \"amr-application-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_AmrMembershipDetails = _resolveComponent(\"AmrMembershipDetails\")\n const _component_AmrPreferences = _resolveComponent(\"AmrPreferences\")\n const _component_AmrDeclarations = _resolveComponent(\"AmrDeclarations\")\n const _component_AmrPaymentDetails = _resolveComponent(\"AmrPaymentDetails\")\n const _component_AmrConfirmation = _resolveComponent(\"AmrConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_PaymentPopup = _resolveComponent(\"PaymentPopup\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true,\n showFaqBtn: true\n }, null, 8, [\"navSteps\"]),\n (_ctx.isLoadingData || _ctx.loadingDataSet || _ctx.checkingConcurrency)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_ctx.currentSection === _ctx.$Section.membershipDetails)\n ? (_openBlock(), _createBlock(_component_AmrMembershipDetails, {\n key: 0,\n amrAppFormData: _ctx.amrAppFormData,\n \"onUpdate:amrAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.amrAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amrAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.preferences)\n ? (_openBlock(), _createBlock(_component_AmrPreferences, {\n key: 1,\n amrAppFormData: _ctx.amrAppFormData,\n \"onUpdate:amrAppFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.amrAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amrAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.declarations)\n ? (_openBlock(), _createBlock(_component_AmrDeclarations, {\n key: 2,\n amrAppFormData: _ctx.amrAppFormData,\n \"onUpdate:amrAppFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.amrAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amrAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.payment)\n ? (_openBlock(), _createBlock(_component_AmrPaymentDetails, {\n key: 3,\n amrAppFormData: _ctx.amrAppFormData,\n \"onUpdate:amrAppFormData\": _cache[6] || (_cache[6] = $event => ((_ctx.amrAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[7] || (_cache[7] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"amrAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_AmrConfirmation, {\n key: 4,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[8] || (_cache[8] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading && _ctx.currentPageSection != '')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[9] || (_cache[9] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ])),\n (_ctx.showPaymentPopup)\n ? (_openBlock(), _createBlock(_component_PaymentPopup, {\n key: 2,\n modalOpened: _ctx.showPaymentPopup,\n paymentAppName: _ctx.paymentAppName,\n cancelEventName: 'cancel-amr-application-payment',\n paymentTransaction: _ctx.paymentTransaction,\n disableCloseButton: _ctx.disablePaymentPopupCloseBut,\n sessionId: _ctx.sessionId,\n validPaymentPage: _ctx.validPaymentPage,\n onClose: _cache[11] || (_cache[11] = $event => (_ctx.processNotification('close-payment-form')))\n }, null, 8, [\"modalOpened\", \"paymentAppName\", \"paymentTransaction\", \"disableCloseButton\", \"sessionId\", \"validPaymentPage\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, Fragment as _Fragment, createTextVNode as _createTextVNode, renderList as _renderList, createVNode as _createVNode, normalizeClass as _normalizeClass, vModelRadio as _vModelRadio, withDirectives as _withDirectives, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-32efb954\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-membership-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Membership Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"row main-content\"\n}\nconst _hoisted_4 = { class: \"col-4\" }\nconst _hoisted_5 = { class: \"pa-3\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center\" }, \"Membership Details\", -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Membership Period\", -1))\nconst _hoisted_9 = { class: \"mb-3\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Associate Membership Type\", -1))\nconst _hoisted_11 = { key: 0 }\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"background-color\":\"white\"} }, [\n /*#__PURE__*/_createElementVNode(\"br\"),\n /*#__PURE__*/_createElementVNode(\"b\", null, \"Note:\"),\n /*#__PURE__*/_createTextVNode(\" Associate Membership does not authorise you to either engage in legal practice in this jurisdiction or be held out as being authorised to engage in legal practice in this jurisdiction, unless you are the holder of an Australian practising certificate or an Australian Registration Certificate as an Australian-Registered Foreign Lawyer. \")\n], -1))\nconst _hoisted_13 = { class: \"col-8\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Personal Details\")\n], -1))\nconst _hoisted_15 = {\n key: 0,\n class: \"col-6\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Full name\", -1))\nconst _hoisted_17 = { class: \"mb-3\" }\nconst _hoisted_18 = { key: 0 }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Name Change\", -1))\nconst _hoisted_20 = { class: \"file-list mb-2\" }\nconst _hoisted_21 = { class: \"file-name\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Email for Communication\", -1))\nconst _hoisted_23 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_24 = { class: \"mb-3 mr-2\" }\nconst _hoisted_25 = {\n class: \"col-6 right-side\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Postal Address\", -1))\nconst _hoisted_27 = { class: \"row mb-2\" }\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Personal Mobile\", -1))\nconst _hoisted_29 = { key: 0 }\nconst _hoisted_30 = { key: 1 }\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Work Mobile\", -1))\nconst _hoisted_32 = { key: 0 }\nconst _hoisted_33 = { key: 1 }\nconst _hoisted_34 = { class: \"row mb-2\" }\nconst _hoisted_35 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business Phone\", -1))\nconst _hoisted_36 = { key: 0 }\nconst _hoisted_37 = { key: 1 }\nconst _hoisted_38 = { class: \"col-6\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Business Fax\", -1))\nconst _hoisted_40 = { key: 0 }\nconst _hoisted_41 = { key: 1 }\nconst _hoisted_42 = {\n key: 0,\n class: \"col-12 error mt-0\"\n}\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Contact information mandatory. \")\n], -1))\nconst _hoisted_44 = [\n _hoisted_43\n]\nconst _hoisted_45 = { class: \"col-12 radios\" }\nconst _hoisted_46 = {\n key: 0,\n class: \"ml-3\"\n}\nconst _hoisted_47 = {\n key: 1,\n class: \"radio-button-group\"\n}\nconst _hoisted_48 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_49 = { class: \"radio-button col-3\" }\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_51 = { class: \"col-2 ml-0\" }\nconst _hoisted_52 = { class: \"radio-button\" }\nconst _hoisted_53 = [\"disabled\"]\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_55 = { class: \"col-12 right\" }\nconst _hoisted_56 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_AmrMembershipDetailsUpdateModal = _resolveComponent(\"AmrMembershipDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n (_ctx.individualMemberShipDetails)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _hoisted_8,\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(_ctx.membershipPeriod), 1),\n _hoisted_10,\n (_ctx.individualMemberShipDetails?.membershipSubTypeLkpId !== '2')\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_11, _toDisplayString(_ctx.individualMemberShipDetails?.membershipSubTypeDescription), 1))\n : _createCommentVNode(\"\", true)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]),\n _hoisted_12\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n (_ctx.individualDetails)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_15, [\n _hoisted_16,\n _createElementVNode(\"div\", _hoisted_17, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1),\n (_ctx.nameCheck)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _hoisted_19,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.amrAppFormData.individualDetails.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, _toDisplayString(f.originalFileName), 1)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_22,\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, _toDisplayString(_ctx.individualDetails?.communicationEmail?.email), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail', 9)\n }, null, 8, [\"popover\"])\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_25, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.individualDetails.postalAddress ? '' : 'phone-error'])\n }, [\n _hoisted_26,\n _createVNode(_component_AddressPreview, {\n address: _ctx.individualDetails.postalAddress,\n noTitle: true,\n style: 'background-color: transparent'\n }, null, 8, [\"address\"])\n ], 2),\n _createElementVNode(\"div\", _hoisted_27, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'phone-error' : ''])\n }, [\n _hoisted_28,\n (!_ctx.individualDetails.mobilePhone?.phoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_29, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_30, _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'phone-error' : ''])\n }, [\n _hoisted_31,\n (!_ctx.individualDetails.workPhone?.phoneNumber )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_32, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_33, _toDisplayString(_ctx.individualDetails.workPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.workPhone?.phoneNumber), 1))\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"col-6\", _ctx.contactPhoneInfoMissing ? 'phone-error' : ''])\n }, [\n _hoisted_35,\n (!_ctx.individualDetails.businessPhone?.phoneNumber )\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_36, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_37, _toDisplayString(_ctx.individualDetails.businessPhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.businessPhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", _hoisted_38, [\n _hoisted_39,\n (!_ctx.individualDetails.businessFax?.phoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, \" No record \"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_41, _toDisplayString(_ctx.individualDetails.businessFax?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.businessFax?.phoneNumber), 1))\n ])\n ]),\n (_ctx.contactPhoneInfoMissing || _ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_42, _hoisted_44))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_45, [\n (!_ctx.contactPhoneInfoMissing && !_ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, \"Are these details correct?\"))\n : _createCommentVNode(\"\", true),\n (!_ctx.contactPhoneInfoMissing && !_ctx.addressMissing)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_47, [\n _createElementVNode(\"span\", _hoisted_48, [\n _createElementVNode(\"label\", _hoisted_49, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: true,\n name: \"overview\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_50\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_51, [\n _createElementVNode(\"label\", _hoisted_52, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: false,\n name: \"overview\",\n disabled: _ctx.contactPhoneInfoMissing\n }, null, 8, _hoisted_53), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_54\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_55, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n disabled: !_ctx.contactPhoneInfoMissing && !_ctx.addressMissing && _ctx.individualDetails.isCurrentDetailCorrect !== false,\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.updateCurrentDetails()))\n }, \"Update current details\", 8, _hoisted_56)\n ])\n ])\n ])\n ])),\n (_ctx.showUpdateDetailsModal)\n ? (_openBlock(), _createBlock(_component_AmrMembershipDetailsUpdateModal, {\n key: 2,\n currentDetails: _ctx.individualDetails,\n \"onUpdate:currentDetails\": _cache[3] || (_cache[3] = $event => ((_ctx.individualDetails) = $event)),\n origNames: _ctx.origNames,\n \"onUpdate:origNames\": _cache[4] || (_cache[4] = $event => ((_ctx.origNames) = $event)),\n onClose: _cache[5] || (_cache[5] = $event => {_ctx.individualDetails.isCurrentDetailCorrect = null; _ctx.showUpdateDetailsModal = false}),\n onReloadCurrentDetails: _cache[6] || (_cache[6] = $event => (_ctx.reloadCurrentDetails()))\n }, null, 8, [\"currentDetails\", \"origNames\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, normalizeClass as _normalizeClass, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5d0dab3e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-membership-details-update-modal\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Update Current Details\", -1))\nconst _hoisted_3 = { class: \"modal-body\" }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = { class: \"dropdown-menu\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Title \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_12 = { class: \"input-box\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"First name\", -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_15 = { class: \"input-box\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Other names (Optional)\", -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Surname\", -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_22 = { class: \"flex-row\" }\nconst _hoisted_23 = { style: {\"margin\":\"0 !important\",\"padding\":\"0 !important\"} }\nconst _hoisted_24 = { class: \"ml-2\" }\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please provide at least one of the following contact numbers: personal mobile, work mobile, or business phone.\")\n], -1))\nconst _hoisted_26 = { class: \"flex-row\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Personal mobile\", -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Work mobile\", -1))\nconst _hoisted_29 = { class: \"flex-row\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Business phone\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"ml-2\" })\n], -1))\nconst _hoisted_31 = { style: {\"width\":\"100%\"} }\nconst _hoisted_32 = {\n style: {\"flex\":\"1\"},\n class: \"input-box\"\n}\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Business fax\"),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"ml-2\" })\n], -1))\nconst _hoisted_34 = { style: {\"width\":\"100%\"} }\nconst _hoisted_35 = {\n key: 0,\n class: \"phone-error error\"\n}\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\" Must input Mobile phone or Work phone or Business phone \")\n], -1))\nconst _hoisted_37 = [\n _hoisted_36\n]\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_39 = { class: \"field_name\" }\nconst _hoisted_40 = { class: \"validation-msg\" }\nconst _hoisted_41 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_42 = { key: 0 }\nconst _hoisted_43 = { key: 1 }\nconst _hoisted_44 = { key: 2 }\nconst _hoisted_45 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12 mt-2 mt-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_46 = { key: 1 }\nconst _hoisted_47 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_49 = { class: \"file-list mb-2\" }\nconst _hoisted_50 = { class: \"file-name\" }\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_52 = [\"onClick\"]\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Please enter your preferred postal address\", -1))\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_56 = {\n key: 0,\n class: \"modal-footer row right\"\n}\nconst _hoisted_57 = [\"disabled\"]\nconst _hoisted_58 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_AddressComponent = _resolveComponent(\"AddressComponent\")\n const _component_AddressPreview = _resolveComponent(\"AddressPreview\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n _hoisted_2\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.formData.title) = $event))\n }, [\n _hoisted_8,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.titles, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: t.id, name: t.name, description: t.description}\n }, _toDisplayString(t.name), 9, _hoisted_9))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.formData.title]\n ])\n ]),\n _hoisted_10\n ]),\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.formData.firstName) = $event)),\n placeholder: \"First name\",\n maxlength: \"50\",\n onChange: _cache[2] || (_cache[2] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.firstName]\n ])\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", _hoisted_15, [\n _hoisted_16,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.formData.otherName) = $event)),\n placeholder: \"Other name\",\n maxlength: \"50\",\n onChange: _cache[4] || (_cache[4] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.otherName]\n ])\n ]),\n _hoisted_17,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.surname.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_18,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[5] || (_cache[5] = $event => ((_ctx.formData.surname) = $event)),\n placeholder: \"Surname\",\n maxlength: \"50\",\n onChange: _cache[6] || (_cache[6] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.surname]\n ]),\n _hoisted_19\n ], 2),\n _hoisted_20,\n _hoisted_21,\n _createElementVNode(\"div\", _hoisted_22, [\n _createElementVNode(\"h4\", _hoisted_23, [\n _createTextVNode(\"Contact details\"),\n _createElementVNode(\"span\", _hoisted_24, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneDetails', 9),\n style: {\"margin\":\"auto auto\",\"padding\":\"auto auto\"}\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _hoisted_25,\n _createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_27,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[7] || (_cache[7] = $event => ((_ctx.formData.mobilePhone.phoneNumber) = $event)),\n placeholder: \"Personal mobile\",\n maxlength: \"15\",\n onChange: _cache[8] || (_cache[8] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.mobilePhone.phoneNumber]\n ])\n ], 2),\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_28,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = $event => ((_ctx.formData.workPhone.phoneNumber) = $event)),\n placeholder: \"Work mobile\",\n maxlength: \"15\",\n onChange: _cache[10] || (_cache[10] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.workPhone.phoneNumber]\n ])\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_29, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_30,\n _createElementVNode(\"span\", _hoisted_31, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = $event => ((_ctx.formData.businessPhone.phoneAreaCode) = $event)),\n style: {\"width\":\"50px\"},\n maxlength: \"5\"\n }, null, 512), [\n [_vModelText, _ctx.formData.businessPhone.phoneAreaCode]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.formData.businessPhone.phoneNumber) = $event)),\n placeholder: \"Business phone\",\n maxlength: \"15\",\n onChange: _cache[13] || (_cache[13] = $event => (_ctx.nameCheck())),\n style: {\"width\":\"calc(100% - 60px)\",\"margin-left\":\"9px\"}\n }, null, 544), [\n [_vModelText, _ctx.formData.businessPhone.phoneNumber]\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", _hoisted_32, [\n _hoisted_33,\n _createElementVNode(\"span\", _hoisted_34, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[14] || (_cache[14] = $event => ((_ctx.formData.businessFax.phoneAreaCode) = $event)),\n style: {\"width\":\"50px\"},\n maxlength: \"5\"\n }, null, 512), [\n [_vModelText, _ctx.formData.businessFax.phoneAreaCode]\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => ((_ctx.formData.businessFax.phoneNumber) = $event)),\n placeholder: \"Business fax\",\n maxlength: \"15\",\n onChange: _cache[16] || (_cache[16] = $event => (_ctx.nameCheck())),\n style: {\"width\":\"calc(100% - 60px)\",\"margin-left\":\"9px\"}\n }, null, 544), [\n [_vModelText, _ctx.formData.businessFax.phoneNumber]\n ])\n ])\n ])\n ]),\n (!_ctx.formPhoneNumber)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_35, _hoisted_37))\n : _createCommentVNode(\"\", true),\n _hoisted_38,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_39, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail' , 9),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => ((_ctx.formData.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onChange: _cache[18] || (_cache[18] = $event => (_ctx.emailCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_40, [\n _hoisted_41,\n (_ctx.formData.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_42, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_43, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_44, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_45,\n (_ctx.requiredFileUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_46, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"file-upload mt-4\", _ctx.requiredFileUpload ? 'required' : ''])\n }, [\n _createTextVNode(\" Please attach proof of name change. \"),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _ctx.fileListChanged,\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\", \"onFileInputChanged\"]),\n (_ctx.formData.files?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_47, [\n _hoisted_48,\n _createTextVNode(\" Required to attach proof of name change. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.files, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_49, [\n _createElementVNode(\"div\", _hoisted_50, [\n _hoisted_51,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id))\n }, \"Delete\", 8, _hoisted_52)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_53,\n _hoisted_54,\n (_ctx.formData.postalAddress)\n ? (_openBlock(), _createBlock(_component_AddressComponent, {\n key: 2,\n onUpdateAddress: _ctx.updateAddress,\n disableCountrySelection: false,\n isSubmitting: _ctx.isSubmitting,\n \"onUpdate:isSubmitting\": _cache[19] || (_cache[19] = $event => ((_ctx.isSubmitting) = $event)),\n address: _ctx.formData.postalAddress,\n \"onUpdate:address\": _cache[20] || (_cache[20] = $event => ((_ctx.formData.postalAddress) = $event)),\n showAddressType: true,\n overseaAddressLabel: 'Postal Address'\n }, null, 8, [\"onUpdateAddress\", \"isSubmitting\", \"address\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_AddressPreview, {\n address: _ctx.formData.postalAddress,\n \"onUpdate:address\": _cache[21] || (_cache[21] = $event => ((_ctx.formData.postalAddress) = $event)),\n style: 'margin-top: 2rem; padding: 1rem 1rem;'\n }, null, 8, [\"address\"])\n ]))\n ]),\n _hoisted_55,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_56, [\n (_ctx.isUpdating)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[22] || (_cache[22] = $event => (_ctx.cancel())),\n disabled: _ctx.isUpdating\n }, \"Cancel\", 8, _hoisted_57),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[23] || (_cache[23] = $event => (_ctx.update())),\n disabled: !_ctx.isDirty || _ctx.isUpdating\n }, \"Update\", 8, _hoisted_58)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"]),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail, AmRenewPersonalDetail, Application, PcRenewFileRequest, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport _ from \"lodash\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport AddressComponent from \"../../address-component/index.vue\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\n\n@Options({\n props: {\n currentDetails: Object,\n origNames: Object,\n },\n components: {\n FileDragAndDrop,\n LoadingIndicator,\n PostcodeSearch,\n AlertBox,\n Popover,\n ConfirmDialogue,\n AddressComponent,\n AddressPreview,\n ModalWindow,\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\n\nexport default class AmrMembershipDetailsUpdateModal extends Vue {\n\n private currentDetails!: AmRenewPersonalDetail;\n private origNames!: any;\n\n private isClosing = false;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private titles: any[] = [];\n private buildingTypes: any[] = [];\n private streetTypes: any[] = [];\n private buildingType: any = { id: 0, name: '' };\n private streetType: any = { id: 0, description: '' };\n\n private pcRenewFileTypes: any[] = [];\n private fileIdToDelete = 0;\n\n private popover: PopoverView = {\n key:'',\n content: '

Example:

.headings {
font-family: var(--font-headings);
}

.body-text {
font-family: var(--font-body-text);
}

',\n isShow: false,\n title: 'Title',\n };\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = true;\n\n private requiredFileUpload = false;\n\n private formData: AmRenewPersonalDetail = {};\n\n private fileList: Array = [];\n private uploading = false;\n private dateReceived: Date = null as any;\n private showDeleteAlert = false;\n\n private isSubmitting = false;\n private suburbStatePostcode: SuburbStatePostcode = {};\n\n // mandatory fields\n private formFirstName = true;\n private formSurname = true;\n private formFileUpload = true;\n private formPhoneNumber = true;\n private formEmail = true;\n private isEmailDuplicated = false;\n private addressCheck = true;\n private isUpdating = false;\n private newSeed = 1;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n this.preloadData();\n this.formData = JSON.parse(JSON.stringify(this.currentDetails));\n this.formData.postalAddress = this.formData.postalAddress ? this.initAddress(this.formData.postalAddress) : this.initAddress({});\n if (!this.formData.files) {\n this.formData.files = [];\n }\n this.streetType = {\n id: this.formData.postalAddress?.streetTypeId ?? 0,\n name: this.formData.postalAddress?.streetTypeName ?? '',\n }\n this.buildingType = {\n id: this.formData.postalAddress?.buildingTypeId ?? 0,\n name: this.formData.postalAddress?.buildingTypeName ?? '',\n }\n\n this.suburbStatePostcode = {\n suburbId: this.formData.postalAddress?.suburbId,\n suburbName: this.formData.postalAddress?.suburbName,\n postcode: this.formData.postalAddress?.postcode,\n stateId: this.formData.postalAddress?.stateId,\n stateName: this.formData.postalAddress?.stateName,\n }\n this.nameCheck();\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n a.buildingName = a.buildingName || '';\n a.buildingNumber = a.buildingNumber || null;\n a.buildingTypeId = a.buildingTypeId || 0;\n a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n a.deliveryTypeId = a.deliveryTypeId || 0;\n a.deliveryTypeName = a.deliveryTypeName || null;\n a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n a.dxNumber = a.dxNumber || null;\n a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n a.level = a.level || null;\n a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n a.streetName = a.streetName || null;\n a.streetNumber = a.streetNumber || null;\n a.streetTypeId = a.streetTypeId || 0;\n a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n a.stateId = a.stateId || 0;\n a.firmAddMapId = a.firmAddMapId || 0;\n\n return JSON.parse(JSON.stringify(a).replace(/:null/gi, ':\"\"'));\n }\n\n private async preloadData() {\n try {\n // const _memberId: any = parseInt(this.$route.query.memberId as string, 10) || '';\n this.isLoadingData = true;\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetTitlesGet(),\n this.apiService.CodeApi?.apiV1CodeGetPcRenewFileTypesGet(),\n ]);\n this.titles = resp[0].data.data;\n this.pcRenewFileTypes = resp[1].data.data;\n } catch (err) {\n this.isLoadingData = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n }\n }\n\n private cancel() {\n // if (this.isDirty) {\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Cancel Update Current Details',\n // message: 'By cancelling, changes to the current screen will be lost.
Are you sure you want to cancel?',\n // okButton: 'Yes',\n // cancelButton: 'No',\n // }).then((res: any) => {\n // if (res) {\n // this.close();\n // }\n // })\n // } else {\n this.close();\n // }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n this.addressCheck = valid;\n }\n\n private async update() {\n this.isSubmitting = true;\n this.isUpdating = true;\n this.formData.isCurrentDetailCorrect = true;\n if (this.formValidated()) {\n this.formData.postalAddress = this.$addressCleanup(this.formData.postalAddress);\n await this.apiService.AmRenewApi?.apiV1AmRenewUpdatePersonalDetailPost(this.formData)\n .then(() => {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n this.$emit('reloadCurrentDetails');\n this.close();\n })\n .catch(err => {\n this.isUpdating = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n }\n })\n } else {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Please check all required fields');\n }\n\n }\n\n private formValidated(): boolean {\n this.formFirstName = this.formData.firstName.trim() !== '';\n this.formSurname = this.formData.surname.trim() !== '';\n this.formFileUpload = true;\n if (this.requiredFileUpload) {\n this.formFileUpload = this.formData.files.length > 0;\n }\n this.formPhoneNumber = this.formData.mobilePhone.phoneNumber?.trim() !== ''\n || this.formData.businessPhone.phoneNumber?.trim() !== '' || this.formData.workPhone?.phoneNumber?.trim() !== '';\n\n this.formEmail = this.emailCheck();\n return this.formSurname && this.formFileUpload && this.addressCheck && this.formPhoneNumber && this.formEmail;\n }\n\n private fileListChanged(fileList: Array): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList);\n }\n\n private deleteFile(id: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete);\n }\n })\n\n }\n\n private buildingTypeChange(bt: any) {\n this.formData.postalAddress.buildingTypeId = bt.id;\n this.formData.postalAddress.buildingTypeName = bt.name;\n }\n\n private streetTypeChange(st: any) {\n this.formData.postalAddress.streetTypeId = st.id;\n this.formData.postalAddress.streetTypeName = st.name;\n }\n\n private async deleteFileFromServer(id: number) {\n await this.apiService.FileApi?.apiV1FileDeleteFileFileIdDelete(id)\n .then(() => {\n for (let i = 0; i < this.formData.files.length; i++) {\n if (this.formData.files[i].id === id) {\n this.formData.files.splice(i, 1);\n }\n }\n this.nameCheck();\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n })\n .catch(err => {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n })\n }\n\n private upload() {\n this.uploadAllFiles(this.fileList);\n }\n\n private async uploadAllFiles(fileList: Array): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File): Promise {\n // const _id: number = parseInt(this.$route.query.investigation as string, 10);\n this.getNextSeed();\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.amrApp.id,\n amRenewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n };\n\n await this.apiService.FileApi?.apiV1FileSaveAmRenewFilePost(\n body\n ).then(res => {\n this.formData.files.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n seed: this.newSeed,\n applicationId: this.amrApp.id,\n amRenewFileTypeId: 1, // 1, name Change, 2: Fit and Proper, 3: Show Cause Events.\n })\n })\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private nameCheck() {\n const _firstNameCheck = this.formData.firstName?.trim() == this.origNames.firstName?.trim();\n const _otherNameCheck = this.formData.otherName?.trim() == this.origNames.otherName?.trim();\n const _surnameCheck = this.formData.surname?.trim() == this.origNames.surname?.trim();\n this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private emailCheck(): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(this.formData.communicationEmail?.email);\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.formData.postalAddress.suburbId = s.suburbId;\n this.formData.postalAddress.suburbName = s.suburbName;\n this.formData.postalAddress.postcode = s.postcode;\n this.formData.postalAddress.stateId = s.stateId;\n this.formData.postalAddress.stateName = s.stateName;\n }\n\n get amrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n get isDirty(): boolean {\n return JSON.stringify(this.currentDetails) !== JSON.stringify(this.formData);\n }\n\n private getNextSeed() {\n this.newSeed = this.formData.files?.length > 0\n ? (_.maxBy(this.formData.files, (f: PcRenewFileRequest) => f.seed) as PcRenewFileRequest).seed + 1\n : 1;\n }\n\n}\n\n\n\n","import { render } from \"./amr-membership-details-update-modal.html?vue&type=template&id=5d0dab3e&scoped=true&ts=true\"\nimport script from \"./amr-membership-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-membership-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-membership-details-update-modal.scss?vue&type=style&index=0&id=5d0dab3e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5d0dab3e\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n// import { AuthorizedUser } from \"@/shared/models/authorized-user\";\nimport Popover from \"@/shared/components/popover/index.vue\";\n// import { PopoverView } from \"@/shared/components/popover/popover\";\nimport { AddressDetail, AmRenewIndividualDetail, Application, IndividualMembershipDetails } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport AmrMembershipDetailsUpdateModal from \"../amr-membership-details-update-modal/index.vue\";\n\n\n@Options({\n props: {\n amrAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n AddressPreview,\n AmrMembershipDetailsUpdateModal,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmrMembershipDetails extends Vue {\n private amrAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n private declaration1 = null;\n private declaration2 = null;\n private individualDetails: AmRenewIndividualDetail = {};\n private individualMemberShipDetails: IndividualMembershipDetails = {};\n private membershipDetails: Application = {};\n\n private contactPhoneInfoMissing = false;\n private addressMissing = false;\n private showUpdateDetailsModal = false;\n\n private isRenew = null;\n private origNames = {};\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('individualDetails.isCurrentDetailCorrect')\n private radioButtonChange() {\n this.eventCtrl.emit('canGoNext', this.individualDetails.isCurrentDetailCorrect);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n this.eventCtrl.emit('canGoNext', false);\n const _origName = this.amrAppFormData.origNames;\n this.origNames = _origName;\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n try {\n const _isRenewing = this.amrAppFormData.individualDetails?.amRenewApplicationId > 0;\n this.loadingDataSet = true;\n const resp: any[] = await Promise.all([\n this.apiService.AmRenewApi?.apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(this.onlineApplication.id, !_isRenewing),\n this.apiService.IndividualApi?.apiV1IndividualGetIndividualMembershipDetailsGet(),\n this.apiService.ApplicationApi?.apiV1ApplicationGetApplicationByIdApplicationIdGet(this.onlineApplication.id),\n ]);\n this.individualDetails = resp[0].data.data;\n this.individualMemberShipDetails = resp[1].data.data;\n this.membershipDetails = resp[2].data.data;\n if (!_isRenewing) {\n this.origNames = {\n firstName: this.individualDetails.firstName,\n otherName: this.individualDetails.otherName,\n surname: this.individualDetails.surname,\n };\n }\n this.individualDetails.workPhone = this.individualDetails.workPhone.phoneNumber ? this.individualDetails.workPhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessFax = this.individualDetails.businessFax.phoneNumber ? this.individualDetails.businessFax :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.mobilePhone = this.individualDetails.mobilePhone.phoneNumber ? this.individualDetails.mobilePhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessPhone = this.individualDetails.businessPhone.phoneNumber ? this.individualDetails.businessPhone :\n { phoneNumber: '', phoneAreaCode: null };\n\n // if (this.amrAppFormData.tempEmail) {\n // this.individualDetails.communicationEmail.email = this.amrAppFormData.tempEmail;\n // }\n if (this.individualDetails.mobilePhone?.phoneNumber || this.individualDetails.businessPhone?.phoneNumber || this.individualDetails.workPhone?.phoneNumber) {\n this.contactPhoneInfoMissing = false;\n } else {\n this.contactPhoneInfoMissing = true;\n }\n this.addressMissing = this.individualDetails.postalAddress == null;\n this.amrAppFormData.appId = this.onlineApplication.id;\n this.amrAppFormData.origNames = this.origNames;\n this.amrAppFormData.individualDetails = this.individualDetails;\n store.dispatch('setAmrAppFormData', this.amrAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.individualDetails?.isCurrentDetailCorrect);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get membershipPeriod(): string {\n if (this.membershipDetails?.effectiveStartDate && this.membershipDetails?.effectiveEndDate) {\n return '1 Jul ' + this.membershipDetails?.effectiveStartDate.slice(0, 4) + ' - ' + '30 Jun ' + this.membershipDetails?.effectiveEndDate.slice(0, 4)\n } else {\n return ''\n }\n }\n\n get nameCheck() {\n const _firstNameCheck = this.individualDetails?.firstName?.trim() == this.amrAppFormData.origNames?.firstName?.trim();\n const _otherNameCheck = this.individualDetails?.otherName?.trim() == this.amrAppFormData.origNames?.otherName?.trim();\n const _surnameCheck = this.individualDetails?.surname?.trim() == this.amrAppFormData.origNames?.surname?.trim();\n return !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private updateCurrentDetails() {\n this.showUpdateDetailsModal = true;\n }\n\n private reloadCurrentDetails() {\n this.apiService.AmRenewApi?.apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet(\n this.onlineApplication.id, false\n ).then(res => {\n this.individualDetails = res.data.data;\n this.individualDetails.isCurrentDetailCorrect = null;\n this.contactPhoneInfoMissing = false;\n this.addressMissing = false;\n\n this.individualDetails.workPhone = this.individualDetails.workPhone.phoneNumber ? this.individualDetails.workPhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessFax = this.individualDetails.businessFax.phoneNumber ? this.individualDetails.businessFax :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.mobilePhone = this.individualDetails.mobilePhone.phoneNumber ? this.individualDetails.mobilePhone :\n { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.businessPhone = this.individualDetails.businessPhone.phoneNumber ? this.individualDetails.businessPhone :\n { phoneNumber: '', phoneAreaCode: null };\n\n this.amrAppFormData.individualDetails = this.individualDetails;\n })\n .catch(err => {\n this.ai.trackException('Error, Unable to reload user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload user details');\n });\n }\n\n}\n\n","import { render } from \"./amr-membership-details.html?vue&type=template&id=32efb954&scoped=true&ts=true\"\nimport script from \"./amr-membership-details.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-membership-details.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-membership-details.scss?vue&type=style&index=0&id=32efb954&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-32efb954\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5b639590\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-preferences\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Preferences\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Email Preferences \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select one or more email preferences:\", -1))\nconst _hoisted_8 = { class: \"checkboxes\" }\nconst _hoisted_9 = { class: \"row\" }\nconst _hoisted_10 = { class: \"col-12\" }\nconst _hoisted_11 = { class: \"checkbox-button\" }\nconst _hoisted_12 = [\"onUpdate:modelValue\"]\nconst _hoisted_13 = { class: \"checkbox-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_15 = { class: \"checkbox-text\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4 mb-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Communications from chosen Committees will be sent to your chosen email for communications address.\")\n], -1))\nconst _hoisted_17 = { class: \"right-side\" }\nconst _hoisted_18 = { class: \"box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Areas of Interest \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select the areas of law you are interested in:\", -1))\nconst _hoisted_21 = { class: \"checkboxes\" }\nconst _hoisted_22 = { class: \"row\" }\nconst _hoisted_23 = { class: \"col-12\" }\nconst _hoisted_24 = { class: \"checkbox-button\" }\nconst _hoisted_25 = [\"onUpdate:modelValue\"]\nconst _hoisted_26 = { class: \"checkbox-elmt\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_28 = { class: \"checkbox-text\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note: This information will be used to help improve the relevant email and web content.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sortedPreferences, (e) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((e.isSelected) = $event)\n }, null, 8, _hoisted_12), [\n [_vModelCheckbox, e.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(e.emailPreference.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(this.amrAppFormData.preferenceDetail?.recordAreaOfInterests, (a) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"label\", _hoisted_24, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((a.isSelected) = $event)\n }, null, 8, _hoisted_25), [\n [_vModelCheckbox, a.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"span\", _hoisted_28, _toDisplayString(a.areaOfInterest.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_29\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\n// import { AuthorizedUser } from \"@/shared/models/authorized-user\";\n// import Popover from \"@/shared/components/popover/index.vue\";\n// import { PopoverView } from \"@/shared/components/popover/popover\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n amrAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n // Popover\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmrPreferences extends Vue {\n private amrAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private emailPreferencesList: any[] = [];\n private areaOfInterestsList: any[] = [];\n\n private errorLoadingDataSet = false;\n\n private option_SAR = null;\n\n private recordAreaOfInterests: any[] = [];\n private recordEmailPreferences: any[] = [];\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted(): void {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.getCheckBoxesList();\n this.canGoNextCheck();\n }\n\n private async getCheckBoxesList() {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n this.apiService.AmRenewApi?.apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet(this.onlineApplication.id)\n .then(res => {\n this.loadingDataSet = false;\n this.amrAppFormData.preferenceDetail = res.data.data;\n })\n .catch(err => {\n this.errorLoadingDataSet = true;\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents, ' + err);\n })\n }\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n // const resp: any = await Promise.all([]);\n store.dispatch('setAmrAppFormData', this.amrAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private initSync(): void {\n console.log('InitSync');\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n console.log('syncData');\n }\n } catch (err) {\n console.log(err);\n }\n this.canGoNextCheck();\n }\n\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get sortedPreferences() {\n return orderBy(this.amrAppFormData.preferenceDetail?.recordEmailPreferences, ['emailPreference.sortOrder'], 'asc');\n }\n\n get amRenewApplicationId() {\n return this.amrAppFormData.individualDetails?.amRenewApplicationId;\n }\n \n\n}\n\n","import { render } from \"./amr-preferences.html?vue&type=template&id=5b639590&scoped=true&ts=true\"\nimport script from \"./amr-preferences.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-preferences.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-preferences.scss?vue&type=style&index=0&id=5b639590&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b639590\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5a88c310\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-declarations\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"col-12 declarations mt-4\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createTextVNode(\" By clicking “Next” I declare that: \"),\n _hoisted_4\n ]))\n ]))\n}","import { Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { AmRenewRecordDeclarationRequest, Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport DatePicker from 'vue-datepicker-next';\n\n@Options({\n props: {\n amrAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n DatePicker\n // Popover\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class AmrDeclarations extends Vue {\n private amrAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n private loadingDataSet = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.amrAppFormData.amrDeclarations = {};\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.updateAmrDeclaration();\n }\n\n get amrApp(): Application {\n return store.getters.getAppRenew;\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private updateAmrDeclaration() {\n const _amrDeclaration: AmRenewRecordDeclarationRequest = {\n id: 0,\n amRenewApplicationId: this.amrAppFormData.individualDetails?.amRenewApplicationId,\n }\n this.amrAppFormData.amrDeclarations = _amrDeclaration;\n this.canGoNextCheck();\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n","import { render } from \"./amr-declarations.html?vue&type=template&id=5a88c310&scoped=true&ts=true\"\nimport script from \"./amr-declarations.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-declarations.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-declarations.scss?vue&type=style&index=0&id=5a88c310&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5a88c310\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4dc2065e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-payment-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Payment Details\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"calculate-payment\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Calculate Payment\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = { class: \"payment-table\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"thead\", null, [\n /*#__PURE__*/_createElementVNode(\"tr\", null, [\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Description\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Fee (ex.GST)\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"GST\"),\n /*#__PURE__*/_createElementVNode(\"th\", { scope: \"col\" }, \"Total Price (inc.GST)\")\n ])\n], -1))\nconst _hoisted_8 = [\"data-label\"]\nconst _hoisted_9 = { class: \"hide-in-mobile mr-1\" }\nconst _hoisted_10 = {\n \"data-label\": \"Fee (ex.GST)\",\n class: \"currency\"\n}\nconst _hoisted_11 = {\n \"data-label\": \"GST\",\n class: \"currency\"\n}\nconst _hoisted_12 = {\n \"data-label\": \"Amount (inc.GST)\",\n class: \"currency\"\n}\nconst _hoisted_13 = { class: \"total\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"td\", {\n class: \"total bold\",\n \"data-label\": \"Description\",\n colspan: \"3\"\n}, \"TOTAL PAYABLE\", -1))\nconst _hoisted_15 = {\n \"data-label\": \"Total Payable\",\n class: \"total-amount bold\"\n}\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _hoisted_4,\n _hoisted_5,\n _createElementVNode(\"table\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"tbody\", null, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.lineItems, (lineItem) => {\n return (_openBlock(), _createElementBlock(\"tr\", null, [\n _createElementVNode(\"td\", {\n \"data-label\": lineItem.name,\n class: \"desc\"\n }, [\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(lineItem.name), 1),\n _createTextVNode(\"  \")\n ], 8, _hoisted_8),\n _createElementVNode(\"td\", _hoisted_10, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).amountGstExcluded)), 1),\n _createElementVNode(\"td\", _hoisted_11, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).gst)), 1),\n _createElementVNode(\"td\", _hoisted_12, _toDisplayString(_ctx.toCurrency(_ctx.getPayableItem(lineItem.name).total)), 1)\n ]))\n }), 256)),\n _createElementVNode(\"tr\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"td\", _hoisted_15, _toDisplayString(_ctx.toCurrency(_ctx.getTotal)), 1)\n ])\n ])\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue } from \"vue-property-decorator\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n amrAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n LoadingIndicator\n },\n mixins: [FormatDateTimeMixin]\n})\nexport default class AmrPaymentDetails extends Vue {\n\n private amrAppFormData!: any;\n private isSectionLoading!: boolean;\n private ai = new AppInsights;\n private loadingDataSet = true;\n private lineItems: any[] = [];\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n\n mounted(): void {\n this.canGoNextCheck();\n this.getPaymentDetails();\n }\n\n private async getPaymentDetails(): Promise {\n try {\n this.loadingDataSet = true;\n const resp: any = await this.apiService.AmRenewApi?.apiV1AmRenewGetPaymentDetailsApplicationIdGet(this.onlineApplication.id);\n this.amrAppFormData.paymentDetails = resp.data.data;\n this.lineItems = orderBy(this.amrAppFormData.paymentDetails.lineItems, ['order'], ['asc']);\n this.canGoNextCheck();\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get payment details: ' + err);\n this.ai.trackException('Error, Unable to get payment details: ' + err);\n } finally {\n this.loadingDataSet = false;\n }\n this.loadingDataSet = false;\n }\n\n\n private toCurrency(value: any) {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n private getPayableItem(itemName: string): any {\n try {\n const _rtn = this.amrAppFormData.paymentDetails.lineItems.filter(\n (x: any) => x.name.toLocaleLowerCase() == itemName.toLocaleLowerCase()\n );\n\n if (_rtn.length > 0) {\n return _rtn[0];\n } else {\n throw new Error('Invalid Item');\n }\n\n } catch {\n return {\n name: itemName,\n amountGstExcluded: 0,\n gst: 0,\n total: 0,\n lsAmountGstExcluded: 0,\n lsFeeName: '',\n lsGst: 0,\n lsTotal: 0\n }\n }\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', true);\n }\n\n get itemMembershipName(): string {\n return 'ASSOCIATE MEMBERSHIP ' + this.onlineApplication.applicationYearName;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get getTotal(): number {\n const items = this.amrAppFormData.paymentDetails.lineItems;\n let _total = 0;\n for (let i = 0; i < items.length; i++) {\n _total += this.getPayableItem(items[i].name).total;\n }\n return _total;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n}\n\n","import { render } from \"./amr-payment-details.html?vue&type=template&id=4dc2065e&scoped=true&ts=true\"\nimport script from \"./amr-payment-details.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-payment-details.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-payment-details.scss?vue&type=style&index=0&id=4dc2065e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4dc2065e\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-5238ac00\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"amr-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class AmrConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('amrAppFormData');\n store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./amr-confirmation.html?vue&type=template&id=5238ac00&scoped=true&ts=true\"\nimport script from \"./amr-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-confirmation.scss?vue&type=style&index=0&id=5238ac00&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5238ac00\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport SwipeStepper from \"@/shared/components/swipe-stepper/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { PaymentTransaction } from \"@/shared/models/payment-transaction\";\nimport { PAYMENTAPP_URL } from \"@/shared/config/config\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport PaymentPopup from \"../../payment-popup/index.vue\";\nimport { Application, PageContent } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport AmrMembershipDetails from \"../amr-membership-details/index.vue\";\nimport AmrPreferences from \"../amr-preferences/index.vue\";\nimport AmrDeclarations from \"../amr-declarations/index.vue\";\nimport AmrPaymentDetails from \"../amr-payment-details/index.vue\";\nimport AmrConfirmation from \"../amr-confirmation/index.vue\";\n\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n AmrMembershipDetails,\n AmrPreferences,\n AmrDeclarations,\n AmrPaymentDetails,\n AmrConfirmation,\n PaymentPopup,\n ConfirmDialogue,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n // console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n }\n})\nexport default class AmrApplication extends Vue {\n private ai = new AppInsights;\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getAmrAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private helpContent: PageContent = {};\n\n private navSteps = [\n new NavStep(Step.membershipDetails, Section.membershipDetails),\n new NavStep(Step.preferences, Section.preferences),\n new NavStep(Step.declarations, Section.declarations),\n new NavStep(Step.payment, Section.payment),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private amrAppFormData: any = {};\n private showPaymentPopup = false;\n private paymentTransaction: PaymentTransaction = new PaymentTransaction;\n private disablePaymentPopupCloseBut = false;\n private validPaymentPage = false;\n\n private sessionId = new Date().getTime() + '';\n private paymentAppName = 'amr-payment';\n\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private checkingConcurrency = false;\n private ping: any;\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n\n if (!_onlineApp.id) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Invalid Page entry, please choose an option from Portal home');\n this.$router.push({ name: RouteN.Mars.Home.n });\n } else {\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n window.addEventListener('message', this.receivedNotification);\n\n this.checkingConcurrency = true;\n this.checkAmrConcurrentUsage(this.onlineApplication);\n this.loadPageContents();\n }\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n window.removeEventListener('message', this.receivedNotification);\n clearInterval(this.ping);\n }\n\n private receivedNotification(event: any): void {\n\n const action = event?.data?.action;\n const validOrigin = event?.origin == PAYMENTAPP_URL;\n const validSessionId = event?.data?.sessionId == this.sessionId;\n const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n // console.log('Received Notifications -- MARSApp');\n // console.log(action);\n // console.log(event?.origin, PAYMENTAPP_URL);\n // console.log(event?.data?.sessionId, this.sessionId);\n // console.log(event?.data?.paymentAppName, this.paymentAppName);\n // console.log('failed verification', !validOrigin , !validSessionId , !validPaymentApp);\n if (!validOrigin || !validSessionId || !validPaymentApp) {\n return;\n }\n\n this.processNotification(action, event?.data?.data);\n }\n\n private processNotification(request: string, dataO: any = null): void {\n switch (request) {\n case 'cancel-payment':\n this.eventCtrl.emit('cancel-amr-application-payment');\n break;\n case 'payment-processed':\n this.paymentConfirmed();\n break;\n case 'parent-close-state':\n this.disablePaymentPopupCloseBut = dataO.disabled;\n break;\n case 'close-payment-form':\n this.showPaymentPopup = false;\n this.validPaymentPage = false;\n this.disablePaymentPopupCloseBut = false;\n break;\n case 'payment-form-isReady':\n this.validPaymentPage = true;\n break;\n }\n }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n this.nextButtonText = 'Next';\n }\n\n switch (_section) {\n case Section.membershipDetails:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.backButtonText = 'Cancel application';\n this.nextButtonText = 'Next';\n break;\n case Section.preferences:\n this.setSteps(1);\n this.backButtonText = 'Back';\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.declarations:\n this.setSteps(2);\n this.backButtonText = 'Back';\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.payment:\n this.setSteps(3);\n this.backButtonText = 'Back';\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(4);\n this.backButtonVisible = false;\n this.nextButtonText = 'Close';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done\n }\n this.navSteps[n].status = NavStepStatusID.Current\n // the confirmation page\n if (n === 4) {\n for (let i = 0; i < 4; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 9);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 26);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 27);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 28);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4:\n this.helpContent = this.$getPopover('Help', 29);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n switch (_section) {\n case Section.membershipDetails:\n this.eventCtrl.emit('cancel-amr-application');\n break;\n case Section.preferences:\n this.navigate(this.navSteps[0]);\n break;\n case Section.declarations:\n this.navigate(this.navSteps[1]);\n break;\n case Section.payment:\n this.navigate(this.navSteps[2]);\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setAmrAppFormData', this.amrAppFormData);\n const _section = this.$route.query.sec as string;\n\n switch (_section) {\n case Section.membershipDetails:\n this.saveAmRenewPersonalDetailsData();\n // this.navigate(this.navSteps[1]);\n break;\n case Section.preferences:\n this.saveAmRenewPreferenceDetailData();\n // this.navigate(this.navSteps[2]);\n break;\n case Section.declarations:\n this.saveAmRenewDeclarationsData();\n // this.navigate(this.navSteps[3]);\n break;\n case Section.payment:\n this.saveAmrPaymentDetails();\n // this.navigate(this.navSteps[4]);\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n\n }\n\n private async saveAmRenewPersonalDetailsData() {\n this.isSaving = true;\n await this.apiService.AmRenewApi?.apiV1AmRenewUpdatePersonalDetailPost(this.amrAppFormData.individualDetails)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User details saved');\n this.navigate(this.navSteps[1]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save user details: ' + err);\n this.ai.trackException('Error, Unable to save user details: ' + err);\n })\n }\n\n private async saveAmRenewPreferenceDetailData() {\n this.isSaving = true;\n await this.apiService.AmRenewApi?.apiV1AmRenewSaveAmRenewPreferenceDetailDataPost(this.amrAppFormData.preferenceDetail)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User preference updated');\n this.navigate(this.navSteps[2]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update user preference: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n })\n }\n\n private async saveAmRenewDeclarationsData() {\n this.isSaving = true;\n await this.apiService.AmRenewApi?.apiV1AmRenewSaveAmRenewRecordDeclarationPost(this.amrAppFormData.amrDeclarations)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User declaration saved');\n this.navigate(this.navSteps[3]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save user declaration: ' + err);\n this.ai.trackException('Error, Unable to save user declaration: ' + err);\n })\n }\n\n private async saveAmrPaymentDetails(): Promise {\n this.isSaving = true;\n try {\n const resp: any = await this.apiService.AmRenewApi?.apiV1AmRenewSavePaymentDetailsPost(this.amrAppFormData.paymentDetails);\n this.paymentTransaction.transactionKey = resp.data.data.transactionKey;\n this.paymentTransaction.secureKey = resp.data.data.secureKey;\n this.eventCtrl.emit('show-snackbar', 'success', 'Payment details saved');\n this.showPaymentPopup = true;\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Payment details: ' + err);\n this.ai.trackException('Error, Unable to save Payment details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private paymentConfirmed(): void {\n this.showPaymentPopup = false;\n this.navigate(this.navSteps[4]);\n }\n\n // private getPopOverKeys(): void {\n // const _keys = [];\n // for (let p = 0; p < this.popoverKeys.length; p++) {\n // if (this.popoverKeys[p + 1]) {\n // const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n // _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n // }\n // }\n // this.popoverKeys = _keys;\n // }\n\n // private getPopover(pKey: string): PopoverView {\n // const _popOver = this.popovers.filter(p => {\n // return p.popoverKey == pKey;\n // })[0];\n // return _popOver;\n // }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n isShow: resp[2].data.data[p].isShow as boolean,\n });\n }\n // this.getPopOverKeys();\n\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private checkAmrConcurrentUsage(app: Application) {\n this.apiService.AmRenewApi?.apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet(app.id, true)\n .then(res => {\n const _amrAppFormData = {\n id: app.id,\n origNames: {}\n }\n store.dispatch('setAmrAppFormData', _amrAppFormData);\n this.$router.push({ name: RouteN.Mars.AmrApplication.n, query: { appId: app.id, sec: Section.membershipDetails } });\n })\n .catch(err => {\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n }).finally(() => {\n this.checkingConcurrency = false;\n });\n\n }\n\n private confirmCancelConcurrentApp() {\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm.show({\n title: 'You are already logged in elsewhere',\n message: 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n }).then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart(true);\n }\n else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n })\n }\n\n private clearSessionAndStart(isRenew: boolean) {\n this.isLoadingData = true;\n this.apiService.AmRenewApi?.apiV1AmRenewCancelAmRenewApplicationApplicationIdGet(this.onlineApplication.id)\n .then(() => {\n setTimeout(() => {\n this.isLoadingData = false;\n if (isRenew) {\n const _amrAppFormData = {\n id: this.onlineApplication.id,\n origNames: {}\n }\n store.dispatch('setAmrAppFormData', _amrAppFormData);\n this.$router.push({ name: RouteN.Mars.AmrApplication.n, query: { appId: this.onlineApplication.id, sec: Section.membershipDetails } });\n }\n }, 2000)\n })\n .catch(() => {\n this.isLoadingData = false;\n console.log('Unable to clear session');\n });\n }\n\n get $Section() {\n return Section;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get appId(): number {\n return store.getters.getAppRenew.id;\n }\n\n get currentPageSection(): string {\n return (this.$route.query.sec || '') as string;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n}\n\n","import { render } from \"./amr-application.html?vue&type=template&id=03d8c230&scoped=true&ts=true\"\nimport script from \"./amr-application.ts?vue&type=script&lang=ts\"\nexport * from \"./amr-application.ts?vue&type=script&lang=ts\"\n\nimport \"./amr-application.scss?vue&type=style&index=0&id=03d8c230&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-03d8c230\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-79d86909\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-application\" }\nconst _hoisted_2 = {\n key: 1,\n class: \"container mt-4\"\n}\nconst _hoisted_3 = {\n key: 5,\n class: \"str-application-footer\"\n}\nconst _hoisted_4 = [\"disabled\"]\nconst _hoisted_5 = [\"disabled\"]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-angle-right\" })\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_SwipeStepper = _resolveComponent(\"SwipeStepper\")\n const _component_LoadingSpinner = _resolveComponent(\"LoadingSpinner\")\n const _component_StrEligibility = _resolveComponent(\"StrEligibility\")\n const _component_StrApplicantDetails = _resolveComponent(\"StrApplicantDetails\")\n const _component_StrPreferences = _resolveComponent(\"StrPreferences\")\n const _component_StrDeclaration = _resolveComponent(\"StrDeclaration\")\n const _component_StrConfirmation = _resolveComponent(\"StrConfirmation\")\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_SwipeStepper, {\n navSteps: _ctx.navStepsData,\n showHelpBtn: true,\n showFaqBtn: true\n }, null, 8, [\"navSteps\"]),\n (_ctx.isLoadingData || _ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingSpinner, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n (_ctx.currentSection === _ctx.$Section.eligibility)\n ? (_openBlock(), _createBlock(_component_StrEligibility, {\n key: 0,\n strAppFormData: _ctx.strAppFormData,\n \"onUpdate:strAppFormData\": _cache[0] || (_cache[0] = $event => ((_ctx.strAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[1] || (_cache[1] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"strAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.applicantDetails)\n ? (_openBlock(), _createBlock(_component_StrApplicantDetails, {\n key: 1,\n strAppFormData: _ctx.strAppFormData,\n \"onUpdate:strAppFormData\": _cache[2] || (_cache[2] = $event => ((_ctx.strAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[3] || (_cache[3] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"strAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.preferences)\n ? (_openBlock(), _createBlock(_component_StrPreferences, {\n key: 2,\n strAppFormData: _ctx.strAppFormData,\n \"onUpdate:strAppFormData\": _cache[4] || (_cache[4] = $event => ((_ctx.strAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[5] || (_cache[5] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"strAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.declaration)\n ? (_openBlock(), _createBlock(_component_StrDeclaration, {\n key: 3,\n strAppFormData: _ctx.strAppFormData,\n \"onUpdate:strAppFormData\": _cache[6] || (_cache[6] = $event => ((_ctx.strAppFormData) = $event)),\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[7] || (_cache[7] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"strAppFormData\", \"isSectionLoading\"]))\n : (_ctx.currentSection === _ctx.$Section.confirmation)\n ? (_openBlock(), _createBlock(_component_StrConfirmation, {\n key: 4,\n isSectionLoading: _ctx.isSectionLoading,\n \"onUpdate:isSectionLoading\": _cache[8] || (_cache[8] = $event => ((_ctx.isSectionLoading) = $event))\n }, null, 8, [\"isSectionLoading\"]))\n : _createCommentVNode(\"\", true),\n (!_ctx.isSectionLoading)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_ctx.isSaving)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"Saving... \",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n (_ctx.backButtonVisible)\n ? (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n class: \"btn btn-outline mr-2\",\n disabled: _ctx.isSaving,\n onClick: _cache[9] || (_cache[9] = $event => (_ctx.goBack()))\n }, _toDisplayString(_ctx.backButtonText), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n disabled: !_ctx.canGoNext || _ctx.isSaving,\n onClick: _cache[10] || (_cache[10] = $event => (_ctx.goNext()))\n }, [\n _createTextVNode(_toDisplayString(_ctx.nextButtonText), 1),\n _hoisted_6\n ], 8, _hoisted_5)\n ]))\n : _createCommentVNode(\"\", true)\n ])),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmCancelCurrentDialogue\",\n modalOpened: false\n }, null, 512)\n ]))\n}","import { createElementVNode as _createElementVNode, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-792bce3a\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-eligibility mt-4\" }\nconst _hoisted_2 = { class: \"content mt-4\" }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", { class: \"mt-4 mb-4\" }, \"Eligibility\", -1))\nconst _hoisted_4 = { class: \"col-12 declare-option\" }\nconst _hoisted_5 = { class: \"checkbox-button\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"checkbox-elmt\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkbox-text\" }, \" I am studying law, or have successfully completed a course in law at any university, college or institution in Australia recognised for admission as a lawyer in Australia and intend to practise as a legal practitioner. \")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have been admitted to practise law in a State or Territory of Australia but do not hold a current practising certificate issued by The Law Society of New South Wales\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have been admitted to practise law in a foreign jurisdiction\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"are employed in a management role in a law office and the principal(s) are Solicitor Members of The Law Society of New South Wales\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, \"have a legal qualification recognised for the purpose of admission as a lawyer in Australia and you do not fit into any of the other above categories\")\n], -1))\nconst _hoisted_9 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"USING THIS ONLINE FORM\", -1))\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Next\", -1))\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"strong\", null, \"Back\", -1))\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-question-circle\",\n style: {\"font-size\":\"20px\"}\n}, null, -1))\nconst _hoisted_17 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createElementVNode(\"h3\", null, \"Overview\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_HelpScreen = _resolveComponent(\"HelpScreen\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", null, [\n _hoisted_3,\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"label\", _hoisted_5, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.isStudying) = $event)),\n onChange: _cache[1] || (_cache[1] = $event => (_ctx.syncData()))\n }, null, 544), [\n [_vModelCheckbox, _ctx.isStudying]\n ]),\n _hoisted_6\n ])\n ]),\n _hoisted_7,\n _createElementVNode(\"div\", null, [\n _createTextVNode(\"Please do not complete this form (instead complete the \"),\n _createElementVNode(\"span\", {\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.exitApplication())),\n class: \"link\"\n }, \"Associate Membership Application\"),\n _createTextVNode(\") if you:\")\n ]),\n _hoisted_8,\n _hoisted_9,\n _hoisted_10,\n _hoisted_11,\n _createTextVNode(\" and \"),\n _hoisted_12,\n _createTextVNode(\" will move you through each page in the form.\"),\n _hoisted_13,\n _createTextVNode(\"Selecting the Cancel Application button will NOT save any details you have entered.\"),\n _hoisted_14,\n _createTextVNode(\"All questions are mandatory except where indicated otherwise.\"),\n _hoisted_15,\n _createTextVNode(\"For desktop users, place your cursor on the \"),\n _hoisted_16,\n _createTextVNode(\" symbol and for mobile users, you can tap on the symbol to see further information about the question.\"),\n _hoisted_17,\n _hoisted_18\n ])\n ]),\n (_ctx.showHelpScreen)\n ? (_openBlock(), _createBlock(_component_HelpScreen, {\n key: 0,\n onClose: _cache[3] || (_cache[3] = $event => (_ctx.showHelpScreen = false))\n }, {\n header: _withCtx(() => [\n _hoisted_19\n ]),\n body: _withCtx(() => []),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport UserDefine from '@/assets/config/user-define.json';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport HelpScreen from \"@/shared/components/help-screen/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\n\n@Options({\n props: {\n strAppFormData: Object,\n isSectionLoading: Boolean,\n },\n components: {\n Popover,\n HelpScreen,\n LoadingIndicator,\n },\n mixins: [\n [FormatDateTimeMixin],\n ]\n})\nexport default class StrEligibility extends Vue {\n private ai = new AppInsights;\n\n private strAppFormData!: any;\n private isSectionLoading!: boolean;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private showHelpScreen = false;\n private isRenew = null;\n\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private studentRecord: any = {};\n private isStudying = false;\n\n\n \n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.preloadData();\n }\n\n\n private async preloadData(): Promise {\n try {\n this.loadingDataSet = true;\n await Promise.all([\n this.getStudentApplication()\n ]);\n store.dispatch('setStrAppFormData', this.strAppFormData);\n } catch (err) {\n console.log(err);\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private async getStudentApplication(): Promise {\n try {\n const _isRenewing = !!this.strAppFormData.studentRecord;\n const resp: any = await this.apiService.StudentRenewApi?.apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet(\n this.onlineApplication.id, !_isRenewing\n );\n this.studentRecord = resp.data.data;\n this.strAppFormData['studentRecord'] = this.studentRecord;\n this.initSync();\n this.canGoNextCheck();\n return Promise.resolve(true);\n } catch (err: any) {\n if (err.response?.data && err.response.data?.errorCode == 10001) {\n this.eventCtrl.emit('show-snackbar', 'info', 'Concurrent application detected');\n } else {\n this.ai.trackException('Error, Unable to get user details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to get user details, redirect to Portal home');\n }\n // this.$router.push({ name: RouteN.Mars.Home.n });\n return Promise.reject(false);\n }\n }\n\n private initSync(): void {\n this.isStudying = this.studentRecord.eligibilityFlag1;\n }\n\n private syncData(): void {\n try {\n if (!this.loadingDataSet) {\n this.studentRecord.eligibilityFlag1 = this.isStudying;\n }\n } catch (err) {\n console.log(err);\n }\n this.canGoNextCheck();\n }\n\n private isValidateForm(): boolean {\n return !!this.isStudying;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidateForm());\n }\n\n private exitApplication(): void {\n this.eventCtrl.emit('cancel-str-fromlink');\n }\n\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n}","import { render } from \"./str-eligibility.html?vue&type=template&id=792bce3a&scoped=true&ts=true\"\nimport script from \"./str-eligibility.ts?vue&type=script&lang=ts\"\nexport * from \"./str-eligibility.ts?vue&type=script&lang=ts\"\n\nimport \"./str-eligibility.scss?vue&type=style&index=0&id=792bce3a&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-792bce3a\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, createTextVNode as _createTextVNode, createVNode as _createVNode, vModelRadio as _vModelRadio, withDirectives as _withDirectives, vModelCheckbox as _vModelCheckbox, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1f3f9292\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-applicant-details\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Applicant Details\", -1))\nconst _hoisted_3 = { class: \"row main-content\" }\nconst _hoisted_4 = { class: \"col-12\" }\nconst _hoisted_5 = {\n class: \"col-6 pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Applicant Details\")\n], -1))\nconst _hoisted_7 = { class: \"mb-2\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"LawID\", -1))\nconst _hoisted_9 = { class: \"mb-3\" }\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Full Name\", -1))\nconst _hoisted_11 = { class: \"mb-3\" }\nconst _hoisted_12 = {\n key: 0,\n class: \"mb-2\"\n}\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Name Change\", -1))\nconst _hoisted_14 = { class: \"mb-3\" }\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Personal Mobile\", -1))\nconst _hoisted_16 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_17 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Email for Communication\", -1))\nconst _hoisted_19 = { style: {\"display\":\"flex\",\"justify-content\":\"space-between\"} }\nconst _hoisted_20 = { class: \"mb-3 mr-2\" }\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Date of Birth\", -1))\nconst _hoisted_22 = {\n key: 0,\n class: \"mb-3\"\n}\nconst _hoisted_23 = {\n key: 1,\n class: \"mb-3\"\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Postcode\", -1))\nconst _hoisted_25 = { class: \"mb-3\" }\nconst _hoisted_26 = {\n class: \"col-6 right-side pl-3 pr-2\",\n style: {\"min-width\":\"300px\"}\n}\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"col-12 center\" }, [\n /*#__PURE__*/_createElementVNode(\"h4\", null, \"Student Details\")\n], -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Institution\", -1))\nconst _hoisted_29 = { class: \"mb-3\" }\nconst _hoisted_30 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Name of Law Course\", -1))\nconst _hoisted_31 = { class: \"mb-3\" }\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Student Number\", -1))\nconst _hoisted_33 = { class: \"mb-3\" }\nconst _hoisted_34 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Student Email\", -1))\nconst _hoisted_35 = { class: \"mb-3\" }\nconst _hoisted_36 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"Proof of Enrolment\", -1))\nconst _hoisted_37 = { class: \"mb-3\" }\nconst _hoisted_38 = { class: \"col-12 radios\" }\nconst _hoisted_39 = {\n key: 0,\n class: \"ml-3\"\n}\nconst _hoisted_40 = {\n key: 1,\n class: \"radio-button-group\"\n}\nconst _hoisted_41 = { class: \"col-2 ml-0 mr-4\" }\nconst _hoisted_42 = { class: \"radio-button col-3\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"Yes\")\n], -1))\nconst _hoisted_44 = { class: \"col-2 ml-0\" }\nconst _hoisted_45 = { class: \"radio-button\" }\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"radio-button-elmt\",\n style: {\"border\":\"none\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-checkmark\" })\n ]),\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"radio-text\" }, \"No\")\n], -1))\nconst _hoisted_47 = { class: \"col-12 right\" }\nconst _hoisted_48 = [\"disabled\"]\nconst _hoisted_49 = { class: \"application-year-option mt-3\" }\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h5\", null, \"I am applying for:\", -1))\nconst _hoisted_51 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_52 = [\"onUpdate:modelValue\", \"disabled\"]\nconst _hoisted_53 = {\n class: \"checkbox-elmt\",\n style: {\"border\":\"none\"}\n}\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_55 = { class: \"checkbox-text\" }\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_57 = { style: {\"font-weight\":\"normal\"} }\nconst _hoisted_58 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { style: {\"display\":\"flex\",\"align-items\":\"center\"} }, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle ml-2 mr-2\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2 mr-2\" }, \" The Current Student Membership year runs from 1st July to 30th June. Applications made between January – June will include two years of membership by default. You have the option to apply for the current year only, but your membership will expire on 30th June this year. \")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_StrApplicantDetailsUpdateModal = _resolveComponent(\"StrApplicantDetailsUpdateModal\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _hoisted_8,\n _createElementVNode(\"div\", _hoisted_9, _toDisplayString(_ctx.individualDetails?.lawId ?? 'No record'), 1)\n ]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingSurname ? 'field-error' : ''])\n }, [\n _hoisted_10,\n _createElementVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.individualDetails.title?.name) + \" \" + _toDisplayString(_ctx.individualDetails.firstName) + \" \" + _toDisplayString(_ctx.individualDetails.otherName) + \" \" + _toDisplayString(_ctx.individualDetails.surname), 1)\n ], 2),\n (_ctx.hasNameChanged && _ctx.individualDetails?.nameChangeFiles?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _hoisted_13,\n _createElementVNode(\"div\", _hoisted_14, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.individualDetails.nameChangeFiles, (nameChanged) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createTextVNode(_toDisplayString(nameChanged.originalFileName ?? ' '), 1)\n ], 64))\n }), 256))\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingMobilePhone ? 'field-error' : ''])\n }, [\n _hoisted_15,\n (!_ctx.individualDetails.mobilePhone)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_16, \"No record\"))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_17, _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneAreaCode) + \" \" + _toDisplayString(_ctx.individualDetails.mobilePhone?.phoneNumber), 1))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingEmail ? 'field-error' : ''])\n }, [\n _hoisted_18,\n _createElementVNode(\"div\", _hoisted_19, [\n _createElementVNode(\"div\", _hoisted_20, _toDisplayString(_ctx.individualDetails.communicationEmail?.email ?? 'No record'), 1),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail', 14)\n }, null, 8, [\"popover\"])\n ])\n ])\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingDOB ? 'field-error' : ''])\n }, [\n _hoisted_21,\n (_ctx.individualDetails.birthDate)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_22, _toDisplayString(_ctx.$formatDate(_ctx.individualDetails.birthDate)), 1))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_23, \"No record\"))\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingPostcode ? 'field-error' : ''])\n }, [\n _hoisted_24,\n _createElementVNode(\"div\", _hoisted_25, _toDisplayString(_ctx.individualDetails?.postalAddress?.postcode ?? 'No record'), 1)\n ], 2)\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingInstitution ? 'field-error' : ''])\n }, [\n _hoisted_28,\n _createElementVNode(\"div\", _hoisted_29, _toDisplayString(_ctx.individualDetails?.qualificationInstitution?.name ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingLawDegree ? 'field-error' : ''])\n }, [\n _hoisted_30,\n _createElementVNode(\"div\", _hoisted_31, _toDisplayString(_ctx.individualDetails?.lawDegree ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingStudentNumber ? 'field-error' : ''])\n }, [\n _hoisted_32,\n _createElementVNode(\"div\", _hoisted_33, _toDisplayString(_ctx.individualDetails?.studentNumber ?? 'No record'), 1)\n ], 2),\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"mb-2\", _ctx.missingStudentEmail ? 'field-error' : ''])\n }, [\n _hoisted_34,\n _createElementVNode(\"div\", _hoisted_35, _toDisplayString(_ctx.individualDetails?.studentEmail?.trim() ? _ctx.individualDetails.studentEmail : 'No record'), 1)\n ], 2),\n ((!_ctx.individualDetails?.studentEmail || !_ctx.individualDetails?.studentEmail.endsWith('edu.au')) && _ctx.individualDetails?.studentProofDocumentFiles?.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"mb-2\", _ctx.missingProofOfEnrolment ? 'field-error' : ''])\n }, [\n _hoisted_36,\n _createElementVNode(\"div\", _hoisted_37, [\n (_ctx.individualDetails?.studentProofDocumentFiles?.length > 0)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.individualDetails.studentProofDocumentFiles, (proof) => {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createTextVNode(_toDisplayString(proof.originalFileName ?? ' '), 1)\n ], 64))\n }), 256))\n : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [\n _createTextVNode(\" No record \")\n ], 64))\n ])\n ], 2))\n : _createCommentVNode(\"\", true)\n ]),\n _createElementVNode(\"div\", _hoisted_38, [\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_39, \"Are these details correct?\"))\n : _createCommentVNode(\"\", true),\n (_ctx.isValidForm)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_40, [\n _createElementVNode(\"span\", _hoisted_41, [\n _createElementVNode(\"label\", _hoisted_42, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"radio\",\n id: \"radio_no1\",\n value: true,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_43\n ])\n ]),\n _createElementVNode(\"span\", _hoisted_44, [\n _createElementVNode(\"label\", _hoisted_45, [\n _withDirectives(_createElementVNode(\"input\", {\n class: \"radio\",\n type: \"radio\",\n id: \"radio_no2\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.individualDetails.isCurrentDetailCorrect) = $event)),\n value: false,\n name: \"question1\"\n }, null, 512), [\n [_vModelRadio, _ctx.individualDetails.isCurrentDetailCorrect]\n ]),\n _hoisted_46\n ])\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_47, [\n _createElementVNode(\"button\", {\n class: \"btn btn-secondary mr-0\",\n disabled: _ctx.isValidForm && _ctx.individualDetails.isCurrentDetailCorrect !== false,\n onClick: _cache[2] || (_cache[2] = $event => (_ctx.updateCurrentDetails()))\n }, \"Update current details\", 8, _hoisted_48)\n ])\n ])\n ])\n ]),\n (_ctx.individualDetails.studentNewRecordApplicationYears?.length > 1)\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"div\", _hoisted_49, [\n _hoisted_50,\n _hoisted_51,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.individualDetails.studentNewRecordApplicationYears, (c, idx) => {\n return (_openBlock(), _createElementBlock(\"label\", {\n class: _normalizeClass([\"checkbox-button\", c.readOnly ? 'disabled' : ''])\n }, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((c.isSelected) = $event),\n disabled: c.readOnly\n }, null, 8, _hoisted_52), [\n [_vModelCheckbox, c.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_53, [\n _hoisted_54,\n _createElementVNode(\"span\", _hoisted_55, [\n _createTextVNode(\"Associate Membership \" + _toDisplayString(c.applicationYear.name) + \" \", 1),\n _hoisted_56,\n _createTextVNode(\"Amount: \" + _toDisplayString(_ctx.toCurrency(c.total)) + \" \", 1),\n _createElementVNode(\"i\", _hoisted_57, \"(\" + _toDisplayString(c.totalGst > 0 ? 'incl.' : 'ex.') + \" GST)\", 1)\n ])\n ]),\n _hoisted_58\n ], 2))\n }), 256))\n ]),\n _hoisted_59\n ], 64))\n : _createCommentVNode(\"\", true)\n ], 64)),\n (_ctx.showUpdateDetailsModal)\n ? (_openBlock(), _createBlock(_component_StrApplicantDetailsUpdateModal, {\n key: 2,\n currentDetails: _ctx.individualDetails,\n \"onUpdate:currentDetails\": _cache[3] || (_cache[3] = $event => ((_ctx.individualDetails) = $event)),\n origNames: _ctx.origNames,\n \"onUpdate:origNames\": _cache[4] || (_cache[4] = $event => ((_ctx.origNames) = $event)),\n disallowUpdate: _ctx.disallowUpdate,\n \"onUpdate:disallowUpdate\": _cache[5] || (_cache[5] = $event => ((_ctx.disallowUpdate) = $event)),\n onClose: _cache[6] || (_cache[6] = $event => {_ctx.individualDetails.isCurrentDetailCorrect = null; _ctx.reloadCurrentDetails(); _ctx.showUpdateDetailsModal = false}),\n onReloadCurrentDetails: _cache[7] || (_cache[7] = $event => (_ctx.reloadCurrentDetails()))\n }, null, 8, [\"currentDetails\", \"origNames\", \"disallowUpdate\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, vModelSelect as _vModelSelect, withDirectives as _withDirectives, vModelText as _vModelText, normalizeClass as _normalizeClass, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-375f8acd\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-applicant-details-update-modal\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Update Current Details\", -1))\nconst _hoisted_3 = { class: \"modal-body\" }\nconst _hoisted_4 = { key: 1 }\nconst _hoisted_5 = { class: \"dropdown-menu\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, [\n /*#__PURE__*/_createTextVNode(\"Title \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = { class: \"dropdown-menu-wrap\" }\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"option\", { value: null }, null, -1))\nconst _hoisted_9 = [\"value\"]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_11 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_12 = { class: \"input-box\" }\nconst _hoisted_13 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"First name\", -1))\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Surname\", -1))\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_17 = { key: 0 }\nconst _hoisted_18 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_20 = { class: \"file-list mb-2\" }\nconst _hoisted_21 = { class: \"file-name\" }\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_23 = [\"onClick\"]\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_25 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Date of birth\", -1))\nconst _hoisted_26 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_28 = {\n key: 0,\n class: \"disableNote mt-2\",\n style: {\"display\":\"flex\",\"justify-content\":\"flex-start\"}\n}\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle mr-2\",\n style: {\"margin\":\"auto 0\",\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n}, null, -1))\nconst _hoisted_30 = [\"innerHTML\"]\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_33 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_34 = { class: \"flex-row\" }\nconst _hoisted_35 = { style: {\"margin\":\"0 !important\",\"padding\":\"0 !important\"} }\nconst _hoisted_36 = { class: \"ml-2\" }\nconst _hoisted_37 = { class: \"flex-row\" }\nconst _hoisted_38 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Personal mobile\", -1))\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_40 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_41 = { class: \"field_name\" }\nconst _hoisted_42 = { class: \"validation-msg\" }\nconst _hoisted_43 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_44 = { key: 0 }\nconst _hoisted_45 = { key: 1 }\nconst _hoisted_46 = { key: 2 }\nconst _hoisted_47 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n style: {\"display\":\"flex\"},\n class: \"col-12 mt-2 mb-3\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fa fa-info-circle\",\n style: {\"font-size\":\"20px\",\"color\":\"var(--ls-slate)\"}\n }),\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"ml-2\" }, \"Please note this email address is also used as your LawID username.\")\n], -1))\nconst _hoisted_48 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"hr\", null, null, -1))\nconst _hoisted_49 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Student Details\", -1))\nconst _hoisted_50 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of institution\", -1))\nconst _hoisted_51 = {\n key: 0,\n class: \"validation-msg\"\n}\nconst _hoisted_52 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_53 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_54 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Name of law course\", -1))\nconst _hoisted_55 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_56 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_57 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Student number\", -1))\nconst _hoisted_58 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"validation-msg\" }, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }),\n /*#__PURE__*/_createTextVNode(\"Required field. \")\n], -1))\nconst _hoisted_59 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_60 = { class: \"field_name\" }\nconst _hoisted_61 = { class: \"validation-msg\" }\nconst _hoisted_62 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"far fa-exclamation-circle fa-lg\" }, null, -1))\nconst _hoisted_63 = { key: 0 }\nconst _hoisted_64 = { key: 1 }\nconst _hoisted_65 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_66 = { key: 1 }\nconst _hoisted_67 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"input-box\" }, [\n /*#__PURE__*/_createElementVNode(\"label\", { class: \"field_name\" }, \"Proof of enrolment\")\n], -1))\nconst _hoisted_68 = { class: \"file-upload\" }\nconst _hoisted_69 = {\n key: 0,\n class: \"validation-msg error\"\n}\nconst _hoisted_70 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-exclamation-circle\" }, null, -1))\nconst _hoisted_71 = { class: \"file-list mb-2\" }\nconst _hoisted_72 = { class: \"file-name\" }\nconst _hoisted_73 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fal fa-file-pdf\" }, null, -1))\nconst _hoisted_74 = [\"onClick\"]\nconst _hoisted_75 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, null, -1))\nconst _hoisted_76 = {\n key: 0,\n class: \"modal-footer row right\"\n}\nconst _hoisted_77 = [\"disabled\"]\nconst _hoisted_78 = [\"disabled\"]\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n const _component_FileDragAndDrop = _resolveComponent(\"FileDragAndDrop\")\n const _component_date_picker = _resolveComponent(\"date-picker\")\n const _component_PostcodeSearch = _resolveComponent(\"PostcodeSearch\")\n const _component_Popover = _resolveComponent(\"Popover\")\n const _component_InstitutionSearch = _resolveComponent(\"InstitutionSearch\")\n const _component_ModalWindow = _resolveComponent(\"ModalWindow\")\n const _component_ConfirmDialogue = _resolveComponent(\"ConfirmDialogue\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createVNode(_component_ModalWindow, { onClose: _ctx.close }, {\n \"modal-title\": _withCtx(() => [\n _hoisted_2\n ]),\n \"modal-body\": _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_3, [\n (_ctx.isLoadingData)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _withDirectives(_createElementVNode(\"select\", {\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = $event => ((_ctx.formData.title) = $event))\n }, [\n _hoisted_8,\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.titles, (t) => {\n return (_openBlock(), _createElementBlock(\"option\", {\n value: {id: t.id, name: t.name, description: t.description}\n }, _toDisplayString(t.name), 9, _hoisted_9))\n }), 256))\n ], 512), [\n [_vModelSelect, _ctx.formData.title]\n ])\n ]),\n _hoisted_10\n ]),\n _hoisted_11,\n _createElementVNode(\"div\", _hoisted_12, [\n _hoisted_13,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = $event => ((_ctx.formData.firstName) = $event)),\n placeholder: \"First name\",\n maxlength: \"50\",\n onKeyup: _cache[2] || (_cache[2] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.firstName]\n ])\n ]),\n _hoisted_14,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.surname?.trim() == '' && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_15,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[3] || (_cache[3] = $event => ((_ctx.formData.surname) = $event)),\n placeholder: \"Surname\",\n maxlength: \"50\",\n onKeyup: _cache[4] || (_cache[4] = $event => (_ctx.nameCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.surname]\n ]),\n _hoisted_16\n ], 2),\n (_ctx.requiredFileUpload)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"file-upload mt-4\", _ctx.requiredFileUpload ? 'required' : ''])\n }, [\n _createTextVNode(\" Please attach proof of name change. \"),\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[5] || (_cache[5] = $event => (_ctx.fileListChanged($event, 1))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.formData.nameChangeFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_18, [\n _hoisted_19,\n _createTextVNode(\" Required to attach proof of name change. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.nameChangeFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", _hoisted_21, [\n _hoisted_22,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id, 1))\n }, \"Delete\", 8, _hoisted_23)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true),\n _hoisted_24,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.birthDate && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_25,\n _createVNode(_component_date_picker, {\n format: \"DD/MM/YYYY\",\n value: _ctx.formData.birthDate,\n \"onUpdate:value\": _cache[6] || (_cache[6] = $event => ((_ctx.formData.birthDate) = $event)),\n \"input-class\": \"normal\",\n \"disabled-date\": _ctx.disabledAfterToday,\n disabled: _ctx.disallowUpdate.birthDate,\n onChange: _cache[7] || (_cache[7] = $event => (_ctx.dateOfBirthChanged = true))\n }, null, 8, [\"value\", \"disabled-date\", \"disabled\"]),\n _hoisted_26,\n _hoisted_27,\n (_ctx.disallowUpdate.birthDate)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_28, [\n _hoisted_29,\n _createElementVNode(\"span\", { innerHTML: _ctx.disableNote }, null, 8, _hoisted_30)\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _hoisted_31,\n _createVNode(_component_PostcodeSearch, {\n suburbStatePostcode: _ctx.suburbStatePostcode,\n \"onUpdate:suburbStatePostcode\": _cache[8] || (_cache[8] = $event => ((_ctx.suburbStatePostcode) = $event)),\n onUpdateSuburb: _ctx.updateSuburb,\n suburbError: _ctx.suburbError,\n \"onUpdate:suburbError\": _cache[9] || (_cache[9] = $event => ((_ctx.suburbError) = $event))\n }, null, 8, [\"suburbStatePostcode\", \"onUpdateSuburb\", \"suburbError\"]),\n _hoisted_32,\n _hoisted_33,\n _createElementVNode(\"div\", _hoisted_34, [\n _createElementVNode(\"h4\", _hoisted_35, [\n _createTextVNode(\"Contact details\"),\n _createElementVNode(\"span\", _hoisted_36, [\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('PhoneDetails', 14),\n style: {\"margin\":\"auto auto\",\"padding\":\"auto auto\"}\n }, null, 8, [\"popover\"])\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_37, [\n _createElementVNode(\"div\", {\n style: {\"flex\":\"1\"},\n class: _normalizeClass([\"input-box\", _ctx.isSubmitting && !_ctx.formPhoneNumber ? 'error' : ''])\n }, [\n _hoisted_38,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[10] || (_cache[10] = $event => ((_ctx.formData.mobilePhone.phoneNumber) = $event)),\n placeholder: \"Personal mobile\",\n maxlength: \"15\",\n onChange: _cache[11] || (_cache[11] = $event => (_ctx.nameCheck())),\n size: \"30\"\n }, null, 544), [\n [_vModelText, _ctx.formData.mobilePhone.phoneNumber]\n ]),\n _hoisted_39\n ], 2)\n ]),\n _hoisted_40,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.communicationEmail?.email?.trim() == '' || !_ctx.emailCheck() || _ctx.isEmailDuplicated) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_41, [\n _createTextVNode(\"Email for Communication \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('CommunicationEmail' , 14),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[12] || (_cache[12] = $event => ((_ctx.formData.communicationEmail.email) = $event)),\n placeholder: \"Email address for communication\",\n maxlength: \"50\",\n onChange: _cache[13] || (_cache[13] = $event => (_ctx.emailCheck()))\n }, null, 544), [\n [_vModelText, _ctx.formData.communicationEmail.email]\n ]),\n _createElementVNode(\"span\", _hoisted_42, [\n _hoisted_43,\n (_ctx.formData.communicationEmail?.email?.trim() == '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_44, \"Please enter email address.\"))\n : (!_ctx.emailCheck())\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_45, \"Invalid email address format.\"))\n : (_ctx.isEmailDuplicated)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_46, \"This email address is already registered, please enter a unique email address\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_47,\n _hoisted_48,\n _hoisted_49,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", _ctx.formData.qualificationInstitution?.id == null && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_50,\n _createVNode(_component_InstitutionSearch, {\n style: {\"width\":\"100%\"},\n institution: _ctx.formData.qualificationInstitution,\n \"onUpdate:institution\": _cache[14] || (_cache[14] = $event => ((_ctx.formData.qualificationInstitution) = $event)),\n onUpdateInstitution: _ctx.updateInstitution,\n onIsBusy: _ctx.isBusy,\n enableAddInstitution: true,\n error: _ctx.formData.qualificationInstitution?.id == null && _ctx.isSubmitting\n }, null, 8, [\"institution\", \"onUpdateInstitution\", \"onIsBusy\", \"error\"]),\n (_ctx.formData.qualificationInstitution?.id== null && _ctx.isSubmitting)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_51, [\n _hoisted_52,\n _createTextVNode(\"Required field. \")\n ]))\n : _createCommentVNode(\"\", true)\n ], 2),\n _hoisted_53,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.lawDegree && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_54,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = $event => ((_ctx.formData.lawDegree) = $event)),\n placeholder: \"Enter law course\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.lawDegree]\n ]),\n _hoisted_55\n ], 2),\n _hoisted_56,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", !_ctx.formData.studentNumber && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _hoisted_57,\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[16] || (_cache[16] = $event => ((_ctx.formData.studentNumber) = $event)),\n placeholder: \"Enter student number\",\n maxlength: \"50\"\n }, null, 512), [\n [_vModelText, _ctx.formData.studentNumber]\n ]),\n _hoisted_58\n ], 2),\n _hoisted_59,\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"input-box\", (_ctx.formData.studentEmail?.trim() === '' || !_ctx.studentEmailCheck(_ctx.formData.studentEmail)) && _ctx.isSubmitting ? 'error' : ''])\n }, [\n _createElementVNode(\"label\", _hoisted_60, [\n _createTextVNode(\"Student email \"),\n _createVNode(_component_Popover, {\n popover: _ctx.$getPopover('StudentRenewEmail' , 14),\n class: \"ml-1\"\n }, null, 8, [\"popover\"])\n ]),\n _withDirectives(_createElementVNode(\"input\", {\n type: \"text\",\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = $event => ((_ctx.formData.studentEmail) = $event)),\n placeholder: \"Enter student email\",\n maxlength: \"255\",\n onChange: _cache[18] || (_cache[18] = $event => (_ctx.studentEmailCheck(_ctx.formData.studentEmail)))\n }, null, 544), [\n [_vModelText, _ctx.formData.studentEmail]\n ]),\n _createElementVNode(\"span\", _hoisted_61, [\n _hoisted_62,\n (_ctx.formData.studentEmail?.trim() === '')\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_63, \"Please enter email address.\"))\n : (!_ctx.studentEmailCheck(_ctx.formData.studentEmail))\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_64, \"Invalid email address format.\"))\n : _createCommentVNode(\"\", true)\n ])\n ], 2),\n _hoisted_65,\n (_ctx.requiredProofOfEnrolment)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_66, [\n _hoisted_67,\n _createElementVNode(\"div\", _hoisted_68, [\n _createVNode(_component_FileDragAndDrop, {\n disabled: false,\n uploading: _ctx.uploading,\n ref: \"fileDropAndDrop\",\n onFileInputChanged: _cache[19] || (_cache[19] = $event => (_ctx.fileListChanged($event, 2))),\n numFileLimit: 5,\n fileSizeLimit: 10\n }, null, 8, [\"uploading\"]),\n (_ctx.formData.studentProofDocumentFiles?.length == 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_69, [\n _hoisted_70,\n _createTextVNode(\" Required to attach proof of enrolment. \")\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.formData.studentProofDocumentFiles, (f) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_71, [\n _createElementVNode(\"div\", _hoisted_72, [\n _hoisted_73,\n _createTextVNode(\" \" + _toDisplayString(f.originalFileName || f.fileName), 1)\n ]),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline sml\",\n onClick: $event => (_ctx.deleteFile(f.id, 2))\n }, \"Delete\", 8, _hoisted_74)\n ]))\n }), 256))\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n ]),\n _hoisted_75,\n (!_ctx.isLoadingData)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_76, [\n (_ctx.isUpdating)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, {\n key: 0,\n loadingText: \"\",\n class: \"mr-4\"\n }))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"button\", {\n class: \"btn btn-outline mr-2\",\n onClick: _cache[20] || (_cache[20] = $event => (_ctx.cancel())),\n disabled: _ctx.isUpdating\n }, \"Cancel\", 8, _hoisted_77),\n _createElementVNode(\"button\", {\n class: \"btn btn-primary\",\n onClick: _cache[21] || (_cache[21] = $event => (_ctx.update())),\n disabled: !_ctx.isDirty || _ctx.isUpdating\n }, \"Update\", 8, _hoisted_78)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"onClose\"]),\n _createVNode(_component_ConfirmDialogue, {\n ref: \"confirmDialogue\",\n modalOpened: true\n }, null, 512)\n ]))\n}","import {Inject, Options, Vue, Watch} from \"vue-property-decorator\";\nimport ModalWindow from \"@/shared/components/modal-window/index.vue\";\nimport { AddressDetail, Application, PcRenewFileRequest, QualificationInstitution, StudentNewIndividualDetail, SuburbStatePostcode } from \"@/shared/modules/typescript-api-client/models\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport _, { orderBy } from \"lodash\";\nimport FileDragAndDrop from \"@/shared/components/file-drag-and-drop/index.vue\";\nimport PostcodeSearch from \"@/shared/components/postcodeSearch/index.vue\";\nimport AlertBox from \"@/shared/components/alert-box/index.vue\";\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport DatePicker from 'vue-datepicker-next';\nimport InstitutionSearch from \"@/shared/components/institutionSearch/index.vue\";\nimport { STUDENT_EMAIL_VALIDATION_SUFFIX } from '@/shared/config/config';\n\n\n@Options({\n props: {\n currentDetails: Object,\n origNames: Object,\n disallowUpdate: Object,\n },\n components: {\n FileDragAndDrop,\n LoadingIndicator,\n PostcodeSearch,\n AlertBox,\n Popover,\n ConfirmDialogue,\n ModalWindow,\n DatePicker,\n InstitutionSearch\n },\n mixins: [\n FormatDateTimeMixin,\n ]\n})\n\nexport default class StrApplicantDetailsUpdateModal extends Vue {\n\n private currentDetails!: StudentNewIndividualDetail;\n private origNames!: any;\n private disallowUpdate!: any;\n private requiredProofOfEnrolment!: boolean;\n\n //email validation\n get isEmailValid(): boolean {\n const email = this.formData?.studentEmail;\n return email.length<1 || email.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX);\n }\n\n private studentEmailCheck(email: string | null | undefined): boolean {\n if (!email?.trim()) {\n return false; // Empty or null emails are invalid\n }\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(email);\n }\n\n\n @Watch('formData.studentEmail')\n private onStudentEmailChange() {\n this.requiredProofOfEnrolment = !this.isEmailValid; // If email is invalid, set to true\n }\n\n private isClosing = false;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private titles: any[] = [];\n // private buildingTypes: any[] = [];\n // private streetTypes: any[] = [];\n // private buildingType: any = { id: 0, name: '' };\n // private streetType: any = { id: 0, description: '' };\n\n // private pcRenewFileTypes: any[] = [];\n private proofOfEnrollementTypes: any[] = [];\n private fileIdToDelete = 0;\n\n private suburbStatePostcode = {};\n\n private keyword = '';\n private arrowCounter = -1;\n private searchDebounced: any = null;\n private isSearching = false;\n private stopSearch = false;\n private isOpen = false;\n private institutionList: any = [];\n\n private firmId = 0;\n private noSearchResult = false;\n private addNewPractice = false;\n\n private popover: PopoverView = {\n key:'',\n content: '

Example:

.headings {
font-family: var(--font-headings);
}

.body-text {
font-family: var(--font-body-text);
}

',\n isShow: false,\n title: '',\n };\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n private isLoadingData = true;\n\n private requiredFileUpload = false;\n\n private formData: any = {};\n\n private fileList: Array = [];\n private uploading = false;\n private dateReceived: Date = null as any;\n private showDeleteAlert = false;\n\n private isSubmitting = false;\n\n // mandatory fields\n private formFirstName = true;\n private formSurname = true;\n private formFileUpload = true;\n private formPhoneNumber = true;\n private formEmail = true;\n private formStudentEmail = true;\n private isEmailDuplicated = false;\n private addressCheck = true;\n private isUpdating = false;\n // private newSeed = 1;\n\n private formBirthPlace = true;\n private formBirthDate = true;\n private formBirthCountry = true;\n private formGender = true;\n\n mounted(): void {\n document.body.classList.add('modal-open');\n this.preloadData();\n this.formData = JSON.parse(JSON.stringify(this.currentDetails));\n this.formData.postalAddress = this.formData.postalAddress ? this.initAddress(this.formData.postalAddress) : this.initAddress({});\n if (!this.formData.nameChangeFiles) {\n this.formData.nameChangeFiles = [];\n }\n this.formData.birthDate = this.formData.birthDate ? new Date(this.formData.birthDate) : null;\n\n this.suburbStatePostcode = {\n suburbId: this.formData.postalAddress?.suburbId,\n suburbName: this.formData.postalAddress?.suburbName,\n postcode: this.formData.postalAddress?.postcode,\n stateId: this.formData.postalAddress?.stateId,\n stateName: this.formData.postalAddress?.stateName,\n }\n\n if (!this.formData.studentProofDocumentFiles) {\n this.formData.studentProofDocumentFiles = [];\n }\n\n this.nameCheck();\n\n this.formData.qualificationInstitution = this.formData.qualificationInstitution ?? {};\n\n\n // this.searchDebounced = debounce(() => {\n // if (this.keyword.trim() !== '') {\n // this.getSuburbPostcodeList();\n // }\n // }, 500);\n }\n\n beforeUnmount(): void {\n document.body.classList.remove('modal-open');\n }\n\n private initAddress(a: AddressDetail) {\n a.addressTypeId = a.addressTypeId || 1;\n // a.buildingName = a.buildingName || '';\n // a.buildingNumber = a.buildingNumber || null;\n // a.buildingTypeId = a.buildingTypeId || 0;\n // a.buildingTypeName = a.buildingTypeName || null\n a.countryId = a.countryId || 187;\n a.countryName = a.countryName || 'AUSTRALIA';\n // a.deliveryTypeId = a.deliveryTypeId || 0;\n // a.deliveryTypeName = a.deliveryTypeName || null;\n // a.dxExchangeTypeId = a.dxExchangeTypeId || 0;\n // a.dxExchangeTypeName = a.dxExchangeTypeName || null;\n // a.dxNumber = a.dxNumber || null;\n // a.foreignAddress = a.foreignAddress || null;\n a.id = a.id || 0;\n // a.level = a.level || null;\n // a.poBox = a.poBox || null;\n a.postcode = a.postcode || null;\n a.postCodeSuburbId = a.postCodeSuburbId || 0;\n a.stateId = a.stateId || 0;\n a.stateName = a.stateName || null;\n // a.streetName = a.streetName || null;\n // a.streetNumber = a.streetNumber || null;\n // a.streetTypeId = a.streetTypeId || 0;\n // a.streetTypeName = a.streetTypeName || '';\n a.suburbId = a.suburbId || 0;\n a.suburbName = a.suburbName || null;\n a.lsAddressId = a.lsAddressId || 0;\n // a.firmAddMapId = a.firmAddMapId || 0;\n\n return a;\n }\n\n private async preloadData() {\n try {\n // const _memberId: any = parseInt(this.$route.query.memberId as string, 10) || '';\n this.isLoadingData = true;\n const resp: any[] = await Promise.all([\n this.apiService.CodeApi?.apiV1CodeGetTitlesGet(),\n this.apiService.CodeApi?.apiV1CodeGetStudentRenewFileTypesGet(),\n // this.apiService.CodeApi?.apiV1CodeGetGendersGet(),\n ]);\n this.titles = resp[0].data.data;\n // Validate email during preload\n this.requiredProofOfEnrolment = !this.isEmailValid;\n // this.pcRenewFileTypes = resp[1].data.data;\n // this.genderList = resp[2].data.data;\n // this.genderList = orderBy(this.genderList, ['id'], 'asc');\n\n } catch (err) {\n this.isLoadingData = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to preload data: ' + err);\n this.ai.trackException('Error, Unable to preload data: ' + err);\n } finally {\n this.isLoadingData = false;\n }\n }\n\n private updateInstitution(institution: QualificationInstitution) {\n this.formData.qualificationInstitution = institution;\n }\n\n private isBusy(isBusy: boolean) {\n this.$emit('isBusy', isBusy);\n }\n\n // private async getCountyList() {\n // const _countryList = store.getters.getCountryList;\n // this.countryList = _countryList == null ? null : JSON.parse(_countryList);\n\n // this.isLoadingData = true;\n // this.$emit('readyState', !this.isLoadingData);\n\n // if (this.countryList == null) {\n // await this.apiService.CodeApi?.apiV1CodeGetCountriesGet()\n // .then((res: any) => {\n // this.countryList = res.data.data;\n // store.dispatch('setCountryList', this.countryList);\n // })\n // .catch((err: any) => {\n // // console.log(err);\n // this.eventCtrl.emit('show-snackbar', 'error', 'Error getting country list: ' + err.response?.status);\n // this.ai.trackException('Error getting country list: ' + err);\n // })\n // }\n // }\n\n // private setGender(opt: number) {\n // if (opt == 2) {\n // this.formData.gender = { id: 2, name: \"F\", description: \"FEMALE\" }\n // } else {\n // this.formData.gender = { id: 1, name: \"M\", description: \"MALE\" }\n // }\n // }\n\n private cancel() {\n // if (this.isDirty) {\n // const _confirm: any = this.$refs.confirmDialogue;\n // _confirm.show({\n // title: 'Cancel Update Current Details',\n // message: 'By cancelling, changes to the current screen will be lost.
Are you sure you want to cancel?',\n // okButton: 'Yes',\n // cancelButton: 'No',\n // }).then((res: any) => {\n // if (res) {\n // this.close();\n // }\n // })\n // } else {\n this.close();\n // }\n }\n\n private close() {\n this.isClosing = true;\n setTimeout(() => {\n this.$emit('close');\n }, 500);\n }\n\n private updateAddress(address: AddressDetail, valid: boolean) {\n this.addressCheck = valid;\n }\n private async deleteStudentProofFromServerWhenEmailIsValid()\n {\n for (let i = 0; i < this.formData.studentProofDocumentFiles.length; i++) {\n this.formData.studentProofDocumentFiles.splice(i, 1);\n }\n }\n private async update() {\n this.isSubmitting = true;\n this.isUpdating = true;\n this.formData.isCurrentDetailCorrect = true;\n if (this.formValidated()) {\n this.formData.postalAddress = this.$addressCleanup(this.formData.postalAddress);\n if(!this.requiredProofOfEnrolment)\n {\n await this.deleteStudentProofFromServerWhenEmailIsValid();\n }\n await this.apiService.StudentRenewApi?.apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(this.formData)\n .then(() => {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'Current details updated');\n this.$emit('reloadCurrentDetails');\n this.close();\n })\n .catch(err => {\n this.isUpdating = false;\n if (err.response.data.errorCode == 30001) {\n this.isEmailDuplicated = true;\n this.eventCtrl.emit('show-snackbar', 'error', 'Email address is already registered');\n this.ai.trackException('Error, Unable to update current details: Email address is already registered');\n } else {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update current details: ' + err);\n this.ai.trackException('Error, Unable to update current details: ' + err);\n }\n })\n } else {\n this.isUpdating = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Please check all required fields');\n }\n\n }\n\n private formValidated(): boolean {\n this.formFirstName = this.formData.firstName?.trim() !== '';\n this.formSurname = this.formData.surname?.trim() !== '';\n\n this.formFileUpload = true;\n if (this.requiredFileUpload) {\n this.formFileUpload = this.formData.nameChangeFiles.length > 0;\n }\n this.formPhoneNumber = this.formData.mobilePhone?.phoneNumber?.trim() !== '';\n this.formEmail = this.emailCheck();\n this.formStudentEmail = this.studentEmailCheck(this.formData.studentEmail?.trim());\n\n // Check if proof document files are required\n const isProofRequired = !this.isEmailValid && this.formData.studentProofDocumentFiles?.length === 0;\n\n this.formBirthDate = this.formData.birthDate;\n\n return this.formSurname && this.formFileUpload && this.addressCheck && this.formPhoneNumber && this.formEmail && this.formBirthDate &&\n this.formData?.qualificationInstitution?.id >=0 && this.formData.lawDegree && this.formData.studentNumber && this.formData.studentEmail && this.formStudentEmail && !isProofRequired\n }\n\n private fileListChanged(fileList: Array, studentNewFileType: number): void {\n this.fileList = fileList;\n this.uploadAllFiles(this.fileList, studentNewFileType);\n }\n\n private deleteFile(id: number, studentNewFileType: number) {\n this.fileIdToDelete = id;\n const _confirm: any = this.$refs.confirmDialogue;\n _confirm.show({\n title: 'Delete File',\n message: 'Are you sure you want to delete this file?',\n okButton: 'Delete',\n cancelButton: 'Cancel',\n }).then((res: any) => {\n if (res) {\n this.deleteFileFromServer(this.fileIdToDelete, studentNewFileType);\n }\n })\n\n }\n\n // private buildingTypeChange(bt: any) {\n // this.formData.postalAddress.buildingTypeId = bt.id;\n // this.formData.postalAddress.buildingTypeName = bt.name;\n // }\n\n // private streetTypeChange(st: any) {\n // this.formData.postalAddress.streetTypeId = st.id;\n // this.formData.postalAddress.streetTypeName = st.name;\n // }\n\n private async deleteFileFromServer(id: number, studentNewFileType: number) {\n try {\n if (studentNewFileType == 1) {\n for (let i = 0; i < this.formData.nameChangeFiles.length; i++) {\n if (this.formData.nameChangeFiles[i].id === id) {\n this.formData.nameChangeFiles.splice(i, 1);\n }\n }\n } else if (studentNewFileType == 2) {\n for (let i = 0; i < this.formData.studentProofDocumentFiles.length; i++) {\n if (this.formData.studentProofDocumentFiles[i].id === id) {\n this.formData.studentProofDocumentFiles.splice(i, 1);\n }\n }\n }\n this.nameCheck();\n this.eventCtrl.emit('show-snackbar', 'success', 'File removed.');\n\n } catch (err) {\n this.ai.trackException('Error on delete file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on delete file: ' + err);\n }\n }\n\n private async uploadAllFiles(fileList: Array, studentNewFileType: number): Promise {\n const allRequests: Array> = [];\n this.uploading = true;\n try {\n if (fileList.length > 0) {\n fileList.forEach((x) => allRequests.push(this.uploadFile(x, studentNewFileType)));\n await Promise.all(allRequests);\n this.eventCtrl.emit('show-snackbar', 'success', 'File(s) uploaded');\n }\n } catch (err: any) {\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n } finally {\n this.uploading = false;\n }\n }\n\n private async uploadFile(file: File, studentNewFileType: number): Promise {\n try {\n const fileStr = await this.fileToString(file);\n const body = {\n id: 0,\n fileName: file.name,\n fileExtension: file.name,\n fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentRenewFileTypeId: studentNewFileType,\n };\n\n const res: any = await this.apiService.FileApi?.apiV1FileSaveStudentRenewFilePost(body);\n\n if (studentNewFileType == 1) {\n this.formData.nameChangeFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentRenewFileTypeId: studentNewFileType,\n });\n\n } else if (studentNewFileType == 2) {\n this.formData.studentProofDocumentFiles.push({\n id: res.data.data.data,\n fileName: file.name,\n fileExtension: file.name,\n // fileDataUrl: fileStr,\n applicationId: this.onlineApplication.id,\n studentRenewFileTypeId: studentNewFileType,\n })\n }\n\n return Promise.resolve(true);\n } catch (err) {\n console.log(err);\n this.ai.trackException('Error on upload file: ' + JSON.stringify(err));\n this.eventCtrl.emit('show-snackbar', 'error', 'Error on upload file: ' + err);\n return Promise.resolve(false);\n }\n }\n\n private fileToString(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = () => {\n return resolve(reader.result as string);\n };\n\n reader.onabort = () => {\n return reject();\n }\n\n reader.onerror = () => {\n return reject();\n }\n });\n }\n\n private nameCheck() {\n const _firstNameCheck = this.formData.firstName?.trim() == this.origNames?.firstName?.trim();\n const _otherNameCheck = (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') || (this.formData.otherName?.trim() == this.origNames?.otherName?.trim());\n const _surnameCheck = this.formData.surname?.trim() == this.origNames?.surname?.trim();\n\n if (this.origNames?.otherName === null && this.formData.otherName?.trim() == '') {\n this.formData.otherName = this.origNames?.otherName;\n }\n this.requiredFileUpload = !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n private emailCheck(): boolean {\n const emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailRegex.test(this.formData.communicationEmail?.email);\n }\n private validateStudentEmail(): void {\n this.formStudentEmail = this.studentEmailCheck(this.formData.studentEmail?.trim());\n }\n\n private updateSuburb(s: SuburbStatePostcode) {\n this.formData.postalAddress.suburbId = s.suburbId;\n this.formData.postalAddress.suburbName = s.suburbName;\n this.formData.postalAddress.postCodeSuburbId = s.postCodeSuburbId;\n this.formData.postalAddress.postcode = s.postcode;\n this.formData.postalAddress.stateId = s.stateId;\n this.formData.postalAddress.stateName = s.stateName;\n this.formData.postalAddress.state = s.state;\n }\n\n private highlightWord(word: string) {\n try {\n const regex = new RegExp('(' + this.keyword + ')', 'ig');\n return word.replace(regex, '$1');\n } catch (err) {\n return word;\n }\n }\n\n private onArrowDown() {\n if (this.institutionList.length > 0) {\n if (this.arrowCounter < this.institutionList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n } else {\n if (this.arrowCounter < this.institutionList.length) {\n this.arrowCounter = this.arrowCounter + 1;\n }\n }\n }\n\n private onArrowUp() {\n if (this.arrowCounter > 0) {\n this.arrowCounter = this.arrowCounter - 1;\n }\n }\n\n private onEnter() {\n // this.isFormDirty = false;\n this.isOpen = false;\n if (this.institutionList.length > 0) {\n this.selectInstitutionFromSearch(\n this.institutionList[this.arrowCounter === -1 ? 0 : this.arrowCounter]\n );\n }\n }\n\n private selectInstitutionFromSearch(p: any) {\n this.isOpen = false;\n this.stopSearch = true;\n this.keyword = p.firmName;\n setTimeout(() => {\n this.stopSearch = false;\n }, 500)\n // this.apiService.PcRenewApi?.apiV1PcRenewGetPracticeByFirmIdFirmIdGet(p.firmId)\n // .then(async res => {\n // this.newRecord = res.data.data;\n // this.newRecord.pcRenewApplicationId = this.pcRenewApplicationId;\n // this.recordPracticeAddresses = JSON.parse(JSON.stringify(this.newRecord.recordPracticeAddresses));\n // this.recordPracticeAddresses = this.recordPracticeAddresses.map((item) => {\n // return {\n // id: item.id,\n // isSelected: item.isSelected,\n // address: item.address,\n // inlineAddress: this.getAddressInline(item.address),\n // businessPhone: item.businessPhone,\n // businessFax: item.businessFax\n // };\n // });\n // this.recordPracticeAddresses = orderBy(this.recordPracticeAddresses, ['inlineAddress', 'asc']);\n // this.selectedAddressIndex = 0;\n // this.getAddressList();\n // this.getAddressId();\n // await this.apiService.CodeApi?.apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet(this.newRecord.firmId)\n // .then(res => {\n // this.employmentStatusList = res.data.data;\n // this.employmentStatusList = orderBy(this.employmentStatusList, ['name'], 'asc');\n // })\n // .catch(err => {\n // console.log(err)\n // })\n // })\n // .catch(err => {\n // this.eventCtrl.emit('show-snackbar', 'error', 'Unable to select this practice: ' + err);\n // this.ai.trackException('Error, Unable to select this practice: ' + err);\n // })\n\n // this.$emit('updateSuburb', _suburb);\n // this.keyword = '';\n }\n\n get suburbError() {\n return (!this.formData?.postalAddress?.suburbId || !this.formData?.postalAddress?.suburbName || !this.formData?.postalAddress?.postcode ||\n !this.formData?.postalAddress?.stateId || !this.formData?.postalAddress?.stateName || !this.formData?.postalAddress?.state) && this.isSubmitting;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get isDirty(): boolean {\n return JSON.stringify(this.currentDetails) !== JSON.stringify(this.formData);\n }\n\n private disabledAfterToday(date: Date) {\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n return date > today;\n }\n\n // get hasLSID(): boolean {\n // return this.formData.hasIndId;\n // }\n\n\n // private dateOfBirthChanged = false;\n // get disableDateOfBirth(): boolean {\n // return this.hasLSID && this.formData.birthDate !== null;\n // }\n\n get disableNote(): string {\n return 'If you would like to update your current date of birth information, please get in touch with the Student Services team by emailing registry@lawsociety.com.au.'\n }\n\n}\n","import { render } from \"./str-applicant-details-update-modal.html?vue&type=template&id=375f8acd&scoped=true&ts=true\"\nimport script from \"./str-applicant-details-update-modal.ts?vue&type=script&lang=ts\"\nexport * from \"./str-applicant-details-update-modal.ts?vue&type=script&lang=ts\"\n\nimport \"./str-applicant-details-update-modal.scss?vue&type=style&index=0&id=375f8acd&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-375f8acd\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application, StudentRenewIndividualDetail } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport Popover from \"@/shared/components/popover/index.vue\";\nimport AddressPreview from \"@/shared/components/address-preview/index.vue\";\nimport StrApplicantDetailsUpdateModal from \"../str-applicant-details-update-modal/index.vue\";\nimport { STUDENT_EMAIL_VALIDATION_SUFFIX } from '@/shared/config/config';\n\n\n@Options({\n props: {\n strAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n Popover,\n AddressPreview,\n StrApplicantDetailsUpdateModal,\n },\n mixins: [FormatDateTimeMixin],\n})\n\nexport default class StrApplicantDetails extends Vue {\n private strAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private individualDetails: StudentRenewIndividualDetail = {};\n private origNames = {};\n\n private showUpdateDetailsModal = false;\n\n private disallowUpdate: any = {};\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n @Watch('individualDetails.isCurrentDetailCorrect')\n private radioButtonChange() {\n this.canGoNextCheck();\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.eventCtrl.emit('canGoNext', false);\n const _origName = this.strAppFormData.origNames;\n this.origNames = _origName;\n this.preloadData();\n }\n\n private async preloadData(): Promise {\n const _isRenewing = this.strAppFormData.individualDetails?.studentRenewApplicationId > 0;\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.StudentRenewApi?.apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(this.onlineApplication.id, !_isRenewing)\n ]);\n this.individualDetails = resp[0].data.data;\n this.strAppFormData.individualDetails = this.individualDetails;\n if (!_isRenewing) {\n this.origNames = {\n firstName: this.individualDetails.firstName,\n otherName: this.individualDetails.otherName,\n surname: this.individualDetails.surname,\n };\n this.disallowUpdate = {\n birthDate: this.individualDetails.hasIndId && this.individualDetails.birthDate !== null,\n };\n }\n this.strAppFormData.origNames = this.origNames;\n this.strAppFormData.disallowUpdate = this.disallowUpdate;\n store.dispatch('setStrAppFormData', this.strAppFormData);\n this.canGoNextCheck();\n\n } catch (err) {\n this.ai.trackException('Error, Unable to load application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n get hasNameChanged() {\n const _firstNameCheck = this.individualDetails?.firstName?.trim() == this.strAppFormData.origNames?.firstName?.trim();\n const _otherNameCheck = this.individualDetails?.otherName?.trim() == this.strAppFormData.origNames?.otherName?.trim();\n const _surnameCheck = this.individualDetails?.surname?.trim() == this.strAppFormData.origNames?.surname?.trim();\n return !(_firstNameCheck && _otherNameCheck && _surnameCheck);\n }\n\n get missingSurname(): boolean { \n return !this.individualDetails.surname;\n }\n\n get missingMobilePhone(): boolean {\n return !this.individualDetails?.mobilePhone?.phoneNumber;\n }\n\n get missingDOB(): boolean {\n return !this.individualDetails?.birthDate;\n }\n\n get missingEmail(): boolean {\n return !this.individualDetails.communicationEmail?.email;\n }\n\n get missingPostcode(): boolean {\n return !this.individualDetails?.postalAddress?.postcode;\n }\n\n get missingInstitution(): boolean {\n return !this.individualDetails?.qualificationInstitution;\n }\n\n get missingLawDegree(): boolean {\n return !this.individualDetails?.lawDegree;\n }\n\n get missingStudentNumber(): boolean {\n return !this.individualDetails?.studentNumber;\n }\n\n get missingStudentEmail(): boolean {\n return !this.individualDetails?.studentEmail;\n }\n\n get missingProofOfEnrolment(): boolean {\n return !this.individualDetails?.studentEmail.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX) && this.individualDetails?.studentProofDocumentFiles?.length == 0;\n }\n\n get isValidForm(): boolean {\n return !this.missingSurname && !this.missingMobilePhone && !this.missingDOB && !this.missingEmail && !this.missingPostcode &&\n !this.missingInstitution && !this.missingLawDegree && !this.missingStudentNumber && !this.missingProofOfEnrolment && !this.missingStudentEmail;\n }\n\n private canGoNextCheck() {\n const correctInfo: boolean = this.strAppFormData.individualDetails?.isCurrentDetailCorrect ? true : false;\n this.eventCtrl.emit('canGoNext', this.isValidForm && correctInfo);\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n private updateCurrentDetails() {\n // this.individualDetails.workPhone = this.individualDetails.workPhone?.phoneNumber ? this.individualDetails.workPhone :\n // { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.businessFax = this.individualDetails.businessFax?.phoneNumber ? this.individualDetails.businessFax :\n // { phoneNumber: '', phoneAreaCode: null };\n this.individualDetails.mobilePhone = this.individualDetails.mobilePhone?.phoneNumber ? this.individualDetails.mobilePhone :\n { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.businessPhone = this.individualDetails.businessPhone?.phoneNumber ? this.individualDetails.businessPhone :\n // { phoneNumber: '', phoneAreaCode: null };\n // this.individualDetails.birthPlace = this.individualDetails.birthPlace || '';\n this.showUpdateDetailsModal = true;\n }\n\n private async resetStudentProof()\n {\n this.individualDetails.studentProofDocumentFiles = [];\n }\n\n private async reloadCurrentDetails() {\n try {\n this.loadingDataSet = true;\n const resp: any = await Promise.all([\n this.apiService.StudentRenewApi?.apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet(this.onlineApplication.id, false)\n ]);\n this.individualDetails = resp[0].data.data;\n if(this.individualDetails.studentEmail.endsWith(STUDENT_EMAIL_VALIDATION_SUFFIX))\n {\n this.individualDetails.studentProofDocumentFiles = [];\n }\n this.strAppFormData.individualDetails = this.individualDetails;\n store.dispatch('setStrAppFormData', this.strAppFormData);\n this.canGoNextCheck();\n } catch (err) {\n this.ai.trackException('Error, Unable to reload application details: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to reload application details');\n } finally {\n this.canGoNextCheck();\n this.loadingDataSet = false;\n }\n }\n\n private toCurrency(value: any): string {\n const _value = value || 0;\n const formatter = new Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD', //USD will added '$' in front of the number\n minimumFractionDigits: 2\n });\n const formattedCurrency = formatter.format(_value);\n return formattedCurrency;\n }\n\n}\n\n\n","import { render } from \"./str-applicant-details.html?vue&type=template&id=1f3f9292&scoped=true&ts=true\"\nimport script from \"./str-applicant-details.ts?vue&type=script&lang=ts\"\nexport * from \"./str-applicant-details.ts?vue&type=script&lang=ts\"\n\nimport \"./str-applicant-details.scss?vue&type=style&index=0&id=1f3f9292&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1f3f9292\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, vModelCheckbox as _vModelCheckbox, withDirectives as _withDirectives, toDisplayString as _toDisplayString, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4e12ff59\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-preferences\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Preferences\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"content-wrapper\"\n}\nconst _hoisted_4 = { class: \"left-side\" }\nconst _hoisted_5 = { class: \"box\" }\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Email Preferences \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select one or more email preferences:\", -1))\nconst _hoisted_8 = { class: \"checkboxes\" }\nconst _hoisted_9 = { class: \"row\" }\nconst _hoisted_10 = { class: \"col-12\" }\nconst _hoisted_11 = { class: \"checkbox-button\" }\nconst _hoisted_12 = [\"onUpdate:modelValue\"]\nconst _hoisted_13 = { class: \"checkbox-elmt\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_15 = { class: \"checkbox-text\" }\nconst _hoisted_16 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4 mb-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Communications from chosen Committees will be sent to your chosen email for communications address.\")\n], -1))\nconst _hoisted_17 = { class: \"right-side\" }\nconst _hoisted_18 = { class: \"box\" }\nconst _hoisted_19 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", { class: \"center mb-3\" }, [\n /*#__PURE__*/_createTextVNode(\"Areas of Interest \"),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-family\":\"var(--font-body-text)\",\"font-weight\":\"400\"} }, \"(Optional)\")\n], -1))\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", null, \"Please select the areas of law you are interested in:\", -1))\nconst _hoisted_21 = { class: \"checkboxes\" }\nconst _hoisted_22 = { class: \"row\" }\nconst _hoisted_23 = { class: \"col-12\" }\nconst _hoisted_24 = { class: \"checkbox-button\" }\nconst _hoisted_25 = [\"onUpdate:modelValue\"]\nconst _hoisted_26 = { class: \"checkbox-elmt\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark-box\" }, [\n /*#__PURE__*/_createElementVNode(\"span\", { class: \"checkmark\" })\n], -1))\nconst _hoisted_28 = { class: \"checkbox-text\" }\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"mt-4\",\n style: {\"display\":\"flex\",\"align-items\":\"center\"}\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fa fa-info-circle mr-3\" }),\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Please note: This information will be used to help improve the relevant email and web content.\")\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _hoisted_6,\n _hoisted_7,\n _createElementVNode(\"div\", _hoisted_8, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.sortedPreferences, (e) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_9, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"label\", _hoisted_11, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((e.isSelected) = $event)\n }, null, 8, _hoisted_12), [\n [_vModelCheckbox, e.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_13, [\n _hoisted_14,\n _createElementVNode(\"span\", _hoisted_15, _toDisplayString(e.emailPreference.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_16\n ]),\n _createElementVNode(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _hoisted_19,\n _hoisted_20,\n _createElementVNode(\"div\", _hoisted_21, [\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : _createCommentVNode(\"\", true),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(this.strAppFormData.preferenceDetail?.recordAreaOfInterests, (a) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_22, [\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"label\", _hoisted_24, [\n _withDirectives(_createElementVNode(\"input\", {\n type: \"checkbox\",\n \"onUpdate:modelValue\": $event => ((a.isSelected) = $event)\n }, null, 8, _hoisted_25), [\n [_vModelCheckbox, a.isSelected]\n ]),\n _createElementVNode(\"div\", _hoisted_26, [\n _hoisted_27,\n _createElementVNode(\"span\", _hoisted_28, _toDisplayString(a.areaOfInterest.name), 1)\n ])\n ])\n ])\n ]))\n }), 256))\n ])\n ]),\n _hoisted_29\n ])\n ]))\n ]))\n}","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { EventEmitter } from \"events\";\nimport store from \"@/shared/store\";\nimport { Application } from \"@/shared/modules/typescript-api-client/models\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport LoadingIndicator from '@/shared/components/loading-indicator/index.vue';\nimport { orderBy } from \"lodash\";\n\n@Options({\n props: {\n strAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n})\nexport default class StrPreferences extends Vue {\n private strAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private loadingDataSet = false;\n\n private emailPreferencesList: any[] = [];\n private areaOfInterestsList: any[] = [];\n\n private errorLoadingDataSet = false;\n\n private recordAreaOfInterests: any[] = [];\n private recordEmailPreferences: any[] = [];\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.getCheckBoxesList();\n }\n\n private async getCheckBoxesList() {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n this.apiService.StudentRenewApi?.apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet(this.onlineApplication.id)\n .then(res => {\n this.loadingDataSet = false;\n this.strAppFormData.preferenceDetail = res.data.data;\n })\n .catch(err => {\n this.errorLoadingDataSet = true;\n this.loadingDataSet = false;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n })\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get sortedPreferences() {\n return orderBy(this.strAppFormData.preferenceDetail?.recordEmailPreferences, ['emailPreference.sortOrder'], 'asc');\n }\n \n}\n\n","import { render } from \"./str-preferences.html?vue&type=template&id=4e12ff59&scoped=true&ts=true\"\nimport script from \"./str-preferences.ts?vue&type=script&lang=ts\"\nexport * from \"./str-preferences.ts?vue&type=script&lang=ts\"\n\nimport \"./str-preferences.scss?vue&type=style&index=0&id=4e12ff59&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4e12ff59\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-42bb8a1d\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-declaration\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h4\", null, \"Declarations\", -1))\nconst _hoisted_3 = {\n key: 1,\n class: \"col-12 declarations mt-4\"\n}\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"ul\", { style: {\"list-style-type\":\"lower-alpha\"} }, [\n /*#__PURE__*/_createElementVNode(\"li\", null, \"The contents of this application are true and correct; and\"),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createTextVNode(\"I have read the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"link\",\n href: \"https://www.lawsociety.com.au/privacy-policy/personal-information-collection-notice\",\n target: \"_blank\"\n }, \"Personal Information Collection Notice\"),\n /*#__PURE__*/_createTextVNode(\" and consent to The Law Society of New South Wales collection, use and disclosure of information in accordance with that Notice.\")\n ])\n], -1))\n\nexport function render(_ctx, _cache) {\n const _component_LoadingIndicator = _resolveComponent(\"LoadingIndicator\")\n\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _hoisted_2,\n (_ctx.loadingDataSet)\n ? (_openBlock(), _createBlock(_component_LoadingIndicator, { key: 0 }))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _createTextVNode(\" By clicking “Next” I declare that: \"),\n _hoisted_4\n ]))\n ]))\n}","import { Options, Vue, Watch } from \"vue-property-decorator\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/loading-indicator\";\nimport DatePicker from 'vue-datepicker-next';\nimport { Application, StudentRenewRecordDeclarationRequest } from \"@/shared/modules/typescript-api-client/models\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\n\n@Options({\n props: {\n strAppFormData: Object,\n isSectionLoading: Boolean,\n },\n emits: ['update:isSectionLoading'],\n components: {\n LoadingIndicator,\n DatePicker,\n }\n})\nexport default class StrDeclaration extends Vue {\n private strAppFormData!: any;\n private isSectionLoading!: boolean;\n\n private ai = new AppInsights;\n\n private loadingDataSet = false;\n\n @Watch('loadingDataSet')\n private sectionLoading() {\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n }\n\n mounted() {\n this.strAppFormData.strDeclarations = {};\n this.$emit('update:isSectionLoading', this.loadingDataSet);\n window.scrollTo(0, 0);\n this.updateStrDeclaration();\n }\n\n private updateStrDeclaration() {\n const _strDeclaration: StudentRenewRecordDeclarationRequest = {\n id: 0,\n studentRenewApplicationId: this.strAppFormData.studentRecord?.studentRenewApplicationId,\n }\n this.strAppFormData.strDeclarations = _strDeclaration;\n this.canGoNextCheck();\n }\n\n private isValidForm(): boolean {\n return true;\n }\n\n private canGoNextCheck() {\n this.eventCtrl.emit('canGoNext', this.isValidForm());\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n}\n\n\n","import { render } from \"./str-declaration.html?vue&type=template&id=42bb8a1d&scoped=true&ts=true\"\nimport script from \"./str-declaration.ts?vue&type=script&lang=ts\"\nexport * from \"./str-declaration.ts?vue&type=script&lang=ts\"\n\nimport \"./str-declaration.scss?vue&type=style&index=0&id=42bb8a1d&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-42bb8a1d\"]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-fe78133e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"str-confirmation\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h3\", null, \"Confirmation\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"confirmation-header\" }, \" Your application was successfully received \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"body\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", null, \"Thank you for submitting your online application, you will receive a confirmation email in your inbox shortly \"),\n /*#__PURE__*/_createElementVNode(\"p\"),\n /*#__PURE__*/_createElementVNode(\"div\", null, [\n /*#__PURE__*/_createTextVNode(\"If you have any questions regarding your application please \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.lawsociety.com.au/contact-us\",\n target: \"_blank\",\n class: \"link\"\n }, \"contact us\")\n ])\n], -1))\nconst _hoisted_5 = [\n _hoisted_2,\n _hoisted_3,\n _hoisted_4\n]\n\nexport function render(_ctx, _cache) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, _hoisted_5))\n}","// import store from \"@/shared/store\";\nimport {Options, Vue} from \"vue-property-decorator\";\n\n@Options({\n components: {}\n})\nexport default class StrConfirmation extends Vue {\n\n mounted(): void {\n window.sessionStorage.removeItem('strAppFormData');\n // store.dispatch('setAppRenew', null);\n }\n \n}\n\n","import { render } from \"./str-confirmation.html?vue&type=template&id=fe78133e&scoped=true&ts=true\"\nimport script from \"./str-confirmation.ts?vue&type=script&lang=ts\"\nexport * from \"./str-confirmation.ts?vue&type=script&lang=ts\"\n\nimport \"./str-confirmation.scss?vue&type=style&index=0&id=fe78133e&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fe78133e\"]])\n\nexport default __exports__","import { Inject, Options, Vue, Watch } from \"vue-property-decorator\";\nimport SwipeStepper from \"@/shared/components/swipe-stepper/index.vue\";\nimport LoadingSpinner from \"@/shared/components/loading-spinner/index.vue\";\nimport { RouteN } from \"@/shared/constants/route-name\";\nimport store from \"@/shared/store\";\nimport { EventEmitter } from \"events\";\nimport { NavStep, NavStepStatusID, Section, Step } from \"@/shared/components/header-stepper/nav-step\";\nimport { MARSApi } from \"@/shared/modules/mars-api\";\nimport { AppInsights } from \"@/mars-app/appInsights\";\nimport LoadingIndicator from \"@/shared/components/loading-indicator/index.vue\";\nimport { Application, PageContent } from \"@/shared/modules/typescript-api-client/models\";\nimport { PopoverView } from \"@/shared/components/popover/popover\";\nimport FormatDateTimeMixin from '@/shared/mixins/format-datetime';\nimport ConfirmDialogue from '@/shared/components/confirm-dialogue/index.vue';\nimport StrEligibility from \"../str-eligibility/index.vue\";\nimport StrApplicantDetails from \"../str-applicant-details/index.vue\";\nimport StrPreferences from \"../str-preferences/index.vue\";\nimport StrDeclaration from \"../str-declaration/index.vue\";\nimport StrConfirmation from \"../str-confirmation/index.vue\";\n\n@Options({\n components: {\n LoadingSpinner,\n SwipeStepper,\n StrEligibility,\n StrApplicantDetails,\n StrPreferences,\n StrDeclaration,\n StrConfirmation,\n ConfirmDialogue,\n LoadingIndicator,\n },\n mixins: [FormatDateTimeMixin],\n beforeRouteEnter(to: any, from: any, next: any) {\n const onlineApplication = store.getters.getOnlineApplication;\n if (!onlineApplication.id) {\n console.log('Invalid Page entry: ', to);\n next({ name: RouteN.Mars.Home.n });\n } else {\n next();\n }\n }\n})\nexport default class StrApplication extends Vue {\n private ai = new AppInsights;\n\n @Watch('$route')\n public OnRouteChange(val: any, oldVal: any): void {\n const _stored = store.getters.getStrAppFormData;\n window.scrollTo(0, 0);\n if (oldVal.fullPath.indexOf('confirmation') > -1 || _stored == null) {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n this.setCurrentStep();\n }\n\n @Inject({ from: 'apiService', default: new MARSApi() })\n private apiService!: MARSApi;\n\n private sectionName = '';\n\n private backButtonVisible = true;\n private canGoNext = false;\n\n private backButtonText = 'Back';\n private nextButtonText = 'Next';\n\n private navSteps = [\n new NavStep(Step.eligibility, Section.eligibility),\n new NavStep(Step.applicantDetails, Section.applicantDetails),\n new NavStep(Step.preferences, Section.preferences),\n new NavStep(Step.declaration, Section.declaration),\n new NavStep(Step.confirmation, Section.confirmation),\n ];\n\n private isLoadingData = false;\n private isSectionLoading = false;\n\n private strAppFormData: any = {};\n\n private sessionId = new Date().getTime() + '';\n\n private isSaving = false;\n private popovers: any[] = [];\n private popoverKeys: string[] = [];\n\n private allPageContents: PageContent = {};\n private loadingDataSet = true;\n private errorLoadingDataSet = false;\n\n private checkingConcurrency = false;\n private helpContent: PageContent = {};\n\n mounted(): void {\n document.body.classList.remove('modal-open');\n const _onlineApp: Application = store.getters.getOnlineApplication;\n const _section: any = this.$route.query.sec || '';\n this.sectionName = _section;\n\n if (!_onlineApp.id) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Invalid Page entry, please choose an option from Portal home');\n this.$router.push({ name: RouteN.Mars.Home.n });\n } else {\n window.scrollTo(0, 0);\n this.setCurrentStep();\n\n this.eventCtrl.on('canGoNext', this.updateCanGoNext);\n // window.addEventListener('message', this.receivedNotification);\n\n this.checkingConcurrency = true;\n this.checkConcurrentApplication(this.onlineApplication);\n this.loadPageContents();\n }\n }\n\n beforeUnmount(): void {\n this.eventCtrl.removeListener('canGoNext', this.updateCanGoNext);\n // window.removeEventListener('message', this.receivedNotification);\n }\n\n // private receivedNotification(event: any): void {\n\n // const action = event?.data?.action;\n // const validOrigin = event?.origin == PAYMENTAPP_URL;\n // const validSessionId = event?.data?.sessionId == this.sessionId;\n // const validPaymentApp = this.paymentAppName == event?.data?.paymentAppName;\n\n // // console.log('Received Notifications -- MARSApp');\n // // console.log(action);\n // // console.log(event?.origin, PAYMENTAPP_URL);\n // // console.log(event?.data?.sessionId, this.sessionId);\n // // console.log(event?.data?.paymentAppName, this.paymentAppName);\n // // console.log('failed verification', !validOrigin , !validSessionId , !validPaymentApp);\n // if (!validOrigin || !validSessionId || !validPaymentApp) {\n // return;\n // }\n\n // this.processNotification(action, event?.data?.data);\n // }\n\n // private processNotification(request: string, dataO: any = null): void {\n // switch(request) {\n // case 'cancel-payment':\n // this.eventCtrl.emit('cancel-sm-application-payment');\n // break;\n // case 'payment-processed':\n // this.paymentConfirmed();\n // break;\n // case 'parent-close-state':\n // this.disablePaymentPopupCloseBut = dataO.disabled;\n // break;\n // case 'close-payment-form':\n // this.showPaymentPopup = false;\n // this.validPaymentPage = false;\n // this.disablePaymentPopupCloseBut = false;\n // break;\n // case 'payment-form-isReady':\n // this.validPaymentPage = true;\n // break;\n // }\n // }\n\n private updateCanGoNext(val: boolean): void {\n if (val) {\n this.canGoNext = true;\n } else {\n this.canGoNext = false;\n }\n }\n\n private setCurrentStep(): void {\n const _section: string = this.$route.query.sec as string;\n // if (_section !== Section.details) {\n // this.backButtonText = 'Back';\n // } else {\n // this.backButtonText = 'Cancel application'\n // }\n\n if (!_section) {\n this.backButtonText = 'Back';\n this.nextButtonText = 'Next';\n }\n\n switch (_section) {\n case Section.eligibility:\n this.setSteps(0);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.applicantDetails:\n this.setSteps(1);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.preferences:\n this.setSteps(2);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.declaration:\n this.setSteps(3);\n this.backButtonVisible = true;\n this.nextButtonText = 'Next';\n break;\n case Section.confirmation:\n this.setSteps(4);\n this.backButtonVisible = false;\n this.nextButtonText = 'Close';\n break;\n default:\n break;\n }\n }\n\n private setSteps(n: number) {\n this.updateHelpContent(n);\n for (let i = 0; i < this.navSteps.length; i++) {\n this.navSteps[i].status = NavStepStatusID.NotDone\n }\n for (let i = 0; i < n; i++) {\n this.navSteps[i].status = NavStepStatusID.Done\n }\n this.navSteps[n].status = NavStepStatusID.Current\n // the confirmation page\n if (n === 5) {\n for (let i = 0; i < 5; i++) {\n this.navSteps[i].status = NavStepStatusID.Unknown\n }\n } else {\n // save the current step\n // window.sessionStorage.setItem('contractData', JSON.stringify(this.contractData));\n }\n }\n\n private updateHelpContent(n: number) {\n switch (n) {\n case 0:\n this.helpContent = this.$getPopover('Help', 47);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 1:\n this.helpContent = this.$getPopover('Help', 14);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 2:\n this.helpContent = this.$getPopover('Help', 48);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 3:\n this.helpContent = this.$getPopover('Help', 49);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n case 4:\n this.helpContent = this.$getPopover('Help', 50);\n this.eventCtrl.emit('updateHelpContent', this.helpContent);\n break;\n default:\n // this.helpContent = '';\n break;\n }\n }\n\n private goBack() {\n const _section: string = this.$route.query.sec as string;\n\n // if (this.isOverviewPage) {\n // this.$router.push({ name: RouteN.Mars.Home.n});\n // }\n\n switch (_section) {\n case Section.eligibility:\n this.eventCtrl.emit('cancel-str-application');\n break;\n case Section.applicantDetails:\n this.navigate(this.navSteps[0]);\n break;\n case Section.preferences:\n this.navigate(this.navSteps[1]);\n break;\n case Section.declaration:\n this.navigate(this.navSteps[2]);\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n }\n\n private navigate(s: NavStep): void {\n const temp: string = JSON.stringify(this.$route.query);\n const tempJSON = JSON.parse(temp);\n tempJSON.sec = s.routeSecName;\n this.$router.push({ query: tempJSON });\n }\n\n private goNext() {\n store.dispatch('setStrAppFormData', this.strAppFormData);\n const _section = this.$route.query.sec as string;\n\n // if (this.isOverviewPage) {\n // this.checkConcurrentApplication();\n // }\n\n switch (_section) {\n case Section.eligibility:\n this.saveEligibility();\n break;\n case Section.applicantDetails:\n this.saveApplicantDetails();\n break;\n case Section.preferences:\n this.saveStrPreferenceDetailData();\n break;\n case Section.declaration:\n this.saveStrDeclarationsData()\n break;\n case Section.confirmation:\n this.$router.push({ name: RouteN.Mars.Home.n });\n break;\n default:\n break;\n }\n\n }\n\n private checkConcurrentApplication(app: Application) {\n this.apiService.StudentRenewApi?.apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet(app.id, true)\n .then(res => {\n const _strAppFormData = {\n id: app.id,\n origNames: {}\n }\n store.dispatch('setStrAppFormData', _strAppFormData);\n this.$router.push({ name: RouteN.Mars.StrApplication.n, query: { appId: app.id, sec: Section.eligibility } });\n })\n .catch(err => {\n if (err.response?.status == 400 && err.response.data?.errorCode == 10001) {\n this.confirmCancelConcurrentApp();\n }\n }).finally(() => {\n this.checkingConcurrency = false;\n });\n\n }\n\n private async saveEligibility(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.StudentRenewApi?.apiV1StudentRenewSaveStudentRenewRecordEligibilityPost(this.strAppFormData.studentRecord);\n this.eventCtrl.emit('show-snackbar', 'success', 'Application details saved');\n this.navigate(this.navSteps[1]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Application details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveApplicantDetails(): Promise {\n this.isSaving = true;\n try {\n await this.apiService.StudentRenewApi?.apiV1StudentRenewUpdateStudentRenewIndividualDetailPost(this.strAppFormData.individualDetails);\n this.eventCtrl.emit('show-snackbar', 'success', 'Applicant details saved');\n this.navigate(this.navSteps[2]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save Application details: ' + err);\n this.ai.trackException('Error, Unable to save Applicant details: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n\n private async saveStrPreferenceDetailData() {\n this.isSaving = true;\n try {\n this.isSaving = true;\n await this.apiService.StudentRenewApi?.apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost(this.strAppFormData.preferenceDetail);\n this.eventCtrl.emit('show-snackbar', 'success', 'User preference updated');\n this.navigate(this.navSteps[3]);\n } catch (err) {\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to update user preference: ' + err);\n this.ai.trackException('Error, Unable to update user preference: ' + err);\n } finally {\n this.isSaving = false;\n }\n }\n\n private async saveStrDeclarationsData() {\n this.isSaving = true;\n await this.apiService.StudentRenewApi?.apiV1StudentRenewSaveStudentRenewRecordDeclarationPost(this.strAppFormData.strDeclarations)\n .then(() => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'success', 'User declaration saved');\n this.navigate(this.navSteps[4]);\n })\n .catch(err => {\n this.isSaving = false;\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to save user declaration: ' + err);\n this.ai.trackException('Error, Unable to save user declaration: ' + err);\n })\n }\n\n private getPopOverKeys(): void {\n const _keys = [];\n for (let p = 0; p < this.popoverKeys.length; p++) {\n if (this.popoverKeys[p + 1]) {\n const _stringEndAt = this.popoverKeys[p + 1].indexOf('}}--');\n _keys.push(this.popoverKeys[p + 1].substring(0, _stringEndAt));\n }\n }\n this.popoverKeys = _keys;\n }\n\n private getPopover(pKey: string): PopoverView {\n const _popOver = this.popovers.filter(p => {\n return p.popoverKey == pKey;\n })[0];\n return _popOver;\n }\n\n private async loadPageContents() {\n // const _appId = parseInt(this.$route.query.appId as string);\n try {\n this.loadingDataSet = true;\n this.errorLoadingDataSet = false;\n const resp: any[] = await Promise.all([\n this.apiService.PageApi?.apiV1PageGetPagesGet(),\n this.apiService.CodeApi?.apiV1CodeGetContentTypesGet(),\n this.apiService.PageApi?.apiV1PageGetAllPageContentsGet(),\n ]);\n\n for (let p = 0; p < resp[2].data.data.length; p++) {\n this.popovers.push({\n key: resp[2].data.data[p].key.replace('[[', '').replace(']]', '') as string,\n content: resp[2].data.data[p].content as string,\n isShow: resp[2].data.data[p].isShow as boolean,\n title: resp[2].data.data[p].title as string,\n pageId: resp[2].data.data[p].pageId as number,\n })\n }\n this.getPopOverKeys();\n\n store.dispatch('setPopovers', this.popovers);\n } catch (err) {\n this.errorLoadingDataSet = true;\n this.ai.trackException('Error, Unable to load page contents: ' + err);\n this.eventCtrl.emit('show-snackbar', 'error', 'Unable to load page contents' + err);\n } finally {\n this.loadingDataSet = false;\n }\n }\n\n private confirmCancelConcurrentApp() {\n this.loadingDataSet = true;\n const _confirm: any = this.$refs.confirmCancelCurrentDialogue;\n _confirm.show({\n title: 'You are already logged in elsewhere',\n message: 'You can only be logged in on one browser at a time. If you wish to continue here, please select \"Continue\" if not, select \"Cancel\".

Please note that, if you wish to continue on this browser, you will be restarting your application. Do you still wish to continue your application here?
',\n okButton: 'Continue',\n cancelButton: 'Cancel',\n }).then(async (res: any) => {\n if (res) {\n this.clearSessionAndStart();\n }\n else {\n this.$router.push({ name: RouteN.Mars.Home.n });\n }\n })\n }\n\n private async clearSessionAndStart(): Promise {\n try {\n this.loadingDataSet = true;\n await this.apiService.StudentNewApi?.apiV1StudentNewCancelStudentNewApplicationApplicationIdGet(this.onlineApplication.id);\n this.loadingDataSet = false;\n this.navigate(this.navSteps[0]);\n\n } catch {\n this.loadingDataSet = false;\n\n }\n }\n\n // get isOverviewPage(): boolean {\n // return !this.$route.query.sec && this.$route.name == RouteN.Mars.SmApplication.n;\n // }\n\n get $Section() {\n return Section;\n }\n\n get navStepsData(): NavStep[] {\n return this.navSteps;\n }\n\n get eventCtrl(): EventEmitter {\n return store.getters.getEventController;\n }\n\n get onlineApplication(): Application {\n return store.getters.getOnlineApplication;\n }\n\n get currentSection(): string {\n return this.$route.query.sec as string;\n }\n\n}\n\n","import { render } from \"./str-application.html?vue&type=template&id=79d86909&scoped=true&ts=true\"\nimport script from \"./str-application.ts?vue&type=script&lang=ts\"\nexport * from \"./str-application.ts?vue&type=script&lang=ts\"\n\nimport \"./str-application.scss?vue&type=style&index=0&id=79d86909&scoped=true&lang=scss\"\n\nimport exportComponent from \"/home/vsts/work/1/s/spa/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-79d86909\"]])\n\nexport default __exports__","import { RouteN } from '@/shared/constants/route-name';\nimport { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';\nimport Home from '../components/home/index.vue';\nimport Logout from '@/shared/components/logout/index.vue';\nimport AutoLogin from '../components/auto-login/index.vue';\nimport MarsMain from '../components/mars-main/index.vue';\nimport AccessError from '../components/access-error/index.vue';\nimport PcrOverview from '../components/pcr-overview/index.vue';\nimport Pcr from '../components/pcr/index.vue';\nimport PcNoR from '../components/pc-nor/index.vue';\nimport SmApplication from '../components/sm-app/sm-application/index.vue';\nimport SarApplication from '../components/sar-app/sar-application/index.vue';\nimport AmnApplication from '../components/amn-app/amn-application/index.vue';\nimport StnApplication from '../components/stn-app/stn-application/index.vue';\nimport AmrApplication from '../components/amr-app/amr-application/index.vue';\nimport StrApplication from '../components/str-app/str-application/index.vue';\n\nconst routes: Array = [\n {\n path: RouteN.Mars.LoginPage.p,\n name: RouteN.Mars.LoginPage.n,\n component: AutoLogin,\n },\n {\n path: RouteN.Mars.LogoutPage.p,\n name: RouteN.Mars.LogoutPage.n,\n component: Logout,\n },\n {\n path: RouteN.Mars.AccessError.p,\n name: RouteN.Mars.AccessError.n,\n component: AccessError,\n },\n {\n path: '/:pathMatch(.*)*',\n name: 'not-found',\n redirect: RouteN.Mars.Home.n\n },\n {\n path: '/no-access',\n name: 'no-access',\n component: AccessError,\n },\n {\n path: RouteN.Mars.Main.p,\n meta: { requiresAuth: true },\n redirect: { name: RouteN.Mars.Home.n },\n name: RouteN.Mars.Main.n,\n component: MarsMain,\n children: [\n {\n path: RouteN.Mars.Home.p,\n name: RouteN.Mars.Home.n,\n component: Home\n },\n {\n path: RouteN.Mars.PcRenewOverview.p,\n name: RouteN.Mars.PcRenewOverview.n,\n component: PcrOverview\n },\n {\n path: RouteN.Mars.PcRenew.p,\n name: RouteN.Mars.PcRenew.n,\n component: Pcr\n },\n {\n path: RouteN.Mars.PcNoRenew.p,\n name: RouteN.Mars.PcNoRenew.n,\n component: PcNoR\n },\n {\n path: RouteN.Mars.SmApplication.p,\n name: RouteN.Mars.SmApplication.n,\n component: SmApplication\n },\n {\n path: RouteN.Mars.SarApplication.p,\n name: RouteN.Mars.SarApplication.n,\n component: SarApplication\n },\n {\n path: RouteN.Mars.AmnApplication.p,\n name: RouteN.Mars.AmnApplication.n,\n component: AmnApplication\n },\n {\n path: RouteN.Mars.StnApplication.p,\n name: RouteN.Mars.StnApplication.n,\n component: StnApplication\n },\n {\n path: RouteN.Mars.StrApplication.p,\n name: RouteN.Mars.StrApplication.n,\n component: StrApplication\n },\n {\n path: RouteN.Mars.AmrApplication.p,\n name: RouteN.Mars.AmrApplication.n,\n component: AmrApplication\n },\n ]\n },\n]\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes\n})\n\nexport default router\n","import { createApp } from 'vue'\nimport App from './app.vue'\n// import '../registerServiceWorker'\nimport router from './router'\nimport store from '@/shared/store'\nimport { AppInsights } from './appInsights'\nimport VueTippy from 'vue-tippy';\nimport 'tippy.js/dist/tippy.css' // optional for styling\n\nconst appInsights = new AppInsights;\n\nappInsights.loadAppInsights()\nappInsights.trackPageView()\n\ncreateApp(App).use(store).use(router)\n.use(VueTippy, {\n directive: 'tippy', // => v-tippy\n component: 'tippy', // => \n componentSingleton: 'tippy-singleton', // => ,\n defaultProps: {\n placement: 'auto-end',\n allowHTML: true,\n }, // => Global default options * see all props\n}).mount('#app')\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkMARSApp\"] = self[\"webpackChunkMARSApp\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(8946); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","render","_ctx","_cache","_component_SnackBar","_resolveComponent","_component_router_view","_component_SessionExpired","_openBlock","_createElementBlock","_Fragment","_createVNode","store","sessionExpired","_createBlock","key","onClose","$event","_createCommentVNode","EncryptStorage","prefix","storageType","localUrl","result","window","location","href","split","UPDATE_EMAIL_LINK","process","API_URL","IDLE_TIMEOUT","parseInt","TOKEN_REFRESH_TIME","SELF_URL","PAYMENTAPP_URL","SOURCE_BRANCH","STUDENT_EMAIL_VALIDATION_SUFFIX","RouteN","NoAccess","n","p","Mars","Main","Home","PcRenew","PcRenewOverview","PcNoRenew","SmApplication","SarApplication","SaNrApplication","AmnApplication","StnApplication","StrApplication","AmrApplication","LoginPage","LogoutPage","AccessError","Mac","ApplicationContent","ApplicationPages","PageContentList","User","constructor","externalId","email","firstName","lastName","title","userName","lawId","isMember","isPcHolder","securityGroups","roles","_defineProperty","Token","clientId","tokenStr","userId","AuthenticationStatusType","Session","issued","expires","hasExpired","Math","round","Date","getTime","this","AuthorizedUser","user","token","session","authenticationStatus","Unknown","Url","Login","Logout","AuthenticationService","authedUser","axios","globalAxios","headers","checkAuthentication","tokenResp","get","data","LoggedIn","Promise","reject","err","response","status","HttpStatus","NotLogin","BASE_PATH","replace","BaseAPI","configuration","basePath","RequiredError","field","msg","super","AdminApiAxiosParamCreator","apiV1AdminGetPageContainersGet","async","options","localVarPath","localVarUrlObj","URL","baseOptions","localVarRequestOptions","method","localVarHeaderParameter","localVarQueryParameter","query","URLSearchParams","search","set","toString","headersFromBaseOptions","url","pathname","hash","apiV1AdminGetPageContentsPageIdGet","pageId","undefined","encodeURIComponent","String","apiV1AdminGetPagesByPageContainerIdPageContainerIdGet","pageContainerId","apiV1AdminUpdatePageContentPost","body","needsSerialization","JSON","stringify","apiV1AdminUpdatePageContentStatusPost","AdminApiFp","localVarAxiosArgs","axiosRequestArgs","request","AdminApi","then","AmNewApiAxiosParamCreator","apiV1AmNewCancelAmNewApplicationApplicationIdGet","applicationId","apiV1AmNewCheckAmNewConcurrentSessionApplicationIdGet","apiV1AmNewGetAmNewIndividualDetailsApplicationIdIsNewApplicationGet","isNewApplication","apiV1AmNewGetAmNewPaymentDetailsApplicationIdGet","apiV1AmNewGetAmNewPreferenceDetailDataApplicationIdGet","apiV1AmNewGetAmNewRecordCategoryDetailApplicationIdGet","apiV1AmNewGetAmNewRecordCurrentStatusApplicationIdGet","apiV1AmNewGetAmNewRecordDeclarationApplicationIdGet","apiV1AmNewSaveAmNewPreferenceDetailDataPost","apiV1AmNewSaveAmNewRecordCategoryDetailPost","apiV1AmNewSaveAmNewRecordCurrentStatusPost","apiV1AmNewSaveAmNewRecordDeclarationPost","apiV1AmNewSavePaymentDetailsPost","apiV1AmNewUpdateAmNewApplicationDetailPost","apiV1AmNewUpdateAmNewIndividualDetailPost","AmNewApiFp","AmNewApi","AmRenewApiAxiosParamCreator","apiV1AmRenewCancelAmRenewApplicationApplicationIdGet","apiV1AmRenewCheckAmRenewConcurrentSessionApplicationIdGet","apiV1AmRenewGetAmRenewPreferenceDetailDataApplicationIdGet","apiV1AmRenewGetAmRenewRecordDeclarationApplicationIdGet","apiV1AmRenewGetIndividualDetailsApplicationIdIsNewApplicationGet","apiV1AmRenewGetPaymentDetailsApplicationIdGet","apiV1AmRenewSaveAmRenewPreferenceDetailDataPost","apiV1AmRenewSaveAmRenewRecordDeclarationPost","apiV1AmRenewSavePaymentDetailsPost","apiV1AmRenewUpdatePersonalDetailPost","AmRenewApiFp","AmRenewApi","ApplicationApiAxiosParamCreator","apiV1ApplicationGetApplicationByIdApplicationIdGet","apiV1ApplicationGetMyApplicationsGet","apiV1ApplicationGetMyPractisingCertificateGet","apiV1ApplicationGetPractisingCertificateFilePcIdGet","pcId","ApplicationApiFp","ApplicationApi","CodeApiAxiosParamCreator","apiV1CodeGetAddressTypesGet","apiV1CodeGetAdmissionPlacesGet","apiV1CodeGetAmNewCategoriesGet","apiV1CodeGetAmNewFileTypesGet","apiV1CodeGetAmRenewFileTypesGet","apiV1CodeGetApplicationStatusesGet","apiV1CodeGetApplicationTypesGet","apiV1CodeGetAreaOfInterestsGet","apiV1CodeGetAreaOfLawsGet","apiV1CodeGetAustralianJurisdictionsGet","apiV1CodeGetBuildingTypesGet","apiV1CodeGetContentTypesGet","apiV1CodeGetCountriesGet","apiV1CodeGetCurrentStatusesGet","apiV1CodeGetDeliveryTypesGet","apiV1CodeGetDxExchangeListGet","apiV1CodeGetEmailPreferencesGet","apiV1CodeGetEmploymentStatusByFirmIdFirmIdGet","firmId","apiV1CodeGetEmploymentStatusByFirmTypeIdFirmTypeIdGet","firmTypeId","apiV1CodeGetFirmTypesGet","apiV1CodeGetGendersGet","apiV1CodeGetNonRenewalReasonGet","apiV1CodeGetPcRenewAddressTypesGet","apiV1CodeGetPcRenewCpdAnswerTypesGet","apiV1CodeGetPcRenewFileTypesGet","apiV1CodeGetQualificationInstitutionsByKeywordSearchPost","apiV1CodeGetRecordTypesGet","apiV1CodeGetSpecAccFileTypesGet","apiV1CodeGetSpecAccNonRenewalReasonsGet","apiV1CodeGetStreetTypesGet","apiV1CodeGetStudentNewFileTypesGet","apiV1CodeGetStudentRenewFileTypesGet","apiV1CodeGetSuburbStatePostcodePost","apiV1CodeGetTitlesGet","apiV1CodeGetTransactionStatusesGet","apiV1CodeSearchFirmsPost","CodeApiFp","CodeApi","FileApiAxiosParamCreator","apiV1FileDeleteFileFileIdDelete","fileId","apiV1FileDownloadStreamFileIdGet","apiV1FileGetFileFileIdGet","apiV1FileSaveAmNewFilePost","apiV1FileSaveAmRenewFilePost","apiV1FileSavePcRenewFilePost","apiV1FileSavePcRenewLinkedApplicationFilePost","apiV1FileSaveSpecAccFilePost","apiV1FileSaveStudentNewFilePost","apiV1FileSaveStudentRenewFilePost","FileApiFp","FileApi","IndividualApiAxiosParamCreator","apiV1IndividualGetIndividualMembershipDetailsGet","apiV1IndividualGetPractisingCertificateDetailsGet","IndividualApiFp","IndividualApi","PageApiAxiosParamCreator","apiV1PageGetAllPageContentsGet","apiV1PageGetPageContentsPageIdGet","apiV1PageGetPagesGet","PageApiFp","PageApi","PaymentApiAxiosParamCreator","apiV1PaymentCallbackTransactionPost","apiV1PaymentCheckPaymentStatusTransactionKeyPost","transactionKey","PaymentApiFp","PaymentApi","PcNonRenewApiAxiosParamCreator","apiV1PcNonRenewCancelPcRenewApplicationApplicationIdGet","apiV1PcNonRenewCheckPcRenewConcurrentSessionApplicationIdGet","apiV1PcNonRenewGetIndividualDetailsApplicationIdIsNewApplicationGet","apiV1PcNonRenewGetPaymentDetailsApplicationIdGet","apiV1PcNonRenewGetPcRenewNonRenewalDetailsApplicationIdGet","apiV1PcNonRenewGetPcRenewRecordNonRenewalDeclarationApplicationIdGet","apiV1PcNonRenewSavePaymentDetailsPost","apiV1PcNonRenewSavePostalAddressPcRenewApplicationIdPost","pcRenewApplicationId","apiV1PcNonRenewSaveRecordNonRenewalDeclarationPost","apiV1PcNonRenewSaveRecordNonRenewalDetailsPost","PcNonRenewApiFp","PcNonRenewApi","PcRenewApiAxiosParamCreator","apiV1PcRenewCancelPcRenewApplicationApplicationIdGet","apiV1PcRenewCheckPcRenewConcurrentSessionApplicationIdGet","apiV1PcRenewDeleteNewPracticeDetailsPcRenewApplicationIdRecordPracticeIdDelete","recordPracticeId","apiV1PcRenewGetAdditionalDetailsApplicationIdGet","apiV1PcRenewGetAddressDetailsApplicationIdGet","apiV1PcRenewGetApplicationInfoApplicationIdGet","apiV1PcRenewGetIndividualDetailsApplicationIdIsNewApplicationGet","apiV1PcRenewGetPaymentDetailsApplicationIdGet","apiV1PcRenewGetPcRenewalDetailsApplicationIdGet","apiV1PcRenewGetPracticeByFirmIdFirmIdGet","apiV1PcRenewGetPracticeDetailsApplicationIdGet","apiV1PcRenewGetPreferenceDetailsApplicationIdGet","apiV1PcRenewGetRecordDeclarationApplicationIdGet","apiV1PcRenewGetSarApplicationDeclarationRecordLinkedApplicationIdGet","recordLinkedApplicationId","apiV1PcRenewGetSarRecordLinkedApplicationApplicationIdGet","apiV1PcRenewGetStatutoryRegisterDetailsApplicationIdGet","apiV1PcRenewRevertRecordAddressPcRenewApplicationIdAddressDetailIdPut","addressDetailId","apiV1PcRenewRevertStatutoryRegisterOtherAddressPcRenewApplicationIdAddressDetailIdPut","apiV1PcRenewSaveAdditionalDetailsPost","apiV1PcRenewSaveAddressDetailsPost","apiV1PcRenewSavePaymentDetailsForPracticeEmployerPost","apiV1PcRenewSavePaymentDetailsPost","apiV1PcRenewSavePaymentDetailsWithZeroFeePost","apiV1PcRenewSavePcRenewalDetailsPost","apiV1PcRenewSavePostalAddressPcRenewApplicationIdPost","apiV1PcRenewSavePracticeDetailsPost","apiV1PcRenewSavePreferenceDetailsPost","apiV1PcRenewSaveRecordDeclarationPost","apiV1PcRenewSaveSarApplicationDeclarationPost","apiV1PcRenewSaveSarRecordLinkedApplicationPost","apiV1PcRenewSaveServiceAddressPcRenewApplicationIdPost","apiV1PcRenewSaveStatutoryRegisterDetailsPost","apiV1PcRenewSaveStatutoryRegisterOtherAddressPcRenewApplicationIdPost","apiV1PcRenewSearchFirmsPost","apiV1PcRenewUpdateAdditionalPracticeDetailsPcRenewApplicationIdPost","apiV1PcRenewUpdatePersonalDetailPost","apiV1PcRenewUpdatePrincipalPlacePracticePcRenewApplicationIdRecordPracticeIdPut","PcRenewApiFp","PcRenewApi","SmApiAxiosParamCreator","apiV1SmCancelSmApplicationApplicationIdGet","apiV1SmCheckSmConcurrentSessionApplicationIdGet","apiV1SmGetApplicationDetailsApplicationIdIsNewApplicationGet","apiV1SmGetPaymentDetailsApplicationIdGet","apiV1SmSaveApplicationDetailsPost","apiV1SmSavePaymentDetailsPost","SmApiFp","SmApi","SpecAccNonRenewApiAxiosParamCreator","apiV1SpecAccNonRenewCancelApplicationApplicationIdGet","apiV1SpecAccNonRenewCheckConcurrentSessionApplicationIdGet","apiV1SpecAccNonRenewSaveLeaveOfAbsencePost","apiV1SpecAccNonRenewSaveNonRenewalDetailsPost","SpecAccNonRenewApiFp","SpecAccNonRenewApi","SpecAccRenewApiAxiosParamCreator","apiV1SpecAccRenewCancelApplicationApplicationIdGet","apiV1SpecAccRenewCheckConcurrentSessionApplicationIdGet","apiV1SpecAccRenewCheckPcHolderGet","apiV1SpecAccRenewGetApplicationDeclarationApplicationIdGet","apiV1SpecAccRenewGetPaymentDetailsApplicationIdGet","apiV1SpecAccRenewGetRecordCurrentDetailsApplicationIdIsNewApplicationGet","apiV1SpecAccRenewSaveApplicationDeclarationPost","apiV1SpecAccRenewSaveCurrentDetailsChangedPost","apiV1SpecAccRenewSavePaymentDetailsPost","apiV1SpecAccRenewSaveRenewalDeclarationPost","SpecAccRenewApiFp","SpecAccRenewApi","StudentNewApiAxiosParamCreator","apiV1StudentNewCancelStudentNewApplicationApplicationIdGet","apiV1StudentNewCheckStudentNewConcurrentSessionApplicationIdGet","apiV1StudentNewGetStudentNewPreferenceDetailDataApplicationIdGet","apiV1StudentNewGetStudentNewRecordDeclarationApplicationIdGet","apiV1StudentNewGetStudentNewRecordEligibilityApplicationIdIsNewApplicationGet","apiV1StudentNewGetStudentNewStudentIndividualDetailsApplicationIdGet","apiV1StudentNewSaveStudentNewPreferenceDetailDataPost","apiV1StudentNewSaveStudentNewRecordDeclarationPost","apiV1StudentNewSaveStudentNewRecordEligibilityPost","apiV1StudentNewUpdateStudentNewApplicationDetailPost","apiV1StudentNewUpdateStudentNewIndividualDetailPost","StudentNewApiFp","StudentNewApi","StudentRenewApiAxiosParamCreator","apiV1StudentRenewCancelStudentRenewApplicationApplicationIdGet","apiV1StudentRenewCheckStudentRenewConcurrentSessionApplicationIdGet","apiV1StudentRenewGetStudentRenewPreferenceDetailDataApplicationIdGet","apiV1StudentRenewGetStudentRenewRecordDeclarationApplicationIdGet","apiV1StudentRenewGetStudentRenewRecordEligibilityApplicationIdIsNewApplicationGet","apiV1StudentRenewGetStudentRenewStudentIndividualDetailsApplicationIdGet","apiV1StudentRenewSaveStudentRenewPreferenceDetailDataPost","apiV1StudentRenewSaveStudentRenewRecordDeclarationPost","apiV1StudentRenewSaveStudentRenewRecordEligibilityPost","apiV1StudentRenewUpdateStudentRenewApplicationDetailPost","apiV1StudentRenewUpdateStudentRenewIndividualDetailPost","StudentRenewApiFp","StudentRenewApi","SystemApiAxiosParamCreator","apiV1SystemAuthorizedPingGet","apiV1SystemGetAuthError401Get","apiV1SystemGetAuthError403Get","apiV1SystemGetBaseDateGet","apiV1SystemGetBaseDateUtcGet","apiV1SystemGetBaseDateWebJobGet","apiV1SystemGetGeneratePdfExampleSeqGet","seq","apiV1SystemPingGet","apiV1SystemPingLsApiGet","apiV1SystemPingLsApiPolarisGet","apiV1SystemPingLsApiSchemeApiGet","apiV1SystemSaveLogEntryBusinessPost","apiV1SystemSetConfigCurrentDateDateTimeStringGet","dateTimeString","SystemApiFp","SystemApi","apiV2PcRenewGetPaymentDetailsApplicationIdGet","apiV2PcRenewSavePaymentDetailsPost","apiV2PcRenewUpdateApplicationStatusPut","apiV2SmGetPaymentDetailsApplicationIdGet","apiV2SmSavePaymentDetailsPost","apiV2SpecAccRenewGetPaymentDetailsApplicationIdGet","apiV2SpecAccRenewSavePaymentDetailsPost","MARSApi","PcRenewApiV2","SmApiV2","SpecAccRenewApiV2","snackBarStoreModule","state","snackbar","mutations","setSnackbar","sb","actions","commit","getters","getSnackbar","eventControllerStoreModule","eventController","EventEmitter","getEventController","userAccountStoreModule","authorizedUser","setUserAccount","getUserAccount","appInfoStoreModule","appInfo","setAppInfo","sessionStorage","setItem","getAppInfo","appRenewStoreModule","appRenew","setAppRenew","app","getAppRenew","pcrFormDataStoreModule","pcrFormData","setPcrFormData","fd","getPcrFormData","popOverStoreModule","popovers","setPopovers","getPopovers","countryListStoreModule","countryList","setCountryList","cl","getCountryList","dxExchangeTypeListStoreModule","dxExchangeTypeList","setDxExchangeTypeList","dx","getDxExchangeTypeList","smAppFormDataStoreModule","smAppFormData","setSmAppFormData","getSmAppFormData","onlineApplicationStoreModule","onlineApplication","setOnlineApplication","getOnlineApplication","addressTypeStoreModule","addressTypeList","setAddressTypeList","at","getAddressTypeList","sarAppFormDataStoreModule","sarAppFormData","setSarAppFormData","getSarAppFormData","amnAppFormDataStoreModule","amnAppFormData","setAmnAppFormData","getAmnAppFormData","amrAppFormDataStoreModule","amrAppFormData","setAmrAppFormData","getAmrAppFormData","stnAppFormDataStoreModule","stnAppFormData","setStnAppFormData","getStnAppFormData","strAppFormDataStoreModule","strAppFormData","setStrAppFormData","getStrAppFormData","createStore","modules","eventControllerModule","_withScopeId","_pushScopeId","_popScopeId","_hoisted_1","_createElementVNode","class","_hoisted_2","showSnackbar","ref","_normalizeClass","statusType","_toDisplayString","message","onClick","_withModifiers","close","Snackbar","Vue","args","eventCtrl","show","statusT","stayOnTiming","setTimeout","$refs","timeoutID","mounted","on","beforeUnmount","removeListener","__exports__","_hoisted_3","_hoisted_4","_hoisted_5","_component_AlertBox","showAlert","showCloseBut","goHome","header","_withCtx","footer","_","_hoisted_6","_hoisted_7","_Transition","name","default","$emit","_renderSlot","$slots","_createTextVNode","AlertBox","modalOpened","document","classList","add","remove","__decorate","Options","props","Boolean","SessionExpired","$router","push","components","App","created","apiAxios","create","authApiAxios","authService","gettingToken","interceptors","use","refreshToken","config","Authorization","error","errorCode","emit","apiService","Provide","to","reactive","SnackBar","style","_component_LoadingSpinner","_component_AppCard","_component_LoadingIndicator","isLoadingData","applications","myApplications","downloading","practisingCertificate","myPractisingCertificate","onApply","applyApplicationClicked","onDownload","downloadCertificate","loadingText","AZ_INSTRUMENT_KEY_DESKTOPAPP","appInsights","ApplicationInsights","instrumentationKey","enableAutoRouteTracking","AppInsights","loadAppInsights","trackPageView","trackEvent","eventString","trackException","exception","trackTrace","trackMetric","avg","average","startTrackPage","pageName","stopTrackPage","startTrackEvent","et","flush","LoadingSpinner","_hoisted_8","target","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_54","_hoisted_55","_hoisted_56","_hoisted_57","_hoisted_58","_hoisted_59","_hoisted_60","_hoisted_61","_hoisted_62","_hoisted_63","_hoisted_64","_hoisted_65","_hoisted_66","_hoisted_67","_hoisted_68","_hoisted_69","_hoisted_70","_hoisted_71","_hoisted_72","_hoisted_73","_hoisted_74","_hoisted_75","_hoisted_76","_hoisted_77","_hoisted_78","_hoisted_79","_hoisted_80","_hoisted_81","_hoisted_82","_hoisted_83","_hoisted_84","_hoisted_85","_hoisted_86","_hoisted_87","_hoisted_88","_hoisted_89","_hoisted_90","_hoisted_91","_hoisted_92","_hoisted_93","_hoisted_94","_hoisted_95","_hoisted_96","_hoisted_97","_hoisted_98","_hoisted_99","_hoisted_100","_hoisted_101","_hoisted_102","_hoisted_103","_hoisted_104","_hoisted_105","_hoisted_106","_hoisted_107","_hoisted_108","_component_AlertBoxTypeTwo","myRenewals","length","_renderList","r","applicationType","applicationStatus","lsAppStatus","description","renew","includes","applicationYearName","m","apply","isInRenewalPeriod","disabled","download","showSARMessage","showCloseIcon","AlertBoxTypeTwo","type","AppCard","filter","a","applicationClass","Prop","showLoadingText","LoadingIndicator","isVisible","_cancel","innerHTML","cancelButton","_confirm","okButton","ConfirmDialog","open","opts","resolvePromise","rejectPromise","getApplicationStatus","getMyApplications","dispatch","removeItem","res","catch","ai","showErrorMsg","appId","resp0","resp1","resp2","content","isShow","insertMockData","stringToBlob","bs","byteString","atob","arrayBuffer","ArrayBuffer","int8Array","Uint8Array","i","charCodeAt","blob","Blob","file","base64AsString","documentURL","createObjectURL","downloadLink","createElement","fileName","click","console","log","currentApp","_msg","Inject","from","ConfirmDialogue","Authentication","loginCallback","runAuthCheck","cb","productionAuth","logout","clearBrowserStorages","deleteAllCookies","localStorage","clear","cookies","cookie","eqPos","indexOf","substr","productionVerify","v2","c2","AppAccessPermitted","userAccount","authentication","logoutCallBack","_component_StdPageLayout","_component_PageHeader","_component_PageFooter","showAppMenu","showAccountControl","isExternal","baseYear","currentYear","src","_imports_0","_imports_1","_component_AccountInfoPanel","appName","showCancelAlertBox","alertBoxTitle","alertBoxBody","exitApplication","_component_ApplicationMenu","appAccessPermitted","infoTextRow0","infoTextRow1","onMenuClicked","menuIcon","menuButtonText","mode","showMenu","_withDirectives","goToContactUs","goToFAQ","_vShow","Section","Details","Review","Payment","Prepayment","Confirmation","Add","Update","ApplicationMenuComponent","newContract","UserDefine","goToAboutDCS","required","AccountInfoPanel","addEventListener","clickedElement","removeEventListener","el","dropDownMenuUI","elBut","$route","isConfirmationPage","sec","cancelApplicationClick","selectionTypeClassName","section","isUpdating","Ref","ApplicationMenu","PageHeader","onRouteChanged","setAppName","cancelApplication","cancelSTApplication","env","apiBranch","_pathName","path","_appId","local","dev","sit","isSameBranchName","sourceBranch","Watch","termsUrl","privacyUrl","copyrightYearRange","logoClick","alt","PageFooter","moment","format","StdPageLayout","toUTCString","baseDate","AutoLogin","authCheckCallBack","redirect","AppAccessDenied","IDLESessionManager","doCheckSession","timeoutCallBack","setup","run","workerID","setInterval","checkInterval","stop","clearInterval","resetTimer","registerHooks","ExternalMain","beforeRouteEnter","next","c1","matched","some","record","meta","requiresAuth","fullPath","idleSessionMgr","idleSessionTimeoutCallback","debug","isFixHeader","_component_router_link","_component_Popover","_component_HelpScreen","_component_ConfirmDialogue","contactUs","helpContent","showHelpScreen","faqClicked","htmlContents","h","index","popover","$getPopover","popoverKeys","iconClass","isRenew","value","_vModelRadio","loadingDataSet","backHome","goNext","_directive_tippy","_resolveDirective","preview","interactive","Popover","isClosing","contenteditable","HelpScreen","onEscape","toLowerCase","methods","$addressCleanup","addressToSaved","countryId","countryName","lsAddressId","firmAddMapId","addressTypeId","foreignAddress","buildingName","buildingNumber","buildingTypeId","buildingTypeName","level","streetName","streetNumber","streetTypeId","streetTypeName","postcode","postCodeSuburbId","stateId","stateName","suburbId","suburbName","deliveryTypeId","deliveryTypeName","poBox","dxExchangeTypeId","dxExchangeTypeName","dxNumber","pKey","_popOver","$formatDateTimeTypeA","isoStr","$formatDate","$formatMMYYYY","$formatDateTimeTypeC","$formatDateTimeTypeD","$formatSecToHours","seconds","PcrOverview","scrollTo","loadPageContents","getPopOverKeys","_keys","_stringEndAt","substring","getPopover","popoverKey","errorLoadingDataSet","resp","all","applicationYear","lastApplicationYear","year","lastApplicationYearName","htmlContents_1","PcrWordingData","replaceAll","_pcrFormData","checkConcurrentUsage","pcrApp","confirmCancelConcurrentApp","confirmCancelCurrentDialogue","clearSessionAndStart","mixins","FormatDateTimeMixin","_component_SwipeStepper","_component_PcrCurrentDetails","_component_PcrPracticeRecord","_component_PcrAddressDetails","_component_PcrRenewalDetails","_component_PcrStatutoryRegister","_component_PcrAdditionalDetails","_component_PcrPreferences","_component_PcrSpecialistAccreditation","_component_SarApplicationDeclarations","_component_PcrRenewalDeclarations","_component_PcrPaymentDetails","_component_PcrConfirmation","_component_PcrPracticeRecordAdditionalDetailsPopup","_component_PcrPracticeRecordPppPopup","_component_PaymentPopup","_component_PaymentModal","navSteps","showHelpBtn","showFaqBtn","currentSection","$Section","details","isSectionLoading","address","renewal","register","additional","preferences","specialistAccreditation","applicationDeclarations","renewalDeclarations","payment","confirmation","isSaving","savingText","backButtonVisible","goBack","backButtonText","canGoNext","nextButtonText","practiceRecords","popupPracticeRecords","showPaymentPopup","paymentAppName","cancelEventName","paymentTransaction","disableCloseButton","disablePaymentPopupCloseBut","sessionId","validPaymentPage","processNotification","onPaymentConfirmed","paymentConfirmed","applyInternalPayment","amountPayable","onIsValidCard","updateCCStatus","paymentFormData","_imports_2","s","navigate","visible","routeSecName","faqLink","NavStepStatusID","SwipeStepper","helpContentData","_helpContentData","_section","Done","temp","tempJSON","parse","navigateBack","currentNavStepIndex","z","forEach","x","Current","onNavStepsChanged","scrollToItem","menuInnerBox","mouseIsDown","mouseUp","mouseLeave","mouseMove","updateHelpContent","isDown","startY","pageY","offsetTop","startX","pageX","offsetLeft","scrollLeft","scrollTop","preventDefault","walkX","_menuInnerBox","navItem","querySelector","scroll","distance","fqaLink","Array","navbarText","_component_AddressPreview","_component_PcrCurrentDetailsUpdateModal","isAdmittedInNsw","nswDateOfAdmission","nswAdmissionDateDescription","pcEmpTypeShortDescription","pcConditions","individualDetails","otherName","surname","nameCheck","files","f","originalFileName","communicationEmail","residentialAddress","noTitle","contactPhoneInfoMissing","mobilePhone","phoneAreaCode","phoneNumber","businessPhone","addressMissing","isCurrentDetailCorrect","updateCurrentDetails","noPcHardCopyRequired","_vModelCheckbox","showUpdateDetailsModal","currentDetails","origNames","onReloadCurrentDetails","reloadCurrentDetails","_component_FileDragAndDrop","_component_AddressComponent","formData","titles","t","_vModelSelect","placeholder","maxlength","onChange","_vModelText","trim","isSubmitting","formPhoneNumber","size","emailCheck","isEmailDuplicated","requiredFileUpload","uploading","onFileInputChanged","fileListChanged","numFileLimit","fileSizeLimit","deleteFile","onUpdateAddress","updateAddress","disableCountrySelection","cancel","isDirty","update","onDragover","onDrop","droppedFiles","dragover","onDragleave","dragleave","multiple","accept","acceptedFileTypesOnInput","onFileSelected","selectFile","tabindex","dragAndDropCapable","errorMsg","join","tryAgain","FileDragAndDrop","$guid","determineDragAndDropCapable","currentTarget","selectedFiles","values","dataTransfer","checkSelectedFiles","blur","elm","fileSelector","event","fileList","hasOverSizedFile","hasProhibitedFileType","acceptedFileMineTypeArray","sizeLimit","allowedFileType","S4","random","div","autocomplete","onInput","formDirty","onKeydown","_withKeys","onArrowDown","onArrowUp","onEnter","isSearching","isOpen","suburbList","suburb","selectSuburbFromSearch","arrowCounter","highlightWord","suburbError","focus","PostcodeSearch","onKeywordChange","searchDebounced","suburbStatePostcode","handleClickOutside","debounce","getSuburbPostcodeList","$el","getPostcodeList","getSuburbList","processResult","canSubmit","word","regex","RegExp","postcodeList","_suburb","_normalizeStyle","getAddressEncoded","AddressPreview","addressEncoded","comma","trimLine","txt","selected","_component_PostcodeSearch","countryCheck","country","setCountry","c","newAddress","overseaAddressLabel","foreignAddressCheck","showAddressType","onNewAddressChange","buildingType","buildingTypeChange","buildingTypes","bt","streetNumberCheck","streetNameCheck","streetTypeCheck","streetType","streetTypeChange","streetTypes","st","deliveryTypeList","deliveryTypeCheck","deliveryType","setDeliveryType","dt","poBoxCheck","onUpdateSuburb","updateSuburb","dxNumberCheck","dxExchangeTypeCheck","dxExchangeType","setDxExchangeType","AddressComponent","onAddressChange","onRadioOptionChange","suburbCheck","foreignAddressChange","_validAddressDetails","preLoadData","_countryList","PcrCurrentDetailsUpdateModal","preloadData","pcRenewFileTypes","valid","addressCheck","formValidated","formFirstName","formSurname","formFileUpload","formEmail","uploadAllFiles","fileIdToDelete","confirmDialogue","deleteFileFromServer","splice","upload","allRequests","uploadFile","getNextSeed","fileStr","fileToString","fileExtension","fileDataUrl","seed","newSeed","PcRenewFileTypeId","reader","FileReader","readAsDataURL","onload","onabort","onerror","_firstNameCheck","_otherNameCheck","_surnameCheck","emailRegex","test","PcrCurrentDetails","NaN","sectionLoading","radioButtonChange","_origName","getDetails","_isRenewing","initAddress","emits","_component_PcrPracticeRecordCard","_component_PcrPracticeRecordChangeDetailModal","practiceRecord","onChangeDetails","changeDetails","onRevertDetails","revertDetails","showNoChange","addPractice","showChangeDetailsModal","onUpdate","selectedPracticeRecord","addNew","originalPracticeRecord","newPracticeRecord","isPpp","employmentStatus","getSelectedAddressFromArray","recordPracticeAddresses","getSelectedPhoneNumberFromArray","principal","ceased","firmType","sameEmploymentStatus","effectiveDate","abc","btnTextRevertDelete","PcrPracticeRecordCard","addresses","_selectedAddress","isSelected","isFax","find","businessFax","Number","_component_date_picker","_component_ModalWindow","headerTitleText","addNewPractice","keyword","isFormDirty","practiceList","selectPracticeFromSearch","firmName","noSearchResult","searchAgain","addNewPracticeFromHere","newRecord","isNewlyAdded","firmTypeCheck","loadData","practiceTypeList","isLoadingEmploymentStatus","empStatusCheck","formCheck","employmentStatusList","dateError","disableAfterJulyTheFirst","selectedAddressIndex","setAddressId","addressList","previewAddress","getSelectedPhoneNumber","ModalWindow","PcrPracticeRecordChangeDetailModal","stopSearch","loadPracticeTypeList","getAddressList","getAddressId","item","inlineAddress","getAddressInline","orderBy","getPracticeList","skip","take","practiceType","_firmTypeId","_searchBox","practiceSearch","_rec","_newPracticeRecord","_recordPracticeRequest","selectedAddressId","validAddressDetails","date","practiceAddress","DatePicker","PcrPracticeRecord","loadPracticeRecord","canGoNextCheck","isNew","sortPPP","selectedAddress","showNoChangeCheck","_a","records","_isPpp","_notPpp","_newP","isPrincipalPlace","cardIndex","selectedRecordIndex","additionalPracticeDetailsPopup","_nonCeased","pr","_isCeased","additionalDetailsPopUp","additionDetailsConfirmed","closeModal","NavStep","NotDone","Step","applicationDetails","applicantDetails","eligibility","membershipDetails","associateMembershipCategory","currentStatus","declaration","declarations","_component_PcrAddressDetailsUpdateModal","pcRenewAddressDetails","serviceAddresses","isSelectable","pcRenewAddressTypeId","serviceAddressOption","getAddressDisplay","openEdit","isRevertibleService","revertAddress","isServiceAddressBlank","postalAddresses","postalAddressOption","isRevertiblePostal","isPostalAddressBlank","showUpdateModal","editAddressType","addressToEdit","onReload","reload","PcrAddressDetailsUpdateModal","saveServiceAddress","savePostalAddress","saveOtherAddress","formValid","PcrAddressDetails","onServiceAddressOptionChange","setServiceAddress","onPostalAddressOptionChange","setPostalAddress","getAddresses","isReload","addressTypes","getSelectedAddresses","isRevertible","getAddressLabel","_label","_address","_createStaticVNode","PcrConfirmation","scope","colspan","_component_ErrorIndicator","_component_CurrencyInput","lineItems","lineItem","toCurrency","getPayableItem","amountGstExcluded","gst","total","lsFeeName","showErrorText","membershipAmount","defaultMembershipAmount","specAccRenewalFlag","modelValue","onKeyup","disableInput","paymentDetails","isLifeMember","isPaidByPractice","currency","currencyDisplay","autoDecimalDigits","lMhelpText","inValidPayableItems","helpText","withOutMembership","getTotalFees","getTotalGST","getTotal","ifAnyPaidByPractice","totalAmountPaid","paidItems","unpaidItems","showNotificationBox","inputRef","setValue","useCurrencyInput","watch","errorText","ErrorIndicator","PcrPaymentDetails","onWithOutMembershipChange","removeMembership","getPaymentDetails","isSpecAccWithPracticeEmployer","initSync","noMembership","lsTotal","isLifeTimeMember","syncData","lsGst","lsAmountGstExcluded","itemName","_rtn","toLocaleLowerCase","ccPaymentReady","_check1","_check2","_value","formatter","Intl","NumberFormat","minimumFractionDigits","formattedCurrency","helpTexts","lmMsg","messageType","priority","items","_total","lastApplicationYearFrom","_lastAppYear","effectiveStartDate","paymentToken","CurrencyInput","sortedPreferences","emailPreference","preferenceDetail","recordAreaOfInterests","areaOfInterest","PcrPreferences","getCheckBoxesList","recordLinkedApplication","recordEmailPreferences","_hoisted_109","_hoisted_110","_hoisted_111","_hoisted_112","_hoisted_113","_hoisted_114","_hoisted_115","_hoisted_116","_hoisted_117","_hoisted_118","_hoisted_119","_hoisted_120","_hoisted_121","_hoisted_122","_hoisted_123","_hoisted_124","_hoisted_125","_hoisted_126","_hoisted_127","_hoisted_128","_hoisted_129","_hoisted_130","_hoisted_131","_hoisted_132","_hoisted_133","_hoisted_134","_hoisted_135","_hoisted_136","_hoisted_137","_hoisted_138","_hoisted_139","_hoisted_140","_hoisted_141","_hoisted_142","_hoisted_143","_hoisted_144","_hoisted_145","_hoisted_146","_hoisted_147","_hoisted_148","_hoisted_149","_component_StepIndicator","steps","currentStepIndex","step_1_q_1","radio_step1","isValidatedCheck","step_1_a_1","step_1_a_2","fitAndProperPersonFileList","step_2_q_1","radio_step2","step_2_a_1","step_2_a_2","showCauseEventsFileList","step_3_q_1","radio_step3","step_3_a_1","step_3_a_2","step_3_a_2_c_1_title","check_s3_c1","step_3_a_2_c_1","step_3_a_2_c_1_notice","step_3_a_2_c_2_title","check_s3_c2","step_3_a_2_c_2","step_3_a_2_c_2_note","textarea_1","check_s3_c3","step_3_a_2_c_3","step_3_a_2_c_3_note","atLeastOneRuleSelected","check_s3_c3_1","step_3_a_2_c_3_1","check_s3_c3_2","step_3_a_2_c_3_2","check_s3_c3_3","step_3_a_2_c_3_3","check_s3_c3_4","step_3_a_2_c_3_4","check_s3_c3_5","step_3_a_2_c_3_5","check_s3_c3_6","step_3_a_2_c_3_6","check_s3_c3_7","step_3_a_2_c_3_7","step_3_a_2_c_3_title","textarea_2","step_3_a_2_c_3_footnote","step_3_a_3","step_3_a_3_note","check_1","step_4_c_2a","stepBack","isValidated","nextStep","styleClass","completed","current","StepIndicator","PcrRenewalDetails","currentApplicationYear","onFileListChanged","onCurrentStepIndexChange","onRadioStep1Changed","onRadioStep2Changed","loadRenewDetails","stepIndex","isStep3Valid","_cond1","_cond2","_cond3","pcRenewFileType","renewDetails","fitAndProperFlag","showCauseEventsFlag","pcRenewCpdAnswerTypeId","cpdQuestionFlag1","cpdQuestionFlag2","cpdNonComplianceNote","cpdQuestionExemptionFlag","cpdQuestionExemptionRuleFlag1","cpdQuestionExemptionRuleFlag2","cpdQuestionExemptionRuleFlag3","cpdQuestionExemptionRuleFlag4","cpdQuestionExemptionRuleFlag5","cpdQuestionExemptionRuleFlag6","cpdQuestionExemptionRuleFlag7","cpdQuestionExemptionNote","pcRenewalDeclarationFlag1","fitAndProperFiles","showCauseEventsFiles","_currentAppYear","showStatutoryRegisterDetails","statutoryRegisterDetails","publicationEmail","individualPracticeCertificate","principalPlacePractice","postalAddress","recordPractices","selectedOtherAddress","listItems","toggleOpen","inputDisplay","dropdownOpen","l","idx","clicked","listIndex","htmlText","DropdownSelection","currentIndex","isValid","PcrStatutoryRegister","registerAddressOptionChange","setRegisterAddress","isTesting","_local","_dev","_sit","_uat","loadStatutoryRegisterDetails","pcRenewAddressTypes","recordStatutoryRegisterAddresses","isAddressValid","registerAddressOption","getPcRenewAddressType","_validateEmail","match","_validateAddress","_addressTypes","isStatutoryAddressBlank","saveStatutoryRegister","isRevertibleStatutory","additionalDetails","areaOfLaws","pcRequiredFlag","pppJobTitle","PcrAdditionalDetails","loadAdditionalDetails","_component_PcrPracticeRecordPppCard","newRecords","onPppSelected","pppSelected","pppCheck","isCeased","pppClicked","hasEmploymentStatusChanged","PcrPracticeRecordPppCard","PcrPracticeRecordPppPopup","onPracticeRecordsChange","getPractices","updatePrincipalPlacePractice","_ppp","iFrameLoaded","confirmAlert","paymentAppSRC","PaymentPopup","paymentAppIframe","loadingIFrame","host","tK","sK","secureKey","tO","pApname","confirmCancelPaymentDialogue","contentWindow","postMessage","action","targetOrigin","PaymentTransaction","answer","isSavingData","PcrPracticeRecordAdditionalDetailsPopup","onRecordsChange","updateRecords","setSelectedAddress","updatePracticeDetailsPost","foundIt","effectiveDateCount","_component_AppDeclarationFour","_component_AppDeclarationFive","_component_AppDeclarationThree","_component_AppDeclarationOne","_component_AppDeclarationTwo","isPCHolder","declarationForm","isPcrApp","onDeleteFile","onFormChanged","updateBothHolderDeclaration1","onValidForm","setFormValidationStatus","updateBothHolderDeclaration2","updateBothHolderDeclaration3","updateInterstateHolderDeclaration1","updateInterstateHolderDeclaration2","isValidStep","involvement22","completedCpdPoints22","interstatePCFiles","AppDeclarationOne","pcFileListChanged","isFormValid","$nextTick","interstateMembershipFiles","AppDeclarationTwo","smFileListChanged","selectedOption","adverseActionFiles","AppDeclarationThree","onSelectedOptionChanged","adverseActionFileListChanged","updateOptions","adverseAction1","adverseAction2","selectedOption2","selectedOption3","exemptionReasonFiles","AppDeclarationFour","onSelectedOption2Changed","onSelectedOption3Changed","exemptionReasionFileListChanged","validExemptionForm","validExemptionReasonAndFiles","involvement1","involvement2","involvement21","involvement211","involvement212","extensionStatementFiles","AppDeclarationFive","extensionFileListChanged","validApplyExtensionForm","completedCpdPoints1","completedCpdPoints2","completedCpdPoints21","SarApplicationDeclarations","recordId","sarRecordLinkedApplication","stepsNSWOnly","sarDeclaration","isNswPcHolder","stepsInterstate","isInterstatePcHolder","isInterstateSmHolder","_fileTypeId","isValidForm","declarationFormValid1","declarationFormValid2","declarationFormValid3","declarationFormValid4","declarationFormValid5","fileTypeId","_applicationId","linkedApplicationId","specAccFileTypeId","pcRenewLinkedApplicationFileTypeId","_fileIdToDelete","sarRecordLinkedAreaOfLaws","aol","renewalFlag1","renewalFlag2","renewalFlag21","range","dateRangeSelected","reasons","renewalFlag22","selectedReason","nonRenewalReasons","reason","renewalFlag3","PcrSpecialistAccreditation","onRenewalFlag1Changed","nonRenewalReasonId","onRenewalFlag2Changed","onRenewalFlag21Changed","leaveStartDate","leaveReturnDate","onRenewalFlag22Changed","onSelectedReasonChanged","onRenewalFlag3Changed","onReasonsChanged","onDateRangeSelectedChanged","sarRecordLinkedNonRenewalDetail","nonRenewalReason","sarRecordLinkedLeaveOfAbsence","PcrRenewalDeclarations","getApplicationId","recordDeclarationApplicationId","_component_loadingSpinner","_component_CreditCardPayment","isCreditCardValid","applyPaymentRequested","$convertToDollarValue","v","loadingLibStatus","createPayWayFrameStatus","paywayFrameGuid","reloadPaymentForm","paywayStyle","margin","PUBLISHABLE_API_KEY","slice","CreditCardPayment","startTime","timeout","localDebug","loadPayWayLib","checkPayWayLib","requestToProcessPayment","paywayEl","setAttribute","head","appendChild","isPayWayLibReady","payway","createCreditCardFrame","numberOfTried","numberOfRetry","endTime","removePayWayLib","createPayWayFrame","removeChild","myStyle","publishableApiKey","tokenMode","container","onValid","paymentDeclined","onInvalid","createdCallback","frame","createFrameNumberOfTried","createFrameRetry","removePayWayFrame","creditCardFrame","getElementById","childNodes","destroy","tokenCallback","singleUseTokenId","getToken","PaymentModal","onCreditCardValidChanged","applyPayment","applyPcrPayment","applySarPayment","applySmPayment","errorProcessPayment","CurrencyFormatMixin","Pcr","OnRouteChange","val","oldVal","_stored","setCurrentStep","_appRenew","updateCanGoNext","navigateTo","cardSubmitting","receivedNotification","sectionName","updateStepsUI","isCardSubmitting","validOrigin","origin","validSessionId","validPaymentApp","dataO","setSteps","_confirmation","isSarStatusNew","saveIndividualDetails","saveAddress","savePCRenewalDetails","saveAdditionalDetails","savePreferences","saveSpecialistAccreditation","saveApplicationDeclarations","saveRenewalDeclarations","savePcPaymentDetailsInternal","savePcPaymentDetails","openSurveyWindow","_url","_body","step","confirmPPP","_realCessationStatus","_notCeased","updatePPPandSkip","_recordPracticeId","pppPopup","savePPP","totalCost","reduce","b","isRequiredToOpenPymtApp","removePaymentWindow","updateApplicationStatus","_newlyAdded","reloadPracticeRecord","onSpecAccRenewalFlagChange","onIsSarStatusNewChange","paymentTypes","paymentItems","beforeRouteLeave","_component_PcNorCurrentDetails","_component_PcNorDeclarations","_component_PcNorPaymentDetails","_component_PcNorConfirmation","navStepsData","_component_PcNorAddressDetailsUpdateModal","heading1","saveEmailAsTemp","applyAssociateMember","showPostalAddressUpdateModal","noRenewalReason","noRenewalReasons","effectiveEndDate","firstOfJulyTo30thOfJune","principalInAPractice","practiceClosed","whoHasTheFile","practiceSuccessor","successorName","editPostalAddress","onReadyState","updateAddressComponentState","addressComponentReady","PcNorAddressDetailsUpdateModal","PcNorCurrentDetails","PcNorWordingData","getIndividualDetails","getNoRenewalDetails","tempEmail","noRenewDetails","isPracticePrincipal","isPracticeClosed","whoHasTheFiles","isPracticeSuccessor","isApplyAssociateMembership","declaration1","declaration2","isValidateForm","principleInPracticeIsValid","practiceClosedIsValid","successorPracticeIsValid","isBlank","PcNorDeclarations","PcNorConfirmation","PcNorPaymentDetails","localOW","PcNoR","confirmationPage","savePCNoRenewDetails","saveDeclarations","savePcNoRenewPaymentDetails","isDebugging","navigator","platform","toUpperCase","debugText","_component_SmOverview","_component_SmApplicationDetails","_component_SmPaymentDetails","_component_SmConfirmation","isOverviewPage","SmPaymentDetails","itemMembershipName","SmConfirmation","SmApplicationDetails","getSmIndividualDetails","SmOverview","SmApplicationWording","_onlineApp","checkConcurrentApplication","saveSmApplicationDetails","saveSmPaymentDetails","smIndividualDetails","_component_SarOverview","_component_SarCurrentDetails","_component_SarRenewalDeclarations","_component_SarPaymentDetails","_component_SarConfirmation","sarFAQ","renewingType","noRenewApplyType","reasonSeekingLeave","SarOverview","onRenewingTypeChanged","onNoRenewApplyTypeChanged","onLeaveStartDateChanged","onReasonSeekingLeaveChanged","decision","nonRenewType","leaveOfAbsence","SarApplicationWording","leaveOfAbsenceText","isValidLeaveOfAbsenceForm","isValidNonRenewalForm","area","practice","mainAddress","fullAddress","detailsChanged","SarCurrentDetails","ondetailsChangedOptionChanged","getRecordCurrentDetails","sarApplication","isCurrentDetailsChanged","SarConfirmation","lI","SarPaymentDetails","item1Name","SarRenewalDeclarations","OnSarAppFormDataChange","sarOverview","saveSarCurrentDetails","saveSarApplicationDeclaration","saveSarRenewalDeclaration","saveSarPaymentDetails","applyForleaveOfAbsence","applyForNonRenewal","nonRenewalDetails","sarApplicationId","deep","_component_AmnOverview","_component_AmnApplicantDetails","_component_AmnAssociateMCategory","_component_AmnCurrentStatus","_component_AmnPreferences","_component_AmnDeclarations","_component_AmnPaymentDetails","_component_AmnConfirmation","HeaderStepper","_component_AmnApplicationDetailsUpdateModal","missingSurname","hasNameChanged","missingFiles","missingPreferredName","preferredName","postNominals","missingGender","gender","missingBirthDate","birthDate","missingPlaceOfBirth","birthPlace","missingCountryOfBirth","birthPlaceCountry","missingEmail","workPhone","amNewRecordApplicationYears","readOnly","totalGst","disallowUpdate","disableNote","genderList","disabledAfterToday","dateValidation","AmnApplicationDetailsUpdateModal","getCountyList","getNote","setGender","opt","formBirthPlace","formBirthDate","formBirthCountry","formGender","amNewFileTypeId","today","setHours","note1","note2","shouldContactRegistry","AmnApplicantDetails","amNewApplicationId","hasIndId","correctInfo","_component_AmnAssociateMCategoryOne","_component_AmnAssociateMCategoryTwo","_component_AmnAssociateMCategoryThree","_component_AmnAssociateMCategoryFour","categoryList","currentSelection","categoryDetail","australianJurisdictionsList","formChanged","admissionPlaceList","onIsBusy","isBusy","allowAddJurisdiction","addJurisdictionRow","jurisdictionList","jL","updateData","admissionDate","australianJurisdiction","offJurisdiction","deleteJurisdictionRow","admittedInAustraliaFiles","AmnAssociateMCategoryOne","amNewRecordCategoryDetailJurisdictions","unshift","selectedVal","itemToChk","jurisdiction","admissionPlace","foreignJurisdiction","foreignLawyerFiles","AmnAssociateMCategoryTwo","_component_FirmSearch","firm","label","onUpdateFirm","updateFirm","onAddNewFirm","addNewFirm","jobTitle","firmList","selectFirmFromSearch","addNewFirmFromHere","newFirmName","FirmSearch","isSearchingChange","isOpenChange","onNewFirmNameChange","getFirmList","_firm","AmnAssociateMCategoryThree","isAddNew","isAddNewFirm","_component_InstitutionSearch","legalQualification","institution","qualificationInstitution","onUpdateInstitution","updateInstitution","qualificationInstitutionFiles","showInputField","autoCompInstitution","institutionList","enableAddInstitution","addNewInstitution","showSearchField","manualInstitution","InstitutionSearch","onManualInstitutionChanged","getInstitutionsList","_institution","AmnAssociateMCategoryFour","AmnAssociateMCategory","selectionChange","initData","admissionDateChanged","australianJurisdictionChange","admissionPlaceChange","foreignJurisdictionChange","firmNameChange","jurisdictionChange","jobTitleChange","legalQualificationChange","qualificationInstitutionChange","amNewCategoryId","_admissionDate","_validAustralianJurisdiction","_admittedInAustraliaFiles","_admissionPlaceId","_foreignJurisdiction","_foreignLawyerFiles","_firmId","_jurisdiction","_firmName","_jobTitle","_legalQualification","_qualificationInstitution","_qualificationInstitutionFiles","amnApp","category","selectionOption","AmnPreferences","AmnDeclarations","amrDeclarations","updateAmrDeclaration","_amnDeclaration","amnDeclarations","AmnPaymentDetails","AmnConfirmation","AmnOverview","AmnApplicationWording","currentStatusChange","currentStatusList","otherStatus","AmnCurrentStatus","sortStatus","statuses","list","_otherStatus","sort","localeCompare","saveAmnApplicantDetails","saveAssociateMembershipCategory","saveCurrentStatus","saveAmnPreferenceDetailData","saveAmnDeclarationsData","saveAmnPaymentDetails","checkingConcurrency","_component_StnEligibility","_component_StnApplicantDetails","_component_StnPreferences","_component_StnDeclaration","_component_StnConfirmation","isStudying","StnEligibility","getStudentApplication","studentRecord","eligibilityFlag1","_component_StnApplicantDetailsUpdateModal","nameChangeFiles","nameChanged","missingMobilePhone","missingDOB","missingPostcode","missingInstitution","missingLawDegree","lawDegree","missingStudentNumber","studentNumber","missingStudentEmail","studentEmail","endsWith","studentProofDocumentFiles","missingProofOfEnrolment","proof","studentNewRecordApplicationYears","studentEmailCheck","validateStudentEmail","requiredProofOfEnrolment","StnApplicantDetailsUpdateModal","isEmailValid","onStudentEmailChange","deleteStudentProofFromServerWhenEmailIsValid","formStudentEmail","isProofRequired","studentNewFileType","studentNewFileTypeId","selectInstitutionFromSearch","dateChanged","StnApplicantDetails","studentNewApplicationId","resetStudentProof","StnPreferences","StnDeclaration","stnDeclarations","updateStnDeclaration","_stnDeclaration","StnConfirmation","saveEligibility","saveApplicantDetails","saveStnPreferenceDetailData","saveStnDeclarationsData","_stnAppFormData","finally","_component_AmrMembershipDetails","_component_AmrPreferences","_component_AmrDeclarations","_component_AmrPaymentDetails","_component_AmrConfirmation","currentPageSection","_component_AmrMembershipDetailsUpdateModal","individualMemberShipDetails","membershipPeriod","membershipSubTypeLkpId","membershipSubTypeDescription","AmrMembershipDetailsUpdateModal","amrApp","amRenewFileTypeId","AmrMembershipDetails","amRenewApplicationId","AmrPreferences","AmrDeclarations","_amrDeclaration","AmrPaymentDetails","AmrConfirmation","checkAmrConcurrentUsage","ping","saveAmRenewPersonalDetailsData","saveAmRenewPreferenceDetailData","saveAmRenewDeclarationsData","saveAmrPaymentDetails","_amrAppFormData","_component_StrEligibility","_component_StrApplicantDetails","_component_StrPreferences","_component_StrDeclaration","_component_StrConfirmation","StrEligibility","_component_StrApplicantDetailsUpdateModal","dateOfBirthChanged","StrApplicantDetailsUpdateModal","studentRenewFileTypeId","StrApplicantDetails","studentRenewApplicationId","StrPreferences","StrDeclaration","strDeclarations","updateStrDeclaration","_strDeclaration","StrConfirmation","saveStrPreferenceDetailData","saveStrDeclarationsData","_strAppFormData","routes","component","MarsMain","children","router","createRouter","history","createWebHistory","createApp","VueTippy","directive","componentSingleton","defaultProps","placement","allowHTML","mount","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","deferred","O","chunkIds","fn","notFulfilled","Infinity","fulfilled","j","every","getter","__esModule","d","definition","defineProperty","enumerable","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","bind","__webpack_exports__"],"sourceRoot":""}