@dsivd/prestations-ng 15.5.13 → 16.0.0-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +666 -1
- package/CONTRIBUTING.md +32 -1
- package/ESLINT_MIGRATION_GUIDE.md +1 -1
- package/README.md +6 -0
- package/UPGRADING_V12.md +0 -15
- package/UPGRADING_V13.md +0 -15
- package/UPGRADING_V14.md +8 -26
- package/UPGRADING_V15.md +113 -0
- package/UPGRADING_V16.md +63 -0
- package/abstract-page-component.d.ts +8 -8
- package/directives/currency-formatter.directive.d.ts +4 -1
- package/directives/iban-formatter.directive.d.ts +1 -1
- package/directives/ide-formatter.directive.d.ts +1 -1
- package/directives/ndc-formatter.directive.d.ts +1 -1
- package/dsivd-prestations-ng-v16.0.0-beta1.tgz +0 -0
- package/esm2020/abstract-page-component.mjs +223 -0
- package/esm2020/directives/currency-formatter.directive.mjs +143 -0
- package/{esm2015/directives/formatter.module.js → esm2020/directives/formatter.module.mjs} +8 -8
- package/{esm2015/directives/iban-formatter.directive.js → esm2020/directives/iban-formatter.directive.mjs} +4 -4
- package/{esm2015/directives/ide-formatter.directive.js → esm2020/directives/ide-formatter.directive.mjs} +4 -4
- package/{esm2015/directives/ndc-formatter.directive.js → esm2020/directives/ndc-formatter.directive.mjs} +4 -4
- package/{esm2015/dsivd-prestations-ng.js → esm2020/dsivd-prestations-ng.mjs} +0 -0
- package/{esm2015/foehn-address/address.type.js → esm2020/foehn-address/address.type.mjs} +1 -1
- package/esm2020/foehn-address/foehn-address.module.mjs +55 -0
- package/{esm2015/foehn-address/foehn-display-address.component.js → esm2020/foehn-address/foehn-display-address.component.mjs} +5 -9
- package/esm2020/foehn-address/foehn-input-address.component.mjs +406 -0
- package/esm2020/foehn-address/foehn-input-foreign-locality.component.mjs +66 -0
- package/esm2020/foehn-address/foehn-input-foreign-street.component.mjs +55 -0
- package/esm2020/foehn-agenda/calendar.type.mjs +3 -0
- package/esm2020/foehn-agenda/current-week.type.mjs +4 -0
- package/esm2020/foehn-agenda/day-slots.type.mjs +3 -0
- package/esm2020/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.mjs +74 -0
- package/esm2020/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +242 -0
- package/esm2020/foehn-agenda/foehn-agenda.component.mjs +95 -0
- package/esm2020/foehn-agenda/foehn-agenda.module.mjs +62 -0
- package/esm2020/foehn-agenda/pagination-week.type.mjs +3 -0
- package/esm2020/foehn-agenda/selected-slot.type.mjs +3 -0
- package/esm2020/foehn-autocomplete/foehn-autocomplete.component.mjs +608 -0
- package/esm2020/foehn-autocomplete/foehn-autocomplete.module.mjs +40 -0
- package/esm2020/foehn-boolean/foehn-boolean-checkbox.component.mjs +28 -0
- package/esm2020/foehn-boolean/foehn-boolean-radio.component.mjs +40 -0
- package/esm2020/foehn-boolean/foehn-boolean.module.mjs +33 -0
- package/esm2020/foehn-breadcrumb/breadcrumb-event.service.mjs +181 -0
- package/{esm2015/foehn-breadcrumb/breadcrumb.js → esm2020/foehn-breadcrumb/breadcrumb.mjs} +0 -0
- package/esm2020/foehn-breadcrumb/foehn-breadcrumb.component.mjs +80 -0
- package/esm2020/foehn-breadcrumb/foehn-breadcrumb.module.mjs +19 -0
- package/esm2020/foehn-checkables/foehn-checkable-group.component.mjs +298 -0
- package/esm2020/foehn-checkables/foehn-checkables.module.mjs +68 -0
- package/esm2020/foehn-checkables/foehn-checkbox.component.mjs +37 -0
- package/esm2020/foehn-checkables/foehn-radio.component.mjs +64 -0
- package/esm2020/foehn-checkables/foehn-select.component.mjs +53 -0
- package/{esm2015/foehn-checkables/form-select-option-group.js → esm2020/foehn-checkables/form-select-option-group.mjs} +0 -0
- package/{esm2015/foehn-checkables/form-select-option.js → esm2020/foehn-checkables/form-select-option.mjs} +0 -0
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal-content.js → esm2020/foehn-confirm-modal/foehn-confirm-modal-content.mjs} +1 -1
- package/esm2020/foehn-confirm-modal/foehn-confirm-modal.component.mjs +40 -0
- package/esm2020/foehn-confirm-modal/foehn-confirm-modal.module.mjs +19 -0
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.service.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.service.mjs} +4 -4
- package/esm2020/foehn-date-picker/date-picker-navigation.helper.mjs +167 -0
- package/esm2020/foehn-date-picker/date-picker.helper.mjs +132 -0
- package/{esm2015/foehn-date-picker/day-month.type.js → esm2020/foehn-date-picker/day-month.type.mjs} +0 -0
- package/{esm2015/foehn-date-picker/focused-day.type.js → esm2020/foehn-date-picker/focused-day.type.mjs} +0 -0
- package/esm2020/foehn-date-picker/foehn-date-picker.component.mjs +387 -0
- package/esm2020/foehn-date-picker/foehn-date-picker.module.mjs +40 -0
- package/{esm2015/foehn-date-picker/month-year.type.js → esm2020/foehn-date-picker/month-year.type.mjs} +0 -0
- package/esm2020/foehn-date-picker-button/foehn-date-picker-button.component.mjs +97 -0
- package/esm2020/foehn-date-picker-button/foehn-date-picker-button.module.mjs +36 -0
- package/esm2020/foehn-debug-summary/foehn-debug-summary.component.mjs +67 -0
- package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.module.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.module.mjs} +7 -7
- package/esm2020/foehn-decision-electronique/foehn-decision-electronique.component.mjs +37 -0
- package/esm2020/foehn-decision-electronique/foehn-decision-electronique.module.mjs +32 -0
- package/esm2020/foehn-footer/foehn-footer.component.mjs +130 -0
- package/{esm2015/foehn-footer/foehn-footer.module.js → esm2020/foehn-footer/foehn-footer.module.mjs} +6 -6
- package/{esm2015/foehn-footer/footer-link.type.js → esm2020/foehn-footer/footer-link.type.mjs} +0 -0
- package/esm2020/foehn-form/foehn-form.component.mjs +135 -0
- package/esm2020/foehn-form/foehn-form.module.mjs +32 -0
- package/esm2020/foehn-form/register-ng-model.service.mjs +23 -0
- package/esm2020/foehn-growl/foehn-growl.component.mjs +44 -0
- package/{esm2015/foehn-growl/foehn-growl.module.js → esm2020/foehn-growl/foehn-growl.module.mjs} +6 -6
- package/{esm2015/foehn-growl/growl-broker.service.js → esm2020/foehn-growl/growl-broker.service.mjs} +5 -5
- package/{esm2015/foehn-growl/growl-message.js → esm2020/foehn-growl/growl-message.mjs} +1 -1
- package/{esm2015/foehn-growl/growl-types.js → esm2020/foehn-growl/growl-types.mjs} +0 -0
- package/esm2020/foehn-header/foehn-header.component.mjs +68 -0
- package/esm2020/foehn-header/foehn-header.module.mjs +21 -0
- package/{esm2015/foehn-header/foehn-skip-link.component.js → esm2020/foehn-header/foehn-skip-link.component.mjs} +5 -8
- package/esm2020/foehn-help-modal/foehn-help-modal.component.mjs +44 -0
- package/esm2020/foehn-help-modal/foehn-help-modal.module.mjs +20 -0
- package/esm2020/foehn-help-modal/foehn-help-modal.type.mjs +2 -0
- package/{esm2015/foehn-icons/abstract-icon-component.js → esm2020/foehn-icons/abstract-icon-component.mjs} +5 -5
- package/esm2020/foehn-icons/foehn-icon-calendar.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-check-square-o.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-check.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-down.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-left.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-right.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-up.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-clock.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-comment-dots.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-edit.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-external-link-alt.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-file-pdf.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-info-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-lock.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-map-marker.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-minus-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-plus-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-plus-square.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-search.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-times.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-trash-alt.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-unlock-alt.component.mjs +19 -0
- package/{esm2015/foehn-icons/foehn-icons.module.js → esm2020/foehn-icons/foehn-icons.module.mjs} +20 -20
- package/esm2020/foehn-input/foehn-input-email.component.mjs +59 -0
- package/esm2020/foehn-input/foehn-input-hidden.component.mjs +55 -0
- package/esm2020/foehn-input/foehn-input-number.component.mjs +276 -0
- package/esm2020/foehn-input/foehn-input-password.component.mjs +52 -0
- package/esm2020/foehn-input/foehn-input-phone.component.mjs +92 -0
- package/{esm2015/foehn-input/foehn-input-string.component.js → esm2020/foehn-input/foehn-input-string.component.mjs} +5 -5
- package/esm2020/foehn-input/foehn-input-text.component.mjs +76 -0
- package/esm2020/foehn-input/foehn-input-textarea.component.mjs +109 -0
- package/esm2020/foehn-input/foehn-input.component.mjs +390 -0
- package/esm2020/foehn-input/foehn-input.module.mjs +93 -0
- package/{esm2015/foehn-input/pattern.const.js → esm2020/foehn-input/pattern.const.mjs} +0 -0
- package/esm2020/foehn-input-date/foehn-input-date.component.mjs +118 -0
- package/esm2020/foehn-input-date-time/foehn-input-date-time.component.mjs +143 -0
- package/esm2020/foehn-input-time/foehn-input-time.component.mjs +74 -0
- package/esm2020/foehn-list/foehn-list.component.mjs +128 -0
- package/esm2020/foehn-list/foehn-list.module.mjs +19 -0
- package/{esm2015/foehn-list/page-change-event.js → esm2020/foehn-list/page-change-event.mjs} +0 -0
- package/esm2020/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +122 -0
- package/{esm2015/foehn-menu-prestation/abstract-menu-page.component.js → esm2020/foehn-menu-prestation/abstract-menu-page.component.mjs} +4 -4
- package/{esm2015/foehn-menu-prestation/abstract-page-from-menu.component.js → esm2020/foehn-menu-prestation/abstract-page-from-menu.component.mjs} +4 -4
- package/esm2020/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs +23 -0
- package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.mjs} +0 -0
- package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item.mjs} +0 -0
- package/esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +71 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +35 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs +51 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-prestation.module.mjs +59 -0
- package/{esm2015/foehn-misc/foehn-abbr.component.js → esm2020/foehn-misc/foehn-abbr.component.mjs} +5 -9
- package/{esm2015/foehn-misc/foehn-misc.module.js → esm2020/foehn-misc/foehn-misc.module.mjs} +5 -5
- package/esm2020/foehn-modal/foehn-modal.component.mjs +94 -0
- package/esm2020/foehn-modal/foehn-modal.module.mjs +21 -0
- package/esm2020/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +268 -0
- package/esm2020/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.mjs +40 -0
- package/esm2020/foehn-nav13/foehn-input-nav13.component.mjs +114 -0
- package/esm2020/foehn-nav13/foehn-input-nav13.module.mjs +32 -0
- package/esm2020/foehn-navigation/foehn-navigation.component.mjs +94 -0
- package/esm2020/foehn-navigation/foehn-navigation.module.mjs +32 -0
- package/esm2020/foehn-navigation/foehn-navigation.service.mjs +303 -0
- package/{esm2015/foehn-notfound/foehn-notfound.component.js → esm2020/foehn-notfound/foehn-notfound.component.mjs} +7 -10
- package/esm2020/foehn-notfound/foehn-notfound.module.mjs +20 -0
- package/{esm2015/foehn-page/foehn-page-counter.component.js → esm2020/foehn-page/foehn-page-counter.component.mjs} +5 -8
- package/esm2020/foehn-page/foehn-page-modal.component.mjs +53 -0
- package/{esm2015/foehn-page/foehn-page-modal.service.js → esm2020/foehn-page/foehn-page-modal.service.mjs} +4 -4
- package/esm2020/foehn-page/foehn-page.component.mjs +218 -0
- package/esm2020/foehn-page/foehn-page.module.mjs +78 -0
- package/{esm2015/foehn-page/foehn-page.service.js → esm2020/foehn-page/foehn-page.service.mjs} +4 -4
- package/esm2020/foehn-recap-section/foehn-recap-section.component.mjs +88 -0
- package/esm2020/foehn-recap-section/foehn-recap-section.module.mjs +20 -0
- package/{esm2015/foehn-recap-section/foehn-recap-section.type.js → esm2020/foehn-recap-section/foehn-recap-section.type.mjs} +0 -0
- package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs} +5 -9
- package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs} +6 -6
- package/esm2020/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +56 -0
- package/esm2020/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs +20 -0
- package/esm2020/foehn-table/foehn-table-column-configuration.mjs +3 -0
- package/esm2020/foehn-table/foehn-table-page-change-event.mjs +3 -0
- package/esm2020/foehn-table/foehn-table.component.mjs +148 -0
- package/esm2020/foehn-table/foehn-table.module.mjs +32 -0
- package/esm2020/foehn-table/tableSort.mjs +3 -0
- package/esm2020/foehn-upload/abstract-foehn-uploader.component.mjs +192 -0
- package/{esm2015/foehn-upload/document-reference.js → esm2020/foehn-upload/document-reference.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +71 -0
- package/{esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.js → esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +174 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs +40 -0
- package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +224 -0
- package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs +40 -0
- package/esm2020/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +83 -0
- package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.type.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.type.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-multi-upload/pending-upload.service.mjs +158 -0
- package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +202 -0
- package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs +44 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.mjs +75 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.mjs +21 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/upload-progress.service.mjs +62 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/upload-progress.type.mjs +3 -0
- package/{esm2015/foehn-upload/pending-upload.type.js → esm2020/foehn-upload/pending-upload.type.mjs} +1 -1
- package/esm2020/foehn-upload/uploader.helper.mjs +327 -0
- package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.component.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.component.mjs} +5 -8
- package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.module.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.module.mjs} +6 -6
- package/esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs +96 -0
- package/esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs +19 -0
- package/esm2020/foehn-validation-alerts/foehn-validation-alerts.component.mjs +29 -0
- package/{esm2015/foehn-validation-alerts/foehn-validation-alerts.module.js → esm2020/foehn-validation-alerts/foehn-validation-alerts.module.mjs} +6 -6
- package/esm2020/form-error.mjs +2 -0
- package/esm2020/form-post-response.mjs +10 -0
- package/{esm2015/gesdem/gesdem-error-handler.service.js → esm2020/gesdem/gesdem-error-handler.service.mjs} +4 -4
- package/esm2020/gesdem/gesdem-event.service.mjs +38 -0
- package/esm2020/gesdem/gesdem-handler.service.mjs +160 -0
- package/esm2020/gesdem/gesdem-loader.guard.mjs +41 -0
- package/{esm2015/gesdem/gesdem-statut-utils.js → esm2020/gesdem/gesdem-statut-utils.mjs} +0 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +101 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +130 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery.module.mjs +50 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery.service.mjs +82 -0
- package/{esm2015/gesdem-action-recovery/reprise-info.js → esm2020/gesdem-action-recovery/reprise-info.mjs} +0 -0
- package/esm2020/gesdem-confirmation/gesdem-confirmation.component.mjs +201 -0
- package/esm2020/gesdem-confirmation/gesdem-confirmation.module.mjs +32 -0
- package/esm2020/gesdem-error/gesdem-error.component.mjs +87 -0
- package/esm2020/gesdem-error/gesdem-error.module.mjs +36 -0
- package/esm2020/global.const.mjs +5 -0
- package/esm2020/helpers/object.helper.mjs +89 -0
- package/{esm2015/i18n-form.js → esm2020/i18n-form.mjs} +0 -0
- package/esm2020/index.mjs +263 -0
- package/{esm2015/pipes/currency.pipe.js → esm2020/pipes/currency.pipe.mjs} +4 -4
- package/{esm2015/pipes/date.pipe.js → esm2020/pipes/date.pipe.mjs} +4 -4
- package/{esm2015/pipes/formatIde.pipe.js → esm2020/pipes/formatIde.pipe.mjs} +3 -3
- package/{esm2015/pipes/pipes.module.js → esm2020/pipes/pipes.module.mjs} +7 -7
- package/{esm2015/prestations-ng-core.module.js → esm2020/prestations-ng-core.module.mjs} +7 -7
- package/esm2020/refinf/model/address-type-light.mjs +3 -0
- package/esm2020/refinf/model/canton.mjs +3 -0
- package/esm2020/refinf/model/district.mjs +3 -0
- package/esm2020/refinf/model/municipality.mjs +3 -0
- package/esm2020/refinf/model/place-of-origin.mjs +3 -0
- package/esm2020/refinf/model/postal-locality.mjs +3 -0
- package/esm2020/sdk-appinfo/application-info.mjs +14 -0
- package/esm2020/sdk-appinfo/application-info.service.mjs +104 -0
- package/{esm2015/sdk-currency/currency.helper.js → esm2020/sdk-currency/currency.helper.mjs} +3 -3
- package/esm2020/sdk-date/date.helper.mjs +100 -0
- package/esm2020/sdk-dictionary/default-dictionary.mjs +166 -0
- package/{esm2015/sdk-dictionary/sdk-dictionary.module.js → esm2020/sdk-dictionary/sdk-dictionary.module.mjs} +5 -5
- package/{esm2015/sdk-dictionary/sdk-dictionary.pipe.js → esm2020/sdk-dictionary/sdk-dictionary.pipe.mjs} +6 -6
- package/esm2020/sdk-dictionary/sdk-dictionary.service.mjs +111 -0
- package/{esm2015/sdk-epayment/model/EPaymentParameters.js → esm2020/sdk-epayment/model/EPaymentParameters.mjs} +0 -0
- package/esm2020/sdk-epayment/sdk-epayment.component.mjs +81 -0
- package/esm2020/sdk-epayment/sdk-epayment.module.mjs +21 -0
- package/esm2020/sdk-epayment/sdk-epayment.service.mjs +52 -0
- package/{esm2015/sdk-recaptcha/grecaptcha/grecaptcha.component.js → esm2020/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs} +6 -10
- package/esm2020/sdk-recaptcha/recaptcha.service.mjs +162 -0
- package/esm2020/sdk-recaptcha/sdk-recaptcha.component.mjs +69 -0
- package/esm2020/sdk-recaptcha/sdk-recaptcha.module.mjs +19 -0
- package/esm2020/sdk-redirect/iam-expired-interceptor.service.mjs +58 -0
- package/esm2020/sdk-redirect/redirect.component.mjs +35 -0
- package/esm2020/sdk-redirect/sdk-redirect.module.mjs +19 -0
- package/{esm2015/sdk-session-info/session-info-data.js → esm2020/sdk-session-info/session-info-data.mjs} +1 -1
- package/{esm2015/sdk-session-info/session-info-with-application.service.js → esm2020/sdk-session-info/session-info-with-application.service.mjs} +5 -5
- package/esm2020/sdk-session-info/session-info.service.mjs +50 -0
- package/esm2020/sdk-statistics/sdk-statistics.service.mjs +70 -0
- package/esm2020/sdk-support-alert/support-alert-container.component.mjs +49 -0
- package/esm2020/sdk-support-alert/support-alert.component.mjs +34 -0
- package/{esm2015/sdk-support-alert/support-alert.model.js → esm2020/sdk-support-alert/support-alert.model.mjs} +0 -0
- package/esm2020/sdk-support-alert/support-alert.module.mjs +21 -0
- package/esm2020/sdk-support-alert/support-alert.service.mjs +117 -0
- package/{esm2015/service-locator.js → esm2020/service-locator.mjs} +0 -0
- package/esm2020/supported-browser.mjs +2 -0
- package/esm2020/validation/validation-handler.service.mjs +44 -0
- package/fesm2015/dsivd-prestations-ng.mjs +13397 -0
- package/fesm2015/dsivd-prestations-ng.mjs.map +1 -0
- package/fesm2020/dsivd-prestations-ng.mjs +13372 -0
- package/fesm2020/dsivd-prestations-ng.mjs.map +1 -0
- package/foehn-address/address.type.d.ts +3 -3
- package/foehn-address/foehn-display-address.component.d.ts +1 -1
- package/foehn-address/foehn-input-address.component.d.ts +18 -8
- package/foehn-address/foehn-input-foreign-locality.component.d.ts +1 -1
- package/foehn-address/foehn-input-foreign-street.component.d.ts +1 -1
- package/foehn-agenda/calendar.type.d.ts +9 -0
- package/foehn-agenda/current-week.type.d.ts +5 -0
- package/foehn-agenda/day-slots.type.d.ts +5 -0
- package/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.d.ts +21 -0
- package/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.d.ts +51 -0
- package/foehn-agenda/foehn-agenda.component.d.ts +29 -0
- package/foehn-agenda/foehn-agenda.module.d.ts +17 -0
- package/foehn-agenda/pagination-week.type.d.ts +5 -0
- package/foehn-agenda/selected-slot.type.d.ts +7 -0
- package/foehn-autocomplete/foehn-autocomplete.component.d.ts +22 -6
- package/foehn-boolean/foehn-boolean-checkbox.component.d.ts +1 -1
- package/foehn-boolean/foehn-boolean-radio.component.d.ts +2 -1
- package/foehn-breadcrumb/breadcrumb-event.service.d.ts +2 -2
- package/foehn-breadcrumb/foehn-breadcrumb.component.d.ts +6 -5
- package/foehn-checkables/foehn-checkable-group.component.d.ts +8 -8
- package/foehn-checkables/foehn-checkables.module.d.ts +3 -1
- package/foehn-checkables/foehn-checkbox.component.d.ts +1 -1
- package/foehn-checkables/foehn-radio.component.d.ts +1 -1
- package/foehn-checkables/foehn-select.component.d.ts +2 -10
- package/foehn-confirm-modal/foehn-confirm-modal-content.d.ts +1 -0
- package/foehn-confirm-modal/foehn-confirm-modal.component.d.ts +2 -2
- package/foehn-date-picker/date-picker-navigation.helper.d.ts +7 -1
- package/foehn-date-picker/date-picker.helper.d.ts +3 -2
- package/foehn-date-picker/foehn-date-picker.component.d.ts +21 -10
- package/foehn-date-picker-button/foehn-date-picker-button.component.d.ts +13 -5
- package/foehn-debug-summary/foehn-debug-summary.component.d.ts +7 -5
- package/foehn-decision-electronique/foehn-decision-electronique.component.d.ts +2 -2
- package/foehn-decision-electronique/foehn-decision-electronique.module.d.ts +2 -1
- package/foehn-footer/foehn-footer.component.d.ts +4 -4
- package/foehn-form/foehn-form.component.d.ts +7 -4
- package/foehn-form/register-ng-model.service.d.ts +9 -0
- package/foehn-growl/foehn-growl.component.d.ts +3 -3
- package/foehn-growl/growl-broker.service.d.ts +1 -1
- package/foehn-header/foehn-header.component.d.ts +7 -7
- package/foehn-header/foehn-skip-link.component.d.ts +2 -2
- package/foehn-help-modal/foehn-help-modal.component.d.ts +1 -1
- package/foehn-help-modal/foehn-help-modal.type.d.ts +4 -0
- package/foehn-icons/abstract-icon-component.d.ts +1 -1
- package/foehn-icons/foehn-icon-calendar.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-check-square-o.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-check.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-down.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-left.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-right.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-up.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-clock.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-comment-dots.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-edit.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-external-link-alt.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-file-pdf.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-info-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-lock.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-map-marker.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-minus-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-plus-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-plus-square.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-search.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-times.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-trash-alt.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-unlock-alt.component.d.ts +1 -1
- package/foehn-input/foehn-input-email.component.d.ts +4 -2
- package/foehn-input/foehn-input-hidden.component.d.ts +1 -1
- package/foehn-input/foehn-input-number.component.d.ts +16 -6
- package/foehn-input/foehn-input-password.component.d.ts +1 -1
- package/foehn-input/foehn-input-phone.component.d.ts +1 -1
- package/foehn-input/foehn-input-string.component.d.ts +1 -1
- package/foehn-input/foehn-input-text.component.d.ts +1 -1
- package/foehn-input/foehn-input-textarea.component.d.ts +5 -2
- package/foehn-input/foehn-input.component.d.ts +25 -9
- package/foehn-input/foehn-input.module.d.ts +9 -6
- package/foehn-input-date/foehn-input-date.component.d.ts +10 -3
- package/foehn-input-date-time/foehn-input-date-time.component.d.ts +29 -0
- package/foehn-input-time/foehn-input-time.component.d.ts +1 -1
- package/foehn-list/foehn-list.component.d.ts +2 -3
- package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +5 -5
- package/foehn-menu-prestation/abstract-menu-page.component.d.ts +1 -1
- package/foehn-menu-prestation/abstract-page-from-menu.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.d.ts +3 -3
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.d.ts +2 -2
- package/foehn-misc/foehn-abbr.component.d.ts +1 -1
- package/foehn-modal/foehn-modal.component.d.ts +2 -3
- package/foehn-modal/foehn-modal.module.d.ts +3 -1
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.d.ts +51 -0
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.d.ts +13 -0
- package/foehn-nav13/foehn-input-nav13.component.d.ts +2 -1
- package/foehn-navigation/foehn-navigation.component.d.ts +2 -2
- package/foehn-navigation/foehn-navigation.service.d.ts +4 -3
- package/foehn-notfound/foehn-notfound.component.d.ts +1 -1
- package/foehn-page/foehn-page-counter.component.d.ts +1 -1
- package/foehn-page/foehn-page-modal.component.d.ts +1 -1
- package/foehn-page/foehn-page-modal.service.d.ts +1 -1
- package/foehn-page/foehn-page.component.d.ts +15 -12
- package/foehn-page/foehn-page.module.d.ts +2 -1
- package/foehn-page/foehn-page.service.d.ts +2 -2
- package/foehn-recap-section/foehn-recap-section.component.d.ts +3 -1
- package/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.d.ts +1 -1
- package/foehn-status-progress-bar/foehn-status-progress-bar.component.d.ts +23 -0
- package/foehn-status-progress-bar/foehn-status-progress-bar.module.d.ts +10 -0
- package/foehn-table/foehn-table-column-configuration.d.ts +18 -0
- package/foehn-table/foehn-table-page-change-event.d.ts +5 -0
- package/foehn-table/foehn-table.component.d.ts +33 -0
- package/foehn-table/foehn-table.module.d.ts +11 -0
- package/foehn-table/tableSort.d.ts +4 -0
- package/foehn-upload/abstract-foehn-uploader.component.d.ts +7 -7
- package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.d.ts +6 -4
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.d.ts +6 -5
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.d.ts +9 -8
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-multi-upload/multi-upload.service.d.ts +6 -4
- package/foehn-upload/foehn-multi-upload/pending-upload.service.d.ts +3 -3
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +7 -4
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.d.ts +19 -0
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.d.ts +11 -0
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.service.d.ts +19 -0
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.type.d.ts +4 -0
- package/foehn-upload/pending-upload.type.d.ts +1 -0
- package/foehn-upload/uploader.helper.d.ts +13 -13
- package/foehn-user-connected-as/foehn-user-connected-as.component.d.ts +2 -2
- package/foehn-validation-alert-summary/foehn-validation-alert-summary.component.d.ts +2 -2
- package/foehn-validation-alerts/foehn-validation-alerts.component.d.ts +4 -4
- package/{error-template.d.ts → form-error.d.ts} +1 -1
- package/form-post-response.d.ts +17 -0
- package/gesdem/gesdem-error-handler.service.d.ts +2 -2
- package/gesdem/gesdem-event.service.d.ts +7 -7
- package/gesdem/gesdem-handler.service.d.ts +8 -6
- package/gesdem/gesdem-loader.guard.d.ts +1 -1
- package/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.d.ts +5 -5
- package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +7 -7
- package/gesdem-action-recovery/gesdem-action-recovery.service.d.ts +3 -3
- package/gesdem-confirmation/gesdem-confirmation.component.d.ts +10 -9
- package/gesdem-error/gesdem-error.component.d.ts +10 -3
- package/gesdem-error/gesdem-error.module.d.ts +2 -1
- package/global.const.d.ts +1 -0
- package/index.d.ts +102 -70
- package/package.json +34 -21
- package/pipes/currency.pipe.d.ts +1 -1
- package/pipes/date.pipe.d.ts +1 -1
- package/pipes/formatIde.pipe.d.ts +1 -1
- package/refinf/model/address-type-light.d.ts +5 -0
- package/refinf/model/canton.d.ts +4 -0
- package/refinf/model/district.d.ts +7 -0
- package/refinf/model/municipality.d.ts +8 -0
- package/refinf/model/place-of-origin.d.ts +9 -0
- package/refinf/model/postal-locality.d.ts +11 -0
- package/schematics/ng-add/index.js +10 -10
- package/schematics/ng-update/migrations/update-13_1_0/index.js +2 -2
- package/schematics/ng-update/migrations/update-13_2_0/index.js +3 -3
- package/schematics/ng-update/migrations/update-13_5_1/index.js +3 -3
- package/schematics/ng-update/migrations/update-14_5_0/index.js +2 -2
- package/schematics/update-karma-config/index.js +2 -2
- package/schematics/utility/migrate-to-karma-coverage.js +3 -3
- package/sdk-appinfo/application-info.d.ts +1 -0
- package/sdk-appinfo/application-info.service.d.ts +4 -4
- package/sdk-dictionary/sdk-dictionary.pipe.d.ts +1 -1
- package/sdk-dictionary/sdk-dictionary.service.d.ts +9 -0
- package/sdk-epayment/sdk-epayment.component.d.ts +6 -16
- package/sdk-epayment/sdk-epayment.service.d.ts +3 -6
- package/sdk-recaptcha/grecaptcha/grecaptcha.component.d.ts +2 -2
- package/sdk-recaptcha/recaptcha.service.d.ts +5 -5
- package/sdk-recaptcha/sdk-recaptcha.component.d.ts +4 -4
- package/sdk-redirect/iam-expired-interceptor.service.d.ts +3 -3
- package/sdk-redirect/redirect.component.d.ts +3 -9
- package/sdk-session-info/session-info-data.d.ts +0 -1
- package/sdk-session-info/session-info.service.d.ts +4 -4
- package/sdk-statistics/sdk-statistics.service.d.ts +22 -0
- package/sdk-support-alert/support-alert-container.component.d.ts +3 -3
- package/sdk-support-alert/support-alert.component.d.ts +1 -1
- package/sdk-support-alert/support-alert.service.d.ts +5 -4
- package/validation/validation-handler.service.d.ts +4 -4
- package/backend-response.d.ts +0 -18
- package/bundles/dsivd-prestations-ng.umd.js +0 -13188
- package/bundles/dsivd-prestations-ng.umd.js.map +0 -1
- package/dsivd-prestations-ng-v15.5.13.tgz +0 -0
- package/dsivd-prestations-ng.d.ts +0 -5
- package/esm2015/abstract-page-component.js +0 -224
- package/esm2015/backend-response.js +0 -10
- package/esm2015/directives/currency-formatter.directive.js +0 -116
- package/esm2015/error-template.js +0 -2
- package/esm2015/foehn-address/foehn-address.module.js +0 -57
- package/esm2015/foehn-address/foehn-input-address.component.js +0 -365
- package/esm2015/foehn-address/foehn-input-foreign-locality.component.js +0 -71
- package/esm2015/foehn-address/foehn-input-foreign-street.component.js +0 -60
- package/esm2015/foehn-autocomplete/foehn-autocomplete.component.js +0 -556
- package/esm2015/foehn-autocomplete/foehn-autocomplete.module.js +0 -42
- package/esm2015/foehn-boolean/foehn-boolean-checkbox.component.js +0 -32
- package/esm2015/foehn-boolean/foehn-boolean-radio.component.js +0 -41
- package/esm2015/foehn-boolean/foehn-boolean.module.js +0 -35
- package/esm2015/foehn-breadcrumb/breadcrumb-event.service.js +0 -182
- package/esm2015/foehn-breadcrumb/foehn-breadcrumb.component.js +0 -85
- package/esm2015/foehn-breadcrumb/foehn-breadcrumb.module.js +0 -19
- package/esm2015/foehn-checkables/foehn-checkable-group.component.js +0 -294
- package/esm2015/foehn-checkables/foehn-checkables.module.js +0 -62
- package/esm2015/foehn-checkables/foehn-checkbox.component.js +0 -40
- package/esm2015/foehn-checkables/foehn-radio.component.js +0 -67
- package/esm2015/foehn-checkables/foehn-select.component.js +0 -66
- package/esm2015/foehn-confirm-modal/foehn-confirm-modal.component.js +0 -42
- package/esm2015/foehn-confirm-modal/foehn-confirm-modal.module.js +0 -19
- package/esm2015/foehn-date-picker/date-picker-navigation.helper.js +0 -117
- package/esm2015/foehn-date-picker/date-picker.helper.js +0 -126
- package/esm2015/foehn-date-picker/foehn-date-picker.component.js +0 -300
- package/esm2015/foehn-date-picker/foehn-date-picker.module.js +0 -42
- package/esm2015/foehn-date-picker-button/foehn-date-picker-button.component.js +0 -74
- package/esm2015/foehn-date-picker-button/foehn-date-picker-button.module.js +0 -38
- package/esm2015/foehn-debug-summary/foehn-debug-summary.component.js +0 -61
- package/esm2015/foehn-decision-electronique/foehn-decision-electronique.component.js +0 -40
- package/esm2015/foehn-decision-electronique/foehn-decision-electronique.module.js +0 -20
- package/esm2015/foehn-footer/foehn-footer.component.js +0 -132
- package/esm2015/foehn-form/foehn-form.component.js +0 -146
- package/esm2015/foehn-form/foehn-form.module.js +0 -20
- package/esm2015/foehn-growl/foehn-growl.component.js +0 -47
- package/esm2015/foehn-header/foehn-header.component.js +0 -73
- package/esm2015/foehn-header/foehn-header.module.js +0 -21
- package/esm2015/foehn-help-modal/foehn-help-modal.component.js +0 -48
- package/esm2015/foehn-help-modal/foehn-help-modal.module.js +0 -20
- package/esm2015/foehn-help-modal/foehn-help-modal.type.js +0 -2
- package/esm2015/foehn-icons/foehn-icon-calendar.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-check-square-o.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-check.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-down.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-left.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-right.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-up.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-clock.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-comment-dots.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-edit.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-external-link-alt.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-file-pdf.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-info-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-lock.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-map-marker.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-minus-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-plus-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-plus-square.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-search.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-times.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-trash-alt.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-unlock-alt.component.js +0 -22
- package/esm2015/foehn-input/foehn-input-email.component.js +0 -55
- package/esm2015/foehn-input/foehn-input-hidden.component.js +0 -57
- package/esm2015/foehn-input/foehn-input-number.component.js +0 -190
- package/esm2015/foehn-input/foehn-input-password.component.js +0 -55
- package/esm2015/foehn-input/foehn-input-phone.component.js +0 -96
- package/esm2015/foehn-input/foehn-input-text.component.js +0 -80
- package/esm2015/foehn-input/foehn-input-textarea.component.js +0 -104
- package/esm2015/foehn-input/foehn-input.component.js +0 -364
- package/esm2015/foehn-input/foehn-input.module.js +0 -82
- package/esm2015/foehn-input-date/foehn-input-date.component.js +0 -94
- package/esm2015/foehn-input-time/foehn-input-time.component.js +0 -79
- package/esm2015/foehn-list/foehn-list.component.js +0 -135
- package/esm2015/foehn-list/foehn-list.module.js +0 -19
- package/esm2015/foehn-menu-prestation/abstract-list-item-detail-page.component.js +0 -122
- package/esm2015/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.js +0 -26
- package/esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.js +0 -75
- package/esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.js +0 -38
- package/esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.js +0 -54
- package/esm2015/foehn-menu-prestation/foehn-menu-prestation.module.js +0 -61
- package/esm2015/foehn-modal/foehn-modal.component.js +0 -100
- package/esm2015/foehn-modal/foehn-modal.module.js +0 -19
- package/esm2015/foehn-nav13/foehn-input-nav13.component.js +0 -98
- package/esm2015/foehn-nav13/foehn-input-nav13.module.js +0 -34
- package/esm2015/foehn-navigation/foehn-navigation.component.js +0 -98
- package/esm2015/foehn-navigation/foehn-navigation.module.js +0 -34
- package/esm2015/foehn-navigation/foehn-navigation.service.js +0 -297
- package/esm2015/foehn-notfound/foehn-notfound.module.js +0 -20
- package/esm2015/foehn-page/foehn-page-modal.component.js +0 -55
- package/esm2015/foehn-page/foehn-page.component.js +0 -214
- package/esm2015/foehn-page/foehn-page.module.js +0 -76
- package/esm2015/foehn-recap-section/foehn-recap-section.component.js +0 -88
- package/esm2015/foehn-recap-section/foehn-recap-section.module.js +0 -20
- package/esm2015/foehn-upload/abstract-foehn-uploader.component.js +0 -192
- package/esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.js +0 -62
- package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.js +0 -168
- package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.js +0 -38
- package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.js +0 -217
- package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.js +0 -38
- package/esm2015/foehn-upload/foehn-multi-upload/multi-upload.service.js +0 -76
- package/esm2015/foehn-upload/foehn-multi-upload/pending-upload.service.js +0 -157
- package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.js +0 -164
- package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.js +0 -42
- package/esm2015/foehn-upload/uploader.helper.js +0 -322
- package/esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.component.js +0 -88
- package/esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.module.js +0 -19
- package/esm2015/foehn-validation-alerts/foehn-validation-alerts.component.js +0 -32
- package/esm2015/gesdem/gesdem-event.service.js +0 -38
- package/esm2015/gesdem/gesdem-handler.service.js +0 -151
- package/esm2015/gesdem/gesdem-loader.guard.js +0 -40
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.js +0 -103
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.js +0 -133
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery.module.js +0 -52
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery.service.js +0 -82
- package/esm2015/gesdem-confirmation/gesdem-confirmation.component.js +0 -194
- package/esm2015/gesdem-confirmation/gesdem-confirmation.module.js +0 -34
- package/esm2015/gesdem-error/gesdem-error.component.js +0 -70
- package/esm2015/gesdem-error/gesdem-error.module.js +0 -34
- package/esm2015/helpers/object.helper.js +0 -88
- package/esm2015/index.js +0 -224
- package/esm2015/sdk-appinfo/application-info.js +0 -14
- package/esm2015/sdk-appinfo/application-info.service.js +0 -111
- package/esm2015/sdk-date/date.helper.js +0 -90
- package/esm2015/sdk-dictionary/default-dictionary.js +0 -80
- package/esm2015/sdk-dictionary/sdk-dictionary.service.js +0 -96
- package/esm2015/sdk-epayment/model/EPaymentRequest.js +0 -3
- package/esm2015/sdk-epayment/sdk-epayment.component.js +0 -113
- package/esm2015/sdk-epayment/sdk-epayment.module.js +0 -21
- package/esm2015/sdk-epayment/sdk-epayment.service.js +0 -46
- package/esm2015/sdk-recaptcha/recaptcha.service.js +0 -162
- package/esm2015/sdk-recaptcha/sdk-recaptcha.component.js +0 -72
- package/esm2015/sdk-recaptcha/sdk-recaptcha.module.js +0 -19
- package/esm2015/sdk-redirect/iam-expired-interceptor.service.js +0 -48
- package/esm2015/sdk-redirect/redirect.component.js +0 -47
- package/esm2015/sdk-redirect/sdk-redirect.module.js +0 -19
- package/esm2015/sdk-session-info/session-info.service.js +0 -44
- package/esm2015/sdk-support-alert/support-alert-container.component.js +0 -53
- package/esm2015/sdk-support-alert/support-alert.component.js +0 -38
- package/esm2015/sdk-support-alert/support-alert.module.js +0 -21
- package/esm2015/sdk-support-alert/support-alert.service.js +0 -113
- package/esm2015/supported-browser.js +0 -2
- package/esm2015/validation/validation-handler.service.js +0 -44
- package/fesm2015/dsivd-prestations-ng.js +0 -11618
- package/fesm2015/dsivd-prestations-ng.js.map +0 -1
- package/sdk-epayment/model/EPaymentRequest.d.ts +0 -5
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { of, Subject } from 'rxjs';
|
|
3
|
-
import { HttpParams } from '@angular/common/http';
|
|
4
|
-
import { BackendResponse } from '../backend-response';
|
|
5
|
-
import { catchError, map, switchMap, tap } from 'rxjs/operators';
|
|
6
|
-
import { GrowlType } from '../foehn-growl/growl-types';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common/http";
|
|
9
|
-
import * as i2 from "../foehn-growl/growl-broker.service";
|
|
10
|
-
import * as i3 from "../validation/validation-handler.service";
|
|
11
|
-
import * as i4 from "@angular/router";
|
|
12
|
-
import * as i5 from "./gesdem-error-handler.service";
|
|
13
|
-
import * as i6 from "../sdk-session-info/session-info.service";
|
|
14
|
-
export class GesdemHandlerService {
|
|
15
|
-
constructor(http, growlService, validationHandlerService, router, route, errorHandlerService, sessionInfo) {
|
|
16
|
-
this.http = http;
|
|
17
|
-
this.growlService = growlService;
|
|
18
|
-
this.validationHandlerService = validationHandlerService;
|
|
19
|
-
this.router = router;
|
|
20
|
-
this.route = route;
|
|
21
|
-
this.errorHandlerService = errorHandlerService;
|
|
22
|
-
this.sessionInfo = sessionInfo;
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
24
|
-
this._updateFormDataSubject = new Subject();
|
|
25
|
-
}
|
|
26
|
-
get prefix() {
|
|
27
|
-
return this._prefix;
|
|
28
|
-
}
|
|
29
|
-
set prefix(prefix) {
|
|
30
|
-
this._prefix = prefix;
|
|
31
|
-
}
|
|
32
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
33
|
-
get lastResponse() {
|
|
34
|
-
return this._lastResponse;
|
|
35
|
-
}
|
|
36
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
37
|
-
get updateFormDataSubject() {
|
|
38
|
-
return this._updateFormDataSubject.asObservable();
|
|
39
|
-
}
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
|
41
|
-
save(form) {
|
|
42
|
-
let url = 'api/validated';
|
|
43
|
-
if (this.prefix) {
|
|
44
|
-
url = `api/${this.prefix}/validated`;
|
|
45
|
-
}
|
|
46
|
-
return this.postToUrl(form, url);
|
|
47
|
-
}
|
|
48
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
|
49
|
-
pdf(form) {
|
|
50
|
-
let url = 'api/pdf';
|
|
51
|
-
if (this.prefix) {
|
|
52
|
-
url = `api/${this.prefix}/pdf`;
|
|
53
|
-
}
|
|
54
|
-
return this.postToUrl(form, url);
|
|
55
|
-
}
|
|
56
|
-
setCaptchaToken(token) {
|
|
57
|
-
this._captchaToken = token;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
*
|
|
61
|
-
* @param reference de la demande
|
|
62
|
-
* @param forceRefreshIfNew allows to force the cleaning if reference is null
|
|
63
|
-
* @returns Observable
|
|
64
|
-
*/
|
|
65
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
66
|
-
require(reference, forceRefreshIfNew) {
|
|
67
|
-
const isNewReference = !!reference &&
|
|
68
|
-
!!this._lastResponse &&
|
|
69
|
-
!!this._lastResponse.meta &&
|
|
70
|
-
this._lastResponse.meta.reference !== reference;
|
|
71
|
-
const refreshOnNoReference = !!forceRefreshIfNew && !reference;
|
|
72
|
-
if (isNewReference || refreshOnNoReference) {
|
|
73
|
-
this._lastResponse = null;
|
|
74
|
-
}
|
|
75
|
-
if (reference && !this._lastResponse) {
|
|
76
|
-
return this.retrieve(reference);
|
|
77
|
-
}
|
|
78
|
-
if (this._lastResponse) {
|
|
79
|
-
this.emitResponse(this._lastResponse);
|
|
80
|
-
}
|
|
81
|
-
return of(true);
|
|
82
|
-
}
|
|
83
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
84
|
-
transmit() {
|
|
85
|
-
let url = 'api/transmission';
|
|
86
|
-
if (this.prefix) {
|
|
87
|
-
url = `api/${this.prefix}/transmission`;
|
|
88
|
-
}
|
|
89
|
-
if (this._lastResponse) {
|
|
90
|
-
url += `?reference=${this._lastResponse.meta.reference}`;
|
|
91
|
-
}
|
|
92
|
-
return this.http.post(url, null).pipe(tap(this.emitResponse.bind(this)), map(() => true), catchError((response) => this.handleGesdemError(null, response)));
|
|
93
|
-
}
|
|
94
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
|
95
|
-
retrieve(reference) {
|
|
96
|
-
let url = 'api';
|
|
97
|
-
if (this.prefix) {
|
|
98
|
-
url = `api/${this.prefix}`;
|
|
99
|
-
}
|
|
100
|
-
url = `${url}/validated/${reference}`;
|
|
101
|
-
return this.http.get(url).pipe(tap(this.emitResponse.bind(this)), map(() => true), catchError((response) => this.handleGesdemError(reference, response)));
|
|
102
|
-
}
|
|
103
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
104
|
-
postToUrl(form, url) {
|
|
105
|
-
if (this._lastResponse && this._lastResponse.meta.reference) {
|
|
106
|
-
url += `?reference=${this._lastResponse.meta.reference}`;
|
|
107
|
-
}
|
|
108
|
-
else if (this._captchaToken) {
|
|
109
|
-
url += `?reCaptchaToken=${this._captchaToken}`;
|
|
110
|
-
}
|
|
111
|
-
const params = !!this.route.snapshot.queryParams.reCaptchaByPassUUID
|
|
112
|
-
? new HttpParams().set('reCaptchaByPassUUID', this.route.snapshot.queryParams.reCaptchaByPassUUID)
|
|
113
|
-
: null;
|
|
114
|
-
return this.http.post(url, form, { params }).pipe(tap(this.emitResponse.bind(this)), catchError((response) => this.handleGesdemError(null, response)), switchMap(() => this.sessionInfo.data.pipe(map(data => !!data))), tap(isConnected => {
|
|
115
|
-
// If the user is connected, display a message to make clear that
|
|
116
|
-
// nothing is lost!
|
|
117
|
-
if (isConnected) {
|
|
118
|
-
this.growlService.addWithType(GrowlType.SUCCESS, 'Vos données ont été sauvegardées');
|
|
119
|
-
}
|
|
120
|
-
}), map(() => true));
|
|
121
|
-
}
|
|
122
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
123
|
-
emitResponse(response) {
|
|
124
|
-
if (!response.meta.critical) {
|
|
125
|
-
this._lastResponse = response;
|
|
126
|
-
this._updateFormDataSubject.next(response.form);
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
this._lastResponse = new BackendResponse();
|
|
130
|
-
this._lastResponse.meta.critical = true;
|
|
131
|
-
}
|
|
132
|
-
this.validationHandlerService.updateErrors(response.errors);
|
|
133
|
-
}
|
|
134
|
-
handleGesdemError(requestedReference,
|
|
135
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
136
|
-
response) {
|
|
137
|
-
const reference = this._lastResponse
|
|
138
|
-
? this._lastResponse.meta.reference
|
|
139
|
-
: requestedReference;
|
|
140
|
-
return this.errorHandlerService.handleGesdemError(this.prefix, reference, response);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
GesdemHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemHandlerService, deps: [{ token: i1.HttpClient }, { token: i2.GrowlBrokerService }, { token: i3.ValidationHandlerService }, { token: i4.Router }, { token: i4.ActivatedRoute }, { token: i5.GesdemErrorHandlerService }, { token: i6.SessionInfo }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
144
|
-
GesdemHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemHandlerService, providedIn: 'root' });
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemHandlerService, decorators: [{
|
|
146
|
-
type: Injectable,
|
|
147
|
-
args: [{
|
|
148
|
-
providedIn: 'root'
|
|
149
|
-
}]
|
|
150
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.GrowlBrokerService }, { type: i3.ValidationHandlerService }, { type: i4.Router }, { type: i4.ActivatedRoute }, { type: i5.GesdemErrorHandlerService }, { type: i6.SessionInfo }]; } });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFHSCxVQUFVLEVBQ2IsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7QUFLdkQsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNZLElBQWdCLEVBQ2hCLFlBQWdDLEVBQ2hDLHdCQUFrRCxFQUNsRCxNQUFjLEVBQ2QsS0FBcUIsRUFDckIsbUJBQThDLEVBQzlDLFdBQXdCO1FBTnhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBQ2hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBMkI7UUFDOUMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFicEMsOERBQThEO1FBQ3RELDJCQUFzQixHQUFpQixJQUFJLE9BQU8sRUFBTyxDQUFDO0lBYS9ELENBQUM7SUFFSixJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FB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LElBQUksZUFBZSxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUMzQztRQUNELElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxpQkFBaUIsQ0FDckIsa0JBQTBCO0lBQzFCLDhEQUE4RDtJQUM5RCxRQUFpQztRQUVqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYTtZQUNoQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNuQyxDQUFDLENBQUMsa0JBQWtCLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLENBQzdDLElBQUksQ0FBQyxNQUFNLEVBQ1gsU0FBUyxFQUNULFFBQVEsQ0FDWCxDQUFDO0lBQ04sQ0FBQzs7aUhBdkxRLG9CQUFvQjtxSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07MkZBRVQsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIEh0dHBDbGllbnQsXG4gICAgSHR0cEVycm9yUmVzcG9uc2UsXG4gICAgSHR0cFBhcmFtc1xufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBCYWNrZW5kUmVzcG9uc2UgfSBmcm9tICcuLi9iYWNrZW5kLXJlc3BvbnNlJztcbmltcG9ydCB7IEdyb3dsQnJva2VyU2VydmljZSB9IGZyb20gJy4uL2ZvZWhuLWdyb3dsL2dyb3dsLWJyb2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgR2VzZGVtRXJyb3JIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZ2VzZGVtLWVycm9yLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZXNzaW9uSW5mbyB9IGZyb20gJy4uL3Nkay1zZXNzaW9uLWluZm8vc2Vzc2lvbi1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgR3Jvd2xUeXBlIH0gZnJvbSAnLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtdHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUhhbmRsZXJTZXJ2aWNlIHtcbiAgICBfcHJlZml4OiBzdHJpbmc7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgX3VwZGF0ZUZvcm1EYXRhU3ViamVjdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBfbGFzdFJlc3BvbnNlOiBCYWNrZW5kUmVzcG9uc2U8YW55PjtcbiAgICBwcml2YXRlIF9jYXB0Y2hhVG9rZW46IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgZ3Jvd2xTZXJ2aWNlOiBHcm93bEJyb2tlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlOiBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIGVycm9ySGFuZGxlclNlcnZpY2U6IEdlc2RlbUVycm9ySGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc2Vzc2lvbkluZm86IFNlc3Npb25JbmZvXG4gICAgKSB7fVxuXG4gICAgZ2V0IHByZWZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJlZml4O1xuICAgIH1cblxuICAgIHNldCBwcmVmaXgocHJlZml4OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcHJlZml4ID0gcHJlZml4O1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgZ2V0IGxhc3RSZXNwb25zZSgpOiBCYWNrZW5kUmVzcG9uc2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sYXN0UmVzcG9uc2U7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBnZXQgdXBkYXRlRm9ybURhdGFTdWJqZWN0KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl91cGRhdGVGb3JtRGF0YVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuICAgIHNhdmUoZm9ybTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGkvdmFsaWRhdGVkJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9L3ZhbGlkYXRlZGA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0VG9VcmwoZm9ybSwgdXJsKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSxAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtbW9kdWxlLWJvdW5kYXJ5LXR5cGVzXG4gICAgcGRmKGZvcm06IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCB1cmwgPSAnYXBpL3BkZic7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fS9wZGZgO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucG9zdFRvVXJsKGZvcm0sIHVybCk7XG4gICAgfVxuXG4gICAgc2V0Q2FwdGNoYVRva2VuKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2FwdGNoYVRva2VuID0gdG9rZW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVmZXJlbmNlIGRlIGxhIGRlbWFuZGVcbiAgICAgKiBAcGFyYW0gZm9yY2VSZWZyZXNoSWZOZXcgYWxsb3dzIHRvIGZvcmNlIHRoZSBjbGVhbmluZyBpZiByZWZlcmVuY2UgaXMgbnVsbFxuICAgICAqIEByZXR1cm5zIE9ic2VydmFibGVcbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHJlcXVpcmUocmVmZXJlbmNlPzogc3RyaW5nLCBmb3JjZVJlZnJlc2hJZk5ldz86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBjb25zdCBpc05ld1JlZmVyZW5jZSA9XG4gICAgICAgICAgICAhIXJlZmVyZW5jZSAmJlxuICAgICAgICAgICAgISF0aGlzLl9sYXN0UmVzcG9uc2UgJiZcbiAgICAgICAgICAgICEhdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEgJiZcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZSAhPT0gcmVmZXJlbmNlO1xuXG4gICAgICAgIGNvbnN0IHJlZnJlc2hPbk5vUmVmZXJlbmNlID0gISFmb3JjZVJlZnJlc2hJZk5ldyAmJiAhcmVmZXJlbmNlO1xuICAgICAgICBpZiAoaXNOZXdSZWZlcmVuY2UgfHwgcmVmcmVzaE9uTm9SZWZlcmVuY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlZmVyZW5jZSAmJiAhdGhpcy5fbGFzdFJlc3BvbnNlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZXRyaWV2ZShyZWZlcmVuY2UpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9sYXN0UmVzcG9uc2UpIHtcbiAgICAgICAgICAgIHRoaXMuZW1pdFJlc3BvbnNlKHRoaXMuX2xhc3RSZXNwb25zZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdHJhbnNtaXQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGkvdHJhbnNtaXNzaW9uJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9L3RyYW5zbWlzc2lvbmA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2xhc3RSZXNwb25zZSkge1xuICAgICAgICAgICAgdXJsICs9IGA/cmVmZXJlbmNlPSR7dGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlfWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgbnVsbCkucGlwZShcbiAgICAgICAgICAgIHRhcCh0aGlzLmVtaXRSZXNwb25zZS5iaW5kKHRoaXMpKSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiB1bmtub3duKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlR2VzZGVtRXJyb3IobnVsbCwgcmVzcG9uc2UpXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnksQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuICAgIHJldHJpZXZlKHJlZmVyZW5jZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGknO1xuICAgICAgICBpZiAodGhpcy5wcmVmaXgpIHtcbiAgICAgICAgICAgIHVybCA9IGBhcGkvJHt0aGlzLnByZWZpeH1gO1xuICAgICAgICB9XG4gICAgICAgIHVybCA9IGAke3VybH0vdmFsaWRhdGVkLyR7cmVmZXJlbmNlfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgICAgICAgIHRhcCh0aGlzLmVtaXRSZXNwb25zZS5iaW5kKHRoaXMpKSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiB1bmtub3duKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlR2VzZGVtRXJyb3IocmVmZXJlbmNlLCByZXNwb25zZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgcG9zdFRvVXJsKGZvcm06IGFueSwgdXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBpZiAodGhpcy5fbGFzdFJlc3BvbnNlICYmIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZSkge1xuICAgICAgICAgICAgdXJsICs9IGA/cmVmZXJlbmNlPSR7dGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlfWA7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5fY2FwdGNoYVRva2VuKSB7XG4gICAgICAgICAgICB1cmwgKz0gYD9yZUNhcHRjaGFUb2tlbj0ke3RoaXMuX2NhcHRjaGFUb2tlbn1gO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gISF0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSURcbiAgICAgICAgICAgID8gbmV3IEh0dHBQYXJhbXMoKS5zZXQoXG4gICAgICAgICAgICAgICAgICAncmVDYXB0Y2hhQnlQYXNzVVVJRCcsXG4gICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSURcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBudWxsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIGZvcm0sIHsgcGFyYW1zIH0pLnBpcGUoXG4gICAgICAgICAgICB0YXAodGhpcy5lbWl0UmVzcG9uc2UuYmluZCh0aGlzKSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogdW5rbm93bikgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdlc2RlbUVycm9yKG51bGwsIHJlc3BvbnNlKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnNlc3Npb25JbmZvLmRhdGEucGlwZShtYXAoZGF0YSA9PiAhIWRhdGEpKSksXG4gICAgICAgICAgICB0YXAoaXNDb25uZWN0ZWQgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElmIHRoZSB1c2VyIGlzIGNvbm5lY3RlZCwgZGlzcGxheSBhIG1lc3NhZ2UgdG8gbWFrZSBjbGVhciB0aGF0XG4gICAgICAgICAgICAgICAgLy8gbm90aGluZyBpcyBsb3N0IVxuICAgICAgICAgICAgICAgIGlmIChpc0Nvbm5lY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyb3dsU2VydmljZS5hZGRXaXRoVHlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIEdyb3dsVHlwZS5TVUNDRVNTLFxuICAgICAgICAgICAgICAgICAgICAgICAgJ1ZvcyBkb25uw6llcyBvbnQgw6l0w6kgc2F1dmVnYXJkw6llcydcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBlbWl0UmVzcG9uc2UocmVzcG9uc2U6IEJhY2tlbmRSZXNwb25zZTxhbnk+KTogdm9pZCB7XG4gICAgICAgIGlmICghcmVzcG9uc2UubWV0YS5jcml0aWNhbCkge1xuICAgICAgICAgICAgdGhpcy5fbGFzdFJlc3BvbnNlID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVGb3JtRGF0YVN1YmplY3QubmV4dChyZXNwb25zZS5mb3JtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZSA9IG5ldyBCYWNrZW5kUmVzcG9uc2UoKTtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLmNyaXRpY2FsID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyU2VydmljZS51cGRhdGVFcnJvcnMocmVzcG9uc2UuZXJyb3JzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZUdlc2RlbUVycm9yKFxuICAgICAgICByZXF1ZXN0ZWRSZWZlcmVuY2U6IHN0cmluZyxcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55XG4gICAgKTogT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgICAgICBjb25zdCByZWZlcmVuY2UgPSB0aGlzLl9sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgID8gdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICA6IHJlcXVlc3RlZFJlZmVyZW5jZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXJTZXJ2aWNlLmhhbmRsZUdlc2RlbUVycm9yKFxuICAgICAgICAgICAgdGhpcy5wcmVmaXgsXG4gICAgICAgICAgICByZWZlcmVuY2UsXG4gICAgICAgICAgICByZXNwb25zZVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { of } from 'rxjs';
|
|
3
|
-
import { FoehnNavigationService } from '../foehn-navigation/foehn-navigation.service';
|
|
4
|
-
import { catchError } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./gesdem-handler.service";
|
|
7
|
-
import * as i2 from "../foehn-navigation/foehn-navigation.service";
|
|
8
|
-
export class GesdemLoaderGuard {
|
|
9
|
-
constructor(gesdemService, nav) {
|
|
10
|
-
this.gesdemService = gesdemService;
|
|
11
|
-
this.nav = nav;
|
|
12
|
-
}
|
|
13
|
-
canActivate(next,
|
|
14
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
15
|
-
state) {
|
|
16
|
-
const route = FoehnNavigationService.getRootRouteRecursive(next);
|
|
17
|
-
this.nav.initRoute(route);
|
|
18
|
-
/*
|
|
19
|
-
* Do not call require on gesdemService since it could be that call
|
|
20
|
-
* that triggers a redirection to GesdemErrorComponent on path /erreur
|
|
21
|
-
*/
|
|
22
|
-
if (next.firstChild &&
|
|
23
|
-
next.firstChild.routeConfig &&
|
|
24
|
-
next.firstChild.routeConfig.path === 'erreur') {
|
|
25
|
-
return of(true);
|
|
26
|
-
}
|
|
27
|
-
return this.gesdemService
|
|
28
|
-
.require(next.params.reference, true)
|
|
29
|
-
.pipe(catchError(() => of(true)));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
GesdemLoaderGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemLoaderGuard, deps: [{ token: i1.GesdemHandlerService }, { token: i2.FoehnNavigationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33
|
-
GesdemLoaderGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemLoaderGuard, providedIn: 'root' });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemLoaderGuard, decorators: [{
|
|
35
|
-
type: Injectable,
|
|
36
|
-
args: [{
|
|
37
|
-
providedIn: 'root'
|
|
38
|
-
}]
|
|
39
|
-
}], ctorParameters: function () { return [{ type: i1.GesdemHandlerService }, { type: i2.FoehnNavigationService }]; } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWxvYWRlci5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWxvYWRlci5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTTNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBSzVDLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFDWSxhQUFtQyxFQUNuQyxHQUEyQjtRQUQzQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDbkMsUUFBRyxHQUFILEdBQUcsQ0FBd0I7SUFDcEMsQ0FBQztJQUVKLFdBQVcsQ0FDUCxJQUE0QjtJQUM1Qiw2REFBNkQ7SUFDN0QsS0FBMEI7UUFFMUIsTUFBTSxLQUFLLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUI7OztXQUdHO1FBQ0gsSUFDSSxJQUFJLENBQUMsVUFBVTtZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVztZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUMvQztZQUNFLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25CO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYTthQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDO2FBQ3BDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDOzs4R0E3QlEsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FGZCxNQUFNOzJGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgQ2FuQWN0aXZhdGUsXG4gICAgUm91dGVyU3RhdGVTbmFwc2hvdFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdlc2RlbUhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9nZXNkZW0taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9mb2Vobi1uYXZpZ2F0aW9uL2ZvZWhuLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUxvYWRlckd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGdlc2RlbVNlcnZpY2U6IEdlc2RlbUhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG5hdjogRm9laG5OYXZpZ2F0aW9uU2VydmljZVxuICAgICkge31cblxuICAgIGNhbkFjdGl2YXRlKFxuICAgICAgICBuZXh0OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICAgIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90XG4gICAgKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIGNvbnN0IHJvdXRlID0gRm9laG5OYXZpZ2F0aW9uU2VydmljZS5nZXRSb290Um91dGVSZWN1cnNpdmUobmV4dCk7XG4gICAgICAgIHRoaXMubmF2LmluaXRSb3V0ZShyb3V0ZSk7XG5cbiAgICAgICAgLypcbiAgICAgICAgICogRG8gbm90IGNhbGwgcmVxdWlyZSBvbiBnZXNkZW1TZXJ2aWNlIHNpbmNlIGl0IGNvdWxkIGJlIHRoYXQgY2FsbFxuICAgICAgICAgKiB0aGF0IHRyaWdnZXJzIGEgcmVkaXJlY3Rpb24gdG8gR2VzZGVtRXJyb3JDb21wb25lbnQgb24gcGF0aCAvZXJyZXVyXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBuZXh0LmZpcnN0Q2hpbGQgJiZcbiAgICAgICAgICAgIG5leHQuZmlyc3RDaGlsZC5yb3V0ZUNvbmZpZyAmJlxuICAgICAgICAgICAgbmV4dC5maXJzdENoaWxkLnJvdXRlQ29uZmlnLnBhdGggPT09ICdlcnJldXInXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2VzZGVtU2VydmljZVxuICAgICAgICAgICAgLnJlcXVpcmUobmV4dC5wYXJhbXMucmVmZXJlbmNlLCB0cnVlKVxuICAgICAgICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZih0cnVlKSkpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { catchError, finalize, tap } from 'rxjs/operators';
|
|
3
|
-
import { GrowlType } from '../../foehn-growl/growl-types';
|
|
4
|
-
import { throwError } from 'rxjs';
|
|
5
|
-
import { FoehnFormComponent } from '../../foehn-form/foehn-form.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../gesdem-action-recovery.service";
|
|
8
|
-
import * as i2 from "../../foehn-growl/growl-broker.service";
|
|
9
|
-
import * as i3 from "../../validation/validation-handler.service";
|
|
10
|
-
import * as i4 from "../../sdk-appinfo/application-info.service";
|
|
11
|
-
import * as i5 from "@angular/router";
|
|
12
|
-
import * as i6 from "../../foehn-form/foehn-form.component";
|
|
13
|
-
import * as i7 from "../../foehn-input/foehn-input-text.component";
|
|
14
|
-
import * as i8 from "@angular/common";
|
|
15
|
-
export class GesdemActionRecoveryLoginComponent {
|
|
16
|
-
constructor(recoveryService, growlService, validationHandler, applicationInfoService, router) {
|
|
17
|
-
this.recoveryService = recoveryService;
|
|
18
|
-
this.growlService = growlService;
|
|
19
|
-
this.validationHandler = validationHandler;
|
|
20
|
-
this.applicationInfoService = applicationInfoService;
|
|
21
|
-
this.router = router;
|
|
22
|
-
this.missingRecoveryInfos = false;
|
|
23
|
-
this.alreadyTransferred = false;
|
|
24
|
-
}
|
|
25
|
-
ngOnInit() {
|
|
26
|
-
this.otpRecipient = null;
|
|
27
|
-
this.missingRecoveryInfos = false;
|
|
28
|
-
this.applicationInfoService.currentEtapeInfo
|
|
29
|
-
.pipe(tap(currentEtape => {
|
|
30
|
-
if (currentEtape.reprisePossible) {
|
|
31
|
-
this.startRecovery();
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
this.growlService.addWithType(GrowlType.DANGER, 'Votre session a expiré, veuillez recommencer votre saisie');
|
|
35
|
-
// redirect to prestation's home
|
|
36
|
-
this.router.navigateByUrl('/');
|
|
37
|
-
}
|
|
38
|
-
}))
|
|
39
|
-
.subscribe();
|
|
40
|
-
}
|
|
41
|
-
validateOtp() {
|
|
42
|
-
this.recoveryService
|
|
43
|
-
.checkRecoveryPassword(this.reference, this.otp)
|
|
44
|
-
.pipe(finalize(() => (this.otp = null)))
|
|
45
|
-
.subscribe(isPasswordValid => {
|
|
46
|
-
const errors = [];
|
|
47
|
-
if (isPasswordValid) {
|
|
48
|
-
window.location.href = this.redirectTarget;
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
errors.push({
|
|
52
|
-
name: 'otp',
|
|
53
|
-
code: 'INVALIDOTP',
|
|
54
|
-
message: "Le mot de passe saisi n'est pas valide"
|
|
55
|
-
});
|
|
56
|
-
this.loginForm.reset();
|
|
57
|
-
this.validationHandler.shouldDisplayErrors(true);
|
|
58
|
-
this.validationHandler.updateErrors(errors);
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
startRecovery() {
|
|
63
|
-
this.recoveryService
|
|
64
|
-
.startRecovery(this.reference)
|
|
65
|
-
.pipe(catchError((response) => {
|
|
66
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
67
|
-
const { error, status } = response;
|
|
68
|
-
this.missingRecoveryInfos =
|
|
69
|
-
status === 404 &&
|
|
70
|
-
error &&
|
|
71
|
-
JSON.parse(error).code === 'ACTION_RECOVERY_NOT_FOUND';
|
|
72
|
-
this.alreadyTransferred =
|
|
73
|
-
status === 409 &&
|
|
74
|
-
error &&
|
|
75
|
-
JSON.parse(error).code === 'ACTION_ALREADY_TRANSFERRED';
|
|
76
|
-
if (!this.missingRecoveryInfos &&
|
|
77
|
-
!this.alreadyTransferred) {
|
|
78
|
-
this.growlService.addWithType(GrowlType.DANGER, 'Impossible de générer un mot de passe, veuillez réessayer plus tard.');
|
|
79
|
-
}
|
|
80
|
-
return throwError(true);
|
|
81
|
-
}))
|
|
82
|
-
.subscribe(otpRecipient => (this.otpRecipient = otpRecipient));
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
GesdemActionRecoveryLoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryLoginComponent, deps: [{ token: i1.GesdemActionRecoveryService }, { token: i2.GrowlBrokerService }, { token: i3.ValidationHandlerService }, { token: i4.ApplicationInfoService }, { token: i5.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
-
GesdemActionRecoveryLoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: GesdemActionRecoveryLoginComponent, selector: "gesdem-action-recovery-login", inputs: { reference: "reference", redirectTarget: "redirectTarget" }, viewQueries: [{ propertyName: "loginForm", first: true, predicate: FoehnFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"container mt-5\">\n <div class=\"alert alert-danger\" *ngIf=\"missingRecoveryInfos\">\n Vous n'avez pas indiqu\u00E9 d'informations de contact pour la reprise de\n cette demande, merci de contacter le support.\n </div>\n <div class=\"alert alert-danger\" *ngIf=\"alreadyTransferred\">\n La demande que vous essayez de reprendre a d\u00E9j\u00E0 \u00E9t\u00E9 transmise, elle\n n'est plus modifiable.\n </div>\n\n <foehn-form [shouldDisplayAlertSummary]=\"false\" *ngIf=\"otpRecipient\">\n <div class=\"row\">\n <div class=\"col-md-8\">\n <foehn-input-text\n [label]=\"\n 'Veuillez saisir le code envoy\u00E9 par SMS au num\u00E9ro ' +\n otpRecipient\n \"\n [(model)]=\"otp\"\n name=\"otp\"\n [required]=\"true\"\n ></foehn-input-text>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n Pour obtenir un nouveau code, vous devez recliquer sur le\n <a [href]=\"redirectTarget\">lien</a>\n de reprise de la demande\n </div>\n </div>\n\n <br />\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn btn-dark float-right\"\n (click)=\"validateOtp()\"\n >\n Suivant\n </button>\n </div>\n </div>\n </foehn-form>\n</div>\n", styles: [""], components: [{ type: i6.FoehnFormComponent, selector: "foehn-form", inputs: ["shouldDisplayAlertSummary"] }, { type: i7.FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryLoginComponent, decorators: [{
|
|
88
|
-
type: Component,
|
|
89
|
-
args: [{
|
|
90
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
91
|
-
selector: 'gesdem-action-recovery-login',
|
|
92
|
-
templateUrl: './gesdem-action-recovery-login.component.html',
|
|
93
|
-
styleUrls: ['./gesdem-action-recovery-login.component.css']
|
|
94
|
-
}]
|
|
95
|
-
}], ctorParameters: function () { return [{ type: i1.GesdemActionRecoveryService }, { type: i2.GrowlBrokerService }, { type: i3.ValidationHandlerService }, { type: i4.ApplicationInfoService }, { type: i5.Router }]; }, propDecorators: { reference: [{
|
|
96
|
-
type: Input
|
|
97
|
-
}], redirectTarget: [{
|
|
98
|
-
type: Input
|
|
99
|
-
}], loginForm: [{
|
|
100
|
-
type: ViewChild,
|
|
101
|
-
args: [FoehnFormComponent]
|
|
102
|
-
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnkvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdsQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7OztBQVczRSxNQUFNLE9BQU8sa0NBQWtDO0lBZTNDLFlBQ1ksZUFBNEMsRUFDNUMsWUFBZ0MsRUFDaEMsaUJBQTJDLEVBQzNDLHNCQUE4QyxFQUM5QyxNQUFjO1FBSmQsb0JBQWUsR0FBZixlQUFlLENBQTZCO1FBQzVDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBQzNDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVYxQix5QkFB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QUFDLENBQUM7SUFDdkUsQ0FBQzs7K0hBaEdRLGtDQUFrQzttSEFBbEMsa0NBQWtDLHFMQU9oQyxrQkFBa0IsZ0RDeEJqQyw2ckRBaURBOzJGRGhDYSxrQ0FBa0M7a0JBTjlDLFNBQVM7bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxXQUFXLEVBQUUsK0NBQStDO29CQUM1RCxTQUFTLEVBQUUsQ0FBQyw4Q0FBOEMsQ0FBQztpQkFDOUQ7b1BBR0csU0FBUztzQkFEUixLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixTQUFTO3NCQURSLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBHcm93bFR5cGUgfSBmcm9tICcuLi8uLi9mb2Vobi1ncm93bC9ncm93bC10eXBlcyc7XG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHZXNkZW1BY3Rpb25SZWNvdmVyeVNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgR3Jvd2xCcm9rZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZm9laG4tZm9ybS9mb2Vobi1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uSW5mb1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZGstYXBwaW5mby9hcHBsaWNhdGlvbi1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHZXNkZW1BY3Rpb25SZWNvdmVyeUxvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICByZWRpcmVjdFRhcmdldDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZChGb2VobkZvcm1Db21wb25lbnQpXG4gICAgbG9naW5Gb3JtOiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBtaXNzaW5nUmVjb3ZlcnlJbmZvcyA9IGZhbHNlO1xuICAgIGFscmVhZHlUcmFuc2ZlcnJlZCA9IGZhbHNlO1xuICAgIG90cFJlY2lwaWVudDogc3RyaW5nO1xuICAgIG90cDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVjb3ZlcnlTZXJ2aWNlOiBHZXNkZW1BY3Rpb25SZWNvdmVyeVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZ3Jvd2xTZXJ2aWNlOiBHcm93bEJyb2tlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXI6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBsaWNhdGlvbkluZm9TZXJ2aWNlOiBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3RwUmVjaXBpZW50ID0gbnVsbDtcbiAgICAgICAgdGhpcy5taXNzaW5nUmVjb3ZlcnlJbmZvcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFwcGxpY2F0aW9uSW5mb1NlcnZpY2UuY3VycmVudEV0YXBlSW5mb1xuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKGN1cnJlbnRFdGFwZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RXRhcGUucmVwcmlzZVBvc3NpYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0UmVjb3ZlcnkoKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ3Jvd2xTZXJ2aWNlLmFkZFdpdGhUeXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyb3dsVHlwZS5EQU5HRVIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1ZvdHJlIHNlc3Npb24gYSBleHBpcsOpLCB2ZXVpbGxleiByZWNvbW1lbmNlciB2b3RyZSBzYWlzaWUnXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVkaXJlY3QgdG8gcHJlc3RhdGlvbidzIGhvbWVcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy8nKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgdmFsaWRhdGVPdHAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVjb3ZlcnlTZXJ2aWNlXG4gICAgICAgICAgICAuY2hlY2tSZWNvdmVyeVBhc3N3b3JkKHRoaXMucmVmZXJlbmNlLCB0aGlzLm90cClcbiAgICAgICAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+ICh0aGlzLm90cCA9IG51bGwpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoaXNQYXNzd29yZFZhbGlkID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvcnMgPSBbXTtcbiAgICAgICAgICAgICAgICBpZiAoaXNQYXNzd29yZFZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5yZWRpcmVjdFRhcmdldDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb3RwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGU6ICdJTlZBTElET1RQJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IFwiTGUgbW90IGRlIHBhc3NlIHNhaXNpIG4nZXN0IHBhcyB2YWxpZGVcIlxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2dpbkZvcm0ucmVzZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uSGFuZGxlci5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyLnVwZGF0ZUVycm9ycyhlcnJvcnMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhcnRSZWNvdmVyeSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWNvdmVyeVNlcnZpY2VcbiAgICAgICAgICAgIC5zdGFydFJlY292ZXJ5KHRoaXMucmVmZXJlbmNlKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigocmVzcG9uc2U6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBlcnJvciwgc3RhdHVzIH06IGFueSA9IHJlc3BvbnNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1pc3NpbmdSZWNvdmVyeUluZm9zID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyA9PT0gNDA0ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvciAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgSlNPTi5wYXJzZShlcnJvcikuY29kZSA9PT0gJ0FDVElPTl9SRUNPVkVSWV9OT1RfRk9VTkQnO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWxyZWFkeVRyYW5zZmVycmVkID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyA9PT0gNDA5ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvciAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgSlNPTi5wYXJzZShlcnJvcikuY29kZSA9PT0gJ0FDVElPTl9BTFJFQURZX1RSQU5TRkVSUkVEJztcblxuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAhdGhpcy5taXNzaW5nUmVjb3ZlcnlJbmZvcyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMuYWxyZWFkeVRyYW5zZmVycmVkXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm93bFNlcnZpY2UuYWRkV2l0aFR5cGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgR3Jvd2xUeXBlLkRBTkdFUixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnSW1wb3NzaWJsZSBkZSBnw6luw6lyZXIgdW4gbW90IGRlIHBhc3NlLCB2ZXVpbGxleiByw6llc3NheWVyIHBsdXMgdGFyZC4nXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IodHJ1ZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUob3RwUmVjaXBpZW50ID0+ICh0aGlzLm90cFJlY2lwaWVudCA9IG90cFJlY2lwaWVudCkpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXIgbXQtNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiAqbmdJZj1cIm1pc3NpbmdSZWNvdmVyeUluZm9zXCI+XG4gICAgICAgIFZvdXMgbidhdmV6IHBhcyBpbmRpcXXDqSBkJ2luZm9ybWF0aW9ucyBkZSBjb250YWN0IHBvdXIgbGEgcmVwcmlzZSBkZVxuICAgICAgICBjZXR0ZSBkZW1hbmRlLCBtZXJjaSBkZSBjb250YWN0ZXIgbGUgc3VwcG9ydC5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgKm5nSWY9XCJhbHJlYWR5VHJhbnNmZXJyZWRcIj5cbiAgICAgICAgTGEgZGVtYW5kZSBxdWUgdm91cyBlc3NheWV6IGRlIHJlcHJlbmRyZSBhIGTDqWrDoCDDqXTDqSB0cmFuc21pc2UsIGVsbGVcbiAgICAgICAgbidlc3QgcGx1cyBtb2RpZmlhYmxlLlxuICAgIDwvZGl2PlxuXG4gICAgPGZvZWhuLWZvcm0gW3Nob3VsZERpc3BsYXlBbGVydFN1bW1hcnldPVwiZmFsc2VcIiAqbmdJZj1cIm90cFJlY2lwaWVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgICAgICAgICA8Zm9laG4taW5wdXQtdGV4dFxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAnVmV1aWxsZXogc2Fpc2lyIGxlIGNvZGUgZW52b3nDqSBwYXIgU01TIGF1IG51bcOpcm8gJyArXG4gICAgICAgICAgICAgICAgICAgICAgICBvdHBSZWNpcGllbnRcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwib3RwXCJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm90cFwiXG4gICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+PC9mb2Vobi1pbnB1dC10ZXh0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOFwiPlxuICAgICAgICAgICAgICAgIFBvdXIgb2J0ZW5pciB1biBub3V2ZWF1IGNvZGUsIHZvdXMgZGV2ZXogcmVjbGlxdWVyIHN1ciBsZVxuICAgICAgICAgICAgICAgIDxhIFtocmVmXT1cInJlZGlyZWN0VGFyZ2V0XCI+bGllbjwvYT5cbiAgICAgICAgICAgICAgICBkZSByZXByaXNlIGRlIGxhIGRlbWFuZGVcbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8YnIgLz5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGlkPVwibmV4dEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGFyayBmbG9hdC1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ2YWxpZGF0ZU90cCgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIFN1aXZhbnRcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2ZvZWhuLWZvcm0+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { RepriseInfo } from '../reprise-info';
|
|
3
|
-
import { filter, first, map, switchMap, tap } from 'rxjs/operators';
|
|
4
|
-
import { FoehnFormComponent } from '../../foehn-form/foehn-form.component';
|
|
5
|
-
import { combineLatest } from 'rxjs';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../gesdem-action-recovery.service";
|
|
8
|
-
import * as i2 from "../../validation/validation-handler.service";
|
|
9
|
-
import * as i3 from "../../foehn-page/foehn-page.service";
|
|
10
|
-
import * as i4 from "../../gesdem/gesdem-event.service";
|
|
11
|
-
import * as i5 from "../../gesdem/gesdem-handler.service";
|
|
12
|
-
import * as i6 from "../../sdk-appinfo/application-info.service";
|
|
13
|
-
import * as i7 from "../../sdk-session-info/session-info.service";
|
|
14
|
-
import * as i8 from "../../foehn-modal/foehn-modal.component";
|
|
15
|
-
import * as i9 from "../../foehn-form/foehn-form.component";
|
|
16
|
-
import * as i10 from "../../foehn-input/foehn-input-text.component";
|
|
17
|
-
import * as i11 from "../../foehn-input/foehn-input-phone.component";
|
|
18
|
-
import * as i12 from "@angular/common";
|
|
19
|
-
export class GesdemActionRecoveryRegistrationComponent {
|
|
20
|
-
constructor(actionRecoveryService, validationHandler, foehnPageService, gesdemEventService, gesdemService, appInfoService, sessionInfoService) {
|
|
21
|
-
this.actionRecoveryService = actionRecoveryService;
|
|
22
|
-
this.validationHandler = validationHandler;
|
|
23
|
-
this.foehnPageService = foehnPageService;
|
|
24
|
-
this.gesdemEventService = gesdemEventService;
|
|
25
|
-
this.gesdemService = gesdemService;
|
|
26
|
-
this.appInfoService = appInfoService;
|
|
27
|
-
this.sessionInfoService = sessionInfoService;
|
|
28
|
-
this.model = new RepriseInfo();
|
|
29
|
-
this.mailSent = false;
|
|
30
|
-
this.isVisible = false;
|
|
31
|
-
}
|
|
32
|
-
ngOnInit() {
|
|
33
|
-
this.isConnectedCyber = this.sessionInfoService.data.pipe(map(sessionInfo => !!sessionInfo && !!sessionInfo.context));
|
|
34
|
-
const isConnectedIamAcv = this.sessionInfoService.data.pipe(map(sessionInfo => !!sessionInfo && !sessionInfo.context));
|
|
35
|
-
this.canContinueLater = combineLatest([
|
|
36
|
-
this.appInfoService.currentEtapeInfo,
|
|
37
|
-
this.isConnectedCyber,
|
|
38
|
-
isConnectedIamAcv
|
|
39
|
-
]).pipe(map(([currentEtapeInfo, isConnectedCyber, connectedIamAcv]) => this.canContinueLaterForEtape(currentEtapeInfo, isConnectedCyber, connectedIamAcv)));
|
|
40
|
-
}
|
|
41
|
-
get isModalVisible() {
|
|
42
|
-
return this.isVisible;
|
|
43
|
-
}
|
|
44
|
-
open() {
|
|
45
|
-
this.gesdemEventService
|
|
46
|
-
.formSentObservable()
|
|
47
|
-
.pipe(first(), filter(resp => !!resp.meta.reference), switchMap(() => this.isConnectedCyber))
|
|
48
|
-
.subscribe(isConnectedCyber => {
|
|
49
|
-
this.mailSent = false;
|
|
50
|
-
this.isVisible = true;
|
|
51
|
-
if (!isConnectedCyber) {
|
|
52
|
-
this.actionRecoveryService
|
|
53
|
-
.getDefaultRecoveryValue(this.reference)
|
|
54
|
-
// eslint-disable-next-line rxjs/no-nested-subscribe
|
|
55
|
-
.subscribe(repriseInfo => (this.model = repriseInfo));
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
this.model = null;
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
this.foehnPageService.requestFormSave();
|
|
62
|
-
}
|
|
63
|
-
close() {
|
|
64
|
-
this.updateVisibilityStatus(false);
|
|
65
|
-
}
|
|
66
|
-
sendAndClose() {
|
|
67
|
-
this.actionRecoveryService
|
|
68
|
-
.registerForRecovery(this.reference, this.model)
|
|
69
|
-
.pipe(tap(err => {
|
|
70
|
-
this.form.reset();
|
|
71
|
-
this.validationHandler.shouldDisplayErrors(true);
|
|
72
|
-
this.validationHandler.updateErrors([
|
|
73
|
-
...err,
|
|
74
|
-
...this.gesdemService.lastResponse.errors
|
|
75
|
-
]);
|
|
76
|
-
this.form.focusFirstInError();
|
|
77
|
-
this.mailSent = !err.length;
|
|
78
|
-
}))
|
|
79
|
-
.subscribe();
|
|
80
|
-
}
|
|
81
|
-
updateVisibilityStatus(status) {
|
|
82
|
-
// Store the previous value to handle transitions from one state to another.
|
|
83
|
-
const wasOpen = this.isVisible;
|
|
84
|
-
// In case the modal is closed by another mean.
|
|
85
|
-
this.isVisible = status;
|
|
86
|
-
// Focus back on the trigger. No need for a setTimeout as the trigger should still be in the DOM.
|
|
87
|
-
// Only does it when the modal is closed from a open state to avoid to set
|
|
88
|
-
// the focus when the page loads.
|
|
89
|
-
if (wasOpen && !this.isVisible && this.modalTrigger) {
|
|
90
|
-
this.modalTrigger.nativeElement.focus();
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
get reference() {
|
|
94
|
-
return this.gesdemService.lastResponse
|
|
95
|
-
? this.gesdemService.lastResponse.meta.reference
|
|
96
|
-
: null;
|
|
97
|
-
}
|
|
98
|
-
canContinueLaterForEtape(currentEtapeInfo, isConnectedCyber, isConnectedIamAcv) {
|
|
99
|
-
if (isConnectedIamAcv) {
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
// If not connected, take the "reprisePossible" flag from CatPrest
|
|
103
|
-
// into account.
|
|
104
|
-
if (!isConnectedCyber) {
|
|
105
|
-
return currentEtapeInfo && currentEtapeInfo.reprisePossible;
|
|
106
|
-
}
|
|
107
|
-
// If connected, only display the button if the current step if the initial
|
|
108
|
-
// step.
|
|
109
|
-
return (currentEtapeInfo &&
|
|
110
|
-
currentEtapeInfo.idMetierEtape ===
|
|
111
|
-
currentEtapeInfo.idMetierPrestation);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
GesdemActionRecoveryRegistrationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryRegistrationComponent, deps: [{ token: i1.GesdemActionRecoveryService }, { token: i2.ValidationHandlerService }, { token: i3.FoehnPageService }, { token: i4.GesdemEventService }, { token: i5.GesdemHandlerService }, { token: i6.ApplicationInfoService }, { token: i7.SessionInfo }], target: i0.ɵɵFactoryTarget.Component });
|
|
115
|
-
GesdemActionRecoveryRegistrationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: GesdemActionRecoveryRegistrationComponent, selector: "gesdem-action-recovery-registration", inputs: { continueLaterLabel: "continueLaterLabel" }, viewQueries: [{ propertyName: "modalTrigger", first: true, predicate: ["modalTrigger"], descendants: true }, { propertyName: "form", first: true, predicate: FoehnFormComponent, descendants: true }], ngImport: i0, template: "<button\n type=\"button\"\n id=\"continueLaterButton\"\n class=\"btn btn-link pr-0 pl-0 no-text-transform\"\n *ngIf=\"canContinueLater | async\"\n (click)=\"open()\"\n #modalTrigger\n>\n {{ continueLaterLabel }}\n</button>\n\n<foehn-modal\n id=\"action-recovery-registration-modal\"\n [modalHeaderText]=\"'Informations pour la reprise de la demande'\"\n [isModalVisible]=\"isModalVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n>\n <ng-container *ngIf=\"isConnectedCyber | async; else notConnectedContent\">\n <p>\n Vos donn\u00E9es ont \u00E9t\u00E9 sauvegard\u00E9es, vous pouvez acc\u00E9der \u00E0 cette\n demande dans la liste de\n <a href=\"/100002/demandes/search/MINE/INITIAL\">\n vos demandes en brouillon\n </a>\n .\n </p>\n </ng-container>\n <ng-template #notConnectedContent>\n <div class=\"alert alert-info\">\n <p *ngIf=\"!mailSent\">\n Les informations demand\u00E9es sont uniquement utilis\u00E9es pour vous\n permettre d'effectuer la reprise de demande.\n </p>\n\n <div *ngIf=\"mailSent\">\n <p>\n Un message contenant le lien de reprise de la demande a \u00E9t\u00E9\n envoy\u00E9 \u00E0 votre email.\n </p>\n <p>\n Vous pouvez cliquer sur ce lien pour reprendre la demande en\n saisissant le code qui sera envoy\u00E9 \u00E0 votre t\u00E9l\u00E9phone.\n </p>\n </div>\n </div>\n\n <foehn-form *ngIf=\"!mailSent\" [shouldDisplayAlertSummary]=\"false\">\n <foehn-input-text\n label=\"Email\"\n helpText=\"Par exemple, john@doe.ch\"\n [(model)]=\"model.email\"\n name=\"email\"\n required=\"true\"\n ></foehn-input-text>\n\n <foehn-input-phone\n label=\"Num\u00E9ro de t\u00E9l\u00E9phone mobile\"\n [acceptInternational]=\"true\"\n [acceptMobilePhone]=\"true\"\n [acceptPhone]=\"false\"\n [(model)]=\"model.mobile\"\n name=\"mobile\"\n required=\"true\"\n ></foehn-input-phone>\n </foehn-form>\n </ng-template>\n\n <div modal-footer class=\"w-100\">\n <div class=\"d-md-flex\">\n <div class=\"ml-md-auto mr-md-2 mb-2 mt-2\">\n <button (click)=\"close()\" class=\"btn btn-secondary w-100\">\n Fermer\n </button>\n </div>\n <div\n *ngIf=\"!(isConnectedCyber | async)\"\n class=\"ml-md-0 mr-md-2 mb-2 mt-2\"\n >\n <button\n type=\"submit\"\n (click)=\"sendAndClose()\"\n class=\"btn btn-success w-100\"\n *ngIf=\"!mailSent\"\n >\n Sauvegarder\n </button>\n </div>\n </div>\n </div>\n</foehn-modal>\n", styles: [".no-text-transform{text-transform:none;cursor:pointer}\n"], components: [{ type: i8.FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "modalFooterText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { type: i9.FoehnFormComponent, selector: "foehn-form", inputs: ["shouldDisplayAlertSummary"] }, { type: i10.FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }, { type: i11.FoehnInputPhoneComponent, selector: "foehn-input-phone", inputs: ["acceptInternational", "acceptMobilePhone", "acceptPhone"] }], directives: [{ type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i12.AsyncPipe } });
|
|
116
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryRegistrationComponent, decorators: [{
|
|
117
|
-
type: Component,
|
|
118
|
-
args: [{
|
|
119
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
120
|
-
selector: 'gesdem-action-recovery-registration',
|
|
121
|
-
templateUrl: './gesdem-action-recovery-registration.component.html',
|
|
122
|
-
styleUrls: ['./gesdem-action-recovery-registration.component.css']
|
|
123
|
-
}]
|
|
124
|
-
}], ctorParameters: function () { return [{ type: i1.GesdemActionRecoveryService }, { type: i2.ValidationHandlerService }, { type: i3.FoehnPageService }, { type: i4.GesdemEventService }, { type: i5.GesdemHandlerService }, { type: i6.ApplicationInfoService }, { type: i7.SessionInfo }]; }, propDecorators: { continueLaterLabel: [{
|
|
125
|
-
type: Input
|
|
126
|
-
}], modalTrigger: [{
|
|
127
|
-
type: ViewChild,
|
|
128
|
-
args: ['modalTrigger']
|
|
129
|
-
}], form: [{
|
|
130
|
-
type: ViewChild,
|
|
131
|
-
args: [FoehnFormComponent]
|
|
132
|
-
}] } });
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnkvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnkvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBSTNFLE9BQU8sRUFBRSxhQUFhLEVBQWMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBV2pELE1BQU0sT0FBTyx5Q0FBeUM7SUFrQmxELFlBQ1kscUJBQWtELEVBQ2xELGlCQUEyQyxFQUMzQyxnQkFBa0MsRUFDbEMsa0JBQXNDLEVBQ3RDLGFBQW1DLEVBQ25DLGNBQXNDLEVBQ3RDLGtCQUErQjtRQU4vQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQTZCO1FBQ2xELHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFD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QkFBZ0IsSUFBSSxnQkFBZ0IsQ0FBQyxlQUFlLENBQUM7U0FDL0Q7UUFFRCwyRUFBMkU7UUFDM0UsUUFBUTtRQUNSLE9BQU8sQ0FDSCxnQkFBZ0I7WUFDaEIsZ0JBQWdCLENBQUMsYUFBYTtnQkFDMUIsZ0JBQWdCLENBQUMsa0JBQWtCLENBQzFDLENBQUM7SUFDTixDQUFDOztzSUFqSlEseUNBQXlDOzBIQUF6Qyx5Q0FBeUMsc1FBT3ZDLGtCQUFrQixnREMzQmpDLHVwR0EwRkE7MkZEdEVhLHlDQUF5QztrQkFOckQsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxxQ0FBcUM7b0JBQy9DLFdBQVcsRUFBRSxzREFBc0Q7b0JBQ25FLFNBQVMsRUFBRSxDQUFDLHFEQUFxRCxDQUFDO2lCQUNyRTsyVEFHRyxrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWM7Z0JBSXpCLElBQUk7c0JBREgsU0FBUzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVwcmlzZUluZm8gfSBmcm9tICcuLi9yZXByaXNlLWluZm8nO1xuaW1wb3J0IHsgR2VzZGVtQWN0aW9uUmVjb3ZlcnlTZXJ2aWNlIH0gZnJvbSAnLi4vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS5zZXJ2aWNlJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZvZWhuLWZvcm0vZm9laG4tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9laG5QYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL2ZvZWhuLXBhZ2UvZm9laG4tcGFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdlc2RlbUV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL2dlc2RlbS9nZXNkZW0tZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1IYW5kbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL2dlc2RlbS9nZXNkZW0taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uSW5mb1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZGstYXBwaW5mby9hcHBsaWNhdGlvbi1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2Vzc2lvbkluZm8gfSBmcm9tICcuLi8uLi9zZGstc2Vzc2lvbi1pbmZvL3Nlc3Npb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IEV0YXBlSW5mbyB9IGZyb20gJy4uLy4uL3Nkay1hcHBpbmZvL2FwcGxpY2F0aW9uLWluZm8nO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LXJlZ2lzdHJhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1yZWdpc3RyYXRpb24uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUFjdGlvblJlY292ZXJ5UmVnaXN0cmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIGNvbnRpbnVlTGF0ZXJMYWJlbDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZCgnbW9kYWxUcmlnZ2VyJylcbiAgICBtb2RhbFRyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBAVmlld0NoaWxkKEZvZWhuRm9ybUNvbXBvbmVudClcbiAgICBmb3JtOiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBtb2RlbCA9IG5ldyBSZXByaXNlSW5mbygpO1xuICAgIG1haWxTZW50ID0gZmFsc2U7XG5cbiAgICBjYW5Db250aW51ZUxhdGVyOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGlzQ29ubmVjdGVkQ3liZXI6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICBwcml2YXRlIGlzVmlzaWJsZSA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYWN0aW9uUmVjb3ZlcnlTZXJ2aWNlOiBHZXNkZW1BY3Rpb25SZWNvdmVyeVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXI6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBmb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGdlc2RlbUV2ZW50U2VydmljZTogR2VzZGVtRXZlbnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGdlc2RlbVNlcnZpY2U6IEdlc2RlbUhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGFwcEluZm9TZXJ2aWNlOiBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHNlc3Npb25JbmZvU2VydmljZTogU2Vzc2lvbkluZm9cbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0Nvbm5lY3RlZEN5YmVyID0gdGhpcy5zZXNzaW9uSW5mb1NlcnZpY2UuZGF0YS5waXBlKFxuICAgICAgICAgICAgbWFwKHNlc3Npb25JbmZvID0+ICEhc2Vzc2lvbkluZm8gJiYgISFzZXNzaW9uSW5mby5jb250ZXh0KVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGlzQ29ubmVjdGVkSWFtQWN2ID0gdGhpcy5zZXNzaW9uSW5mb1NlcnZpY2UuZGF0YS5waXBlKFxuICAgICAgICAgICAgbWFwKHNlc3Npb25JbmZvID0+ICEhc2Vzc2lvbkluZm8gJiYgIXNlc3Npb25JbmZvLmNvbnRleHQpXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5jYW5Db250aW51ZUxhdGVyID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICB0aGlzLmFwcEluZm9TZXJ2aWNlLmN1cnJlbnRFdGFwZUluZm8sXG4gICAgICAgICAgICB0aGlzLmlzQ29ubmVjdGVkQ3liZXIsXG4gICAgICAgICAgICBpc0Nvbm5lY3RlZElhbUFjdlxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbY3VycmVudEV0YXBlSW5mbywgaXNDb25uZWN0ZWRDeWJlciwgY29ubmVjdGVkSWFtQWN2XSkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmNhbkNvbnRpbnVlTGF0ZXJGb3JFdGFwZShcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEV0YXBlSW5mbyxcbiAgICAgICAgICAgICAgICAgICAgaXNDb25uZWN0ZWRDeWJlcixcbiAgICAgICAgICAgICAgICAgICAgY29ubmVjdGVkSWFtQWN2XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldCBpc01vZGFsVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNWaXNpYmxlO1xuICAgIH1cblxuICAgIG9wZW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2VzZGVtRXZlbnRTZXJ2aWNlXG4gICAgICAgICAgICAuZm9ybVNlbnRPYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgZmlsdGVyKHJlc3AgPT4gISFyZXNwLm1ldGEucmVmZXJlbmNlKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5pc0Nvbm5lY3RlZEN5YmVyKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShpc0Nvbm5lY3RlZEN5YmVyID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1haWxTZW50ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGlmICghaXNDb25uZWN0ZWRDeWJlcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFjdGlvblJlY292ZXJ5U2VydmljZVxuICAgICAgICAgICAgICAgICAgICAgICAgLmdldERlZmF1bHRSZWNvdmVyeVZhbHVlKHRoaXMucmVmZXJlbmNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMvbm8tbmVzdGVkLXN1YnNjcmliZVxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZShyZXByaXNlSW5mbyA9PiAodGhpcy5tb2RlbCA9IHJlcHJpc2VJbmZvKSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RlbCA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5mb2VoblBhZ2VTZXJ2aWNlLnJlcXVlc3RGb3JtU2F2ZSgpO1xuICAgIH1cblxuICAgIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVZpc2liaWxpdHlTdGF0dXMoZmFsc2UpO1xuICAgIH1cblxuICAgIHNlbmRBbmRDbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3Rpb25SZWNvdmVyeVNlcnZpY2VcbiAgICAgICAgICAgIC5yZWdpc3RlckZvclJlY292ZXJ5KHRoaXMucmVmZXJlbmNlLCB0aGlzLm1vZGVsKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKGVyciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybS5yZXNldCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyLnNob3VsZERpc3BsYXlFcnJvcnModHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXIudXBkYXRlRXJyb3JzKFtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLmVycixcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0uZm9jdXNGaXJzdEluRXJyb3IoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYWlsU2VudCA9ICFlcnIubGVuZ3RoO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVmlzaWJpbGl0eVN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgLy8gU3RvcmUgdGhlIHByZXZpb3VzIHZhbHVlIHRvIGhhbmRsZSB0cmFuc2l0aW9ucyBmcm9tIG9uZSBzdGF0ZSB0byBhbm90aGVyLlxuICAgICAgICBjb25zdCB3YXNPcGVuID0gdGhpcy5pc1Zpc2libGU7XG5cbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgbW9kYWwgaXMgY2xvc2VkIGJ5IGFub3RoZXIgbWVhbi5cbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSBzdGF0dXM7XG5cbiAgICAgICAgLy8gRm9jdXMgYmFjayBvbiB0aGUgdHJpZ2dlci4gTm8gbmVlZCBmb3IgYSBzZXRUaW1lb3V0IGFzIHRoZSB0cmlnZ2VyIHNob3VsZCBzdGlsbCBiZSBpbiB0aGUgRE9NLlxuICAgICAgICAvLyBPbmx5IGRvZXMgaXQgd2hlbiB0aGUgbW9kYWwgaXMgY2xvc2VkIGZyb20gYSBvcGVuIHN0YXRlIHRvIGF2b2lkIHRvIHNldFxuICAgICAgICAvLyB0aGUgZm9jdXMgd2hlbiB0aGUgcGFnZSBsb2Fkcy5cbiAgICAgICAgaWYgKHdhc09wZW4gJiYgIXRoaXMuaXNWaXNpYmxlICYmIHRoaXMubW9kYWxUcmlnZ2VyKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGFsVHJpZ2dlci5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgcmVmZXJlbmNlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlXG4gICAgICAgICAgICA/IHRoaXMuZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5yZWZlcmVuY2VcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbkNvbnRpbnVlTGF0ZXJGb3JFdGFwZShcbiAgICAgICAgY3VycmVudEV0YXBlSW5mbzogRXRhcGVJbmZvLFxuICAgICAgICBpc0Nvbm5lY3RlZEN5YmVyOiBib29sZWFuLFxuICAgICAgICBpc0Nvbm5lY3RlZElhbUFjdjogYm9vbGVhblxuICAgICk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoaXNDb25uZWN0ZWRJYW1BY3YpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIG5vdCBjb25uZWN0ZWQsIHRha2UgdGhlIFwicmVwcmlzZVBvc3NpYmxlXCIgZmxhZyBmcm9tIENhdFByZXN0XG4gICAgICAgIC8vIGludG8gYWNjb3VudC5cbiAgICAgICAgaWYgKCFpc0Nvbm5lY3RlZEN5YmVyKSB7XG4gICAgICAgICAgICByZXR1cm4gY3VycmVudEV0YXBlSW5mbyAmJiBjdXJyZW50RXRhcGVJbmZvLnJlcHJpc2VQb3NzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIGNvbm5lY3RlZCwgb25seSBkaXNwbGF5IHRoZSBidXR0b24gaWYgdGhlIGN1cnJlbnQgc3RlcCBpZiB0aGUgaW5pdGlhbFxuICAgICAgICAvLyBzdGVwLlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgY3VycmVudEV0YXBlSW5mbyAmJlxuICAgICAgICAgICAgY3VycmVudEV0YXBlSW5mby5pZE1ldGllckV0YXBlID09PVxuICAgICAgICAgICAgICAgIGN1cnJlbnRFdGFwZUluZm8uaWRNZXRpZXJQcmVzdGF0aW9uXG4gICAgICAgICk7XG4gICAgfVxufVxuIiwiPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGlkPVwiY29udGludWVMYXRlckJ1dHRvblwiXG4gICAgY2xhc3M9XCJidG4gYnRuLWxpbmsgcHItMCBwbC0wIG5vLXRleHQtdHJhbnNmb3JtXCJcbiAgICAqbmdJZj1cImNhbkNvbnRpbnVlTGF0ZXIgfCBhc3luY1wiXG4gICAgKGNsaWNrKT1cIm9wZW4oKVwiXG4gICAgI21vZGFsVHJpZ2dlclxuPlxuICAgIHt7IGNvbnRpbnVlTGF0ZXJMYWJlbCB9fVxuPC9idXR0b24+XG5cbjxmb2Vobi1tb2RhbFxuICAgIGlkPVwiYWN0aW9uLXJlY292ZXJ5LXJlZ2lzdHJhdGlvbi1tb2RhbFwiXG4gICAgW21vZGFsSGVhZGVyVGV4dF09XCInSW5mb3JtYXRpb25zIHBvdXIgbGEgcmVwcmlzZSBkZSBsYSBkZW1hbmRlJ1wiXG4gICAgW2lzTW9kYWxWaXNpYmxlXT1cImlzTW9kYWxWaXNpYmxlXCJcbiAgICAoaXNNb2RhbFZpc2libGVDaGFuZ2UpPVwidXBkYXRlVmlzaWJpbGl0eVN0YXR1cygkZXZlbnQpXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNDb25uZWN0ZWRDeWJlciB8IGFzeW5jOyBlbHNlIG5vdENvbm5lY3RlZENvbnRlbnRcIj5cbiAgICAgICAgPHA+XG4gICAgICAgICAgICBWb3MgZG9ubsOpZXMgb250IMOpdMOpIHNhdXZlZ2FyZMOpZXMsIHZvdXMgcG91dmV6IGFjY8OpZGVyIMOgIGNldHRlXG4gICAgICAgICAgICBkZW1hbmRlIGRhbnMgbGEgbGlzdGUgZGVcbiAgICAgICAgICAgIDxhIGhyZWY9XCIvMTAwMDAyL2RlbWFuZGVzL3NlYXJjaC9NSU5FL0lOSVRJQUxcIj5cbiAgICAgICAgICAgICAgICB2b3MgZGVtYW5kZXMgZW4gYnJvdWlsbG9uXG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAuXG4gICAgICAgIDwvcD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI25vdENvbm5lY3RlZENvbnRlbnQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1pbmZvXCI+XG4gICAgICAgICAgICA8cCAqbmdJZj1cIiFtYWlsU2VudFwiPlxuICAgICAgICAgICAgICAgIExlcyBpbmZvcm1hdGlvbnMgZGVtYW5kw6llcyBzb250IHVuaXF1ZW1lbnQgdXRpbGlzw6llcyBwb3VyIHZvdXNcbiAgICAgICAgICAgICAgICBwZXJtZXR0cmUgZCdlZmZlY3R1ZXIgbGEgcmVwcmlzZSBkZSBkZW1hbmRlLlxuICAgICAgICAgICAgPC9wPlxuXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibWFpbFNlbnRcIj5cbiAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgVW4gbWVzc2FnZSBjb250ZW5hbnQgbGUgbGllbiBkZSByZXByaXNlIGRlIGxhIGRlbWFuZGUgYSDDqXTDqVxuICAgICAgICAgICAgICAgICAgICBlbnZvecOpIMOgIHZvdHJlIGVtYWlsLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8cD5cbiAgICAgICAgICAgICAgICAgICAgVm91cyBwb3V2ZXogY2xpcXVlciBzdXIgY2UgbGllbiBwb3VyIHJlcHJlbmRyZSBsYSBkZW1hbmRlIGVuXG4gICAgICAgICAgICAgICAgICAgIHNhaXNpc3NhbnQgbGUgY29kZSBxdWkgc2VyYSBlbnZvecOpIMOgIHZvdHJlIHTDqWzDqXBob25lLlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8Zm9laG4tZm9ybSAqbmdJZj1cIiFtYWlsU2VudFwiIFtzaG91bGREaXNwbGF5QWxlcnRTdW1tYXJ5XT1cImZhbHNlXCI+XG4gICAgICAgICAgICA8Zm9laG4taW5wdXQtdGV4dFxuICAgICAgICAgICAgICAgIGxhYmVsPVwiRW1haWxcIlxuICAgICAgICAgICAgICAgIGhlbHBUZXh0PVwiUGFyIGV4ZW1wbGUsIGpvaG5AZG9lLmNoXCJcbiAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJtb2RlbC5lbWFpbFwiXG4gICAgICAgICAgICAgICAgbmFtZT1cImVtYWlsXCJcbiAgICAgICAgICAgICAgICByZXF1aXJlZD1cInRydWVcIlxuICAgICAgICAgICAgPjwvZm9laG4taW5wdXQtdGV4dD5cblxuICAgICAgICAgICAgPGZvZWhuLWlucHV0LXBob25lXG4gICAgICAgICAgICAgICAgbGFiZWw9XCJOdW3DqXJvIGRlIHTDqWzDqXBob25lIG1vYmlsZVwiXG4gICAgICAgICAgICAgICAgW2FjY2VwdEludGVybmF0aW9uYWxdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2FjY2VwdE1vYmlsZVBob25lXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIFthY2NlcHRQaG9uZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgWyhtb2RlbCldPVwibW9kZWwubW9iaWxlXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwibW9iaWxlXCJcbiAgICAgICAgICAgICAgICByZXF1aXJlZD1cInRydWVcIlxuICAgICAgICAgICAgPjwvZm9laG4taW5wdXQtcGhvbmU+XG4gICAgICAgIDwvZm9laG4tZm9ybT5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPGRpdiBtb2RhbC1mb290ZXIgY2xhc3M9XCJ3LTEwMFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1tZC1mbGV4XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWwtbWQtYXV0byBtci1tZC0yIG1iLTIgbXQtMlwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cImNsb3NlKClcIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IHctMTAwXCI+XG4gICAgICAgICAgICAgICAgICAgIEZlcm1lclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhKGlzQ29ubmVjdGVkQ3liZXIgfCBhc3luYylcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtbWQtMCBtci1tZC0yIG1iLTIgbXQtMlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbmRBbmRDbG9zZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXN1Y2Nlc3Mgdy0xMDBcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFtYWlsU2VudFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICBTYXV2ZWdhcmRlclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9mb2Vobi1tb2RhbD5cbiJdfQ==
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { RouterModule } from '@angular/router';
|
|
4
|
-
import { FoehnInputModule } from '../foehn-input/foehn-input.module';
|
|
5
|
-
import { FoehnIconsModule } from '../foehn-icons/foehn-icons.module';
|
|
6
|
-
import { FoehnFormModule } from '../foehn-form/foehn-form.module';
|
|
7
|
-
import { GesdemActionRecoveryLoginComponent } from './gesdem-action-recovery-login/gesdem-action-recovery-login.component';
|
|
8
|
-
// eslint-disable-next-line max-len
|
|
9
|
-
import { GesdemActionRecoveryRegistrationComponent } from './gesdem-action-recovery-registration/gesdem-action-recovery-registration.component';
|
|
10
|
-
import { FoehnModalModule } from '../foehn-modal/foehn-modal.module';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
export class GesdemActionRecoveryModule {
|
|
13
|
-
}
|
|
14
|
-
GesdemActionRecoveryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
-
GesdemActionRecoveryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryModule, declarations: [GesdemActionRecoveryLoginComponent,
|
|
16
|
-
GesdemActionRecoveryRegistrationComponent], imports: [CommonModule,
|
|
17
|
-
RouterModule,
|
|
18
|
-
FoehnInputModule,
|
|
19
|
-
FoehnIconsModule,
|
|
20
|
-
FoehnFormModule,
|
|
21
|
-
FoehnModalModule], exports: [GesdemActionRecoveryLoginComponent,
|
|
22
|
-
GesdemActionRecoveryRegistrationComponent] });
|
|
23
|
-
GesdemActionRecoveryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryModule, imports: [[
|
|
24
|
-
CommonModule,
|
|
25
|
-
RouterModule,
|
|
26
|
-
FoehnInputModule,
|
|
27
|
-
FoehnIconsModule,
|
|
28
|
-
FoehnFormModule,
|
|
29
|
-
FoehnModalModule
|
|
30
|
-
]] });
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: GesdemActionRecoveryModule, decorators: [{
|
|
32
|
-
type: NgModule,
|
|
33
|
-
args: [{
|
|
34
|
-
imports: [
|
|
35
|
-
CommonModule,
|
|
36
|
-
RouterModule,
|
|
37
|
-
FoehnInputModule,
|
|
38
|
-
FoehnIconsModule,
|
|
39
|
-
FoehnFormModule,
|
|
40
|
-
FoehnModalModule
|
|
41
|
-
],
|
|
42
|
-
declarations: [
|
|
43
|
-
GesdemActionRecoveryLoginComponent,
|
|
44
|
-
GesdemActionRecoveryRegistrationComponent
|
|
45
|
-
],
|
|
46
|
-
exports: [
|
|
47
|
-
GesdemActionRecoveryLoginComponent,
|
|
48
|
-
GesdemActionRecoveryRegistrationComponent
|
|
49
|
-
]
|
|
50
|
-
}]
|
|
51
|
-
}] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBQzNILG1DQUFtQztBQUNuQyxPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSxxRkFBcUYsQ0FBQztBQUNoSixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFvQnJFLE1BQU0sT0FBTywwQkFBMEI7O3VIQUExQiwwQkFBMEI7d0hBQTFCLDBCQUEwQixpQkFSL0Isa0NBQWtDO1FBQ2xDLHlDQUF5QyxhQVR6QyxZQUFZO1FBQ1osWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLGdCQUFnQixhQU9oQixrQ0FBa0M7UUFDbEMseUNBQXlDO3dIQUdwQywwQkFBMEIsWUFqQjFCO1lBQ0wsWUFBWTtZQUNaLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixnQkFBZ0I7U0FDbkI7MkZBVVEsMEJBQTBCO2tCQWxCdEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGdCQUFnQjtxQkFDbkI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLGtDQUFrQzt3QkFDbEMseUNBQXlDO3FCQUM1QztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsa0NBQWtDO3dCQUNsQyx5Q0FBeUM7cUJBQzVDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRm9laG5JbnB1dE1vZHVsZSB9IGZyb20gJy4uL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0Lm1vZHVsZSc7XG5pbXBvcnQgeyBGb2Vobkljb25zTW9kdWxlIH0gZnJvbSAnLi4vZm9laG4taWNvbnMvZm9laG4taWNvbnMubW9kdWxlJztcbmltcG9ydCB7IEZvZWhuRm9ybU1vZHVsZSB9IGZyb20gJy4uL2ZvZWhuLWZvcm0vZm9laG4tZm9ybS5tb2R1bGUnO1xuaW1wb3J0IHsgR2VzZGVtQWN0aW9uUmVjb3ZlcnlMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudCc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuaW1wb3J0IHsgR2VzZGVtQWN0aW9uUmVjb3ZlcnlSZWdpc3RyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktcmVnaXN0cmF0aW9uL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktcmVnaXN0cmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb2Vobk1vZGFsTW9kdWxlIH0gZnJvbSAnLi4vZm9laG4tbW9kYWwvZm9laG4tbW9kYWwubW9kdWxlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUm91dGVyTW9kdWxlLFxuICAgICAgICBGb2VobklucHV0TW9kdWxlLFxuICAgICAgICBGb2Vobkljb25zTW9kdWxlLFxuICAgICAgICBGb2VobkZvcm1Nb2R1bGUsXG4gICAgICAgIEZvZWhuTW9kYWxNb2R1bGVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBHZXNkZW1BY3Rpb25SZWNvdmVyeUxvZ2luQ29tcG9uZW50LFxuICAgICAgICBHZXNkZW1BY3Rpb25SZWNvdmVyeVJlZ2lzdHJhdGlvbkNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBHZXNkZW1BY3Rpb25SZWNvdmVyeUxvZ2luQ29tcG9uZW50LFxuICAgICAgICBHZXNkZW1BY3Rpb25SZWNvdmVyeVJlZ2lzdHJhdGlvbkNvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgR2VzZGVtQWN0aW9uUmVjb3ZlcnlNb2R1bGUge31cbiJdfQ==
|