@dsivd/prestations-ng 14.5.20 → 15.0.0-beta3
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 +33 -6
- package/CONTRIBUTING.md +1 -1
- package/README.md +2 -0
- package/UPGRADING_V14.md +8 -11
- package/UPGRADING_V15.md +51 -0
- package/dsivd-prestations-ng-v15.0.0-beta3.tgz +0 -0
- package/esm2020/abstract-page-component.mjs +226 -0
- package/{esm2015/directives/currency-formatter.directive.js → esm2020/directives/currency-formatter.directive.mjs} +3 -3
- package/{esm2015/directives/formatter.module.js → esm2020/directives/formatter.module.mjs} +4 -4
- package/{esm2015/directives/iban-formatter.directive.js → esm2020/directives/iban-formatter.directive.mjs} +3 -3
- package/{esm2015/directives/ide-formatter.directive.js → esm2020/directives/ide-formatter.directive.mjs} +3 -3
- package/{esm2015/directives/ndc-formatter.directive.js → esm2020/directives/ndc-formatter.directive.mjs} +3 -3
- 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} +0 -0
- package/{esm2015/foehn-address/foehn-address.module.js → esm2020/foehn-address/foehn-address.module.mjs} +4 -4
- 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 +366 -0
- package/esm2020/foehn-address/foehn-input-foreign-locality.component.mjs +66 -0
- package/{esm2015/foehn-address/foehn-input-foreign-street.component.js → esm2020/foehn-address/foehn-input-foreign-street.component.mjs} +6 -11
- package/esm2020/foehn-autocomplete/foehn-autocomplete.component.mjs +548 -0
- package/{esm2015/foehn-autocomplete/foehn-autocomplete.module.js → esm2020/foehn-autocomplete/foehn-autocomplete.module.mjs} +4 -4
- package/esm2020/foehn-boolean/foehn-boolean-checkbox.component.mjs +28 -0
- package/esm2020/foehn-boolean/foehn-boolean-radio.component.mjs +37 -0
- package/{esm2015/foehn-boolean/foehn-boolean.module.js → esm2020/foehn-boolean/foehn-boolean.module.mjs} +4 -4
- package/{esm2015/foehn-breadcrumb/breadcrumb-event.service.js → esm2020/foehn-breadcrumb/breadcrumb-event.service.mjs} +10 -10
- package/{esm2015/foehn-breadcrumb/breadcrumb.js → esm2020/foehn-breadcrumb/breadcrumb.mjs} +0 -0
- package/{esm2015/foehn-breadcrumb/foehn-breadcrumb.component.js → esm2020/foehn-breadcrumb/foehn-breadcrumb.component.mjs} +5 -9
- package/{esm2015/foehn-breadcrumb/foehn-breadcrumb.module.js → esm2020/foehn-breadcrumb/foehn-breadcrumb.module.mjs} +4 -4
- package/esm2020/foehn-checkables/foehn-checkable-group.component.mjs +283 -0
- package/{esm2015/foehn-checkables/foehn-checkables.module.js → esm2020/foehn-checkables/foehn-checkables.module.mjs} +4 -4
- package/esm2020/foehn-checkables/foehn-checkbox.component.mjs +36 -0
- package/esm2020/foehn-checkables/foehn-radio.component.mjs +63 -0
- package/esm2020/foehn-checkables/foehn-select.component.mjs +62 -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} +0 -0
- package/esm2020/foehn-confirm-modal/foehn-confirm-modal.component.mjs +39 -0
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.module.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.module.mjs} +4 -4
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.service.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.service.mjs} +3 -3
- package/{esm2015/foehn-date-picker/date-picker-navigation.helper.js → esm2020/foehn-date-picker/date-picker-navigation.helper.mjs} +7 -7
- package/{esm2015/foehn-date-picker/date-picker.helper.js → esm2020/foehn-date-picker/date-picker.helper.mjs} +4 -4
- 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/{esm2015/foehn-date-picker/foehn-date-picker.component.js → esm2020/foehn-date-picker/foehn-date-picker.component.mjs} +22 -25
- package/{esm2015/foehn-date-picker/foehn-date-picker.module.js → esm2020/foehn-date-picker/foehn-date-picker.module.mjs} +4 -4
- 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 +70 -0
- package/{esm2015/foehn-date-picker-button/foehn-date-picker-button.module.js → esm2020/foehn-date-picker-button/foehn-date-picker-button.module.mjs} +4 -4
- package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.mjs} +8 -11
- package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.module.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.module.mjs} +4 -4
- package/esm2020/foehn-decision-electronique/foehn-decision-electronique.component.mjs +36 -0
- package/{esm2015/foehn-decision-electronique/foehn-decision-electronique.module.js → esm2020/foehn-decision-electronique/foehn-decision-electronique.module.mjs} +4 -4
- package/esm2020/foehn-footer/foehn-footer.component.mjs +129 -0
- package/{esm2015/foehn-footer/foehn-footer.module.js → esm2020/foehn-footer/foehn-footer.module.mjs} +4 -4
- package/{esm2015/foehn-footer/footer-link.type.js → esm2020/foehn-footer/footer-link.type.mjs} +0 -0
- package/{esm2015/foehn-form/foehn-form.component.js → esm2020/foehn-form/foehn-form.component.mjs} +5 -8
- package/{esm2015/foehn-form/foehn-form.module.js → esm2020/foehn-form/foehn-form.module.mjs} +4 -4
- package/{esm2015/foehn-growl/foehn-growl.component.js → esm2020/foehn-growl/foehn-growl.component.mjs} +8 -12
- package/{esm2015/foehn-growl/foehn-growl.module.js → esm2020/foehn-growl/foehn-growl.module.mjs} +4 -4
- package/{esm2015/foehn-growl/growl-broker.service.js → esm2020/foehn-growl/growl-broker.service.mjs} +3 -3
- package/{esm2015/foehn-growl/growl-message.js → esm2020/foehn-growl/growl-message.mjs} +0 -0
- package/{esm2015/foehn-growl/growl-types.js → esm2020/foehn-growl/growl-types.mjs} +0 -0
- package/esm2020/foehn-header/foehn-header.component.mjs +69 -0
- package/{esm2015/foehn-header/foehn-header.module.js → esm2020/foehn-header/foehn-header.module.mjs} +4 -4
- package/{esm2015/foehn-header/foehn-skip-link.component.js → esm2020/foehn-header/foehn-skip-link.component.mjs} +5 -8
- package/{esm2015/foehn-help-modal/foehn-help-modal.component.js → esm2020/foehn-help-modal/foehn-help-modal.component.mjs} +5 -9
- package/{esm2015/foehn-help-modal/foehn-help-modal.module.js → esm2020/foehn-help-modal/foehn-help-modal.module.mjs} +4 -4
- package/{esm2015/foehn-help-modal/foehn-help-modal.type.js → esm2020/foehn-help-modal/foehn-help-modal.type.mjs} +0 -0
- package/{esm2015/foehn-icons/abstract-icon-component.js → esm2020/foehn-icons/abstract-icon-component.mjs} +4 -4
- package/{esm2015/foehn-icons/foehn-icon-calendar.component.js → esm2020/foehn-icons/foehn-icon-calendar.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-check-square-o.component.js → esm2020/foehn-icons/foehn-icon-check-square-o.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-check.component.js → esm2020/foehn-icons/foehn-icon-check.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-chevron-down.component.js → esm2020/foehn-icons/foehn-icon-chevron-down.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-chevron-left.component.js → esm2020/foehn-icons/foehn-icon-chevron-left.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-chevron-right.component.js → esm2020/foehn-icons/foehn-icon-chevron-right.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-chevron-up.component.js → esm2020/foehn-icons/foehn-icon-chevron-up.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-clock.component.js → esm2020/foehn-icons/foehn-icon-clock.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-comment-dots.component.js → esm2020/foehn-icons/foehn-icon-comment-dots.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-edit.component.js → esm2020/foehn-icons/foehn-icon-edit.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-external-link-alt.component.js → esm2020/foehn-icons/foehn-icon-external-link-alt.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-file-pdf.component.js → esm2020/foehn-icons/foehn-icon-file-pdf.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-info-circle.component.js → esm2020/foehn-icons/foehn-icon-info-circle.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-lock.component.js → esm2020/foehn-icons/foehn-icon-lock.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-map-marker.component.js → esm2020/foehn-icons/foehn-icon-map-marker.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-minus-circle.component.js → esm2020/foehn-icons/foehn-icon-minus-circle.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-plus-circle.component.js → esm2020/foehn-icons/foehn-icon-plus-circle.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-plus-square.component.js → esm2020/foehn-icons/foehn-icon-plus-square.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-search.component.js → esm2020/foehn-icons/foehn-icon-search.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-times.component.js → esm2020/foehn-icons/foehn-icon-times.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-trash-alt.component.js → esm2020/foehn-icons/foehn-icon-trash-alt.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icon-unlock-alt.component.js → esm2020/foehn-icons/foehn-icon-unlock-alt.component.mjs} +5 -8
- package/{esm2015/foehn-icons/foehn-icons.module.js → esm2020/foehn-icons/foehn-icons.module.mjs} +4 -4
- package/esm2020/foehn-input/foehn-input-email.component.mjs +50 -0
- package/esm2020/foehn-input/foehn-input-hidden.component.mjs +53 -0
- package/{esm2015/foehn-input/foehn-input-number.component.js → esm2020/foehn-input/foehn-input-number.component.mjs} +10 -15
- package/esm2020/foehn-input/foehn-input-password.component.mjs +50 -0
- package/{esm2015/foehn-input/foehn-input-phone.component.js → esm2020/foehn-input/foehn-input-phone.component.mjs} +6 -11
- package/{esm2015/foehn-input/foehn-input-string.component.js → esm2020/foehn-input/foehn-input-string.component.mjs} +3 -3
- package/{esm2015/foehn-input/foehn-input-text.component.js → esm2020/foehn-input/foehn-input-text.component.mjs} +6 -11
- package/{esm2015/foehn-input/foehn-input-textarea.component.js → esm2020/foehn-input/foehn-input-textarea.component.mjs} +6 -11
- package/{esm2015/foehn-input/foehn-input.component.js → esm2020/foehn-input/foehn-input.component.mjs} +14 -14
- package/{esm2015/foehn-input/foehn-input.module.js → esm2020/foehn-input/foehn-input.module.mjs} +4 -4
- 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 +90 -0
- package/esm2020/foehn-input-time/foehn-input-time.component.mjs +75 -0
- package/esm2020/foehn-list/foehn-list.component.mjs +128 -0
- package/{esm2015/foehn-list/foehn-list.module.js → esm2020/foehn-list/foehn-list.module.mjs} +4 -4
- 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} +3 -3
- package/{esm2015/foehn-menu-prestation/abstract-page-from-menu.component.js → esm2020/foehn-menu-prestation/abstract-page-from-menu.component.mjs} +3 -3
- package/{esm2015/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.js → esm2020/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs} +5 -8
- 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/{esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.js → esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs} +5 -8
- package/{esm2015/foehn-menu-prestation/foehn-menu-prestation.module.js → esm2020/foehn-menu-prestation/foehn-menu-prestation.module.mjs} +4 -4
- 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} +4 -4
- package/esm2020/foehn-modal/foehn-modal.component.mjs +96 -0
- package/{esm2015/foehn-modal/foehn-modal.module.js → esm2020/foehn-modal/foehn-modal.module.mjs} +4 -4
- package/esm2020/foehn-nav13/foehn-input-nav13.component.mjs +94 -0
- package/{esm2015/foehn-nav13/foehn-input-nav13.module.js → esm2020/foehn-nav13/foehn-input-nav13.module.mjs} +4 -4
- package/esm2020/foehn-navigation/foehn-navigation.component.mjs +94 -0
- package/{esm2015/foehn-navigation/foehn-navigation.module.js → esm2020/foehn-navigation/foehn-navigation.module.mjs} +4 -4
- package/{esm2015/foehn-navigation/foehn-navigation.service.js → esm2020/foehn-navigation/foehn-navigation.service.mjs} +12 -12
- package/{esm2015/foehn-notfound/foehn-notfound.component.js → esm2020/foehn-notfound/foehn-notfound.component.mjs} +5 -8
- package/{esm2015/foehn-notfound/foehn-notfound.module.js → esm2020/foehn-notfound/foehn-notfound.module.mjs} +4 -4
- 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 +52 -0
- package/{esm2015/foehn-page/foehn-page-modal.service.js → esm2020/foehn-page/foehn-page-modal.service.mjs} +3 -3
- package/esm2020/foehn-page/foehn-page.component.mjs +215 -0
- package/{esm2015/foehn-page/foehn-page.module.js → esm2020/foehn-page/foehn-page.module.mjs} +4 -4
- package/{esm2015/foehn-page/foehn-page.service.js → esm2020/foehn-page/foehn-page.service.mjs} +4 -4
- package/{esm2015/foehn-recap-section/foehn-recap-section.component.js → esm2020/foehn-recap-section/foehn-recap-section.component.mjs} +5 -8
- package/{esm2015/foehn-recap-section/foehn-recap-section.module.js → esm2020/foehn-recap-section/foehn-recap-section.module.mjs} +4 -4
- 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} +4 -4
- package/esm2020/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +37 -0
- package/{esm2015/foehn-status-progress-bar/foehn-status-progress-bar.module.js → esm2020/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs} +4 -4
- package/{esm2015/foehn-table/foehn-table-column-configuration.js → esm2020/foehn-table/foehn-table-column-configuration.mjs} +0 -0
- package/{esm2015/foehn-table/foehn-table-page-change-event.js → esm2020/foehn-table/foehn-table-page-change-event.mjs} +0 -0
- package/esm2020/foehn-table/foehn-table.component.mjs +147 -0
- package/{esm2015/foehn-table/foehn-table.module.js → esm2020/foehn-table/foehn-table.module.mjs} +4 -4
- package/{esm2015/foehn-table/tableSort.js → esm2020/foehn-table/tableSort.mjs} +0 -0
- package/{esm2015/foehn-upload/abstract-foehn-uploader.component.js → esm2020/foehn-upload/abstract-foehn-uploader.component.mjs} +17 -17
- package/{esm2015/foehn-upload/document-reference.js → esm2020/foehn-upload/document-reference.mjs} +0 -0
- package/{esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.js → esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs} +3 -3
- 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 +165 -0
- package/{esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.js → esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs} +4 -4
- package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +214 -0
- package/{esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.js → esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs} +4 -4
- package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.service.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.service.mjs} +3 -3
- package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.type.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.type.mjs} +0 -0
- package/{esm2015/foehn-upload/foehn-multi-upload/pending-upload.service.js → esm2020/foehn-upload/foehn-multi-upload/pending-upload.service.mjs} +3 -3
- package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +163 -0
- package/{esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.js → esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs} +4 -4
- package/{esm2015/foehn-upload/pending-upload.type.js → esm2020/foehn-upload/pending-upload.type.mjs} +0 -0
- package/esm2020/foehn-upload/uploader.helper.mjs +326 -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} +4 -4
- package/{esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.component.js → esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs} +5 -9
- package/{esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.module.js → esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs} +4 -4
- 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} +4 -4
- 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} +3 -3
- package/esm2020/gesdem/gesdem-event.service.mjs +38 -0
- package/esm2020/gesdem/gesdem-handler.service.mjs +151 -0
- package/{esm2015/gesdem/gesdem-loader.guard.js → esm2020/gesdem/gesdem-loader.guard.mjs} +3 -3
- package/{esm2015/gesdem/gesdem-statut-utils.js → esm2020/gesdem/gesdem-statut-utils.mjs} +0 -0
- package/{esm2015/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.js → esm2020/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs} +5 -10
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +128 -0
- package/{esm2015/gesdem-action-recovery/gesdem-action-recovery.module.js → esm2020/gesdem-action-recovery/gesdem-action-recovery.module.mjs} +4 -4
- 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 +189 -0
- package/{esm2015/gesdem-confirmation/gesdem-confirmation.module.js → esm2020/gesdem-confirmation/gesdem-confirmation.module.mjs} +4 -4
- package/{esm2015/gesdem-error/gesdem-error.component.js → esm2020/gesdem-error/gesdem-error.component.mjs} +5 -9
- package/{esm2015/gesdem-error/gesdem-error.module.js → esm2020/gesdem-error/gesdem-error.module.mjs} +4 -4
- package/{esm2015/helpers/object.helper.js → esm2020/helpers/object.helper.mjs} +2 -2
- package/{esm2015/i18n-form.js → esm2020/i18n-form.mjs} +0 -0
- package/{esm2015/index.js → esm2020/index.mjs} +3 -3
- package/{esm2015/pipes/currency.pipe.js → esm2020/pipes/currency.pipe.mjs} +3 -3
- package/{esm2015/pipes/date.pipe.js → esm2020/pipes/date.pipe.mjs} +3 -3
- package/{esm2015/pipes/formatIde.pipe.js → esm2020/pipes/formatIde.pipe.mjs} +3 -3
- package/{esm2015/pipes/pipes.module.js → esm2020/pipes/pipes.module.mjs} +4 -4
- package/{esm2015/prestations-ng-core.module.js → esm2020/prestations-ng-core.module.mjs} +4 -4
- package/{esm2015/sdk-appinfo/application-info.js → esm2020/sdk-appinfo/application-info.mjs} +0 -0
- package/esm2020/sdk-appinfo/application-info.service.mjs +102 -0
- package/{esm2015/sdk-currency/currency.helper.js → esm2020/sdk-currency/currency.helper.mjs} +3 -3
- package/esm2020/sdk-date/date.helper.mjs +91 -0
- package/{esm2015/sdk-dictionary/default-dictionary.js → esm2020/sdk-dictionary/default-dictionary.mjs} +0 -0
- package/{esm2015/sdk-dictionary/sdk-dictionary.module.js → esm2020/sdk-dictionary/sdk-dictionary.module.mjs} +4 -4
- package/{esm2015/sdk-dictionary/sdk-dictionary.pipe.js → esm2020/sdk-dictionary/sdk-dictionary.pipe.mjs} +5 -5
- package/{esm2015/sdk-dictionary/sdk-dictionary.service.js → esm2020/sdk-dictionary/sdk-dictionary.service.mjs} +3 -3
- package/{esm2015/sdk-epayment/model/EPaymentParameters.js → esm2020/sdk-epayment/model/EPaymentParameters.mjs} +0 -0
- package/esm2020/sdk-epayment/sdk-epayment.component.mjs +79 -0
- package/{esm2015/sdk-epayment/sdk-epayment.module.js → esm2020/sdk-epayment/sdk-epayment.module.mjs} +4 -4
- package/esm2020/sdk-epayment/sdk-epayment.service.mjs +51 -0
- package/{esm2015/sdk-recaptcha/grecaptcha/grecaptcha.component.js → esm2020/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs} +5 -9
- package/esm2020/sdk-recaptcha/recaptcha.service.mjs +162 -0
- package/esm2020/sdk-recaptcha/sdk-recaptcha.component.mjs +68 -0
- package/{esm2015/sdk-recaptcha/sdk-recaptcha.module.js → esm2020/sdk-recaptcha/sdk-recaptcha.module.mjs} +4 -4
- package/{esm2015/sdk-redirect/iam-expired-interceptor.service.js → esm2020/sdk-redirect/iam-expired-interceptor.service.mjs} +3 -3
- package/{esm2015/sdk-redirect/redirect.component.js → esm2020/sdk-redirect/redirect.component.mjs} +5 -9
- package/{esm2015/sdk-redirect/sdk-redirect.module.js → esm2020/sdk-redirect/sdk-redirect.module.mjs} +4 -4
- 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} +3 -3
- package/esm2020/sdk-session-info/session-info.service.mjs +73 -0
- package/{esm2015/sdk-support-alert/support-alert-container.component.js → esm2020/sdk-support-alert/support-alert-container.component.mjs} +5 -9
- 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/{esm2015/sdk-support-alert/support-alert.module.js → esm2020/sdk-support-alert/support-alert.module.mjs} +4 -4
- package/{esm2015/sdk-support-alert/support-alert.service.js → esm2020/sdk-support-alert/support-alert.service.mjs} +3 -3
- 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.js → dsivd-prestations-ng.mjs} +973 -1300
- package/fesm2015/dsivd-prestations-ng.mjs.map +1 -0
- package/fesm2020/dsivd-prestations-ng.mjs +11532 -0
- package/fesm2020/dsivd-prestations-ng.mjs.map +1 -0
- package/foehn-breadcrumb/breadcrumb-event.service.d.ts +2 -2
- package/foehn-checkables/foehn-checkable-group.component.d.ts +3 -3
- package/foehn-confirm-modal/foehn-confirm-modal.component.d.ts +1 -1
- package/foehn-date-picker/date-picker-navigation.helper.d.ts +1 -1
- package/foehn-date-picker/date-picker.helper.d.ts +1 -1
- package/foehn-date-picker/foehn-date-picker.component.d.ts +3 -3
- package/foehn-date-picker-button/foehn-date-picker-button.component.d.ts +2 -2
- package/foehn-debug-summary/foehn-debug-summary.component.d.ts +1 -1
- package/foehn-growl/foehn-growl.component.d.ts +1 -1
- package/foehn-header/foehn-header.component.d.ts +2 -2
- package/foehn-input/foehn-input-number.component.d.ts +1 -1
- package/foehn-input/foehn-input.component.d.ts +4 -4
- package/foehn-list/foehn-list.component.d.ts +2 -2
- package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +1 -1
- package/foehn-modal/foehn-modal.component.d.ts +1 -1
- package/foehn-navigation/foehn-navigation.service.d.ts +2 -2
- package/foehn-page/foehn-page.service.d.ts +2 -2
- package/foehn-table/foehn-table.component.d.ts +2 -2
- package/foehn-upload/abstract-foehn-uploader.component.d.ts +2 -2
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.d.ts +1 -1
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.d.ts +2 -2
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +1 -1
- package/foehn-upload/uploader.helper.d.ts +12 -12
- package/foehn-validation-alerts/foehn-validation-alerts.component.d.ts +3 -3
- package/{error-template.d.ts → form-error.d.ts} +1 -1
- package/form-post-response.d.ts +17 -0
- package/gesdem/gesdem-event.service.d.ts +6 -6
- package/gesdem/gesdem-handler.service.d.ts +3 -3
- package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +2 -2
- package/gesdem-action-recovery/gesdem-action-recovery.service.d.ts +2 -2
- package/gesdem-confirmation/gesdem-confirmation.component.d.ts +4 -4
- package/index.d.ts +2 -2
- package/package.json +26 -13
- package/schematics/ng-add/index.js +6 -6
- 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 +2 -2
- 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.service.d.ts +2 -2
- package/sdk-epayment/sdk-epayment.component.d.ts +3 -13
- package/sdk-epayment/sdk-epayment.service.d.ts +2 -5
- package/sdk-recaptcha/recaptcha.service.d.ts +2 -2
- package/sdk-recaptcha/sdk-recaptcha.component.d.ts +2 -2
- package/sdk-session-info/session-info-data.d.ts +0 -1
- package/sdk-session-info/session-info.service.d.ts +9 -2
- package/validation/validation-handler.service.d.ts +4 -4
- package/backend-response.d.ts +0 -18
- package/bundles/dsivd-prestations-ng.umd.js +0 -13472
- package/bundles/dsivd-prestations-ng.umd.js.map +0 -1
- package/dsivd-prestations-ng-v14.5.20.tgz +0 -0
- package/esm2015/abstract-page-component.js +0 -224
- package/esm2015/backend-response.js +0 -10
- package/esm2015/error-template.js +0 -2
- 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-autocomplete/foehn-autocomplete.component.js +0 -556
- 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-checkables/foehn-checkable-group.component.js +0 -294
- 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-date-picker-button/foehn-date-picker-button.component.js +0 -74
- package/esm2015/foehn-decision-electronique/foehn-decision-electronique.component.js +0 -40
- package/esm2015/foehn-footer/foehn-footer.component.js +0 -132
- package/esm2015/foehn-header/foehn-header.component.js +0 -73
- 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-password.component.js +0 -55
- 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 -134
- package/esm2015/foehn-menu-prestation/abstract-list-item-detail-page.component.js +0 -122
- 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-modal/foehn-modal.component.js +0 -100
- package/esm2015/foehn-nav13/foehn-input-nav13.component.js +0 -98
- package/esm2015/foehn-navigation/foehn-navigation.component.js +0 -98
- package/esm2015/foehn-page/foehn-page-modal.component.js +0 -55
- package/esm2015/foehn-page/foehn-page.component.js +0 -217
- package/esm2015/foehn-status-progress-bar/foehn-status-progress-bar.component.js +0 -42
- package/esm2015/foehn-table/foehn-table.component.js +0 -151
- package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.js +0 -171
- package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.js +0 -220
- package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.js +0 -167
- package/esm2015/foehn-upload/uploader.helper.js +0 -322
- 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-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.js +0 -133
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery.service.js +0 -82
- package/esm2015/gesdem-confirmation/gesdem-confirmation.component.js +0 -194
- package/esm2015/sdk-appinfo/application-info.service.js +0 -111
- package/esm2015/sdk-date/date.helper.js +0 -90
- 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.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-session-info/session-info.service.js +0 -44
- package/esm2015/sdk-support-alert/support-alert.component.js +0 -38
- package/esm2015/supported-browser.js +0 -2
- package/esm2015/validation/validation-handler.service.js +0 -44
- package/fesm2015/dsivd-prestations-ng.js.map +0 -1
- package/sdk-epayment/model/EPaymentRequest.d.ts +0 -5
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { DatePipe, registerLocaleData } from '@angular/common';
|
|
3
|
+
// eslint-disable-next-line import/no-unresolved
|
|
4
|
+
import localeFr from '@angular/common/locales/fr';
|
|
5
|
+
import dayjs from 'dayjs';
|
|
6
|
+
import isToday from 'dayjs/plugin/isToday';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
dayjs.extend(isToday);
|
|
9
|
+
export class DateHelper {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.locale = 'fr-CH';
|
|
12
|
+
this.dateFormat = 'dd.MM.yyyy';
|
|
13
|
+
this.dateTimeFormat = 'dd.MM.yyyy HH:mm:ss';
|
|
14
|
+
registerLocaleData(localeFr, 'fr-CH');
|
|
15
|
+
this.datePipe = new DatePipe(this.locale);
|
|
16
|
+
}
|
|
17
|
+
static isValidArray(value) {
|
|
18
|
+
return (!!value &&
|
|
19
|
+
value.length > 2 &&
|
|
20
|
+
!!value[0] &&
|
|
21
|
+
!!value[1] &&
|
|
22
|
+
!!value[2]);
|
|
23
|
+
}
|
|
24
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
25
|
+
mapToDateFromNumberArray(object, ...fieldsNames) {
|
|
26
|
+
if (object) {
|
|
27
|
+
fieldsNames.forEach(fieldPath => {
|
|
28
|
+
object[fieldPath] = this.toDateFromNumberArray(object[fieldPath]);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
return object;
|
|
32
|
+
}
|
|
33
|
+
mapAllToDateFromNumberArray(
|
|
34
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
|
+
objects, ...fieldsNames) {
|
|
36
|
+
if (objects) {
|
|
37
|
+
objects.forEach(object => {
|
|
38
|
+
this.mapToDateFromNumberArray(object, ...fieldsNames);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return objects;
|
|
42
|
+
}
|
|
43
|
+
toDateFromNumberArray(dateInArray) {
|
|
44
|
+
if (dateInArray) {
|
|
45
|
+
if (dateInArray.length === 3) {
|
|
46
|
+
return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2]);
|
|
47
|
+
}
|
|
48
|
+
else if (dateInArray.length === 5) {
|
|
49
|
+
// because when time is 00:00:00 the array does not contain the seconds.
|
|
50
|
+
return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2], dateInArray[3], dateInArray[4]);
|
|
51
|
+
}
|
|
52
|
+
else if (dateInArray.length >= 6) {
|
|
53
|
+
return new Date(dateInArray[0], dateInArray[1] - 1, dateInArray[2], dateInArray[3], dateInArray[4], dateInArray[5]);
|
|
54
|
+
}
|
|
55
|
+
throw new Error(`Date in number[] format has wrong number of numbers : ${dateInArray.length}`);
|
|
56
|
+
}
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
arrayToDisplayDateDMY(d, showTime) {
|
|
60
|
+
if (showTime) {
|
|
61
|
+
return this.datePipe.transform(this.toDateFromNumberArray(d), this.dateTimeFormat);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
return this.datePipe.transform(this.toDateFromNumberArray(d), this.dateFormat);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
toDayjsFromNumberArray(value) {
|
|
68
|
+
if (DateHelper.isValidArray(value)) {
|
|
69
|
+
const dateAsString = `${value[0]}-${value[1]}-${value[2]}`;
|
|
70
|
+
return dayjs(dateAsString);
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
isValid(value) {
|
|
75
|
+
return (DateHelper.isValidArray(value) &&
|
|
76
|
+
this.toDayjsFromNumberArray(value).isValid());
|
|
77
|
+
}
|
|
78
|
+
isToday(value) {
|
|
79
|
+
return (DateHelper.isValidArray(value) &&
|
|
80
|
+
this.toDayjsFromNumberArray(value).isToday());
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
DateHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DateHelper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
84
|
+
DateHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DateHelper, providedIn: 'root' });
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DateHelper, decorators: [{
|
|
86
|
+
type: Injectable,
|
|
87
|
+
args: [{
|
|
88
|
+
providedIn: 'root'
|
|
89
|
+
}]
|
|
90
|
+
}], ctorParameters: function () { return []; } });
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLWRhdGUvZGF0ZS5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0QsZ0RBQWdEO0FBQ2hELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQzs7QUFFM0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUt0QixNQUFNLE9BQU8sVUFBVTtJQU1uQjtRQUxRLFdBQU0sR0FBRyxPQUFPLENBQUM7UUFDakIsZUFBVSxHQUFHLFlBQVksQ0FBQztRQUMxQixtQkFBYyxHQUFHLHFCQUFxQixDQUFDO1FBSTNDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFlO1FBQ3ZDLE9BQU8sQ0FDSCxDQUFDLENBQUMsS0FBSztZQUNQLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUNoQixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNWLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ1YsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDYixDQUFDO0lBQ04sQ0FBQztJQUVELDhEQUE4RDtJQUM5RCx3QkFBd0IsQ0FBQyxNQUFXLEVBQUUsR0FBRyxXQUFxQjtRQUMx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LENBQUM7WUFDOUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUMvQyxDQUFDO0lBQ04sQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFlO1FBQ25CLE9BQU8sQ0FDSCxVQUFVLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztZQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQy9DLENBQUM7SUFDTixDQUFDOzt1R0FwSFEsVUFBVTsyR0FBVixVQUFVLGNBRlAsTUFBTTsyRkFFVCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGVQaXBlLCByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLXVucmVzb2x2ZWRcbmltcG9ydCBsb2NhbGVGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0IGlzVG9kYXkgZnJvbSAnZGF5anMvcGx1Z2luL2lzVG9kYXknO1xuXG5kYXlqcy5leHRlbmQoaXNUb2RheSk7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZUhlbHBlciB7XG4gICAgcHJpdmF0ZSBsb2NhbGUgPSAnZnItQ0gnO1xuICAgIHByaXZhdGUgZGF0ZUZvcm1hdCA9ICdkZC5NTS55eXl5JztcbiAgICBwcml2YXRlIGRhdGVUaW1lRm9ybWF0ID0gJ2RkLk1NLnl5eXkgSEg6bW06c3MnO1xuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVGciwgJ2ZyLUNIJyk7XG4gICAgICAgIHRoaXMuZGF0ZVBpcGUgPSBuZXcgRGF0ZVBpcGUodGhpcy5sb2NhbGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGlzVmFsaWRBcnJheSh2YWx1ZTogbnVtYmVyW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdmFsdWUgJiZcbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCA+IDIgJiZcbiAgICAgICAgICAgICEhdmFsdWVbMF0gJiZcbiAgICAgICAgICAgICEhdmFsdWVbMV0gJiZcbiAgICAgICAgICAgICEhdmFsdWVbMl1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG1hcFRvRGF0ZUZyb21OdW1iZXJBcnJheShvYmplY3Q6IGFueSwgLi4uZmllbGRzTmFtZXM6IHN0cmluZ1tdKTogYW55IHtcbiAgICAgICAgaWYgKG9iamVjdCkge1xuICAgICAgICAgICAgZmllbGRzTmFtZXMuZm9yRWFjaChmaWVsZFBhdGggPT4ge1xuICAgICAgICAgICAgICAgIG9iamVjdFtmaWVsZFBhdGhdID0gdGhpcy50b0RhdGVGcm9tTnVtYmVyQXJyYXkoXG4gICAgICAgICAgICAgICAgICAgIG9iamVjdFtmaWVsZFBhdGhdXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYmplY3Q7XG4gICAgfVxuXG4gICAgbWFwQWxsVG9EYXRlRnJvbU51bWJlckFycmF5KFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICBvYmplY3RzOiBhbnlbXSxcbiAgICAgICAgLi4uZmllbGRzTmFtZXM6IHN0cmluZ1tdXG4gICAgKTogLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBhbnlbXSB7XG4gICAgICAgIGlmIChvYmplY3RzKSB7XG4gICAgICAgICAgICBvYmplY3RzLmZvckVhY2gob2JqZWN0ID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hcFRvRGF0ZUZyb21OdW1iZXJBcnJheShvYmplY3QsIC4uLmZpZWxkc05hbWVzKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYmplY3RzO1xuICAgIH1cblxuICAgIHRvRGF0ZUZyb21OdW1iZXJBcnJheShkYXRlSW5BcnJheTogbnVtYmVyW10pOiBEYXRlIHtcbiAgICAgICAgaWYgKGRhdGVJbkFycmF5KSB7XG4gICAgICAgICAgICBpZiAoZGF0ZUluQXJyYXkubGVuZ3RoID09PSAzKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVswXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbMV0gLSAxLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVsyXVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGRhdGVJbkFycmF5Lmxlbmd0aCA9PT0gNSkge1xuICAgICAgICAgICAgICAgIC8vIGJlY2F1c2Ugd2hlbiB0aW1lIGlzIDAwOjAwOjAwIHRoZSBhcnJheSBkb2VzIG5vdCBjb250YWluIHRoZSBzZWNvbmRzLlxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZShcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbMF0sXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzFdIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbMl0sXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzNdLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVs0XVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGRhdGVJbkFycmF5Lmxlbmd0aCA+PSA2KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVswXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbMV0gLSAxLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVsyXSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUluQXJyYXlbM10sXG4gICAgICAgICAgICAgICAgICAgIGRhdGVJbkFycmF5WzRdLFxuICAgICAgICAgICAgICAgICAgICBkYXRlSW5BcnJheVs1XVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgYERhdGUgaW4gbnVtYmVyW10gZm9ybWF0IGhhcyB3cm9uZyBudW1iZXIgb2YgbnVtYmVycyA6ICR7ZGF0ZUluQXJyYXkubGVuZ3RofWBcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgYXJyYXlUb0Rpc3BsYXlEYXRlRE1ZKGQ6IG51bWJlcltdLCBzaG93VGltZTogYm9vbGVhbik6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBpZiAoc2hvd1RpbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShcbiAgICAgICAgICAgICAgICB0aGlzLnRvRGF0ZUZyb21OdW1iZXJBcnJheShkKSxcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVUaW1lRm9ybWF0XG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKFxuICAgICAgICAgICAgICAgIHRoaXMudG9EYXRlRnJvbU51bWJlckFycmF5KGQpLFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZUZvcm1hdFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRvRGF5anNGcm9tTnVtYmVyQXJyYXkodmFsdWU6IG51bWJlcltdKTogZGF5anMuRGF5anMge1xuICAgICAgICBpZiAoRGF0ZUhlbHBlci5pc1ZhbGlkQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlQXNTdHJpbmcgPSBgJHt2YWx1ZVswXX0tJHt2YWx1ZVsxXX0tJHt2YWx1ZVsyXX1gO1xuICAgICAgICAgICAgcmV0dXJuIGRheWpzKGRhdGVBc1N0cmluZyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpc1ZhbGlkKHZhbHVlOiBudW1iZXJbXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgRGF0ZUhlbHBlci5pc1ZhbGlkQXJyYXkodmFsdWUpICYmXG4gICAgICAgICAgICB0aGlzLnRvRGF5anNGcm9tTnVtYmVyQXJyYXkodmFsdWUpLmlzVmFsaWQoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlzVG9kYXkodmFsdWU6IG51bWJlcltdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBEYXRlSGVscGVyLmlzVmFsaWRBcnJheSh2YWx1ZSkgJiZcbiAgICAgICAgICAgIHRoaXMudG9EYXlqc0Zyb21OdW1iZXJBcnJheSh2YWx1ZSkuaXNUb2RheSgpXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
File without changes
|
|
@@ -3,10 +3,10 @@ import { SdkDictionaryPipe } from './sdk-dictionary.pipe';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class SdkDictionaryModule {
|
|
5
5
|
}
|
|
6
|
-
SdkDictionaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
7
|
-
SdkDictionaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
8
|
-
SdkDictionaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
6
|
+
SdkDictionaryModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
SdkDictionaryModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryModule, declarations: [SdkDictionaryPipe], exports: [SdkDictionaryPipe] });
|
|
8
|
+
SdkDictionaryModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryModule });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryModule, decorators: [{
|
|
10
10
|
type: NgModule,
|
|
11
11
|
args: [{
|
|
12
12
|
declarations: [SdkDictionaryPipe],
|
|
@@ -8,7 +8,7 @@ export class SdkDictionaryPipe {
|
|
|
8
8
|
this.ref = ref;
|
|
9
9
|
this.asyncPipe = new AsyncPipe(ref);
|
|
10
10
|
}
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
12
|
transform(key, placeHolderType) {
|
|
13
13
|
if (!key) {
|
|
14
14
|
return key;
|
|
@@ -16,13 +16,13 @@ export class SdkDictionaryPipe {
|
|
|
16
16
|
return this.asyncPipe.transform(this.dictionaryService.getKey(key, placeHolderType));
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
SdkDictionaryPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
20
|
-
SdkDictionaryPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
SdkDictionaryPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryPipe, deps: [{ token: i1.SdkDictionaryService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
20
|
+
SdkDictionaryPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryPipe, name: "fromDictionary", pure: false });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryPipe, decorators: [{
|
|
22
22
|
type: Pipe,
|
|
23
23
|
args: [{
|
|
24
24
|
name: 'fromDictionary',
|
|
25
25
|
pure: false
|
|
26
26
|
}]
|
|
27
27
|
}], ctorParameters: function () { return [{ type: i1.SdkDictionaryService }, { type: i0.ChangeDetectorRef }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWRpY3Rpb25hcnkucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVc1QyxNQUFNLE9BQU8saUJBQWlCO0lBRzFCLFlBQ1ksaUJBQXVDLEVBQ3ZDLEdBQXNCO1FBRHRCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBc0I7UUFDdkMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFFOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsOERBQThEO0lBQzlELFNBQVMsQ0FBQyxHQUFRLEVBQUUsZUFBaUM7UUFDakQsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNOLE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FDdEQsQ0FBQztJQUNOLENBQUM7OzhHQW5CUSxpQkFBaUI7NEdBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUo3QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxnQkFBZ0I7b0JBQ3RCLElBQUksRUFBRSxLQUFLO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7XG4gICAgUGxhY2Vob2xkZXJUeXBlLFxuICAgIFNka0RpY3Rpb25hcnlTZXJ2aWNlXG59IGZyb20gJy4vc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnZnJvbURpY3Rpb25hcnknLFxuICAgIHB1cmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIFNka0RpY3Rpb25hcnlQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSBhc3luY1BpcGU6IEFzeW5jUGlwZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRpY3Rpb25hcnlTZXJ2aWNlOiBTZGtEaWN0aW9uYXJ5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYXN5bmNQaXBlID0gbmV3IEFzeW5jUGlwZShyZWYpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdHJhbnNmb3JtKGtleTogYW55LCBwbGFjZUhvbGRlclR5cGU/OiBQbGFjZWhvbGRlclR5cGUpOiBhbnkge1xuICAgICAgICBpZiAoIWtleSkge1xuICAgICAgICAgICAgcmV0dXJuIGtleTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmFzeW5jUGlwZS50cmFuc2Zvcm0oXG4gICAgICAgICAgICB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleShrZXksIHBsYWNlSG9sZGVyVHlwZSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -85,9 +85,9 @@ export class SdkDictionaryService {
|
|
|
85
85
|
return this.languageCodeSubject.asObservable();
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
SdkDictionaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
89
|
-
SdkDictionaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
88
|
+
SdkDictionaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryService, deps: [{ token: i1.HttpClient }, { token: i2.GrowlBrokerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
89
|
+
SdkDictionaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryService, providedIn: 'root' });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkDictionaryService, decorators: [{
|
|
91
91
|
type: Injectable,
|
|
92
92
|
args: [{
|
|
93
93
|
providedIn: 'root'
|
|
File without changes
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { first } from 'rxjs/operators';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./sdk-epayment.service";
|
|
5
|
+
import * as i2 from "@angular/router";
|
|
6
|
+
import * as i3 from "../gesdem/gesdem-handler.service";
|
|
7
|
+
import * as i4 from "../gesdem/gesdem-event.service";
|
|
8
|
+
import * as i5 from "../foehn-modal/foehn-modal.component";
|
|
9
|
+
/**
|
|
10
|
+
* Composant invisible à insérer dans une page SDK permettant d'effectuer des paiement sur la plateforme de paiement de
|
|
11
|
+
* Postfinance. La méthode payNow() déclenche le paiement.
|
|
12
|
+
*/
|
|
13
|
+
export class SdkEpaymentComponent {
|
|
14
|
+
constructor(ePaymentService, route, gesDemService, gesdemEventService) {
|
|
15
|
+
this.ePaymentService = ePaymentService;
|
|
16
|
+
this.route = route;
|
|
17
|
+
this.gesDemService = gesDemService;
|
|
18
|
+
this.gesdemEventService = gesdemEventService;
|
|
19
|
+
this.baseUrl = 'api/';
|
|
20
|
+
this.platformFailureMessage = 'Un problème non identifié est survenu lors du paiement électronique.';
|
|
21
|
+
this.modalDisplayed = false;
|
|
22
|
+
this.failureDetails = new Map([
|
|
23
|
+
['back', 'Vous avez abandonné le paiement électronique.'],
|
|
24
|
+
['cancel', 'Vous avez abandonné le paiement électronique.'],
|
|
25
|
+
[
|
|
26
|
+
'refused',
|
|
27
|
+
'Le paiement a été refusé par le fournisseur de paiement électronique.'
|
|
28
|
+
],
|
|
29
|
+
[
|
|
30
|
+
'error',
|
|
31
|
+
'Une erreur est survenue lors du paiement. Veuillez réessayer ou choisir un autre mode de paiement si disponible.'
|
|
32
|
+
]
|
|
33
|
+
]);
|
|
34
|
+
}
|
|
35
|
+
ngOnInit() {
|
|
36
|
+
// En cas d'échec, la plateforme nous renvoie dans la page avec une raison.
|
|
37
|
+
this.platformFailureReason = this.route.snapshot.queryParams.REASON;
|
|
38
|
+
if (this.platformFailureReason) {
|
|
39
|
+
this.handleFailure();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Déclenche le processus de paiement électronique. Le paiement est d'abord préparé avec GesDem, puis on navigue
|
|
44
|
+
* vers la plateforme de paiement.
|
|
45
|
+
*
|
|
46
|
+
* @param reference La référence de la demande en cours
|
|
47
|
+
*/
|
|
48
|
+
payNow(reference) {
|
|
49
|
+
this.ePaymentService
|
|
50
|
+
.createPendingPayment(reference, this.baseUrl)
|
|
51
|
+
.subscribe(redirectUrl => {
|
|
52
|
+
window.location.href = redirectUrl;
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
handleFailure() {
|
|
56
|
+
const message = this.failureDetails.get(this.platformFailureReason);
|
|
57
|
+
if (message) {
|
|
58
|
+
this.platformFailureMessage = message;
|
|
59
|
+
}
|
|
60
|
+
this.gesdemEventService
|
|
61
|
+
.formInitializationObservable()
|
|
62
|
+
.pipe(first())
|
|
63
|
+
.subscribe(() => {
|
|
64
|
+
const reference = this.gesDemService.lastResponse.meta
|
|
65
|
+
.reference;
|
|
66
|
+
this.ePaymentService.cancelPendingPayment(reference, this.baseUrl);
|
|
67
|
+
});
|
|
68
|
+
this.modalDisplayed = true;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
SdkEpaymentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentComponent, deps: [{ token: i1.EPaymentService }, { token: i2.ActivatedRoute }, { token: i3.GesdemHandlerService }, { token: i4.GesdemEventService }], target: i0.ɵɵFactoryTarget.Component });
|
|
72
|
+
SdkEpaymentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: SdkEpaymentComponent, selector: "epayment-form", inputs: { baseUrl: "baseUrl" }, ngImport: i0, template: "<foehn-modal\n [isModalVisible]=\"this.modalDisplayed\"\n [modalBodyText]=\"this.platformFailureMessage\"\n modalHeaderText=\"Le paiement n'a pu \u00EAtre effectu\u00E9\"\n modalFooterText=\"L'Administration Cantonale Vaudoise\"\n (click)=\"this.modalDisplayed = false\"\n></foehn-modal>\n", styles: [""], components: [{ type: i5.FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "modalFooterText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }] });
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'epayment-form', template: "<foehn-modal\n [isModalVisible]=\"this.modalDisplayed\"\n [modalBodyText]=\"this.platformFailureMessage\"\n modalHeaderText=\"Le paiement n'a pu \u00EAtre effectu\u00E9\"\n modalFooterText=\"L'Administration Cantonale Vaudoise\"\n (click)=\"this.modalDisplayed = false\"\n></foehn-modal>\n", styles: [""] }]
|
|
76
|
+
}], ctorParameters: function () { return [{ type: i1.EPaymentService }, { type: i2.ActivatedRoute }, { type: i3.GesdemHandlerService }, { type: i4.GesdemEventService }]; }, propDecorators: { baseUrl: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}] } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWVwYXltZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9zZGstZXBheW1lbnQvc2RrLWVwYXltZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9zZGstZXBheW1lbnQvc2RrLWVwYXltZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBS3pELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQUV2Qzs7O0dBR0c7QUFPSCxNQUFNLE9BQU8sb0JBQW9CO0lBdUI3QixZQUNZLGVBQWdDLEVBQ3ZCLEtBQXFCLEVBQ3JCLGFBQW1DLEVBQ25DLGtCQUFzQztRQUgvQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDdkIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUF6QjNELFlBQU8sR0FBRyxNQUFNLENBQUM7UUFFakIsMkJBQXNCLEdBQ2xCLHNFQUFzRSxDQUFDO1FBQzNFLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBSWYsbUJBQWMsR0FBRyxJQUFJLEdBQUcsQ0FBQztZQUM3QixDQUFDLE1BQU0sRUFBRSwrQ0FBK0MsQ0FBQztZQUN6RCxDQUFDLFFBQVEsRUFBRSwrQ0FBK0MsQ0FBQztZQUMzRDtnQkFDSSxTQUFTO2dCQUNULHVFQUF1RTthQUMxRTtZQUNEO2dCQUNJLE9BQU87Z0JBQ1Asa0hBQWtIO2FBQ3JIO1NBQ0osQ0FBQyxDQUFDO0lBT0EsQ0FBQztJQUVKLFFBQVE7UUFDSiwyRUFBMkU7UUFDM0UsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDcEUsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDNUIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLFNBQWlCO1FBQ3BCLElBQUksQ0FBQyxlQUFlO2FBQ2Ysb0JBQW9CLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDN0MsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ3JCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTyxhQUFhO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3BFLElBQUksT0FBTyxFQUFFO1lBQ1QsSUFBSSxDQUFDLHNCQUFzQixHQUFHLE9BQU8sQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxrQkFBa0I7YUFDbEIsNEJBQTRCLEVBQUU7YUFDOUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNaLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLElBQUk7aUJBQ2pELFNBQVMsQ0FBQztZQUNmLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQ3JDLFNBQVMsRUFDVCxJQUFJLENBQUMsT0FBTyxDQUNmLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQy9CLENBQUM7O2lIQXRFUSxvQkFBb0I7cUdBQXBCLG9CQUFvQixxRkNqQmpDLGtUQU9BOzJGRFVhLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFFSSxlQUFlO3VNQU16QixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVQYXltZW50U2VydmljZSB9IGZyb20gJy4vc2RrLWVwYXltZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1FdmVudFNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogQ29tcG9zYW50IGludmlzaWJsZSDDoCBpbnPDqXJlciBkYW5zIHVuZSBwYWdlIFNESyBwZXJtZXR0YW50IGQnZWZmZWN0dWVyIGRlcyBwYWllbWVudCBzdXIgbGEgcGxhdGVmb3JtZSBkZSBwYWllbWVudCBkZVxuICogUG9zdGZpbmFuY2UuIExhIG3DqXRob2RlIHBheU5vdygpIGTDqWNsZW5jaGUgbGUgcGFpZW1lbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdlcGF5bWVudC1mb3JtJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2RrLWVwYXltZW50LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zZGstZXBheW1lbnQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNka0VwYXltZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIGJhc2VVcmwgPSAnYXBpLyc7XG5cbiAgICBwbGF0Zm9ybUZhaWx1cmVNZXNzYWdlID1cbiAgICAgICAgJ1VuIHByb2Jsw6htZSBub24gaWRlbnRpZmnDqSBlc3Qgc3VydmVudSBsb3JzIGR1IHBhaWVtZW50IMOpbGVjdHJvbmlxdWUuJztcbiAgICBtb2RhbERpc3BsYXllZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBwbGF0Zm9ybUZhaWx1cmVSZWFzb246IHN0cmluZztcblxuICAgIHByaXZhdGUgZmFpbHVyZURldGFpbHMgPSBuZXcgTWFwKFtcbiAgICAgICAgWydiYWNrJywgJ1ZvdXMgYXZleiBhYmFuZG9ubsOpIGxlIHBhaWVtZW50IMOpbGVjdHJvbmlxdWUuJ10sXG4gICAgICAgIFsnY2FuY2VsJywgJ1ZvdXMgYXZleiBhYmFuZG9ubsOpIGxlIHBhaWVtZW50IMOpbGVjdHJvbmlxdWUuJ10sXG4gICAgICAgIFtcbiAgICAgICAgICAgICdyZWZ1c2VkJyxcbiAgICAgICAgICAgICdMZSBwYWllbWVudCBhIMOpdMOpIHJlZnVzw6kgcGFyIGxlIGZvdXJuaXNzZXVyIGRlIHBhaWVtZW50IMOpbGVjdHJvbmlxdWUuJ1xuICAgICAgICBdLFxuICAgICAgICBbXG4gICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgJ1VuZSBlcnJldXIgZXN0IHN1cnZlbnVlIGxvcnMgZHUgcGFpZW1lbnQuIFZldWlsbGV6IHLDqWVzc2F5ZXIgb3UgY2hvaXNpciB1biBhdXRyZSBtb2RlIGRlIHBhaWVtZW50IHNpIGRpc3BvbmlibGUuJ1xuICAgICAgICBdXG4gICAgXSk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlUGF5bWVudFNlcnZpY2U6IEVQYXltZW50U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZ2VzRGVtU2VydmljZTogR2VzZGVtSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZ2VzZGVtRXZlbnRTZXJ2aWNlOiBHZXNkZW1FdmVudFNlcnZpY2VcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gRW4gY2FzIGQnw6ljaGVjLCBsYSBwbGF0ZWZvcm1lIG5vdXMgcmVudm9pZSBkYW5zIGxhIHBhZ2UgYXZlYyB1bmUgcmFpc29uLlxuICAgICAgICB0aGlzLnBsYXRmb3JtRmFpbHVyZVJlYXNvbiA9IHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMuUkVBU09OO1xuICAgICAgICBpZiAodGhpcy5wbGF0Zm9ybUZhaWx1cmVSZWFzb24pIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRmFpbHVyZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRMOpY2xlbmNoZSBsZSBwcm9jZXNzdXMgZGUgcGFpZW1lbnQgw6lsZWN0cm9uaXF1ZS4gTGUgcGFpZW1lbnQgZXN0IGQnYWJvcmQgcHLDqXBhcsOpIGF2ZWMgR2VzRGVtLCBwdWlzIG9uIG5hdmlndWVcbiAgICAgKiB2ZXJzIGxhIHBsYXRlZm9ybWUgZGUgcGFpZW1lbnQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVmZXJlbmNlIExhIHLDqWbDqXJlbmNlIGRlIGxhIGRlbWFuZGUgZW4gY291cnNcbiAgICAgKi9cbiAgICBwYXlOb3cocmVmZXJlbmNlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lUGF5bWVudFNlcnZpY2VcbiAgICAgICAgICAgIC5jcmVhdGVQZW5kaW5nUGF5bWVudChyZWZlcmVuY2UsIHRoaXMuYmFzZVVybClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVkaXJlY3RVcmwgPT4ge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gcmVkaXJlY3RVcmw7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZUZhaWx1cmUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLmZhaWx1cmVEZXRhaWxzLmdldCh0aGlzLnBsYXRmb3JtRmFpbHVyZVJlYXNvbik7XG4gICAgICAgIGlmIChtZXNzYWdlKSB7XG4gICAgICAgICAgICB0aGlzLnBsYXRmb3JtRmFpbHVyZU1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2VzZGVtRXZlbnRTZXJ2aWNlXG4gICAgICAgICAgICAuZm9ybUluaXRpYWxpemF0aW9uT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVmZXJlbmNlID0gdGhpcy5nZXNEZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhXG4gICAgICAgICAgICAgICAgICAgIC5yZWZlcmVuY2U7XG4gICAgICAgICAgICAgICAgdGhpcy5lUGF5bWVudFNlcnZpY2UuY2FuY2VsUGVuZGluZ1BheW1lbnQoXG4gICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYXNlVXJsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMubW9kYWxEaXNwbGF5ZWQgPSB0cnVlO1xuICAgIH1cbn1cbiIsIjxmb2Vobi1tb2RhbFxuICAgIFtpc01vZGFsVmlzaWJsZV09XCJ0aGlzLm1vZGFsRGlzcGxheWVkXCJcbiAgICBbbW9kYWxCb2R5VGV4dF09XCJ0aGlzLnBsYXRmb3JtRmFpbHVyZU1lc3NhZ2VcIlxuICAgIG1vZGFsSGVhZGVyVGV4dD1cIkxlIHBhaWVtZW50IG4nYSBwdSDDqnRyZSBlZmZlY3R1w6lcIlxuICAgIG1vZGFsRm9vdGVyVGV4dD1cIkwnQWRtaW5pc3RyYXRpb24gQ2FudG9uYWxlIFZhdWRvaXNlXCJcbiAgICAoY2xpY2spPVwidGhpcy5tb2RhbERpc3BsYXllZCA9IGZhbHNlXCJcbj48L2ZvZWhuLW1vZGFsPlxuIl19
|
package/{esm2015/sdk-epayment/sdk-epayment.module.js → esm2020/sdk-epayment/sdk-epayment.module.mjs}
RENAMED
|
@@ -6,10 +6,10 @@ import { GrowlBrokerService } from '../foehn-growl/growl-broker.service';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class SdkEpaymentModule {
|
|
8
8
|
}
|
|
9
|
-
SdkEpaymentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
10
|
-
SdkEpaymentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
11
|
-
SdkEpaymentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
9
|
+
SdkEpaymentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
SdkEpaymentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentModule, declarations: [SdkEpaymentComponent], imports: [CommonModule, FoehnModalModule], exports: [SdkEpaymentComponent] });
|
|
11
|
+
SdkEpaymentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentModule, providers: [GrowlBrokerService], imports: [[CommonModule, FoehnModalModule]] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: SdkEpaymentModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
imports: [CommonModule, FoehnModalModule],
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { catchError } from 'rxjs/operators';
|
|
3
|
+
import { GrowlType } from '../foehn-growl/growl-types';
|
|
4
|
+
import { of } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common/http";
|
|
7
|
+
import * as i2 from "../foehn-growl/growl-broker.service";
|
|
8
|
+
export class EPaymentService {
|
|
9
|
+
constructor(http, growlService) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
this.growlService = growlService;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Effectuer une requête de préparation du paiement auprès du backend, et obtenir les paramètres de formulaire
|
|
15
|
+
* en vue du passage sur la plateforme de paiement électronique.
|
|
16
|
+
*
|
|
17
|
+
* @param ref La référence de la demande en cours
|
|
18
|
+
* @param baseUrl L'url de base (optionnelle)
|
|
19
|
+
* @returns la page de paiement sur laquelle rediriger l'utilisateur
|
|
20
|
+
*/
|
|
21
|
+
createPendingPayment(ref, baseUrl) {
|
|
22
|
+
return this.http
|
|
23
|
+
.post(`${baseUrl}epayment/prepare/${ref}`, null, {
|
|
24
|
+
responseType: 'text'
|
|
25
|
+
})
|
|
26
|
+
.pipe(catchError(() => {
|
|
27
|
+
this.cancelPendingPayment(ref, baseUrl);
|
|
28
|
+
throw new Error();
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
cancelPendingPayment(ref, baseUrl) {
|
|
32
|
+
const url = `${baseUrl}epayment/cancel/${ref}`;
|
|
33
|
+
this.http
|
|
34
|
+
.post(url, null)
|
|
35
|
+
.pipe(catchError(() => this.handleError()))
|
|
36
|
+
.subscribe();
|
|
37
|
+
}
|
|
38
|
+
handleError() {
|
|
39
|
+
this.growlService.addWithType(GrowlType.DANGER, 'Une erreur de transmission est survenue. Merci de réessayer plus tard.');
|
|
40
|
+
return of(null);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
EPaymentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: EPaymentService, deps: [{ token: i1.HttpClient }, { token: i2.GrowlBrokerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
44
|
+
EPaymentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: EPaymentService, providedIn: 'root' });
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: EPaymentService, decorators: [{
|
|
46
|
+
type: Injectable,
|
|
47
|
+
args: [{
|
|
48
|
+
providedIn: 'root'
|
|
49
|
+
}]
|
|
50
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.GrowlBrokerService }]; } });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWVwYXltZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLWVwYXltZW50L3Nkay1lcGF5bWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd2RCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBS3RDLE1BQU0sT0FBTyxlQUFlO0lBQ3hCLFlBQ1ksSUFBZ0IsRUFDaEIsWUFBZ0M7UUFEaEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixpQkFBWSxHQUFaLFlBQVksQ0FBb0I7SUFDekMsQ0FBQztJQUVKOzs7Ozs7O09BT0c7SUFDSCxvQkFBb0IsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUM3QyxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsSUFBSSxDQUFDLEdBQUcsT0FBTyxvQkFBb0IsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFO1lBQzdDLFlBQVksRUFBRSxNQUFlO1NBQ2hDLENBQUM7YUFDRCxJQUFJLENBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDeEMsTUFBTSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDVixDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBVyxFQUFFLE9BQWU7UUFDN0MsTUFBTSxHQUFHLEdBQUcsR0FBRyxPQUFPLG1CQUFtQixHQUFHLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSTthQUNKLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDO2FBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQzthQUMxQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sV0FBVztRQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUN6QixTQUFTLENBQUMsTUFBTSxFQUNoQix3RUFBd0UsQ0FDM0UsQ0FBQztRQUNGLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7OzRHQXpDUSxlQUFlO2dIQUFmLGVBQWUsY0FGWixNQUFNOzJGQUVULGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBHcm93bFR5cGUgfSBmcm9tICcuLi9mb2Vobi1ncm93bC9ncm93bC10eXBlcyc7XG5pbXBvcnQgeyBHcm93bEJyb2tlclNlcnZpY2UgfSBmcm9tICcuLi9mb2Vobi1ncm93bC9ncm93bC1icm9rZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFUGF5bWVudFBhcmFtZXRlcnMgfSBmcm9tICcuL21vZGVsL0VQYXltZW50UGFyYW1ldGVycyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEVQYXltZW50U2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgcHJpdmF0ZSBncm93bFNlcnZpY2U6IEdyb3dsQnJva2VyU2VydmljZVxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIEVmZmVjdHVlciB1bmUgcmVxdcOqdGUgZGUgcHLDqXBhcmF0aW9uIGR1IHBhaWVtZW50IGF1cHLDqHMgZHUgYmFja2VuZCwgZXQgb2J0ZW5pciBsZXMgcGFyYW3DqHRyZXMgZGUgZm9ybXVsYWlyZVxuICAgICAqIGVuIHZ1ZSBkdSBwYXNzYWdlIHN1ciBsYSBwbGF0ZWZvcm1lIGRlIHBhaWVtZW50IMOpbGVjdHJvbmlxdWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVmIExhIHLDqWbDqXJlbmNlIGRlIGxhIGRlbWFuZGUgZW4gY291cnNcbiAgICAgKiBAcGFyYW0gYmFzZVVybCBMJ3VybCBkZSBiYXNlIChvcHRpb25uZWxsZSlcbiAgICAgKiBAcmV0dXJucyBsYSBwYWdlIGRlIHBhaWVtZW50IHN1ciBsYXF1ZWxsZSByZWRpcmlnZXIgbCd1dGlsaXNhdGV1clxuICAgICAqL1xuICAgIGNyZWF0ZVBlbmRpbmdQYXltZW50KHJlZjogc3RyaW5nLCBiYXNlVXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucG9zdChgJHtiYXNlVXJsfWVwYXltZW50L3ByZXBhcmUvJHtyZWZ9YCwgbnVsbCwge1xuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ3RleHQnIGFzIGNvbnN0XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2FuY2VsUGVuZGluZ1BheW1lbnQocmVmLCBiYXNlVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuXG4gICAgY2FuY2VsUGVuZGluZ1BheW1lbnQocmVmOiBzdHJpbmcsIGJhc2VVcmw6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCB1cmwgPSBgJHtiYXNlVXJsfWVwYXltZW50L2NhbmNlbC8ke3JlZn1gO1xuICAgICAgICB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0KHVybCwgbnVsbClcbiAgICAgICAgICAgIC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gdGhpcy5oYW5kbGVFcnJvcigpKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZUVycm9yKCk6IE9ic2VydmFibGU8RVBheW1lbnRQYXJhbWV0ZXJzPiB7XG4gICAgICAgIHRoaXMuZ3Jvd2xTZXJ2aWNlLmFkZFdpdGhUeXBlKFxuICAgICAgICAgICAgR3Jvd2xUeXBlLkRBTkdFUixcbiAgICAgICAgICAgICdVbmUgZXJyZXVyIGRlIHRyYW5zbWlzc2lvbiBlc3Qgc3VydmVudWUuIE1lcmNpIGRlIHLDqWVzc2F5ZXIgcGx1cyB0YXJkLidcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -83,15 +83,11 @@ export class GrecaptchaComponent {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
|
-
GrecaptchaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
87
|
-
GrecaptchaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "
|
|
88
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
86
|
+
GrecaptchaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: GrecaptchaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
87
|
+
GrecaptchaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: GrecaptchaComponent, selector: "app-grecaptcha", inputs: { siteKey: "siteKey" }, outputs: { loaded: "loaded", scriptError: "scriptError", tokenOnSuccess: "tokenOnSuccess", destroyed: "destroyed" }, viewQueries: [{ propertyName: "recaptchaContainer", first: true, predicate: ["recaptchaContainer"], descendants: true, static: true }, { propertyName: "recaptchaScriptContainer", first: true, predicate: ["recaptchaScriptContainer"], descendants: true, static: true }], ngImport: i0, template: "<div #recaptchaScriptContainer></div>\n<div #recaptchaContainer></div>\n" });
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: GrecaptchaComponent, decorators: [{
|
|
89
89
|
type: Component,
|
|
90
|
-
args: [{
|
|
91
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
92
|
-
selector: 'app-grecaptcha',
|
|
93
|
-
templateUrl: './grecaptcha.component.html'
|
|
94
|
-
}]
|
|
90
|
+
args: [{ selector: 'app-grecaptcha', template: "<div #recaptchaScriptContainer></div>\n<div #recaptchaContainer></div>\n" }]
|
|
95
91
|
}], propDecorators: { siteKey: [{
|
|
96
92
|
type: Input
|
|
97
93
|
}], loaded: [{
|
|
@@ -109,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
|
|
|
109
105
|
type: ViewChild,
|
|
110
106
|
args: ['recaptchaScriptContainer', { static: true }]
|
|
111
107
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JlY2FwdGNoYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXJlY2FwdGNoYS9ncmVjYXB0Y2hhL2dyZWNhcHRjaGEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL3Nkay1yZWNhcHRjaGEvZ3JlY2FwdGNoYS9ncmVjYXB0Y2hhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDOztBQUV2QixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQ3RCLDhFQUE4RSxDQUFDO0FBQ25GLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRywrQkFBK0IsQ0FBQztBQVV6RDs7Ozs7O0dBTUc7QUFNSCxNQUFNLE9BQU8sbUJBQW1CO0lBTGhDO1FBVUksV0FBTSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFHckMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRzFDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFHbkQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0E4RjNDO0lBcEZHLFFBQVE7UUFDSiwwRUFBMEU7UUFDMUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFB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TTtnQkFJUCxrQkFBa0I7c0JBRGpCLFNBQVM7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlqRCx3QkFBd0I7c0JBRHZCLFNBQVM7dUJBQUMsMEJBQTBCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgUkVDQVBUQ0hBX1VSTCA9XG4gICAgJ2h0dHBzOi8vd3d3Lmdvb2dsZS5jb20vcmVjYXB0Y2hhL2FwaS5qcz9vbmxvYWQ9cmVDYXB0Y2hhTG9hZCZyZW5kZXI9ZXhwbGljaXQnO1xuZXhwb3J0IGNvbnN0IFNDUklQVF9JRCA9ICdwcmVzdGF0aW9ucy1uZy1jYXB0Y2hhLXNjcmlwdCc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgZ3JlY2FwdGNoYTogYW55O1xuICAgICAgICByZUNhcHRjaGFMb2FkOiAoKSA9PiB2b2lkO1xuICAgIH1cbn1cblxuLyoqXG4gKiBJbnRlZ3JhdGlvbiB3aXRoIEdvb2dsZSBSZWNhcHRjaGEuXG4gKlxuICogQWxsIHRoZSBxdWlya3MgYW5kIHdlaXJkbmVzcyBvZiB0aGlzIGludGVncmF0aW9uIHNob3VsZCBiZSBkb25lIGluIHRoaXNcbiAqIGNvbXBvbmVudC5cbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdhcHAtZ3JlY2FwdGNoYScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyZWNhcHRjaGEuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdyZWNhcHRjaGFDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KClcbiAgICBzaXRlS2V5OiBzdHJpbmc7XG5cbiAgICBAT3V0cHV0KClcbiAgICBsb2FkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBzY3JpcHRFcnJvciA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHRva2VuT25TdWNjZXNzID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBudWxsPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgZGVzdHJveWVkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgQFZpZXdDaGlsZCgncmVjYXB0Y2hhQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICByZWNhcHRjaGFDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBAVmlld0NoaWxkKCdyZWNhcHRjaGFTY3JpcHRDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIHJlY2FwdGNoYVNjcmlwdENvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICAgIHByaXZhdGUgd2lkZ2V0SWQ6IG51bWJlcjtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBJZiB0aGUgY29tcG9uZW50IGlzIGluIHRoZSBjb21wb25lbnQgdHJlZSwgbG9hZCB0aGUgY2FwdGNoYSByZWdhcmRsZXNzLlxuICAgICAgICB0aGlzLmxvYWRDYXB0Y2hhKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLmVtaXQodHJ1ZSk7XG4gICAgICAgIHRoaXMucmVtb3ZlU2NyaXB0KCk7XG4gICAgfVxuXG4gICAgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2FmZUNhcHRjaGFSZXNldCgpO1xuXG4gICAgICAgIHRoaXMudG9rZW5PblN1Y2Nlc3MuZW1pdChudWxsKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlckNhcHRjaGEoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5zaXRlS2V5KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3Npbmcgc2l0ZUtleSBvbiB0aGUgY29tcG9uZW50Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXdpbmRvdy5ncmVjYXB0Y2hhKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBjYXB0Y2hhIGhhcyBub3QgYmVlbiBsb2FkZWQgcHJvcGVybHknKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgICAgICAgIHNpdGVrZXk6IHRoaXMuc2l0ZUtleSxcbiAgICAgICAgICAgIGNhbGxiYWNrOiAodG9rZW46IHN0cmluZykgPT4gdGhpcy50b2tlbk9uU3VjY2Vzcy5lbWl0KHRva2VuKSxcbiAgICAgICAgICAgICdleHBpcmVkLWNhbGxiYWNrJzogKCkgPT4gdGhpcy5yZXNldCgpXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy53aWRnZXRJZCA9IHdpbmRvdy5ncmVjYXB0Y2hhLnJlbmRlcihcbiAgICAgICAgICAgIHRoaXMucmVjYXB0Y2hhQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICBjb25maWdcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLmxvYWRlZC5lbWl0KHRydWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBwZW5kU2NyaXB0VGFnKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgICAgc2NyaXB0LmlkID0gU0NSSVBUX0lEO1xuICAgICAgICBzY3JpcHQuc3JjID0gUkVDQVBUQ0hBX1VSTDtcbiAgICAgICAgc2NyaXB0LmFzeW5jID0gdHJ1ZTtcbiAgICAgICAgc2NyaXB0LmRlZmVyID0gdHJ1ZTtcbiAgICAgICAgc2NyaXB0Lm9uZXJyb3IgPSAoKSA9PiB0aGlzLnNjcmlwdEVycm9yLmVtaXQodHJ1ZSk7XG4gICAgICAgIHRoaXMucmVjYXB0Y2hhU2NyaXB0Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoc2NyaXB0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZVNjcmlwdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zY3JpcHRFcnJvci5lbWl0KGZhbHNlKTtcblxuICAgICAgICB3aW5kb3cucmVDYXB0Y2hhTG9hZCA9IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkQ2FwdGNoYSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2FkZWQuZW1pdChmYWxzZSk7XG5cbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgc2NyaXB0IGlzIGFscmVhZHkgbG9hZGVkLlxuICAgICAgICBjb25zdCBleGlzdGluZ1RhZyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFNDUklQVF9JRCk7XG4gICAgICAgIGlmIChleGlzdGluZ1RhZykge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJDYXB0Y2hhKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGlzIHdpbGwgYmUgY2FsbGVkIGlmIHRoZSBjYXB0Y2hhIGxvYWRzLlxuICAgICAgICB3aW5kb3cucmVDYXB0Y2hhTG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyQ2FwdGNoYSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIEFkZCB0aGUgc2NyaXB0IHdpdGggdGhlIGByZUNhcHRjaGFMb2FkYCBmdW5jdGlvbiBhcyBhIGNhbGxiYWNrLlxuICAgICAgICB0aGlzLmFwcGVuZFNjcmlwdFRhZygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2FmZUNhcHRjaGFSZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmICghIXdpbmRvdy5ncmVjYXB0Y2hhKSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmdyZWNhcHRjaGEucmVzZXQodGhpcy53aWRnZXRJZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIC8vIEluIGNhc2UgdGhlIHJlc2V0IG9mIHRoZSBHb29nbGUgQ2FwdGNoYSB0aHJvd3MgYW4gZXJyb3IuXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiAjcmVjYXB0Y2hhU2NyaXB0Q29udGFpbmVyPjwvZGl2PlxuPGRpdiAjcmVjYXB0Y2hhQ29udGFpbmVyPjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpParams } from '@angular/common/http';
|
|
3
|
+
import { BehaviorSubject, combineLatest, merge, of } from 'rxjs';
|
|
4
|
+
import { debounceTime, map } from 'rxjs/operators';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common/http";
|
|
7
|
+
import * as i2 from "../sdk-session-info/session-info.service";
|
|
8
|
+
import * as i3 from "@angular/router";
|
|
9
|
+
import * as i4 from "../validation/validation-handler.service";
|
|
10
|
+
import * as i5 from "../gesdem/gesdem-handler.service";
|
|
11
|
+
import * as i6 from "../gesdem/gesdem-event.service";
|
|
12
|
+
import * as i7 from "../sdk-appinfo/application-info.service";
|
|
13
|
+
export const RECAPTCHA_API_URL = 'api/recaptcha';
|
|
14
|
+
export const CAPTCHA_ERROR_NAME = 'recaptcha';
|
|
15
|
+
export class RecaptchaService {
|
|
16
|
+
constructor(http, sessionInfo, route, validationHandlerService, gesdemService, gesdemEventService, applicationInfoService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.sessionInfo = sessionInfo;
|
|
19
|
+
this.route = route;
|
|
20
|
+
this.validationHandlerService = validationHandlerService;
|
|
21
|
+
this.gesdemService = gesdemService;
|
|
22
|
+
this.gesdemEventService = gesdemEventService;
|
|
23
|
+
this.applicationInfoService = applicationInfoService;
|
|
24
|
+
this.errorsSubject = new BehaviorSubject([]);
|
|
25
|
+
this.shouldDisplay = this.initShouldDisplayObservable();
|
|
26
|
+
this.errors = this.initErrorObservable();
|
|
27
|
+
this.publicKey = this.initPublicKeyObservable();
|
|
28
|
+
}
|
|
29
|
+
onSuccess(token) {
|
|
30
|
+
// To be accessed by the gesdem service and to avoid to have a circular
|
|
31
|
+
// dependency between the gesdemHandlerService and the captcha service.
|
|
32
|
+
this.gesdemService.setCaptchaToken(token);
|
|
33
|
+
this.token = token;
|
|
34
|
+
if (!!this.token) {
|
|
35
|
+
this.clearErrors();
|
|
36
|
+
this.http.post(RECAPTCHA_API_URL, { token: this.token }).subscribe(
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
38
|
+
(data) => {
|
|
39
|
+
const success = !!data.success;
|
|
40
|
+
if (success) {
|
|
41
|
+
// Clear any potential errors from the server. We can do
|
|
42
|
+
// that because this should be the only error in the set as
|
|
43
|
+
// the captcha must be valid to have at least one form error.
|
|
44
|
+
this.validationHandlerService.updateErrors([]);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// If this is thrown, that's pretty bad because it means
|
|
48
|
+
// that Google couldn't verify the captcha key. This is
|
|
49
|
+
// either an attack or a misconfiguration.
|
|
50
|
+
this.addError('Votre captcha est invalide');
|
|
51
|
+
}
|
|
52
|
+
}, (e) => {
|
|
53
|
+
console.error(e);
|
|
54
|
+
// 404, timeout or network issue. Could happen.
|
|
55
|
+
this.addError('Une erreur est survenue lors de la validation du captcha.');
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
addError(message) {
|
|
60
|
+
const existingErrors = this.errorsSubject.getValue();
|
|
61
|
+
const newError = {
|
|
62
|
+
name: CAPTCHA_ERROR_NAME,
|
|
63
|
+
code: CAPTCHA_ERROR_NAME,
|
|
64
|
+
message
|
|
65
|
+
};
|
|
66
|
+
this.errorsSubject.next([newError, ...existingErrors]);
|
|
67
|
+
}
|
|
68
|
+
clearErrors() {
|
|
69
|
+
this.errorsSubject.next([]);
|
|
70
|
+
}
|
|
71
|
+
getErrors() {
|
|
72
|
+
return this.errors;
|
|
73
|
+
}
|
|
74
|
+
getShouldDisplay() {
|
|
75
|
+
return this.shouldDisplay;
|
|
76
|
+
}
|
|
77
|
+
getPublicKey() {
|
|
78
|
+
return this.publicKey;
|
|
79
|
+
}
|
|
80
|
+
getToken() {
|
|
81
|
+
return this.token;
|
|
82
|
+
}
|
|
83
|
+
initErrorObservable() {
|
|
84
|
+
const matchingGesdemErrors = merge(
|
|
85
|
+
// Ensures that there's an initial value
|
|
86
|
+
of([]),
|
|
87
|
+
// Read from the gesdem service all errors.
|
|
88
|
+
this.validationHandlerService.validationErrorsSubject).pipe(
|
|
89
|
+
// Errors from GesDem, or nothing
|
|
90
|
+
map(errors => errors.filter(ex => CAPTCHA_ERROR_NAME === ex.code)));
|
|
91
|
+
// Bind errors to the component, either from the backend of from this component
|
|
92
|
+
return combineLatest([
|
|
93
|
+
// Errors from gesdem matching the name of the captcha.
|
|
94
|
+
matchingGesdemErrors,
|
|
95
|
+
// Manual errors
|
|
96
|
+
this.errorsSubject
|
|
97
|
+
]).pipe(
|
|
98
|
+
// Merge the two errors sets
|
|
99
|
+
map(([gesdemErrors, localErrors]) => [
|
|
100
|
+
...gesdemErrors,
|
|
101
|
+
...localErrors
|
|
102
|
+
]));
|
|
103
|
+
}
|
|
104
|
+
initShouldDisplayObservable() {
|
|
105
|
+
const isConnectedObservable = this.sessionInfo.data.pipe(map(data => !this.sessionInfo.neverConnected && !!data));
|
|
106
|
+
const hasBypassEnabledObservable = this.checkBypassProperty().pipe(map(bypass => !!bypass.value));
|
|
107
|
+
const hasReferenceObservable = merge(
|
|
108
|
+
// To have an initial value. Can be null if there is no form.
|
|
109
|
+
of(this.gesdemService.lastResponse),
|
|
110
|
+
// Read the form from GesDem
|
|
111
|
+
this.gesdemEventService.formInitializationObservable()).pipe(map(form => !!form &&
|
|
112
|
+
!!this.gesdemService.lastResponse &&
|
|
113
|
+
!!this.gesdemService.lastResponse.meta &&
|
|
114
|
+
!!this.gesdemService.lastResponse.meta.reference));
|
|
115
|
+
return combineLatest([
|
|
116
|
+
isConnectedObservable,
|
|
117
|
+
hasBypassEnabledObservable,
|
|
118
|
+
hasReferenceObservable
|
|
119
|
+
]).pipe(
|
|
120
|
+
// To work around rapidly changing observables, such as the form
|
|
121
|
+
// when the page loads.
|
|
122
|
+
debounceTime(0), map(([isConnected, hasBypassEnabled, hasReference]) =>
|
|
123
|
+
// Do not display the captcha if the user is connected, the application
|
|
124
|
+
// already has a reference or if the bypass is enabled.
|
|
125
|
+
!isConnected && !hasBypassEnabled && !hasReference));
|
|
126
|
+
}
|
|
127
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
128
|
+
checkBypassProperty() {
|
|
129
|
+
const params = !!this.route.snapshot.queryParams.reCaptchaByPassUUID
|
|
130
|
+
? new HttpParams().set('reCaptchaByPassUUID', this.route.snapshot.queryParams.reCaptchaByPassUUID)
|
|
131
|
+
: null;
|
|
132
|
+
return this.http.get(`${RECAPTCHA_API_URL}/bypass`, { params });
|
|
133
|
+
}
|
|
134
|
+
initPublicKeyObservable() {
|
|
135
|
+
return this.applicationInfoService.data.pipe(map(applicationInfo => this.getPublicKeyOrNull(applicationInfo)));
|
|
136
|
+
}
|
|
137
|
+
getPublicKeyOrNull(applicationInfo) {
|
|
138
|
+
// Replace this whole shenanigan with applicationInfo?.configuration?.captcha?.publickey when
|
|
139
|
+
// Typescript supports it.
|
|
140
|
+
if (!applicationInfo) {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
const { configuration } = applicationInfo;
|
|
144
|
+
if (!configuration) {
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
147
|
+
const { captcha } = configuration;
|
|
148
|
+
if (!captcha) {
|
|
149
|
+
return null;
|
|
150
|
+
}
|
|
151
|
+
return captcha.publickey || null;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
RecaptchaService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RecaptchaService, deps: [{ token: i1.HttpClient }, { token: i2.SessionInfo }, { token: i3.ActivatedRoute }, { token: i4.ValidationHandlerService }, { token: i5.GesdemHandlerService }, { token: i6.GesdemEventService }, { token: i7.ApplicationInfoService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
155
|
+
RecaptchaService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RecaptchaService, providedIn: 'root' });
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: RecaptchaService, decorators: [{
|
|
157
|
+
type: Injectable,
|
|
158
|
+
args: [{
|
|
159
|
+
providedIn: 'root'
|
|
160
|
+
}]
|
|
161
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.SessionInfo }, { type: i3.ActivatedRoute }, { type: i4.ValidationHandlerService }, { type: i5.GesdemHandlerService }, { type: i6.GesdemEventService }, { type: i7.ApplicationInfoService }]; } });
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjYXB0Y2hhLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvc2RrLXJlY2FwdGNoYS9yZWNhcHRjaGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQVFuRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxlQUFlLENBQUM7QUFDakQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDO0FBSzlDLE1BQU0sT0FBTyxnQkFBZ0I7SUFPekIsWUFDWSxJQUFnQixFQUNoQixXQUF3QixFQUN4QixLQUFxQixFQUNyQix3QkFBa0QsRUFDbEQsYUFBbUMsRUFDbkMsa0JBQXNDLEVBQ3RDLHNCQUE4QztRQU45QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQVp6QyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFjLEVBQUUsQ0FBQyxDQUFDO1FBY2xFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDeEQsSUFB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O1NBQ2Y7UUFDRCxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsYUFBYSxDQUFDO1FBRWxDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxPQUFPLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQztJQUNyQyxDQUFDOzs2R0FuTVEsZ0JBQWdCO2lIQUFoQixnQkFBZ0IsY0FGYixNQUFNOzJGQUVULGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNlc3Npb25JbmZvIH0gZnJvbSAnLi4vc2RrLXNlc3Npb24taW5mby9zZXNzaW9uLWluZm8uc2VydmljZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEZvcm1FcnJvciB9IGZyb20gJy4uL2Zvcm0tZXJyb3InO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1FdmVudFNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlIH0gZnJvbSAnLi4vc2RrLWFwcGluZm8vYXBwbGljYXRpb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uSW5mbyB9IGZyb20gJy4uL3Nkay1hcHBpbmZvL2FwcGxpY2F0aW9uLWluZm8nO1xuXG5leHBvcnQgY29uc3QgUkVDQVBUQ0hBX0FQSV9VUkwgPSAnYXBpL3JlY2FwdGNoYSc7XG5leHBvcnQgY29uc3QgQ0FQVENIQV9FUlJPUl9OQU1FID0gJ3JlY2FwdGNoYSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUmVjYXB0Y2hhU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlcnJvcnM6IE9ic2VydmFibGU8Rm9ybUVycm9yW10+O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZXJyb3JzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Rm9ybUVycm9yW10+KFtdKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNob3VsZERpc3BsYXk6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJpdmF0ZSByZWFkb25seSBwdWJsaWNLZXk6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBwcml2YXRlIHRva2VuOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwcml2YXRlIHNlc3Npb25JbmZvOiBTZXNzaW9uSW5mbyxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlOiBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZ2VzZGVtU2VydmljZTogR2VzZGVtSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZ2VzZGVtRXZlbnRTZXJ2aWNlOiBHZXNkZW1FdmVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgYXBwbGljYXRpb25JbmZvU2VydmljZTogQXBwbGljYXRpb25JbmZvU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLnNob3VsZERpc3BsYXkgPSB0aGlzLmluaXRTaG91bGREaXNwbGF5T2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLmVycm9ycyA9IHRoaXMuaW5pdEVycm9yT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLnB1YmxpY0tleSA9IHRoaXMuaW5pdFB1YmxpY0tleU9ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBvblN1Y2Nlc3ModG9rZW46IHN0cmluZyk6IHZvaWQge1xuICAgICAgICAvLyBUbyBiZSBhY2Nlc3NlZCBieSB0aGUgZ2VzZGVtIHNlcnZpY2UgYW5kIHRvIGF2b2lkIHRvIGhhdmUgYSBjaXJjdWxhclxuICAgICAgICAvLyBkZXBlbmRlbmN5IGJldHdlZW4gdGhlIGdlc2RlbUhhbmRsZXJTZXJ2aWNlIGFuZCB0aGUgY2FwdGNoYSBzZXJ2aWNlLlxuICAgICAgICB0aGlzLmdlc2RlbVNlcnZpY2Uuc2V0Q2FwdGNoYVRva2VuKHRva2VuKTtcblxuICAgICAgICB0aGlzLnRva2VuID0gdG9rZW47XG5cbiAgICAgICAgaWYgKCEhdGhpcy50b2tlbikge1xuICAgICAgICAgICAgdGhpcy5jbGVhckVycm9ycygpO1xuICAgICAgICAgICAgdGhpcy5odHRwLnBvc3QoUkVDQVBUQ0hBX0FQSV9VUkwsIHsgdG9rZW46IHRoaXMudG9rZW4gfSkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgICAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdWNjZXNzID0gISFkYXRhLnN1Y2Nlc3M7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBDbGVhciBhbnkgcG90ZW50aWFsIGVycm9ycyBmcm9tIHRoZSBzZXJ2ZXIuIFdlIGNhbiBkb1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdCBiZWNhdXNlIHRoaXMgc2hvdWxkIGJlIHRoZSBvbmx5IGVycm9yIGluIHRoZSBzZXQgYXNcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBjYXB0Y2hhIG11c3QgYmUgdmFsaWQgdG8gaGF2ZSBhdCBsZWFzdCBvbmUgZm9ybSBlcnJvci5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnVwZGF0ZUVycm9ycyhbXSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBJZiB0aGlzIGlzIHRocm93biwgdGhhdCdzIHByZXR0eSBiYWQgYmVjYXVzZSBpdCBtZWFuc1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhhdCBHb29nbGUgY291bGRuJ3QgdmVyaWZ5IHRoZSBjYXB0Y2hhIGtleS4gVGhpcyBpc1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZWl0aGVyIGFuIGF0dGFjayBvciBhIG1pc2NvbmZpZ3VyYXRpb24uXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZEVycm9yKCdWb3RyZSBjYXB0Y2hhIGVzdCBpbnZhbGlkZScpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAoZTogdW5rbm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIDQwNCwgdGltZW91dCBvciBuZXR3b3JrIGlzc3VlLiBDb3VsZCBoYXBwZW4uXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAnVW5lIGVycmV1ciBlc3Qgc3VydmVudWUgbG9ycyBkZSBsYSB2YWxpZGF0aW9uIGR1IGNhcHRjaGEuJ1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRFcnJvcihtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZXhpc3RpbmdFcnJvcnMgPSB0aGlzLmVycm9yc1N1YmplY3QuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgbmV3RXJyb3IgPSB7XG4gICAgICAgICAgICBuYW1lOiBDQVBUQ0hBX0VSUk9SX05BTUUsXG4gICAgICAgICAgICBjb2RlOiBDQVBUQ0hBX0VSUk9SX05BTUUsXG4gICAgICAgICAgICBtZXNzYWdlXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5lcnJvcnNTdWJqZWN0Lm5leHQoW25ld0Vycm9yLCAuLi5leGlzdGluZ0Vycm9yc10pO1xuICAgIH1cblxuICAgIGNsZWFyRXJyb3JzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVycm9yc1N1YmplY3QubmV4dChbXSk7XG4gICAgfVxuXG4gICAgZ2V0RXJyb3JzKCk6IE9ic2VydmFibGU8Rm9ybUVycm9yW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3JzO1xuICAgIH1cblxuICAgIGdldFNob3VsZERpc3BsYXkoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3VsZERpc3BsYXk7XG4gICAgfVxuXG4gICAgZ2V0UHVibGljS2V5KCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnB1YmxpY0tleTtcbiAgICB9XG5cbiAgICBnZXRUb2tlbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy50b2tlbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRFcnJvck9ic2VydmFibGUoKTogT2JzZXJ2YWJsZTxGb3JtRXJyb3JbXT4ge1xuICAgICAgICBjb25zdCBtYXRjaGluZ0dlc2RlbUVycm9ycyA9IG1lcmdlKFxuICAgICAgICAgICAgLy8gRW5zdXJlcyB0aGF0IHRoZXJlJ3MgYW4gaW5pdGlhbCB2YWx1ZVxuICAgICAgICAgICAgb2YoW10pLFxuICAgICAgICAgICAgLy8gUmVhZCBmcm9tIHRoZSBnZXNkZW0gc2VydmljZSBhbGwgZXJyb3JzLlxuICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uSGFuZGxlclNlcnZpY2UudmFsaWRhdGlvbkVycm9yc1N1YmplY3RcbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgLy8gRXJyb3JzIGZyb20gR2VzRGVtLCBvciBub3RoaW5nXG4gICAgICAgICAgICBtYXAoZXJyb3JzID0+IGVycm9ycy5maWx0ZXIoZXggPT4gQ0FQVENIQV9FUlJPUl9OQU1FID09PSBleC5jb2RlKSlcbiAgICAgICAgKTtcblxuICAgICAgICAvLyBCaW5kIGVycm9ycyB0byB0aGUgY29tcG9uZW50LCBlaXRoZXIgZnJvbSB0aGUgYmFja2VuZCBvZiBmcm9tIHRoaXMgY29tcG9uZW50XG4gICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIC8vIEVycm9ycyBmcm9tIGdlc2RlbSBtYXRjaGluZyB0aGUgbmFtZSBvZiB0aGUgY2FwdGNoYS5cbiAgICAgICAgICAgIG1hdGNoaW5nR2VzZGVtRXJyb3JzLFxuICAgICAgICAgICAgLy8gTWFudWFsIGVycm9yc1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNTdWJqZWN0XG4gICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAvLyBNZXJnZSB0aGUgdHdvIGVycm9ycyBzZXRzXG4gICAgICAgICAgICBtYXAoKFtnZXNkZW1FcnJvcnMsIGxvY2FsRXJyb3JzXSkgPT4gW1xuICAgICAgICAgICAgICAgIC4uLmdlc2RlbUVycm9ycyxcbiAgICAgICAgICAgICAgICAuLi5sb2NhbEVycm9yc1xuICAgICAgICAgICAgXSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRTaG91bGREaXNwbGF5T2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgY29uc3QgaXNDb25uZWN0ZWRPYnNlcnZhYmxlID0gdGhpcy5zZXNzaW9uSW5mby5kYXRhLnBpcGUoXG4gICAgICAgICAgICBtYXAoZGF0YSA9PiAhdGhpcy5zZXNzaW9uSW5mby5uZXZlckNvbm5lY3RlZCAmJiAhIWRhdGEpXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgaGFzQnlwYXNzRW5hYmxlZE9ic2VydmFibGUgPSB0aGlzLmNoZWNrQnlwYXNzUHJvcGVydHkoKS5waXBlKFxuICAgICAgICAgICAgbWFwKGJ5cGFzcyA9PiAhIWJ5cGFzcy52YWx1ZSlcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBoYXNSZWZlcmVuY2VPYnNlcnZhYmxlID0gbWVyZ2UoXG4gICAgICAgICAgICAvLyBUbyBoYXZlIGFuIGluaXRpYWwgdmFsdWUuIENhbiBiZSBudWxsIGlmIHRoZXJlIGlzIG5vIGZvcm0uXG4gICAgICAgICAgICBvZih0aGlzLmdlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlKSxcbiAgICAgICAgICAgIC8vIFJlYWQgdGhlIGZvcm0gZnJvbSBHZXNEZW1cbiAgICAgICAgICAgIHRoaXMuZ2VzZGVtRXZlbnRTZXJ2aWNlLmZvcm1Jbml0aWFsaXphdGlvbk9ic2VydmFibGUoKVxuICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgZm9ybSA9PlxuICAgICAgICAgICAgICAgICAgICAhIWZvcm0gJiZcbiAgICAgICAgICAgICAgICAgICAgISF0aGlzLmdlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlICYmXG4gICAgICAgICAgICAgICAgICAgICEhdGhpcy5nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhICYmXG4gICAgICAgICAgICAgICAgICAgICEhdGhpcy5nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIGlzQ29ubmVjdGVkT2JzZXJ2YWJsZSxcbiAgICAgICAgICAgIGhhc0J5cGFzc0VuYWJsZWRPYnNlcnZhYmxlLFxuICAgICAgICAgICAgaGFzUmVmZXJlbmNlT2JzZXJ2YWJsZVxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgLy8gVG8gd29yayBhcm91bmQgcmFwaWRseSBjaGFuZ2luZyBvYnNlcnZhYmxlcywgc3VjaCBhcyB0aGUgZm9ybVxuICAgICAgICAgICAgLy8gd2hlbiB0aGUgcGFnZSBsb2Fkcy5cbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgICAgICAgIG1hcChcbiAgICAgICAgICAgICAgICAoW2lzQ29ubmVjdGVkLCBoYXNCeXBhc3NFbmFibGVkLCBoYXNSZWZlcmVuY2VdKSA9PlxuICAgICAgICAgICAgICAgICAgICAvLyBEbyBub3QgZGlzcGxheSB0aGUgY2FwdGNoYSBpZiB0aGUgdXNlciBpcyBjb25uZWN0ZWQsIHRoZSBhcHBsaWNhdGlvblxuICAgICAgICAgICAgICAgICAgICAvLyBhbHJlYWR5IGhhcyBhIHJlZmVyZW5jZSBvciBpZiB0aGUgYnlwYXNzIGlzIGVuYWJsZWQuXG4gICAgICAgICAgICAgICAgICAgICFpc0Nvbm5lY3RlZCAmJiAhaGFzQnlwYXNzRW5hYmxlZCAmJiAhaGFzUmVmZXJlbmNlXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIGNoZWNrQnlwYXNzUHJvcGVydHkoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gISF0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSURcbiAgICAgICAgICAgID8gbmV3IEh0dHBQYXJhbXMoKS5zZXQoXG4gICAgICAgICAgICAgICAgICAncmVDYXB0Y2hhQnlQYXNzVVVJRCcsXG4gICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSURcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiBudWxsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke1JFQ0FQVENIQV9BUElfVVJMfS9ieXBhc3NgLCB7IHBhcmFtcyB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRQdWJsaWNLZXlPYnNlcnZhYmxlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwcGxpY2F0aW9uSW5mb1NlcnZpY2UuZGF0YS5waXBlKFxuICAgICAgICAgICAgbWFwKGFwcGxpY2F0aW9uSW5mbyA9PiB0aGlzLmdldFB1YmxpY0tleU9yTnVsbChhcHBsaWNhdGlvbkluZm8pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHVibGljS2V5T3JOdWxsKFxuICAgICAgICBhcHBsaWNhdGlvbkluZm86IEFwcGxpY2F0aW9uSW5mb1xuICAgICk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICAvLyBSZXBsYWNlIHRoaXMgd2hvbGUgc2hlbmFuaWdhbiB3aXRoIGFwcGxpY2F0aW9uSW5mbz8uY29uZmlndXJhdGlvbj8uY2FwdGNoYT8ucHVibGlja2V5IHdoZW5cbiAgICAgICAgLy8gVHlwZXNjcmlwdCBzdXBwb3J0cyBpdC5cbiAgICAgICAgaWYgKCFhcHBsaWNhdGlvbkluZm8pIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBjb25maWd1cmF0aW9uIH0gPSBhcHBsaWNhdGlvbkluZm87XG5cbiAgICAgICAgaWYgKCFjb25maWd1cmF0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB7IGNhcHRjaGEgfSA9IGNvbmZpZ3VyYXRpb247XG5cbiAgICAgICAgaWYgKCFjYXB0Y2hhKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjYXB0Y2hhLnB1YmxpY2tleSB8fCBudWxsO1xuICAgIH1cbn1cbiJdfQ==
|