@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,291 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { HttpClient } from '@angular/common/http';
|
|
3
|
-
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
4
|
-
import { of, Subject } from 'rxjs';
|
|
5
|
-
import { first, map, shareReplay } from 'rxjs/operators';
|
|
6
|
-
import { FoehnInputComponent } from '../foehn-input/foehn-input.component';
|
|
7
|
-
import { ObjectHelper } from '../helpers/object.helper';
|
|
8
|
-
import { ServiceLocator } from '../service-locator';
|
|
9
|
-
import { FormSelectOptionGroup } from './form-select-option-group';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
export class FoehnCheckableGroupComponent extends FoehnInputComponent {
|
|
12
|
-
constructor(ngZone) {
|
|
13
|
-
super();
|
|
14
|
-
this.ngZone = ngZone;
|
|
15
|
-
/**
|
|
16
|
-
* The value in the object. Can be a string or a function.
|
|
17
|
-
* Defaults to `value`
|
|
18
|
-
*/
|
|
19
|
-
this.elementValue = 'value';
|
|
20
|
-
/**
|
|
21
|
-
* The label in the object. Can be a string or a function
|
|
22
|
-
* Defaults to `label`
|
|
23
|
-
*/
|
|
24
|
-
this.elementLabel = 'label';
|
|
25
|
-
this.elementDisabled = 'disabled';
|
|
26
|
-
this.elementsLoaded = new EventEmitter();
|
|
27
|
-
this.multiple = false;
|
|
28
|
-
this._onInitSubject = new Subject();
|
|
29
|
-
this.httpClient = ServiceLocator.injector.get(HttpClient);
|
|
30
|
-
this.autocomplete = 'off';
|
|
31
|
-
}
|
|
32
|
-
get onInitSubject() {
|
|
33
|
-
return this._onInitSubject;
|
|
34
|
-
}
|
|
35
|
-
get defaultElementValue() {
|
|
36
|
-
return this.defaultElementValue_;
|
|
37
|
-
}
|
|
38
|
-
set defaultElementValue(val) {
|
|
39
|
-
this.defaultElementValue_ = val;
|
|
40
|
-
if (!this.elementsUrl) {
|
|
41
|
-
this.onElementsRetrieved();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
ngOnInit() {
|
|
45
|
-
super.ngOnInit();
|
|
46
|
-
if (this.elementsUrl) {
|
|
47
|
-
this.fetchElementsFromUrl();
|
|
48
|
-
}
|
|
49
|
-
else if (this.elements) {
|
|
50
|
-
this.onElementsRetrieved();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
ngOnChanges(changes) {
|
|
54
|
-
// Handle a change in the elements Input.
|
|
55
|
-
this.onElementsChange(changes.elements);
|
|
56
|
-
// Handle a change in the elementsUrl Input.
|
|
57
|
-
this.onElementsUrlChange(changes.elementsUrl);
|
|
58
|
-
}
|
|
59
|
-
getElements() {
|
|
60
|
-
if (!!this.elementsUrl) {
|
|
61
|
-
return this.pulling_;
|
|
62
|
-
}
|
|
63
|
-
return of(this.elements);
|
|
64
|
-
}
|
|
65
|
-
getGroup(element) {
|
|
66
|
-
if (!element || !this.elementGroup) {
|
|
67
|
-
return null;
|
|
68
|
-
}
|
|
69
|
-
if (typeof this.elementGroup === 'string') {
|
|
70
|
-
return ObjectHelper.getNestedProperty(element, this.elementGroup);
|
|
71
|
-
}
|
|
72
|
-
return this.elementGroup(element);
|
|
73
|
-
}
|
|
74
|
-
setElements(elements) {
|
|
75
|
-
this.elements = elements;
|
|
76
|
-
this.elementsLoaded.next(elements);
|
|
77
|
-
this.onElementsRetrieved();
|
|
78
|
-
}
|
|
79
|
-
getValue(element) {
|
|
80
|
-
if (!element) {
|
|
81
|
-
return null;
|
|
82
|
-
}
|
|
83
|
-
if (typeof this.elementValue === 'string') {
|
|
84
|
-
return ObjectHelper.getNestedProperty(element, this.elementValue);
|
|
85
|
-
}
|
|
86
|
-
return this.elementValue(element);
|
|
87
|
-
}
|
|
88
|
-
getLabel(element) {
|
|
89
|
-
if (typeof this.elementLabel === 'string') {
|
|
90
|
-
return ObjectHelper.getNestedProperty(element, this.elementLabel);
|
|
91
|
-
}
|
|
92
|
-
return this.elementLabel(element);
|
|
93
|
-
}
|
|
94
|
-
getElementIdentifier(element) {
|
|
95
|
-
const identityFn = this.getValueIdentityFunction();
|
|
96
|
-
if (identityFn) {
|
|
97
|
-
return identityFn(element);
|
|
98
|
-
}
|
|
99
|
-
return this.getValue(element);
|
|
100
|
-
}
|
|
101
|
-
getDisabled(element) {
|
|
102
|
-
if (this.disabled) {
|
|
103
|
-
return 'disabled';
|
|
104
|
-
}
|
|
105
|
-
if (typeof this.elementDisabled === 'string') {
|
|
106
|
-
return ObjectHelper.getNestedProperty(element, this.elementDisabled);
|
|
107
|
-
}
|
|
108
|
-
return this.elementDisabled(element);
|
|
109
|
-
}
|
|
110
|
-
onCheck(element, valueEmitted, fireModelChange = true) {
|
|
111
|
-
const value = this.getValue(element);
|
|
112
|
-
if (this.multiple) {
|
|
113
|
-
this.onCheckMultiple(value, valueEmitted, fireModelChange);
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
// Single select value
|
|
117
|
-
if (valueEmitted) {
|
|
118
|
-
this.model = value;
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
// Single unselect value
|
|
122
|
-
if (this.areValuesEquals(this.model, value)) {
|
|
123
|
-
this.model = null;
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
isElementSelected(element) {
|
|
127
|
-
const value = this.getValue(element);
|
|
128
|
-
if (this.multiple) {
|
|
129
|
-
return this.model && this.findIndexInModel(value) >= 0;
|
|
130
|
-
}
|
|
131
|
-
return this.areValuesEquals(this.model, value);
|
|
132
|
-
}
|
|
133
|
-
reset() {
|
|
134
|
-
if (this.defaultElementValue) {
|
|
135
|
-
this.updateNgModel(this.defaultElementValue);
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
super.reset();
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
refreshElementsUrl() {
|
|
142
|
-
if (this.elementsUrl) {
|
|
143
|
-
this.fetchElementsFromUrl();
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
findIndexInModel(value) {
|
|
147
|
-
if (this.multiple) {
|
|
148
|
-
return this.model.findIndex(modelValue => this.areValuesEquals(value, modelValue));
|
|
149
|
-
}
|
|
150
|
-
throw new Error('findIndexInModel cannot be used when this.multiple is false !');
|
|
151
|
-
}
|
|
152
|
-
areValuesEquals(value1, value2) {
|
|
153
|
-
// Get an option way to compare the value from the model.
|
|
154
|
-
// This allows us to properly use an object as the model rather
|
|
155
|
-
// than a string.
|
|
156
|
-
const identityFn = this.getValueIdentityFunction();
|
|
157
|
-
if (identityFn) {
|
|
158
|
-
return identityFn(value1) === identityFn(value2);
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
return ObjectHelper.isEqual(value1, value2);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
onElementsRetrieved() {
|
|
165
|
-
if (!this.model && this.defaultElementValue) {
|
|
166
|
-
this.ngZone.onMicrotaskEmpty.pipe(first()).subscribe(() => {
|
|
167
|
-
this.updateNgModel(this.defaultElementValue);
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
else if (this.model) {
|
|
171
|
-
this.ngZone.onMicrotaskEmpty.pipe(first()).subscribe(() => {
|
|
172
|
-
this.updateNgModel(this.model_);
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
this.groupedElements = this.getGroupedElements();
|
|
176
|
-
}
|
|
177
|
-
getGroupedElements() {
|
|
178
|
-
if (!this.elements) {
|
|
179
|
-
return [];
|
|
180
|
-
}
|
|
181
|
-
if (!this.elementGroup) {
|
|
182
|
-
return [{ groupTitle: null, elements: this.elements }];
|
|
183
|
-
}
|
|
184
|
-
const elementsByGroup = new Map();
|
|
185
|
-
const emptyGroup = new FormSelectOptionGroup();
|
|
186
|
-
emptyGroup.elements = [];
|
|
187
|
-
for (const element of this.elements) {
|
|
188
|
-
const groupId = this.getGroup(element);
|
|
189
|
-
if (groupId) {
|
|
190
|
-
let elementsOfGroup = elementsByGroup.get(groupId);
|
|
191
|
-
if (!elementsOfGroup) {
|
|
192
|
-
elementsOfGroup = [];
|
|
193
|
-
elementsByGroup.set(groupId, elementsOfGroup);
|
|
194
|
-
}
|
|
195
|
-
elementsOfGroup.push(element);
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
emptyGroup.elements.push(element);
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
const formSelectOptionsGroup = [];
|
|
202
|
-
if (emptyGroup.elements.length > 0) {
|
|
203
|
-
formSelectOptionsGroup.push(emptyGroup);
|
|
204
|
-
}
|
|
205
|
-
elementsByGroup.forEach((value, key) => {
|
|
206
|
-
formSelectOptionsGroup.push({ groupTitle: key, elements: value });
|
|
207
|
-
});
|
|
208
|
-
return formSelectOptionsGroup;
|
|
209
|
-
}
|
|
210
|
-
getValueIdentityFunction() {
|
|
211
|
-
return typeof this.elementValueIdentity === 'function'
|
|
212
|
-
? this.elementValueIdentity
|
|
213
|
-
: null;
|
|
214
|
-
}
|
|
215
|
-
fetchData() {
|
|
216
|
-
return this.httpClient.get(this.elementsUrl).pipe(map(r => {
|
|
217
|
-
const elements = r;
|
|
218
|
-
this.setElements(elements);
|
|
219
|
-
return elements;
|
|
220
|
-
}), shareReplay(1));
|
|
221
|
-
}
|
|
222
|
-
fetchElementsFromUrl() {
|
|
223
|
-
this.pulling_ = this.fetchData();
|
|
224
|
-
this.pulling_.subscribe(() => {
|
|
225
|
-
this.onInitSubject.next(null);
|
|
226
|
-
});
|
|
227
|
-
}
|
|
228
|
-
onElementsChange(change) {
|
|
229
|
-
if (change && !change.firstChange) {
|
|
230
|
-
// When elements are deferred from ngOnInit (i.e. pipe async is used)
|
|
231
|
-
this.onElementsRetrieved();
|
|
232
|
-
// Hack to refresh the display value
|
|
233
|
-
this.updateNgModel(this.model_);
|
|
234
|
-
// When elements are deferred from ngOnInit (i.e. pipe async is used)
|
|
235
|
-
// Need to fire again 'elementsLoaded' otherwise only 'null' value is sent
|
|
236
|
-
this.elementsLoaded.next(change.currentValue);
|
|
237
|
-
}
|
|
238
|
-
else if (change &&
|
|
239
|
-
!ObjectHelper.isEqual(change.currentValue, change.previousValue)) {
|
|
240
|
-
this.elementsLoaded.next(change.currentValue);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
onElementsUrlChange(change) {
|
|
244
|
-
if (change && !change.firstChange) {
|
|
245
|
-
this.fetchElementsFromUrl();
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
onCheckMultiple(value, valueEmitted, fireModelChange = true) {
|
|
249
|
-
if (!this.model) {
|
|
250
|
-
this.model = [];
|
|
251
|
-
}
|
|
252
|
-
const modelArray = this.model;
|
|
253
|
-
const index = this.findIndexInModel(value);
|
|
254
|
-
// Add element when it does not exist
|
|
255
|
-
if (valueEmitted && index < 0) {
|
|
256
|
-
modelArray.push(value);
|
|
257
|
-
}
|
|
258
|
-
// Remove existing element
|
|
259
|
-
if (!valueEmitted && index >= 0) {
|
|
260
|
-
modelArray.splice(index, 1);
|
|
261
|
-
}
|
|
262
|
-
// Update model
|
|
263
|
-
if (fireModelChange) {
|
|
264
|
-
this.model = [...modelArray];
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckableGroupComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
268
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: FoehnCheckableGroupComponent, inputs: { elements: "elements", elementsUrl: "elementsUrl", elementValue: "elementValue", elementLabel: "elementLabel", elementValueIdentity: "elementValueIdentity", elementDisabled: "elementDisabled", elementGroup: "elementGroup", defaultElementValue: "defaultElementValue" }, outputs: { elementsLoaded: "elementsLoaded" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
|
|
269
|
-
}
|
|
270
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckableGroupComponent, decorators: [{
|
|
271
|
-
type: Directive
|
|
272
|
-
}], ctorParameters: () => [{ type: i0.NgZone }], propDecorators: { elements: [{
|
|
273
|
-
type: Input
|
|
274
|
-
}], elementsUrl: [{
|
|
275
|
-
type: Input
|
|
276
|
-
}], elementValue: [{
|
|
277
|
-
type: Input
|
|
278
|
-
}], elementLabel: [{
|
|
279
|
-
type: Input
|
|
280
|
-
}], elementValueIdentity: [{
|
|
281
|
-
type: Input
|
|
282
|
-
}], elementDisabled: [{
|
|
283
|
-
type: Input
|
|
284
|
-
}], elementGroup: [{
|
|
285
|
-
type: Input
|
|
286
|
-
}], elementsLoaded: [{
|
|
287
|
-
type: Output
|
|
288
|
-
}], defaultElementValue: [{
|
|
289
|
-
type: Input
|
|
290
|
-
}] } });
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY2hlY2thYmxlLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1jaGVja2FibGVzL2ZvZWhuLWNoZWNrYWJsZS1ncm91cC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBSUwsTUFBTSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBR25FLE1BQU0sT0FBZ0IsNEJBQ2xCLFNBQVEsbUJBQXdCO0lBZ0RoQyxZQUFvQixNQUFjO1FBQzlCLEtBQUssRUFBRSxDQUFDO1FBRFEsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXZDbEM7OztXQUdHO1FBRUgsaUJBQVksR0FBUSxPQUFPLENBQUM7UUFFNUI7OztXQUdHO1FBRUgsaUJBQVksR0FBUSxPQUFPLENBQUM7UUFVNUIsb0JBQWUsR0FBUSxVQUFVLENBQUM7UUFNbEMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBTS9CLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFbkIsbUJBQWMs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Q0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLENBQUM7SUFDTCxDQUFDOytHQXZWaUIsNEJBQTRCO21HQUE1Qiw0QkFBNEI7OzRGQUE1Qiw0QkFBNEI7a0JBRGpELFNBQVM7MkVBTU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFRTixZQUFZO3NCQURYLEtBQUs7Z0JBUU4sWUFBWTtzQkFEWCxLQUFLO2dCQVFOLG9CQUFvQjtzQkFEbkIsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsTUFBTTtnQkEyQkgsbUJBQW1CO3NCQUR0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZvZWhuSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9mb2Vobi1pbnB1dC9mb2Vobi1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT2JqZWN0SGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9vYmplY3QuaGVscGVyJztcbmltcG9ydCB7IFNlcnZpY2VMb2NhdG9yIH0gZnJvbSAnLi4vc2VydmljZS1sb2NhdG9yJztcbmltcG9ydCB7IEZvcm1TZWxlY3RPcHRpb25Hcm91cCB9IGZyb20gJy4vZm9ybS1zZWxlY3Qtb3B0aW9uLWdyb3VwJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRm9laG5DaGVja2FibGVHcm91cENvbXBvbmVudFxuICAgIGV4dGVuZHMgRm9laG5JbnB1dENvbXBvbmVudDxhbnk+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlc1xue1xuICAgIEBJbnB1dCgpXG4gICAgZWxlbWVudHM6IGFueTtcblxuICAgIEBJbnB1dCgpXG4gICAgZWxlbWVudHNVcmw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSB2YWx1ZSBpbiB0aGUgb2JqZWN0LiBDYW4gYmUgYSBzdHJpbmcgb3IgYSBmdW5jdGlvbi5cbiAgICAgKiBEZWZhdWx0cyB0byBgdmFsdWVgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBlbGVtZW50VmFsdWU6IGFueSA9ICd2YWx1ZSc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbGFiZWwgaW4gdGhlIG9iamVjdC4gQ2FuIGJlIGEgc3RyaW5nIG9yIGEgZnVuY3Rpb25cbiAgICAgKiBEZWZhdWx0cyB0byBgbGFiZWxgXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBlbGVtZW50TGFiZWw6IGFueSA9ICdsYWJlbCc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaWRlbnRpZnkgdmFsdWUgdG8gbWF0Y2ggdGhlIHZhbHVlIHRvIHRoZSBsaXN0IG9mIGVsZW1lbnRzLlxuICAgICAqIEJ5IGRlZmF1bHQgYHggPT4geGBcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGVsZW1lbnRWYWx1ZUlkZW50aXR5OiAoZWxlbWVudDogYW55KSA9PiBhbnk7XG5cbiAgICBASW5wdXQoKVxuICAgIGVsZW1lbnREaXNhYmxlZDogYW55ID0gJ2Rpc2FibGVkJztcblxuICAgIEBJbnB1dCgpXG4gICAgZWxlbWVudEdyb3VwOiBhbnk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBlbGVtZW50c0xvYWRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgZ3JvdXBlZEVsZW1lbnRzOiBGb3JtU2VsZWN0T3B0aW9uR3JvdXBbXTtcblxuICAgIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQ7XG5cbiAgICBwcm90ZWN0ZWQgbXVsdGlwbGUgPSBmYWxzZTtcbiAgICBwcml2YXRlIHB1bGxpbmdfOiBPYnNlcnZhYmxlPGFueT47XG4gICAgcHJpdmF0ZSBfb25Jbml0U3ViamVjdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICAgIHByaXZhdGUgZGVmYXVsdEVsZW1lbnRWYWx1ZV86IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5odHRwQ2xpZW50ID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEh0dHBDbGllbnQpO1xuICAgICAgICB0aGlzLmF1dG9jb21wbGV0ZSA9ICdvZmYnO1xuICAgIH1cblxuICAgIGdldCBvbkluaXRTdWJqZWN0KCk6IFN1YmplY3Q8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9vbkluaXRTdWJqZWN0O1xuICAgIH1cblxuICAgIGdldCBkZWZhdWx0RWxlbWVudFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRFbGVtZW50VmFsdWVfO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGRlZmF1bHRFbGVtZW50VmFsdWUodmFsOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0RWxlbWVudFZhbHVlXyA9IHZhbDtcbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRzVXJsKSB7XG4gICAgICAgICAgICB0aGlzLm9uRWxlbWVudHNSZXRyaWV2ZWQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICBpZiAodGhpcy5lbGVtZW50c1VybCkge1xuICAgICAgICAgICAgdGhpcy5mZXRjaEVsZW1lbnRzRnJvbVVybCgpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZWxlbWVudHMpIHtcbiAgICAgICAgICAgIHRoaXMub25FbGVtZW50c1JldHJpZXZlZCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICAvLyBIYW5kbGUgYSBjaGFuZ2UgaW4gdGhlIGVsZW1lbnRzIElucHV0LlxuICAgICAgICB0aGlzLm9uRWxlbWVudHNDaGFuZ2UoY2hhbmdlcy5lbGVtZW50cyk7XG5cbiAgICAgICAgLy8gSGFuZGxlIGEgY2hhbmdlIGluIHRoZSBlbGVtZW50c1VybCBJbnB1dC5cbiAgICAgICAgdGhpcy5vbkVsZW1lbnRzVXJsQ2hhbmdlKGNoYW5nZXMuZWxlbWVudHNVcmwpO1xuICAgIH1cblxuICAgIGdldEVsZW1lbnRzKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmICghIXRoaXMuZWxlbWVudHNVcmwpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnB1bGxpbmdfO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG9mKHRoaXMuZWxlbWVudHMpO1xuICAgIH1cblxuICAgIGdldEdyb3VwKGVsZW1lbnQ6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghZWxlbWVudCB8fCAhdGhpcy5lbGVtZW50R3JvdXApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVsZW1lbnRHcm91cCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3RIZWxwZXIuZ2V0TmVzdGVkUHJvcGVydHkoZWxlbWVudCwgdGhpcy5lbGVtZW50R3JvdXApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRHcm91cChlbGVtZW50KTtcbiAgICB9XG5cbiAgICBzZXRFbGVtZW50cyhlbGVtZW50czogYW55W10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbGVtZW50cyA9IGVsZW1lbnRzO1xuICAgICAgICB0aGlzLmVsZW1lbnRzTG9hZGVkLm5leHQoZWxlbWVudHMpO1xuICAgICAgICB0aGlzLm9uRWxlbWVudHNSZXRyaWV2ZWQoKTtcbiAgICB9XG5cbiAgICBnZXRWYWx1ZShlbGVtZW50OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIWVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVsZW1lbnRWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3RIZWxwZXIuZ2V0TmVzdGVkUHJvcGVydHkoZWxlbWVudCwgdGhpcy5lbGVtZW50VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRWYWx1ZShlbGVtZW50KTtcbiAgICB9XG5cbiAgICBnZXRMYWJlbChlbGVtZW50OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZWxlbWVudExhYmVsID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgcmV0dXJuIE9iamVjdEhlbHBlci5nZXROZXN0ZWRQcm9wZXJ0eShlbGVtZW50LCB0aGlzLmVsZW1lbnRMYWJlbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudExhYmVsKGVsZW1lbnQpO1xuICAgIH1cblxuICAgIGdldEVsZW1lbnRJZGVudGlmaWVyKGVsZW1lbnQ6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGlkZW50aXR5Rm4gPSB0aGlzLmdldFZhbHVlSWRlbnRpdHlGdW5jdGlvbigpO1xuICAgICAgICBpZiAoaWRlbnRpdHlGbikge1xuICAgICAgICAgICAgcmV0dXJuIGlkZW50aXR5Rm4oZWxlbWVudCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoZWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0RGlzYWJsZWQoZWxlbWVudDogYW55KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybiAnZGlzYWJsZWQnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVsZW1lbnREaXNhYmxlZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3RIZWxwZXIuZ2V0TmVzdGVkUHJvcGVydHkoXG4gICAgICAgICAgICAgICAgZWxlbWVudCxcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnREaXNhYmxlZFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50RGlzYWJsZWQoZWxlbWVudCk7XG4gICAgfVxuXG4gICAgb25DaGVjayhcbiAgICAgICAgZWxlbWVudDogYW55LFxuICAgICAgICB2YWx1ZUVtaXR0ZWQ6IGFueSxcbiAgICAgICAgZmlyZU1vZGVsQ2hhbmdlOiBib29sZWFuID0gdHJ1ZVxuICAgICk6IHZvaWQge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoZWxlbWVudCk7XG4gICAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ2hlY2tNdWx0aXBsZSh2YWx1ZSwgdmFsdWVFbWl0dGVkLCBmaXJlTW9kZWxDaGFuZ2UpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIFNpbmdsZSBzZWxlY3QgdmFsdWVcbiAgICAgICAgaWYgKHZhbHVlRW1pdHRlZCkge1xuICAgICAgICAgICAgdGhpcy5tb2RlbCA9IHZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIFNpbmdsZSB1bnNlbGVjdCB2YWx1ZVxuICAgICAgICBpZiAodGhpcy5hcmVWYWx1ZXNFcXVhbHModGhpcy5tb2RlbCwgdmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzRWxlbWVudFNlbGVjdGVkKGVsZW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoZWxlbWVudCk7XG4gICAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5tb2RlbCAmJiB0aGlzLmZpbmRJbmRleEluTW9kZWwodmFsdWUpID49IDA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5hcmVWYWx1ZXNFcXVhbHModGhpcy5tb2RlbCwgdmFsdWUpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kZWZhdWx0RWxlbWVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU5nTW9kZWwodGhpcy5kZWZhdWx0RWxlbWVudFZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN1cGVyLnJlc2V0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWZyZXNoRWxlbWVudHNVcmwoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVsZW1lbnRzVXJsKSB7XG4gICAgICAgICAgICB0aGlzLmZldGNoRWxlbWVudHNGcm9tVXJsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZmluZEluZGV4SW5Nb2RlbCh2YWx1ZTogYW55KTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHJldHVybiAodGhpcy5tb2RlbCBhcyBhbnlbXSkuZmluZEluZGV4KG1vZGVsVmFsdWUgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmFyZVZhbHVlc0VxdWFscyh2YWx1ZSwgbW9kZWxWYWx1ZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgJ2ZpbmRJbmRleEluTW9kZWwgY2Fubm90IGJlIHVzZWQgd2hlbiB0aGlzLm11bHRpcGxlIGlzIGZhbHNlICEnXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFyZVZhbHVlc0VxdWFscyh2YWx1ZTE6IGFueSwgdmFsdWUyOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgLy8gR2V0IGFuIG9wdGlvbiB3YXkgdG8gY29tcGFyZSB0aGUgdmFsdWUgZnJvbSB0aGUgbW9kZWwuXG4gICAgICAgIC8vIFRoaXMgYWxsb3dzIHVzIHRvIHByb3Blcmx5IHVzZSBhbiBvYmplY3QgYXMgdGhlIG1vZGVsIHJhdGhlclxuICAgICAgICAvLyB0aGFuIGEgc3RyaW5nLlxuICAgICAgICBjb25zdCBpZGVudGl0eUZuID0gdGhpcy5nZXRWYWx1ZUlkZW50aXR5RnVuY3Rpb24oKTtcbiAgICAgICAgaWYgKGlkZW50aXR5Rm4pIHtcbiAgICAgICAgICAgIHJldHVybiBpZGVudGl0eUZuKHZhbHVlMSkgPT09IGlkZW50aXR5Rm4odmFsdWUyKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBPYmplY3RIZWxwZXIuaXNFcXVhbCh2YWx1ZTEsIHZhbHVlMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25FbGVtZW50c1JldHJpZXZlZCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsICYmIHRoaXMuZGVmYXVsdEVsZW1lbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVOZ01vZGVsKHRoaXMuZGVmYXVsdEVsZW1lbnRWYWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICAgICAgICB0aGlzLm5nWm9uZS5vbk1pY3JvdGFza0VtcHR5LnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZU5nTW9kZWwodGhpcy5tb2RlbF8pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ncm91cGVkRWxlbWVudHMgPSB0aGlzLmdldEdyb3VwZWRFbGVtZW50cygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0R3JvdXBlZEVsZW1lbnRzKCk6IEZvcm1TZWxlY3RPcHRpb25Hcm91cFtdIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRzKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRHcm91cCkge1xuICAgICAgICAgICAgcmV0dXJuIFt7IGdyb3VwVGl0bGU6IG51bGwsIGVsZW1lbnRzOiB0aGlzLmVsZW1lbnRzIH1dO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZWxlbWVudHNCeUdyb3VwOiBNYXA8c3RyaW5nLCBhbnlbXT4gPSBuZXcgTWFwPHN0cmluZywgYW55W10+KCk7XG5cbiAgICAgICAgY29uc3QgZW1wdHlHcm91cCA9IG5ldyBGb3JtU2VsZWN0T3B0aW9uR3JvdXAoKTtcbiAgICAgICAgZW1wdHlHcm91cC5lbGVtZW50cyA9IFtdO1xuXG4gICAgICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB0aGlzLmVsZW1lbnRzKSB7XG4gICAgICAgICAgICBjb25zdCBncm91cElkID0gdGhpcy5nZXRHcm91cChlbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChncm91cElkKSB7XG4gICAgICAgICAgICAgICAgbGV0IGVsZW1lbnRzT2ZHcm91cDogYW55W10gPSBlbGVtZW50c0J5R3JvdXAuZ2V0KGdyb3VwSWQpO1xuICAgICAgICAgICAgICAgIGlmICghZWxlbWVudHNPZkdyb3VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnRzT2ZHcm91cCA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBlbGVtZW50c0J5R3JvdXAuc2V0KGdyb3VwSWQsIGVsZW1lbnRzT2ZHcm91cCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsZW1lbnRzT2ZHcm91cC5wdXNoKGVsZW1lbnQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBlbXB0eUdyb3VwLmVsZW1lbnRzLnB1c2goZWxlbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb3JtU2VsZWN0T3B0aW9uc0dyb3VwOiBGb3JtU2VsZWN0T3B0aW9uR3JvdXBbXSA9IFtdO1xuXG4gICAgICAgIGlmIChlbXB0eUdyb3VwLmVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGZvcm1TZWxlY3RPcHRpb25zR3JvdXAucHVzaChlbXB0eUdyb3VwKTtcbiAgICAgICAgfVxuICAgICAgICBlbGVtZW50c0J5R3JvdXAuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICAgICAgZm9ybVNlbGVjdE9wdGlvbnNHcm91cC5wdXNoKHsgZ3JvdXBUaXRsZToga2V5LCBlbGVtZW50czogdmFsdWUgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmb3JtU2VsZWN0T3B0aW9uc0dyb3VwO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VmFsdWVJZGVudGl0eUZ1bmN0aW9uKCk6IChlbGVtZW50OiBhbnkpID0+IGFueSB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgdGhpcy5lbGVtZW50VmFsdWVJZGVudGl0eSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyB0aGlzLmVsZW1lbnRWYWx1ZUlkZW50aXR5XG4gICAgICAgICAgICA6IG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmZXRjaERhdGEoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5lbGVtZW50c1VybCkucGlwZShcbiAgICAgICAgICAgIG1hcChyID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50czogYW55ID0gcjtcbiAgICAgICAgICAgICAgICB0aGlzLnNldEVsZW1lbnRzKGVsZW1lbnRzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudHM7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmZXRjaEVsZW1lbnRzRnJvbVVybCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wdWxsaW5nXyA9IHRoaXMuZmV0Y2hEYXRhKCk7XG4gICAgICAgIHRoaXMucHVsbGluZ18uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25Jbml0U3ViamVjdC5uZXh0KG51bGwpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uRWxlbWVudHNDaGFuZ2UoY2hhbmdlOiBTaW1wbGVDaGFuZ2UpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZSAmJiAhY2hhbmdlLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICAvLyBXaGVuIGVsZW1lbnRzIGFyZSBkZWZlcnJlZCBmcm9tIG5nT25Jbml0IChpLmUuIHBpcGUgYXN5bmMgaXMgdXNlZClcbiAgICAgICAgICAgIHRoaXMub25FbGVtZW50c1JldHJpZXZlZCgpO1xuICAgICAgICAgICAgLy8gSGFjayB0byByZWZyZXNoIHRoZSBkaXNwbGF5IHZhbHVlXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU5nTW9kZWwodGhpcy5tb2RlbF8pO1xuICAgICAgICAgICAgLy8gIFdoZW4gZWxlbWVudHMgYXJlIGRlZmVycmVkIGZyb20gbmdPbkluaXQgKGkuZS4gcGlwZSBhc3luYyBpcyB1c2VkKVxuICAgICAgICAgICAgLy8gIE5lZWQgdG8gZmlyZSBhZ2FpbiAnZWxlbWVudHNMb2FkZWQnIG90aGVyd2lzZSBvbmx5ICdudWxsJyB2YWx1ZSBpcyBzZW50XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRzTG9hZGVkLm5leHQoY2hhbmdlLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICBjaGFuZ2UgJiZcbiAgICAgICAgICAgICFPYmplY3RIZWxwZXIuaXNFcXVhbChjaGFuZ2UuY3VycmVudFZhbHVlLCBjaGFuZ2UucHJldmlvdXNWYWx1ZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRzTG9hZGVkLm5leHQoY2hhbmdlLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uRWxlbWVudHNVcmxDaGFuZ2UoY2hhbmdlOiBTaW1wbGVDaGFuZ2UpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZSAmJiAhY2hhbmdlLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLmZldGNoRWxlbWVudHNGcm9tVXJsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uQ2hlY2tNdWx0aXBsZShcbiAgICAgICAgdmFsdWU6IHN0cmluZyxcbiAgICAgICAgdmFsdWVFbWl0dGVkOiBhbnksXG4gICAgICAgIGZpcmVNb2RlbENoYW5nZTogYm9vbGVhbiA9IHRydWVcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gW107XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb2RlbEFycmF5ID0gdGhpcy5tb2RlbCBhcyBzdHJpbmdbXTtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmZpbmRJbmRleEluTW9kZWwodmFsdWUpO1xuXG4gICAgICAgIC8vIEFkZCBlbGVtZW50IHdoZW4gaXQgZG9lcyBub3QgZXhpc3RcbiAgICAgICAgaWYgKHZhbHVlRW1pdHRlZCAmJiBpbmRleCA8IDApIHtcbiAgICAgICAgICAgIG1vZGVsQXJyYXkucHVzaCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUmVtb3ZlIGV4aXN0aW5nIGVsZW1lbnRcbiAgICAgICAgaWYgKCF2YWx1ZUVtaXR0ZWQgJiYgaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgbW9kZWxBcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFVwZGF0ZSBtb2RlbFxuICAgICAgICBpZiAoZmlyZU1vZGVsQ2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gWy4uLm1vZGVsQXJyYXldO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { HttpClientModule } from '@angular/common/http';
|
|
3
|
-
import { NgModule } from '@angular/core';
|
|
4
|
-
import { FormsModule } from '@angular/forms';
|
|
5
|
-
import { FoehnAutocompleteModule } from '../foehn-autocomplete/foehn-autocomplete.module';
|
|
6
|
-
import { FoehnHelpModalModule } from '../foehn-help-modal/foehn-help-modal.module';
|
|
7
|
-
import { FoehnIconsModule } from '../foehn-icons/foehn-icons.module';
|
|
8
|
-
import { FoehnModalModule } from '../foehn-modal/foehn-modal.module';
|
|
9
|
-
import { FoehnValidationAlertsModule } from '../foehn-validation-alerts/foehn-validation-alerts.module';
|
|
10
|
-
import { SdkDictionaryModule } from '../sdk-dictionary/sdk-dictionary.module';
|
|
11
|
-
import { FoehnCheckboxComponent } from './foehn-checkbox.component';
|
|
12
|
-
import { FoehnRadioComponent } from './foehn-radio.component';
|
|
13
|
-
import { FoehnSelectComponent } from './foehn-select.component';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
export class FoehnCheckablesModule {
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckablesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
17
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckablesModule, declarations: [FoehnCheckboxComponent,
|
|
18
|
-
FoehnRadioComponent,
|
|
19
|
-
FoehnSelectComponent], imports: [CommonModule,
|
|
20
|
-
FormsModule,
|
|
21
|
-
FoehnIconsModule,
|
|
22
|
-
HttpClientModule,
|
|
23
|
-
FoehnValidationAlertsModule,
|
|
24
|
-
FoehnAutocompleteModule,
|
|
25
|
-
SdkDictionaryModule,
|
|
26
|
-
FoehnHelpModalModule,
|
|
27
|
-
FoehnModalModule], exports: [FoehnCheckboxComponent,
|
|
28
|
-
FoehnRadioComponent,
|
|
29
|
-
FoehnSelectComponent,
|
|
30
|
-
FoehnAutocompleteModule] }); }
|
|
31
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckablesModule, imports: [CommonModule,
|
|
32
|
-
FormsModule,
|
|
33
|
-
FoehnIconsModule,
|
|
34
|
-
HttpClientModule,
|
|
35
|
-
FoehnValidationAlertsModule,
|
|
36
|
-
FoehnAutocompleteModule,
|
|
37
|
-
SdkDictionaryModule,
|
|
38
|
-
FoehnHelpModalModule,
|
|
39
|
-
FoehnModalModule, FoehnAutocompleteModule] }); }
|
|
40
|
-
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckablesModule, decorators: [{
|
|
42
|
-
type: NgModule,
|
|
43
|
-
args: [{
|
|
44
|
-
imports: [
|
|
45
|
-
CommonModule,
|
|
46
|
-
FormsModule,
|
|
47
|
-
FoehnIconsModule,
|
|
48
|
-
HttpClientModule,
|
|
49
|
-
FoehnValidationAlertsModule,
|
|
50
|
-
FoehnAutocompleteModule,
|
|
51
|
-
SdkDictionaryModule,
|
|
52
|
-
FoehnHelpModalModule,
|
|
53
|
-
FoehnModalModule
|
|
54
|
-
],
|
|
55
|
-
declarations: [
|
|
56
|
-
FoehnCheckboxComponent,
|
|
57
|
-
FoehnRadioComponent,
|
|
58
|
-
FoehnSelectComponent
|
|
59
|
-
],
|
|
60
|
-
exports: [
|
|
61
|
-
FoehnCheckboxComponent,
|
|
62
|
-
FoehnRadioComponent,
|
|
63
|
-
FoehnSelectComponent,
|
|
64
|
-
FoehnAutocompleteModule
|
|
65
|
-
]
|
|
66
|
-
}]
|
|
67
|
-
}] });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY2hlY2thYmxlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tY2hlY2thYmxlcy9mb2Vobi1jaGVja2FibGVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDeEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBMEJoRSxNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7Z0hBQXJCLHFCQUFxQixpQkFYMUIsc0JBQXNCO1lBQ3RCLG1CQUFtQjtZQUNuQixvQkFBb0IsYUFicEIsWUFBWTtZQUNaLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLDJCQUEyQjtZQUMzQix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLG9CQUFvQjtZQUNwQixnQkFBZ0IsYUFRaEIsc0JBQXNCO1lBQ3RCLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsdUJBQXVCO2dIQUdsQixxQkFBcUIsWUF0QjFCLFlBQVk7WUFDWixXQUFXO1lBQ1gsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQiwyQkFBMkI7WUFDM0IsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsZ0JBQWdCLEVBV2hCLHVCQUF1Qjs7NEZBR2xCLHFCQUFxQjtrQkF4QmpDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsMkJBQTJCO3dCQUMzQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixnQkFBZ0I7cUJBQ25CO29CQUNELFlBQVksRUFBRTt3QkFDVixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3FCQUMxQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGb2VobkF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJy4uL2ZvZWhuLWF1dG9jb21wbGV0ZS9mb2Vobi1hdXRvY29tcGxldGUubW9kdWxlJztcbmltcG9ydCB7IEZvZWhuSGVscE1vZGFsTW9kdWxlIH0gZnJvbSAnLi4vZm9laG4taGVscC1tb2RhbC9mb2Vobi1oZWxwLW1vZGFsLm1vZHVsZSc7XG5pbXBvcnQgeyBGb2Vobkljb25zTW9kdWxlIH0gZnJvbSAnLi4vZm9laG4taWNvbnMvZm9laG4taWNvbnMubW9kdWxlJztcbmltcG9ydCB7IEZvZWhuTW9kYWxNb2R1bGUgfSBmcm9tICcuLi9mb2Vobi1tb2RhbC9mb2Vobi1tb2RhbC5tb2R1bGUnO1xuaW1wb3J0IHsgRm9laG5WYWxpZGF0aW9uQWxlcnRzTW9kdWxlIH0gZnJvbSAnLi4vZm9laG4tdmFsaWRhdGlvbi1hbGVydHMvZm9laG4tdmFsaWRhdGlvbi1hbGVydHMubW9kdWxlJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlNb2R1bGUgfSBmcm9tICcuLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5tb2R1bGUnO1xuaW1wb3J0IHsgRm9laG5DaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vZm9laG4tY2hlY2tib3guY29tcG9uZW50JztcbmltcG9ydCB7IEZvZWhuUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLXJhZGlvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb2VoblNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vZm9laG4tc2VsZWN0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBGb2Vobkljb25zTW9kdWxlLFxuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgICAgICBGb2VoblZhbGlkYXRpb25BbGVydHNNb2R1bGUsXG4gICAgICAgIEZvZWhuQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBTZGtEaWN0aW9uYXJ5TW9kdWxlLFxuICAgICAgICBGb2VobkhlbHBNb2RhbE1vZHVsZSxcbiAgICAgICAgRm9laG5Nb2RhbE1vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEZvZWhuQ2hlY2tib3hDb21wb25lbnQsXG4gICAgICAgIEZvZWhuUmFkaW9Db21wb25lbnQsXG4gICAgICAgIEZvZWhuU2VsZWN0Q29tcG9uZW50XG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEZvZWhuQ2hlY2tib3hDb21wb25lbnQsXG4gICAgICAgIEZvZWhuUmFkaW9Db21wb25lbnQsXG4gICAgICAgIEZvZWhuU2VsZWN0Q29tcG9uZW50LFxuICAgICAgICBGb2VobkF1dG9jb21wbGV0ZU1vZHVsZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9laG5DaGVja2FibGVzTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef } from '@angular/core';
|
|
2
|
-
import { FoehnInputComponent } from '../foehn-input/foehn-input.component';
|
|
3
|
-
import { FoehnCheckableGroupComponent } from './foehn-checkable-group.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/forms";
|
|
7
|
-
import * as i3 from "../foehn-validation-alerts/foehn-validation-alerts.component";
|
|
8
|
-
import * as i4 from "../foehn-help-modal/foehn-help-modal.component";
|
|
9
|
-
import * as i5 from "../sdk-dictionary/sdk-dictionary.pipe";
|
|
10
|
-
export class FoehnCheckboxComponent extends FoehnCheckableGroupComponent {
|
|
11
|
-
constructor(zone) {
|
|
12
|
-
super(zone);
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
super.ngOnInit();
|
|
16
|
-
this.multiple = true;
|
|
17
|
-
}
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckboxComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnCheckboxComponent, selector: "foehn-checkbox", providers: [
|
|
20
|
-
{
|
|
21
|
-
provide: FoehnInputComponent,
|
|
22
|
-
useExisting: forwardRef(() => FoehnCheckboxComponent),
|
|
23
|
-
multi: true
|
|
24
|
-
}
|
|
25
|
-
], usesInheritance: true, ngImport: i0, template: "<div\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <fieldset class=\"form-group\" [attr.aria-describedby]=\"getDescribedBy()\">\n <div class=\"d-flex justify-content-between\">\n <legend\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 'vd-p'\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </legend>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n *ngFor=\"\n let elementsGroup of groupedElements;\n let groupIndex = index\n \"\n >\n <!-- TODO remove aria-hidden and make this accessible -->\n <div\n *ngIf=\"!!elementsGroup.groupTitle\"\n class=\"pt-2 fw-bold\"\n [attr.id]=\"'checkGroup_' + groupIndex\"\n aria-hidden=\"true\"\n >\n {{ elementsGroup.groupTitle | fromDictionary }}\n </div>\n\n <div\n *ngFor=\"let element of elementsGroup.elements; let i = index\"\n [class.disabled]=\"getDisabled(element)\"\n class=\"form-check\"\n >\n <input\n class=\"form-check-input\"\n type=\"checkbox\"\n [value]=\"getValue(element)\"\n [ngModel]=\"isElementSelected(element)\"\n (ngModelChange)=\"onCheck(element, $event)\"\n [name]=\"buildChildName('' + groupIndex + '_' + i)\"\n [attr.name]=\"buildChildName('' + groupIndex + '_' + i)\"\n [attr.id]=\"buildChildId() + groupIndex + '_' + i\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n (change)=\"handleChange(model)\"\n />\n <label\n class=\"form-check-label mb-0\"\n [for]=\"buildChildId() + groupIndex + '_' + i\"\n [innerHTML]=\"getLabel(element)\"\n ></label>\n </div>\n </div>\n </fieldset>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.FoehnValidationAlertsComponent, selector: "foehn-validation-alerts", inputs: ["component", "shouldErrorsBeLive"] }, { kind: "component", type: i4.FoehnHelpModalComponent, selector: "foehn-help-modal", inputs: ["modalContent"] }, { kind: "pipe", type: i5.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnCheckboxComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ selector: 'foehn-checkbox', providers: [
|
|
30
|
-
{
|
|
31
|
-
provide: FoehnInputComponent,
|
|
32
|
-
useExisting: forwardRef(() => FoehnCheckboxComponent),
|
|
33
|
-
multi: true
|
|
34
|
-
}
|
|
35
|
-
], template: "<div\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <fieldset class=\"form-group\" [attr.aria-describedby]=\"getDescribedBy()\">\n <div class=\"d-flex justify-content-between\">\n <legend\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 'vd-p'\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </legend>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n\n <div\n *ngFor=\"\n let elementsGroup of groupedElements;\n let groupIndex = index\n \"\n >\n <!-- TODO remove aria-hidden and make this accessible -->\n <div\n *ngIf=\"!!elementsGroup.groupTitle\"\n class=\"pt-2 fw-bold\"\n [attr.id]=\"'checkGroup_' + groupIndex\"\n aria-hidden=\"true\"\n >\n {{ elementsGroup.groupTitle | fromDictionary }}\n </div>\n\n <div\n *ngFor=\"let element of elementsGroup.elements; let i = index\"\n [class.disabled]=\"getDisabled(element)\"\n class=\"form-check\"\n >\n <input\n class=\"form-check-input\"\n type=\"checkbox\"\n [value]=\"getValue(element)\"\n [ngModel]=\"isElementSelected(element)\"\n (ngModelChange)=\"onCheck(element, $event)\"\n [name]=\"buildChildName('' + groupIndex + '_' + i)\"\n [attr.name]=\"buildChildName('' + groupIndex + '_' + i)\"\n [attr.id]=\"buildChildId() + groupIndex + '_' + i\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n (change)=\"handleChange(model)\"\n />\n <label\n class=\"form-check-label mb-0\"\n [for]=\"buildChildId() + groupIndex + '_' + i\"\n [innerHTML]=\"getLabel(element)\"\n ></label>\n </div>\n </div>\n </fieldset>\n</div>\n" }]
|
|
36
|
-
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNoZWNrYWJsZXMvZm9laG4tY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNoZWNrYWJsZXMvZm9laG4tY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBRXRFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBYWpGLE1BQU0sT0FBTyxzQkFDVCxTQUFRLDRCQUE0QjtJQUdwQyxZQUFZLElBQVk7UUFDcEIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3pCLENBQUM7K0dBWFEsc0JBQXNCO21HQUF0QixzQkFBc0IseUNBUnBCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLG1CQUFtQjtnQkFDNUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztnQkFDckQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKLGlEQ2RMLGduR0FtRkE7OzRGRG5FYSxzQkFBc0I7a0JBWGxDLFNBQVM7K0JBQ0ksZ0JBQWdCLGFBRWY7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLENBQUM7NEJBQ3JELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBOZ1pvbmUsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGb2VobklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9laG4taW5wdXQvZm9laG4taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvZWhuQ2hlY2thYmxlR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWNoZWNrYWJsZS1ncm91cC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZvZWhuLWNoZWNrYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9laG4tY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGb2VobklucHV0Q29tcG9uZW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRm9laG5DaGVja2JveENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb2VobkNoZWNrYm94Q29tcG9uZW50XG4gICAgZXh0ZW5kcyBGb2VobkNoZWNrYWJsZUdyb3VwQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgICBjb25zdHJ1Y3Rvcih6b25lOiBOZ1pvbmUpIHtcbiAgICAgICAgc3VwZXIoem9uZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMubXVsdGlwbGUgPSB0cnVlO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBbY2xhc3MudmQtZm9ybS1ncm91cC1kYW5nZXJdPVwiaGFzRXJyb3JzVG9EaXNwbGF5KClcIlxuICAgIFthdHRyLmlkXT1cImJ1aWxkSWQoJ0NvbnRhaW5lcicpXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbj5cbiAgICA8ZmllbGRzZXQgY2xhc3M9XCJmb3JtLWdyb3VwXCIgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJnZXREZXNjcmliZWRCeSgpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cbiAgICAgICAgICAgIDxsZWdlbmRcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiEhbGFiZWxcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImlzTGFiZWxTck9ubHkgPyAndmlzdWFsbHktaGlkZGVuJyA6ICd2ZC1wJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJsYWJlbFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXF1aXJlZCAmJiAhaGlkZU5vdFJlcXVpcmVkRXh0cmFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyAnZm9laG4taW5wdXQub3B0aW9uYWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2xlZ2VuZD5cbiAgICAgICAgICAgIDxmb2Vobi1oZWxwLW1vZGFsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJyZW1vdmVQYWRkaW5nQnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiEhaGVscE1vZGFsXCJcbiAgICAgICAgICAgICAgICBbbW9kYWxDb250ZW50XT1cImhlbHBNb2RhbFwiXG4gICAgICAgICAgICA+PC9mb2Vobi1oZWxwLW1vZGFsPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8Zm9laG4tdmFsaWRhdGlvbi1hbGVydHMgW2NvbXBvbmVudF09XCJ0aGlzXCI+PC9mb2Vobi12YWxpZGF0aW9uLWFsZXJ0cz5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWVsZW1lbnRzXCI+Q2hhcmdlbWVudC4uLjwvZGl2PlxuXG4gICAgICAgIDxzbWFsbFxuICAgICAgICAgICAgKm5nSWY9XCJoZWxwVGV4dFwiXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJidWlsZENoaWxkSWQoKSArICdIZWxwJ1wiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tdGV4dCB0ZXh0LXNlY29uZGFyeVwiXG4gICAgICAgICAgICBbaW5uZXJIVE1MXT1cImhlbHBUZXh0XCJcbiAgICAgICAgPjwvc21hbGw+XG5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgIGxldCBlbGVtZW50c0dyb3VwIG9mIGdyb3VwZWRFbGVtZW50cztcbiAgICAgICAgICAgICAgICBsZXQgZ3JvdXBJbmRleCA9IGluZGV4XG4gICAgICAgICAgICBcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8IS0tIFRPRE8gcmVtb3ZlIGFyaWEtaGlkZGVuIGFuZCBtYWtlIHRoaXMgYWNjZXNzaWJsZSAtLT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiEhZWxlbWVudHNHcm91cC5ncm91cFRpdGxlXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInB0LTIgZnctYm9sZFwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiJ2NoZWNrR3JvdXBfJyArIGdyb3VwSW5kZXhcIlxuICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgZWxlbWVudHNHcm91cC5ncm91cFRpdGxlIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGVsZW1lbnQgb2YgZWxlbWVudHNHcm91cC5lbGVtZW50czsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImdldERpc2FibGVkKGVsZW1lbnQpXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2tcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZ2V0VmFsdWUoZWxlbWVudClcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJpc0VsZW1lbnRTZWxlY3RlZChlbGVtZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hlY2soZWxlbWVudCwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImJ1aWxkQ2hpbGROYW1lKCcnICsgZ3JvdXBJbmRleCArICdfJyArIGkpXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIubmFtZV09XCJidWlsZENoaWxkTmFtZSgnJyArIGdyb3VwSW5kZXggKyAnXycgKyBpKVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImJ1aWxkQ2hpbGRJZCgpICsgZ3JvdXBJbmRleCArICdfJyArIGlcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwiaGFzRXJyb3JzVG9EaXNwbGF5KCkgfHwgbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImdldERpc2FibGVkKGVsZW1lbnQpID8gJ2Rpc2FibGVkJyA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiZ2V0QXV0b0NvbXBsZXRlKClcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZShtb2RlbClcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBtYi0wXCJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcl09XCJidWlsZENoaWxkSWQoKSArIGdyb3VwSW5kZXggKyAnXycgKyBpXCJcbiAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJnZXRMYWJlbChlbGVtZW50KVwiXG4gICAgICAgICAgICAgICAgPjwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9maWVsZHNldD5cbjwvZGl2PlxuIl19
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { Component, forwardRef } from '@angular/core';
|
|
2
|
-
import { FoehnInputComponent } from '../foehn-input/foehn-input.component';
|
|
3
|
-
import { FoehnCheckableGroupComponent } from './foehn-checkable-group.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/forms";
|
|
7
|
-
import * as i3 from "../foehn-validation-alerts/foehn-validation-alerts.component";
|
|
8
|
-
import * as i4 from "../foehn-help-modal/foehn-help-modal.component";
|
|
9
|
-
import * as i5 from "../sdk-dictionary/sdk-dictionary.pipe";
|
|
10
|
-
export class FoehnRadioComponent extends FoehnCheckableGroupComponent {
|
|
11
|
-
constructor(zone) {
|
|
12
|
-
super(zone);
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
super.ngOnInit();
|
|
16
|
-
// Re-assign the model once the @Input have been set. This is mandatory
|
|
17
|
-
// otherwise the component doesn't display the initial value when
|
|
18
|
-
// used with an object as the value.
|
|
19
|
-
this.onModelChange(this.model);
|
|
20
|
-
}
|
|
21
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
22
|
-
onModelChange(value) {
|
|
23
|
-
this.inputValue = this.getValueOrObject(value);
|
|
24
|
-
super.onModelChange(value);
|
|
25
|
-
}
|
|
26
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
-
getValueOrObject(element) {
|
|
28
|
-
if (typeof element === 'undefined') {
|
|
29
|
-
return element;
|
|
30
|
-
}
|
|
31
|
-
// If the element is already a string or a number, it's probably the one we want.
|
|
32
|
-
if (typeof element === 'string' || typeof element === 'number') {
|
|
33
|
-
return element.toString();
|
|
34
|
-
}
|
|
35
|
-
// Nested object support.
|
|
36
|
-
if (typeof this.elementValue === 'function' &&
|
|
37
|
-
typeof this.elementValueIdentity === 'function') {
|
|
38
|
-
// In this case, we need to use the identify function
|
|
39
|
-
// as we can't store the actual object in the "value" HTML attribute
|
|
40
|
-
// on the "option" element.
|
|
41
|
-
return this.elementValueIdentity(this.elementValue(element));
|
|
42
|
-
}
|
|
43
|
-
return this.getValue(element);
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnRadioComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnRadioComponent, selector: "foehn-radio", providers: [
|
|
47
|
-
{
|
|
48
|
-
provide: FoehnInputComponent,
|
|
49
|
-
useExisting: forwardRef(() => FoehnRadioComponent),
|
|
50
|
-
multi: true
|
|
51
|
-
}
|
|
52
|
-
], usesInheritance: true, ngImport: i0, template: "<div\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <fieldset class=\"form-group\" [attr.aria-describedby]=\"getDescribedBy()\">\n <div class=\"d-flex justify-content-between\">\n <legend\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 'vd-p'\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </legend>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n <div\n *ngFor=\"\n let elementsGroup of groupedElements;\n let groupIndex = index\n \"\n >\n <!-- TODO remove aria-hidden and make this accessible -->\n <div\n *ngIf=\"!!elementsGroup.groupTitle\"\n class=\"pt-2 fw-bold\"\n [attr.id]=\"'checkGroup_' + groupIndex\"\n aria-hidden=\"true\"\n >\n {{ elementsGroup.groupTitle | fromDictionary }}\n </div>\n <div\n *ngFor=\"let element of elementsGroup.elements; let i = index\"\n [class.disabled]=\"getDisabled(element)\"\n class=\"form-check\"\n >\n <input\n class=\"form-check-input\"\n type=\"radio\"\n [value]=\"getValueOrObject(element)\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"onCheck(element, $event)\"\n [name]=\"buildChildName()\"\n [attr.name]=\"buildChildName()\"\n [attr.id]=\"buildChildId() + groupIndex + '_' + i\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n (change)=\"handleChange(getValue(element))\"\n />\n <label\n class=\"form-check-label mb-0\"\n [for]=\"buildChildId() + groupIndex + '_' + i\"\n [innerHTML]=\"getLabel(element)\"\n ></label>\n </div>\n </div>\n </fieldset>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.FoehnValidationAlertsComponent, selector: "foehn-validation-alerts", inputs: ["component", "shouldErrorsBeLive"] }, { kind: "component", type: i4.FoehnHelpModalComponent, selector: "foehn-help-modal", inputs: ["modalContent"] }, { kind: "pipe", type: i5.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
53
|
-
}
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnRadioComponent, decorators: [{
|
|
55
|
-
type: Component,
|
|
56
|
-
args: [{ selector: 'foehn-radio', providers: [
|
|
57
|
-
{
|
|
58
|
-
provide: FoehnInputComponent,
|
|
59
|
-
useExisting: forwardRef(() => FoehnRadioComponent),
|
|
60
|
-
multi: true
|
|
61
|
-
}
|
|
62
|
-
], template: "<div\n [class.vd-form-group-danger]=\"hasErrorsToDisplay()\"\n [attr.id]=\"buildId('Container')\"\n tabindex=\"-1\"\n>\n <fieldset class=\"form-group\" [attr.aria-describedby]=\"getDescribedBy()\">\n <div class=\"d-flex justify-content-between\">\n <legend\n *ngIf=\"!!label\"\n [ngClass]=\"isLabelSrOnly ? 'visually-hidden' : 'vd-p'\"\n >\n <span [innerHTML]=\"label\"></span>\n <span\n *ngIf=\"!required && !hideNotRequiredExtraLabel\"\n aria-hidden=\"true\"\n >\n {{ 'foehn-input.optional' | fromDictionary }}\n </span>\n </legend>\n <foehn-help-modal\n class=\"removePaddingButton\"\n *ngIf=\"!!helpModal\"\n [modalContent]=\"helpModal\"\n ></foehn-help-modal>\n </div>\n\n <foehn-validation-alerts [component]=\"this\"></foehn-validation-alerts>\n\n <div *ngIf=\"!elements\">Chargement...</div>\n\n <small\n *ngIf=\"helpText\"\n [attr.id]=\"buildChildId() + 'Help'\"\n class=\"form-text text-secondary\"\n [innerHTML]=\"helpText\"\n ></small>\n\n <ng-content></ng-content>\n <div\n *ngFor=\"\n let elementsGroup of groupedElements;\n let groupIndex = index\n \"\n >\n <!-- TODO remove aria-hidden and make this accessible -->\n <div\n *ngIf=\"!!elementsGroup.groupTitle\"\n class=\"pt-2 fw-bold\"\n [attr.id]=\"'checkGroup_' + groupIndex\"\n aria-hidden=\"true\"\n >\n {{ elementsGroup.groupTitle | fromDictionary }}\n </div>\n <div\n *ngFor=\"let element of elementsGroup.elements; let i = index\"\n [class.disabled]=\"getDisabled(element)\"\n class=\"form-check\"\n >\n <input\n class=\"form-check-input\"\n type=\"radio\"\n [value]=\"getValueOrObject(element)\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"onCheck(element, $event)\"\n [name]=\"buildChildName()\"\n [attr.name]=\"buildChildName()\"\n [attr.id]=\"buildChildId() + groupIndex + '_' + i\"\n [attr.aria-invalid]=\"hasErrorsToDisplay() || null\"\n [attr.disabled]=\"getDisabled(element) ? 'disabled' : null\"\n [attr.autocomplete]=\"getAutoComplete()\"\n (change)=\"handleChange(getValue(element))\"\n />\n <label\n class=\"form-check-label mb-0\"\n [for]=\"buildChildId() + groupIndex + '_' + i\"\n [innerHTML]=\"getLabel(element)\"\n ></label>\n </div>\n </div>\n </fieldset>\n</div>\n" }]
|
|
63
|
-
}], ctorParameters: () => [{ type: i0.NgZone }] });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tcmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNoZWNrYWJsZXMvZm9laG4tcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLWNoZWNrYWJsZXMvZm9laG4tcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBRXRFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBYWpGLE1BQU0sT0FBTyxtQkFDVCxTQUFRLDRCQUE0QjtJQUtwQyxZQUFZLElBQVk7UUFDcEIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLHVFQUF1RTtRQUN2RSxpRUFBaUU7UUFDakUsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCw4REFBOEQ7SUFDOUQsYUFBYSxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0MsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsOERBQThEO0lBQzlELGdCQUFnQixDQUFDLE9BQVk7UUFDekIsSUFBSSxPQUFPLE9BQU8sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNqQyxPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDO1FBRUQsaUZBQWlGO1FBQ2pGLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzdELE9BQU8sT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlCLENBQUM7UUFFRCx5QkFBeUI7UUFDekIsSUFDSSxPQUFPLElBQUksQ0FBQyxZQUFZLEtBQUssVUFBVTtZQUN2QyxPQUFPLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxVQUFVLEVBQ2pELENBQUM7WUFDQyxxREFBcUQ7WUFDckQsb0VBQW9FO1lBQ3BFLDJCQUEyQjtZQUMzQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDOytHQWhEUSxtQkFBbUI7bUdBQW5CLG1CQUFtQixzQ0FSakI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsbUJBQW1CO2dCQUM1QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0osaURDZEwsMmpHQWlGQTs7NEZEakVhLG1CQUFtQjtrQkFYL0IsU0FBUzsrQkFDSSxhQUFhLGFBRVo7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBOZ1pvbmUsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGb2VobklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9laG4taW5wdXQvZm9laG4taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvZWhuQ2hlY2thYmxlR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWNoZWNrYWJsZS1ncm91cC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZvZWhuLXJhZGlvJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9laG4tcmFkaW8uY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGb2VobklucHV0Q29tcG9uZW50LFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRm9laG5SYWRpb0NvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb2VoblJhZGlvQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBGb2VobkNoZWNrYWJsZUdyb3VwQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgICBpbnB1dFZhbHVlOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3Rvcih6b25lOiBOZ1pvbmUpIHtcbiAgICAgICAgc3VwZXIoem9uZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgLy8gUmUtYXNzaWduIHRoZSBtb2RlbCBvbmNlIHRoZSBASW5wdXQgaGF2ZSBiZWVuIHNldC4gVGhpcyBpcyBtYW5kYXRvcnlcbiAgICAgICAgLy8gb3RoZXJ3aXNlIHRoZSBjb21wb25lbnQgZG9lc24ndCBkaXNwbGF5IHRoZSBpbml0aWFsIHZhbHVlIHdoZW5cbiAgICAgICAgLy8gdXNlZCB3aXRoIGFuIG9iamVjdCBhcyB0aGUgdmFsdWUuXG4gICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLm1vZGVsKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmdldFZhbHVlT3JPYmplY3QodmFsdWUpO1xuICAgICAgICBzdXBlci5vbk1vZGVsQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGdldFZhbHVlT3JPYmplY3QoZWxlbWVudDogYW55KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHR5cGVvZiBlbGVtZW50ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiB0aGUgZWxlbWVudCBpcyBhbHJlYWR5IGEgc3RyaW5nIG9yIGEgbnVtYmVyLCBpdCdzIHByb2JhYmx5IHRoZSBvbmUgd2Ugd2FudC5cbiAgICAgICAgaWYgKHR5cGVvZiBlbGVtZW50ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgZWxlbWVudCA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIHJldHVybiBlbGVtZW50LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOZXN0ZWQgb2JqZWN0IHN1cHBvcnQuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLmVsZW1lbnRWYWx1ZSA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgICAgICAgdHlwZW9mIHRoaXMuZWxlbWVudFZhbHVlSWRlbnRpdHkgPT09ICdmdW5jdGlvbidcbiAgICAgICAgKSB7XG4gICAgICAgICAgICAvLyBJbiB0aGlzIGNhc2UsIHdlIG5lZWQgdG8gdXNlIHRoZSBpZGVudGlmeSBmdW5jdGlvblxuICAgICAgICAgICAgLy8gYXMgd2UgY2FuJ3Qgc3RvcmUgdGhlIGFjdHVhbCBvYmplY3QgaW4gdGhlIFwidmFsdWVcIiBIVE1MIGF0dHJpYnV0ZVxuICAgICAgICAgICAgLy8gb24gdGhlIFwib3B0aW9uXCIgZWxlbWVudC5cbiAgICAgICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnRWYWx1ZUlkZW50aXR5KHRoaXMuZWxlbWVudFZhbHVlKGVsZW1lbnQpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbHVlKGVsZW1lbnQpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBbY2xhc3MudmQtZm9ybS1ncm91cC1kYW5nZXJdPVwiaGFzRXJyb3JzVG9EaXNwbGF5KClcIlxuICAgIFthdHRyLmlkXT1cImJ1aWxkSWQoJ0NvbnRhaW5lcicpXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbj5cbiAgICA8ZmllbGRzZXQgY2xhc3M9XCJmb3JtLWdyb3VwXCIgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJnZXREZXNjcmliZWRCeSgpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cbiAgICAgICAgICAgIDxsZWdlbmRcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiEhbGFiZWxcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImlzTGFiZWxTck9ubHkgPyAndmlzdWFsbHktaGlkZGVuJyA6ICd2ZC1wJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJsYWJlbFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXF1aXJlZCAmJiAhaGlkZU5vdFJlcXVpcmVkRXh0cmFMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyAnZm9laG4taW5wdXQub3B0aW9uYWwnIHwgZnJvbURpY3Rpb25hcnkgfX1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2xlZ2VuZD5cbiAgICAgICAgICAgIDxmb2Vobi1oZWxwLW1vZGFsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJyZW1vdmVQYWRkaW5nQnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiEhaGVscE1vZGFsXCJcbiAgICAgICAgICAgICAgICBbbW9kYWxDb250ZW50XT1cImhlbHBNb2RhbFwiXG4gICAgICAgICAgICA+PC9mb2Vobi1oZWxwLW1vZGFsPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8Zm9laG4tdmFsaWRhdGlvbi1hbGVydHMgW2NvbXBvbmVudF09XCJ0aGlzXCI+PC9mb2Vobi12YWxpZGF0aW9uLWFsZXJ0cz5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWVsZW1lbnRzXCI+Q2hhcmdlbWVudC4uLjwvZGl2PlxuXG4gICAgICAgIDxzbWFsbFxuICAgICAgICAgICAgKm5nSWY9XCJoZWxwVGV4dFwiXG4gICAgICAgICAgICBbYXR0ci5pZF09XCJidWlsZENoaWxkSWQoKSArICdIZWxwJ1wiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm0tdGV4dCB0ZXh0LXNlY29uZGFyeVwiXG4gICAgICAgICAgICBbaW5uZXJIVE1MXT1cImhlbHBUZXh0XCJcbiAgICAgICAgPjwvc21hbGw+XG5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgICAgICBsZXQgZWxlbWVudHNHcm91cCBvZiBncm91cGVkRWxlbWVudHM7XG4gICAgICAgICAgICAgICAgbGV0IGdyb3VwSW5kZXggPSBpbmRleFxuICAgICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPCEtLSBUT0RPIHJlbW92ZSBhcmlhLWhpZGRlbiBhbmQgbWFrZSB0aGlzIGFjY2Vzc2libGUgLS0+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhIWVsZW1lbnRzR3JvdXAuZ3JvdXBUaXRsZVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJwdC0yIGZ3LWJvbGRcIlxuICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIidjaGVja0dyb3VwXycgKyBncm91cEluZGV4XCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGVsZW1lbnRzR3JvdXAuZ3JvdXBUaXRsZSB8IGZyb21EaWN0aW9uYXJ5IH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiBlbGVtZW50c0dyb3VwLmVsZW1lbnRzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZ2V0RGlzYWJsZWQoZWxlbWVudClcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVja1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJnZXRWYWx1ZU9yT2JqZWN0KGVsZW1lbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hlY2soZWxlbWVudCwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImJ1aWxkQ2hpbGROYW1lKClcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cImJ1aWxkQ2hpbGROYW1lKClcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJidWlsZENoaWxkSWQoKSArIGdyb3VwSW5kZXggKyAnXycgKyBpXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cImhhc0Vycm9yc1RvRGlzcGxheSgpIHx8IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJnZXREaXNhYmxlZChlbGVtZW50KSA/ICdkaXNhYmxlZCcgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXV0b2NvbXBsZXRlXT1cImdldEF1dG9Db21wbGV0ZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoZ2V0VmFsdWUoZWxlbWVudCkpXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbWItMFwiXG4gICAgICAgICAgICAgICAgICAgIFtmb3JdPVwiYnVpbGRDaGlsZElkKCkgKyBncm91cEluZGV4ICsgJ18nICsgaVwiXG4gICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiZ2V0TGFiZWwoZWxlbWVudClcIlxuICAgICAgICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZmllbGRzZXQ+XG48L2Rpdj5cbiJdfQ==
|