@dsivd/prestations-ng 17.10.9 → 18.0.0-beta.10
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 +2478 -2466
- package/CONTRIBUTING.md +66 -66
- package/ESLINT_MIGRATION_GUIDE.md +19 -33
- package/MODULES.md +88 -88
- package/MULTI_ETAPES.md +9 -9
- package/README.md +25 -24
- package/README_COMMON.md +10 -10
- package/UPGRADING_V12.md +36 -36
- package/UPGRADING_V13.md +3 -3
- package/UPGRADING_V14.md +2 -2
- package/UPGRADING_V15.md +4 -4
- package/UPGRADING_V16.md +38 -38
- package/UPGRADING_V17.md +51 -51
- package/UPGRADING_V18.md +596 -8
- package/UPGRADING_V8.md +5 -5
- package/abstract-page-component.d.ts +1 -1
- package/dsivd-prestations-ng-18.0.0-beta.10.tgz +0 -0
- package/fesm2022/dsivd-prestations-ng.mjs +903 -868
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-checkables/foehn-checkable-group.component.d.ts +1 -1
- package/foehn-checkables/foehn-checkables.module.d.ts +6 -7
- package/foehn-date-picker/date-picker.helper.d.ts +1 -1
- package/foehn-icons/abstract-icon-component.d.ts +1 -1
- package/foehn-input/foehn-input-string.component.d.ts +1 -1
- package/foehn-input/foehn-input.component.d.ts +1 -1
- package/foehn-menu-prestation/abstract-list-item-detail-page.component.d.ts +1 -1
- 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-navigation/abstract-foehn-navigation.component.d.ts +1 -1
- package/foehn-table/foehn-table.component.d.ts +1 -6
- package/foehn-upload/abstract-foehn-uploader.component.d.ts +1 -2
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.d.ts +1 -3
- package/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.d.ts +1 -1
- package/index.d.ts +1 -1
- package/index.html +1 -1
- package/package.json +15 -17
- package/prestations-ng-core.module.d.ts +5 -4
- package/sdk-appinfo/application-info.service.d.ts +1 -0
- package/sdk-drafts/drafts.module.d.ts +7 -8
- package/sdk-support-alert/support-alert.module.d.ts +2 -3
- package/dsivd-prestations-ng-17.10.9.tgz +0 -0
- package/esm2022/abstract-page-component.mjs +0 -232
- package/esm2022/directives/currency-formatter.directive.mjs +0 -143
- package/esm2022/directives/formatter.module.mjs +0 -37
- package/esm2022/directives/iban-formatter.directive.mjs +0 -29
- package/esm2022/directives/ide-formatter.directive.mjs +0 -37
- package/esm2022/directives/ndc-formatter.directive.mjs +0 -75
- package/esm2022/dsivd-prestations-ng.mjs +0 -5
- package/esm2022/foehn-address/address.type.mjs +0 -10
- package/esm2022/foehn-address/foehn-address.module.mjs +0 -55
- package/esm2022/foehn-address/foehn-display-address.component.mjs +0 -69
- package/esm2022/foehn-address/foehn-input-address.component.mjs +0 -498
- package/esm2022/foehn-address/foehn-input-foreign-locality.component.mjs +0 -66
- package/esm2022/foehn-address/foehn-input-foreign-street.component.mjs +0 -56
- package/esm2022/foehn-agenda/calendar.type.mjs +0 -3
- package/esm2022/foehn-agenda/current-week.type.mjs +0 -4
- package/esm2022/foehn-agenda/day-slots.type.mjs +0 -3
- package/esm2022/foehn-agenda/foehn-agenda-navigation/foehn-agenda-navigation.component.mjs +0 -75
- package/esm2022/foehn-agenda/foehn-agenda-timeslot-panel/foehn-agenda-timeslot-panel.component.mjs +0 -242
- package/esm2022/foehn-agenda/foehn-agenda.component.mjs +0 -95
- package/esm2022/foehn-agenda/foehn-agenda.module.mjs +0 -62
- package/esm2022/foehn-agenda/pagination-week.type.mjs +0 -3
- package/esm2022/foehn-agenda/selected-slot.type.mjs +0 -3
- package/esm2022/foehn-autocomplete/foehn-autocomplete.component.mjs +0 -684
- package/esm2022/foehn-autocomplete/foehn-autocomplete.module.mjs +0 -40
- package/esm2022/foehn-boolean/foehn-boolean-checkbox.component.mjs +0 -28
- package/esm2022/foehn-boolean/foehn-boolean-radio.component.mjs +0 -40
- package/esm2022/foehn-boolean/foehn-boolean.module.mjs +0 -33
- package/esm2022/foehn-breadcrumb/breadcrumb-event.service.mjs +0 -177
- package/esm2022/foehn-breadcrumb/breadcrumb.mjs +0 -5
- package/esm2022/foehn-breadcrumb/foehn-breadcrumb.component.mjs +0 -106
- package/esm2022/foehn-breadcrumb/foehn-breadcrumb.module.mjs +0 -20
- package/esm2022/foehn-checkables/foehn-checkable-group.component.mjs +0 -291
- package/esm2022/foehn-checkables/foehn-checkables.module.mjs +0 -68
- package/esm2022/foehn-checkables/foehn-checkbox.component.mjs +0 -37
- package/esm2022/foehn-checkables/foehn-radio.component.mjs +0 -64
- package/esm2022/foehn-checkables/foehn-select.component.mjs +0 -55
- package/esm2022/foehn-checkables/form-select-option-group.mjs +0 -3
- package/esm2022/foehn-checkables/form-select-option.mjs +0 -3
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal-content.mjs +0 -7
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.component.mjs +0 -40
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.module.mjs +0 -19
- package/esm2022/foehn-confirm-modal/foehn-confirm-modal.service.mjs +0 -53
- package/esm2022/foehn-date-picker/date-picker-navigation.helper.mjs +0 -168
- package/esm2022/foehn-date-picker/date-picker.helper.mjs +0 -132
- package/esm2022/foehn-date-picker/day-month.type.mjs +0 -3
- package/esm2022/foehn-date-picker/focused-day.type.mjs +0 -3
- package/esm2022/foehn-date-picker/foehn-date-picker.component.mjs +0 -392
- package/esm2022/foehn-date-picker/foehn-date-picker.module.mjs +0 -40
- package/esm2022/foehn-date-picker/month-year.type.mjs +0 -3
- package/esm2022/foehn-date-picker-button/foehn-date-picker-button.component.mjs +0 -97
- package/esm2022/foehn-date-picker-button/foehn-date-picker-button.module.mjs +0 -36
- package/esm2022/foehn-debug-summary/foehn-debug-summary.component.mjs +0 -84
- package/esm2022/foehn-debug-summary/foehn-debug-summary.component.module.mjs +0 -20
- package/esm2022/foehn-decision-electronique/foehn-decision-electronique.component.mjs +0 -37
- package/esm2022/foehn-decision-electronique/foehn-decision-electronique.module.mjs +0 -32
- package/esm2022/foehn-dropdown-menu/dropdown-menu-group.type.mjs +0 -3
- package/esm2022/foehn-dropdown-menu/dropdown-menu-item.type.mjs +0 -6
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.component.mjs +0 -212
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.module.mjs +0 -21
- package/esm2022/foehn-feedback-notification/foehn-feedback-notification.component.mjs +0 -113
- package/esm2022/foehn-feedback-notification/foehn-feedback-notification.module.mjs +0 -32
- package/esm2022/foehn-feedback-notification/foehn-feedback-notification.type.mjs +0 -3
- package/esm2022/foehn-footer/foehn-footer.component.mjs +0 -130
- package/esm2022/foehn-footer/foehn-footer.module.mjs +0 -19
- package/esm2022/foehn-footer/footer-link.type.mjs +0 -3
- package/esm2022/foehn-form/foehn-form.component.mjs +0 -136
- package/esm2022/foehn-form/foehn-form.module.mjs +0 -32
- package/esm2022/foehn-form/register-ng-model.service.mjs +0 -23
- package/esm2022/foehn-growl/foehn-growl.component.mjs +0 -45
- package/esm2022/foehn-growl/foehn-growl.module.mjs +0 -18
- package/esm2022/foehn-growl/growl-broker.service.mjs +0 -37
- package/esm2022/foehn-growl/growl-message.mjs +0 -9
- package/esm2022/foehn-growl/growl-types.mjs +0 -7
- package/esm2022/foehn-header/foehn-header.component.mjs +0 -159
- package/esm2022/foehn-header/foehn-header.module.mjs +0 -40
- package/esm2022/foehn-header/foehn-skip-link.component.mjs +0 -51
- package/esm2022/foehn-help-modal/foehn-help-modal.component.mjs +0 -44
- package/esm2022/foehn-help-modal/foehn-help-modal.module.mjs +0 -20
- package/esm2022/foehn-help-modal/foehn-help-modal.type.mjs +0 -2
- package/esm2022/foehn-icons/abstract-icon-component.mjs +0 -12
- package/esm2022/foehn-icons/foehn-icon-calendar.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-check-square-o.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-check.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-chevron-down.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-chevron-left.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-chevron-right.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-chevron-up.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-clock.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-comment-dots.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-edit.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-external-link-alt.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-file-pdf.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-info-circle.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-lock.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-map-marker.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-minus-circle.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-pencil.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-plus-circle.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-plus-square.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-search.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-times.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-trash-alt.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-unlock-alt.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icon-user.component.mjs +0 -19
- package/esm2022/foehn-icons/foehn-icons.module.mjs +0 -139
- package/esm2022/foehn-input/foehn-input-email.component.mjs +0 -74
- package/esm2022/foehn-input/foehn-input-hidden.component.mjs +0 -54
- package/esm2022/foehn-input/foehn-input-number.component.mjs +0 -319
- package/esm2022/foehn-input/foehn-input-password.component.mjs +0 -51
- package/esm2022/foehn-input/foehn-input-phone.component.mjs +0 -99
- package/esm2022/foehn-input/foehn-input-prefixed-text.component.mjs +0 -116
- package/esm2022/foehn-input/foehn-input-string.component.mjs +0 -27
- package/esm2022/foehn-input/foehn-input-text.component.mjs +0 -69
- package/esm2022/foehn-input/foehn-input-textarea.component.mjs +0 -97
- package/esm2022/foehn-input/foehn-input.component.mjs +0 -418
- package/esm2022/foehn-input/foehn-input.module.mjs +0 -98
- package/esm2022/foehn-input/pattern.const.mjs +0 -16
- package/esm2022/foehn-input-date/foehn-input-date.component.mjs +0 -163
- package/esm2022/foehn-input-date-time/foehn-input-date-time.component.mjs +0 -201
- package/esm2022/foehn-input-time/foehn-input-time.component.mjs +0 -89
- package/esm2022/foehn-list/foehn-list.component.mjs +0 -127
- package/esm2022/foehn-list/foehn-list.module.mjs +0 -19
- package/esm2022/foehn-list/page-change-event.mjs +0 -3
- package/esm2022/foehn-menu-prestation/abstract-list-item-detail-page.component.mjs +0 -122
- package/esm2022/foehn-menu-prestation/abstract-menu-page.component.mjs +0 -31
- package/esm2022/foehn-menu-prestation/abstract-page-from-menu.component.mjs +0 -87
- package/esm2022/foehn-menu-prestation/foehn-error-pill/foehn-error-pill.component.mjs +0 -25
- package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-item-description.mjs +0 -2
- package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-item.mjs +0 -3
- package/esm2022/foehn-menu-prestation/foehn-list-summary/foehn-list-summary.component.mjs +0 -161
- package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item/foehn-menu-item.component.mjs +0 -38
- package/esm2022/foehn-menu-prestation/foehn-menu-items/foehn-menu-item-transmit/foehn-menu-item-transmit.component.mjs +0 -58
- package/esm2022/foehn-menu-prestation/foehn-menu-prestation.module.mjs +0 -67
- package/esm2022/foehn-misc/foehn-abbr.component.mjs +0 -15
- package/esm2022/foehn-misc/foehn-misc.module.mjs +0 -17
- package/esm2022/foehn-modal/foehn-modal.component.mjs +0 -94
- package/esm2022/foehn-modal/foehn-modal.module.mjs +0 -21
- package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.component.mjs +0 -287
- package/esm2022/foehn-multiselect-autocomplete/foehn-multiselect-autocomplete.module.mjs +0 -40
- package/esm2022/foehn-nav13/foehn-input-nav13.component.mjs +0 -114
- package/esm2022/foehn-nav13/foehn-input-nav13.module.mjs +0 -32
- package/esm2022/foehn-navigation/abstract-foehn-navigation.component.mjs +0 -55
- package/esm2022/foehn-navigation/foehn-navigation/foehn-navigation.component.mjs +0 -67
- package/esm2022/foehn-navigation/foehn-navigation.module.mjs +0 -37
- package/esm2022/foehn-navigation/foehn-navigation.service.mjs +0 -322
- package/esm2022/foehn-navigation/foehn-simple-navigation/foehn-simple-navigation.component.mjs +0 -26
- package/esm2022/foehn-notfound/foehn-notfound.component.mjs +0 -61
- package/esm2022/foehn-notfound/foehn-notfound.module.mjs +0 -20
- package/esm2022/foehn-page/foehn-page-counter.component.mjs +0 -31
- package/esm2022/foehn-page/foehn-page-expiration-timer/current-session-expiration.mjs +0 -3
- package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration-interceptor.mjs +0 -68
- package/esm2022/foehn-page/foehn-page-expiration-timer/demande-expiration.service.mjs +0 -53
- package/esm2022/foehn-page/foehn-page-expiration-timer/foehn-page-expiration-timer.component.mjs +0 -175
- package/esm2022/foehn-page/foehn-page-expiration-timer/interval.helper.mjs +0 -29
- package/esm2022/foehn-page/foehn-page-modal.component.mjs +0 -54
- package/esm2022/foehn-page/foehn-page-modal.service.mjs +0 -38
- package/esm2022/foehn-page/foehn-page.component.mjs +0 -223
- package/esm2022/foehn-page/foehn-page.module.mjs +0 -101
- package/esm2022/foehn-page/foehn-page.service.mjs +0 -54
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/demande-transmit-interceptor.mjs +0 -52
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.component.mjs +0 -23
- package/esm2022/foehn-page/foehn-transmit-waiting-modal/foehn-transmit-waiting-modal.service.mjs +0 -32
- package/esm2022/foehn-recap-section/foehn-recap-section.component.mjs +0 -98
- package/esm2022/foehn-recap-section/foehn-recap-section.module.mjs +0 -20
- package/esm2022/foehn-recap-section/foehn-recap-section.type.mjs +0 -2
- package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.component.mjs +0 -50
- package/esm2022/foehn-remaining-alerts-summary/foehn-remaining-alerts-summary.module.mjs +0 -18
- package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.component.mjs +0 -56
- package/esm2022/foehn-status-progress-bar/foehn-status-progress-bar.module.mjs +0 -20
- package/esm2022/foehn-table/foehn-table-column-configuration.mjs +0 -3
- package/esm2022/foehn-table/foehn-table-page-change-event.mjs +0 -3
- package/esm2022/foehn-table/foehn-table.component.mjs +0 -190
- package/esm2022/foehn-table/foehn-table.module.mjs +0 -40
- package/esm2022/foehn-table/row-element.type.mjs +0 -3
- package/esm2022/foehn-table/tableSort.mjs +0 -3
- package/esm2022/foehn-upload/abstract-foehn-uploader.component.mjs +0 -242
- package/esm2022/foehn-upload/document-reference.mjs +0 -6
- package/esm2022/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.service.mjs +0 -116
- package/esm2022/foehn-upload/foehn-bo-multi-upload/bo-multi-upload.type.mjs +0 -6
- package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.component.mjs +0 -199
- package/esm2022/foehn-upload/foehn-bo-multi-upload/foehn-bo-multi-upload.module.mjs +0 -40
- package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.component.mjs +0 -250
- package/esm2022/foehn-upload/foehn-multi-upload/foehn-multi-upload.module.mjs +0 -40
- package/esm2022/foehn-upload/foehn-multi-upload/multi-upload.service.mjs +0 -125
- package/esm2022/foehn-upload/foehn-multi-upload/multi-upload.type.mjs +0 -6
- package/esm2022/foehn-upload/foehn-multi-upload/pending-upload.service.mjs +0 -163
- package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.component.mjs +0 -178
- package/esm2022/foehn-upload/foehn-picture-upload/foehn-picture-upload.module.mjs +0 -44
- package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.component.mjs +0 -83
- package/esm2022/foehn-upload/foehn-upload-progress-bar/foehn-upload-progress-bar.module.mjs +0 -21
- package/esm2022/foehn-upload/foehn-upload-progress-bar/upload-progress.service.mjs +0 -66
- package/esm2022/foehn-upload/foehn-upload-progress-bar/upload-progress.type.mjs +0 -7
- package/esm2022/foehn-upload/page-upload-limit.service.mjs +0 -80
- package/esm2022/foehn-upload/pending-upload.type.mjs +0 -3
- package/esm2022/foehn-upload/uploader.helper.mjs +0 -329
- package/esm2022/foehn-user-connected-as/foehn-user-connected-as.component.mjs +0 -21
- package/esm2022/foehn-user-connected-as/foehn-user-connected-as.module.mjs +0 -19
- package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.component.mjs +0 -96
- package/esm2022/foehn-validation-alert-summary/foehn-validation-alert-summary.module.mjs +0 -19
- package/esm2022/foehn-validation-alerts/foehn-validation-alerts.component.mjs +0 -29
- package/esm2022/foehn-validation-alerts/foehn-validation-alerts.module.mjs +0 -18
- package/esm2022/form-error.mjs +0 -2
- package/esm2022/form-post-response.mjs +0 -10
- package/esm2022/gesdem/gesdem-error-handler.service.mjs +0 -85
- package/esm2022/gesdem/gesdem-event.service.mjs +0 -38
- package/esm2022/gesdem/gesdem-handler.service.mjs +0 -201
- package/esm2022/gesdem/gesdem-loader.guard.mjs +0 -25
- package/esm2022/gesdem/gesdem-statut-utils.mjs +0 -25
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +0 -170
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +0 -227
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery.module.mjs +0 -62
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery.service.mjs +0 -97
- package/esm2022/gesdem-action-recovery/reprise-info.mjs +0 -4
- package/esm2022/gesdem-confirmation/gesdem-confirmation.component.mjs +0 -241
- package/esm2022/gesdem-confirmation/gesdem-confirmation.module.mjs +0 -36
- package/esm2022/gesdem-error/gesdem-error.component.mjs +0 -96
- package/esm2022/gesdem-error/gesdem-error.module.mjs +0 -36
- package/esm2022/global.const.mjs +0 -5
- package/esm2022/helpers/demande.helper.mjs +0 -19
- package/esm2022/helpers/object.helper.mjs +0 -124
- package/esm2022/i18n-form.mjs +0 -7
- package/esm2022/pipes/currency.pipe.mjs +0 -18
- package/esm2022/pipes/date.pipe.mjs +0 -43
- package/esm2022/pipes/formatIde.pipe.mjs +0 -22
- package/esm2022/pipes/pipes.module.mjs +0 -18
- package/esm2022/prestations-ng-core.module.mjs +0 -31
- package/esm2022/public_api.mjs +0 -288
- package/esm2022/refinf/model/address-type-light.mjs +0 -3
- package/esm2022/refinf/model/canton.mjs +0 -3
- package/esm2022/refinf/model/district.mjs +0 -3
- package/esm2022/refinf/model/municipality.mjs +0 -3
- package/esm2022/refinf/model/place-of-origin.mjs +0 -3
- package/esm2022/refinf/model/postal-locality.mjs +0 -3
- package/esm2022/sdk-appinfo/application-info.mjs +0 -22
- package/esm2022/sdk-appinfo/application-info.service.mjs +0 -146
- package/esm2022/sdk-currency/currency.helper.mjs +0 -34
- package/esm2022/sdk-date/date.helper.mjs +0 -109
- package/esm2022/sdk-dictionary/default-dictionary.mjs +0 -312
- package/esm2022/sdk-dictionary/sdk-dictionary.module.mjs +0 -16
- package/esm2022/sdk-dictionary/sdk-dictionary.pipe.mjs +0 -28
- package/esm2022/sdk-dictionary/sdk-dictionary.service.mjs +0 -122
- package/esm2022/sdk-drafts/draft.model.mjs +0 -2
- package/esm2022/sdk-drafts/drafts-container.component.mjs +0 -99
- package/esm2022/sdk-drafts/drafts.module.mjs +0 -47
- package/esm2022/sdk-drafts/drafts.service.mjs +0 -51
- package/esm2022/sdk-epayment/model/EPaymentParameters.mjs +0 -2
- package/esm2022/sdk-epayment/pending-payment/pending-payment.component.mjs +0 -24
- package/esm2022/sdk-epayment/sdk-epayment.component.mjs +0 -76
- package/esm2022/sdk-epayment/sdk-epayment.module.mjs +0 -23
- package/esm2022/sdk-epayment/sdk-epayment.service.mjs +0 -51
- package/esm2022/sdk-events-logger/sdk-event-type.mjs +0 -14
- package/esm2022/sdk-events-logger/sdk-event.mjs +0 -3
- package/esm2022/sdk-events-logger/sdk-events-logger.service.mjs +0 -43
- package/esm2022/sdk-recaptcha/grecaptcha/grecaptcha.component.mjs +0 -113
- package/esm2022/sdk-recaptcha/recaptcha.service.mjs +0 -180
- package/esm2022/sdk-recaptcha/sdk-recaptcha.component.mjs +0 -75
- package/esm2022/sdk-recaptcha/sdk-recaptcha.module.mjs +0 -19
- package/esm2022/sdk-redirect/iam-expired-interceptor.service.mjs +0 -62
- package/esm2022/sdk-redirect/redirect.component.mjs +0 -55
- package/esm2022/sdk-redirect/sdk-redirect.module.mjs +0 -19
- package/esm2022/sdk-session-info/session-info-data.mjs +0 -6
- package/esm2022/sdk-session-info/session-info-with-application.service.mjs +0 -68
- package/esm2022/sdk-session-info/session-info.service.mjs +0 -50
- package/esm2022/sdk-statistics/sdk-statistics.service.mjs +0 -74
- package/esm2022/sdk-support-alert/support-alert-container.component.mjs +0 -49
- package/esm2022/sdk-support-alert/support-alert.component.mjs +0 -32
- package/esm2022/sdk-support-alert/support-alert.model.mjs +0 -7
- package/esm2022/sdk-support-alert/support-alert.module.mjs +0 -21
- package/esm2022/sdk-support-alert/support-alert.service.mjs +0 -139
- package/esm2022/service-locator.mjs +0 -4
- package/esm2022/supported-browser.mjs +0 -2
- package/esm2022/validation/validation-handler.service.mjs +0 -44
- /package/{public_api.d.ts → public-api.d.ts} +0 -0
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
import { Component, HostBinding, HostListener, Input, ViewChild, ViewChildren } from '@angular/core';
|
|
2
|
-
import { first } from 'rxjs/operators';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/router";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "../sdk-dictionary/sdk-dictionary.pipe";
|
|
7
|
-
export class FoehnDropdownMenuComponent {
|
|
8
|
-
constructor(router) {
|
|
9
|
-
this.router = router;
|
|
10
|
-
this.btnCssClass = 'btn-secondary';
|
|
11
|
-
this.isDropdownVisible = false;
|
|
12
|
-
this.currentItemGlobalIndex = -1;
|
|
13
|
-
this.popupPosition = {
|
|
14
|
-
top: 0,
|
|
15
|
-
left: 0
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
handleKeyboardUpEvent(event) {
|
|
19
|
-
if (this.isDropdownVisible && event.key === 'Escape') {
|
|
20
|
-
this.resetDropdown();
|
|
21
|
-
this.buttonTrigger.nativeElement.focus();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
handleKeyboardDownEvent(event) {
|
|
25
|
-
if (this.isDropdownVisible) {
|
|
26
|
-
this.onKeyDownInner(event);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
ngOnInit() {
|
|
30
|
-
this.hostId = this.buildId();
|
|
31
|
-
}
|
|
32
|
-
handleFocusIn() {
|
|
33
|
-
clearTimeout(this.closeDropdownTimer);
|
|
34
|
-
}
|
|
35
|
-
handleFocusOut() {
|
|
36
|
-
clearTimeout(this.closeDropdownTimer);
|
|
37
|
-
this.closeDropdownTimer = setTimeout(() => {
|
|
38
|
-
this.resetDropdown();
|
|
39
|
-
}, 50);
|
|
40
|
-
}
|
|
41
|
-
buildId(suffix = '') {
|
|
42
|
-
const baseId = this.id;
|
|
43
|
-
if (!baseId) {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
return `${baseId}${suffix}`;
|
|
47
|
-
}
|
|
48
|
-
toggleDropdownVisibility() {
|
|
49
|
-
this.isDropdownVisible = !this.isDropdownVisible;
|
|
50
|
-
if (this.isDropdownVisible) {
|
|
51
|
-
// eslint-disable-next-line rxjs-angular/prefer-async-pipe
|
|
52
|
-
this.selectedFocusList.changes.pipe(first()).subscribe(() => {
|
|
53
|
-
this.entryPoint.nativeElement.focus();
|
|
54
|
-
// Need setTimeout to be sure we have latest position for calculations
|
|
55
|
-
setTimeout(() => this.calculatePopupPosition());
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
this.resetDropdown();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
resetDropdown() {
|
|
63
|
-
this.isDropdownVisible = false;
|
|
64
|
-
this.currentItemGlobalIndex = -1;
|
|
65
|
-
}
|
|
66
|
-
onKeyDownInner(keyEvent) {
|
|
67
|
-
// IE doesn't support keyEvent.code, and has different values
|
|
68
|
-
// in keyEvent.key (Down instead of ArrowDown for instance), hence the multi-support.
|
|
69
|
-
let ie11CompatibleCode = keyEvent.code || keyEvent.key;
|
|
70
|
-
if (keyEvent.shiftKey) {
|
|
71
|
-
ie11CompatibleCode = `Shift+${ie11CompatibleCode}`;
|
|
72
|
-
}
|
|
73
|
-
switch (ie11CompatibleCode) {
|
|
74
|
-
case 'Down':
|
|
75
|
-
case 'ArrowDown':
|
|
76
|
-
case 'Tab':
|
|
77
|
-
this.focusNextElement(true);
|
|
78
|
-
break;
|
|
79
|
-
case 'Up':
|
|
80
|
-
case 'ArrowUp':
|
|
81
|
-
case 'Shift+Tab':
|
|
82
|
-
this.focusNextElement(false);
|
|
83
|
-
break;
|
|
84
|
-
case 'Home':
|
|
85
|
-
this.focusFirstElement();
|
|
86
|
-
break;
|
|
87
|
-
case 'End':
|
|
88
|
-
this.focusLastElement();
|
|
89
|
-
break;
|
|
90
|
-
case 'Space':
|
|
91
|
-
case 'Spacebar':
|
|
92
|
-
case 'Enter':
|
|
93
|
-
this.selectCurrentFocusItem();
|
|
94
|
-
break;
|
|
95
|
-
default:
|
|
96
|
-
return true;
|
|
97
|
-
}
|
|
98
|
-
keyEvent.preventDefault();
|
|
99
|
-
keyEvent.stopPropagation();
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
focusNextElement(down) {
|
|
103
|
-
if (this.elementsDisplayed()) {
|
|
104
|
-
const step = down ? 1 : -1;
|
|
105
|
-
this.currentItemGlobalIndex += step;
|
|
106
|
-
const MAX_INDEX = this.selectedFocusList.length - 1;
|
|
107
|
-
if (this.currentItemGlobalIndex < 0) {
|
|
108
|
-
this.currentItemGlobalIndex = MAX_INDEX;
|
|
109
|
-
}
|
|
110
|
-
else if (this.currentItemGlobalIndex > MAX_INDEX) {
|
|
111
|
-
this.currentItemGlobalIndex = 0;
|
|
112
|
-
}
|
|
113
|
-
const nextLiElement = this.selectedFocusList.get(this.currentItemGlobalIndex).nativeElement;
|
|
114
|
-
// Check if li contains a link and focus it
|
|
115
|
-
if (nextLiElement.firstElementChild.tagName === 'A') {
|
|
116
|
-
nextLiElement.firstElementChild.focus();
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
// Focus li-group-title
|
|
120
|
-
nextLiElement.focus();
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
focusFirstElement() {
|
|
124
|
-
this.currentItemGlobalIndex = -1;
|
|
125
|
-
this.focusNextElement(true);
|
|
126
|
-
}
|
|
127
|
-
focusLastElement() {
|
|
128
|
-
this.currentItemGlobalIndex = -1;
|
|
129
|
-
this.focusNextElement(false);
|
|
130
|
-
}
|
|
131
|
-
selectCurrentFocusItem() {
|
|
132
|
-
const currentFocusedElement = document.activeElement;
|
|
133
|
-
if (!!currentFocusedElement && currentFocusedElement.tagName === 'A') {
|
|
134
|
-
if (currentFocusedElement.getAttribute('use-router') === 'true') {
|
|
135
|
-
this.router.navigate([
|
|
136
|
-
currentFocusedElement.getAttribute('href')
|
|
137
|
-
]);
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
if (!!currentFocusedElement.getAttribute('target')) {
|
|
141
|
-
window.open(currentFocusedElement.getAttribute('href'), currentFocusedElement.getAttribute('target'));
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
window.open(currentFocusedElement.getAttribute('href'), '_self');
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
elementsDisplayed() {
|
|
150
|
-
return this.selectedFocusList && !!this.selectedFocusList.length;
|
|
151
|
-
}
|
|
152
|
-
calculatePopupPosition() {
|
|
153
|
-
const screenWidth = window.innerWidth - 20;
|
|
154
|
-
const screenHeight = window.innerHeight - 20;
|
|
155
|
-
if (this.entryPoint) {
|
|
156
|
-
const popupBoundingRect = this.entryPoint.nativeElement.getBoundingClientRect();
|
|
157
|
-
const triggerButtonBoundingRect = this.buttonTrigger.nativeElement.getBoundingClientRect();
|
|
158
|
-
const calculatedWidth = triggerButtonBoundingRect.x + popupBoundingRect.width;
|
|
159
|
-
const calculatedHeight = triggerButtonBoundingRect.y +
|
|
160
|
-
triggerButtonBoundingRect.height +
|
|
161
|
-
popupBoundingRect.height;
|
|
162
|
-
if (calculatedWidth > screenWidth) {
|
|
163
|
-
this.popupPosition.left =
|
|
164
|
-
-popupBoundingRect.width + triggerButtonBoundingRect.width;
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
this.popupPosition.left = 0;
|
|
168
|
-
}
|
|
169
|
-
if (calculatedHeight > screenHeight) {
|
|
170
|
-
this.popupPosition.top =
|
|
171
|
-
-triggerButtonBoundingRect.height -
|
|
172
|
-
popupBoundingRect.height;
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
this.popupPosition.top = 0;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
180
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
181
|
-
}
|
|
182
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, decorators: [{
|
|
183
|
-
type: Component,
|
|
184
|
-
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
185
|
-
}], ctorParameters: () => [{ type: i1.Router }], propDecorators: { selectedFocusList: [{
|
|
186
|
-
type: ViewChildren,
|
|
187
|
-
args: ['selectedFocusList']
|
|
188
|
-
}], buttonTrigger: [{
|
|
189
|
-
type: ViewChild,
|
|
190
|
-
args: ['buttonTrigger', { static: true }]
|
|
191
|
-
}], entryPoint: [{
|
|
192
|
-
type: ViewChild,
|
|
193
|
-
args: ['entryPoint']
|
|
194
|
-
}], id: [{
|
|
195
|
-
type: Input
|
|
196
|
-
}], label: [{
|
|
197
|
-
type: Input
|
|
198
|
-
}], model: [{
|
|
199
|
-
type: Input
|
|
200
|
-
}], btnCssClass: [{
|
|
201
|
-
type: Input
|
|
202
|
-
}], hostId: [{
|
|
203
|
-
type: HostBinding,
|
|
204
|
-
args: ['attr.id']
|
|
205
|
-
}], handleKeyboardUpEvent: [{
|
|
206
|
-
type: HostListener,
|
|
207
|
-
args: ['keyup', ['$event']]
|
|
208
|
-
}], handleKeyboardDownEvent: [{
|
|
209
|
-
type: HostListener,
|
|
210
|
-
args: ['keydown', ['$event']]
|
|
211
|
-
}] } });
|
|
212
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZHJvcGRvd24tbWVudS9mb2Vobi1kcm9wZG93bi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1kcm9wZG93bi1tZW51L2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFjdkMsTUFBTSxPQUFPLDBCQUEwQjtJQWdDbkMsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFabEMsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFLOUIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBS2xCLDJCQUFzQixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBR2hDLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDakIsR0FBRyxFQUFFLENBQUM7WUFDTixJQUFJLEVBQUUsQ0FBQztTQUNWLENBQUM7SUFDTixDQUFDO0lBR0QscUJBQXFCLENBQUMsS0FBb0I7UUFDdEMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0MsQ0FBQztJQUNMLENBQUM7SUFHRCx1QkFBdUIsQ0FBQyxLQUFvQjtRQUN4QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWE7UUFDVCxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWM7UUFDVixZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxPQUFPLENBQUMsU0FBaUIsRUFBRTtRQUN2QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxPQUFPLEdBQUcsTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCx3QkFBd0I7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBRWpELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsMERBQTBEO1lBQzFELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3RDLHNFQUFzRTtnQkFDdEUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7WUFDcEQsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sY0FBYyxDQUFDLFFBQXVCO1FBQzFDLDZEQUE2RDtRQUM3RCxxRkFBcUY7UUFDckYsSUFBSSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFDdkQsSUFBSSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEIsa0JBQWtCLEdBQUcsU0FBUyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3ZELENBQUM7UUFDRCxRQUFRLGtCQUFrQixFQUFFLENBQUM7WUFDekIsS0FBSyxNQUFNLENBQUM7WUFDWixLQUFLLFdBQVcsQ0FBQztZQUNqQixLQUFLLEtBQUs7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBQ1YsS0FBSyxJQUFJLENBQUM7WUFDVixLQUFLLFNBQVMsQ0FBQztZQUNmLEtBQUssV0FBVztnQkFDWixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLE1BQU07WUFDVixLQUFLLE1BQU07Z0JBQ1AsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3pCLE1BQU07WUFDVixLQUFLLEtBQUs7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLE1BQU07WUFDVixLQUFLLE9BQU8sQ0FBQztZQUNiLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssT0FBTztnQkFDUixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztnQkFDOUIsTUFBTTtZQUNWO2dCQUNJLE9BQU8sSUFBSSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUIsUUFBUSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRTNCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFhO1FBQ2xDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQztZQUVwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUNwRCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsQ0FBQztZQUM1QyxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUM1QyxJQUFJLENBQUMsc0JBQXNCLENBQzlCLENBQUMsYUFBYSxDQUFDO1lBQ2hCLDJDQUEyQztZQUMzQyxJQUFJLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ2xELGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDeEMsT0FBTztZQUNYLENBQUM7WUFDRCx1QkFBdUI7WUFDdkIsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBRU8saUJBQWlCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxzQkFBc0I7UUFDMUIsTUFBTSxxQkFBcUIsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBRXJELElBQUksQ0FBQyxDQUFDLHFCQUFxQixJQUFJLHFCQUFxQixDQUFDLE9BQU8sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuRSxJQUFJLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDOUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7b0JBQ2pCLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7aUJBQzdDLENBQUMsQ0FBQztZQUNQLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDakQsTUFBTSxDQUFDLElBQUksQ0FDUCxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQzFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FDL0MsQ0FBQztnQkFDTixDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxDQUFDLElBQUksQ0FDUCxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQzFDLE9BQU8sQ0FDVixDQUFDO2dCQUNOLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTyxpQkFBaUI7UUFDckIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7SUFDckUsQ0FBQztJQUVPLHNCQUFzQjtRQUMxQixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUMzQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUU3QyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsQixNQUFNLGlCQUFpQixHQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzFELE1BQU0seUJBQXlCLEdBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDN0QsTUFBTSxlQUFlLEdBQ2pCLHlCQUF5QixDQUFDLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7WUFDMUQsTUFBTSxnQkFBZ0IsR0FDbEIseUJBQXlCLENBQUMsQ0FBQztnQkFDM0IseUJBQXlCLENBQUMsTUFBTTtnQkFDaEMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1lBRTdCLElBQUksZUFBZSxHQUFHLFdBQVcsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7b0JBQ25CLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLHlCQUF5QixDQUFDLEtBQUssQ0FBQztZQUNuRSxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1lBQ2hDLENBQUM7WUFFRCxJQUFJLGdCQUFnQixHQUFHLFlBQVksRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUc7b0JBQ2xCLENBQUMseUJBQXlCLENBQUMsTUFBTTt3QkFDakMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOytHQXZPUSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw2bEJDMUJ2QywrdkhBb0dBOzs0RkQxRWEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHFCQUFxQjsyRUFNL0IsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLG1CQUFtQjtnQkFJakMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVDLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxZQUFZO2dCQUl2QixFQUFFO3NCQURELEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxXQUFXO3VCQUFDLFNBQVM7Z0JBa0J0QixxQkFBcUI7c0JBRHBCLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVNqQyx1QkFBdUI7c0JBRHRCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEcm9wZG93bk1lbnVHcm91cCB9IGZyb20gJy4vZHJvcGRvd24tbWVudS1ncm91cC50eXBlJztcblxuaW50ZXJmYWNlIFBvc2l0aW9uIHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZm9laG4tZHJvcGRvd24tbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuRHJvcGRvd25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkcmVuKCdzZWxlY3RlZEZvY3VzTGlzdCcpXG4gICAgc2VsZWN0ZWRGb2N1c0xpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICAgIEBWaWV3Q2hpbGQoJ2J1dHRvblRyaWdnZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGJ1dHRvblRyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBAVmlld0NoaWxkKCdlbnRyeVBvaW50JylcbiAgICBlbnRyeVBvaW50OiBFbGVtZW50UmVmO1xuXG4gICAgQElucHV0KClcbiAgICBpZDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBsYWJlbDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBtb2RlbDogRHJvcGRvd25NZW51R3JvdXBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgYnRuQ3NzQ2xhc3MgPSAnYnRuLXNlY29uZGFyeSc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIGhvc3RJZDogc3RyaW5nO1xuXG4gICAgaXNEcm9wZG93blZpc2libGUgPSBmYWxzZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNsb3NlRHJvcGRvd25UaW1lcjogYW55O1xuICAgIHBvcHVwUG9zaXRpb246IFBvc2l0aW9uO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gLTE7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgIGxlZnQ6IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gICAgaGFuZGxlS2V5Ym9hcmRVcEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXREcm9wZG93bigpO1xuICAgICAgICAgICAgdGhpcy5idXR0b25UcmlnZ2VyLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWJvYXJkRG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLm9uS2V5RG93bklubmVyKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3RJZCA9IHRoaXMuYnVpbGRJZCgpO1xuICAgIH1cblxuICAgIGhhbmRsZUZvY3VzSW4oKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgfVxuXG4gICAgaGFuZGxlRm9jdXNPdXQoKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0RHJvcGRvd24oKTtcbiAgICAgICAgfSwgNTApO1xuICAgIH1cblxuICAgIGJ1aWxkSWQoc3VmZml4OiBzdHJpbmcgPSAnJyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGJhc2VJZCA9IHRoaXMuaWQ7XG4gICAgICAgIGlmICghYmFzZUlkKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHtiYXNlSWR9JHtzdWZmaXh9YDtcbiAgICB9XG5cbiAgICB0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93blZpc2libGUgPSAhdGhpcy5pc0Ryb3Bkb3duVmlzaWJsZTtcblxuICAgICAgICBpZiAodGhpcy5pc0Ryb3Bkb3duVmlzaWJsZSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5jaGFuZ2VzLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmVudHJ5UG9pbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIC8vIE5lZWQgc2V0VGltZW91dCB0byBiZSBzdXJlIHdlIGhhdmUgbGF0ZXN0IHBvc2l0aW9uIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldERyb3Bkb3duKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXNldERyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25WaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25LZXlEb3duSW5uZXIoa2V5RXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgLy8gSUUgZG9lc24ndCBzdXBwb3J0IGtleUV2ZW50LmNvZGUsIGFuZCBoYXMgZGlmZmVyZW50IHZhbHVlc1xuICAgICAgICAvLyBpbiBrZXlFdmVudC5rZXkgKERvd24gaW5zdGVhZCBvZiBBcnJvd0Rvd24gZm9yIGluc3RhbmNlKSwgaGVuY2UgdGhlIG11bHRpLXN1cHBvcnQuXG4gICAgICAgIGxldCBpZTExQ29tcGF0aWJsZUNvZGUgPSBrZXlFdmVudC5jb2RlIHx8IGtleUV2ZW50LmtleTtcbiAgICAgICAgaWYgKGtleUV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICBpZTExQ29tcGF0aWJsZUNvZGUgPSBgU2hpZnQrJHtpZTExQ29tcGF0aWJsZUNvZGV9YDtcbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKGllMTFDb21wYXRpYmxlQ29kZSkge1xuICAgICAgICAgICAgY2FzZSAnRG93bic6XG4gICAgICAgICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICAgICAgY2FzZSAnVGFiJzpcbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdVcCc6XG4gICAgICAgICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgICAgIGNhc2UgJ1NoaWZ0K1RhYic6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNGaXJzdEVsZW1lbnQoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c0xhc3RFbGVtZW50KCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdTcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdTcGFjZWJhcic6XG4gICAgICAgICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RDdXJyZW50Rm9jdXNJdGVtKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAga2V5RXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNOZXh0RWxlbWVudChkb3duOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVsZW1lbnRzRGlzcGxheWVkKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0ZXAgPSBkb3duID8gMSA6IC0xO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ICs9IHN0ZXA7XG5cbiAgICAgICAgICAgIGNvbnN0IE1BWF9JTkRFWCA9IHRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPCAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gTUFYX0lOREVYO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPiBNQVhfSU5ERVgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBuZXh0TGlFbGVtZW50ID0gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5nZXQoXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4XG4gICAgICAgICAgICApLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAvLyBDaGVjayBpZiBsaSBjb250YWlucyBhIGxpbmsgYW5kIGZvY3VzIGl0XG4gICAgICAgICAgICBpZiAobmV4dExpRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgICAgICBuZXh0TGlFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRm9jdXMgbGktZ3JvdXAtdGl0bGVcbiAgICAgICAgICAgIG5leHRMaUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNGaXJzdEVsZW1lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0xhc3RFbGVtZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAtMTtcbiAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdEN1cnJlbnRGb2N1c0l0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKCEhY3VycmVudEZvY3VzZWRFbGVtZW50ICYmIGN1cnJlbnRGb2N1c2VkRWxlbWVudC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50Rm9jdXNlZEVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1c2Utcm91dGVyJykgPT09ICd0cnVlJykge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpXG4gICAgICAgICAgICAgICAgXSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghIWN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3RhcmdldCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgndGFyZ2V0JylcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICdfc2VsZidcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGVsZW1lbnRzRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdCAmJiAhIXRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAtIDIwO1xuICAgICAgICBjb25zdCBzY3JlZW5IZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSAyMDtcblxuICAgICAgICBpZiAodGhpcy5lbnRyeVBvaW50KSB7XG4gICAgICAgICAgICBjb25zdCBwb3B1cEJvdW5kaW5nUmVjdCA9XG4gICAgICAgICAgICAgICAgdGhpcy5lbnRyeVBvaW50Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBjb25zdCB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0ID1cbiAgICAgICAgICAgICAgICB0aGlzLmJ1dHRvblRyaWdnZXIubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRXaWR0aCA9XG4gICAgICAgICAgICAgICAgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC54ICsgcG9wdXBCb3VuZGluZ1JlY3Qud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBjYWxjdWxhdGVkSGVpZ2h0ID1cbiAgICAgICAgICAgICAgICB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0LnkgK1xuICAgICAgICAgICAgICAgIHRyaWdnZXJCdXR0b25Cb3VuZGluZ1JlY3QuaGVpZ2h0ICtcbiAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChjYWxjdWxhdGVkV2lkdGggPiBzY3JlZW5XaWR0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi5sZWZ0ID1cbiAgICAgICAgICAgICAgICAgICAgLXBvcHVwQm91bmRpbmdSZWN0LndpZHRoICsgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC53aWR0aDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3B1cFBvc2l0aW9uLmxlZnQgPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY2FsY3VsYXRlZEhlaWdodCA+IHNjcmVlbkhlaWdodCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPVxuICAgICAgICAgICAgICAgICAgICAtdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC5oZWlnaHQgLVxuICAgICAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5hdlxuICAgIFthdHRyLmlkXT1cImJ1aWxkSWQoJ05hdkNvbnRhaW5lcicpXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidmb2Vobi1kcm9wZG93bi1tZW51LmFyaWEtbGFiZWwnIHwgZnJvbURpY3Rpb25hcnlcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgW2F0dHIuaWRdPVwiYnVpbGRJZCgnVHJpZ2dlckJ1dHRvbicpXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBidG5cIlxuICAgICAgICBbbmdDbGFzc109XCJidG5Dc3NDbGFzc1wiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKVwiXG4gICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgIChmb2N1c291dCk9XCJoYW5kbGVGb2N1c091dCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJ0cnVlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0Ryb3Bkb3duVmlzaWJsZVwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ2Ryb3Bkb3duLW1lbnUtbGlzdCdcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsIHx8IG51bGxcIlxuICAgICAgICAjYnV0dG9uVHJpZ2dlclxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLW1lbnUtY29udGFpbmVyXCIgKm5nSWY9XCIhIW1vZGVsICYmIGlzRHJvcGRvd25WaXNpYmxlXCI+XG4gICAgICAgIDx1bFxuICAgICAgICAgICAgaWQ9XCJkcm9wZG93bi1tZW51LWxpc3RcIlxuICAgICAgICAgICAgY2xhc3M9XCJwYXJlbnQtbGlzdCBsaXN0LWdyb3VwXCJcbiAgICAgICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgICAgICAoZm9jdXNvdXQpPVwiaGFuZGxlRm9jdXNPdXQoKVwiXG4gICAgICAgICAgICBbc3R5bGUubGVmdC5weF09XCJwb3B1cFBvc2l0aW9uLmxlZnRcIlxuICAgICAgICAgICAgW3N0eWxlLnRvcC5weF09XCJwb3B1cFBvc2l0aW9uLnRvcFwiXG4gICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICNlbnRyeVBvaW50XG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG1vZGVsOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhZ3JvdXAudGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImkgPiAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtIGl0ZW0tZGl2aWRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5yb2xlXT1cIidzZXBhcmF0b3InXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gbGlzdC1ncm91cC10aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCIhIWdyb3VwLnRpdGxlXCI+e3sgZ3JvdXAudGl0bGUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImNoaWxkLWxpc3QgbGlzdC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtTGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFncm91cC50aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaSA+IDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gaXRlbS1kaXZpZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnJvbGVdPVwiJ3NlcGFyYXRvcidcIlxuICAgICAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtczsgbGV0IGogPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxpc3QtZ3JvdXAtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAjc2VsZWN0ZWRGb2N1c0xpc3RcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1MaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L25hdj5cblxuPG5nLXRlbXBsYXRlICNpdGVtTGluayBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cIiEhaXRlbS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgW2F0dHIudGl0bGVdPVwiaXRlbS50aXRsZVwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJpdGVtLnF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW2lubmVySFRNTF09XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgW2F0dHIudXNlLXJvdXRlcl09XCJ0cnVlXCJcbiAgICA+PC9hPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwiIWl0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgIFthdHRyLnRpdGxlXT1cIml0ZW0udGl0bGVcIlxuICAgICAgICBbYXR0ci5ocmVmXT1cIml0ZW0uaHJlZlwiXG4gICAgICAgIFthdHRyLnRhcmdldF09XCJpdGVtLnRhcmdldFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgIFthdHRyLnVzZS1yb3V0ZXJdPVwiZmFsc2VcIlxuICAgID48L2E+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { RouterLink } from '@angular/router';
|
|
5
|
-
import { SdkDictionaryModule } from '../sdk-dictionary/sdk-dictionary.module';
|
|
6
|
-
import { FoehnDropdownMenuComponent } from './foehn-dropdown-menu.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class FoehnDropdownMenuModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuModule, declarations: [FoehnDropdownMenuComponent], imports: [CommonModule, FormsModule, SdkDictionaryModule, RouterLink], exports: [FoehnDropdownMenuComponent] }); }
|
|
11
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuModule, imports: [CommonModule, FormsModule, SdkDictionaryModule] }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuModule, decorators: [{
|
|
14
|
-
type: NgModule,
|
|
15
|
-
args: [{
|
|
16
|
-
imports: [CommonModule, FormsModule, SdkDictionaryModule, RouterLink],
|
|
17
|
-
declarations: [FoehnDropdownMenuComponent],
|
|
18
|
-
exports: [FoehnDropdownMenuComponent]
|
|
19
|
-
}]
|
|
20
|
-
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZHJvcGRvd24tbWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZHJvcGRvd24tbWVudS9mb2Vobi1kcm9wZG93bi1tZW51Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQU83RSxNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7Z0hBQXZCLHVCQUF1QixpQkFIakIsMEJBQTBCLGFBRC9CLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxhQUUxRCwwQkFBMEI7Z0hBRTNCLHVCQUF1QixZQUp0QixZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQjs7NEZBSS9DLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsQ0FBQztvQkFDckUsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgU2RrRGljdGlvbmFyeU1vZHVsZSB9IGZyb20gJy4uL3Nkay1kaWN0aW9uYXJ5L3Nkay1kaWN0aW9uYXJ5Lm1vZHVsZSc7XG5pbXBvcnQgeyBGb2VobkRyb3Bkb3duTWVudUNvbXBvbmVudCB9IGZyb20gJy4vZm9laG4tZHJvcGRvd24tbWVudS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBTZGtEaWN0aW9uYXJ5TW9kdWxlLCBSb3V0ZXJMaW5rXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtGb2VobkRyb3Bkb3duTWVudUNvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW0ZvZWhuRHJvcGRvd25NZW51Q29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBGb2VobkRyb3Bkb3duTWVudU1vZHVsZSB7fVxuIl19
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { Component, HostListener } from '@angular/core';
|
|
2
|
-
import { faFaceFrown, faFaceMeh, faFaceSmile } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
-
import { combineLatest, filter, of, startWith } from 'rxjs';
|
|
4
|
-
import { map, tap } from 'rxjs/operators';
|
|
5
|
-
import { FoehnFeedbackNotificationType } from '../foehn-feedback-notification/foehn-feedback-notification.type';
|
|
6
|
-
import { PORTAIL_BASE_URL_INT, PORTAIL_BASE_URL_PROD, PORTAIL_BASE_URL_VAL } from '../sdk-appinfo/application-info.service';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../sdk-appinfo/application-info.service";
|
|
9
|
-
import * as i2 from "../sdk-session-info/session-info.service";
|
|
10
|
-
import * as i3 from "../gesdem/gesdem-handler.service";
|
|
11
|
-
import * as i4 from "@angular/common/http";
|
|
12
|
-
import * as i5 from "@angular/common";
|
|
13
|
-
import * as i6 from "@fortawesome/angular-fontawesome";
|
|
14
|
-
import * as i7 from "../foehn-icons/foehn-icon-chevron-down.component";
|
|
15
|
-
import * as i8 from "../foehn-icons/foehn-icon-chevron-up.component";
|
|
16
|
-
import * as i9 from "../sdk-dictionary/sdk-dictionary.pipe";
|
|
17
|
-
export const FEEDBACK_USAGERS_LOCAL_STORAGE_PREFIX = 'FEEDBACK-USAGERS-';
|
|
18
|
-
export class FoehnFeedbackNotificationComponent {
|
|
19
|
-
constructor(applicationInfoService, sessionInfo, gesdemHandlerService, http) {
|
|
20
|
-
this.applicationInfoService = applicationInfoService;
|
|
21
|
-
this.sessionInfo = sessionInfo;
|
|
22
|
-
this.gesdemHandlerService = gesdemHandlerService;
|
|
23
|
-
this.http = http;
|
|
24
|
-
this.goodIconName = faFaceSmile;
|
|
25
|
-
this.mediumIconName = faFaceMeh;
|
|
26
|
-
this.badIconName = faFaceFrown;
|
|
27
|
-
this.visible = combineLatest([
|
|
28
|
-
this.applicationInfoService.data,
|
|
29
|
-
this.applicationInfoService.currentEtapeInfo,
|
|
30
|
-
this.sessionInfo.data.pipe(startWith(null)),
|
|
31
|
-
this.gesdemHandlerService.updateFormDataSubject.pipe(startWith(null), map(() => this.gesdemHandlerService.lastResponse?.meta))
|
|
32
|
-
]).pipe(filter(([, etapeInfo, , meta]) => !!etapeInfo && !!meta), tap(([applicationInfo, etapeInfo, sessionInfoData, meta]) => {
|
|
33
|
-
const feedBackFormBaseUrl = `${this.getPortailBaseUrl(applicationInfo)}pub/101643/`;
|
|
34
|
-
const feedbackUsager = new FoehnFeedbackNotificationType();
|
|
35
|
-
feedbackUsager.isConnected =
|
|
36
|
-
!!sessionInfoData && !!sessionInfoData.context;
|
|
37
|
-
feedbackUsager.idMetierEtape = etapeInfo.idMetierEtape;
|
|
38
|
-
feedbackUsager.beneficiaryCategory = this.getCategory(sessionInfoData, etapeInfo);
|
|
39
|
-
feedbackUsager.currentAction = meta?.currentAction;
|
|
40
|
-
feedbackUsager.isBehindIAM =
|
|
41
|
-
window.location.origin.includes('etat-de-vaud.ch');
|
|
42
|
-
this.goodUrl = this.getUrl('good', feedbackUsager, feedBackFormBaseUrl, meta.reference);
|
|
43
|
-
this.mediumUrl = this.getUrl('medium', feedbackUsager, feedBackFormBaseUrl, meta.reference);
|
|
44
|
-
this.badUrl = this.getUrl('bad', feedbackUsager, feedBackFormBaseUrl, meta.reference);
|
|
45
|
-
}), map(([, etapeInfo, , meta]) => {
|
|
46
|
-
const visible = etapeInfo?.userFeedbackRequested;
|
|
47
|
-
const needFeedback = !localStorage.getItem(`${FEEDBACK_USAGERS_LOCAL_STORAGE_PREFIX}${this.getFullReference(meta)}`);
|
|
48
|
-
this.expanded = visible;
|
|
49
|
-
return needFeedback && visible;
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
onWindowScroll() {
|
|
53
|
-
this.isScrollEnded =
|
|
54
|
-
window.innerHeight + window.scrollY >=
|
|
55
|
-
document.body.offsetHeight - 30;
|
|
56
|
-
}
|
|
57
|
-
hideNotification() {
|
|
58
|
-
localStorage.setItem(FEEDBACK_USAGERS_LOCAL_STORAGE_PREFIX +
|
|
59
|
-
this.getFullReference(this.gesdemHandlerService.lastResponse?.meta), 'Done');
|
|
60
|
-
this.visible = of(false);
|
|
61
|
-
}
|
|
62
|
-
getUrl(answer, feedbackUsager, feedBackFormBaseUrl, reference) {
|
|
63
|
-
if (!feedbackUsager || !feedBackFormBaseUrl || !reference) {
|
|
64
|
-
return of(null);
|
|
65
|
-
}
|
|
66
|
-
const fbu = { ...feedbackUsager };
|
|
67
|
-
fbu.answer = answer;
|
|
68
|
-
return this.http
|
|
69
|
-
.post(`api/feedbacknotification/queryparams/${reference}`, fbu, {
|
|
70
|
-
responseType: 'text'
|
|
71
|
-
})
|
|
72
|
-
.pipe(map(cryptedUrlParams => `${feedBackFormBaseUrl}?q=${encodeURIComponent(cryptedUrlParams)}`));
|
|
73
|
-
}
|
|
74
|
-
getCategory(sessionInfoData, etapeInfo) {
|
|
75
|
-
if (sessionInfoData) {
|
|
76
|
-
return sessionInfoData.categories[0];
|
|
77
|
-
}
|
|
78
|
-
return etapeInfo.publicCible?.length === 1
|
|
79
|
-
? etapeInfo.publicCible[0]
|
|
80
|
-
: 'Inconnu';
|
|
81
|
-
}
|
|
82
|
-
getPortailBaseUrl(appInfo) {
|
|
83
|
-
const baseUrl = appInfo.configuration?.portail?.baseUrl;
|
|
84
|
-
if (!!baseUrl) {
|
|
85
|
-
return baseUrl;
|
|
86
|
-
}
|
|
87
|
-
switch (appInfo.environment) {
|
|
88
|
-
case 'CO':
|
|
89
|
-
case 'IN':
|
|
90
|
-
return PORTAIL_BASE_URL_INT;
|
|
91
|
-
case 'VA':
|
|
92
|
-
return PORTAIL_BASE_URL_VAL;
|
|
93
|
-
default:
|
|
94
|
-
return PORTAIL_BASE_URL_PROD;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
getFullReference(meta) {
|
|
98
|
-
if (!meta) {
|
|
99
|
-
return null;
|
|
100
|
-
}
|
|
101
|
-
return `${meta.reference}-${meta.currentAction}`;
|
|
102
|
-
}
|
|
103
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationComponent, deps: [{ token: i1.ApplicationInfoService }, { token: i2.SessionInfo }, { token: i3.GesdemHandlerService }, { token: i4.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnFeedbackNotificationComponent, selector: "foehn-feedback-notification", host: { listeners: { "window:scroll": "onWindowScroll($event)" } }, ngImport: i0, template: "<div\n id=\"feedback-container\"\n [ngClass]=\"expanded ? 'expanded' : 'reduced'\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded = !expanded\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"'feedback-form'\"\n >\n <foehn-icon-chevron-down\n *ngIf=\"expanded\"\n [title]=\"\n 'foehn-feedback-notification.chevron-down' | fromDictionary\n \"\n ></foehn-icon-chevron-down>\n <foehn-icon-chevron-up\n *ngIf=\"!expanded\"\n [title]=\"'foehn-feedback-notification.chevron-up' | fromDictionary\"\n ></foehn-icon-chevron-up>\n </button>\n <div id=\"feedback-title\" class=\"h4\">\n <span *ngIf=\"expanded\">\n {{ 'foehn-feedback-notification.title-expanded' | fromDictionary }}\n </span>\n <span *ngIf=\"!expanded\" (click)=\"expanded = !expanded\">\n {{ 'foehn-feedback-notification.title-reduced' | fromDictionary }}\n </span>\n </div>\n <div id=\"feedback-form\" [class.visible]=\"expanded\">\n <label>\n {{\n 'foehn-feedback-notification.question.Q_NOTIFICATION_FACILE_A_UTILISER'\n | fromDictionary\n }}\n </label>\n <ul class=\"vd-list-icons mb-0 d-flex justify-content-center\">\n <li (click)=\"hideNotification()\">\n <a\n [href]=\"goodUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-success\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n \"\n [icon]=\"goodIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li class=\"mx-2\" (click)=\"hideNotification()\">\n <a\n [href]=\"mediumUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-warning\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n \"\n [icon]=\"mediumIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li (click)=\"hideNotification()\">\n <a\n [href]=\"badUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-danger\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n \"\n [icon]=\"badIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["#feedback-container{display:none;position:fixed;bottom:0;right:0;color:#fff;background-color:var(--vd-neutral-dark);border:1px white solid;border-bottom:0;z-index:99999;transition:all .3s}#feedback-container.visible{display:block;animation:popout 1s}#feedback-container.offset-bottom{bottom:23px}#feedback-container.expanded{padding:15px;width:420px;height:175px;background-color:var(--vd-neutral-dark);border-top-left-radius:20px;border-top-right-radius:20px}#feedback-container.expanded #feedback-title{margin-top:0;text-align:center}#feedback-container.reduced{width:230px;height:35px;text-align:left;padding-left:12px}#feedback-container.reduced #feedback-title{margin-top:5px;cursor:pointer}#feedback-container .feedback-chevron{position:absolute;top:0;right:0}#feedback-container.expanded .feedback-chevron{border-top-right-radius:50%}#feedback-container #feedback-form{display:none}#feedback-container #feedback-form.visible{display:block;animation:fadeIn .5s}#feedback-container #feedback-form a{border:solid 1px var(--vd-neutral-dark);border-radius:50%;padding-left:11px;padding-right:11px}#feedback-container #feedback-form a:focus{background-color:var(--vd-neutral-dark)}#feedback-container #feedback-form .smiley-link{font-size:60px}:host ::ng-deep #feedback-container #feedback-form svg{transition:all .2s}:host ::ng-deep #feedback-container #feedback-form svg:hover,:host ::ng-deep #feedback-container #feedback-form svg:focus{transform:scale(1.3)}@keyframes fadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media (min-width: 577px){@keyframes popout{0%{bottom:-175px}to{bottom:0}}}@media (max-width: 576px){#feedback-container{transform:scale(.8)}#feedback-container.expanded{right:-42px;bottom:-20px}#feedback-container.reduced{right:-29px;bottom:-3px}#feedback-container.expanded.offset-bottom{bottom:6px}#feedback-container.reduced.offset-bottom{bottom:20px}@keyframes popout{0%{bottom:-140px}to{bottom:-20px}}}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "component", type: i7.FoehnIconChevronDownComponent, selector: "foehn-icon-chevron-down" }, { kind: "component", type: i8.FoehnIconChevronUpComponent, selector: "foehn-icon-chevron-up" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
105
|
-
}
|
|
106
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationComponent, decorators: [{
|
|
107
|
-
type: Component,
|
|
108
|
-
args: [{ selector: 'foehn-feedback-notification', template: "<div\n id=\"feedback-container\"\n [ngClass]=\"expanded ? 'expanded' : 'reduced'\"\n [class.offset-bottom]=\"isScrollEnded\"\n [class.visible]=\"visible | async\"\n>\n <button\n type=\"button\"\n class=\"feedback-chevron btn btn-link\"\n (click)=\"expanded = !expanded\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-controls]=\"'feedback-form'\"\n >\n <foehn-icon-chevron-down\n *ngIf=\"expanded\"\n [title]=\"\n 'foehn-feedback-notification.chevron-down' | fromDictionary\n \"\n ></foehn-icon-chevron-down>\n <foehn-icon-chevron-up\n *ngIf=\"!expanded\"\n [title]=\"'foehn-feedback-notification.chevron-up' | fromDictionary\"\n ></foehn-icon-chevron-up>\n </button>\n <div id=\"feedback-title\" class=\"h4\">\n <span *ngIf=\"expanded\">\n {{ 'foehn-feedback-notification.title-expanded' | fromDictionary }}\n </span>\n <span *ngIf=\"!expanded\" (click)=\"expanded = !expanded\">\n {{ 'foehn-feedback-notification.title-reduced' | fromDictionary }}\n </span>\n </div>\n <div id=\"feedback-form\" [class.visible]=\"expanded\">\n <label>\n {{\n 'foehn-feedback-notification.question.Q_NOTIFICATION_FACILE_A_UTILISER'\n | fromDictionary\n }}\n </label>\n <ul class=\"vd-list-icons mb-0 d-flex justify-content-center\">\n <li (click)=\"hideNotification()\">\n <a\n [href]=\"goodUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-success\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n \"\n [icon]=\"goodIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.good'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li class=\"mx-2\" (click)=\"hideNotification()\">\n <a\n [href]=\"mediumUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-warning\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n \"\n [icon]=\"mediumIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.medium'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n <li (click)=\"hideNotification()\">\n <a\n [href]=\"badUrl | async\"\n target=\"_blank\"\n rel=\"opener\"\n class=\"smiley-link text-danger\"\n >\n <fa-icon\n aria-hidden=\"true\"\n [title]=\"\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n \"\n [icon]=\"badIconName\"\n ></fa-icon>\n <span class=\"visually-hidden\">\n {{\n 'foehn-feedback-notification.icon.bad'\n | fromDictionary\n }}\n </span>\n </a>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["#feedback-container{display:none;position:fixed;bottom:0;right:0;color:#fff;background-color:var(--vd-neutral-dark);border:1px white solid;border-bottom:0;z-index:99999;transition:all .3s}#feedback-container.visible{display:block;animation:popout 1s}#feedback-container.offset-bottom{bottom:23px}#feedback-container.expanded{padding:15px;width:420px;height:175px;background-color:var(--vd-neutral-dark);border-top-left-radius:20px;border-top-right-radius:20px}#feedback-container.expanded #feedback-title{margin-top:0;text-align:center}#feedback-container.reduced{width:230px;height:35px;text-align:left;padding-left:12px}#feedback-container.reduced #feedback-title{margin-top:5px;cursor:pointer}#feedback-container .feedback-chevron{position:absolute;top:0;right:0}#feedback-container.expanded .feedback-chevron{border-top-right-radius:50%}#feedback-container #feedback-form{display:none}#feedback-container #feedback-form.visible{display:block;animation:fadeIn .5s}#feedback-container #feedback-form a{border:solid 1px var(--vd-neutral-dark);border-radius:50%;padding-left:11px;padding-right:11px}#feedback-container #feedback-form a:focus{background-color:var(--vd-neutral-dark)}#feedback-container #feedback-form .smiley-link{font-size:60px}:host ::ng-deep #feedback-container #feedback-form svg{transition:all .2s}:host ::ng-deep #feedback-container #feedback-form svg:hover,:host ::ng-deep #feedback-container #feedback-form svg:focus{transform:scale(1.3)}@keyframes fadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@media (min-width: 577px){@keyframes popout{0%{bottom:-175px}to{bottom:0}}}@media (max-width: 576px){#feedback-container{transform:scale(.8)}#feedback-container.expanded{right:-42px;bottom:-20px}#feedback-container.reduced{right:-29px;bottom:-3px}#feedback-container.expanded.offset-bottom{bottom:6px}#feedback-container.reduced.offset-bottom{bottom:20px}@keyframes popout{0%{bottom:-140px}to{bottom:-20px}}}\n"] }]
|
|
109
|
-
}], ctorParameters: () => [{ type: i1.ApplicationInfoService }, { type: i2.SessionInfo }, { type: i3.GesdemHandlerService }, { type: i4.HttpClient }], propDecorators: { onWindowScroll: [{
|
|
110
|
-
type: HostListener,
|
|
111
|
-
args: ['window:scroll', ['$event']]
|
|
112
|
-
}] } });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24vZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24vZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFDSCxXQUFXLEVBQ1gsU0FBUyxFQUNULFdBQVcsRUFDZCxNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUloSCxPQUFPLEVBRUgsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDdkIsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7Ozs7QUFJakQsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsbUJBQW1CLENBQUM7QUFPekUsTUFBTSxPQUFPLGtDQUFrQztJQWEzQyxZQUNZLHNCQUE4QyxFQUM5QyxXQUF3QixFQUN4QixvQkFBMEMsRUFDMUMsSUFBZ0I7UUFIaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4Qix5QkFBb0IsR0FB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RSxNQUFNLEtBQUssQ0FBQztZQUN0QyxDQUFDLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNwQixDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBd0I7UUFDOUMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQ3hELElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxPQUFPLENBQUM7UUFDbkIsQ0FBQztRQUNELFFBQVEsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFCLEtBQUssSUFBSSxDQUFDO1lBQ1YsS0FBSyxJQUFJO2dCQUNMLE9BQU8sb0JBQW9CLENBQUM7WUFDaEMsS0FBSyxJQUFJO2dCQUNMLE9BQU8sb0JBQW9CLENBQUM7WUFDaEM7Z0JBQ0ksT0FBTyxxQkFBcUIsQ0FBQztRQUNyQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQWtCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNSLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDckQsQ0FBQzsrR0FuSlEsa0NBQWtDO21HQUFsQyxrQ0FBa0MsdUlDOUIvQywrcklBZ0hBOzs0RkRsRmEsa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNJLDZCQUE2QjtpTEE4RXZDLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgZmFGYWNlRnJvd24sXG4gICAgZmFGYWNlTWVoLFxuICAgIGZhRmFjZVNtaWxlXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIE9ic2VydmFibGUsIG9mLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGb2VobkZlZWRiYWNrTm90aWZpY2F0aW9uVHlwZSB9IGZyb20gJy4uL2ZvZWhuLWZlZWRiYWNrLW5vdGlmaWNhdGlvbi9mb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24udHlwZSc7XG5pbXBvcnQgeyBGb3JtTWV0YWRhdGEgfSBmcm9tICcuLi9mb3JtLXBvc3QtcmVzcG9uc2UnO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkluZm8sIEV0YXBlSW5mbyB9IGZyb20gJy4uL3Nkay1hcHBpbmZvL2FwcGxpY2F0aW9uLWluZm8nO1xuaW1wb3J0IHtcbiAgICBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgIFBPUlRBSUxfQkFTRV9VUkxfSU5ULFxuICAgIFBPUlRBSUxfQkFTRV9VUkxfUFJPRCxcbiAgICBQT1JUQUlMX0JBU0VfVVJMX1ZBTFxufSBmcm9tICcuLi9zZGstYXBwaW5mby9hcHBsaWNhdGlvbi1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2Vzc2lvbkluZm8gfSBmcm9tICcuLi9zZGstc2Vzc2lvbi1pbmZvL3Nlc3Npb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IFNlc3Npb25JbmZvRGF0YSB9IGZyb20gJy4uL3Nkay1zZXNzaW9uLWluZm8vc2Vzc2lvbi1pbmZvLWRhdGEnO1xuXG5leHBvcnQgY29uc3QgRkVFREJBQ0tfVVNBR0VSU19MT0NBTF9TVE9SQUdFX1BSRUZJWCA9ICdGRUVEQkFDSy1VU0FHRVJTLSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuRmVlZGJhY2tOb3RpZmljYXRpb25Db21wb25lbnQge1xuICAgIGdvb2RJY29uTmFtZSA9IGZhRmFjZVNtaWxlO1xuICAgIG1lZGl1bUljb25OYW1lID0gZmFGYWNlTWVoO1xuICAgIGJhZEljb25OYW1lID0gZmFGYWNlRnJvd247XG5cbiAgICBleHBhbmRlZDogYm9vbGVhbjtcbiAgICBpc1Njcm9sbEVuZGVkOiBib29sZWFuO1xuXG4gICAgdmlzaWJsZTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBnb29kVXJsOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgbWVkaXVtVXJsOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgYmFkVXJsOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhcHBsaWNhdGlvbkluZm9TZXJ2aWNlOiBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHNlc3Npb25JbmZvOiBTZXNzaW9uSW5mbyxcbiAgICAgICAgcHJpdmF0ZSBnZXNkZW1IYW5kbGVyU2VydmljZTogR2VzZGVtSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICAgICkge1xuICAgICAgICB0aGlzLnZpc2libGUgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuYXBwbGljYXRpb25JbmZvU2VydmljZS5kYXRhLFxuICAgICAgICAgICAgdGhpcy5hcHBsaWNhdGlvbkluZm9TZXJ2aWNlLmN1cnJlbnRFdGFwZUluZm8sXG4gICAgICAgICAgICB0aGlzLnNlc3Npb25JbmZvLmRhdGEucGlwZShzdGFydFdpdGgobnVsbCkpLFxuICAgICAgICAgICAgdGhpcy5nZXNkZW1IYW5kbGVyU2VydmljZS51cGRhdGVGb3JtRGF0YVN1YmplY3QucGlwZShcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+IHRoaXMuZ2VzZGVtSGFuZGxlclNlcnZpY2UubGFzdFJlc3BvbnNlPy5tZXRhKVxuICAgICAgICAgICAgKVxuICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKChbLCBldGFwZUluZm8sICwgbWV0YV0pID0+ICEhZXRhcGVJbmZvICYmICEhbWV0YSksXG4gICAgICAgICAgICB0YXAoKFthcHBsaWNhdGlvbkluZm8sIGV0YXBlSW5mbywgc2Vzc2lvbkluZm9EYXRhLCBtZXRhXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZlZWRCYWNrRm9ybUJhc2VVcmwgPSBgJHt0aGlzLmdldFBvcnRhaWxCYXNlVXJsKGFwcGxpY2F0aW9uSW5mbyl9cHViLzEwMTY0My9gO1xuICAgICAgICAgICAgICAgIGNvbnN0IGZlZWRiYWNrVXNhZ2VyID0gbmV3IEZvZWhuRmVlZGJhY2tOb3RpZmljYXRpb25UeXBlKCk7XG4gICAgICAgICAgICAgICAgZmVlZGJhY2tVc2FnZXIuaXNDb25uZWN0ZWQgPVxuICAgICAgICAgICAgICAgICAgICAhIXNlc3Npb25JbmZvRGF0YSAmJiAhIXNlc3Npb25JbmZvRGF0YS5jb250ZXh0O1xuICAgICAgICAgICAgICAgIGZlZWRiYWNrVXNhZ2VyLmlkTWV0aWVyRXRhcGUgPSBldGFwZUluZm8uaWRNZXRpZXJFdGFwZTtcbiAgICAgICAgICAgICAgICBmZWVkYmFja1VzYWdlci5iZW5lZmljaWFyeUNhdGVnb3J5ID0gdGhpcy5nZXRDYXRlZ29yeShcbiAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbkluZm9EYXRhLFxuICAgICAgICAgICAgICAgICAgICBldGFwZUluZm9cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIGZlZWRiYWNrVXNhZ2VyLmN1cnJlbnRBY3Rpb24gPSBtZXRhPy5jdXJyZW50QWN0aW9uO1xuICAgICAgICAgICAgICAgIGZlZWRiYWNrVXNhZ2VyLmlzQmVoaW5kSUFNID1cbiAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbi5pbmNsdWRlcygnZXRhdC1kZS12YXVkLmNoJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5nb29kVXJsID0gdGhpcy5nZXRVcmwoXG4gICAgICAgICAgICAgICAgICAgICdnb29kJyxcbiAgICAgICAgICAgICAgICAgICAgZmVlZGJhY2tVc2FnZXIsXG4gICAgICAgICAgICAgICAgICAgIGZlZWRCYWNrRm9ybUJhc2VVcmwsXG4gICAgICAgICAgICAgICAgICAgIG1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLm1lZGl1bVVybCA9IHRoaXMuZ2V0VXJsKFxuICAgICAgICAgICAgICAgICAgICAnbWVkaXVtJyxcbiAgICAgICAgICAgICAgICAgICAgZmVlZGJhY2tVc2FnZXIsXG4gICAgICAgICAgICAgICAgICAgIGZlZWRCYWNrRm9ybUJhc2VVcmwsXG4gICAgICAgICAgICAgICAgICAgIG1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJhZFVybCA9IHRoaXMuZ2V0VXJsKFxuICAgICAgICAgICAgICAgICAgICAnYmFkJyxcbiAgICAgICAgICAgICAgICAgICAgZmVlZGJhY2tVc2FnZXIsXG4gICAgICAgICAgICAgICAgICAgIGZlZWRCYWNrRm9ybUJhc2VVcmwsXG4gICAgICAgICAgICAgICAgICAgIG1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbWFwKChbLCBldGFwZUluZm8sICwgbWV0YV0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB2aXNpYmxlID0gZXRhcGVJbmZvPy51c2VyRmVlZGJhY2tSZXF1ZXN0ZWQ7XG4gICAgICAgICAgICAgICAgY29uc3QgbmVlZEZlZWRiYWNrID0gIWxvY2FsU3RvcmFnZS5nZXRJdGVtKFxuICAgICAgICAgICAgICAgICAgICBgJHtGRUVEQkFDS19VU0FHRVJTX0xPQ0FMX1NUT1JBR0VfUFJFRklYfSR7dGhpcy5nZXRGdWxsUmVmZXJlbmNlKG1ldGEpfWBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMuZXhwYW5kZWQgPSB2aXNpYmxlO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5lZWRGZWVkYmFjayAmJiB2aXNpYmxlO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgWyckZXZlbnQnXSlcbiAgICBvbldpbmRvd1Njcm9sbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Njcm9sbEVuZGVkID1cbiAgICAgICAgICAgIHdpbmRvdy5pbm5lckhlaWdodCArIHdpbmRvdy5zY3JvbGxZID49XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodCAtIDMwO1xuICAgIH1cblxuICAgIGhpZGVOb3RpZmljYXRpb24oKTogdm9pZCB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgICAgICAgRkVFREJBQ0tfVVNBR0VSU19MT0NBTF9TVE9SQUdFX1BSRUZJWCArXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRGdWxsUmVmZXJlbmNlKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdlc2RlbUhhbmRsZXJTZXJ2aWNlLmxhc3RSZXNwb25zZT8ubWV0YVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAnRG9uZSdcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy52aXNpYmxlID0gb2YoZmFsc2UpO1xuICAgIH1cblxuICAgIGdldFVybChcbiAgICAgICAgYW5zd2VyOiBzdHJpbmcsXG4gICAgICAgIGZlZWRiYWNrVXNhZ2VyOiBGb2VobkZlZWRiYWNrTm90aWZpY2F0aW9uVHlwZSxcbiAgICAgICAgZmVlZEJhY2tGb3JtQmFzZVVybDogc3RyaW5nLFxuICAgICAgICByZWZlcmVuY2U6IHN0cmluZ1xuICAgICk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIGlmICghZmVlZGJhY2tVc2FnZXIgfHwgIWZlZWRCYWNrRm9ybUJhc2VVcmwgfHwgIXJlZmVyZW5jZSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZidSA9IHsgLi4uZmVlZGJhY2tVc2FnZXIgfTtcbiAgICAgICAgZmJ1LmFuc3dlciA9IGFuc3dlcjtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3QoYGFwaS9mZWVkYmFja25vdGlmaWNhdGlvbi9xdWVyeXBhcmFtcy8ke3JlZmVyZW5jZX1gLCBmYnUsIHtcbiAgICAgICAgICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0J1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChcbiAgICAgICAgICAgICAgICAgICAgY3J5cHRlZFVybFBhcmFtcyA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgYCR7ZmVlZEJhY2tGb3JtQmFzZVVybH0/cT0ke2VuY29kZVVSSUNvbXBvbmVudChjcnlwdGVkVXJsUGFyYW1zKX1gXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENhdGVnb3J5KFxuICAgICAgICBzZXNzaW9uSW5mb0RhdGE6IFNlc3Npb25JbmZvRGF0YSxcbiAgICAgICAgZXRhcGVJbmZvOiBFdGFwZUluZm9cbiAgICApOiBzdHJpbmcge1xuICAgICAgICBpZiAoc2Vzc2lvbkluZm9EYXRhKSB7XG4gICAgICAgICAgICByZXR1cm4gc2Vzc2lvbkluZm9EYXRhLmNhdGVnb3JpZXNbMF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGV0YXBlSW5mby5wdWJsaWNDaWJsZT8ubGVuZ3RoID09PSAxXG4gICAgICAgICAgICA/IGV0YXBlSW5mby5wdWJsaWNDaWJsZVswXVxuICAgICAgICAgICAgOiAnSW5jb25udSc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQb3J0YWlsQmFzZVVybChhcHBJbmZvOiBBcHBsaWNhdGlvbkluZm8pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBiYXNlVXJsID0gYXBwSW5mby5jb25maWd1cmF0aW9uPy5wb3J0YWlsPy5iYXNlVXJsO1xuICAgICAgICBpZiAoISFiYXNlVXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gYmFzZVVybDtcbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKGFwcEluZm8uZW52aXJvbm1lbnQpIHtcbiAgICAgICAgICAgIGNhc2UgJ0NPJzpcbiAgICAgICAgICAgIGNhc2UgJ0lOJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gUE9SVEFJTF9CQVNFX1VSTF9JTlQ7XG4gICAgICAgICAgICBjYXNlICdWQSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFBPUlRBSUxfQkFTRV9VUkxfVkFMO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gUE9SVEFJTF9CQVNFX1VSTF9QUk9EO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGdWxsUmVmZXJlbmNlKG1ldGE6IEZvcm1NZXRhZGF0YSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghbWV0YSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke21ldGEucmVmZXJlbmNlfS0ke21ldGEuY3VycmVudEFjdGlvbn1gO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBpZD1cImZlZWRiYWNrLWNvbnRhaW5lclwiXG4gICAgW25nQ2xhc3NdPVwiZXhwYW5kZWQgPyAnZXhwYW5kZWQnIDogJ3JlZHVjZWQnXCJcbiAgICBbY2xhc3Mub2Zmc2V0LWJvdHRvbV09XCJpc1Njcm9sbEVuZGVkXCJcbiAgICBbY2xhc3MudmlzaWJsZV09XCJ2aXNpYmxlIHwgYXN5bmNcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZmVlZGJhY2stY2hldnJvbiBidG4gYnRuLWxpbmtcIlxuICAgICAgICAoY2xpY2spPVwiZXhwYW5kZWQgPSAhZXhwYW5kZWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImV4cGFuZGVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCInZmVlZGJhY2stZm9ybSdcIlxuICAgID5cbiAgICAgICAgPGZvZWhuLWljb24tY2hldnJvbi1kb3duXG4gICAgICAgICAgICAqbmdJZj1cImV4cGFuZGVkXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJcbiAgICAgICAgICAgICAgICAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNoZXZyb24tZG93bicgfCBmcm9tRGljdGlvbmFyeVxuICAgICAgICAgICAgXCJcbiAgICAgICAgPjwvZm9laG4taWNvbi1jaGV2cm9uLWRvd24+XG4gICAgICAgIDxmb2Vobi1pY29uLWNoZXZyb24tdXBcbiAgICAgICAgICAgICpuZ0lmPVwiIWV4cGFuZGVkXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCInZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmNoZXZyb24tdXAnIHwgZnJvbURpY3Rpb25hcnlcIlxuICAgICAgICA+PC9mb2Vobi1pY29uLWNoZXZyb24tdXA+XG4gICAgPC9idXR0b24+XG4gICAgPGRpdiBpZD1cImZlZWRiYWNrLXRpdGxlXCIgY2xhc3M9XCJoNFwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cImV4cGFuZGVkXCI+XG4gICAgICAgICAgICB7eyAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLnRpdGxlLWV4cGFuZGVkJyB8IGZyb21EaWN0aW9uYXJ5IH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhZXhwYW5kZWRcIiAoY2xpY2spPVwiZXhwYW5kZWQgPSAhZXhwYW5kZWRcIj5cbiAgICAgICAgICAgIHt7ICdmb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24udGl0bGUtcmVkdWNlZCcgfCBmcm9tRGljdGlvbmFyeSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBpZD1cImZlZWRiYWNrLWZvcm1cIiBbY2xhc3MudmlzaWJsZV09XCJleHBhbmRlZFwiPlxuICAgICAgICA8bGFiZWw+XG4gICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICdmb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24ucXVlc3Rpb24uUV9OT1RJRklDQVRJT05fRkFDSUxFX0FfVVRJTElTRVInXG4gICAgICAgICAgICAgICAgICAgIHwgZnJvbURpY3Rpb25hcnlcbiAgICAgICAgICAgIH19XG4gICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDx1bCBjbGFzcz1cInZkLWxpc3QtaWNvbnMgbWItMCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICAgICAgPGxpIChjbGljayk9XCJoaWRlTm90aWZpY2F0aW9uKClcIj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJnb29kVXJsIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICByZWw9XCJvcGVuZXJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNtaWxleS1saW5rIHRleHQtc3VjY2Vzc1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZmEtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmljb24uZ29vZCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmcm9tRGljdGlvbmFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpY29uXT1cImdvb2RJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgID48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24uaWNvbi5nb29kJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGZyb21EaWN0aW9uYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaSBjbGFzcz1cIm14LTJcIiAoY2xpY2spPVwiaGlkZU5vdGlmaWNhdGlvbigpXCI+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibWVkaXVtVXJsIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICByZWw9XCJvcGVuZXJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNtaWxleS1saW5rIHRleHQtd2FybmluZ1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZmEtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmljb24ubWVkaXVtJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGZyb21EaWN0aW9uYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwibWVkaXVtSWNvbk5hbWVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9mYS1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZpc3VhbGx5LWhpZGRlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLmljb24ubWVkaXVtJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGZyb21EaWN0aW9uYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaSAoY2xpY2spPVwiaGlkZU5vdGlmaWNhdGlvbigpXCI+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiYmFkVXJsIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICByZWw9XCJvcGVuZXJcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNtaWxleS1saW5rIHRleHQtZGFuZ2VyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxmYS1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24uaWNvbi5iYWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgZnJvbURpY3Rpb25hcnlcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJiYWRJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgID48L2ZhLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24uaWNvbi5iYWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgZnJvbURpY3Rpb25hcnlcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
|
|
4
|
-
import { FoehnIconsModule } from '../foehn-icons/foehn-icons.module';
|
|
5
|
-
import { SdkDictionaryModule } from '../sdk-dictionary/sdk-dictionary.module';
|
|
6
|
-
import { FoehnFeedbackNotificationComponent } from './foehn-feedback-notification.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class FoehnFeedbackNotificationModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationModule, declarations: [FoehnFeedbackNotificationComponent], imports: [CommonModule,
|
|
11
|
-
FontAwesomeModule,
|
|
12
|
-
FoehnIconsModule,
|
|
13
|
-
SdkDictionaryModule], exports: [FoehnFeedbackNotificationComponent] }); }
|
|
14
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationModule, imports: [CommonModule,
|
|
15
|
-
FontAwesomeModule,
|
|
16
|
-
FoehnIconsModule,
|
|
17
|
-
SdkDictionaryModule] }); }
|
|
18
|
-
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnFeedbackNotificationModule, decorators: [{
|
|
20
|
-
type: NgModule,
|
|
21
|
-
args: [{
|
|
22
|
-
imports: [
|
|
23
|
-
CommonModule,
|
|
24
|
-
FontAwesomeModule,
|
|
25
|
-
FoehnIconsModule,
|
|
26
|
-
SdkDictionaryModule
|
|
27
|
-
],
|
|
28
|
-
declarations: [FoehnFeedbackNotificationComponent],
|
|
29
|
-
exports: [FoehnFeedbackNotificationComponent]
|
|
30
|
-
}]
|
|
31
|
-
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1mZWVkYmFjay1ub3RpZmljYXRpb24vZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFZN0YsTUFBTSxPQUFPLCtCQUErQjsrR0FBL0IsK0JBQStCO2dIQUEvQiwrQkFBK0IsaUJBSHpCLGtDQUFrQyxhQUw3QyxZQUFZO1lBQ1osaUJBQWlCO1lBQ2pCLGdCQUFnQjtZQUNoQixtQkFBbUIsYUFHYixrQ0FBa0M7Z0hBRW5DLCtCQUErQixZQVJwQyxZQUFZO1lBQ1osaUJBQWlCO1lBQ2pCLGdCQUFnQjtZQUNoQixtQkFBbUI7OzRGQUtkLCtCQUErQjtrQkFWM0MsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3FCQUN0QjtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztvQkFDbEQsT0FBTyxFQUFFLENBQUMsa0NBQWtDLENBQUM7aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb250QXdlc29tZU1vZHVsZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcblxuaW1wb3J0IHsgRm9laG5JY29uc01vZHVsZSB9IGZyb20gJy4uL2ZvZWhuLWljb25zL2ZvZWhuLWljb25zLm1vZHVsZSc7XG5pbXBvcnQgeyBTZGtEaWN0aW9uYXJ5TW9kdWxlIH0gZnJvbSAnLi4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkubW9kdWxlJztcbmltcG9ydCB7IEZvZWhuRmVlZGJhY2tOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWZlZWRiYWNrLW5vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb250QXdlc29tZU1vZHVsZSxcbiAgICAgICAgRm9laG5JY29uc01vZHVsZSxcbiAgICAgICAgU2RrRGljdGlvbmFyeU1vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbRm9laG5GZWVkYmFja05vdGlmaWNhdGlvbkNvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW0ZvZWhuRmVlZGJhY2tOb3RpZmljYXRpb25Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuRmVlZGJhY2tOb3RpZmljYXRpb25Nb2R1bGUge31cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class FoehnFeedbackNotificationType {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZmVlZGJhY2stbm90aWZpY2F0aW9uL2ZvZWhuLWZlZWRiYWNrLW5vdGlmaWNhdGlvbi50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyw2QkFBNkI7Q0FPekMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRm9laG5GZWVkYmFja05vdGlmaWNhdGlvblR5cGUge1xuICAgIGFuc3dlcjogc3RyaW5nO1xuICAgIGlkTWV0aWVyRXRhcGU6IHN0cmluZztcbiAgICBpc0Nvbm5lY3RlZDogYm9vbGVhbjtcbiAgICBiZW5lZmljaWFyeUNhdGVnb3J5OiBzdHJpbmc7XG4gICAgY3VycmVudEFjdGlvbjogbnVtYmVyO1xuICAgIGlzQmVoaW5kSUFNOiBib29sZWFuO1xufVxuIl19
|