@sebgroup/green-angular 6.8.0 → 7.0.0-rc.20251125130141487
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/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs +13 -13
- package/fesm2022/sebgroup-green-angular-src-lib-accordion.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-lib-badge.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-button.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-lib-button.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs +17 -15
- package/fesm2022/sebgroup-green-angular-src-lib-cell-table.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-context-menu.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-datepicker.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs +17 -15
- package/fesm2022/sebgroup-green-angular-src-lib-dropdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs +30 -28
- package/fesm2022/sebgroup-green-angular-src-lib-modal.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-pagination.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-progress-circle.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-segmented-control.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +43 -38
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-slider.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-lib-sortable-list.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs +7 -7
- package/fesm2022/sebgroup-green-angular-src-v-angular-account-number.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-alert.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +13 -10
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +8 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +3 -3
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs +52 -43
- package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs +19 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-drag-drop.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +32 -32
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +19 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +13 -11
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +22 -21
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-pagination.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +16 -16
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +8 -7
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs +28 -24
- package/fesm2022/sebgroup-green-angular-src-v-angular-table.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs +13 -12
- package/fesm2022/sebgroup-green-angular-src-v-angular-tabs.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +9 -9
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs +12 -12
- package/fesm2022/sebgroup-green-angular-src-v-angular-toast.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +9 -8
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-v-angular.mjs +347 -317
- package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular.mjs +201 -188
- package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
- package/package.json +8 -94
- package/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
- package/src/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
- package/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.d.ts +1 -1
- package/v-angular/drag-drop/drag-drop.component.d.ts +3 -3
- package/esm2022/index.mjs +0 -18
- package/esm2022/lib/accordion/accordion-list-item.component.mjs +0 -50
- package/esm2022/lib/accordion/accordion.component.mjs +0 -77
- package/esm2022/lib/accordion/accordion.module.mjs +0 -24
- package/esm2022/lib/accordion/index.mjs +0 -4
- package/esm2022/lib/badge/badge.component.mjs +0 -85
- package/esm2022/lib/badge/badge.module.mjs +0 -23
- package/esm2022/lib/badge/index.mjs +0 -3
- package/esm2022/lib/button/button.component.mjs +0 -28
- package/esm2022/lib/button/button.module.mjs +0 -18
- package/esm2022/lib/button/index.mjs +0 -3
- package/esm2022/lib/cell-table/cell-table-item.component.mjs +0 -91
- package/esm2022/lib/cell-table/cell-table.component.mjs +0 -97
- package/esm2022/lib/cell-table/cell-table.module.mjs +0 -26
- package/esm2022/lib/cell-table/cell-table.types.mjs +0 -7
- package/esm2022/lib/cell-table/cell-underline.directive.mjs +0 -55
- package/esm2022/lib/cell-table/index.mjs +0 -4
- package/esm2022/lib/context-menu/context-menu.component.mjs +0 -79
- package/esm2022/lib/context-menu/context-menu.module.mjs +0 -37
- package/esm2022/lib/context-menu/index.mjs +0 -3
- package/esm2022/lib/datepicker/datepicker.component.mjs +0 -144
- package/esm2022/lib/datepicker/datepicker.module.mjs +0 -37
- package/esm2022/lib/datepicker/index.mjs +0 -3
- package/esm2022/lib/dropdown/dropdown-button.directive.mjs +0 -16
- package/esm2022/lib/dropdown/dropdown-option.directive.mjs +0 -16
- package/esm2022/lib/dropdown/dropdown.component.mjs +0 -248
- package/esm2022/lib/dropdown/dropdown.module.mjs +0 -51
- package/esm2022/lib/dropdown/index.mjs +0 -5
- package/esm2022/lib/green-angular.module.mjs +0 -72
- package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
- package/esm2022/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
- package/esm2022/lib/in-page-wizard/index.mjs +0 -3
- package/esm2022/lib/modal/index.mjs +0 -5
- package/esm2022/lib/modal/modal-footer.directive.mjs +0 -16
- package/esm2022/lib/modal/modal-header.directive.mjs +0 -16
- package/esm2022/lib/modal/modal.component.mjs +0 -317
- package/esm2022/lib/modal/modal.module.mjs +0 -44
- package/esm2022/lib/pagination/index.mjs +0 -3
- package/esm2022/lib/pagination/pagination.component.mjs +0 -175
- package/esm2022/lib/pagination/pagination.module.mjs +0 -18
- package/esm2022/lib/progress-circle/index.mjs +0 -3
- package/esm2022/lib/progress-circle/progress-circle.component.mjs +0 -41
- package/esm2022/lib/progress-circle/progress-circle.module.mjs +0 -18
- package/esm2022/lib/segmented-control/index.mjs +0 -3
- package/esm2022/lib/segmented-control/segmented-control.component.mjs +0 -38
- package/esm2022/lib/segmented-control/segmented-control.module.mjs +0 -22
- package/esm2022/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
- package/esm2022/lib/shared/core-control/core-control.directive.mjs +0 -94
- package/esm2022/lib/shared/core-control/core-control.module.mjs +0 -20
- package/esm2022/lib/shared/core-control/index.mjs +0 -4
- package/esm2022/lib/shared/core-element/core-element.directive.mjs +0 -34
- package/esm2022/lib/shared/core-element/core-element.module.mjs +0 -18
- package/esm2022/lib/shared/core-element/index.mjs +0 -3
- package/esm2022/lib/shared/core-renderer/core-renderer.mjs +0 -152
- package/esm2022/lib/shared/core-renderer/index.mjs +0 -2
- package/esm2022/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
- package/esm2022/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
- package/esm2022/lib/shared/core-router-link/index.mjs +0 -3
- package/esm2022/lib/shared/index.mjs +0 -7
- package/esm2022/lib/shared/on-scroll.directive.mjs +0 -47
- package/esm2022/lib/shared/scope-resolver.mjs +0 -9
- package/esm2022/lib/shared/shared.module.mjs +0 -19
- package/esm2022/lib/slider/index.mjs +0 -3
- package/esm2022/lib/slider/slider.component.mjs +0 -116
- package/esm2022/lib/slider/slider.module.mjs +0 -19
- package/esm2022/lib/sortable-list/index.mjs +0 -3
- package/esm2022/lib/sortable-list/sortable-list.component.mjs +0 -181
- package/esm2022/lib/sortable-list/sortable-list.module.mjs +0 -20
- package/esm2022/sebgroup-green-angular.mjs +0 -5
- package/esm2022/src/lib/accordion/accordion-list-item.component.mjs +0 -50
- package/esm2022/src/lib/accordion/accordion.component.mjs +0 -77
- package/esm2022/src/lib/accordion/accordion.module.mjs +0 -24
- package/esm2022/src/lib/accordion/index.mjs +0 -4
- package/esm2022/src/lib/accordion/sebgroup-green-angular-src-lib-accordion.mjs +0 -5
- package/esm2022/src/lib/badge/badge.component.mjs +0 -85
- package/esm2022/src/lib/badge/badge.module.mjs +0 -23
- package/esm2022/src/lib/badge/index.mjs +0 -3
- package/esm2022/src/lib/badge/sebgroup-green-angular-src-lib-badge.mjs +0 -5
- package/esm2022/src/lib/button/button.component.mjs +0 -28
- package/esm2022/src/lib/button/button.module.mjs +0 -18
- package/esm2022/src/lib/button/index.mjs +0 -3
- package/esm2022/src/lib/button/sebgroup-green-angular-src-lib-button.mjs +0 -5
- package/esm2022/src/lib/cell-table/cell-table-item.component.mjs +0 -91
- package/esm2022/src/lib/cell-table/cell-table.component.mjs +0 -97
- package/esm2022/src/lib/cell-table/cell-table.module.mjs +0 -26
- package/esm2022/src/lib/cell-table/cell-table.types.mjs +0 -7
- package/esm2022/src/lib/cell-table/cell-underline.directive.mjs +0 -55
- package/esm2022/src/lib/cell-table/index.mjs +0 -4
- package/esm2022/src/lib/cell-table/sebgroup-green-angular-src-lib-cell-table.mjs +0 -5
- package/esm2022/src/lib/context-menu/context-menu.component.mjs +0 -79
- package/esm2022/src/lib/context-menu/context-menu.module.mjs +0 -37
- package/esm2022/src/lib/context-menu/index.mjs +0 -3
- package/esm2022/src/lib/context-menu/sebgroup-green-angular-src-lib-context-menu.mjs +0 -5
- package/esm2022/src/lib/datepicker/datepicker.component.mjs +0 -144
- package/esm2022/src/lib/datepicker/datepicker.module.mjs +0 -37
- package/esm2022/src/lib/datepicker/index.mjs +0 -3
- package/esm2022/src/lib/datepicker/sebgroup-green-angular-src-lib-datepicker.mjs +0 -5
- package/esm2022/src/lib/dropdown/dropdown-button.directive.mjs +0 -16
- package/esm2022/src/lib/dropdown/dropdown-option.directive.mjs +0 -16
- package/esm2022/src/lib/dropdown/dropdown.component.mjs +0 -248
- package/esm2022/src/lib/dropdown/dropdown.module.mjs +0 -51
- package/esm2022/src/lib/dropdown/index.mjs +0 -5
- package/esm2022/src/lib/dropdown/sebgroup-green-angular-src-lib-dropdown.mjs +0 -5
- package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +0 -61
- package/esm2022/src/lib/in-page-wizard/in-page-wizard.module.mjs +0 -18
- package/esm2022/src/lib/in-page-wizard/index.mjs +0 -3
- package/esm2022/src/lib/in-page-wizard/sebgroup-green-angular-src-lib-in-page-wizard.mjs +0 -5
- package/esm2022/src/lib/modal/index.mjs +0 -5
- package/esm2022/src/lib/modal/modal-footer.directive.mjs +0 -16
- package/esm2022/src/lib/modal/modal-header.directive.mjs +0 -16
- package/esm2022/src/lib/modal/modal.component.mjs +0 -317
- package/esm2022/src/lib/modal/modal.module.mjs +0 -44
- package/esm2022/src/lib/modal/sebgroup-green-angular-src-lib-modal.mjs +0 -5
- package/esm2022/src/lib/pagination/index.mjs +0 -3
- package/esm2022/src/lib/pagination/pagination.component.mjs +0 -175
- package/esm2022/src/lib/pagination/pagination.module.mjs +0 -18
- package/esm2022/src/lib/pagination/sebgroup-green-angular-src-lib-pagination.mjs +0 -5
- package/esm2022/src/lib/progress-circle/index.mjs +0 -3
- package/esm2022/src/lib/progress-circle/progress-circle.component.mjs +0 -41
- package/esm2022/src/lib/progress-circle/progress-circle.module.mjs +0 -18
- package/esm2022/src/lib/progress-circle/sebgroup-green-angular-src-lib-progress-circle.mjs +0 -5
- package/esm2022/src/lib/segmented-control/index.mjs +0 -3
- package/esm2022/src/lib/segmented-control/sebgroup-green-angular-src-lib-segmented-control.mjs +0 -5
- package/esm2022/src/lib/segmented-control/segmented-control.component.mjs +0 -38
- package/esm2022/src/lib/segmented-control/segmented-control.module.mjs +0 -22
- package/esm2022/src/lib/shared/core-control/core-checkbox.directive.mjs +0 -39
- package/esm2022/src/lib/shared/core-control/core-control.directive.mjs +0 -94
- package/esm2022/src/lib/shared/core-control/core-control.module.mjs +0 -20
- package/esm2022/src/lib/shared/core-control/index.mjs +0 -4
- package/esm2022/src/lib/shared/core-element/core-element.directive.mjs +0 -34
- package/esm2022/src/lib/shared/core-element/core-element.module.mjs +0 -18
- package/esm2022/src/lib/shared/core-element/index.mjs +0 -3
- package/esm2022/src/lib/shared/core-renderer/core-renderer.mjs +0 -152
- package/esm2022/src/lib/shared/core-renderer/index.mjs +0 -2
- package/esm2022/src/lib/shared/core-router-link/core-router-link.directive.mjs +0 -53
- package/esm2022/src/lib/shared/core-router-link/core-router-link.module.mjs +0 -16
- package/esm2022/src/lib/shared/core-router-link/index.mjs +0 -3
- package/esm2022/src/lib/shared/index.mjs +0 -7
- package/esm2022/src/lib/shared/on-scroll.directive.mjs +0 -47
- package/esm2022/src/lib/shared/scope-resolver.mjs +0 -9
- package/esm2022/src/lib/shared/sebgroup-green-angular-src-lib-shared.mjs +0 -5
- package/esm2022/src/lib/shared/shared.module.mjs +0 -19
- package/esm2022/src/lib/slider/index.mjs +0 -3
- package/esm2022/src/lib/slider/sebgroup-green-angular-src-lib-slider.mjs +0 -5
- package/esm2022/src/lib/slider/slider.component.mjs +0 -116
- package/esm2022/src/lib/slider/slider.module.mjs +0 -19
- package/esm2022/src/lib/sortable-list/index.mjs +0 -3
- package/esm2022/src/lib/sortable-list/sebgroup-green-angular-src-lib-sortable-list.mjs +0 -5
- package/esm2022/src/lib/sortable-list/sortable-list.component.mjs +0 -181
- package/esm2022/src/lib/sortable-list/sortable-list.module.mjs +0 -20
- package/esm2022/src/v-angular/account-number/account-number.module.mjs +0 -18
- package/esm2022/src/v-angular/account-number/account-number.pipe.mjs +0 -55
- package/esm2022/src/v-angular/account-number/index.mjs +0 -3
- package/esm2022/src/v-angular/account-number/sebgroup-green-angular-src-v-angular-account-number.mjs +0 -5
- package/esm2022/src/v-angular/alert/alert.component.mjs +0 -49
- package/esm2022/src/v-angular/alert/alert.models.mjs +0 -8
- package/esm2022/src/v-angular/alert/alert.module.mjs +0 -18
- package/esm2022/src/v-angular/alert/index.mjs +0 -4
- package/esm2022/src/v-angular/alert/sebgroup-green-angular-src-v-angular-alert.mjs +0 -5
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
- package/esm2022/src/v-angular/base-control-value-accessor/index.mjs +0 -3
- package/esm2022/src/v-angular/base-control-value-accessor/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +0 -5
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
- package/esm2022/src/v-angular/breadcrumbs/index.mjs +0 -3
- package/esm2022/src/v-angular/breadcrumbs/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +0 -5
- package/esm2022/src/v-angular/button/button.component.mjs +0 -108
- package/esm2022/src/v-angular/button/button.module.mjs +0 -20
- package/esm2022/src/v-angular/button/index.mjs +0 -3
- package/esm2022/src/v-angular/button/sebgroup-green-angular-src-v-angular-button.mjs +0 -5
- package/esm2022/src/v-angular/card/card.component.mjs +0 -11
- package/esm2022/src/v-angular/card/card.module.mjs +0 -18
- package/esm2022/src/v-angular/card/index.mjs +0 -3
- package/esm2022/src/v-angular/card/sebgroup-green-angular-src-v-angular-card.mjs +0 -5
- package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
- package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +0 -18
- package/esm2022/src/v-angular/character-countdown/index.mjs +0 -3
- package/esm2022/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.mjs +0 -5
- package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +0 -94
- package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +0 -21
- package/esm2022/src/v-angular/checkbox/index.mjs +0 -3
- package/esm2022/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.mjs +0 -5
- package/esm2022/src/v-angular/core/core.globals.mjs +0 -20
- package/esm2022/src/v-angular/core/core.utils.mjs +0 -62
- package/esm2022/src/v-angular/core/index.mjs +0 -3
- package/esm2022/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.mjs +0 -5
- package/esm2022/src/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
- package/esm2022/src/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
- package/esm2022/src/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
- package/esm2022/src/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
- package/esm2022/src/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
- package/esm2022/src/v-angular/datepicker/datepicker.globals.mjs +0 -20
- package/esm2022/src/v-angular/datepicker/datepicker.models.mjs +0 -56
- package/esm2022/src/v-angular/datepicker/datepicker.module.mjs +0 -63
- package/esm2022/src/v-angular/datepicker/datepicker.utils.mjs +0 -196
- package/esm2022/src/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
- package/esm2022/src/v-angular/datepicker/index.mjs +0 -17
- package/esm2022/src/v-angular/datepicker/models/dates.mjs +0 -291
- package/esm2022/src/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
- package/esm2022/src/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
- package/esm2022/src/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
- package/esm2022/src/v-angular/datepicker/sebgroup-green-angular-src-v-angular-datepicker.mjs +0 -5
- package/esm2022/src/v-angular/drag-drop/drag-drop.component.mjs +0 -497
- package/esm2022/src/v-angular/drag-drop/drag-drop.models.mjs +0 -2
- package/esm2022/src/v-angular/drag-drop/drag-drop.module.mjs +0 -49
- package/esm2022/src/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
- package/esm2022/src/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
- package/esm2022/src/v-angular/drag-drop/index.mjs +0 -5
- package/esm2022/src/v-angular/drag-drop/sebgroup-green-angular-src-v-angular-drag-drop.mjs +0 -5
- package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
- package/esm2022/src/v-angular/dropdown/dropdown-list/index.mjs +0 -2
- package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +0 -303
- package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +0 -38
- package/esm2022/src/v-angular/dropdown/index.mjs +0 -6
- package/esm2022/src/v-angular/dropdown/sebgroup-green-angular-src-v-angular-dropdown.mjs +0 -5
- package/esm2022/src/v-angular/dropdown/typeahead/index.mjs +0 -6
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
- package/esm2022/src/v-angular/external-link/external-link.directive.mjs +0 -37
- package/esm2022/src/v-angular/external-link/external-link.module.mjs +0 -18
- package/esm2022/src/v-angular/external-link/index.mjs +0 -3
- package/esm2022/src/v-angular/external-link/sebgroup-green-angular-src-v-angular-external-link.mjs +0 -5
- package/esm2022/src/v-angular/i18n/i18n.json +0 -13
- package/esm2022/src/v-angular/i18n/i18n.module.mjs +0 -89
- package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +0 -89
- package/esm2022/src/v-angular/i18n/index.mjs +0 -3
- package/esm2022/src/v-angular/i18n/sebgroup-green-angular-src-v-angular-i18n.mjs +0 -5
- package/esm2022/src/v-angular/info-circle/index.mjs +0 -3
- package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +0 -28
- package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +0 -21
- package/esm2022/src/v-angular/info-circle/sebgroup-green-angular-src-v-angular-info-circle.mjs +0 -5
- package/esm2022/src/v-angular/input/index.mjs +0 -3
- package/esm2022/src/v-angular/input/input.component.mjs +0 -248
- package/esm2022/src/v-angular/input/input.module.mjs +0 -41
- package/esm2022/src/v-angular/input/sebgroup-green-angular-src-v-angular-input.mjs +0 -5
- package/esm2022/src/v-angular/input-mask/config.mjs +0 -9
- package/esm2022/src/v-angular/input-mask/constants.mjs +0 -2
- package/esm2022/src/v-angular/input-mask/index.mjs +0 -6
- package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
- package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +0 -165
- package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +0 -35
- package/esm2022/src/v-angular/input-mask/input-mask.types.mjs +0 -2
- package/esm2022/src/v-angular/input-mask/sebgroup-green-angular-src-v-angular-input-mask.mjs +0 -5
- package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +0 -242
- package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
- package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
- package/esm2022/src/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
- package/esm2022/src/v-angular/modal/index.mjs +0 -6
- package/esm2022/src/v-angular/modal/modal.globals.mjs +0 -20
- package/esm2022/src/v-angular/modal/modal.module.mjs +0 -53
- package/esm2022/src/v-angular/modal/modal.types.mjs +0 -2
- package/esm2022/src/v-angular/modal/sebgroup-green-angular-src-v-angular-modal.mjs +0 -5
- package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
- package/esm2022/src/v-angular/pagination/index.mjs +0 -3
- package/esm2022/src/v-angular/pagination/pagination.component.mjs +0 -144
- package/esm2022/src/v-angular/pagination/pagination.module.mjs +0 -37
- package/esm2022/src/v-angular/pagination/sebgroup-green-angular-src-v-angular-pagination.mjs +0 -5
- package/esm2022/src/v-angular/radio/index.mjs +0 -4
- package/esm2022/src/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
- package/esm2022/src/v-angular/radio/radio.component.mjs +0 -153
- package/esm2022/src/v-angular/radio/radio.module.mjs +0 -22
- package/esm2022/src/v-angular/radio/sebgroup-green-angular-src-v-angular-radio.mjs +0 -5
- package/esm2022/src/v-angular/slug/index.mjs +0 -3
- package/esm2022/src/v-angular/slug/sebgroup-green-angular-src-v-angular-slug.mjs +0 -5
- package/esm2022/src/v-angular/slug/slug.module.mjs +0 -18
- package/esm2022/src/v-angular/slug/slug.pipe.mjs +0 -27
- package/esm2022/src/v-angular/table/index.mjs +0 -9
- package/esm2022/src/v-angular/table/sebgroup-green-angular-src-v-angular-table.mjs +0 -5
- package/esm2022/src/v-angular/table/table.component.mjs +0 -426
- package/esm2022/src/v-angular/table/table.directive.mjs +0 -110
- package/esm2022/src/v-angular/table/table.models.mjs +0 -2
- package/esm2022/src/v-angular/table/table.module.mjs +0 -40
- package/esm2022/src/v-angular/table/table.tools.mjs +0 -29
- package/esm2022/src/v-angular/table/tr-thook.pipe.mjs +0 -22
- package/esm2022/src/v-angular/tabs/index.mjs +0 -8
- package/esm2022/src/v-angular/tabs/sebgroup-green-angular-src-v-angular-tabs.mjs +0 -5
- package/esm2022/src/v-angular/tabs/tab.directive.mjs +0 -81
- package/esm2022/src/v-angular/tabs/tabs.component.mjs +0 -262
- package/esm2022/src/v-angular/tabs/tabs.models.mjs +0 -2
- package/esm2022/src/v-angular/tabs/tabs.module.mjs +0 -21
- package/esm2022/src/v-angular/textarea/index.mjs +0 -3
- package/esm2022/src/v-angular/textarea/sebgroup-green-angular-src-v-angular-textarea.mjs +0 -5
- package/esm2022/src/v-angular/textarea/textarea.component.mjs +0 -129
- package/esm2022/src/v-angular/textarea/textarea.module.mjs +0 -34
- package/esm2022/src/v-angular/toast/index.mjs +0 -8
- package/esm2022/src/v-angular/toast/sebgroup-green-angular-src-v-angular-toast.mjs +0 -5
- package/esm2022/src/v-angular/toast/toast-message.service.mjs +0 -82
- package/esm2022/src/v-angular/toast/toast.component.mjs +0 -66
- package/esm2022/src/v-angular/toast/toast.models.mjs +0 -8
- package/esm2022/src/v-angular/toast/toast.module.mjs +0 -21
- package/esm2022/src/v-angular/tooltip/index.mjs +0 -3
- package/esm2022/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.mjs +0 -5
- package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +0 -293
- package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +0 -18
- package/esm2022/src/v-angular/tooltip/tooltip.styles.mjs +0 -60
- package/esm2022/v-angular/account-number/account-number.module.mjs +0 -18
- package/esm2022/v-angular/account-number/account-number.pipe.mjs +0 -55
- package/esm2022/v-angular/account-number/index.mjs +0 -3
- package/esm2022/v-angular/alert/alert.component.mjs +0 -49
- package/esm2022/v-angular/alert/alert.models.mjs +0 -8
- package/esm2022/v-angular/alert/alert.module.mjs +0 -18
- package/esm2022/v-angular/alert/index.mjs +0 -4
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +0 -300
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +0 -17
- package/esm2022/v-angular/base-control-value-accessor/index.mjs +0 -3
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +0 -25
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +0 -20
- package/esm2022/v-angular/breadcrumbs/index.mjs +0 -3
- package/esm2022/v-angular/button/button.component.mjs +0 -108
- package/esm2022/v-angular/button/button.module.mjs +0 -20
- package/esm2022/v-angular/button/index.mjs +0 -3
- package/esm2022/v-angular/card/card.component.mjs +0 -11
- package/esm2022/v-angular/card/card.module.mjs +0 -18
- package/esm2022/v-angular/card/index.mjs +0 -3
- package/esm2022/v-angular/character-countdown/character-countdown.directive.mjs +0 -51
- package/esm2022/v-angular/character-countdown/character-countdown.module.mjs +0 -18
- package/esm2022/v-angular/character-countdown/index.mjs +0 -3
- package/esm2022/v-angular/checkbox/checkbox.component.mjs +0 -94
- package/esm2022/v-angular/checkbox/checkbox.module.mjs +0 -21
- package/esm2022/v-angular/checkbox/index.mjs +0 -3
- package/esm2022/v-angular/core/core.globals.mjs +0 -20
- package/esm2022/v-angular/core/core.utils.mjs +0 -62
- package/esm2022/v-angular/core/index.mjs +0 -3
- package/esm2022/v-angular/datepicker/components/calendar/calendar.component.mjs +0 -200
- package/esm2022/v-angular/datepicker/components/calendar-control/calendar-control.component.mjs +0 -115
- package/esm2022/v-angular/datepicker/components/date-input/date-input.component.mjs +0 -238
- package/esm2022/v-angular/datepicker/components/datepicker/datepicker.component.mjs +0 -192
- package/esm2022/v-angular/datepicker/date-control-value-accessor/date-control-value-accessor.component.mjs +0 -411
- package/esm2022/v-angular/datepicker/datepicker.globals.mjs +0 -20
- package/esm2022/v-angular/datepicker/datepicker.models.mjs +0 -56
- package/esm2022/v-angular/datepicker/datepicker.module.mjs +0 -63
- package/esm2022/v-angular/datepicker/datepicker.utils.mjs +0 -196
- package/esm2022/v-angular/datepicker/directives/calendar-date.directive.mjs +0 -47
- package/esm2022/v-angular/datepicker/index.mjs +0 -17
- package/esm2022/v-angular/datepicker/models/dates.mjs +0 -291
- package/esm2022/v-angular/datepicker/pipes/date-thook.pipe.mjs +0 -30
- package/esm2022/v-angular/datepicker/pipes/is-disabled.pipe.mjs +0 -37
- package/esm2022/v-angular/datepicker/pipes/matches.pipe.mjs +0 -17
- package/esm2022/v-angular/drag-drop/drag-drop.component.mjs +0 -497
- package/esm2022/v-angular/drag-drop/drag-drop.models.mjs +0 -2
- package/esm2022/v-angular/drag-drop/drag-drop.module.mjs +0 -49
- package/esm2022/v-angular/drag-drop/drag-drop.pipes.mjs +0 -70
- package/esm2022/v-angular/drag-drop/drag-drop.utils.mjs +0 -76
- package/esm2022/v-angular/drag-drop/index.mjs +0 -5
- package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +0 -380
- package/esm2022/v-angular/dropdown/dropdown-list/index.mjs +0 -2
- package/esm2022/v-angular/dropdown/dropdown.component.mjs +0 -303
- package/esm2022/v-angular/dropdown/dropdown.module.mjs +0 -38
- package/esm2022/v-angular/dropdown/index.mjs +0 -6
- package/esm2022/v-angular/dropdown/typeahead/index.mjs +0 -6
- package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +0 -110
- package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +0 -85
- package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +0 -138
- package/esm2022/v-angular/dropdown/typeahead/typeahead.directive.mjs +0 -186
- package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +0 -33
- package/esm2022/v-angular/external-link/external-link.directive.mjs +0 -37
- package/esm2022/v-angular/external-link/external-link.module.mjs +0 -18
- package/esm2022/v-angular/external-link/index.mjs +0 -3
- package/esm2022/v-angular/i18n/i18n.json +0 -13
- package/esm2022/v-angular/i18n/i18n.module.mjs +0 -89
- package/esm2022/v-angular/i18n/i18n.test.module.mjs +0 -89
- package/esm2022/v-angular/i18n/index.mjs +0 -3
- package/esm2022/v-angular/index.mjs +0 -29
- package/esm2022/v-angular/info-circle/index.mjs +0 -3
- package/esm2022/v-angular/info-circle/info-circle.component.mjs +0 -28
- package/esm2022/v-angular/info-circle/info-circle.module.mjs +0 -21
- package/esm2022/v-angular/input/index.mjs +0 -3
- package/esm2022/v-angular/input/input.component.mjs +0 -248
- package/esm2022/v-angular/input/input.module.mjs +0 -41
- package/esm2022/v-angular/input-mask/config.mjs +0 -9
- package/esm2022/v-angular/input-mask/constants.mjs +0 -2
- package/esm2022/v-angular/input-mask/index.mjs +0 -6
- package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +0 -21
- package/esm2022/v-angular/input-mask/input-mask.directive.mjs +0 -165
- package/esm2022/v-angular/input-mask/input-mask.module.mjs +0 -35
- package/esm2022/v-angular/input-mask/input-mask.types.mjs +0 -2
- package/esm2022/v-angular/modal/dialog/dialog.component.mjs +0 -242
- package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +0 -167
- package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +0 -19
- package/esm2022/v-angular/modal/fold-out/keyboard-key.enum.mjs +0 -10
- package/esm2022/v-angular/modal/index.mjs +0 -6
- package/esm2022/v-angular/modal/modal.globals.mjs +0 -20
- package/esm2022/v-angular/modal/modal.module.mjs +0 -53
- package/esm2022/v-angular/modal/modal.types.mjs +0 -2
- package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +0 -253
- package/esm2022/v-angular/pagination/index.mjs +0 -3
- package/esm2022/v-angular/pagination/pagination.component.mjs +0 -144
- package/esm2022/v-angular/pagination/pagination.module.mjs +0 -37
- package/esm2022/v-angular/radio/index.mjs +0 -4
- package/esm2022/v-angular/radio/radio-group/radio-group.component.mjs +0 -86
- package/esm2022/v-angular/radio/radio.component.mjs +0 -153
- package/esm2022/v-angular/radio/radio.module.mjs +0 -22
- package/esm2022/v-angular/sebgroup-green-angular-v-angular.mjs +0 -5
- package/esm2022/v-angular/slug/index.mjs +0 -3
- package/esm2022/v-angular/slug/slug.module.mjs +0 -18
- package/esm2022/v-angular/slug/slug.pipe.mjs +0 -27
- package/esm2022/v-angular/table/index.mjs +0 -9
- package/esm2022/v-angular/table/table.component.mjs +0 -426
- package/esm2022/v-angular/table/table.directive.mjs +0 -110
- package/esm2022/v-angular/table/table.models.mjs +0 -2
- package/esm2022/v-angular/table/table.module.mjs +0 -40
- package/esm2022/v-angular/table/table.tools.mjs +0 -29
- package/esm2022/v-angular/table/tr-thook.pipe.mjs +0 -22
- package/esm2022/v-angular/tabs/index.mjs +0 -8
- package/esm2022/v-angular/tabs/tab.directive.mjs +0 -81
- package/esm2022/v-angular/tabs/tabs.component.mjs +0 -262
- package/esm2022/v-angular/tabs/tabs.models.mjs +0 -2
- package/esm2022/v-angular/tabs/tabs.module.mjs +0 -21
- package/esm2022/v-angular/textarea/index.mjs +0 -3
- package/esm2022/v-angular/textarea/textarea.component.mjs +0 -129
- package/esm2022/v-angular/textarea/textarea.module.mjs +0 -34
- package/esm2022/v-angular/toast/index.mjs +0 -8
- package/esm2022/v-angular/toast/toast-message.service.mjs +0 -82
- package/esm2022/v-angular/toast/toast.component.mjs +0 -66
- package/esm2022/v-angular/toast/toast.models.mjs +0 -8
- package/esm2022/v-angular/toast/toast.module.mjs +0 -21
- package/esm2022/v-angular/tooltip/index.mjs +0 -3
- package/esm2022/v-angular/tooltip/tooltip.directive.mjs +0 -293
- package/esm2022/v-angular/tooltip/tooltip.module.mjs +0 -18
- package/esm2022/v-angular/tooltip/tooltip.styles.mjs +0 -60
- package/esm2022/v-angular/v-angular.module.mjs +0 -132
|
@@ -1,303 +0,0 @@
|
|
|
1
|
-
import '@sebgroup/green-core/components/icon/icons/triangle-exclamation.js';
|
|
2
|
-
import { ChangeDetectorRef, Component, ContentChild, EventEmitter, HostBinding, HostListener, Inject, Input, Optional, Output, Self, TemplateRef, } from '@angular/core';
|
|
3
|
-
import { NgControl } from '@angular/forms';
|
|
4
|
-
import { TRANSLOCO_SCOPE } from '@jsverse/transloco';
|
|
5
|
-
import { fromEvent } from 'rxjs';
|
|
6
|
-
import { NggvBaseControlValueAccessorComponent } from '@sebgroup/green-angular/src/v-angular/base-control-value-accessor';
|
|
7
|
-
import { DropdownUtils, } from '@sebgroup/green-angular/src/v-angular/core';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/forms";
|
|
10
|
-
import * as i2 from "@sebgroup/green-angular/src/v-angular/core";
|
|
11
|
-
import * as i3 from "@angular/common";
|
|
12
|
-
import * as i4 from "@sebgroup/green-angular/src/lib/shared";
|
|
13
|
-
import * as i5 from "@jsverse/transloco";
|
|
14
|
-
import * as i6 from "./dropdown-list/dropdown-list.component";
|
|
15
|
-
/**
|
|
16
|
-
* A dropdown allows the user to select an option from a list.
|
|
17
|
-
* Dropdowns enables users to make a quick selection of the available options for a specific entry.
|
|
18
|
-
* https://designlibrary.sebgroup.com/components/component-dropdown
|
|
19
|
-
*/
|
|
20
|
-
export class NggvDropdownComponent extends NggvBaseControlValueAccessorComponent {
|
|
21
|
-
get isSmall() {
|
|
22
|
-
return this.size === 'small';
|
|
23
|
-
}
|
|
24
|
-
get isLarge() {
|
|
25
|
-
return this.size === 'large';
|
|
26
|
-
}
|
|
27
|
-
/** List of {@link Option} and {@link OptionGroup} listed when dropdown is expanded. */
|
|
28
|
-
set options(value) {
|
|
29
|
-
// update options
|
|
30
|
-
this._options = value;
|
|
31
|
-
// already has a null/undefined key
|
|
32
|
-
const nullishOption = this.dropdownUtils
|
|
33
|
-
.flattenOptions(value, false)
|
|
34
|
-
.find((option) => option.key == null);
|
|
35
|
-
// if the dropdown is optional, add a null value to deselect option
|
|
36
|
-
if (!this.required && !nullishOption && this.allowControlNullishOption) {
|
|
37
|
-
this._options = [this.defaultNullishOption].concat(this._options);
|
|
38
|
-
}
|
|
39
|
-
// set default value and emit if there is only one option
|
|
40
|
-
if (value.length === 1 && this.required && this.selectOnSingleOption) {
|
|
41
|
-
const onlyOption = this.dropdownUtils.flattenOptions(value, false)[0];
|
|
42
|
-
this.updateModel(onlyOption);
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
// don't update local state if we shouldn't control nullish value and we cant find the selected value amongst the options
|
|
46
|
-
const matchingOption = this.dropdownUtils
|
|
47
|
-
.flattenOptions(value, false)
|
|
48
|
-
.find((option) => option.key == this.ngControl?.value);
|
|
49
|
-
if (!this.allowControlNullishOption && !matchingOption)
|
|
50
|
-
return;
|
|
51
|
-
// Update local state
|
|
52
|
-
this.writeValue(this.ngControl?.value);
|
|
53
|
-
}
|
|
54
|
-
get options() {
|
|
55
|
-
return this._options;
|
|
56
|
-
}
|
|
57
|
-
/** @internal nullish option. */
|
|
58
|
-
get defaultNullishOption() {
|
|
59
|
-
return { key: null, label: this.placeholder ?? '\u00A0' };
|
|
60
|
-
}
|
|
61
|
-
constructor(ngControl, translocoScope, cdr, dropdownUtils) {
|
|
62
|
-
super(ngControl, translocoScope, cdr);
|
|
63
|
-
this.ngControl = ngControl;
|
|
64
|
-
this.translocoScope = translocoScope;
|
|
65
|
-
this.cdr = cdr;
|
|
66
|
-
this.dropdownUtils = dropdownUtils;
|
|
67
|
-
/**
|
|
68
|
-
* Special property used for selecting DOM elements during automated UI testing.
|
|
69
|
-
*/
|
|
70
|
-
this.thook = 'dropdown';
|
|
71
|
-
/**
|
|
72
|
-
* Sets the displayed size of the dropdown.
|
|
73
|
-
*/
|
|
74
|
-
this.size = 'large';
|
|
75
|
-
/** If the dropdown should close when scrolling the viewport. Default: false */
|
|
76
|
-
this.closeOnScroll = false;
|
|
77
|
-
/** The additional amount to show when option is scrolled into view. */
|
|
78
|
-
this.scrollOffset = 24;
|
|
79
|
-
/**
|
|
80
|
-
* Allow this component to add/ remove nullish options based on wether the control is required or not
|
|
81
|
-
* Defaults to true.
|
|
82
|
-
*/
|
|
83
|
-
this.allowControlNullishOption = true;
|
|
84
|
-
/**
|
|
85
|
-
* If only one option exists in options[], default is to select it.
|
|
86
|
-
* This input can be used to alter that behaviour so it doesn't automatically
|
|
87
|
-
* select a value if it's the only one.
|
|
88
|
-
* Defaults to true.
|
|
89
|
-
*/
|
|
90
|
-
this.selectOnSingleOption = true;
|
|
91
|
-
/**
|
|
92
|
-
* Used to control if the dropdown list should select the current active element, when Space is pressed on the keyboard.
|
|
93
|
-
* Primary usage is for typeahead, where the should be able to write a filter query containing spaces,
|
|
94
|
-
* but not select the current active element with Space.
|
|
95
|
-
*/
|
|
96
|
-
this.selectWithSpace = true;
|
|
97
|
-
/**
|
|
98
|
-
* Used to determine which changes should be handled by the dropdown.
|
|
99
|
-
* If set to false, all changes will be handled by the dropdown.
|
|
100
|
-
* If set to true, only changes that are distinct from the current value will be handled.
|
|
101
|
-
* Defaults to true.
|
|
102
|
-
*/
|
|
103
|
-
this.onlyHandleDistinctChanges = true;
|
|
104
|
-
/**
|
|
105
|
-
* Emits changes of the expanded state of the dropdown
|
|
106
|
-
*/
|
|
107
|
-
this.expandedChange = new EventEmitter();
|
|
108
|
-
/** The current expanded state of the dropdown options. */
|
|
109
|
-
this.expanded = false;
|
|
110
|
-
/** The current option selected based on numeric index. */
|
|
111
|
-
this.activeIndex = -1;
|
|
112
|
-
this.keyEvent = {};
|
|
113
|
-
this._options = [];
|
|
114
|
-
}
|
|
115
|
-
ngOnChanges(changes) {
|
|
116
|
-
if (changes.required?.currentValue !== undefined) {
|
|
117
|
-
const isRequired = changes.required.currentValue;
|
|
118
|
-
// remove nullish option
|
|
119
|
-
const hasNullishOption = this.dropdownUtils.flattenOptions(this._options, false)[0]?.key == null;
|
|
120
|
-
// if required, remove nullish option
|
|
121
|
-
if (isRequired && hasNullishOption && this.allowControlNullishOption) {
|
|
122
|
-
this._options = this._options.slice(1);
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
// if not required, add nullish option
|
|
126
|
-
if (!isRequired && !hasNullishOption && this.allowControlNullishOption) {
|
|
127
|
-
this._options = [this.defaultNullishOption].concat(this._options);
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
ngOnDestroy() {
|
|
133
|
-
this.onClickSubscription?.unsubscribe();
|
|
134
|
-
this.onScrollSubscription?.unsubscribe();
|
|
135
|
-
}
|
|
136
|
-
/** @internal override to correctly set state from form value */
|
|
137
|
-
writeValue(value) {
|
|
138
|
-
const options = this.dropdownUtils.flattenOptions(this._options, false);
|
|
139
|
-
this.state = options.find((option) => option.key === value);
|
|
140
|
-
}
|
|
141
|
-
// ----------------------------------------------------------------------------
|
|
142
|
-
// EVENTS
|
|
143
|
-
// ----------------------------------------------------------------------------
|
|
144
|
-
/** @internal */
|
|
145
|
-
onSelectChange(option) {
|
|
146
|
-
if (option.disabled)
|
|
147
|
-
return;
|
|
148
|
-
this.updateModel(option);
|
|
149
|
-
this.setExpanded(false);
|
|
150
|
-
}
|
|
151
|
-
// /**
|
|
152
|
-
// * @internal
|
|
153
|
-
// * Enter toggles the dropdown, home, end, and, arrows change the index.
|
|
154
|
-
// * @param event fired containing which key was released.
|
|
155
|
-
// */
|
|
156
|
-
onKeyUp(event) {
|
|
157
|
-
this.keyEvent = event;
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Closes the dropdown on click outside.
|
|
161
|
-
*/
|
|
162
|
-
subscribeToOutsideClickEvent() {
|
|
163
|
-
this.onClickSubscription = fromEvent(document, 'click').subscribe({
|
|
164
|
-
next: (event) => {
|
|
165
|
-
if (this.expanded &&
|
|
166
|
-
!this.inputRef?.nativeElement.contains(event.target)) {
|
|
167
|
-
this.toggleDropdown();
|
|
168
|
-
this.onClickSubscription?.unsubscribe();
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
subscribeToOutsideScrollEvent() {
|
|
174
|
-
this.onScrollSubscription = fromEvent(document, 'scroll').subscribe({
|
|
175
|
-
next: (event) => {
|
|
176
|
-
if (this.expanded &&
|
|
177
|
-
!this.inputRef?.nativeElement.contains(event.target)) {
|
|
178
|
-
this.toggleDropdown();
|
|
179
|
-
this.onScrollSubscription?.unsubscribe();
|
|
180
|
-
}
|
|
181
|
-
},
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
// ----------------------------------------------------------------------------
|
|
185
|
-
// HELPERS
|
|
186
|
-
// ----------------------------------------------------------------------------
|
|
187
|
-
/**
|
|
188
|
-
* Set the dropdown value to given option.
|
|
189
|
-
* @param value the dropdown option to select.
|
|
190
|
-
*/
|
|
191
|
-
updateModel(value) {
|
|
192
|
-
this.state = value;
|
|
193
|
-
this.onChange(value.key);
|
|
194
|
-
}
|
|
195
|
-
/** Toggle the expanded state of the dropdown options. */
|
|
196
|
-
toggleDropdown() {
|
|
197
|
-
this.setExpanded(!this.expanded);
|
|
198
|
-
this.cdr.detectChanges();
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* Set the expanded state of the dropdown options. If true the options are shown below the field.
|
|
202
|
-
* Activate on click event to be able to close dropdown on click outside.
|
|
203
|
-
* @param state the expanded state which to set.
|
|
204
|
-
*/
|
|
205
|
-
setExpanded(state = true) {
|
|
206
|
-
this.expanded = state;
|
|
207
|
-
this.expandedChange.emit(this.expanded);
|
|
208
|
-
if (this.expanded) {
|
|
209
|
-
this.subscribeToOutsideClickEvent();
|
|
210
|
-
if (this.closeOnScroll) {
|
|
211
|
-
this.subscribeToOutsideScrollEvent();
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
if (!this.expanded)
|
|
215
|
-
this.onTouched();
|
|
216
|
-
}
|
|
217
|
-
/* TYPE CASTS */
|
|
218
|
-
/**
|
|
219
|
-
* Typecast anything to an {@link Option}.
|
|
220
|
-
* @param option the object to typecast.
|
|
221
|
-
*/
|
|
222
|
-
castOption(option) {
|
|
223
|
-
return option;
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* Typecast anything to an {@link OptionGroup}.
|
|
227
|
-
* @param group the object to typecast.
|
|
228
|
-
*/
|
|
229
|
-
castGroup(group) {
|
|
230
|
-
return group;
|
|
231
|
-
}
|
|
232
|
-
/* TYPE CHECKS */
|
|
233
|
-
/**
|
|
234
|
-
* Returns true if argument is an {@link Option}.
|
|
235
|
-
* @param option the object to check.
|
|
236
|
-
*/
|
|
237
|
-
isOption(option) {
|
|
238
|
-
return !('options' in option);
|
|
239
|
-
}
|
|
240
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }, { token: i2.DropdownUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
241
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NggvDropdownComponent, selector: "nggv-dropdown", inputs: { thook: "thook", size: "size", placeholder: "placeholder", ariaLabel: "ariaLabel", closeOnScroll: "closeOnScroll", options: "options", scrollOffset: "scrollOffset", allowControlNullishOption: "allowControlNullishOption", textToHighlight: "textToHighlight", selectOnSingleOption: "selectOnSingleOption", selectWithSpace: "selectWithSpace", onlyHandleDistinctChanges: "onlyHandleDistinctChanges" }, outputs: { expandedChange: "expandedChange" }, host: { listeners: { "keyup": "onKeyUp($event)" }, properties: { "attr.data-thook": "this.thook", "class.small": "this.isSmall", "class.large": "this.isLarge" } }, queries: [{ propertyName: "selectedContentTpl", first: true, predicate: ["selectedTpl"], descendants: true, read: TemplateRef }, { propertyName: "optionContentTpl", first: true, predicate: ["optionTpl"], descendants: true, read: TemplateRef }, { propertyName: "groupLabelTpl", first: true, predicate: ["groupLabelTpl"], descendants: true, read: TemplateRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!-- LABEL -->\n<ng-container *transloco=\"let t; read: scope\">\n <label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-toggle'\"\n *ngIf=\"labelContentTpl || label\"\n >\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n </label>\n\n <!-- DESCRIPTION -->\n <div class=\"description\" *ngIf=\"description\">{{ description }}</div>\n\n <!-- LOCKED INPUT -->\n <ng-container *ngIf=\"locked\">\n <ng-template\n *ngTemplateOutlet=\"\n lockedTpl || defaultLockedTpl;\n context: { $implicit: state }\n \"\n ></ng-template>\n <ng-template #defaultLockedTpl>\n <div\n [id]=\"id + '-input'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"id + '-label ' + id + '-input'\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n <ng-template\n *ngTemplateOutlet=\"\n selectedContentTpl || defaultSelectedContentTpl;\n context: { $implicit: state }\n \"\n >\n </ng-template>\n </ng-container>\n </div>\n </ng-template>\n </ng-container>\n\n <!-- INPUT -->\n <ng-container *ngIf=\"!locked\">\n <div class=\"gds-input-wrapper dropdown-wrapper\">\n <div #input [id]=\"id + '-input'\" class=\"dropdown\">\n <button\n [id]=\"id + '-toggle'\"\n [disabled]=\"disabled\"\n type=\"button\"\n class=\"nggv-field-dropdown__label toggle\"\n [class.nggv-field--error]=\"invalid\"\n role=\"combobox\"\n aria-owns=\"listbox\"\n aria-haspopup=\"listbox\"\n aria-controls=\"listbox\"\n [attr.data-thook]=\"thook + '-toggle'\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-labelledby]=\"\n ariaLabel ? null : id + '-label ' + id + '-toggle'\n \"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"toggleDropdown()\"\n >\n <span>\n <ng-template\n *ngTemplateOutlet=\"\n selectedContentTpl || defaultSelectedContentTpl;\n context: { $implicit: state }\n \"\n >\n </ng-template>\n </span>\n </button>\n <nggv-dropdown-list\n #dropDownList\n [options]=\"options\"\n [scrollOffset]=\"scrollOffset\"\n [state]=\"state\"\n [expanded]=\"expanded\"\n [optionContentTpl]=\"optionContentTpl\"\n [groupLabelTpl]=\"groupLabelTpl\"\n [textToHighlight]=\"textToHighlight\"\n [onlyEmitDistinctChanges]=\"onlyHandleDistinctChanges\"\n [selectWithSpace]=\"selectWithSpace\"\n [dynamicPosition]=\"true\"\n (closed)=\"setExpanded(false)\"\n (selectedValueChanged)=\"onSelectChange($event)\"\n >\n </nggv-dropdown-list>\n </div>\n <!-- ERRORS -->\n <div class=\"gds-form-item__footer error-wrapper\">\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-input'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n [solid]=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n </span>\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </div>\n <!-- CHILDREN -->\n <ng-content></ng-content>\n </div>\n </ng-container>\n\n <ng-template #defaultSelectedContentTpl let-state>\n <!-- eslint-disable-next-line @angular-eslint/template/eqeqeq -->\n {{ state?.key != null && state?.label ? t(state.label) : placeholder }}\n </ng-template>\n</ng-container>\n", styles: [":host{--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-border-color: #868686;--text-primary-color: #333;--sg-form-control-bg: #fff;--grey-000: hsl(0 0% 100%);--grey-100: hsl(0, 0%, 97%);--grey-200: hsl(0, 0%, 91%);--grey-300: hsl(0, 0%, 87%);--grey-400: hsl(0, 0%, 81%);--grey-500: hsl(0, 0%, 68%);--grey-600: hsl(0, 0%, 53%);--grey-700: hsl(0, 0%, 29%);--grey-800: hsl(0, 0%, 20%);--grey-900: hsl(0, 0%, 10%);--grey-1000: hsl(0 0% 0%);display:flex;flex-direction:column;max-width:100%;position:relative;width:100%;z-index:0;position:initial}:host label{display:block;font-weight:500;line-height:1.25rem;width:100%}:host label+.gds-input-wrapper,:host label+.nggv-field--locked{margin-top:.5rem}:host .description{font-size:.875rem;margin-bottom:.5rem;line-height:1.25rem;width:100%}:host:not(:last-child){margin-bottom:1.5rem}:host .gds-form-item__header{display:flex}:host .gds-form-item__header .form-info{font-weight:400}:host .gds-form-item__header button.icon.small{margin-top:-.5rem;margin-right:-.5rem}:host .gds-form-item__labels{flex:1;margin-bottom:.5rem}:host .gds-form-item__labels .form-info{margin-bottom:0}:host .gds-form-item__labels .form-info a:link:not(.button,[aria-disabled]){color:#0062bc}:host .gds-form-item__labels>*{width:100%;display:block}:host .gds-form-item__expandable-info{overflow:hidden;font-size:.875rem;line-height:1.25rem;transition:height .3s cubic-bezier(.23,1,.32,1)}:host .gds-form-item__expandable-info>div{padding-bottom:.5rem}:host .gds-form-item__backdrop{position:absolute;inset:0;background:var(--gds-sys-color-base-100);border-radius:2px;z-index:-1;margin:-1rem;opacity:0;transition:all .3s cubic-bezier(.23,1,.32,1);border:1px solid transparent}@media (prefers-reduced-motion: reduce){:host .gds-form-item__backdrop{transition:none}}:host:has([aria-expanded=true]) .gds-form-item__backdrop{opacity:1;border-radius:.25rem;border-color:var(--gds-sys-color-base-600)}:host .gds-form-item__footer:not(:empty){margin-top:.5rem;display:flex;column-gap:.5rem}:host .gds-form-item__footer:not(:empty)>span,:host .gds-form-item__footer:not(:empty)>.form-info{font-weight:500;line-height:1.125}:host:not(:last-child){margin-bottom:unset}:host .gds-field-label--optional{font-weight:400}:host button{background-color:transparent;border:0;cursor:pointer;font-family:inherit;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--grey-600);--sg-border-color: var(--grey-600);background:var(--sg-form-control-bg);color:var(--text-primary-color);min-height:2.75rem;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;max-width:100%;font-size:1rem;font-weight:400;line-height:1.125;text-align:left;width:100%}:host button:focus{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host button{min-width:100%}}:host button>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host button:after{margin-left:.5rem;margin-right:.5rem;border-bottom:solid 2px var(--text-primary-color);border-left:solid 2px var(--text-primary-color);content:\"\";display:block;height:.5rem;width:.5rem;position:relative;top:-.15rem;transform:translate(75%) rotate3d(0,0,1,-45deg) scaleZ(-1);transition:transform .3s ease-in;flex-shrink:0}:host button[aria-expanded=true]:after{transform:translate(75%,6px) rotate3d(0,0,1,-45deg) scale3d(-1,-1,1)}:host button:hover:after{border-color:currentColor}:host button:disabled{--background: var(--grey-500)}:host button span{width:100%;white-space:nowrap;display:block;text-overflow:ellipsis}:host button.small{font-size:.875rem}:host button:hover{background:#e7e7e7}:host button:active{background:inherit;color:inherit;border-color:inherit}:host button:disabled,:host button.disabled{--text-primary-color: var(--grey-600);background:var(--grey-300);color:var(--grey-600);cursor:not-allowed}:host button.nggv-field--error{border-bottom:2px solid #9f000a}:host .gds-form-item__footer .form-info{font-weight:500;font-size:.875rem}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{align-items:center}:host .dropdown-wrapper{position:relative}:host .dropdown{width:100%;position:relative}:host .dropdown nggv-dropdown-list{width:100%}:host.small label{line-height:1rem;font-size:.875rem}:host.small label+.gds-input-wrapper,:host.small label+.nggv-field--locked{margin-top:.25rem}:host.small .description{font-size:.875rem;line-height:1rem;margin-bottom:.25rem}:host.small button{font-size:.875rem;line-height:1rem;padding:.38rem .5rem;min-height:2rem}:host.small .gds-form-item__footer:not(:empty){margin-top:.25rem}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NggCoreElementDirective, selector: "[nggCoreElement]" }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: i6.NggvDropdownListComponent, selector: "nggv-dropdown-list", inputs: ["expanded", "state", "scrollOffset", "optionContentTpl", "groupLabelTpl", "id", "thook", "options", "textToHighlight", "onlyEmitDistinctChanges", "selectWithSpace", "dynamicPosition"], outputs: ["selectedValueChanged", "closed", "afterClose"] }] }); }
|
|
242
|
-
}
|
|
243
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownComponent, decorators: [{
|
|
244
|
-
type: Component,
|
|
245
|
-
args: [{ selector: 'nggv-dropdown', template: "<!-- LABEL -->\n<ng-container *transloco=\"let t; read: scope\">\n <label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-toggle'\"\n *ngIf=\"labelContentTpl || label\"\n >\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n </label>\n\n <!-- DESCRIPTION -->\n <div class=\"description\" *ngIf=\"description\">{{ description }}</div>\n\n <!-- LOCKED INPUT -->\n <ng-container *ngIf=\"locked\">\n <ng-template\n *ngTemplateOutlet=\"\n lockedTpl || defaultLockedTpl;\n context: { $implicit: state }\n \"\n ></ng-template>\n <ng-template #defaultLockedTpl>\n <div\n [id]=\"id + '-input'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n [attr.aria-labelledby]=\"id + '-label ' + id + '-input'\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n <ng-template\n *ngTemplateOutlet=\"\n selectedContentTpl || defaultSelectedContentTpl;\n context: { $implicit: state }\n \"\n >\n </ng-template>\n </ng-container>\n </div>\n </ng-template>\n </ng-container>\n\n <!-- INPUT -->\n <ng-container *ngIf=\"!locked\">\n <div class=\"gds-input-wrapper dropdown-wrapper\">\n <div #input [id]=\"id + '-input'\" class=\"dropdown\">\n <button\n [id]=\"id + '-toggle'\"\n [disabled]=\"disabled\"\n type=\"button\"\n class=\"nggv-field-dropdown__label toggle\"\n [class.nggv-field--error]=\"invalid\"\n role=\"combobox\"\n aria-owns=\"listbox\"\n aria-haspopup=\"listbox\"\n aria-controls=\"listbox\"\n [attr.data-thook]=\"thook + '-toggle'\"\n [attr.aria-expanded]=\"expanded\"\n [attr.aria-labelledby]=\"\n ariaLabel ? null : id + '-label ' + id + '-toggle'\n \"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"toggleDropdown()\"\n >\n <span>\n <ng-template\n *ngTemplateOutlet=\"\n selectedContentTpl || defaultSelectedContentTpl;\n context: { $implicit: state }\n \"\n >\n </ng-template>\n </span>\n </button>\n <nggv-dropdown-list\n #dropDownList\n [options]=\"options\"\n [scrollOffset]=\"scrollOffset\"\n [state]=\"state\"\n [expanded]=\"expanded\"\n [optionContentTpl]=\"optionContentTpl\"\n [groupLabelTpl]=\"groupLabelTpl\"\n [textToHighlight]=\"textToHighlight\"\n [onlyEmitDistinctChanges]=\"onlyHandleDistinctChanges\"\n [selectWithSpace]=\"selectWithSpace\"\n [dynamicPosition]=\"true\"\n (closed)=\"setExpanded(false)\"\n (selectedValueChanged)=\"onSelectChange($event)\"\n >\n </nggv-dropdown-list>\n </div>\n <!-- ERRORS -->\n <div class=\"gds-form-item__footer error-wrapper\">\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-input'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n [solid]=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n </span>\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </div>\n <!-- CHILDREN -->\n <ng-content></ng-content>\n </div>\n </ng-container>\n\n <ng-template #defaultSelectedContentTpl let-state>\n <!-- eslint-disable-next-line @angular-eslint/template/eqeqeq -->\n {{ state?.key != null && state?.label ? t(state.label) : placeholder }}\n </ng-template>\n</ng-container>\n", styles: [":host{--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-border-color: #868686;--text-primary-color: #333;--sg-form-control-bg: #fff;--grey-000: hsl(0 0% 100%);--grey-100: hsl(0, 0%, 97%);--grey-200: hsl(0, 0%, 91%);--grey-300: hsl(0, 0%, 87%);--grey-400: hsl(0, 0%, 81%);--grey-500: hsl(0, 0%, 68%);--grey-600: hsl(0, 0%, 53%);--grey-700: hsl(0, 0%, 29%);--grey-800: hsl(0, 0%, 20%);--grey-900: hsl(0, 0%, 10%);--grey-1000: hsl(0 0% 0%);display:flex;flex-direction:column;max-width:100%;position:relative;width:100%;z-index:0;position:initial}:host label{display:block;font-weight:500;line-height:1.25rem;width:100%}:host label+.gds-input-wrapper,:host label+.nggv-field--locked{margin-top:.5rem}:host .description{font-size:.875rem;margin-bottom:.5rem;line-height:1.25rem;width:100%}:host:not(:last-child){margin-bottom:1.5rem}:host .gds-form-item__header{display:flex}:host .gds-form-item__header .form-info{font-weight:400}:host .gds-form-item__header button.icon.small{margin-top:-.5rem;margin-right:-.5rem}:host .gds-form-item__labels{flex:1;margin-bottom:.5rem}:host .gds-form-item__labels .form-info{margin-bottom:0}:host .gds-form-item__labels .form-info a:link:not(.button,[aria-disabled]){color:#0062bc}:host .gds-form-item__labels>*{width:100%;display:block}:host .gds-form-item__expandable-info{overflow:hidden;font-size:.875rem;line-height:1.25rem;transition:height .3s cubic-bezier(.23,1,.32,1)}:host .gds-form-item__expandable-info>div{padding-bottom:.5rem}:host .gds-form-item__backdrop{position:absolute;inset:0;background:var(--gds-sys-color-base-100);border-radius:2px;z-index:-1;margin:-1rem;opacity:0;transition:all .3s cubic-bezier(.23,1,.32,1);border:1px solid transparent}@media (prefers-reduced-motion: reduce){:host .gds-form-item__backdrop{transition:none}}:host:has([aria-expanded=true]) .gds-form-item__backdrop{opacity:1;border-radius:.25rem;border-color:var(--gds-sys-color-base-600)}:host .gds-form-item__footer:not(:empty){margin-top:.5rem;display:flex;column-gap:.5rem}:host .gds-form-item__footer:not(:empty)>span,:host .gds-form-item__footer:not(:empty)>.form-info{font-weight:500;line-height:1.125}:host:not(:last-child){margin-bottom:unset}:host .gds-field-label--optional{font-weight:400}:host button{background-color:transparent;border:0;cursor:pointer;font-family:inherit;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--grey-600);--sg-border-color: var(--grey-600);background:var(--sg-form-control-bg);color:var(--text-primary-color);min-height:2.75rem;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;max-width:100%;font-size:1rem;font-weight:400;line-height:1.125;text-align:left;width:100%}:host button:focus{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host button{min-width:100%}}:host button>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host button:after{margin-left:.5rem;margin-right:.5rem;border-bottom:solid 2px var(--text-primary-color);border-left:solid 2px var(--text-primary-color);content:\"\";display:block;height:.5rem;width:.5rem;position:relative;top:-.15rem;transform:translate(75%) rotate3d(0,0,1,-45deg) scaleZ(-1);transition:transform .3s ease-in;flex-shrink:0}:host button[aria-expanded=true]:after{transform:translate(75%,6px) rotate3d(0,0,1,-45deg) scale3d(-1,-1,1)}:host button:hover:after{border-color:currentColor}:host button:disabled{--background: var(--grey-500)}:host button span{width:100%;white-space:nowrap;display:block;text-overflow:ellipsis}:host button.small{font-size:.875rem}:host button:hover{background:#e7e7e7}:host button:active{background:inherit;color:inherit;border-color:inherit}:host button:disabled,:host button.disabled{--text-primary-color: var(--grey-600);background:var(--grey-300);color:var(--grey-600);cursor:not-allowed}:host button.nggv-field--error{border-bottom:2px solid #9f000a}:host .gds-form-item__footer .form-info{font-weight:500;font-size:.875rem}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{align-items:center}:host .dropdown-wrapper{position:relative}:host .dropdown{width:100%;position:relative}:host .dropdown nggv-dropdown-list{width:100%}:host.small label{line-height:1rem;font-size:.875rem}:host.small label+.gds-input-wrapper,:host.small label+.nggv-field--locked{margin-top:.25rem}:host.small .description{font-size:.875rem;line-height:1rem;margin-bottom:.25rem}:host.small button{font-size:.875rem;line-height:1rem;padding:.38rem .5rem;min-height:2rem}:host.small .gds-form-item__footer:not(:empty){margin-top:.25rem}\n"] }]
|
|
246
|
-
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
|
|
247
|
-
type: Self
|
|
248
|
-
}, {
|
|
249
|
-
type: Optional
|
|
250
|
-
}] }, { type: undefined, decorators: [{
|
|
251
|
-
type: Optional
|
|
252
|
-
}, {
|
|
253
|
-
type: Inject,
|
|
254
|
-
args: [TRANSLOCO_SCOPE]
|
|
255
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i2.DropdownUtils }], propDecorators: { selectedContentTpl: [{
|
|
256
|
-
type: ContentChild,
|
|
257
|
-
args: ['selectedTpl', { read: TemplateRef }]
|
|
258
|
-
}], optionContentTpl: [{
|
|
259
|
-
type: ContentChild,
|
|
260
|
-
args: ['optionTpl', { read: TemplateRef }]
|
|
261
|
-
}], groupLabelTpl: [{
|
|
262
|
-
type: ContentChild,
|
|
263
|
-
args: ['groupLabelTpl', { read: TemplateRef }]
|
|
264
|
-
}], thook: [{
|
|
265
|
-
type: HostBinding,
|
|
266
|
-
args: ['attr.data-thook']
|
|
267
|
-
}, {
|
|
268
|
-
type: Input
|
|
269
|
-
}], isSmall: [{
|
|
270
|
-
type: HostBinding,
|
|
271
|
-
args: ['class.small']
|
|
272
|
-
}], isLarge: [{
|
|
273
|
-
type: HostBinding,
|
|
274
|
-
args: ['class.large']
|
|
275
|
-
}], size: [{
|
|
276
|
-
type: Input
|
|
277
|
-
}], placeholder: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], ariaLabel: [{
|
|
280
|
-
type: Input
|
|
281
|
-
}], closeOnScroll: [{
|
|
282
|
-
type: Input
|
|
283
|
-
}], options: [{
|
|
284
|
-
type: Input
|
|
285
|
-
}], scrollOffset: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}], allowControlNullishOption: [{
|
|
288
|
-
type: Input
|
|
289
|
-
}], textToHighlight: [{
|
|
290
|
-
type: Input
|
|
291
|
-
}], selectOnSingleOption: [{
|
|
292
|
-
type: Input
|
|
293
|
-
}], selectWithSpace: [{
|
|
294
|
-
type: Input
|
|
295
|
-
}], onlyHandleDistinctChanges: [{
|
|
296
|
-
type: Input
|
|
297
|
-
}], expandedChange: [{
|
|
298
|
-
type: Output
|
|
299
|
-
}], onKeyUp: [{
|
|
300
|
-
type: HostListener,
|
|
301
|
-
args: ['keyup', ['$event']]
|
|
302
|
-
}] } });
|
|
303
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxvRUFBb0UsQ0FBQTtBQUUzRSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFFSixXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzFDLE9BQU8sRUFBRSxlQUFlLEVBQWtCLE1BQU0sb0JBQW9CLENBQUE7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxNQUFNLENBQUE7QUFFOUMsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sbUVBQW1FLENBQUE7QUFDekgsT0FBTyxFQUNMLGFBQWEsR0FJZCxNQUFNLDRDQUE0QyxDQUFBOzs7Ozs7OztBQUVuRDs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLHFCQUtYLFNBQVEscUNBQXFDO0lBb0I3QyxJQUFnQyxPQUFPO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUE7SUFDOUIsQ0FBQztJQUVELElBQWdDLE9BQU87UUFDckMsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQTtJQUM5QixDQUFDO0lBYUQsdUZBQXVGO0lBQ3ZGLElBQWEsT0FBTyxDQUFDLEtBQXNCO1FBQ3pDLGlCQUFpQjtRQUNqQixJQUFJ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QUFLO2dCQUVPLE9BQU87c0JBQW5CLEtBQUs7Z0JBa0NHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBTUcseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUdHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBUUcsb0JBQW9CO3NCQUE1QixLQUFLO2dCQU9HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBUUcseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUtJLGNBQWM7c0JBQXZCLE1BQU07Z0JBNkVQLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ0BzZWJncm91cC9ncmVlbi1jb3JlL2NvbXBvbmVudHMvaWNvbi9pY29ucy90cmlhbmdsZS1leGNsYW1hdGlvbi5qcydcblxuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTZWxmLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgVFJBTlNMT0NPX1NDT1BFLCBUcmFuc2xvY29TY29wZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbydcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcblxuaW1wb3J0IHsgTmdndkJhc2VDb250cm9sVmFsdWVBY2Nlc3NvckNvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvYmFzZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yJ1xuaW1wb3J0IHtcbiAgRHJvcGRvd25VdGlscyxcbiAgT3B0aW9uLFxuICBPcHRpb25CYXNlLFxuICBPcHRpb25Hcm91cCxcbn0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9jb3JlJ1xuXG4vKipcbiAqIEEgZHJvcGRvd24gYWxsb3dzIHRoZSB1c2VyIHRvIHNlbGVjdCBhbiBvcHRpb24gZnJvbSBhIGxpc3QuXG4gKiBEcm9wZG93bnMgZW5hYmxlcyB1c2VycyB0byBtYWtlIGEgcXVpY2sgc2VsZWN0aW9uIG9mIHRoZSBhdmFpbGFibGUgb3B0aW9ucyBmb3IgYSBzcGVjaWZpYyBlbnRyeS5cbiAqIGh0dHBzOi8vZGVzaWdubGlicmFyeS5zZWJncm91cC5jb20vY29tcG9uZW50cy9jb21wb25lbnQtZHJvcGRvd25cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi1kcm9wZG93bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZEcm9wZG93bkNvbXBvbmVudDxcbiAgICBLID0gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgICBWID0gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgICBUIGV4dGVuZHMgT3B0aW9uPEssIFY+ID0gT3B0aW9uPEssIFY+LFxuICA+XG4gIGV4dGVuZHMgTmdndkJhc2VDb250cm9sVmFsdWVBY2Nlc3NvckNvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzXG57XG4gIC8qKiBDdXN0b20gdGVtcGxhdGUgZm9yIGRpc3BsYXlpbmcgb3B0aW9ucyBhbmQgZ3JvdXBzLiAqL1xuICBAQ29udGVudENoaWxkKCdzZWxlY3RlZFRwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgc2VsZWN0ZWRDb250ZW50VHBsOlxuICAgIHwgVGVtcGxhdGVSZWY8T3B0aW9uQmFzZTxUPj5cbiAgICB8IHVuZGVmaW5lZFxuICBAQ29udGVudENoaWxkKCdvcHRpb25UcGwnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIG9wdGlvbkNvbnRlbnRUcGw6XG4gICAgfCBUZW1wbGF0ZVJlZjxPcHRpb25CYXNlPGFueT4+XG4gICAgfCB1bmRlZmluZWRcbiAgQENvbnRlbnRDaGlsZCgnZ3JvdXBMYWJlbFRwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgZ3JvdXBMYWJlbFRwbDpcbiAgICB8IFRlbXBsYXRlUmVmPE9wdGlvbkJhc2U8YW55Pj5cbiAgICB8IHVuZGVmaW5lZFxuXG4gIC8qKlxuICAgKiBTcGVjaWFsIHByb3BlcnR5IHVzZWQgZm9yIHNlbGVjdGluZyBET00gZWxlbWVudHMgZHVyaW5nIGF1dG9tYXRlZCBVSSB0ZXN0aW5nLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdGhvb2snKSBASW5wdXQoKSB0aG9vazogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9XG4gICAgJ2Ryb3Bkb3duJ1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc21hbGwnKSBnZXQgaXNTbWFsbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnc21hbGwnXG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmxhcmdlJykgZ2V0IGlzTGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ2xhcmdlJ1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc3BsYXllZCBzaXplIG9mIHRoZSBkcm9wZG93bi5cbiAgICovXG4gIEBJbnB1dCgpIHNpemU6ICdzbWFsbCcgfCAnbGFyZ2UnID0gJ2xhcmdlJ1xuXG4gIC8qKiBUZXh0IHNob3duIGJlZm9yZSBhbiBvcHRpb24gaXMgc2VsZWN0ZWQuICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIC8qKiBTcGVjaWZpYyB2YWx1ZSBmb3IgYXJpYS1sYWJlbC4gSWYgbm90IHByb3ZpZGVkLCBsYWJlbC9sYWJlbFRwbCB3aWxsIGJlIHVzZWQuICovXG4gIEBJbnB1dCgpIGFyaWFMYWJlbD86IHN0cmluZ1xuICAvKiogSWYgdGhlIGRyb3Bkb3duIHNob3VsZCBjbG9zZSB3aGVuIHNjcm9sbGluZyB0aGUgdmlld3BvcnQuIERlZmF1bHQ6IGZhbHNlICovXG4gIEBJbnB1dCgpIGNsb3NlT25TY3JvbGwgPSBmYWxzZVxuICAvKiogTGlzdCBvZiB7QGxpbmsgT3B0aW9ufSBhbmQge0BsaW5rIE9wdGlvbkdyb3VwfSBsaXN0ZWQgd2hlbiBkcm9wZG93biBpcyBleHBhbmRlZC4gKi9cbiAgQElucHV0KCkgc2V0IG9wdGlvbnModmFsdWU6IE9wdGlvbkJhc2U8VD5bXSkge1xuICAgIC8vIHVwZGF0ZSBvcHRpb25zXG4gICAgdGhpcy5fb3B0aW9ucyA9IHZhbHVlXG4gICAgLy8gYWxyZWFkeSBoYXMgYSBudWxsL3VuZGVmaW5lZCBrZXlcbiAgICBjb25zdCBudWxsaXNoT3B0aW9uID0gdGhpcy5kcm9wZG93blV0aWxzXG4gICAgICAuZmxhdHRlbk9wdGlvbnModmFsdWUsIGZhbHNlKVxuICAgICAgLmZpbmQoKG9wdGlvbikgPT4gb3B0aW9uLmtleSA9PSBudWxsKVxuICAgIC8vIGlmIHRoZSBkcm9wZG93biBpcyBvcHRpb25hbCwgYWRkIGEgbnVsbCB2YWx1ZSB0byBkZXNlbGVjdCBvcHRpb25cbiAgICBpZiAoIXRoaXMucmVxdWlyZWQgJiYgIW51bGxpc2hPcHRpb24gJiYgdGhpcy5hbGxvd0NvbnRyb2xOdWxsaXNoT3B0aW9uKSB7XG4gICAgICB0aGlzLl9vcHRpb25zID0gW3RoaXMuZGVmYXVsdE51bGxpc2hPcHRpb25dLmNvbmNhdCh0aGlzLl9vcHRpb25zKVxuICAgIH1cblxuICAgIC8vIHNldCBkZWZhdWx0IHZhbHVlIGFuZCBlbWl0IGlmIHRoZXJlIGlzIG9ubHkgb25lIG9wdGlvblxuICAgIGlmICh2YWx1ZS5sZW5ndGggPT09IDEgJiYgdGhpcy5yZXF1aXJlZCAmJiB0aGlzLnNlbGVjdE9uU2luZ2xlT3B0aW9uKSB7XG4gICAgICBjb25zdCBvbmx5T3B0aW9uID0gdGhpcy5kcm9wZG93blV0aWxzLmZsYXR0ZW5PcHRpb25zKHZhbHVlLCBmYWxzZSlbMF1cbiAgICAgIHRoaXMudXBkYXRlTW9kZWwob25seU9wdGlvbilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIGRvbid0IHVwZGF0ZSBsb2NhbCBzdGF0ZSBpZiB3ZSBzaG91bGRuJ3QgY29udHJvbCBudWxsaXNoIHZhbHVlIGFuZCB3ZSBjYW50IGZpbmQgdGhlIHNlbGVjdGVkIHZhbHVlIGFtb25nc3QgdGhlIG9wdGlvbnNcbiAgICBjb25zdCBtYXRjaGluZ09wdGlvbiA9IHRoaXMuZHJvcGRvd25VdGlsc1xuICAgICAgLmZsYXR0ZW5PcHRpb25zKHZhbHVlLCBmYWxzZSlcbiAgICAgIC5maW5kKChvcHRpb24pID0+IG9wdGlvbi5rZXkgPT0gdGhpcy5uZ0NvbnRyb2w/LnZhbHVlKVxuICAgIGlmICghdGhpcy5hbGxvd0NvbnRyb2xOdWxsaXNoT3B0aW9uICYmICFtYXRjaGluZ09wdGlvbikgcmV0dXJuXG5cbiAgICAvLyBVcGRhdGUgbG9jYWwgc3RhdGVcbiAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5uZ0NvbnRyb2w/LnZhbHVlKVxuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKTogT3B0aW9uQmFzZTxUPltdIHtcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9uc1xuICB9XG5cbiAgLyoqIFRoZSBhZGRpdGlvbmFsIGFtb3VudCB0byBzaG93IHdoZW4gb3B0aW9uIGlzIHNjcm9sbGVkIGludG8gdmlldy4gKi9cbiAgQElucHV0KCkgc2Nyb2xsT2Zmc2V0ID0gMjRcblxuICAvKipcbiAgICogQWxsb3cgdGhpcyBjb21wb25lbnQgdG8gYWRkLyByZW1vdmUgbnVsbGlzaCBvcHRpb25zIGJhc2VkIG9uIHdldGhlciB0aGUgY29udHJvbCBpcyByZXF1aXJlZCBvciBub3RcbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIEBJbnB1dCgpIGFsbG93Q29udHJvbE51bGxpc2hPcHRpb24gPSB0cnVlXG5cbiAgLyoqIFRleHQgdG8gaGlnaGxpZ2h0IGluIG9wdGlvbiAqL1xuICBASW5wdXQoKSB0ZXh0VG9IaWdobGlnaHQ/OiBzdHJpbmdcblxuICAvKipcbiAgICogSWYgb25seSBvbmUgb3B0aW9uIGV4aXN0cyBpbiBvcHRpb25zW10sIGRlZmF1bHQgaXMgdG8gc2VsZWN0IGl0LlxuICAgKiBUaGlzIGlucHV0IGNhbiBiZSB1c2VkIHRvIGFsdGVyIHRoYXQgYmVoYXZpb3VyIHNvIGl0IGRvZXNuJ3QgYXV0b21hdGljYWxseVxuICAgKiBzZWxlY3QgYSB2YWx1ZSBpZiBpdCdzIHRoZSBvbmx5IG9uZS5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIEBJbnB1dCgpIHNlbGVjdE9uU2luZ2xlT3B0aW9uID0gdHJ1ZVxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGNvbnRyb2wgaWYgdGhlIGRyb3Bkb3duIGxpc3Qgc2hvdWxkIHNlbGVjdCB0aGUgY3VycmVudCBhY3RpdmUgZWxlbWVudCwgd2hlbiBTcGFjZSBpcyBwcmVzc2VkIG9uIHRoZSBrZXlib2FyZC5cbiAgICogUHJpbWFyeSB1c2FnZSBpcyBmb3IgdHlwZWFoZWFkLCB3aGVyZSB0aGUgc2hvdWxkIGJlIGFibGUgdG8gd3JpdGUgYSBmaWx0ZXIgcXVlcnkgY29udGFpbmluZyBzcGFjZXMsXG4gICAqIGJ1dCBub3Qgc2VsZWN0IHRoZSBjdXJyZW50IGFjdGl2ZSBlbGVtZW50IHdpdGggU3BhY2UuXG4gICAqL1xuICBASW5wdXQoKSBzZWxlY3RXaXRoU3BhY2UgPSB0cnVlXG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIGNoYW5nZXMgc2hvdWxkIGJlIGhhbmRsZWQgYnkgdGhlIGRyb3Bkb3duLlxuICAgKiBJZiBzZXQgdG8gZmFsc2UsIGFsbCBjaGFuZ2VzIHdpbGwgYmUgaGFuZGxlZCBieSB0aGUgZHJvcGRvd24uXG4gICAqIElmIHNldCB0byB0cnVlLCBvbmx5IGNoYW5nZXMgdGhhdCBhcmUgZGlzdGluY3QgZnJvbSB0aGUgY3VycmVudCB2YWx1ZSB3aWxsIGJlIGhhbmRsZWQuXG4gICAqIERlZmF1bHRzIHRvIHRydWUuXG4gICAqL1xuICBASW5wdXQoKSBvbmx5SGFuZGxlRGlzdGluY3RDaGFuZ2VzID0gdHJ1ZVxuXG4gIC8qKlxuICAgKiBFbWl0cyBjaGFuZ2VzIG9mIHRoZSBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgZHJvcGRvd25cbiAgICovXG4gIEBPdXRwdXQoKSBleHBhbmRlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuXG4gIC8qKiBAaW50ZXJuYWwgbnVsbGlzaCBvcHRpb24uICovXG4gIGdldCBkZWZhdWx0TnVsbGlzaE9wdGlvbigpOiBPcHRpb25CYXNlPGFueT4ge1xuICAgIHJldHVybiB7IGtleTogbnVsbCwgbGFiZWw6IHRoaXMucGxhY2Vob2xkZXIgPz8gJ1xcdTAwQTAnIH1cbiAgfVxuXG4gIC8qKiBUaGUgY3VycmVudCBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgZHJvcGRvd24gb3B0aW9ucy4gKi9cbiAgcHVibGljIGV4cGFuZGVkID0gZmFsc2VcbiAgLyoqIFRoZSBjdXJyZW50IG9wdGlvbiBzZWxlY3RlZCBiYXNlZCBvbiBudW1lcmljIGluZGV4LiAqL1xuICBwdWJsaWMgYWN0aXZlSW5kZXggPSAtMVxuICAvKiogU3Vic2NyaWJlIGlmIGRyb3Bkb3duIGV4cGFuZGVkIHRvIGxpc3RlbiB0byBjbGljayBvdXRzaWRlIHRvIGNsb3NlIGRyb3Bkb3duLiAqL1xuICBwcml2YXRlIG9uQ2xpY2tTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZFxuICAvKiogU3Vic2NyaWJlIGlmIGRyb3Bkb3duIGV4cGFuZGVkIHRvIGxpc3RlbiB0byBzY3JvbGwgb3V0c2lkZSB0byBjbG9zZSBkcm9wZG93bi4gKi9cbiAgcHJpdmF0ZSBvblNjcm9sbFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkXG5cbiAgcHVibGljIGtleUV2ZW50OiBLZXlib2FyZEV2ZW50ID0ge30gYXMgS2V5Ym9hcmRFdmVudFxuICBwcml2YXRlIF9vcHRpb25zOiBPcHRpb25CYXNlPFQ+W10gPSBbXVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChUUkFOU0xPQ09fU0NPUEUpXG4gICAgcHJvdGVjdGVkIHRyYW5zbG9jb1Njb3BlOiBUcmFuc2xvY29TY29wZSxcbiAgICBwcm90ZWN0ZWQgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcm90ZWN0ZWQgZHJvcGRvd25VdGlsczogRHJvcGRvd25VdGlsczxLLCBWLCBUPixcbiAgKSB7XG4gICAgc3VwZXIobmdDb250cm9sLCB0cmFuc2xvY29TY29wZSwgY2RyKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLnJlcXVpcmVkPy5jdXJyZW50VmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgaXNSZXF1aXJlZCA9IGNoYW5nZXMucmVxdWlyZWQuY3VycmVudFZhbHVlXG4gICAgICAvLyByZW1vdmUgbnVsbGlzaCBvcHRpb25cbiAgICAgIGNvbnN0IGhhc051bGxpc2hPcHRpb24gPVxuICAgICAgICB0aGlzLmRyb3Bkb3duVXRpbHMuZmxhdHRlbk9wdGlvbnModGhpcy5fb3B0aW9ucywgZmFsc2UpWzBdPy5rZXkgPT0gbnVsbFxuICAgICAgLy8gaWYgcmVxdWlyZWQsIHJlbW92ZSBudWxsaXNoIG9wdGlvblxuICAgICAgaWYgKGlzUmVxdWlyZWQgJiYgaGFzTnVsbGlzaE9wdGlvbiAmJiB0aGlzLmFsbG93Q29udHJvbE51bGxpc2hPcHRpb24pIHtcbiAgICAgICAgdGhpcy5fb3B0aW9ucyA9IHRoaXMuX29wdGlvbnMuc2xpY2UoMSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICAvLyBpZiBub3QgcmVxdWlyZWQsIGFkZCBudWxsaXNoIG9wdGlvblxuICAgICAgaWYgKCFpc1JlcXVpcmVkICYmICFoYXNOdWxsaXNoT3B0aW9uICYmIHRoaXMuYWxsb3dDb250cm9sTnVsbGlzaE9wdGlvbikge1xuICAgICAgICB0aGlzLl9vcHRpb25zID0gW3RoaXMuZGVmYXVsdE51bGxpc2hPcHRpb25dLmNvbmNhdCh0aGlzLl9vcHRpb25zKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2xpY2tTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKClcbiAgICB0aGlzLm9uU2Nyb2xsU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gIH1cblxuICAvKiogQGludGVybmFsIG92ZXJyaWRlIHRvIGNvcnJlY3RseSBzZXQgc3RhdGUgZnJvbSBmb3JtIHZhbHVlICovXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmRyb3Bkb3duVXRpbHMuZmxhdHRlbk9wdGlvbnModGhpcy5fb3B0aW9ucywgZmFsc2UpXG4gICAgdGhpcy5zdGF0ZSA9IG9wdGlvbnMuZmluZCgob3B0aW9uKSA9PiBvcHRpb24ua2V5ID09PSB2YWx1ZSlcbiAgfVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRVZFTlRTXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAvKiogQGludGVybmFsICovXG4gIG9uU2VsZWN0Q2hhbmdlKG9wdGlvbjogVCkge1xuICAgIGlmIChvcHRpb24uZGlzYWJsZWQpIHJldHVyblxuICAgIHRoaXMudXBkYXRlTW9kZWwob3B0aW9uKVxuICAgIHRoaXMuc2V0RXhwYW5kZWQoZmFsc2UpXG4gIH1cblxuICAvLyAvKipcbiAgLy8gICogQGludGVybmFsXG4gIC8vICAqIEVudGVyIHRvZ2dsZXMgdGhlIGRyb3Bkb3duLCBob21lLCBlbmQsIGFuZCwgYXJyb3dzIGNoYW5nZSB0aGUgaW5kZXguXG4gIC8vICAqIEBwYXJhbSBldmVudCBmaXJlZCBjb250YWluaW5nIHdoaWNoIGtleSB3YXMgcmVsZWFzZWQuXG4gIC8vICAqL1xuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICB0aGlzLmtleUV2ZW50ID0gZXZlbnRcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGRyb3Bkb3duIG9uIGNsaWNrIG91dHNpZGUuXG4gICAqL1xuICBzdWJzY3JpYmVUb091dHNpZGVDbGlja0V2ZW50KCkge1xuICAgIHRoaXMub25DbGlja1N1YnNjcmlwdGlvbiA9IGZyb21FdmVudChkb2N1bWVudCwgJ2NsaWNrJykuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHRoaXMuZXhwYW5kZWQgJiZcbiAgICAgICAgICAhdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQpXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd24oKVxuICAgICAgICAgIHRoaXMub25DbGlja1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pXG4gIH1cbiAgc3Vic2NyaWJlVG9PdXRzaWRlU2Nyb2xsRXZlbnQoKSB7XG4gICAgdGhpcy5vblNjcm9sbFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudChkb2N1bWVudCwgJ3Njcm9sbCcpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLmV4cGFuZGVkICYmXG4gICAgICAgICAgIXRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKClcbiAgICAgICAgICB0aGlzLm9uU2Nyb2xsU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSlcbiAgfVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSEVMUEVSU1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZHJvcGRvd24gdmFsdWUgdG8gZ2l2ZW4gb3B0aW9uLlxuICAgKiBAcGFyYW0gdmFsdWUgdGhlIGRyb3Bkb3duIG9wdGlvbiB0byBzZWxlY3QuXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZU1vZGVsKHZhbHVlOiBUKSB7XG4gICAgdGhpcy5zdGF0ZSA9IHZhbHVlXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZS5rZXkpXG4gIH1cblxuICAvKiogVG9nZ2xlIHRoZSBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgZHJvcGRvd24gb3B0aW9ucy4gKi9cbiAgdG9nZ2xlRHJvcGRvd24oKSB7XG4gICAgdGhpcy5zZXRFeHBhbmRlZCghdGhpcy5leHBhbmRlZClcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGV4cGFuZGVkIHN0YXRlIG9mIHRoZSBkcm9wZG93biBvcHRpb25zLiBJZiB0cnVlIHRoZSBvcHRpb25zIGFyZSBzaG93biBiZWxvdyB0aGUgZmllbGQuXG4gICAqIEFjdGl2YXRlIG9uIGNsaWNrIGV2ZW50IHRvIGJlIGFibGUgdG8gY2xvc2UgZHJvcGRvd24gb24gY2xpY2sgb3V0c2lkZS5cbiAgICogQHBhcmFtIHN0YXRlIHRoZSBleHBhbmRlZCBzdGF0ZSB3aGljaCB0byBzZXQuXG4gICAqL1xuICBzZXRFeHBhbmRlZChzdGF0ZSA9IHRydWUpIHtcbiAgICB0aGlzLmV4cGFuZGVkID0gc3RhdGVcbiAgICB0aGlzLmV4cGFuZGVkQ2hhbmdlLmVtaXQodGhpcy5leHBhbmRlZClcbiAgICBpZiAodGhpcy5leHBhbmRlZCkge1xuICAgICAgdGhpcy5zdWJzY3JpYmVUb091dHNpZGVDbGlja0V2ZW50KClcbiAgICAgIGlmICh0aGlzLmNsb3NlT25TY3JvbGwpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb091dHNpZGVTY3JvbGxFdmVudCgpXG4gICAgICB9XG4gICAgfVxuICAgIGlmICghdGhpcy5leHBhbmRlZCkgdGhpcy5vblRvdWNoZWQoKVxuICB9XG5cbiAgLyogVFlQRSBDQVNUUyAqL1xuXG4gIC8qKlxuICAgKiBUeXBlY2FzdCBhbnl0aGluZyB0byBhbiB7QGxpbmsgT3B0aW9ufS5cbiAgICogQHBhcmFtIG9wdGlvbiB0aGUgb2JqZWN0IHRvIHR5cGVjYXN0LlxuICAgKi9cbiAgY2FzdE9wdGlvbihvcHRpb246IGFueSk6IFQge1xuICAgIHJldHVybiBvcHRpb25cbiAgfVxuXG4gIC8qKlxuICAgKiBUeXBlY2FzdCBhbnl0aGluZyB0byBhbiB7QGxpbmsgT3B0aW9uR3JvdXB9LlxuICAgKiBAcGFyYW0gZ3JvdXAgdGhlIG9iamVjdCB0byB0eXBlY2FzdC5cbiAgICovXG4gIGNhc3RHcm91cChncm91cDogYW55KTogT3B0aW9uR3JvdXA8VD4ge1xuICAgIHJldHVybiBncm91cFxuICB9XG5cbiAgLyogVFlQRSBDSEVDS1MgKi9cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIGFyZ3VtZW50IGlzIGFuIHtAbGluayBPcHRpb259LlxuICAgKiBAcGFyYW0gb3B0aW9uIHRoZSBvYmplY3QgdG8gY2hlY2suXG4gICAqL1xuICBpc09wdGlvbihvcHRpb246IE9wdGlvbkJhc2U8VD4pOiBvcHRpb24gaXMgT3B0aW9uR3JvdXA8VD4ge1xuICAgIHJldHVybiAhKCdvcHRpb25zJyBpbiBvcHRpb24pXG4gIH1cbn1cbiIsIjwhLS0gTEFCRUwgLS0+XG48bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogc2NvcGVcIj5cbiAgPGxhYmVsXG4gICAgW2lkXT1cImlkICsgJy1sYWJlbCdcIlxuICAgIGNsYXNzPVwiZ2RzLWZpZWxkLWxhYmVsIGhpZGUtaWYtZW1wdHlcIlxuICAgIFthdHRyLmZvcl09XCJpZCArICctdG9nZ2xlJ1wiXG4gICAgKm5nSWY9XCJsYWJlbENvbnRlbnRUcGwgfHwgbGFiZWxcIlxuICA+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsQ29udGVudFRwbCB8fCBiYXNpY0xhYmVsQ29udGVudFRwbFwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNiYXNpY0xhYmVsQ29udGVudFRwbD5cbiAgICAgIDwhLS0gdG8gdHJpZ2dlciBjc3M6ZW1wdHkgaWYgbm8gbGFiZWwgd2FzIGFkZGVkIC0tPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsXCI+XG4gICAgICAgIHt7IGxhYmVsIH19XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCJvcHRpb25hbCA9PT0gdHJ1ZSB8fCAocmVxdWlyZWQgIT09IHRydWUgJiYgb3B0aW9uYWwgIT09IGZhbHNlKVwiXG4gICAgICAgICAgY2xhc3M9XCJnZHMtZmllbGQtbGFiZWwtLW9wdGlvbmFsXCJcbiAgICAgICAgPlxuICAgICAgICAgICh7eyB0KCdsYWJlbC5vcHRpb25hbCcpIH19KVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2xhYmVsPlxuXG4gIDwhLS0gREVTQ1JJUFRJT04gLS0+XG4gIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiICpuZ0lmPVwiZGVzY3JpcHRpb25cIj57eyBkZXNjcmlwdGlvbiB9fTwvZGl2PlxuXG4gIDwhLS0gTE9DS0VEIElOUFVUIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9ja2VkXCI+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICBsb2NrZWRUcGwgfHwgZGVmYXVsdExvY2tlZFRwbDtcbiAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHN0YXRlIH1cbiAgICAgIFwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0TG9ja2VkVHBsPlxuICAgICAgPGRpdlxuICAgICAgICBbaWRdPVwiaWQgKyAnLWlucHV0J1wiXG4gICAgICAgIGNsYXNzPVwibmdndi1maWVsZC0tbG9ja2VkXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIudmFsdWVdPVwic3RhdGVcIlxuICAgICAgICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiaWQgKyAnLWxhYmVsICcgKyBpZCArICctaW5wdXQnXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhc3RhdGVcIiBjbGFzcz1cInVuc2V0LXN0YXRlXCI+LTwvc3Bhbj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICBzZWxlY3RlZENvbnRlbnRUcGwgfHwgZGVmYXVsdFNlbGVjdGVkQ29udGVudFRwbDtcbiAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHN0YXRlIH1cbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPCEtLSBJTlBVVCAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsb2NrZWRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ2RzLWlucHV0LXdyYXBwZXIgZHJvcGRvd24td3JhcHBlclwiPlxuICAgICAgPGRpdiAjaW5wdXQgW2lkXT1cImlkICsgJy1pbnB1dCdcIiBjbGFzcz1cImRyb3Bkb3duXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBbaWRdPVwiaWQgKyAnLXRvZ2dsZSdcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJuZ2d2LWZpZWxkLWRyb3Bkb3duX19sYWJlbCB0b2dnbGVcIlxuICAgICAgICAgIFtjbGFzcy5uZ2d2LWZpZWxkLS1lcnJvcl09XCJpbnZhbGlkXCJcbiAgICAgICAgICByb2xlPVwiY29tYm9ib3hcIlxuICAgICAgICAgIGFyaWEtb3ducz1cImxpc3Rib3hcIlxuICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJsaXN0Ym94XCJcbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPVwibGlzdGJveFwiXG4gICAgICAgICAgW2F0dHIuZGF0YS10aG9va109XCJ0aG9vayArICctdG9nZ2xlJ1wiXG4gICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJleHBhbmRlZFwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cIlxuICAgICAgICAgICAgYXJpYUxhYmVsID8gbnVsbCA6IGlkICsgJy1sYWJlbCAnICsgaWQgKyAnLXRvZ2dsZSdcbiAgICAgICAgICBcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsIHx8IG51bGxcIlxuICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRDb250ZW50VHBsIHx8IGRlZmF1bHRTZWxlY3RlZENvbnRlbnRUcGw7XG4gICAgICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHN0YXRlIH1cbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPG5nZ3YtZHJvcGRvd24tbGlzdFxuICAgICAgICAgICNkcm9wRG93bkxpc3RcbiAgICAgICAgICBbb3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAgICAgICBbc2Nyb2xsT2Zmc2V0XT1cInNjcm9sbE9mZnNldFwiXG4gICAgICAgICAgW3N0YXRlXT1cInN0YXRlXCJcbiAgICAgICAgICBbZXhwYW5kZWRdPVwiZXhwYW5kZWRcIlxuICAgICAgICAgIFtvcHRpb25Db250ZW50VHBsXT1cIm9wdGlvbkNvbnRlbnRUcGxcIlxuICAgICAgICAgIFtncm91cExhYmVsVHBsXT1cImdyb3VwTGFiZWxUcGxcIlxuICAgICAgICAgIFt0ZXh0VG9IaWdobGlnaHRdPVwidGV4dFRvSGlnaGxpZ2h0XCJcbiAgICAgICAgICBbb25seUVtaXREaXN0aW5jdENoYW5nZXNdPVwib25seUhhbmRsZURpc3RpbmN0Q2hhbmdlc1wiXG4gICAgICAgICAgW3NlbGVjdFdpdGhTcGFjZV09XCJzZWxlY3RXaXRoU3BhY2VcIlxuICAgICAgICAgIFtkeW5hbWljUG9zaXRpb25dPVwidHJ1ZVwiXG4gICAgICAgICAgKGNsb3NlZCk9XCJzZXRFeHBhbmRlZChmYWxzZSlcIlxuICAgICAgICAgIChzZWxlY3RlZFZhbHVlQ2hhbmdlZCk9XCJvblNlbGVjdENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L25nZ3YtZHJvcGRvd24tbGlzdD5cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBFUlJPUlMgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ2RzLWZvcm0taXRlbV9fZm9vdGVyIGVycm9yLXdyYXBwZXJcIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cImZvcm0taW5mbyBmb3JtLWluZm8tLWVycm9yXCJcbiAgICAgICAgICBbYXR0ci5mb3JdPVwiaWQgKyAnLWlucHV0J1wiXG4gICAgICAgICAgKm5nSWY9XCJpbnZhbGlkICYmIChlcnJvciB8fCBuZ0NvbnRyb2w/LmludmFsaWQpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXJyb3ItaWNvblwiPlxuICAgICAgICAgICAgPGdkcy1pY29uLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uXG4gICAgICAgICAgICAgIHdpZHRoPVwiMTZcIlxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxNlwiXG4gICAgICAgICAgICAgIFtzb2xpZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgKm5nZ0NvcmVFbGVtZW50XG4gICAgICAgICAgICA+PC9nZHMtaWNvbi10cmlhbmdsZS1leGNsYW1hdGlvbj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICpuZ0lmPVwiZXJyb3I7IGVsc2UgZXJyb3JzUmVmXCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgICAgID57eyBlcnJvciB9fTwvc3BhblxuICAgICAgICAgID5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2Vycm9yc1JlZj5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgKm5nSWY9XCJmaXJzdEVycm9yIGFzIGVycm9yXCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyB0KCdlcnJvci5maWVsZCcgKyBlcnJvcj8uY29kZSwgZXJyb3I/LnBhcmFtcykgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gQ0hJTERSRU4gLS0+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFNlbGVjdGVkQ29udGVudFRwbCBsZXQtc3RhdGU+XG4gICAgPCEtLSBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L3RlbXBsYXRlL2VxZXFlcSAtLT5cbiAgICB7eyBzdGF0ZT8ua2V5ICE9IG51bGwgJiYgc3RhdGU/LmxhYmVsID8gdChzdGF0ZS5sYWJlbCkgOiBwbGFjZWhvbGRlciB9fVxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
3
|
-
import { NggCoreWrapperModule } from '@sebgroup/green-angular/src/lib/shared';
|
|
4
|
-
import { NggvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n';
|
|
5
|
-
import { NggvTooltipModule } from '@sebgroup/green-angular/src/v-angular/tooltip';
|
|
6
|
-
import { NggvDropdownListComponent } from './dropdown-list/dropdown-list.component';
|
|
7
|
-
import { NggvDropdownComponent } from './dropdown.component';
|
|
8
|
-
import { NggvTypeaheadModule } from './typeahead/typeahead.module';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class NggvDropdownModule {
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownModule, declarations: [NggvDropdownComponent, NggvDropdownListComponent], imports: [CommonModule,
|
|
13
|
-
NggCoreWrapperModule,
|
|
14
|
-
NggvTypeaheadModule,
|
|
15
|
-
NggvTooltipModule,
|
|
16
|
-
NggvI18nModule], exports: [NggvDropdownComponent, NggvDropdownListComponent] }); }
|
|
17
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownModule, imports: [CommonModule,
|
|
18
|
-
NggCoreWrapperModule,
|
|
19
|
-
NggvTypeaheadModule,
|
|
20
|
-
NggvTooltipModule,
|
|
21
|
-
NggvI18nModule] }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NggvDropdownModule, decorators: [{
|
|
24
|
-
type: NgModule,
|
|
25
|
-
args: [{
|
|
26
|
-
declarations: [NggvDropdownComponent, NggvDropdownListComponent],
|
|
27
|
-
imports: [
|
|
28
|
-
CommonModule,
|
|
29
|
-
NggCoreWrapperModule,
|
|
30
|
-
NggvTypeaheadModule,
|
|
31
|
-
NggvTooltipModule,
|
|
32
|
-
NggvI18nModule,
|
|
33
|
-
],
|
|
34
|
-
exports: [NggvDropdownComponent, NggvDropdownListComponent],
|
|
35
|
-
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
36
|
-
}]
|
|
37
|
-
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvZHJvcGRvd24vZHJvcGRvd24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRWhFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQzdFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQTtBQUNqRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUNuRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTs7QUFjbEUsTUFBTSxPQUFPLGtCQUFrQjsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsaUJBWGQscUJBQXFCLEVBQUUseUJBQXlCLGFBRTdELFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixjQUFjLGFBRU4scUJBQXFCLEVBQUUseUJBQXlCO2dIQUcvQyxrQkFBa0IsWUFUM0IsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGNBQWM7OzRGQUtMLGtCQUFrQjtrQkFaOUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSx5QkFBeUIsQ0FBQztvQkFDaEUsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSx5QkFBeUIsQ0FBQztvQkFDM0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBOZ2dDb3JlV3JhcHBlck1vZHVsZSB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy9saWIvc2hhcmVkJ1xuaW1wb3J0IHsgTmdndkkxOG5Nb2R1bGUgfSBmcm9tICdAc2ViZ3JvdXAvZ3JlZW4tYW5ndWxhci9zcmMvdi1hbmd1bGFyL2kxOG4nXG5pbXBvcnQgeyBOZ2d2VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvdG9vbHRpcCdcbmltcG9ydCB7IE5nZ3ZEcm9wZG93bkxpc3RDb21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLWxpc3QvZHJvcGRvd24tbGlzdC5jb21wb25lbnQnXG5pbXBvcnQgeyBOZ2d2RHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLmNvbXBvbmVudCdcbmltcG9ydCB7IE5nZ3ZUeXBlYWhlYWRNb2R1bGUgfSBmcm9tICcuL3R5cGVhaGVhZC90eXBlYWhlYWQubW9kdWxlJ1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtOZ2d2RHJvcGRvd25Db21wb25lbnQsIE5nZ3ZEcm9wZG93bkxpc3RDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE5nZ0NvcmVXcmFwcGVyTW9kdWxlLFxuICAgIE5nZ3ZUeXBlYWhlYWRNb2R1bGUsXG4gICAgTmdndlRvb2x0aXBNb2R1bGUsXG4gICAgTmdndkkxOG5Nb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtOZ2d2RHJvcGRvd25Db21wb25lbnQsIE5nZ3ZEcm9wZG93bkxpc3RDb21wb25lbnRdLFxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZEcm9wZG93bk1vZHVsZSB7fVxuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './dropdown.component';
|
|
2
|
-
export * from './dropdown.module';
|
|
3
|
-
export * from './dropdown-list';
|
|
4
|
-
export * from './typeahead';
|
|
5
|
-
export * from './dropdown-list';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9kcm9wZG93bi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGFBQWEsQ0FBQTtBQUMzQixjQUFjLGlCQUFpQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vZHJvcGRvd24tbGlzdCdcbmV4cG9ydCAqIGZyb20gJy4vdHlwZWFoZWFkJ1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi1saXN0J1xuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './typeahead-highlight/typeahead-highlight.component';
|
|
2
|
-
export * from './typeahead-input/typeahead-input.component';
|
|
3
|
-
export * from './typeahead-dropdown-list/typeahead-dropdown-list.component';
|
|
4
|
-
export * from './typeahead.directive';
|
|
5
|
-
export * from './typeahead.module';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9kcm9wZG93bi90eXBlYWhlYWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxREFBcUQsQ0FBQTtBQUNuRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNkRBQTZELENBQUE7QUFDM0UsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLG9CQUFvQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQtaGlnaGxpZ2h0L3R5cGVhaGVhZC1oaWdobGlnaHQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQtaW5wdXQvdHlwZWFoZWFkLWlucHV0LmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vdHlwZWFoZWFkLWRyb3Bkb3duLWxpc3QvdHlwZWFoZWFkLWRyb3Bkb3duLWxpc3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi90eXBlYWhlYWQubW9kdWxlJ1xuIl19
|