@dsivd/prestations-ng 15.5.13 → 16.0.0-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +666 -1
- package/CONTRIBUTING.md +32 -1
- package/ESLINT_MIGRATION_GUIDE.md +1 -1
- package/README.md +6 -0
- package/UPGRADING_V12.md +0 -15
- package/UPGRADING_V13.md +0 -15
- package/UPGRADING_V14.md +8 -26
- package/UPGRADING_V15.md +113 -0
- package/UPGRADING_V16.md +63 -0
- package/abstract-page-component.d.ts +8 -8
- package/directives/currency-formatter.directive.d.ts +4 -1
- package/directives/iban-formatter.directive.d.ts +1 -1
- package/directives/ide-formatter.directive.d.ts +1 -1
- package/directives/ndc-formatter.directive.d.ts +1 -1
- package/dsivd-prestations-ng-v16.0.0-beta1.tgz +0 -0
- package/esm2020/abstract-page-component.mjs +223 -0
- package/esm2020/directives/currency-formatter.directive.mjs +143 -0
- package/{esm2015/directives/formatter.module.js → esm2020/directives/formatter.module.mjs} +8 -8
- package/{esm2015/directives/iban-formatter.directive.js → esm2020/directives/iban-formatter.directive.mjs} +4 -4
- package/{esm2015/directives/ide-formatter.directive.js → esm2020/directives/ide-formatter.directive.mjs} +4 -4
- package/{esm2015/directives/ndc-formatter.directive.js → esm2020/directives/ndc-formatter.directive.mjs} +4 -4
- package/{esm2015/dsivd-prestations-ng.js → esm2020/dsivd-prestations-ng.mjs} +0 -0
- package/{esm2015/foehn-address/address.type.js → esm2020/foehn-address/address.type.mjs} +1 -1
- package/esm2020/foehn-address/foehn-address.module.mjs +55 -0
- package/{esm2015/foehn-address/foehn-display-address.component.js → esm2020/foehn-address/foehn-display-address.component.mjs} +5 -9
- package/esm2020/foehn-address/foehn-input-address.component.mjs +406 -0
- package/esm2020/foehn-address/foehn-input-foreign-locality.component.mjs +66 -0
- package/esm2020/foehn-address/foehn-input-foreign-street.component.mjs +55 -0
- package/esm2020/foehn-agenda/calendar.type.mjs +3 -0
- package/esm2020/foehn-agenda/current-week.type.mjs +4 -0
- package/esm2020/foehn-agenda/day-slots.type.mjs +3 -0
- package/esm2020/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.mjs +74 -0
- package/esm2020/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +242 -0
- package/esm2020/foehn-agenda/foehn-agenda.component.mjs +95 -0
- package/esm2020/foehn-agenda/foehn-agenda.module.mjs +62 -0
- package/esm2020/foehn-agenda/pagination-week.type.mjs +3 -0
- package/esm2020/foehn-agenda/selected-slot.type.mjs +3 -0
- package/esm2020/foehn-autocomplete/foehn-autocomplete.component.mjs +608 -0
- package/esm2020/foehn-autocomplete/foehn-autocomplete.module.mjs +40 -0
- package/esm2020/foehn-boolean/foehn-boolean-checkbox.component.mjs +28 -0
- package/esm2020/foehn-boolean/foehn-boolean-radio.component.mjs +40 -0
- package/esm2020/foehn-boolean/foehn-boolean.module.mjs +33 -0
- package/esm2020/foehn-breadcrumb/breadcrumb-event.service.mjs +181 -0
- package/{esm2015/foehn-breadcrumb/breadcrumb.js → esm2020/foehn-breadcrumb/breadcrumb.mjs} +0 -0
- package/esm2020/foehn-breadcrumb/foehn-breadcrumb.component.mjs +80 -0
- package/esm2020/foehn-breadcrumb/foehn-breadcrumb.module.mjs +19 -0
- package/esm2020/foehn-checkables/foehn-checkable-group.component.mjs +298 -0
- package/esm2020/foehn-checkables/foehn-checkables.module.mjs +68 -0
- package/esm2020/foehn-checkables/foehn-checkbox.component.mjs +37 -0
- package/esm2020/foehn-checkables/foehn-radio.component.mjs +64 -0
- package/esm2020/foehn-checkables/foehn-select.component.mjs +53 -0
- package/{esm2015/foehn-checkables/form-select-option-group.js → esm2020/foehn-checkables/form-select-option-group.mjs} +0 -0
- package/{esm2015/foehn-checkables/form-select-option.js → esm2020/foehn-checkables/form-select-option.mjs} +0 -0
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal-content.js → esm2020/foehn-confirm-modal/foehn-confirm-modal-content.mjs} +1 -1
- package/esm2020/foehn-confirm-modal/foehn-confirm-modal.component.mjs +40 -0
- package/esm2020/foehn-confirm-modal/foehn-confirm-modal.module.mjs +19 -0
- package/{esm2015/foehn-confirm-modal/foehn-confirm-modal.service.js → esm2020/foehn-confirm-modal/foehn-confirm-modal.service.mjs} +4 -4
- package/esm2020/foehn-date-picker/date-picker-navigation.helper.mjs +167 -0
- package/esm2020/foehn-date-picker/date-picker.helper.mjs +132 -0
- package/{esm2015/foehn-date-picker/day-month.type.js → esm2020/foehn-date-picker/day-month.type.mjs} +0 -0
- package/{esm2015/foehn-date-picker/focused-day.type.js → esm2020/foehn-date-picker/focused-day.type.mjs} +0 -0
- package/esm2020/foehn-date-picker/foehn-date-picker.component.mjs +387 -0
- package/esm2020/foehn-date-picker/foehn-date-picker.module.mjs +40 -0
- package/{esm2015/foehn-date-picker/month-year.type.js → esm2020/foehn-date-picker/month-year.type.mjs} +0 -0
- package/esm2020/foehn-date-picker-button/foehn-date-picker-button.component.mjs +97 -0
- package/esm2020/foehn-date-picker-button/foehn-date-picker-button.module.mjs +36 -0
- package/esm2020/foehn-debug-summary/foehn-debug-summary.component.mjs +67 -0
- package/{esm2015/foehn-debug-summary/foehn-debug-summary.component.module.js → esm2020/foehn-debug-summary/foehn-debug-summary.component.module.mjs} +7 -7
- package/esm2020/foehn-decision-electronique/foehn-decision-electronique.component.mjs +37 -0
- package/esm2020/foehn-decision-electronique/foehn-decision-electronique.module.mjs +32 -0
- package/esm2020/foehn-footer/foehn-footer.component.mjs +130 -0
- package/{esm2015/foehn-footer/foehn-footer.module.js → esm2020/foehn-footer/foehn-footer.module.mjs} +6 -6
- package/{esm2015/foehn-footer/footer-link.type.js → esm2020/foehn-footer/footer-link.type.mjs} +0 -0
- package/esm2020/foehn-form/foehn-form.component.mjs +135 -0
- package/esm2020/foehn-form/foehn-form.module.mjs +32 -0
- package/esm2020/foehn-form/register-ng-model.service.mjs +23 -0
- package/esm2020/foehn-growl/foehn-growl.component.mjs +44 -0
- package/{esm2015/foehn-growl/foehn-growl.module.js → esm2020/foehn-growl/foehn-growl.module.mjs} +6 -6
- package/{esm2015/foehn-growl/growl-broker.service.js → esm2020/foehn-growl/growl-broker.service.mjs} +5 -5
- package/{esm2015/foehn-growl/growl-message.js → esm2020/foehn-growl/growl-message.mjs} +1 -1
- package/{esm2015/foehn-growl/growl-types.js → esm2020/foehn-growl/growl-types.mjs} +0 -0
- package/esm2020/foehn-header/foehn-header.component.mjs +68 -0
- package/esm2020/foehn-header/foehn-header.module.mjs +21 -0
- package/{esm2015/foehn-header/foehn-skip-link.component.js → esm2020/foehn-header/foehn-skip-link.component.mjs} +5 -8
- package/esm2020/foehn-help-modal/foehn-help-modal.component.mjs +44 -0
- package/esm2020/foehn-help-modal/foehn-help-modal.module.mjs +20 -0
- package/esm2020/foehn-help-modal/foehn-help-modal.type.mjs +2 -0
- package/{esm2015/foehn-icons/abstract-icon-component.js → esm2020/foehn-icons/abstract-icon-component.mjs} +5 -5
- package/esm2020/foehn-icons/foehn-icon-calendar.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-check-square-o.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-check.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-down.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-left.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-right.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-chevron-up.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-clock.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-comment-dots.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-edit.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-external-link-alt.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-file-pdf.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-info-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-lock.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-map-marker.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-minus-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-plus-circle.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-plus-square.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-search.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-times.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-trash-alt.component.mjs +19 -0
- package/esm2020/foehn-icons/foehn-icon-unlock-alt.component.mjs +19 -0
- package/{esm2015/foehn-icons/foehn-icons.module.js → esm2020/foehn-icons/foehn-icons.module.mjs} +20 -20
- package/esm2020/foehn-input/foehn-input-email.component.mjs +59 -0
- package/esm2020/foehn-input/foehn-input-hidden.component.mjs +55 -0
- package/esm2020/foehn-input/foehn-input-number.component.mjs +276 -0
- package/esm2020/foehn-input/foehn-input-password.component.mjs +52 -0
- package/esm2020/foehn-input/foehn-input-phone.component.mjs +92 -0
- package/{esm2015/foehn-input/foehn-input-string.component.js → esm2020/foehn-input/foehn-input-string.component.mjs} +5 -5
- package/esm2020/foehn-input/foehn-input-text.component.mjs +76 -0
- package/esm2020/foehn-input/foehn-input-textarea.component.mjs +109 -0
- package/esm2020/foehn-input/foehn-input.component.mjs +390 -0
- package/esm2020/foehn-input/foehn-input.module.mjs +93 -0
- package/{esm2015/foehn-input/pattern.const.js → esm2020/foehn-input/pattern.const.mjs} +0 -0
- package/esm2020/foehn-input-date/foehn-input-date.component.mjs +118 -0
- package/esm2020/foehn-input-date-time/foehn-input-date-time.component.mjs +143 -0
- package/esm2020/foehn-input-time/foehn-input-time.component.mjs +74 -0
- package/esm2020/foehn-list/foehn-list.component.mjs +128 -0
- package/esm2020/foehn-list/foehn-list.module.mjs +19 -0
- package/{esm2015/foehn-list/page-change-event.js → esm2020/foehn-list/page-change-event.mjs} +0 -0
- package/esm2020/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +122 -0
- package/{esm2015/foehn-menu-prestation/abstract-menu-page.component.js → esm2020/foehn-menu-prestation/abstract-menu-page.component.mjs} +4 -4
- package/{esm2015/foehn-menu-prestation/abstract-page-from-menu.component.js → esm2020/foehn-menu-prestation/abstract-page-from-menu.component.mjs} +4 -4
- package/esm2020/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs +23 -0
- package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.mjs} +0 -0
- package/{esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-item.js → esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-item.mjs} +0 -0
- package/esm2020/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +71 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +35 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs +51 -0
- package/esm2020/foehn-menu-prestation/foehn-menu-prestation.module.mjs +59 -0
- package/{esm2015/foehn-misc/foehn-abbr.component.js → esm2020/foehn-misc/foehn-abbr.component.mjs} +5 -9
- package/{esm2015/foehn-misc/foehn-misc.module.js → esm2020/foehn-misc/foehn-misc.module.mjs} +5 -5
- package/esm2020/foehn-modal/foehn-modal.component.mjs +94 -0
- package/esm2020/foehn-modal/foehn-modal.module.mjs +21 -0
- package/esm2020/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +268 -0
- package/esm2020/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.mjs +40 -0
- package/esm2020/foehn-nav13/foehn-input-nav13.component.mjs +114 -0
- package/esm2020/foehn-nav13/foehn-input-nav13.module.mjs +32 -0
- package/esm2020/foehn-navigation/foehn-navigation.component.mjs +94 -0
- package/esm2020/foehn-navigation/foehn-navigation.module.mjs +32 -0
- package/esm2020/foehn-navigation/foehn-navigation.service.mjs +303 -0
- package/{esm2015/foehn-notfound/foehn-notfound.component.js → esm2020/foehn-notfound/foehn-notfound.component.mjs} +7 -10
- package/esm2020/foehn-notfound/foehn-notfound.module.mjs +20 -0
- package/{esm2015/foehn-page/foehn-page-counter.component.js → esm2020/foehn-page/foehn-page-counter.component.mjs} +5 -8
- package/esm2020/foehn-page/foehn-page-modal.component.mjs +53 -0
- package/{esm2015/foehn-page/foehn-page-modal.service.js → esm2020/foehn-page/foehn-page-modal.service.mjs} +4 -4
- package/esm2020/foehn-page/foehn-page.component.mjs +218 -0
- package/esm2020/foehn-page/foehn-page.module.mjs +78 -0
- package/{esm2015/foehn-page/foehn-page.service.js → esm2020/foehn-page/foehn-page.service.mjs} +4 -4
- package/esm2020/foehn-recap-section/foehn-recap-section.component.mjs +88 -0
- package/esm2020/foehn-recap-section/foehn-recap-section.module.mjs +20 -0
- package/{esm2015/foehn-recap-section/foehn-recap-section.type.js → esm2020/foehn-recap-section/foehn-recap-section.type.mjs} +0 -0
- package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs} +5 -9
- package/{esm2015/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.js → esm2020/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs} +6 -6
- package/esm2020/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +56 -0
- package/esm2020/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs +20 -0
- package/esm2020/foehn-table/foehn-table-column-configuration.mjs +3 -0
- package/esm2020/foehn-table/foehn-table-page-change-event.mjs +3 -0
- package/esm2020/foehn-table/foehn-table.component.mjs +148 -0
- package/esm2020/foehn-table/foehn-table.module.mjs +32 -0
- package/esm2020/foehn-table/tableSort.mjs +3 -0
- package/esm2020/foehn-upload/abstract-foehn-uploader.component.mjs +192 -0
- package/{esm2015/foehn-upload/document-reference.js → esm2020/foehn-upload/document-reference.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +71 -0
- package/{esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.js → esm2020/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +174 -0
- package/esm2020/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs +40 -0
- package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +224 -0
- package/esm2020/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs +40 -0
- package/esm2020/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +83 -0
- package/{esm2015/foehn-upload/foehn-multi-upload/multi-upload.type.js → esm2020/foehn-upload/foehn-multi-upload/multi-upload.type.mjs} +0 -0
- package/esm2020/foehn-upload/foehn-multi-upload/pending-upload.service.mjs +158 -0
- package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +202 -0
- package/esm2020/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs +44 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.mjs +75 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.mjs +21 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/upload-progress.service.mjs +62 -0
- package/esm2020/foehn-upload/foehn-upload-progress-bar/upload-progress.type.mjs +3 -0
- package/{esm2015/foehn-upload/pending-upload.type.js → esm2020/foehn-upload/pending-upload.type.mjs} +1 -1
- package/esm2020/foehn-upload/uploader.helper.mjs +327 -0
- package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.component.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.component.mjs} +5 -8
- package/{esm2015/foehn-user-connected-as/foehn-user-connected-as.module.js → esm2020/foehn-user-connected-as/foehn-user-connected-as.module.mjs} +6 -6
- package/esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs +96 -0
- package/esm2020/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs +19 -0
- package/esm2020/foehn-validation-alerts/foehn-validation-alerts.component.mjs +29 -0
- package/{esm2015/foehn-validation-alerts/foehn-validation-alerts.module.js → esm2020/foehn-validation-alerts/foehn-validation-alerts.module.mjs} +6 -6
- package/esm2020/form-error.mjs +2 -0
- package/esm2020/form-post-response.mjs +10 -0
- package/{esm2015/gesdem/gesdem-error-handler.service.js → esm2020/gesdem/gesdem-error-handler.service.mjs} +4 -4
- package/esm2020/gesdem/gesdem-event.service.mjs +38 -0
- package/esm2020/gesdem/gesdem-handler.service.mjs +160 -0
- package/esm2020/gesdem/gesdem-loader.guard.mjs +41 -0
- package/{esm2015/gesdem/gesdem-statut-utils.js → esm2020/gesdem/gesdem-statut-utils.mjs} +0 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +101 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +130 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery.module.mjs +50 -0
- package/esm2020/gesdem-action-recovery/gesdem-action-recovery.service.mjs +82 -0
- package/{esm2015/gesdem-action-recovery/reprise-info.js → esm2020/gesdem-action-recovery/reprise-info.mjs} +0 -0
- package/esm2020/gesdem-confirmation/gesdem-confirmation.component.mjs +201 -0
- package/esm2020/gesdem-confirmation/gesdem-confirmation.module.mjs +32 -0
- package/esm2020/gesdem-error/gesdem-error.component.mjs +87 -0
- package/esm2020/gesdem-error/gesdem-error.module.mjs +36 -0
- package/esm2020/global.const.mjs +5 -0
- package/esm2020/helpers/object.helper.mjs +89 -0
- package/{esm2015/i18n-form.js → esm2020/i18n-form.mjs} +0 -0
- package/esm2020/index.mjs +263 -0
- package/{esm2015/pipes/currency.pipe.js → esm2020/pipes/currency.pipe.mjs} +4 -4
- package/{esm2015/pipes/date.pipe.js → esm2020/pipes/date.pipe.mjs} +4 -4
- package/{esm2015/pipes/formatIde.pipe.js → esm2020/pipes/formatIde.pipe.mjs} +3 -3
- package/{esm2015/pipes/pipes.module.js → esm2020/pipes/pipes.module.mjs} +7 -7
- package/{esm2015/prestations-ng-core.module.js → esm2020/prestations-ng-core.module.mjs} +7 -7
- package/esm2020/refinf/model/address-type-light.mjs +3 -0
- package/esm2020/refinf/model/canton.mjs +3 -0
- package/esm2020/refinf/model/district.mjs +3 -0
- package/esm2020/refinf/model/municipality.mjs +3 -0
- package/esm2020/refinf/model/place-of-origin.mjs +3 -0
- package/esm2020/refinf/model/postal-locality.mjs +3 -0
- package/esm2020/sdk-appinfo/application-info.mjs +14 -0
- package/esm2020/sdk-appinfo/application-info.service.mjs +104 -0
- package/{esm2015/sdk-currency/currency.helper.js → esm2020/sdk-currency/currency.helper.mjs} +3 -3
- package/esm2020/sdk-date/date.helper.mjs +100 -0
- package/esm2020/sdk-dictionary/default-dictionary.mjs +166 -0
- package/{esm2015/sdk-dictionary/sdk-dictionary.module.js → esm2020/sdk-dictionary/sdk-dictionary.module.mjs} +5 -5
- package/{esm2015/sdk-dictionary/sdk-dictionary.pipe.js → esm2020/sdk-dictionary/sdk-dictionary.pipe.mjs} +6 -6
- package/esm2020/sdk-dictionary/sdk-dictionary.service.mjs +111 -0
- package/{esm2015/sdk-epayment/model/EPaymentParameters.js → esm2020/sdk-epayment/model/EPaymentParameters.mjs} +0 -0
- package/esm2020/sdk-epayment/sdk-epayment.component.mjs +81 -0
- package/esm2020/sdk-epayment/sdk-epayment.module.mjs +21 -0
- package/esm2020/sdk-epayment/sdk-epayment.service.mjs +52 -0
- package/{esm2015/sdk-recaptcha/grecaptcha/grecaptcha.component.js → esm2020/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs} +6 -10
- package/esm2020/sdk-recaptcha/recaptcha.service.mjs +162 -0
- package/esm2020/sdk-recaptcha/sdk-recaptcha.component.mjs +69 -0
- package/esm2020/sdk-recaptcha/sdk-recaptcha.module.mjs +19 -0
- package/esm2020/sdk-redirect/iam-expired-interceptor.service.mjs +58 -0
- package/esm2020/sdk-redirect/redirect.component.mjs +35 -0
- package/esm2020/sdk-redirect/sdk-redirect.module.mjs +19 -0
- package/{esm2015/sdk-session-info/session-info-data.js → esm2020/sdk-session-info/session-info-data.mjs} +1 -1
- package/{esm2015/sdk-session-info/session-info-with-application.service.js → esm2020/sdk-session-info/session-info-with-application.service.mjs} +5 -5
- package/esm2020/sdk-session-info/session-info.service.mjs +50 -0
- package/esm2020/sdk-statistics/sdk-statistics.service.mjs +70 -0
- package/esm2020/sdk-support-alert/support-alert-container.component.mjs +49 -0
- package/esm2020/sdk-support-alert/support-alert.component.mjs +34 -0
- package/{esm2015/sdk-support-alert/support-alert.model.js → esm2020/sdk-support-alert/support-alert.model.mjs} +0 -0
- package/esm2020/sdk-support-alert/support-alert.module.mjs +21 -0
- package/esm2020/sdk-support-alert/support-alert.service.mjs +117 -0
- package/{esm2015/service-locator.js → esm2020/service-locator.mjs} +0 -0
- package/esm2020/supported-browser.mjs +2 -0
- package/esm2020/validation/validation-handler.service.mjs +44 -0
- package/fesm2015/dsivd-prestations-ng.mjs +13397 -0
- package/fesm2015/dsivd-prestations-ng.mjs.map +1 -0
- package/fesm2020/dsivd-prestations-ng.mjs +13372 -0
- package/fesm2020/dsivd-prestations-ng.mjs.map +1 -0
- package/foehn-address/address.type.d.ts +3 -3
- package/foehn-address/foehn-display-address.component.d.ts +1 -1
- package/foehn-address/foehn-input-address.component.d.ts +18 -8
- package/foehn-address/foehn-input-foreign-locality.component.d.ts +1 -1
- package/foehn-address/foehn-input-foreign-street.component.d.ts +1 -1
- package/foehn-agenda/calendar.type.d.ts +9 -0
- package/foehn-agenda/current-week.type.d.ts +5 -0
- package/foehn-agenda/day-slots.type.d.ts +5 -0
- package/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.d.ts +21 -0
- package/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.d.ts +51 -0
- package/foehn-agenda/foehn-agenda.component.d.ts +29 -0
- package/foehn-agenda/foehn-agenda.module.d.ts +17 -0
- package/foehn-agenda/pagination-week.type.d.ts +5 -0
- package/foehn-agenda/selected-slot.type.d.ts +7 -0
- package/foehn-autocomplete/foehn-autocomplete.component.d.ts +22 -6
- package/foehn-boolean/foehn-boolean-checkbox.component.d.ts +1 -1
- package/foehn-boolean/foehn-boolean-radio.component.d.ts +2 -1
- package/foehn-breadcrumb/breadcrumb-event.service.d.ts +2 -2
- package/foehn-breadcrumb/foehn-breadcrumb.component.d.ts +6 -5
- package/foehn-checkables/foehn-checkable-group.component.d.ts +8 -8
- package/foehn-checkables/foehn-checkables.module.d.ts +3 -1
- package/foehn-checkables/foehn-checkbox.component.d.ts +1 -1
- package/foehn-checkables/foehn-radio.component.d.ts +1 -1
- package/foehn-checkables/foehn-select.component.d.ts +2 -10
- package/foehn-confirm-modal/foehn-confirm-modal-content.d.ts +1 -0
- package/foehn-confirm-modal/foehn-confirm-modal.component.d.ts +2 -2
- package/foehn-date-picker/date-picker-navigation.helper.d.ts +7 -1
- package/foehn-date-picker/date-picker.helper.d.ts +3 -2
- package/foehn-date-picker/foehn-date-picker.component.d.ts +21 -10
- package/foehn-date-picker-button/foehn-date-picker-button.component.d.ts +13 -5
- package/foehn-debug-summary/foehn-debug-summary.component.d.ts +7 -5
- package/foehn-decision-electronique/foehn-decision-electronique.component.d.ts +2 -2
- package/foehn-decision-electronique/foehn-decision-electronique.module.d.ts +2 -1
- package/foehn-footer/foehn-footer.component.d.ts +4 -4
- package/foehn-form/foehn-form.component.d.ts +7 -4
- package/foehn-form/register-ng-model.service.d.ts +9 -0
- package/foehn-growl/foehn-growl.component.d.ts +3 -3
- package/foehn-growl/growl-broker.service.d.ts +1 -1
- package/foehn-header/foehn-header.component.d.ts +7 -7
- package/foehn-header/foehn-skip-link.component.d.ts +2 -2
- package/foehn-help-modal/foehn-help-modal.component.d.ts +1 -1
- package/foehn-help-modal/foehn-help-modal.type.d.ts +4 -0
- package/foehn-icons/abstract-icon-component.d.ts +1 -1
- package/foehn-icons/foehn-icon-calendar.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-check-square-o.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-check.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-down.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-left.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-right.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-chevron-up.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-clock.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-comment-dots.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-edit.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-external-link-alt.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-file-pdf.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-info-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-lock.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-map-marker.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-minus-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-plus-circle.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-plus-square.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-search.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-times.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-trash-alt.component.d.ts +1 -1
- package/foehn-icons/foehn-icon-unlock-alt.component.d.ts +1 -1
- package/foehn-input/foehn-input-email.component.d.ts +4 -2
- package/foehn-input/foehn-input-hidden.component.d.ts +1 -1
- package/foehn-input/foehn-input-number.component.d.ts +16 -6
- package/foehn-input/foehn-input-password.component.d.ts +1 -1
- package/foehn-input/foehn-input-phone.component.d.ts +1 -1
- package/foehn-input/foehn-input-string.component.d.ts +1 -1
- package/foehn-input/foehn-input-text.component.d.ts +1 -1
- package/foehn-input/foehn-input-textarea.component.d.ts +5 -2
- package/foehn-input/foehn-input.component.d.ts +25 -9
- package/foehn-input/foehn-input.module.d.ts +9 -6
- package/foehn-input-date/foehn-input-date.component.d.ts +10 -3
- package/foehn-input-date-time/foehn-input-date-time.component.d.ts +29 -0
- package/foehn-input-time/foehn-input-time.component.d.ts +1 -1
- package/foehn-list/foehn-list.component.d.ts +2 -3
- package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +5 -5
- package/foehn-menu-prestation/abstract-menu-page.component.d.ts +1 -1
- package/foehn-menu-prestation/abstract-page-from-menu.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.d.ts +3 -3
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.d.ts +1 -1
- package/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.d.ts +2 -2
- package/foehn-misc/foehn-abbr.component.d.ts +1 -1
- package/foehn-modal/foehn-modal.component.d.ts +2 -3
- package/foehn-modal/foehn-modal.module.d.ts +3 -1
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.d.ts +51 -0
- package/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.d.ts +13 -0
- package/foehn-nav13/foehn-input-nav13.component.d.ts +2 -1
- package/foehn-navigation/foehn-navigation.component.d.ts +2 -2
- package/foehn-navigation/foehn-navigation.service.d.ts +4 -3
- package/foehn-notfound/foehn-notfound.component.d.ts +1 -1
- package/foehn-page/foehn-page-counter.component.d.ts +1 -1
- package/foehn-page/foehn-page-modal.component.d.ts +1 -1
- package/foehn-page/foehn-page-modal.service.d.ts +1 -1
- package/foehn-page/foehn-page.component.d.ts +15 -12
- package/foehn-page/foehn-page.module.d.ts +2 -1
- package/foehn-page/foehn-page.service.d.ts +2 -2
- package/foehn-recap-section/foehn-recap-section.component.d.ts +3 -1
- package/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.d.ts +1 -1
- package/foehn-status-progress-bar/foehn-status-progress-bar.component.d.ts +23 -0
- package/foehn-status-progress-bar/foehn-status-progress-bar.module.d.ts +10 -0
- package/foehn-table/foehn-table-column-configuration.d.ts +18 -0
- package/foehn-table/foehn-table-page-change-event.d.ts +5 -0
- package/foehn-table/foehn-table.component.d.ts +33 -0
- package/foehn-table/foehn-table.module.d.ts +11 -0
- package/foehn-table/tableSort.d.ts +4 -0
- package/foehn-upload/abstract-foehn-uploader.component.d.ts +7 -7
- package/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.d.ts +6 -4
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.d.ts +6 -5
- package/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.d.ts +9 -8
- package/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-multi-upload/multi-upload.service.d.ts +6 -4
- package/foehn-upload/foehn-multi-upload/pending-upload.service.d.ts +3 -3
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +7 -4
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.d.ts +2 -1
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.d.ts +19 -0
- package/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.d.ts +11 -0
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.service.d.ts +19 -0
- package/foehn-upload/foehn-upload-progress-bar/upload-progress.type.d.ts +4 -0
- package/foehn-upload/pending-upload.type.d.ts +1 -0
- package/foehn-upload/uploader.helper.d.ts +13 -13
- package/foehn-user-connected-as/foehn-user-connected-as.component.d.ts +2 -2
- package/foehn-validation-alert-summary/foehn-validation-alert-summary.component.d.ts +2 -2
- package/foehn-validation-alerts/foehn-validation-alerts.component.d.ts +4 -4
- package/{error-template.d.ts → form-error.d.ts} +1 -1
- package/form-post-response.d.ts +17 -0
- package/gesdem/gesdem-error-handler.service.d.ts +2 -2
- package/gesdem/gesdem-event.service.d.ts +7 -7
- package/gesdem/gesdem-handler.service.d.ts +8 -6
- package/gesdem/gesdem-loader.guard.d.ts +1 -1
- package/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.d.ts +5 -5
- package/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.d.ts +7 -7
- package/gesdem-action-recovery/gesdem-action-recovery.service.d.ts +3 -3
- package/gesdem-confirmation/gesdem-confirmation.component.d.ts +10 -9
- package/gesdem-error/gesdem-error.component.d.ts +10 -3
- package/gesdem-error/gesdem-error.module.d.ts +2 -1
- package/global.const.d.ts +1 -0
- package/index.d.ts +102 -70
- package/package.json +34 -21
- package/pipes/currency.pipe.d.ts +1 -1
- package/pipes/date.pipe.d.ts +1 -1
- package/pipes/formatIde.pipe.d.ts +1 -1
- package/refinf/model/address-type-light.d.ts +5 -0
- package/refinf/model/canton.d.ts +4 -0
- package/refinf/model/district.d.ts +7 -0
- package/refinf/model/municipality.d.ts +8 -0
- package/refinf/model/place-of-origin.d.ts +9 -0
- package/refinf/model/postal-locality.d.ts +11 -0
- package/schematics/ng-add/index.js +10 -10
- package/schematics/ng-update/migrations/update-13_1_0/index.js +2 -2
- package/schematics/ng-update/migrations/update-13_2_0/index.js +3 -3
- package/schematics/ng-update/migrations/update-13_5_1/index.js +3 -3
- package/schematics/ng-update/migrations/update-14_5_0/index.js +2 -2
- package/schematics/update-karma-config/index.js +2 -2
- package/schematics/utility/migrate-to-karma-coverage.js +3 -3
- package/sdk-appinfo/application-info.d.ts +1 -0
- package/sdk-appinfo/application-info.service.d.ts +4 -4
- package/sdk-dictionary/sdk-dictionary.pipe.d.ts +1 -1
- package/sdk-dictionary/sdk-dictionary.service.d.ts +9 -0
- package/sdk-epayment/sdk-epayment.component.d.ts +6 -16
- package/sdk-epayment/sdk-epayment.service.d.ts +3 -6
- package/sdk-recaptcha/grecaptcha/grecaptcha.component.d.ts +2 -2
- package/sdk-recaptcha/recaptcha.service.d.ts +5 -5
- package/sdk-recaptcha/sdk-recaptcha.component.d.ts +4 -4
- package/sdk-redirect/iam-expired-interceptor.service.d.ts +3 -3
- package/sdk-redirect/redirect.component.d.ts +3 -9
- package/sdk-session-info/session-info-data.d.ts +0 -1
- package/sdk-session-info/session-info.service.d.ts +4 -4
- package/sdk-statistics/sdk-statistics.service.d.ts +22 -0
- package/sdk-support-alert/support-alert-container.component.d.ts +3 -3
- package/sdk-support-alert/support-alert.component.d.ts +1 -1
- package/sdk-support-alert/support-alert.service.d.ts +5 -4
- package/validation/validation-handler.service.d.ts +4 -4
- package/backend-response.d.ts +0 -18
- package/bundles/dsivd-prestations-ng.umd.js +0 -13188
- package/bundles/dsivd-prestations-ng.umd.js.map +0 -1
- package/dsivd-prestations-ng-v15.5.13.tgz +0 -0
- package/dsivd-prestations-ng.d.ts +0 -5
- package/esm2015/abstract-page-component.js +0 -224
- package/esm2015/backend-response.js +0 -10
- package/esm2015/directives/currency-formatter.directive.js +0 -116
- package/esm2015/error-template.js +0 -2
- package/esm2015/foehn-address/foehn-address.module.js +0 -57
- package/esm2015/foehn-address/foehn-input-address.component.js +0 -365
- package/esm2015/foehn-address/foehn-input-foreign-locality.component.js +0 -71
- package/esm2015/foehn-address/foehn-input-foreign-street.component.js +0 -60
- package/esm2015/foehn-autocomplete/foehn-autocomplete.component.js +0 -556
- package/esm2015/foehn-autocomplete/foehn-autocomplete.module.js +0 -42
- package/esm2015/foehn-boolean/foehn-boolean-checkbox.component.js +0 -32
- package/esm2015/foehn-boolean/foehn-boolean-radio.component.js +0 -41
- package/esm2015/foehn-boolean/foehn-boolean.module.js +0 -35
- package/esm2015/foehn-breadcrumb/breadcrumb-event.service.js +0 -182
- package/esm2015/foehn-breadcrumb/foehn-breadcrumb.component.js +0 -85
- package/esm2015/foehn-breadcrumb/foehn-breadcrumb.module.js +0 -19
- package/esm2015/foehn-checkables/foehn-checkable-group.component.js +0 -294
- package/esm2015/foehn-checkables/foehn-checkables.module.js +0 -62
- package/esm2015/foehn-checkables/foehn-checkbox.component.js +0 -40
- package/esm2015/foehn-checkables/foehn-radio.component.js +0 -67
- package/esm2015/foehn-checkables/foehn-select.component.js +0 -66
- package/esm2015/foehn-confirm-modal/foehn-confirm-modal.component.js +0 -42
- package/esm2015/foehn-confirm-modal/foehn-confirm-modal.module.js +0 -19
- package/esm2015/foehn-date-picker/date-picker-navigation.helper.js +0 -117
- package/esm2015/foehn-date-picker/date-picker.helper.js +0 -126
- package/esm2015/foehn-date-picker/foehn-date-picker.component.js +0 -300
- package/esm2015/foehn-date-picker/foehn-date-picker.module.js +0 -42
- package/esm2015/foehn-date-picker-button/foehn-date-picker-button.component.js +0 -74
- package/esm2015/foehn-date-picker-button/foehn-date-picker-button.module.js +0 -38
- package/esm2015/foehn-debug-summary/foehn-debug-summary.component.js +0 -61
- package/esm2015/foehn-decision-electronique/foehn-decision-electronique.component.js +0 -40
- package/esm2015/foehn-decision-electronique/foehn-decision-electronique.module.js +0 -20
- package/esm2015/foehn-footer/foehn-footer.component.js +0 -132
- package/esm2015/foehn-form/foehn-form.component.js +0 -146
- package/esm2015/foehn-form/foehn-form.module.js +0 -20
- package/esm2015/foehn-growl/foehn-growl.component.js +0 -47
- package/esm2015/foehn-header/foehn-header.component.js +0 -73
- package/esm2015/foehn-header/foehn-header.module.js +0 -21
- package/esm2015/foehn-help-modal/foehn-help-modal.component.js +0 -48
- package/esm2015/foehn-help-modal/foehn-help-modal.module.js +0 -20
- package/esm2015/foehn-help-modal/foehn-help-modal.type.js +0 -2
- package/esm2015/foehn-icons/foehn-icon-calendar.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-check-square-o.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-check.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-down.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-left.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-right.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-chevron-up.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-clock.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-comment-dots.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-edit.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-external-link-alt.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-file-pdf.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-info-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-lock.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-map-marker.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-minus-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-plus-circle.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-plus-square.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-search.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-times.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-trash-alt.component.js +0 -22
- package/esm2015/foehn-icons/foehn-icon-unlock-alt.component.js +0 -22
- package/esm2015/foehn-input/foehn-input-email.component.js +0 -55
- package/esm2015/foehn-input/foehn-input-hidden.component.js +0 -57
- package/esm2015/foehn-input/foehn-input-number.component.js +0 -190
- package/esm2015/foehn-input/foehn-input-password.component.js +0 -55
- package/esm2015/foehn-input/foehn-input-phone.component.js +0 -96
- package/esm2015/foehn-input/foehn-input-text.component.js +0 -80
- package/esm2015/foehn-input/foehn-input-textarea.component.js +0 -104
- package/esm2015/foehn-input/foehn-input.component.js +0 -364
- package/esm2015/foehn-input/foehn-input.module.js +0 -82
- package/esm2015/foehn-input-date/foehn-input-date.component.js +0 -94
- package/esm2015/foehn-input-time/foehn-input-time.component.js +0 -79
- package/esm2015/foehn-list/foehn-list.component.js +0 -135
- package/esm2015/foehn-list/foehn-list.module.js +0 -19
- package/esm2015/foehn-menu-prestation/abstract-list-item-detail-page.component.js +0 -122
- package/esm2015/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.js +0 -26
- package/esm2015/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.js +0 -75
- package/esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.js +0 -38
- package/esm2015/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.js +0 -54
- package/esm2015/foehn-menu-prestation/foehn-menu-prestation.module.js +0 -61
- package/esm2015/foehn-modal/foehn-modal.component.js +0 -100
- package/esm2015/foehn-modal/foehn-modal.module.js +0 -19
- package/esm2015/foehn-nav13/foehn-input-nav13.component.js +0 -98
- package/esm2015/foehn-nav13/foehn-input-nav13.module.js +0 -34
- package/esm2015/foehn-navigation/foehn-navigation.component.js +0 -98
- package/esm2015/foehn-navigation/foehn-navigation.module.js +0 -34
- package/esm2015/foehn-navigation/foehn-navigation.service.js +0 -297
- package/esm2015/foehn-notfound/foehn-notfound.module.js +0 -20
- package/esm2015/foehn-page/foehn-page-modal.component.js +0 -55
- package/esm2015/foehn-page/foehn-page.component.js +0 -214
- package/esm2015/foehn-page/foehn-page.module.js +0 -76
- package/esm2015/foehn-recap-section/foehn-recap-section.component.js +0 -88
- package/esm2015/foehn-recap-section/foehn-recap-section.module.js +0 -20
- package/esm2015/foehn-upload/abstract-foehn-uploader.component.js +0 -192
- package/esm2015/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.js +0 -62
- package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.js +0 -168
- package/esm2015/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.js +0 -38
- package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.js +0 -217
- package/esm2015/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.js +0 -38
- package/esm2015/foehn-upload/foehn-multi-upload/multi-upload.service.js +0 -76
- package/esm2015/foehn-upload/foehn-multi-upload/pending-upload.service.js +0 -157
- package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.js +0 -164
- package/esm2015/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.js +0 -42
- package/esm2015/foehn-upload/uploader.helper.js +0 -322
- package/esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.component.js +0 -88
- package/esm2015/foehn-validation-alert-summary/foehn-validation-alert-summary.module.js +0 -19
- package/esm2015/foehn-validation-alerts/foehn-validation-alerts.component.js +0 -32
- package/esm2015/gesdem/gesdem-event.service.js +0 -38
- package/esm2015/gesdem/gesdem-handler.service.js +0 -151
- package/esm2015/gesdem/gesdem-loader.guard.js +0 -40
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.js +0 -103
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.js +0 -133
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery.module.js +0 -52
- package/esm2015/gesdem-action-recovery/gesdem-action-recovery.service.js +0 -82
- package/esm2015/gesdem-confirmation/gesdem-confirmation.component.js +0 -194
- package/esm2015/gesdem-confirmation/gesdem-confirmation.module.js +0 -34
- package/esm2015/gesdem-error/gesdem-error.component.js +0 -70
- package/esm2015/gesdem-error/gesdem-error.module.js +0 -34
- package/esm2015/helpers/object.helper.js +0 -88
- package/esm2015/index.js +0 -224
- package/esm2015/sdk-appinfo/application-info.js +0 -14
- package/esm2015/sdk-appinfo/application-info.service.js +0 -111
- package/esm2015/sdk-date/date.helper.js +0 -90
- package/esm2015/sdk-dictionary/default-dictionary.js +0 -80
- package/esm2015/sdk-dictionary/sdk-dictionary.service.js +0 -96
- package/esm2015/sdk-epayment/model/EPaymentRequest.js +0 -3
- package/esm2015/sdk-epayment/sdk-epayment.component.js +0 -113
- package/esm2015/sdk-epayment/sdk-epayment.module.js +0 -21
- package/esm2015/sdk-epayment/sdk-epayment.service.js +0 -46
- package/esm2015/sdk-recaptcha/recaptcha.service.js +0 -162
- package/esm2015/sdk-recaptcha/sdk-recaptcha.component.js +0 -72
- package/esm2015/sdk-recaptcha/sdk-recaptcha.module.js +0 -19
- package/esm2015/sdk-redirect/iam-expired-interceptor.service.js +0 -48
- package/esm2015/sdk-redirect/redirect.component.js +0 -47
- package/esm2015/sdk-redirect/sdk-redirect.module.js +0 -19
- package/esm2015/sdk-session-info/session-info.service.js +0 -44
- package/esm2015/sdk-support-alert/support-alert-container.component.js +0 -53
- package/esm2015/sdk-support-alert/support-alert.component.js +0 -38
- package/esm2015/sdk-support-alert/support-alert.module.js +0 -21
- package/esm2015/sdk-support-alert/support-alert.service.js +0 -113
- package/esm2015/supported-browser.js +0 -2
- package/esm2015/validation/validation-handler.service.js +0 -44
- package/fesm2015/dsivd-prestations-ng.js +0 -11618
- package/fesm2015/dsivd-prestations-ng.js.map +0 -1
- package/sdk-epayment/model/EPaymentRequest.d.ts +0 -5
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Component, forwardRef, Input } from '@angular/core';
|
|
2
|
+
import { FoehnInputComponent } from '../foehn-input/foehn-input.component';
|
|
3
|
+
import { FoehnCheckableGroupComponent } from './foehn-checkable-group.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/forms";
|
|
7
|
+
import * as i3 from "../foehn-validation-alerts/foehn-validation-alerts.component";
|
|
8
|
+
import * as i4 from "../foehn-help-modal/foehn-help-modal.component";
|
|
9
|
+
import * as i5 from "../sdk-dictionary/sdk-dictionary.pipe";
|
|
10
|
+
export class FoehnSelectComponent extends FoehnCheckableGroupComponent {
|
|
11
|
+
constructor(zone) {
|
|
12
|
+
super(zone);
|
|
13
|
+
this.zone = zone;
|
|
14
|
+
this.noSelectionLabel = '-';
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Angular uses object identity to select option. It's possible for the identities of items to change while the data does not.
|
|
18
|
+
* This can happen, for example, if the items are produced from an RPC to the server, and that RPC is re-run.
|
|
19
|
+
* Even if the data hasn't changed, the second response will produce objects with different identities.
|
|
20
|
+
* (see: https://angular.io/api/forms/SelectControlValueAccessor#customizing-option-selection)
|
|
21
|
+
*
|
|
22
|
+
* @param value1 as first value to compare to
|
|
23
|
+
* @param value2 as value to be compared to
|
|
24
|
+
* @returns boolean
|
|
25
|
+
*/
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
+
compareFn(value1, value2) {
|
|
28
|
+
return this.areValuesEquals(value1, value2);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
FoehnSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnSelectComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
FoehnSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: FoehnSelectComponent, selector: "foehn-select", inputs: { multiple: "multiple", noSelectionLabel: "noSelectionLabel" }, providers: [
|
|
33
|
+
{
|
|
34
|
+
provide: FoehnInputComponent,
|
|
35
|
+
useExisting: forwardRef(() => FoehnSelectComponent),
|
|
36
|
+
multi: true
|
|
37
|
+
}
|
|
38
|
+
], usesInheritance: true, ngImport: i0, template: "<div\n class=\"form-group\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <div class=\"d-flex justify-content-between\">\n <label\n [attr.for]=\"buildChildId()\"\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'sr-only' : labelStyleModifier\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </label>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n\n <select\n *ngIf=\"!multiple\"\n [class.is-invalid]=\"hasErrorsToDisplay() || hasInheritErrorFromParent()\"\n class=\"form-control\"\n [name]=\"name || label\"\n [attr.id]=\"buildChildId()\"\n [attr.disabled]=\"disabled ? 'disabled' : null\"\n [attr.aria-describedby]=\"getDescribedBy()\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.aria-required]=\"required || null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n [ngModel]=\"model\"\n (ngModelChange)=\"updateNgModel($event)\"\n [compareWith]=\"compareFn.bind(this)\"\n (change)=\"handleChange(model)\"\n #entryComponent\n ngDefaultControl\n >\n <option *ngIf=\"!required\" [ngValue]=\"null\">\n {{ noSelectionLabel }}\n </option>\n <option\n *ngFor=\"let element of elements\"\n [ngValue]=\"getValue(element)\"\n [attr.selected]=\"isElementSelected(element) ? 'selected' : null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n >\n {{ getLabel(element) }}\n </option>\n </select>\n <select\n *ngIf=\"multiple\"\n multiple\n [attr.aria-multiselectable]=\"true\"\n [class.is-invalid]=\"hasErrorsToDisplay() || hasInheritErrorFromParent()\"\n class=\"form-control\"\n [name]=\"name || label\"\n [attr.id]=\"buildChildId()\"\n [attr.disabled]=\"disabled ? 'disabled' : null\"\n [attr.aria-describedby]=\"getDescribedBy()\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.aria-required]=\"required || null\"\n [ngModel]=\"model\"\n (ngModelChange)=\"updateNgModel($event)\"\n [compareWith]=\"compareFn.bind(this)\"\n (change)=\"handleChange(model)\"\n #entryComponent\n ngDefaultControl\n >\n <option\n *ngFor=\"let element of elements\"\n [ngValue]=\"getValue(element)\"\n [attr.selected]=\"isElementSelected(element) ? 'selected' : null\"\n [attr.aria-selected]=\"isElementSelected(element)\"\n >\n {{ getLabel(element) }}\n </option>\n </select>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.FoehnValidationAlertsComponent, selector: "foehn-validation-alerts", inputs: ["component", "shouldErrorsBeLive"] }, { kind: "component", type: i4.FoehnHelpModalComponent, selector: "foehn-help-modal", inputs: ["modalContent"] }, { kind: "pipe", type: i5.SdkDictionaryPipe, name: "fromDictionary" }] });
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnSelectComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{ selector: 'foehn-select', providers: [
|
|
42
|
+
{
|
|
43
|
+
provide: FoehnInputComponent,
|
|
44
|
+
useExisting: forwardRef(() => FoehnSelectComponent),
|
|
45
|
+
multi: true
|
|
46
|
+
}
|
|
47
|
+
], template: "<div\n class=\"form-group\"\n [class.has-danger]=\"hasErrorsToDisplay()\"\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <div class=\"d-flex justify-content-between\">\n <label\n [attr.for]=\"buildChildId()\"\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'sr-only' : labelStyleModifier\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </label>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n\n <select\n *ngIf=\"!multiple\"\n [class.is-invalid]=\"hasErrorsToDisplay() || hasInheritErrorFromParent()\"\n class=\"form-control\"\n [name]=\"name || label\"\n [attr.id]=\"buildChildId()\"\n [attr.disabled]=\"disabled ? 'disabled' : null\"\n [attr.aria-describedby]=\"getDescribedBy()\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.aria-required]=\"required || null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n [ngModel]=\"model\"\n (ngModelChange)=\"updateNgModel($event)\"\n [compareWith]=\"compareFn.bind(this)\"\n (change)=\"handleChange(model)\"\n #entryComponent\n ngDefaultControl\n >\n <option *ngIf=\"!required\" [ngValue]=\"null\">\n {{ noSelectionLabel }}\n </option>\n <option\n *ngFor=\"let element of elements\"\n [ngValue]=\"getValue(element)\"\n [attr.selected]=\"isElementSelected(element) ? 'selected' : null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n >\n {{ getLabel(element) }}\n </option>\n </select>\n <select\n *ngIf=\"multiple\"\n multiple\n [attr.aria-multiselectable]=\"true\"\n [class.is-invalid]=\"hasErrorsToDisplay() || hasInheritErrorFromParent()\"\n class=\"form-control\"\n [name]=\"name || label\"\n [attr.id]=\"buildChildId()\"\n [attr.disabled]=\"disabled ? 'disabled' : null\"\n [attr.aria-describedby]=\"getDescribedBy()\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.aria-required]=\"required || null\"\n [ngModel]=\"model\"\n (ngModelChange)=\"updateNgModel($event)\"\n [compareWith]=\"compareFn.bind(this)\"\n (change)=\"handleChange(model)\"\n #entryComponent\n ngDefaultControl\n >\n <option\n *ngFor=\"let element of elements\"\n [ngValue]=\"getValue(element)\"\n [attr.selected]=\"isElementSelected(element) ? 'selected' : null\"\n [attr.aria-selected]=\"isElementSelected(element)\"\n >\n {{ getLabel(element) }}\n </option>\n </select>\n</div>\n" }]
|
|
48
|
+
}], ctorParameters: function () { return [{ type: i0.NgZone }]; }, propDecorators: { multiple: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], noSelectionLabel: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1jaGVja2FibGVzL2ZvZWhuLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tY2hlY2thYmxlcy9mb2Vobi1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7OztBQWFqRixNQUFNLE9BQU8sb0JBQ1QsU0FBUSw0QkFBNEI7SUFRcEMsWUFBb0IsSUFBWTtRQUM1QixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFESSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBRmhDLHFCQUFnQixHQUFHLEdBQUcsQ0FBQztJQUl2QixDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsOERBQThEO0lBQzlELFNBQVMsQ0FBQyxNQUFXLEVBQUUsTUFBVztRQUM5QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7O2lIQTFCUSxvQkFBb0I7cUdBQXBCLG9CQUFvQiwrR0FSbEI7UUFDUDtZQUNJLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUNuRCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osaURDZEwsdzlHQW9HQTsyRkRwRmEsb0JBQW9CO2tCQVhoQyxTQUFTOytCQUNJLGNBQWMsYUFFYjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsbUJBQW1COzRCQUM1QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzs0QkFDbkQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7NkZBTUQsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgTmdab25lLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRm9laG5JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2ZvZWhuLWlucHV0L2ZvZWhuLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb2VobkNoZWNrYWJsZUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9mb2Vobi1jaGVja2FibGUtZ3JvdXAuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmb2Vobi1zZWxlY3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb2Vobi1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGb2VobklucHV0Q29tcG9uZW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRm9laG5TZWxlY3RDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9laG5TZWxlY3RDb21wb25lbnRcbiAgICBleHRlbmRzIEZvZWhuQ2hlY2thYmxlR3JvdXBDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KClcbiAgICBtdWx0aXBsZTogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpXG4gICAgbm9TZWxlY3Rpb25MYWJlbCA9ICctJztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lKSB7XG4gICAgICAgIHN1cGVyKHpvbmUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFuZ3VsYXIgdXNlcyBvYmplY3QgaWRlbnRpdHkgdG8gc2VsZWN0IG9wdGlvbi4gSXQncyBwb3NzaWJsZSBmb3IgdGhlIGlkZW50aXRpZXMgb2YgaXRlbXMgdG8gY2hhbmdlIHdoaWxlIHRoZSBkYXRhIGRvZXMgbm90LlxuICAgICAqIFRoaXMgY2FuIGhhcHBlbiwgZm9yIGV4YW1wbGUsIGlmIHRoZSBpdGVtcyBhcmUgcHJvZHVjZWQgZnJvbSBhbiBSUEMgdG8gdGhlIHNlcnZlciwgYW5kIHRoYXQgUlBDIGlzIHJlLXJ1bi5cbiAgICAgKiBFdmVuIGlmIHRoZSBkYXRhIGhhc24ndCBjaGFuZ2VkLCB0aGUgc2Vjb25kIHJlc3BvbnNlIHdpbGwgcHJvZHVjZSBvYmplY3RzIHdpdGggZGlmZmVyZW50IGlkZW50aXRpZXMuXG4gICAgICogKHNlZTogaHR0cHM6Ly9hbmd1bGFyLmlvL2FwaS9mb3Jtcy9TZWxlY3RDb250cm9sVmFsdWVBY2Nlc3NvciNjdXN0b21pemluZy1vcHRpb24tc2VsZWN0aW9uKVxuICAgICAqXG4gICAgICogQHBhcmFtIHZhbHVlMSBhcyBmaXJzdCB2YWx1ZSB0byBjb21wYXJlIHRvXG4gICAgICogQHBhcmFtIHZhbHVlMiBhcyB2YWx1ZSB0byBiZSBjb21wYXJlZCB0b1xuICAgICAqIEByZXR1cm5zIGJvb2xlYW5cbiAgICAgKi9cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNvbXBhcmVGbih2YWx1ZTE6IGFueSwgdmFsdWUyOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXJlVmFsdWVzRXF1YWxzKHZhbHVlMSwgdmFsdWUyKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmb3JtLWdyb3VwXCJcbiAgICBbY2xhc3MuaGFzLWRhbmdlcl09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKVwiXG4gICAgW2NsYXNzLnZkLWZvcm0tZ3JvdXAtZGFuZ2VyXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpXCJcbiAgICBbYXR0ci5pZF09XCJidWlsZElkKCdDb250YWluZXInKVwiXG4gICAgdGFiaW5kZXg9XCItMVwiXG4+XG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIFthdHRyLmZvcl09XCJidWlsZENoaWxkSWQoKVwiXG4gICAgICAgICAgICAqbmdJZj1cIiEhbGFiZWxcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXNMYWJlbFNyT25seSA/ICdzci1vbmx5JyA6IGxhYmVsU3R5bGVNb2RpZmllclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwibGFiZWxcIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIXJlcXVpcmVkICYmICFoaWRlTm90UmVxdWlyZWRFeHRyYUxhYmVsXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7ICdmb2Vobi1pbnB1dC5vcHRpb25hbCcgfCBmcm9tRGljdGlvbmFyeSB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8Zm9laG4taGVscC1tb2RhbFxuICAgICAgICAgICAgY2xhc3M9XCJyZW1vdmVQYWRkaW5nQnV0dG9uXCJcbiAgICAgICAgICAgICpuZ0lmPVwiISFoZWxwTW9kYWxcIlxuICAgICAgICAgICAgW21vZGFsQ29udGVudF09XCJoZWxwTW9kYWxcIlxuICAgICAgICA+PC9mb2Vobi1oZWxwLW1vZGFsPlxuICAgIDwvZGl2PlxuXG4gICAgPGZvZWhuLXZhbGlkYXRpb24tYWxlcnRzIFtjb21wb25lbnRdPVwidGhpc1wiPjwvZm9laG4tdmFsaWRhdGlvbi1hbGVydHM+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiIWVsZW1lbnRzXCI+Q2hhcmdlbWVudC4uLjwvZGl2PlxuXG4gICAgPHNtYWxsXG4gICAgICAgICpuZ0lmPVwiaGVscFRleHRcIlxuICAgICAgICBbYXR0ci5pZF09XCJidWlsZENoaWxkSWQoKSArICdIZWxwJ1wiXG4gICAgICAgIGNsYXNzPVwiZm9ybS10ZXh0IHRleHQtc2Vjb25kYXJ5XCJcbiAgICAgICAgW2lubmVySFRNTF09XCJoZWxwVGV4dFwiXG4gICAgPjwvc21hbGw+XG5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbiAgICA8c2VsZWN0XG4gICAgICAgICpuZ0lmPVwiIW11bHRpcGxlXCJcbiAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiaGFzRXJyb3JzVG9EaXNwbGF5KCkgfHwgaGFzSW5oZXJpdEVycm9yRnJvbVBhcmVudCgpXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICBbbmFtZV09XCJuYW1lIHx8IGxhYmVsXCJcbiAgICAgICAgW2F0dHIuaWRdPVwiYnVpbGRDaGlsZElkKClcIlxuICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJnZXREZXNjcmliZWRCeSgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiZ2V0QXV0b0NvbXBsZXRlKClcIlxuICAgICAgICBbbmdNb2RlbF09XCJtb2RlbFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZU5nTW9kZWwoJGV2ZW50KVwiXG4gICAgICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlRm4uYmluZCh0aGlzKVwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKG1vZGVsKVwiXG4gICAgICAgICNlbnRyeUNvbXBvbmVudFxuICAgICAgICBuZ0RlZmF1bHRDb250cm9sXG4gICAgPlxuICAgICAgICA8b3B0aW9uICpuZ0lmPVwiIXJlcXVpcmVkXCIgW25nVmFsdWVdPVwibnVsbFwiPlxuICAgICAgICAgICAge3sgbm9TZWxlY3Rpb25MYWJlbCB9fVxuICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgPG9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVsZW1lbnQgb2YgZWxlbWVudHNcIlxuICAgICAgICAgICAgW25nVmFsdWVdPVwiZ2V0VmFsdWUoZWxlbWVudClcIlxuICAgICAgICAgICAgW2F0dHIuc2VsZWN0ZWRdPVwiaXNFbGVtZW50U2VsZWN0ZWQoZWxlbWVudCkgPyAnc2VsZWN0ZWQnIDogbnVsbFwiXG4gICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJnZXREaXNhYmxlZChlbGVtZW50KSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgZ2V0TGFiZWwoZWxlbWVudCkgfX1cbiAgICAgICAgPC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG4gICAgPHNlbGVjdFxuICAgICAgICAqbmdJZj1cIm11bHRpcGxlXCJcbiAgICAgICAgbXVsdGlwbGVcbiAgICAgICAgW2F0dHIuYXJpYS1tdWx0aXNlbGVjdGFibGVdPVwidHJ1ZVwiXG4gICAgICAgIFtjbGFzcy5pcy1pbnZhbGlkXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpIHx8IGhhc0luaGVyaXRFcnJvckZyb21QYXJlbnQoKVwiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgW25hbWVdPVwibmFtZSB8fCBsYWJlbFwiXG4gICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpXCJcbiAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiZ2V0RGVzY3JpYmVkQnkoKVwiXG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJoYXNFcnJvcnNUb0Rpc3BsYXkoKSB8fCBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZCB8fCBudWxsXCJcbiAgICAgICAgW25nTW9kZWxdPVwibW9kZWxcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVOZ01vZGVsKCRldmVudClcIlxuICAgICAgICBbY29tcGFyZVdpdGhdPVwiY29tcGFyZUZuLmJpbmQodGhpcylcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZShtb2RlbClcIlxuICAgICAgICAjZW50cnlDb21wb25lbnRcbiAgICAgICAgbmdEZWZhdWx0Q29udHJvbFxuICAgID5cbiAgICAgICAgPG9wdGlvblxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVsZW1lbnQgb2YgZWxlbWVudHNcIlxuICAgICAgICAgICAgW25nVmFsdWVdPVwiZ2V0VmFsdWUoZWxlbWVudClcIlxuICAgICAgICAgICAgW2F0dHIuc2VsZWN0ZWRdPVwiaXNFbGVtZW50U2VsZWN0ZWQoZWxlbWVudCkgPyAnc2VsZWN0ZWQnIDogbnVsbFwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImlzRWxlbWVudFNlbGVjdGVkKGVsZW1lbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgZ2V0TGFiZWwoZWxlbWVudCkgfX1cbiAgICAgICAgPC9vcHRpb24+XG4gICAgPC9zZWxlY3Q+XG48L2Rpdj5cbiJdfQ==
|
|
File without changes
|
|
File without changes
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class FoehnConfirmModalContent {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY29uZmlybS1tb2RhbC1jb250ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyx3QkFBd0I7Q0FNcEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRm9laG5Db25maXJtTW9kYWxDb250ZW50IHtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICBodG1sQ29udGVudDogc3RyaW5nO1xuICAgIG9rQnV0dG9uTGFiZWw/OiBzdHJpbmc7XG4gICAgY2FuY2VsQnV0dG9uTGFiZWw/OiBzdHJpbmc7XG4gICAgY2xvc2VhYmxlPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./foehn-confirm-modal.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "../foehn-modal/foehn-modal.component";
|
|
6
|
+
export class FoehnConfirmModalComponent {
|
|
7
|
+
constructor(confirmModalService) {
|
|
8
|
+
this.confirmModalService = confirmModalService;
|
|
9
|
+
this.isVisible = false;
|
|
10
|
+
// This need to be done as we're passing these functions to another component.
|
|
11
|
+
this.cancel = this.cancel.bind(this);
|
|
12
|
+
this.ok = this.ok.bind(this);
|
|
13
|
+
}
|
|
14
|
+
get content() {
|
|
15
|
+
return this.confirmModalService.getContent();
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this.confirmModalService
|
|
19
|
+
.getIsVisible()
|
|
20
|
+
// eslint-disable-next-line rxjs-angular/prefer-async-pipe
|
|
21
|
+
.subscribe(isVisible => (this.isVisible = isVisible));
|
|
22
|
+
}
|
|
23
|
+
cancel() {
|
|
24
|
+
this.confirmModalService.close();
|
|
25
|
+
}
|
|
26
|
+
ok() {
|
|
27
|
+
this.confirmModalService.ok();
|
|
28
|
+
}
|
|
29
|
+
updateVisibilityStatus(status) {
|
|
30
|
+
// In case the modal is closed by another mean such as the Escape key.
|
|
31
|
+
this.isVisible = status;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
FoehnConfirmModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalComponent, deps: [{ token: i1.FoehnConfirmModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
FoehnConfirmModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.2", type: FoehnConfirmModalComponent, selector: "foehn-confirm-modal", ngImport: i0, template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end mr-2 mb-2 mt-2\">\n <button\n id=\"confirmButton\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"cancelButton\"\n class=\"btn btn-primary ml-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.FoehnModalComponent, selector: "foehn-modal", inputs: ["id", "name", "modalSize", "modalBodyText", "modalHeaderText", "closeable", "modalTriggerHtmlElement", "isModalVisible"], outputs: ["isModalVisibleChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'foehn-confirm-modal', template: "<foehn-modal\n [modalHeaderText]=\"modalContent.title || 'Confirmation'\"\n modalSize=\"modal-md\"\n [isModalVisible]=\"isVisible\"\n (isModalVisibleChange)=\"updateVisibilityStatus($event)\"\n [closeable]=\"\n modalContent.closeable !== null && modalContent.closeable !== undefined\n ? modalContent.closeable\n : true\n \"\n *ngIf=\"content | async as modalContent\"\n>\n <p [innerHTML]=\"modalContent.htmlContent\"></p>\n\n <div modal-footer>\n <div class=\"d-flex justify-content-end mr-2 mb-2 mt-2\">\n <button\n id=\"confirmButton\"\n class=\"btn btn-secondary\"\n (click)=\"cancel()\"\n >\n {{ modalContent.cancelButtonLabel || 'Annuler' }}\n </button>\n <button\n id=\"cancelButton\"\n class=\"btn btn-primary ml-3\"\n (click)=\"ok()\"\n >\n {{ modalContent.okButtonLabel || 'Confirmer' }}\n </button>\n </div>\n </div>\n</foehn-modal>\n" }]
|
|
39
|
+
}], ctorParameters: function () { return [{ type: i1.FoehnConfirmModalService }]; } });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY29uZmlybS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tY29uZmlybS1tb2RhbC9mb2Vobi1jb25maXJtLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1jb25maXJtLW1vZGFsL2ZvZWhuLWNvbmZpcm0tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFVbEQsTUFBTSxPQUFPLDBCQUEwQjtJQUduQyxZQUFvQixtQkFBNkM7UUFBN0Msd0JBQW1CLEdBQW5CLG1CQUFtQixDQUEwQjtRQUZqRSxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2QsOEVBQThFO1FBQzlFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsbUJBQW1CO2FBQ25CLFlBQVksRUFBRTtZQUNmLDBEQUEwRDthQUN6RCxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsRUFBRTtRQUNFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsTUFBZTtRQUNsQyxzRUFBc0U7UUFDdEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7SUFDNUIsQ0FBQzs7dUhBL0JRLDBCQUEwQjsyR0FBMUIsMEJBQTBCLDJEQ1Z2QyxpbENBaUNBOzJGRHZCYSwwQkFBMEI7a0JBSnRDLFNBQVM7K0JBQ0kscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi1jb25maXJtLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxDb250ZW50IH0gZnJvbSAnLi9mb2Vobi1jb25maXJtLW1vZGFsLWNvbnRlbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZvZWhuLWNvbmZpcm0tbW9kYWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb2Vobi1jb25maXJtLW1vZGFsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBGb2VobkNvbmZpcm1Nb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgaXNWaXNpYmxlID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpcm1Nb2RhbFNlcnZpY2U6IEZvZWhuQ29uZmlybU1vZGFsU2VydmljZSkge1xuICAgICAgICAvLyBUaGlzIG5lZWQgdG8gYmUgZG9uZSBhcyB3ZSdyZSBwYXNzaW5nIHRoZXNlIGZ1bmN0aW9ucyB0byBhbm90aGVyIGNvbXBvbmVudC5cbiAgICAgICAgdGhpcy5jYW5jZWwgPSB0aGlzLmNhbmNlbC5iaW5kKHRoaXMpO1xuICAgICAgICB0aGlzLm9rID0gdGhpcy5vay5iaW5kKHRoaXMpO1xuICAgIH1cblxuICAgIGdldCBjb250ZW50KCk6IE9ic2VydmFibGU8Rm9laG5Db25maXJtTW9kYWxDb250ZW50PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpcm1Nb2RhbFNlcnZpY2UuZ2V0Q29udGVudCgpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbmZpcm1Nb2RhbFNlcnZpY2VcbiAgICAgICAgICAgIC5nZXRJc1Zpc2libGUoKVxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgLnN1YnNjcmliZShpc1Zpc2libGUgPT4gKHRoaXMuaXNWaXNpYmxlID0gaXNWaXNpYmxlKSk7XG4gICAgfVxuXG4gICAgY2FuY2VsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbmZpcm1Nb2RhbFNlcnZpY2UuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBvaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb25maXJtTW9kYWxTZXJ2aWNlLm9rKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVmlzaWJpbGl0eVN0YXR1cyhzdGF0dXM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgLy8gSW4gY2FzZSB0aGUgbW9kYWwgaXMgY2xvc2VkIGJ5IGFub3RoZXIgbWVhbiBzdWNoIGFzIHRoZSBFc2NhcGUga2V5LlxuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IHN0YXR1cztcbiAgICB9XG59XG4iLCI8Zm9laG4tbW9kYWxcbiAgICBbbW9kYWxIZWFkZXJUZXh0XT1cIm1vZGFsQ29udGVudC50aXRsZSB8fCAnQ29uZmlybWF0aW9uJ1wiXG4gICAgbW9kYWxTaXplPVwibW9kYWwtbWRcIlxuICAgIFtpc01vZGFsVmlzaWJsZV09XCJpc1Zpc2libGVcIlxuICAgIChpc01vZGFsVmlzaWJsZUNoYW5nZSk9XCJ1cGRhdGVWaXNpYmlsaXR5U3RhdHVzKCRldmVudClcIlxuICAgIFtjbG9zZWFibGVdPVwiXG4gICAgICAgIG1vZGFsQ29udGVudC5jbG9zZWFibGUgIT09IG51bGwgJiYgbW9kYWxDb250ZW50LmNsb3NlYWJsZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IG1vZGFsQ29udGVudC5jbG9zZWFibGVcbiAgICAgICAgICAgIDogdHJ1ZVxuICAgIFwiXG4gICAgKm5nSWY9XCJjb250ZW50IHwgYXN5bmMgYXMgbW9kYWxDb250ZW50XCJcbj5cbiAgICA8cCBbaW5uZXJIVE1MXT1cIm1vZGFsQ29udGVudC5odG1sQ29udGVudFwiPjwvcD5cblxuICAgIDxkaXYgbW9kYWwtZm9vdGVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmQgbXItMiBtYi0yIG10LTJcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImNvbmZpcm1CdXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjYW5jZWwoKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbW9kYWxDb250ZW50LmNhbmNlbEJ1dHRvbkxhYmVsIHx8ICdBbm51bGVyJyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgaWQ9XCJjYW5jZWxCdXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1sLTNcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvaygpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBtb2RhbENvbnRlbnQub2tCdXR0b25MYWJlbCB8fCAnQ29uZmlybWVyJyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9mb2Vobi1tb2RhbD5cbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FoehnModalModule } from '../foehn-modal/foehn-modal.module';
|
|
4
|
+
import { FoehnConfirmModalComponent } from './foehn-confirm-modal.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class FoehnConfirmModalModule {
|
|
7
|
+
}
|
|
8
|
+
FoehnConfirmModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
FoehnConfirmModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalModule, declarations: [FoehnConfirmModalComponent], imports: [CommonModule, FoehnModalModule], exports: [FoehnConfirmModalComponent] });
|
|
10
|
+
FoehnConfirmModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalModule, imports: [CommonModule, FoehnModalModule] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalModule, decorators: [{
|
|
12
|
+
type: NgModule,
|
|
13
|
+
args: [{
|
|
14
|
+
imports: [CommonModule, FoehnModalModule],
|
|
15
|
+
declarations: [FoehnConfirmModalComponent],
|
|
16
|
+
exports: [FoehnConfirmModalComponent]
|
|
17
|
+
}]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY29uZmlybS1tb2RhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tY29uZmlybS1tb2RhbC9mb2Vobi1jb25maXJtLW1vZGFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFPN0UsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1QjtxSEFBdkIsdUJBQXVCLGlCQUhqQiwwQkFBMEIsYUFEL0IsWUFBWSxFQUFFLGdCQUFnQixhQUU5QiwwQkFBMEI7cUhBRTNCLHVCQUF1QixZQUp0QixZQUFZLEVBQUUsZ0JBQWdCOzJGQUkvQix1QkFBdUI7a0JBTG5DLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDO29CQUN6QyxZQUFZLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDMUMsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvZWhuTW9kYWxNb2R1bGUgfSBmcm9tICcuLi9mb2Vobi1tb2RhbC9mb2Vobi1tb2RhbC5tb2R1bGUnO1xuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWNvbmZpcm0tbW9kYWwuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb2Vobk1vZGFsTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtGb2VobkNvbmZpcm1Nb2RhbENvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW0ZvZWhuQ29uZmlybU1vZGFsQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBGb2VobkNvbmZpcm1Nb2RhbE1vZHVsZSB7fVxuIl19
|
|
@@ -42,12 +42,12 @@ export class FoehnConfirmModalService {
|
|
|
42
42
|
this.rejectCallback = null;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
FoehnConfirmModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
46
|
-
FoehnConfirmModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
45
|
+
FoehnConfirmModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
FoehnConfirmModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalService, providedIn: 'root' });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.2", ngImport: i0, type: FoehnConfirmModalService, decorators: [{
|
|
48
48
|
type: Injectable,
|
|
49
49
|
args: [{
|
|
50
50
|
providedIn: 'root'
|
|
51
51
|
}]
|
|
52
52
|
}], ctorParameters: function () { return []; } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY29uZmlybS1tb2RhbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBT3JDLE1BQU0sT0FBTyx3QkFBd0I7SUFTakM7UUFSUSxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQTJCLElBQUksQ0FBQyxDQUFDO1FBR3RFLDhEQUE4RDtRQUN0RCxvQkFBZSxHQUE2QixJQUFJLENBQUM7UUFDekQsOERBQThEO1FBQ3RELG1CQUFjLEdBQTZCLElBQUksQ0FBQztRQUdwRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxVQUFVO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtRQUVELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsRUFBRTtRQUNFLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDMUI7UUFFRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQWlDO1FBQzlDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTNCLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7WUFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sS0FBSztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQy9CLENBQUM7O3FIQWxEUSx3QkFBd0I7eUhBQXhCLHdCQUF3QixjQUZyQixNQUFNOzJGQUVULHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxDb250ZW50IH0gZnJvbSAnLi9mb2Vobi1jb25maXJtLW1vZGFsLWNvbnRlbnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuQ29uZmlybU1vZGFsU2VydmljZSB7XG4gICAgcHJpdmF0ZSBjb250ZW50ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxGb2VobkNvbmZpcm1Nb2RhbENvbnRlbnQ+KG51bGwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlzaWJsZTogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSByZXNvbHZlQ2FsbGJhY2s6ICguLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCA9IG51bGw7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIHJlamVjdENhbGxiYWNrOiAoLi4uYXJnczogYW55W10pID0+IHZvaWQgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMudmlzaWJsZSA9IHRoaXMuY29udGVudC5waXBlKG1hcChkYXRhID0+ICEhZGF0YSkpO1xuICAgIH1cblxuICAgIGdldElzVmlzaWJsZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmlzaWJsZTtcbiAgICB9XG5cbiAgICBnZXRDb250ZW50KCk6IE9ic2VydmFibGU8Rm9laG5Db25maXJtTW9kYWxDb250ZW50PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlamVjdENhbGxiYWNrKSB7XG4gICAgICAgICAgICB0aGlzLnJlamVjdENhbGxiYWNrKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgb2soKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlc29sdmVDYWxsYmFjaykge1xuICAgICAgICAgICAgdGhpcy5yZXNvbHZlQ2FsbGJhY2soKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICB9XG5cbiAgICBvcGVuQ29uZmlybU1vZGFsKGNvbnRlbnQ6IEZvZWhuQ29uZmlybU1vZGFsQ29udGVudCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgICAgICB0aGlzLmNvbnRlbnQubmV4dChjb250ZW50KTtcblxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZXNvbHZlQ2FsbGJhY2sgPSByZXNvbHZlO1xuICAgICAgICAgICAgdGhpcy5yZWplY3RDYWxsYmFjayA9IHJlamVjdDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZW50Lm5leHQobnVsbCk7XG4gICAgICAgIHRoaXMucmVzb2x2ZUNhbGxiYWNrID0gbnVsbDtcbiAgICAgICAgdGhpcy5yZWplY3RDYWxsYmFjayA9IG51bGw7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import { Subject } from 'rxjs';
|
|
2
|
+
import { first } from 'rxjs/operators';
|
|
3
|
+
export class DatePickerNavigationHelper {
|
|
4
|
+
constructor() {
|
|
5
|
+
this._displayNextMonth = new Subject();
|
|
6
|
+
this._displayPreviousMonth = new Subject();
|
|
7
|
+
}
|
|
8
|
+
get displayNextMonth() {
|
|
9
|
+
return this._displayNextMonth.asObservable();
|
|
10
|
+
}
|
|
11
|
+
get displayPreviousMonth() {
|
|
12
|
+
return this._displayPreviousMonth.asObservable();
|
|
13
|
+
}
|
|
14
|
+
set currentFocusedElement(elem) {
|
|
15
|
+
this._currentFocusedElement = DatePickerNavigationHelper.convertElementToFocusedDay(elem);
|
|
16
|
+
}
|
|
17
|
+
set daysButtonsElemRef(elems) {
|
|
18
|
+
this._daysButtonsElemRef = elems;
|
|
19
|
+
}
|
|
20
|
+
set hostId(id) {
|
|
21
|
+
this._hostId = id;
|
|
22
|
+
}
|
|
23
|
+
static convertElementToFocusedDay(elem) {
|
|
24
|
+
if (!elem) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
disabled: elem.getAttribute('disabled') !== null,
|
|
29
|
+
indexDay: +elem.getAttribute('day-number') - 1,
|
|
30
|
+
indexRow: +elem.getAttribute('data-row-index'),
|
|
31
|
+
indexColumn: +elem.getAttribute('data-column-index')
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
static focusPreviousMonthButton(hostId) {
|
|
35
|
+
const element = document.getElementById(`${hostId}previous-month`);
|
|
36
|
+
if (element) {
|
|
37
|
+
element.focus();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
static focusNextMonthButton(hostId) {
|
|
41
|
+
const element = document.getElementById(`${hostId}next-month`);
|
|
42
|
+
if (element) {
|
|
43
|
+
element.focus();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
focusDefaultDay(hasSelectedDay) {
|
|
47
|
+
const daysInWeek = this.getEnabledDaysOfWeek();
|
|
48
|
+
if (hasSelectedDay) {
|
|
49
|
+
const selectedDay = daysInWeek.filter(value => value.nativeElement.getAttribute('data-is-selected') ===
|
|
50
|
+
'true');
|
|
51
|
+
if (selectedDay.length) {
|
|
52
|
+
selectedDay[0].nativeElement.focus();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
const hasToday = daysInWeek.filter(value => value.nativeElement.getAttribute('data-is-today') === 'true');
|
|
57
|
+
if (hasToday.length) {
|
|
58
|
+
hasToday[0].nativeElement.focus();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
focusNextDay() {
|
|
63
|
+
const daysInWeek = this.getEnabledDaysOfWeek();
|
|
64
|
+
if (!!daysInWeek.length) {
|
|
65
|
+
const indexSelected = this.getCurrentFocusedIndex(daysInWeek);
|
|
66
|
+
const nextIndex = indexSelected + 1;
|
|
67
|
+
if (nextIndex >= daysInWeek.length) {
|
|
68
|
+
// Here we change week so we need to listen to new loaded day buttons to focus proper one
|
|
69
|
+
this._daysButtonsElemRef.changes.pipe(first()).subscribe(() => {
|
|
70
|
+
const newDaysInWeek = this.getEnabledDaysOfWeek();
|
|
71
|
+
if (!newDaysInWeek.length) {
|
|
72
|
+
DatePickerNavigationHelper.focusPreviousMonthButton(this._hostId);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
newDaysInWeek[0].nativeElement.focus();
|
|
76
|
+
});
|
|
77
|
+
this._displayNextMonth.next();
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
daysInWeek[nextIndex].nativeElement.focus();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
focusPreviousDay() {
|
|
84
|
+
const daysInWeek = this.getEnabledDaysOfWeek();
|
|
85
|
+
if (!!daysInWeek.length) {
|
|
86
|
+
const indexSelected = this.getCurrentFocusedIndex(daysInWeek);
|
|
87
|
+
const previousIndex = indexSelected - 1;
|
|
88
|
+
if (previousIndex < 0) {
|
|
89
|
+
// Here we change week so we need to listen to new loaded day buttons to focus proper one
|
|
90
|
+
this._daysButtonsElemRef.changes.pipe(first()).subscribe(() => {
|
|
91
|
+
const newDaysInWeek = this.getEnabledDaysOfWeek();
|
|
92
|
+
if (!newDaysInWeek.length) {
|
|
93
|
+
DatePickerNavigationHelper.focusNextMonthButton(this._hostId);
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
newDaysInWeek[newDaysInWeek.length - 1].nativeElement.focus();
|
|
97
|
+
});
|
|
98
|
+
this._displayPreviousMonth.next();
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
daysInWeek[previousIndex].nativeElement.focus();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
focusNextWeekDay() {
|
|
105
|
+
const daysInColumn = this.getAllDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
106
|
+
const nextRowIndex = this._currentFocusedElement.indexRow + 1;
|
|
107
|
+
if (nextRowIndex >= daysInColumn.length ||
|
|
108
|
+
daysInColumn[nextRowIndex].nativeElement.getAttribute('disabled') !== null) {
|
|
109
|
+
// Here we change week so we need to listen to new loaded day buttons to focus proper one
|
|
110
|
+
this._daysButtonsElemRef.changes.pipe(first()).subscribe(() => {
|
|
111
|
+
const enabledDaysInColumn = this.getEnabledDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
112
|
+
if (!enabledDaysInColumn.length) {
|
|
113
|
+
DatePickerNavigationHelper.focusPreviousMonthButton(this._hostId);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
const newDaysInColumn = this.getAllDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
117
|
+
let newRowIndex = 0;
|
|
118
|
+
if (newDaysInColumn[newRowIndex].nativeElement.getAttribute('disabled') !== null) {
|
|
119
|
+
newRowIndex++;
|
|
120
|
+
}
|
|
121
|
+
newDaysInColumn[newRowIndex].nativeElement.focus();
|
|
122
|
+
});
|
|
123
|
+
this._displayNextMonth.next();
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
daysInColumn[nextRowIndex].nativeElement.focus();
|
|
127
|
+
}
|
|
128
|
+
focusPreviousWeekDay() {
|
|
129
|
+
const daysInColumn = this.getAllDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
130
|
+
const previousRowIndex = this._currentFocusedElement.indexRow - 1;
|
|
131
|
+
if (previousRowIndex < 0 ||
|
|
132
|
+
daysInColumn[previousRowIndex].nativeElement.getAttribute('disabled') !== null) {
|
|
133
|
+
// Here we change week so we need to listen to new loaded day buttons to focus proper one
|
|
134
|
+
this._daysButtonsElemRef.changes.pipe(first()).subscribe(() => {
|
|
135
|
+
const enabledDaysInColumn = this.getEnabledDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
136
|
+
if (!enabledDaysInColumn.length) {
|
|
137
|
+
DatePickerNavigationHelper.focusNextMonthButton(this._hostId);
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
const newDaysInColumn = this.getAllDaysInColumn(this._currentFocusedElement.indexColumn);
|
|
141
|
+
let newRowIndex = newDaysInColumn.length - 1;
|
|
142
|
+
if (newDaysInColumn[newRowIndex].nativeElement.getAttribute('disabled') !== null) {
|
|
143
|
+
newRowIndex--;
|
|
144
|
+
}
|
|
145
|
+
newDaysInColumn[newRowIndex].nativeElement.focus();
|
|
146
|
+
});
|
|
147
|
+
this._displayPreviousMonth.next();
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
daysInColumn[previousRowIndex].nativeElement.focus();
|
|
151
|
+
}
|
|
152
|
+
getEnabledDaysOfWeek() {
|
|
153
|
+
return [...this._daysButtonsElemRef.toArray()].filter(value => value.nativeElement.getAttribute('disabled') === null);
|
|
154
|
+
}
|
|
155
|
+
getAllDaysInColumn(indexColumn) {
|
|
156
|
+
return [...this._daysButtonsElemRef.toArray()].filter(value => +value.nativeElement.getAttribute('data-column-index') ===
|
|
157
|
+
indexColumn);
|
|
158
|
+
}
|
|
159
|
+
getEnabledDaysInColumn(indexColumn) {
|
|
160
|
+
return this.getAllDaysInColumn(indexColumn).filter(value => value.nativeElement.getAttribute('disabled') === null);
|
|
161
|
+
}
|
|
162
|
+
getCurrentFocusedIndex(daysInWeek) {
|
|
163
|
+
return daysInWeek.findIndex(item => item.nativeElement.getAttribute('id') ===
|
|
164
|
+
document.activeElement.getAttribute('id'));
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXItbmF2aWdhdGlvbi5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXItbmF2aWdhdGlvbi5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJdkMsTUFBTSxPQUFPLDBCQUEwQjtJQUF2QztRQUtZLHNCQUFpQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDeEMsMEJBQXFCLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQXVPeEQsQ0FBQztJQXJPRyxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDcEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckQsQ0FBQztJQUVELElBQUkscUJBQXFCLENBQUMsSUFBYTtRQUNuQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsMEJBQTBCLENBQUMsMEJBQTBCLENBQy9FLElBQUksQ0FDUCxDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksa0JBQWtCLENBQUMsS0FBNEI7UUFDL0MsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsRUFBVTtRQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU8sTUFBTSxDQUFDLDBCQUEwQixDQUFDLElBQWE7UUFDbkQsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNQLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxPQUFPO1lB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LGdCQUFnQixDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUNqRCxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksQ0FDakUsQ0FBQztJQUNOLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxXQUFtQjtRQUMxQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQ2pELEtBQUssQ0FBQyxFQUFFLENBQ0osQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQztZQUN0RCxXQUFXLENBQ2xCLENBQUM7SUFDTixDQUFDO0lBRU8sc0JBQXNCLENBQUMsV0FBbUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUM5QyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksQ0FDakUsQ0FBQztJQUNOLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxVQUF3QjtRQUNuRCxPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQ3ZCLElBQUksQ0FBQyxFQUFFLENBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQ3JDLFFBQVEsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUNoRCxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRm9jdXNlZERheSB9IGZyb20gJy4vZm9jdXNlZC1kYXkudHlwZSc7XG5cbmV4cG9ydCBjbGFzcyBEYXRlUGlja2VyTmF2aWdhdGlvbkhlbHBlciB7XG4gICAgcHJpdmF0ZSBfY3VycmVudEZvY3VzZWRFbGVtZW50OiBGb2N1c2VkRGF5O1xuICAgIHByaXZhdGUgX2RheXNCdXR0b25zRWxlbVJlZjogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuICAgIHByaXZhdGUgX2hvc3RJZDogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfZGlzcGxheU5leHRNb250aCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgcHJpdmF0ZSBfZGlzcGxheVByZXZpb3VzTW9udGggPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgZ2V0IGRpc3BsYXlOZXh0TW9udGgoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNwbGF5TmV4dE1vbnRoLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIGdldCBkaXNwbGF5UHJldmlvdXNNb250aCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXlQcmV2aW91c01vbnRoLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHNldCBjdXJyZW50Rm9jdXNlZEVsZW1lbnQoZWxlbTogRWxlbWVudCkge1xuICAgICAgICB0aGlzLl9jdXJyZW50Rm9jdXNlZEVsZW1lbnQgPSBEYXRlUGlja2VyTmF2aWdhdGlvbkhlbHBlci5jb252ZXJ0RWxlbWVudFRvRm9jdXNlZERheShcbiAgICAgICAgICAgIGVsZW1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzZXQgZGF5c0J1dHRvbnNFbGVtUmVmKGVsZW1zOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj4pIHtcbiAgICAgICAgdGhpcy5fZGF5c0J1dHRvbnNFbGVtUmVmID0gZWxlbXM7XG4gICAgfVxuXG4gICAgc2V0IGhvc3RJZChpZDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2hvc3RJZCA9IGlkO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGNvbnZlcnRFbGVtZW50VG9Gb2N1c2VkRGF5KGVsZW06IEVsZW1lbnQpOiBGb2N1c2VkRGF5IHtcbiAgICAgICAgaWYgKCFlbGVtKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGVsZW0uZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpICE9PSBudWxsLFxuICAgICAgICAgICAgaW5kZXhEYXk6ICtlbGVtLmdldEF0dHJpYnV0ZSgnZGF5LW51bWJlcicpIC0gMSxcbiAgICAgICAgICAgIGluZGV4Um93OiArZWxlbS5nZXRBdHRyaWJ1dGUoJ2RhdGEtcm93LWluZGV4JyksXG4gICAgICAgICAgICBpbmRleENvbHVtbjogK2VsZW0uZ2V0QXR0cmlidXRlKCdkYXRhLWNvbHVtbi1pbmRleCcpXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZm9jdXNQcmV2aW91c01vbnRoQnV0dG9uKGhvc3RJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHtob3N0SWR9cHJldmlvdXMtbW9udGhgKTtcbiAgICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgICAgIGVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGZvY3VzTmV4dE1vbnRoQnV0dG9uKGhvc3RJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHtob3N0SWR9bmV4dC1tb250aGApO1xuICAgICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICAgICAgZWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9jdXNEZWZhdWx0RGF5KGhhc1NlbGVjdGVkRGF5OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRheXNJbldlZWsgPSB0aGlzLmdldEVuYWJsZWREYXlzT2ZXZWVrKCk7XG4gICAgICAgIGlmIChoYXNTZWxlY3RlZERheSkge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWREYXkgPSBkYXlzSW5XZWVrLmZpbHRlcihcbiAgICAgICAgICAgICAgICB2YWx1ZSA9PlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5uYXRpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1pcy1zZWxlY3RlZCcpID09PVxuICAgICAgICAgICAgICAgICAgICAndHJ1ZSdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWREYXkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWREYXlbMF0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaGFzVG9kYXkgPSBkYXlzSW5XZWVrLmZpbHRlcihcbiAgICAgICAgICAgICAgICB2YWx1ZSA9PlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5uYXRpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1pcy10b2RheScpID09PSAndHJ1ZSdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoaGFzVG9kYXkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgaGFzVG9kYXlbMF0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9jdXNOZXh0RGF5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkYXlzSW5XZWVrID0gdGhpcy5nZXRFbmFibGVkRGF5c09mV2VlaygpO1xuICAgICAgICBpZiAoISFkYXlzSW5XZWVrLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgaW5kZXhTZWxlY3RlZCA9IHRoaXMuZ2V0Q3VycmVudEZvY3VzZWRJbmRleChkYXlzSW5XZWVrKTtcbiAgICAgICAgICAgIGNvbnN0IG5leHRJbmRleCA9IGluZGV4U2VsZWN0ZWQgKyAxO1xuICAgICAgICAgICAgaWYgKG5leHRJbmRleCA+PSBkYXlzSW5XZWVrLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIC8vIEhlcmUgd2UgY2hhbmdlIHdlZWsgc28gd2UgbmVlZCB0byBsaXN0ZW4gdG8gbmV3IGxvYWRlZCBkYXkgYnV0dG9ucyB0byBmb2N1cyBwcm9wZXIgb25lXG4gICAgICAgICAgICAgICAgdGhpcy5fZGF5c0J1dHRvbnNFbGVtUmVmLmNoYW5nZXMucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdEYXlzSW5XZWVrID0gdGhpcy5nZXRFbmFibGVkRGF5c09mV2VlaygpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW5ld0RheXNJbldlZWsubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBEYXRlUGlja2VyTmF2aWdhdGlvbkhlbHBlci5mb2N1c1ByZXZpb3VzTW9udGhCdXR0b24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faG9zdElkXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIG5ld0RheXNJbldlZWtbMF0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMuX2Rpc3BsYXlOZXh0TW9udGgubmV4dCgpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRheXNJbldlZWtbbmV4dEluZGV4XS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb2N1c1ByZXZpb3VzRGF5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkYXlzSW5XZWVrID0gdGhpcy5nZXRFbmFibGVkRGF5c09mV2VlaygpO1xuICAgICAgICBpZiAoISFkYXlzSW5XZWVrLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgaW5kZXhTZWxlY3RlZCA9IHRoaXMuZ2V0Q3VycmVudEZvY3VzZWRJbmRleChkYXlzSW5XZWVrKTtcbiAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzSW5kZXggPSBpbmRleFNlbGVjdGVkIC0gMTtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c0luZGV4IDwgMCkge1xuICAgICAgICAgICAgICAgIC8vIEhlcmUgd2UgY2hhbmdlIHdlZWsgc28gd2UgbmVlZCB0byBsaXN0ZW4gdG8gbmV3IGxvYWRlZCBkYXkgYnV0dG9ucyB0byBmb2N1cyBwcm9wZXIgb25lXG4gICAgICAgICAgICAgICAgdGhpcy5fZGF5c0J1dHRvbnNFbGVtUmVmLmNoYW5nZXMucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdEYXlzSW5XZWVrID0gdGhpcy5nZXRFbmFibGVkRGF5c09mV2VlaygpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW5ld0RheXNJbldlZWsubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBEYXRlUGlja2VyTmF2aWdhdGlvbkhlbHBlci5mb2N1c05leHRNb250aEJ1dHRvbihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ob3N0SWRcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbmV3RGF5c0luV2Vla1tcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld0RheXNJbldlZWsubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICBdLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLl9kaXNwbGF5UHJldmlvdXNNb250aC5uZXh0KCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGF5c0luV2Vla1twcmV2aW91c0luZGV4XS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb2N1c05leHRXZWVrRGF5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkYXlzSW5Db2x1bW4gPSB0aGlzLmdldEFsbERheXNJbkNvbHVtbihcbiAgICAgICAgICAgIHRoaXMuX2N1cnJlbnRGb2N1c2VkRWxlbWVudC5pbmRleENvbHVtblxuICAgICAgICApO1xuICAgICAgICBjb25zdCBuZXh0Um93SW5kZXggPSB0aGlzLl9jdXJyZW50Rm9jdXNlZEVsZW1lbnQuaW5kZXhSb3cgKyAxO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBuZXh0Um93SW5kZXggPj0gZGF5c0luQ29sdW1uLmxlbmd0aCB8fFxuICAgICAgICAgICAgZGF5c0luQ29sdW1uW25leHRSb3dJbmRleF0ubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAgICAgJ2Rpc2FibGVkJ1xuICAgICAgICAgICAgKSAhPT0gbnVsbFxuICAgICAgICApIHtcbiAgICAgICAgICAgIC8vIEhlcmUgd2UgY2hhbmdlIHdlZWsgc28gd2UgbmVlZCB0byBsaXN0ZW4gdG8gbmV3IGxvYWRlZCBkYXkgYnV0dG9ucyB0byBmb2N1cyBwcm9wZXIgb25lXG4gICAgICAgICAgICB0aGlzLl9kYXlzQnV0dG9uc0VsZW1SZWYuY2hhbmdlcy5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZW5hYmxlZERheXNJbkNvbHVtbiA9IHRoaXMuZ2V0RW5hYmxlZERheXNJbkNvbHVtbihcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY3VycmVudEZvY3VzZWRFbGVtZW50LmluZGV4Q29sdW1uXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAoIWVuYWJsZWREYXlzSW5Db2x1bW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIERhdGVQaWNrZXJOYXZpZ2F0aW9uSGVscGVyLmZvY3VzUHJldmlvdXNNb250aEJ1dHRvbihcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2hvc3RJZFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0RheXNJbkNvbHVtbiA9IHRoaXMuZ2V0QWxsRGF5c0luQ29sdW1uKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jdXJyZW50Rm9jdXNlZEVsZW1lbnQuaW5kZXhDb2x1bW5cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGxldCBuZXdSb3dJbmRleCA9IDA7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBuZXdEYXlzSW5Db2x1bW5bbmV3Um93SW5kZXhdLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc2FibGVkJ1xuICAgICAgICAgICAgICAgICAgICApICE9PSBudWxsXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIG5ld1Jvd0luZGV4Kys7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG5ld0RheXNJbkNvbHVtbltuZXdSb3dJbmRleF0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLl9kaXNwbGF5TmV4dE1vbnRoLm5leHQoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBkYXlzSW5Db2x1bW5bbmV4dFJvd0luZGV4XS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgZm9jdXNQcmV2aW91c1dlZWtEYXkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRheXNJbkNvbHVtbiA9IHRoaXMuZ2V0QWxsRGF5c0luQ29sdW1uKFxuICAgICAgICAgICAgdGhpcy5fY3VycmVudEZvY3VzZWRFbGVtZW50LmluZGV4Q29sdW1uXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzUm93SW5kZXggPSB0aGlzLl9jdXJyZW50Rm9jdXNlZEVsZW1lbnQuaW5kZXhSb3cgLSAxO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBwcmV2aW91c1Jvd0luZGV4IDwgMCB8fFxuICAgICAgICAgICAgZGF5c0luQ29sdW1uW3ByZXZpb3VzUm93SW5kZXhdLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgICAgICdkaXNhYmxlZCdcbiAgICAgICAgICAgICkgIT09IG51bGxcbiAgICAgICAgKSB7XG4gICAgICAgICAgICAvLyBIZXJlIHdlIGNoYW5nZSB3ZWVrIHNvIHdlIG5lZWQgdG8gbGlzdGVuIHRvIG5ldyBsb2FkZWQgZGF5IGJ1dHRvbnMgdG8gZm9jdXMgcHJvcGVyIG9uZVxuICAgICAgICAgICAgdGhpcy5fZGF5c0J1dHRvbnNFbGVtUmVmLmNoYW5nZXMucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuYWJsZWREYXlzSW5Db2x1bW4gPSB0aGlzLmdldEVuYWJsZWREYXlzSW5Db2x1bW4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2N1cnJlbnRGb2N1c2VkRWxlbWVudC5pbmRleENvbHVtblxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgaWYgKCFlbmFibGVkRGF5c0luQ29sdW1uLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBEYXRlUGlja2VyTmF2aWdhdGlvbkhlbHBlci5mb2N1c05leHRNb250aEJ1dHRvbihcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2hvc3RJZFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0RheXNJbkNvbHVtbiA9IHRoaXMuZ2V0QWxsRGF5c0luQ29sdW1uKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jdXJyZW50Rm9jdXNlZEVsZW1lbnQuaW5kZXhDb2x1bW5cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGxldCBuZXdSb3dJbmRleCA9IG5ld0RheXNJbkNvbHVtbi5sZW5ndGggLSAxO1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgbmV3RGF5c0luQ29sdW1uW25ld1Jvd0luZGV4XS5uYXRpdmVFbGVtZW50LmdldEF0dHJpYnV0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICdkaXNhYmxlZCdcbiAgICAgICAgICAgICAgICAgICAgKSAhPT0gbnVsbFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBuZXdSb3dJbmRleC0tO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBuZXdEYXlzSW5Db2x1bW5bbmV3Um93SW5kZXhdLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5fZGlzcGxheVByZXZpb3VzTW9udGgubmV4dCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGRheXNJbkNvbHVtbltwcmV2aW91c1Jvd0luZGV4XS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFbmFibGVkRGF5c09mV2VlaygpOiBFbGVtZW50UmVmW10ge1xuICAgICAgICByZXR1cm4gWy4uLnRoaXMuX2RheXNCdXR0b25zRWxlbVJlZi50b0FycmF5KCldLmZpbHRlcihcbiAgICAgICAgICAgIHZhbHVlID0+IHZhbHVlLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpID09PSBudWxsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBbGxEYXlzSW5Db2x1bW4oaW5kZXhDb2x1bW46IG51bWJlcik6IEVsZW1lbnRSZWZbXSB7XG4gICAgICAgIHJldHVybiBbLi4udGhpcy5fZGF5c0J1dHRvbnNFbGVtUmVmLnRvQXJyYXkoKV0uZmlsdGVyKFxuICAgICAgICAgICAgdmFsdWUgPT5cbiAgICAgICAgICAgICAgICArdmFsdWUubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtY29sdW1uLWluZGV4JykgPT09XG4gICAgICAgICAgICAgICAgaW5kZXhDb2x1bW5cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEVuYWJsZWREYXlzSW5Db2x1bW4oaW5kZXhDb2x1bW46IG51bWJlcik6IEVsZW1lbnRSZWZbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEFsbERheXNJbkNvbHVtbihpbmRleENvbHVtbikuZmlsdGVyKFxuICAgICAgICAgICAgdmFsdWUgPT4gdmFsdWUubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgPT09IG51bGxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEN1cnJlbnRGb2N1c2VkSW5kZXgoZGF5c0luV2VlazogRWxlbWVudFJlZltdKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIGRheXNJbldlZWsuZmluZEluZGV4KFxuICAgICAgICAgICAgaXRlbSA9PlxuICAgICAgICAgICAgICAgIGl0ZW0ubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2lkJykgPT09XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2lkJylcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import dayjs from 'dayjs';
|
|
2
|
+
import localeData from 'dayjs/plugin/localeData';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
dayjs.extend(localeData);
|
|
5
|
+
export class DatePickerHelper {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.YEAR_STRING_FORMAT = 'YYYY';
|
|
8
|
+
this.MONTH_STRING_NUMBER_FORMAT = 'M';
|
|
9
|
+
this.DAY_STRING_NUMBER_FORMAT = 'D';
|
|
10
|
+
this.NB_DAYS_IN_WEEK = 7;
|
|
11
|
+
this.DATE_STRING_FORMAT = 'YYYY-MM-DD';
|
|
12
|
+
this.DATE_READABLE_FORMAT = 'D MMMM YYYY';
|
|
13
|
+
this._displayedMonthYear = new BehaviorSubject(null);
|
|
14
|
+
this.loadLocale = (language) => import(`dayjs/locale/${language}`).then(() => dayjs.locale(language));
|
|
15
|
+
}
|
|
16
|
+
get displayedMonthYear() {
|
|
17
|
+
return this._displayedMonthYear.asObservable();
|
|
18
|
+
}
|
|
19
|
+
static getDateAsString(date) {
|
|
20
|
+
if (!!date && date.length === 3) {
|
|
21
|
+
return `${date[0]}-${date[1]}-${date[2]}`;
|
|
22
|
+
}
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
static getWeekday(date) {
|
|
26
|
+
const dayOfWeek = dayjs(date).format('dddd');
|
|
27
|
+
const weekDays = dayjs.weekdays();
|
|
28
|
+
return weekDays.indexOf(dayOfWeek);
|
|
29
|
+
}
|
|
30
|
+
static getNumberOfDaysInMonth(year, month) {
|
|
31
|
+
return dayjs(`${year}-${month}-01`).daysInMonth();
|
|
32
|
+
}
|
|
33
|
+
static getPreviousMonth(year, month) {
|
|
34
|
+
return dayjs(`${year}-${month}-01`).subtract(1, 'month');
|
|
35
|
+
}
|
|
36
|
+
static getNextMonth(year, month) {
|
|
37
|
+
return dayjs(`${year}-${month}-01`).add(1, 'month');
|
|
38
|
+
}
|
|
39
|
+
getWeekDays() {
|
|
40
|
+
const weekDays = [...dayjs.weekdays()];
|
|
41
|
+
// we need Lundi as first day of the week
|
|
42
|
+
weekDays.push(weekDays.shift());
|
|
43
|
+
return weekDays;
|
|
44
|
+
}
|
|
45
|
+
getWeeksOfMonth(initialYear, initialMonth, initialDay) {
|
|
46
|
+
this.initialYear = initialYear;
|
|
47
|
+
this.initialMonth = initialMonth;
|
|
48
|
+
this.initialDay = initialDay ? initialDay : '1';
|
|
49
|
+
const currentMonthDays = this.createDaysForCurrentMonth(initialYear, initialMonth);
|
|
50
|
+
const previousMonthDays = this.createDaysForPreviousMonth(initialYear, initialMonth, currentMonthDays);
|
|
51
|
+
const nextMonthDays = this.createDaysForNextMonth(initialYear, initialMonth, currentMonthDays);
|
|
52
|
+
const days = [
|
|
53
|
+
...previousMonthDays,
|
|
54
|
+
...currentMonthDays,
|
|
55
|
+
...nextMonthDays
|
|
56
|
+
];
|
|
57
|
+
this._displayedMonthYear.next({
|
|
58
|
+
year: currentMonthDays[0].date.year().toString(),
|
|
59
|
+
month: currentMonthDays[0].date.month().toString()
|
|
60
|
+
});
|
|
61
|
+
return this.buildWeeksOfMonth(days);
|
|
62
|
+
}
|
|
63
|
+
getNextWeeksOfMonth() {
|
|
64
|
+
const nextMonth = DatePickerHelper.getNextMonth(this.initialYear, this.initialMonth);
|
|
65
|
+
return this.getWeeksOfMonth(nextMonth.format(this.YEAR_STRING_FORMAT), nextMonth.format(this.MONTH_STRING_NUMBER_FORMAT));
|
|
66
|
+
}
|
|
67
|
+
getPreviousWeeksOfMonth() {
|
|
68
|
+
const previousMonth = DatePickerHelper.getPreviousMonth(this.initialYear, this.initialMonth);
|
|
69
|
+
return this.getWeeksOfMonth(previousMonth.format(this.YEAR_STRING_FORMAT), previousMonth.format(this.MONTH_STRING_NUMBER_FORMAT));
|
|
70
|
+
}
|
|
71
|
+
createDaysForCurrentMonth(year, month) {
|
|
72
|
+
return [
|
|
73
|
+
...Array(DatePickerHelper.getNumberOfDaysInMonth(year, month))
|
|
74
|
+
].map((day, index) => {
|
|
75
|
+
const date = dayjs(`${year}-${month}-${index + 1}`);
|
|
76
|
+
return {
|
|
77
|
+
date,
|
|
78
|
+
dateAsString: date.format(this.DATE_STRING_FORMAT),
|
|
79
|
+
dateAsReadable: date.format(this.DATE_READABLE_FORMAT),
|
|
80
|
+
dayOfMonth: index + 1,
|
|
81
|
+
isCurrentMonth: true
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
createDaysForPreviousMonth(year, month, currentMonthDays) {
|
|
86
|
+
const firstDayOfTheMonthWeekday = DatePickerHelper.getWeekday(currentMonthDays[0].dateAsString);
|
|
87
|
+
const previousMonth = DatePickerHelper.getPreviousMonth(year, month);
|
|
88
|
+
// Cover first day of the month being sunday
|
|
89
|
+
const visibleNumberOfDaysFromPreviousMonth = firstDayOfTheMonthWeekday
|
|
90
|
+
? firstDayOfTheMonthWeekday - 1
|
|
91
|
+
: 6;
|
|
92
|
+
const previousMonthLastMondayDayOfMonth = dayjs(currentMonthDays[0].dateAsString)
|
|
93
|
+
.subtract(visibleNumberOfDaysFromPreviousMonth, 'day')
|
|
94
|
+
.date();
|
|
95
|
+
return [...Array(visibleNumberOfDaysFromPreviousMonth)].map((day, index) => {
|
|
96
|
+
const date = dayjs(`${previousMonth.year()}-${previousMonth.month() + 1}-${previousMonthLastMondayDayOfMonth + index}`);
|
|
97
|
+
return {
|
|
98
|
+
date,
|
|
99
|
+
dateAsString: date.format(this.DATE_STRING_FORMAT),
|
|
100
|
+
dateAsReadable: date.format(this.DATE_READABLE_FORMAT),
|
|
101
|
+
dayOfMonth: previousMonthLastMondayDayOfMonth + index,
|
|
102
|
+
isCurrentMonth: false
|
|
103
|
+
};
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
createDaysForNextMonth(year, month, currentMonthDays) {
|
|
107
|
+
const lastDayOfTheMonthWeekday = DatePickerHelper.getWeekday(`${year}-${month}-${currentMonthDays.length}`);
|
|
108
|
+
const nextMonth = DatePickerHelper.getNextMonth(year, month);
|
|
109
|
+
const visibleNumberOfDaysFromNextMonth = lastDayOfTheMonthWeekday
|
|
110
|
+
? 7 - lastDayOfTheMonthWeekday
|
|
111
|
+
: 0;
|
|
112
|
+
return [...Array(visibleNumberOfDaysFromNextMonth)].map((day, index) => {
|
|
113
|
+
const date = dayjs(`${nextMonth.year()}-${nextMonth.month() + 1}-${index + 1}`);
|
|
114
|
+
return {
|
|
115
|
+
date,
|
|
116
|
+
dateAsString: date.format(this.DATE_STRING_FORMAT),
|
|
117
|
+
dateAsReadable: date.format(this.DATE_READABLE_FORMAT),
|
|
118
|
+
dayOfMonth: index + 1,
|
|
119
|
+
isCurrentMonth: false
|
|
120
|
+
};
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
buildWeeksOfMonth(days) {
|
|
124
|
+
const nbWeeks = days.length / this.NB_DAYS_IN_WEEK;
|
|
125
|
+
const weeks = [];
|
|
126
|
+
for (let i = 0; i < nbWeeks; i++) {
|
|
127
|
+
weeks.push(days.slice(i * this.NB_DAYS_IN_WEEK, (i + 1) * this.NB_DAYS_IN_WEEK));
|
|
128
|
+
}
|
|
129
|
+
return weeks;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWRhdGUtcGlja2VyL2RhdGUtcGlja2VyLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxVQUFVLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUtuRCxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBRXpCLE1BQU0sT0FBTyxnQkFBZ0I7SUFBN0I7UUFLYSx1QkFBa0IsR0FBRyxNQUFNLENBQUM7UUFDNUIsK0JBQTBCLEdBQUcsR0FBRyxDQUFDO1FBQ2pDLDZCQUF3QixHQUFHLEdBQUcsQ0FBQztRQUV2QixvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUNwQix1QkFBa0IsR0FBRyxZQUFZLENBQUM7UUFDbEMseUJBQW9CLEdBQUcsYUFBYSxDQUFDO1FBRTlDLHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFZLElBQUksQ0FBQyxDQUFDO1FBZ0NuRSxlQUFVLEdBQUcsQ0FBQyxRQUFnQixFQUFvQixFQUFFLENBQ2hELE1BQU0sQ0FBQyxnQkFBZ0IsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBMEs5RSxDQUFDO0lBek1HLElBQUksa0JBQWtCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxNQUFNLENBQUMsZUFBZSxDQUFDLElBQWM7UUFDakMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzdCLE9B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LEtBQUssQ0FBQyxJQUFJLENBQ04sSUFBSSxDQUFDLEtBQUssQ0FDTixDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFDeEIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FDakMsQ0FDSixDQUFDO1NBQ0w7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuaW1wb3J0IGxvY2FsZURhdGEgZnJvbSAnZGF5anMvcGx1Z2luL2xvY2FsZURhdGEnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERheU1vbnRoIH0gZnJvbSAnLi9kYXktbW9udGgudHlwZSc7XG5pbXBvcnQgeyBNb250aFllYXIgfSBmcm9tICcuL21vbnRoLXllYXIudHlwZSc7XG5cbmRheWpzLmV4dGVuZChsb2NhbGVEYXRhKTtcblxuZXhwb3J0IGNsYXNzIERhdGVQaWNrZXJIZWxwZXIge1xuICAgIGluaXRpYWxNb250aDogc3RyaW5nO1xuICAgIGluaXRpYWxZZWFyOiBzdHJpbmc7XG4gICAgaW5pdGlhbERheTogc3RyaW5nO1xuXG4gICAgcmVhZG9ubHkgWUVBUl9TVFJJTkdfRk9STUFUID0gJ1lZWVknO1xuICAgIHJlYWRvbmx5IE1PTlRIX1NUUklOR19OVU1CRVJfRk9STUFUID0gJ00nO1xuICAgIHJlYWRvbmx5IERBWV9TVFJJTkdfTlVNQkVSX0ZPUk1BVCA9ICdEJztcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgTkJfREFZU19JTl9XRUVLID0gNztcbiAgICBwcml2YXRlIHJlYWRvbmx5IERBVEVfU1RSSU5HX0ZPUk1BVCA9ICdZWVlZLU1NLUREJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IERBVEVfUkVBREFCTEVfRk9STUFUID0gJ0QgTU1NTSBZWVlZJztcblxuICAgIHByaXZhdGUgX2Rpc3BsYXllZE1vbnRoWWVhciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TW9udGhZZWFyPihudWxsKTtcblxuICAgIGdldCBkaXNwbGF5ZWRNb250aFllYXIoKTogT2JzZXJ2YWJsZTxNb250aFllYXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXllZE1vbnRoWWVhci5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0RGF0ZUFzU3RyaW5nKGRhdGU6IG51bWJlcltdKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCEhZGF0ZSAmJiBkYXRlLmxlbmd0aCA9PT0gMykge1xuICAgICAgICAgICAgcmV0dXJuIGAke2RhdGVbMF19LSR7ZGF0ZVsxXX0tJHtkYXRlWzJdfWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0V2Vla2RheShkYXRlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBkYXlPZldlZWsgPSBkYXlqcyhkYXRlKS5mb3JtYXQoJ2RkZGQnKTtcbiAgICAgICAgY29uc3Qgd2Vla0RheXMgPSBkYXlqcy53ZWVrZGF5cygpO1xuXG4gICAgICAgIHJldHVybiB3ZWVrRGF5cy5pbmRleE9mKGRheU9mV2Vlayk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0TnVtYmVyT2ZEYXlzSW5Nb250aCh5ZWFyOiBzdHJpbmcsIG1vbnRoOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gZGF5anMoYCR7eWVhcn0tJHttb250aH0tMDFgKS5kYXlzSW5Nb250aCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldFByZXZpb3VzTW9udGgoeWVhcjogc3RyaW5nLCBtb250aDogc3RyaW5nKTogZGF5anMuRGF5anMge1xuICAgICAgICByZXR1cm4gZGF5anMoYCR7eWVhcn0tJHttb250aH0tMDFgKS5zdWJ0cmFjdCgxLCAnbW9udGgnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBnZXROZXh0TW9udGgoeWVhcjogc3RyaW5nLCBtb250aDogc3RyaW5nKTogZGF5anMuRGF5anMge1xuICAgICAgICByZXR1cm4gZGF5anMoYCR7eWVhcn0tJHttb250aH0tMDFgKS5hZGQoMSwgJ21vbnRoJyk7XG4gICAgfVxuXG4gICAgbG9hZExvY2FsZSA9IChsYW5ndWFnZTogc3RyaW5nKTogUHJvbWlzZTx1bmtub3duPiA9PlxuICAgICAgICBpbXBvcnQoYGRheWpzL2xvY2FsZS8ke2xhbmd1YWdlfWApLnRoZW4oKCkgPT4gZGF5anMubG9jYWxlKGxhbmd1YWdlKSk7XG5cbiAgICBnZXRXZWVrRGF5cygpOiBzdHJpbmdbXSB7XG4gICAgICAgIGNvbnN0IHdlZWtEYXlzID0gWy4uLmRheWpzLndlZWtkYXlzKCldO1xuICAgICAgICAvLyB3ZSBuZWVkIEx1bmRpIGFzIGZpcnN0IGRheSBvZiB0aGUgd2Vla1xuICAgICAgICB3ZWVrRGF5cy5wdXNoKHdlZWtEYXlzLnNoaWZ0KCkpO1xuXG4gICAgICAgIHJldHVybiB3ZWVrRGF5cztcbiAgICB9XG5cbiAgICBnZXRXZWVrc09mTW9udGgoXG4gICAgICAgIGluaXRpYWxZZWFyOiBzdHJpbmcsXG4gICAgICAgIGluaXRpYWxNb250aDogc3RyaW5nLFxuICAgICAgICBpbml0aWFsRGF5Pzogc3RyaW5nXG4gICAgKTogRGF5TW9udGhbXVtdIHtcbiAgICAgICAgdGhpcy5pbml0aWFsWWVhciA9IGluaXRpYWxZZWFyO1xuICAgICAgICB0aGlzLmluaXRpYWxNb250aCA9IGluaXRpYWxNb250aDtcbiAgICAgICAgdGhpcy5pbml0aWFsRGF5ID0gaW5pdGlhbERheSA/IGluaXRpYWxEYXkgOiAnMSc7XG5cbiAgICAgICAgY29uc3QgY3VycmVudE1vbnRoRGF5cyA9IHRoaXMuY3JlYXRlRGF5c0ZvckN1cnJlbnRNb250aChcbiAgICAgICAgICAgIGluaXRpYWxZZWFyLFxuICAgICAgICAgICAgaW5pdGlhbE1vbnRoXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzTW9udGhEYXlzID0gdGhpcy5jcmVhdGVEYXlzRm9yUHJldmlvdXNNb250aChcbiAgICAgICAgICAgIGluaXRpYWxZZWFyLFxuICAgICAgICAgICAgaW5pdGlhbE1vbnRoLFxuICAgICAgICAgICAgY3VycmVudE1vbnRoRGF5c1xuICAgICAgICApO1xuICAgICAgICBjb25zdCBuZXh0TW9udGhEYXlzID0gdGhpcy5jcmVhdGVEYXlzRm9yTmV4dE1vbnRoKFxuICAgICAgICAgICAgaW5pdGlhbFllYXIsXG4gICAgICAgICAgICBpbml0aWFsTW9udGgsXG4gICAgICAgICAgICBjdXJyZW50TW9udGhEYXlzXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRheXMgPSBbXG4gICAgICAgICAgICAuLi5wcmV2aW91c01vbnRoRGF5cyxcbiAgICAgICAgICAgIC4uLmN1cnJlbnRNb250aERheXMsXG4gICAgICAgICAgICAuLi5uZXh0TW9udGhEYXlzXG4gICAgICAgIF07XG5cbiAgICAgICAgdGhpcy5fZGlzcGxheWVkTW9udGhZZWFyLm5leHQoe1xuICAgICAgICAgICAgeWVhcjogY3VycmVudE1vbnRoRGF5c1swXS5kYXRlLnllYXIoKS50b1N0cmluZygpLFxuICAgICAgICAgICAgbW9udGg6IGN1cnJlbnRNb250aERheXNbMF0uZGF0ZS5tb250aCgpLnRvU3RyaW5nKClcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYnVpbGRXZWVrc09mTW9udGgoZGF5cyk7XG4gICAgfVxuXG4gICAgZ2V0TmV4dFdlZWtzT2ZNb250aCgpOiBEYXlNb250aFtdW10ge1xuICAgICAgICBjb25zdCBuZXh0TW9udGggPSBEYXRlUGlja2VySGVscGVyLmdldE5leHRNb250aChcbiAgICAgICAgICAgIHRoaXMuaW5pdGlhbFllYXIsXG4gICAgICAgICAgICB0aGlzLmluaXRpYWxNb250aFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFdlZWtzT2ZNb250aChcbiAgICAgICAgICAgIG5leHRNb250aC5mb3JtYXQodGhpcy5ZRUFSX1NUUklOR19GT1JNQVQpLFxuICAgICAgICAgICAgbmV4dE1vbnRoLmZvcm1hdCh0aGlzLk1PTlRIX1NUUklOR19OVU1CRVJfRk9STUFUKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldFByZXZpb3VzV2Vla3NPZk1vbnRoKCk6IERheU1vbnRoW11bXSB7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzTW9udGggPSBEYXRlUGlja2VySGVscGVyLmdldFByZXZpb3VzTW9udGgoXG4gICAgICAgICAgICB0aGlzLmluaXRpYWxZZWFyLFxuICAgICAgICAgICAgdGhpcy5pbml0aWFsTW9udGhcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRXZWVrc09mTW9udGgoXG4gICAgICAgICAgICBwcmV2aW91c01vbnRoLmZvcm1hdCh0aGlzLllFQVJfU1RSSU5HX0ZPUk1BVCksXG4gICAgICAgICAgICBwcmV2aW91c01vbnRoLmZvcm1hdCh0aGlzLk1PTlRIX1NUUklOR19OVU1CRVJfRk9STUFUKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlRGF5c0ZvckN1cnJlbnRNb250aCh5ZWFyOiBzdHJpbmcsIG1vbnRoOiBzdHJpbmcpOiBEYXlNb250aFtdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIC4uLkFycmF5KERhdGVQaWNrZXJIZWxwZXIuZ2V0TnVtYmVyT2ZEYXlzSW5Nb250aCh5ZWFyLCBtb250aCkpXG4gICAgICAgIF0ubWFwKChkYXksIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkYXRlID0gZGF5anMoYCR7eWVhcn0tJHttb250aH0tJHtpbmRleCArIDF9YCk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRhdGUsXG4gICAgICAgICAgICAgICAgZGF0ZUFzU3RyaW5nOiBkYXRlLmZvcm1hdCh0aGlzLkRBVEVfU1RSSU5HX0ZPUk1BVCksXG4gICAgICAgICAgICAgICAgZGF0ZUFzUmVhZGFibGU6IGRhdGUuZm9ybWF0KHRoaXMuREFURV9SRUFEQUJMRV9GT1JNQVQpLFxuICAgICAgICAgICAgICAgIGRheU9mTW9udGg6IGluZGV4ICsgMSxcbiAgICAgICAgICAgICAgICBpc0N1cnJlbnRNb250aDogdHJ1ZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEYXlzRm9yUHJldmlvdXNNb250aChcbiAgICAgICAgeWVhcjogc3RyaW5nLFxuICAgICAgICBtb250aDogc3RyaW5nLFxuICAgICAgICBjdXJyZW50TW9udGhEYXlzOiBEYXlNb250aFtdXG4gICAgKTogRGF5TW9udGhbXSB7XG4gICAgICAgIGNvbnN0IGZpcnN0RGF5T2ZUaGVNb250aFdlZWtkYXkgPSBEYXRlUGlja2VySGVscGVyLmdldFdlZWtkYXkoXG4gICAgICAgICAgICBjdXJyZW50TW9udGhEYXlzWzBdLmRhdGVBc1N0cmluZ1xuICAgICAgICApO1xuICAgICAgICBjb25zdCBwcmV2aW91c01vbnRoID0gRGF0ZVBpY2tlckhlbHBlci5nZXRQcmV2aW91c01vbnRoKHllYXIsIG1vbnRoKTtcblxuICAgICAgICAvLyBDb3ZlciBmaXJzdCBkYXkgb2YgdGhlIG1vbnRoIGJlaW5nIHN1bmRheVxuICAgICAgICBjb25zdCB2aXNpYmxlTnVtYmVyT2ZEYXlzRnJvbVByZXZpb3VzTW9udGggPSBmaXJzdERheU9mVGhlTW9udGhXZWVrZGF5XG4gICAgICAgICAgICA/IGZpcnN0RGF5T2ZUaGVNb250aFdlZWtkYXkgLSAxXG4gICAgICAgICAgICA6IDY7XG5cbiAgICAgICAgY29uc3QgcHJldmlvdXNNb250aExhc3RNb25kYXlEYXlPZk1vbnRoID0gZGF5anMoXG4gICAgICAgICAgICBjdXJyZW50TW9udGhEYXlzWzBdLmRhdGVBc1N0cmluZ1xuICAgICAgICApXG4gICAgICAgICAgICAuc3VidHJhY3QodmlzaWJsZU51bWJlck9mRGF5c0Zyb21QcmV2aW91c01vbnRoLCAnZGF5JylcbiAgICAgICAgICAgIC5kYXRlKCk7XG5cbiAgICAgICAgcmV0dXJuIFsuLi5BcnJheSh2aXNpYmxlTnVtYmVyT2ZEYXlzRnJvbVByZXZpb3VzTW9udGgpXS5tYXAoXG4gICAgICAgICAgICAoZGF5LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGUgPSBkYXlqcyhcbiAgICAgICAgICAgICAgICAgICAgYCR7cHJldmlvdXNNb250aC55ZWFyKCl9LSR7cHJldmlvdXNNb250aC5tb250aCgpICsgMX0tJHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzTW9udGhMYXN0TW9uZGF5RGF5T2ZNb250aCArIGluZGV4XG4gICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXRlLFxuICAgICAgICAgICAgICAgICAgICBkYXRlQXNTdHJpbmc6IGRhdGUuZm9ybWF0KHRoaXMuREFURV9TVFJJTkdfRk9STUFUKSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUFzUmVhZGFibGU6IGRhdGUuZm9ybWF0KHRoaXMuREFURV9SRUFEQUJMRV9GT1JNQVQpLFxuICAgICAgICAgICAgICAgICAgICBkYXlPZk1vbnRoOiBwcmV2aW91c01vbnRoTGFzdE1vbmRheURheU9mTW9udGggKyBpbmRleCxcbiAgICAgICAgICAgICAgICAgICAgaXNDdXJyZW50TW9udGg6IGZhbHNlXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZURheXNGb3JOZXh0TW9udGgoXG4gICAgICAgIHllYXI6IHN0cmluZyxcbiAgICAgICAgbW9udGg6IHN0cmluZyxcbiAgICAgICAgY3VycmVudE1vbnRoRGF5czogRGF5TW9udGhbXVxuICAgICk6IERheU1vbnRoW10ge1xuICAgICAgICBjb25zdCBsYXN0RGF5T2ZUaGVNb250aFdlZWtkYXkgPSBEYXRlUGlja2VySGVscGVyLmdldFdlZWtkYXkoXG4gICAgICAgICAgICBgJHt5ZWFyfS0ke21vbnRofS0ke2N1cnJlbnRNb250aERheXMubGVuZ3RofWBcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbmV4dE1vbnRoID0gRGF0ZVBpY2tlckhlbHBlci5nZXROZXh0TW9udGgoeWVhciwgbW9udGgpO1xuXG4gICAgICAgIGNvbnN0IHZpc2libGVOdW1iZXJPZkRheXNGcm9tTmV4dE1vbnRoID0gbGFzdERheU9mVGhlTW9udGhXZWVrZGF5XG4gICAgICAgICAgICA/IDcgLSBsYXN0RGF5T2ZUaGVNb250aFdlZWtkYXlcbiAgICAgICAgICAgIDogMDtcblxuICAgICAgICByZXR1cm4gWy4uLkFycmF5KHZpc2libGVOdW1iZXJPZkRheXNGcm9tTmV4dE1vbnRoKV0ubWFwKFxuICAgICAgICAgICAgKGRheSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYXRlID0gZGF5anMoXG4gICAgICAgICAgICAgICAgICAgIGAke25leHRNb250aC55ZWFyKCl9LSR7bmV4dE1vbnRoLm1vbnRoKCkgKyAxfS0ke2luZGV4ICsgMX1gXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXRlLFxuICAgICAgICAgICAgICAgICAgICBkYXRlQXNTdHJpbmc6IGRhdGUuZm9ybWF0KHRoaXMuREFURV9TVFJJTkdfRk9STUFUKSxcbiAgICAgICAgICAgICAgICAgICAgZGF0ZUFzUmVhZGFibGU6IGRhdGUuZm9ybWF0KHRoaXMuREFURV9SRUFEQUJMRV9GT1JNQVQpLFxuICAgICAgICAgICAgICAgICAgICBkYXlPZk1vbnRoOiBpbmRleCArIDEsXG4gICAgICAgICAgICAgICAgICAgIGlzQ3VycmVudE1vbnRoOiBmYWxzZVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBidWlsZFdlZWtzT2ZNb250aChkYXlzOiBEYXlNb250aFtdKTogRGF5TW9udGhbXVtdIHtcbiAgICAgICAgY29uc3QgbmJXZWVrcyA9IGRheXMubGVuZ3RoIC8gdGhpcy5OQl9EQVlTX0lOX1dFRUs7XG4gICAgICAgIGNvbnN0IHdlZWtzID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuYldlZWtzOyBpKyspIHtcbiAgICAgICAgICAgIHdlZWtzLnB1c2goXG4gICAgICAgICAgICAgICAgZGF5cy5zbGljZShcbiAgICAgICAgICAgICAgICAgICAgaSAqIHRoaXMuTkJfREFZU19JTl9XRUVLLFxuICAgICAgICAgICAgICAgICAgICAoaSArIDEpICogdGhpcy5OQl9EQVlTX0lOX1dFRUtcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHdlZWtzO1xuICAgIH1cbn1cbiJdfQ==
|
package/{esm2015/foehn-date-picker/day-month.type.js → esm2020/foehn-date-picker/day-month.type.mjs}
RENAMED
|
File without changes
|
|
File without changes
|