@sebgroup/green-angular 4.4.1 → 4.6.0
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/README.md +2 -2
- package/esm2022/index.mjs +19 -1
- package/esm2022/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +11 -4
- package/esm2022/lib/shared/on-scroll.directive.mjs +2 -2
- package/esm2022/src/lib/in-page-wizard/in-page-wizard-step-card.component.mjs +11 -4
- package/esm2022/src/lib/shared/on-scroll.directive.mjs +2 -2
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +287 -0
- package/esm2022/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +17 -0
- package/esm2022/src/v-angular/base-control-value-accessor/index.mjs +3 -0
- package/esm2022/src/v-angular/base-control-value-accessor/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +5 -0
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.component.mjs +25 -0
- package/esm2022/src/v-angular/breadcrumbs/breadcrumbs.module.mjs +20 -0
- package/esm2022/src/v-angular/breadcrumbs/index.mjs +3 -0
- package/esm2022/src/v-angular/breadcrumbs/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +5 -0
- package/esm2022/src/v-angular/button/button.component.mjs +108 -0
- package/esm2022/src/v-angular/button/button.module.mjs +20 -0
- package/esm2022/src/v-angular/button/index.mjs +3 -0
- package/esm2022/src/v-angular/button/sebgroup-green-angular-src-v-angular-button.mjs +5 -0
- package/esm2022/src/v-angular/card/card.component.mjs +11 -0
- package/esm2022/src/v-angular/card/card.module.mjs +18 -0
- package/esm2022/src/v-angular/card/index.mjs +3 -0
- package/esm2022/src/v-angular/card/sebgroup-green-angular-src-v-angular-card.mjs +5 -0
- package/esm2022/src/v-angular/character-countdown/character-countdown.directive.mjs +51 -0
- package/esm2022/src/v-angular/character-countdown/character-countdown.module.mjs +18 -0
- package/esm2022/src/v-angular/character-countdown/index.mjs +3 -0
- package/esm2022/src/v-angular/character-countdown/sebgroup-green-angular-src-v-angular-character-countdown.mjs +5 -0
- package/esm2022/src/v-angular/checkbox/checkbox.component.mjs +72 -0
- package/esm2022/src/v-angular/checkbox/checkbox.module.mjs +19 -0
- package/esm2022/src/v-angular/checkbox/index.mjs +3 -0
- package/esm2022/src/v-angular/checkbox/sebgroup-green-angular-src-v-angular-checkbox.mjs +5 -0
- package/esm2022/src/v-angular/core/core.globals.mjs +17 -0
- package/esm2022/src/v-angular/core/core.utils.mjs +28 -0
- package/esm2022/src/v-angular/core/index.mjs +3 -0
- package/esm2022/src/v-angular/core/sebgroup-green-angular-src-v-angular-core.mjs +5 -0
- package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +256 -0
- package/esm2022/src/v-angular/dropdown/dropdown-list/index.mjs +2 -0
- package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +239 -0
- package/esm2022/src/v-angular/dropdown/dropdown.module.mjs +22 -0
- package/esm2022/src/v-angular/dropdown/index.mjs +6 -0
- package/esm2022/src/v-angular/dropdown/sebgroup-green-angular-src-v-angular-dropdown.mjs +5 -0
- package/esm2022/src/v-angular/dropdown/typeahead/index.mjs +3 -0
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +98 -0
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +85 -0
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +132 -0
- package/esm2022/src/v-angular/dropdown/typeahead/typeahead.module.mjs +33 -0
- package/esm2022/src/v-angular/external-link/external-link.directive.mjs +37 -0
- package/esm2022/src/v-angular/external-link/external-link.module.mjs +18 -0
- package/esm2022/src/v-angular/external-link/index.mjs +3 -0
- package/esm2022/src/v-angular/external-link/sebgroup-green-angular-src-v-angular-external-link.mjs +5 -0
- package/esm2022/src/v-angular/i18n/i18n.json +12 -0
- package/esm2022/src/v-angular/i18n/i18n.module.mjs +83 -0
- package/esm2022/src/v-angular/i18n/i18n.test.module.mjs +89 -0
- package/esm2022/src/v-angular/i18n/index.mjs +3 -0
- package/esm2022/src/v-angular/i18n/sebgroup-green-angular-src-v-angular-i18n.mjs +5 -0
- package/esm2022/src/v-angular/info-circle/index.mjs +3 -0
- package/esm2022/src/v-angular/info-circle/info-circle.component.mjs +28 -0
- package/esm2022/src/v-angular/info-circle/info-circle.module.mjs +21 -0
- package/esm2022/src/v-angular/info-circle/sebgroup-green-angular-src-v-angular-info-circle.mjs +5 -0
- package/esm2022/src/v-angular/input/index.mjs +3 -0
- package/esm2022/src/v-angular/input/input.component.mjs +221 -0
- package/esm2022/src/v-angular/input/input.module.mjs +32 -0
- package/esm2022/src/v-angular/input/sebgroup-green-angular-src-v-angular-input.mjs +5 -0
- package/esm2022/src/v-angular/input-mask/config.mjs +9 -0
- package/esm2022/src/v-angular/input-mask/constants.mjs +2 -0
- package/esm2022/src/v-angular/input-mask/index.mjs +6 -0
- package/esm2022/src/v-angular/input-mask/input-mask-format.pipe.mjs +20 -0
- package/esm2022/src/v-angular/input-mask/input-mask.directive.mjs +165 -0
- package/esm2022/src/v-angular/input-mask/input-mask.module.mjs +35 -0
- package/esm2022/src/v-angular/input-mask/input-mask.types.mjs +2 -0
- package/esm2022/src/v-angular/input-mask/sebgroup-green-angular-src-v-angular-input-mask.mjs +5 -0
- package/esm2022/src/v-angular/modal/dialog/dialog.component.mjs +190 -0
- package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +56 -0
- package/esm2022/src/v-angular/modal/fold-out/fold-out.directive.mjs +19 -0
- package/esm2022/src/v-angular/modal/index.mjs +6 -0
- package/esm2022/src/v-angular/modal/modal.globals.mjs +17 -0
- package/esm2022/src/v-angular/modal/modal.module.mjs +40 -0
- package/esm2022/src/v-angular/modal/modal.types.mjs +2 -0
- package/esm2022/src/v-angular/modal/sebgroup-green-angular-src-v-angular-modal.mjs +5 -0
- package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +229 -0
- package/esm2022/src/v-angular/radio/index.mjs +3 -0
- package/esm2022/src/v-angular/radio/radio.component.mjs +130 -0
- package/esm2022/src/v-angular/radio/radio.module.mjs +20 -0
- package/esm2022/src/v-angular/radio/sebgroup-green-angular-src-v-angular-radio.mjs +5 -0
- package/esm2022/src/v-angular/slug/index.mjs +3 -0
- package/esm2022/src/v-angular/slug/sebgroup-green-angular-src-v-angular-slug.mjs +5 -0
- package/esm2022/src/v-angular/slug/slug.module.mjs +18 -0
- package/esm2022/src/v-angular/slug/slug.pipe.mjs +27 -0
- package/esm2022/src/v-angular/textarea/index.mjs +3 -0
- package/esm2022/src/v-angular/textarea/sebgroup-green-angular-src-v-angular-textarea.mjs +5 -0
- package/esm2022/src/v-angular/textarea/textarea.component.mjs +101 -0
- package/esm2022/src/v-angular/textarea/textarea.module.mjs +18 -0
- package/esm2022/src/v-angular/tooltip/index.mjs +3 -0
- package/esm2022/src/v-angular/tooltip/sebgroup-green-angular-src-v-angular-tooltip.mjs +5 -0
- package/esm2022/src/v-angular/tooltip/tooltip.directive.mjs +273 -0
- package/esm2022/src/v-angular/tooltip/tooltip.module.mjs +18 -0
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.component.mjs +287 -0
- package/esm2022/v-angular/base-control-value-accessor/base-control-value-accessor.module.mjs +17 -0
- package/esm2022/v-angular/base-control-value-accessor/index.mjs +3 -0
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.component.mjs +25 -0
- package/esm2022/v-angular/breadcrumbs/breadcrumbs.module.mjs +20 -0
- package/esm2022/v-angular/breadcrumbs/index.mjs +3 -0
- package/esm2022/v-angular/button/button.component.mjs +108 -0
- package/esm2022/v-angular/button/button.module.mjs +20 -0
- package/esm2022/v-angular/button/index.mjs +3 -0
- package/esm2022/v-angular/card/card.component.mjs +11 -0
- package/esm2022/v-angular/card/card.module.mjs +18 -0
- package/esm2022/v-angular/card/index.mjs +3 -0
- package/esm2022/v-angular/checkbox/checkbox.component.mjs +72 -0
- package/esm2022/v-angular/checkbox/checkbox.module.mjs +19 -0
- package/esm2022/v-angular/checkbox/index.mjs +3 -0
- package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +256 -0
- package/esm2022/v-angular/dropdown/dropdown-list/index.mjs +2 -0
- package/esm2022/v-angular/dropdown/dropdown.component.mjs +239 -0
- package/esm2022/v-angular/dropdown/dropdown.module.mjs +22 -0
- package/esm2022/v-angular/dropdown/index.mjs +6 -0
- package/esm2022/v-angular/dropdown/typeahead/index.mjs +3 -0
- package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +98 -0
- package/esm2022/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.mjs +85 -0
- package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +132 -0
- package/esm2022/v-angular/dropdown/typeahead/typeahead.module.mjs +33 -0
- package/esm2022/v-angular/i18n/i18n.json +12 -0
- package/esm2022/v-angular/i18n/i18n.module.mjs +83 -0
- package/esm2022/v-angular/i18n/i18n.test.module.mjs +89 -0
- package/esm2022/v-angular/i18n/index.mjs +3 -0
- package/esm2022/v-angular/info-circle/index.mjs +3 -0
- package/esm2022/v-angular/info-circle/info-circle.component.mjs +28 -0
- package/esm2022/v-angular/info-circle/info-circle.module.mjs +21 -0
- package/esm2022/v-angular/input/index.mjs +3 -0
- package/esm2022/v-angular/input/input.component.mjs +221 -0
- package/esm2022/v-angular/input/input.module.mjs +32 -0
- package/esm2022/v-angular/input-mask/config.mjs +9 -0
- package/esm2022/v-angular/input-mask/constants.mjs +2 -0
- package/esm2022/v-angular/input-mask/index.mjs +6 -0
- package/esm2022/v-angular/input-mask/input-mask-format.pipe.mjs +20 -0
- package/esm2022/v-angular/input-mask/input-mask.directive.mjs +165 -0
- package/esm2022/v-angular/input-mask/input-mask.module.mjs +35 -0
- package/esm2022/v-angular/input-mask/input-mask.types.mjs +2 -0
- package/esm2022/v-angular/modal/dialog/dialog.component.mjs +190 -0
- package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +56 -0
- package/esm2022/v-angular/modal/fold-out/fold-out.directive.mjs +19 -0
- package/esm2022/v-angular/modal/index.mjs +6 -0
- package/esm2022/v-angular/modal/modal.globals.mjs +17 -0
- package/esm2022/v-angular/modal/modal.module.mjs +40 -0
- package/esm2022/v-angular/modal/modal.types.mjs +2 -0
- package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +229 -0
- package/esm2022/v-angular/radio/index.mjs +3 -0
- package/esm2022/v-angular/radio/radio.component.mjs +130 -0
- package/esm2022/v-angular/radio/radio.module.mjs +20 -0
- package/esm2022/v-angular/textarea/index.mjs +3 -0
- package/esm2022/v-angular/textarea/textarea.component.mjs +101 -0
- package/esm2022/v-angular/textarea/textarea.module.mjs +18 -0
- package/esm2022/v-angular/tooltip/index.mjs +3 -0
- package/esm2022/v-angular/tooltip/tooltip.directive.mjs +273 -0
- package/esm2022/v-angular/tooltip/tooltip.module.mjs +18 -0
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs +10 -3
- package/fesm2022/sebgroup-green-angular-src-lib-in-page-wizard.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs +1 -1
- package/fesm2022/sebgroup-green-angular-src-lib-shared.mjs.map +1 -1
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs +308 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-base-control-value-accessor.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs +49 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-breadcrumbs.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs +131 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-button.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs +33 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-card.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs +73 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-character-countdown.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs +94 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-checkbox.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs +51 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-core.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +830 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs +58 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-external-link.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs +192 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-i18n.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs +53 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-info-circle.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs +226 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-input-mask.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +256 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +542 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs +153 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-radio.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs +49 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-slug.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +122 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs +295 -0
- package/fesm2022/sebgroup-green-angular-src-v-angular-tooltip.mjs.map +1 -0
- package/fesm2022/sebgroup-green-angular.mjs +3116 -17
- package/fesm2022/sebgroup-green-angular.mjs.map +1 -1
- package/index.d.ts +18 -0
- package/lib/in-page-wizard/in-page-wizard-step-card.component.d.ts +2 -1
- package/package.json +117 -6
- package/src/lib/in-page-wizard/in-page-wizard-step-card.component.d.ts +2 -1
- package/src/v-angular/base-control-value-accessor/base-control-value-accessor.component.d.ts +124 -0
- package/src/v-angular/base-control-value-accessor/base-control-value-accessor.module.d.ts +7 -0
- package/src/v-angular/base-control-value-accessor/index.d.ts +2 -0
- package/src/v-angular/breadcrumbs/breadcrumbs.component.d.ts +18 -0
- package/src/v-angular/breadcrumbs/breadcrumbs.module.d.ts +10 -0
- package/src/v-angular/breadcrumbs/index.d.ts +2 -0
- package/src/v-angular/button/button.component.d.ts +62 -0
- package/src/v-angular/button/button.module.d.ts +10 -0
- package/src/v-angular/button/index.d.ts +2 -0
- package/src/v-angular/card/card.component.d.ts +5 -0
- package/src/v-angular/card/card.module.d.ts +8 -0
- package/src/v-angular/card/index.d.ts +2 -0
- package/src/v-angular/character-countdown/character-countdown.directive.d.ts +17 -0
- package/src/v-angular/character-countdown/character-countdown.module.d.ts +8 -0
- package/src/v-angular/character-countdown/index.d.ts +2 -0
- package/src/v-angular/checkbox/checkbox.component.d.ts +27 -0
- package/src/v-angular/checkbox/checkbox.module.d.ts +9 -0
- package/src/v-angular/checkbox/index.d.ts +2 -0
- package/src/v-angular/core/core.globals.d.ts +13 -0
- package/src/v-angular/core/core.utils.d.ts +22 -0
- package/src/v-angular/core/index.d.ts +2 -0
- package/src/v-angular/dropdown/dropdown-list/dropdown-list.component.d.ts +89 -0
- package/src/v-angular/dropdown/dropdown-list/index.d.ts +1 -0
- package/src/v-angular/dropdown/dropdown.component.d.ts +99 -0
- package/src/v-angular/dropdown/dropdown.module.d.ts +12 -0
- package/src/v-angular/dropdown/index.d.ts +5 -0
- package/src/v-angular/dropdown/typeahead/index.d.ts +2 -0
- package/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +34 -0
- package/src/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.d.ts +34 -0
- package/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +59 -0
- package/src/v-angular/dropdown/typeahead/typeahead.module.d.ts +11 -0
- package/src/v-angular/external-link/external-link.directive.d.ts +17 -0
- package/src/v-angular/external-link/external-link.module.d.ts +8 -0
- package/src/v-angular/external-link/index.d.ts +2 -0
- package/src/v-angular/i18n/i18n.module.d.ts +15 -0
- package/src/v-angular/i18n/i18n.test.module.d.ts +27 -0
- package/src/v-angular/i18n/index.d.ts +2 -0
- package/src/v-angular/info-circle/index.d.ts +2 -0
- package/src/v-angular/info-circle/info-circle.component.d.ts +16 -0
- package/src/v-angular/info-circle/info-circle.module.d.ts +10 -0
- package/src/v-angular/input/index.d.ts +2 -0
- package/src/v-angular/input/input.component.d.ts +90 -0
- package/src/v-angular/input/input.module.d.ts +11 -0
- package/src/v-angular/input-mask/config.d.ts +6 -0
- package/src/v-angular/input-mask/constants.d.ts +2 -0
- package/src/v-angular/input-mask/index.d.ts +5 -0
- package/src/v-angular/input-mask/input-mask-format.pipe.d.ts +8 -0
- package/src/v-angular/input-mask/input-mask.directive.d.ts +39 -0
- package/src/v-angular/input-mask/input-mask.module.d.ts +11 -0
- package/src/v-angular/input-mask/input-mask.types.d.ts +20 -0
- package/src/v-angular/modal/dialog/dialog.component.d.ts +55 -0
- package/src/v-angular/modal/fold-out/fold-out.component.d.ts +24 -0
- package/src/v-angular/modal/fold-out/fold-out.directive.d.ts +6 -0
- package/src/v-angular/modal/index.d.ts +5 -0
- package/src/v-angular/modal/modal.globals.d.ts +13 -0
- package/src/v-angular/modal/modal.module.d.ts +13 -0
- package/src/v-angular/modal/modal.types.d.ts +5 -0
- package/src/v-angular/modal/slide-out/slide-out.component.d.ts +76 -0
- package/src/v-angular/radio/index.d.ts +2 -0
- package/src/v-angular/radio/radio.component.d.ts +48 -0
- package/src/v-angular/radio/radio.module.d.ts +9 -0
- package/src/v-angular/slug/index.d.ts +2 -0
- package/src/v-angular/slug/slug.module.d.ts +8 -0
- package/src/v-angular/slug/slug.pipe.d.ts +12 -0
- package/src/v-angular/textarea/index.d.ts +2 -0
- package/src/v-angular/textarea/textarea.component.d.ts +44 -0
- package/src/v-angular/textarea/textarea.module.d.ts +8 -0
- package/src/v-angular/tooltip/index.d.ts +2 -0
- package/src/v-angular/tooltip/tooltip.directive.d.ts +106 -0
- package/src/v-angular/tooltip/tooltip.module.d.ts +8 -0
- package/v-angular/base-control-value-accessor/base-control-value-accessor.component.d.ts +124 -0
- package/v-angular/base-control-value-accessor/base-control-value-accessor.module.d.ts +7 -0
- package/v-angular/base-control-value-accessor/index.d.ts +2 -0
- package/v-angular/breadcrumbs/breadcrumbs.component.d.ts +18 -0
- package/v-angular/breadcrumbs/breadcrumbs.module.d.ts +10 -0
- package/v-angular/breadcrumbs/index.d.ts +2 -0
- package/v-angular/button/button.component.d.ts +62 -0
- package/v-angular/button/button.module.d.ts +10 -0
- package/v-angular/button/index.d.ts +2 -0
- package/v-angular/card/card.component.d.ts +5 -0
- package/v-angular/card/card.module.d.ts +8 -0
- package/v-angular/card/index.d.ts +2 -0
- package/v-angular/checkbox/checkbox.component.d.ts +27 -0
- package/v-angular/checkbox/checkbox.module.d.ts +9 -0
- package/v-angular/checkbox/index.d.ts +2 -0
- package/v-angular/dropdown/dropdown-list/dropdown-list.component.d.ts +89 -0
- package/v-angular/dropdown/dropdown-list/index.d.ts +1 -0
- package/v-angular/dropdown/dropdown.component.d.ts +99 -0
- package/v-angular/dropdown/dropdown.module.d.ts +12 -0
- package/v-angular/dropdown/index.d.ts +5 -0
- package/v-angular/dropdown/typeahead/index.d.ts +2 -0
- package/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +34 -0
- package/v-angular/dropdown/typeahead/typeahead-highlight/typeahead-highlight.component.d.ts +34 -0
- package/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +59 -0
- package/v-angular/dropdown/typeahead/typeahead.module.d.ts +11 -0
- package/v-angular/i18n/i18n.module.d.ts +15 -0
- package/v-angular/i18n/i18n.test.module.d.ts +27 -0
- package/v-angular/i18n/index.d.ts +2 -0
- package/v-angular/info-circle/index.d.ts +2 -0
- package/v-angular/info-circle/info-circle.component.d.ts +16 -0
- package/v-angular/info-circle/info-circle.module.d.ts +10 -0
- package/v-angular/input/index.d.ts +2 -0
- package/v-angular/input/input.component.d.ts +90 -0
- package/v-angular/input/input.module.d.ts +11 -0
- package/v-angular/input-mask/config.d.ts +6 -0
- package/v-angular/input-mask/constants.d.ts +2 -0
- package/v-angular/input-mask/index.d.ts +5 -0
- package/v-angular/input-mask/input-mask-format.pipe.d.ts +8 -0
- package/v-angular/input-mask/input-mask.directive.d.ts +39 -0
- package/v-angular/input-mask/input-mask.module.d.ts +11 -0
- package/v-angular/input-mask/input-mask.types.d.ts +20 -0
- package/v-angular/modal/dialog/dialog.component.d.ts +55 -0
- package/v-angular/modal/fold-out/fold-out.component.d.ts +24 -0
- package/v-angular/modal/fold-out/fold-out.directive.d.ts +6 -0
- package/v-angular/modal/index.d.ts +5 -0
- package/v-angular/modal/modal.globals.d.ts +13 -0
- package/v-angular/modal/modal.module.d.ts +13 -0
- package/v-angular/modal/modal.types.d.ts +5 -0
- package/v-angular/modal/slide-out/slide-out.component.d.ts +76 -0
- package/v-angular/radio/index.d.ts +2 -0
- package/v-angular/radio/radio.component.d.ts +48 -0
- package/v-angular/radio/radio.module.d.ts +9 -0
- package/v-angular/textarea/index.d.ts +2 -0
- package/v-angular/textarea/textarea.component.d.ts +44 -0
- package/v-angular/textarea/textarea.module.d.ts +8 -0
- package/v-angular/tooltip/index.d.ts +2 -0
- package/v-angular/tooltip/tooltip.directive.d.ts +106 -0
- package/v-angular/tooltip/tooltip.module.d.ts +8 -0
|
@@ -0,0 +1,542 @@
|
|
|
1
|
+
import * as i1 from '@angular/common';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { EventEmitter, Component, ViewChild, HostBinding, Input, Output, HostListener, ElementRef, Directive, NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
5
|
+
import '@sebgroup/green-core/components/icon/icons/dot-grid-one-horizontal';
|
|
6
|
+
import { fromEvent } from 'rxjs';
|
|
7
|
+
import { trigger, transition, query, style, group, animate } from '@angular/animations';
|
|
8
|
+
import { NgvButtonModule } from '@sebgroup/green-angular/src/v-angular/button';
|
|
9
|
+
|
|
10
|
+
(() => {
|
|
11
|
+
// Make sure there is an incremental ID each component can use
|
|
12
|
+
if (typeof window !== 'undefined' && !window.ngv) {
|
|
13
|
+
window.ngv = {
|
|
14
|
+
ids: { default: -1 },
|
|
15
|
+
nextId(namespace = 'default') {
|
|
16
|
+
let id = this.ids[namespace] || 0;
|
|
17
|
+
if (typeof this.ids[namespace] === 'number')
|
|
18
|
+
id++;
|
|
19
|
+
this.ids[namespace] = id;
|
|
20
|
+
return namespace === 'default' ? `ngv-${id}` : `ngv-${namespace}-${id}`;
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
})();
|
|
25
|
+
|
|
26
|
+
class NgvDialogComponent {
|
|
27
|
+
constructor() {
|
|
28
|
+
/** Special property used for selecting DOM elements during automated UI testing. */
|
|
29
|
+
this.thook = 'dialog';
|
|
30
|
+
/** @internal */
|
|
31
|
+
this.baseClass = true;
|
|
32
|
+
/** @internal Defines the default visibility state of the dialog. */
|
|
33
|
+
this.shown = false;
|
|
34
|
+
/** Defines the default visibility state of the dialog. */
|
|
35
|
+
this.initiallyShown = false;
|
|
36
|
+
/**
|
|
37
|
+
* Sets modal title. Will be translated (using transloco) if the string matches a cms key.
|
|
38
|
+
* @deprecated - use heading instead.
|
|
39
|
+
*/
|
|
40
|
+
this.title = 'Attention';
|
|
41
|
+
/** Defines if dialog should close on action. */
|
|
42
|
+
this.autoClose = true;
|
|
43
|
+
/** An array of event payloads that will be added to every click context menu item click. */
|
|
44
|
+
this.payload = {};
|
|
45
|
+
/** It gives an ability for parent component to control if modal should be closed on esc button click. */
|
|
46
|
+
this.closeModalOnEscape = true;
|
|
47
|
+
// /** @internal */
|
|
48
|
+
// closeIcon = faTimes
|
|
49
|
+
this.ngvCloseEvent = new EventEmitter();
|
|
50
|
+
this.ngvPositiveEvent = new EventEmitter();
|
|
51
|
+
this.ngvNeutralEvent = new EventEmitter();
|
|
52
|
+
this.ngvNegativeEvent = new EventEmitter();
|
|
53
|
+
}
|
|
54
|
+
/** @internal */
|
|
55
|
+
get ariaHidden() {
|
|
56
|
+
return !this.shown;
|
|
57
|
+
}
|
|
58
|
+
/** Buttons are defined as a key-value pair where key is one of "positive|neutral|negative" and value is the button label. */
|
|
59
|
+
set buttons(buttons) {
|
|
60
|
+
this._buttons = buttons;
|
|
61
|
+
}
|
|
62
|
+
ngOnInit() {
|
|
63
|
+
this.dialogTitleId =
|
|
64
|
+
this.dialogTitleId ?? 'sdv-dialog-title-' + window.ngv?.nextId();
|
|
65
|
+
this.dialogBodyId =
|
|
66
|
+
this.dialogBodyId ?? 'sdv-dialog-body-' + window.ngv?.nextId();
|
|
67
|
+
this.shown = this.initiallyShown;
|
|
68
|
+
if (this.shown)
|
|
69
|
+
this._limitFocusable();
|
|
70
|
+
}
|
|
71
|
+
onAction(event, action) {
|
|
72
|
+
event.preventDefault();
|
|
73
|
+
const emitEvent = {
|
|
74
|
+
original: event,
|
|
75
|
+
payload: this.payload,
|
|
76
|
+
};
|
|
77
|
+
switch (action) {
|
|
78
|
+
case 'positive':
|
|
79
|
+
this.ngvPositiveEvent.emit(emitEvent);
|
|
80
|
+
break;
|
|
81
|
+
case 'neutral':
|
|
82
|
+
this.ngvNeutralEvent.emit(emitEvent);
|
|
83
|
+
break;
|
|
84
|
+
case 'negative':
|
|
85
|
+
this.ngvNegativeEvent.emit(emitEvent);
|
|
86
|
+
break;
|
|
87
|
+
// case 'close' is handled by if-statement below with call to this.close()
|
|
88
|
+
}
|
|
89
|
+
if (this.autoClose)
|
|
90
|
+
this.close(event, 'action');
|
|
91
|
+
}
|
|
92
|
+
open(opener) {
|
|
93
|
+
this.shown = true;
|
|
94
|
+
this._previous = opener || document.activeElement;
|
|
95
|
+
this._limitFocusable();
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
_limitFocusable() {
|
|
99
|
+
window.setTimeout(() => {
|
|
100
|
+
if (!this.dialogRef)
|
|
101
|
+
return;
|
|
102
|
+
const focusable = this.dialogRef.nativeElement.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
|
|
103
|
+
this._firstFocusable = focusable[0];
|
|
104
|
+
this._lastFocusable = focusable[focusable.length - 1];
|
|
105
|
+
if (this._lastFocusable)
|
|
106
|
+
this._lastFocusable.focus();
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
close(event, initiator) {
|
|
110
|
+
if (initiator === 'host' && event instanceof MouseEvent)
|
|
111
|
+
return;
|
|
112
|
+
// prevent modal from closing on esc button click when closeModalOnEscape is set to false
|
|
113
|
+
if (!this.closeModalOnEscape)
|
|
114
|
+
return;
|
|
115
|
+
if (this.shown) {
|
|
116
|
+
const emitEvent = {
|
|
117
|
+
original: event,
|
|
118
|
+
payload: this.payload,
|
|
119
|
+
};
|
|
120
|
+
this.ngvCloseEvent.emit(emitEvent);
|
|
121
|
+
}
|
|
122
|
+
this.shown = false;
|
|
123
|
+
window.setTimeout(() => {
|
|
124
|
+
if (this._previous)
|
|
125
|
+
this._previous.focus();
|
|
126
|
+
this._previous = undefined;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
focusTrap(event) {
|
|
130
|
+
if (event.key !== 'Tab')
|
|
131
|
+
return;
|
|
132
|
+
if (event.shiftKey) {
|
|
133
|
+
// shift + tab
|
|
134
|
+
if (this._lastFocusable &&
|
|
135
|
+
document.activeElement === this._firstFocusable) {
|
|
136
|
+
this._lastFocusable.focus();
|
|
137
|
+
event.preventDefault();
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// tab
|
|
142
|
+
if (this._firstFocusable &&
|
|
143
|
+
document.activeElement === this._lastFocusable) {
|
|
144
|
+
this._firstFocusable.focus();
|
|
145
|
+
event.preventDefault();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
150
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgvDialogComponent, selector: "ngv-dialog", inputs: { thook: "thook", shown: "shown", initiallyShown: "initiallyShown", heading: "heading", title: "title", content: "content", autoClose: "autoClose", payload: "payload", dialogTitleId: "dialogTitleId", dialogBodyId: "dialogBodyId", closeModalOnEscape: "closeModalOnEscape", buttons: "buttons" }, outputs: { ngvCloseEvent: "ngvCloseEvent", ngvPositiveEvent: "ngvPositiveEvent", ngvNeutralEvent: "ngvNeutralEvent", ngvNegativeEvent: "ngvNegativeEvent" }, host: { listeners: { "click": "close($event,\"host\")", "document:keydown.escape": "close($event)", "keydown": "focusTrap($event)" }, properties: { "attr.data-thook": "this.thook", "class.sdv-modal-dialog": "this.baseClass", "class.-active": "this.shown", "attr.aria-hidden": "this.ariaHidden" } }, viewQueries: [{ propertyName: "dialogRef", first: true, predicate: ["dialog"], descendants: true }], exportAs: ["dialog"], ngImport: i0, template: "<div\n class=\"sdv-modal-dialog__container\"\n *transloco=\"let t\"\n #dialog\n role=\"dialog\"\n aria-dialog=\"true\"\n [attr.aria-labelledby]=\"dialogTitleId\"\n [attr.aria-describedby]=\"dialogBodyId\"\n>\n <header class=\"sdv-modal-dialog__heading\">\n <h3 [attr.id]=\"dialogTitleId\">{{ t(heading || title || '') }}</h3>\n <button\n type=\"button\"\n data-thook=\"dialog-close\"\n (click)=\"onAction($event, 'close')\"\n (keydown.enter)=\"onAction($event, 'close')\"\n class=\"close\"\n >\n <gds-icon-cross-small\n *nggCoreElement\n width=\"24\"\n height=\"24\"\n ></gds-icon-cross-small>\n </button>\n </header>\n <section class=\"sdv-modal-dialog__body\" [attr.id]=\"dialogBodyId\">\n <div [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </section>\n <footer class=\"sdv-modal-dialog__actions\">\n <button\n class=\"sdv-button sdv-button-delete\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n <button\n class=\"sdv-button sdv-button-secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n <button\n class=\"sdv-button\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n</div>\n\n<div class=\"sdv-modal-backdrop\"></div>\n", styles: [":host{inset:0;position:fixed;display:grid;place-content:center;z-index:calc(var(--sg-z-index-modal-backdrop) + 1)}:host .sdv-modal-dialog__container{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:initial;width:375px;max-width:95vw}:host .sdv-modal-dialog__container>.header,:host .sdv-modal-dialog__container>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .sdv-modal-dialog__container>.header h3,:host .sdv-modal-dialog__container>.header .h3,:host .sdv-modal-dialog__container>header h3,:host .sdv-modal-dialog__container>header .h3{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__container>.header h3+.close,:host .sdv-modal-dialog__container>.header .h3+.close,:host .sdv-modal-dialog__container>header h3+.close,:host .sdv-modal-dialog__container>header .h3+.close{margin:-7px}:host .sdv-modal-dialog__container>.body{padding:1rem;overflow:auto;width:100%}:host .sdv-modal-dialog__container>.body p{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__container>.footer,:host .sdv-modal-dialog__container>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .sdv-modal-dialog__container>.footer,:host .sdv-modal-dialog__container>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .sdv-modal-dialog__container>.footer button+button,:host .sdv-modal-dialog__container>.footer button+.button,:host .sdv-modal-dialog__container>.footer .button+button,:host .sdv-modal-dialog__container>.footer .button+.button,:host .sdv-modal-dialog__container>footer button+button,:host .sdv-modal-dialog__container>footer button+.button,:host .sdv-modal-dialog__container>footer .button+button,:host .sdv-modal-dialog__container>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .sdv-modal-dialog__container>.footer button+button,:host .sdv-modal-dialog__container>.footer button+.button,:host .sdv-modal-dialog__container>.footer .button+button,:host .sdv-modal-dialog__container>.footer .button+.button,:host .sdv-modal-dialog__container>footer button+button,:host .sdv-modal-dialog__container>footer button+.button,:host .sdv-modal-dialog__container>footer .button+button,:host .sdv-modal-dialog__container>footer .button+.button{margin-left:.75rem}}:host .sdv-modal-dialog__container.medium{width:512px}:host .sdv-modal-dialog__container.large{width:720px}:host .sdv-modal-dialog__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .sdv-modal-dialog__heading h3,:host .sdv-modal-dialog__heading .h3{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__heading h3+.close,:host .sdv-modal-dialog__heading .h3+.close{margin:-7px}:host .sdv-modal-dialog__heading button{display:grid;place-content:center}:host .sdv-modal-dialog__body{padding:1rem;overflow:auto;width:100%}:host .sdv-modal-dialog__body p{margin-bottom:0;margin-top:0}:host .sdv-modal-backdrop{background:#00000059;inset:0;position:fixed;z-index:999;display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .sdv-modal-backdrop--transparent{opacity:0}:host .sdv-modal-backdrop--transparent.entered,:host .sdv-modal-backdrop--transparent.is-entering{opacity:1}:host .sdv-modal-backdrop--transparent.is-exiting{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
151
|
+
}
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvDialogComponent, decorators: [{
|
|
153
|
+
type: Component,
|
|
154
|
+
args: [{ selector: 'ngv-dialog', exportAs: 'dialog', template: "<div\n class=\"sdv-modal-dialog__container\"\n *transloco=\"let t\"\n #dialog\n role=\"dialog\"\n aria-dialog=\"true\"\n [attr.aria-labelledby]=\"dialogTitleId\"\n [attr.aria-describedby]=\"dialogBodyId\"\n>\n <header class=\"sdv-modal-dialog__heading\">\n <h3 [attr.id]=\"dialogTitleId\">{{ t(heading || title || '') }}</h3>\n <button\n type=\"button\"\n data-thook=\"dialog-close\"\n (click)=\"onAction($event, 'close')\"\n (keydown.enter)=\"onAction($event, 'close')\"\n class=\"close\"\n >\n <gds-icon-cross-small\n *nggCoreElement\n width=\"24\"\n height=\"24\"\n ></gds-icon-cross-small>\n </button>\n </header>\n <section class=\"sdv-modal-dialog__body\" [attr.id]=\"dialogBodyId\">\n <div [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </section>\n <footer class=\"sdv-modal-dialog__actions\">\n <button\n class=\"sdv-button sdv-button-delete\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n <button\n class=\"sdv-button sdv-button-secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n <button\n class=\"sdv-button\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n</div>\n\n<div class=\"sdv-modal-backdrop\"></div>\n", styles: [":host{inset:0;position:fixed;display:grid;place-content:center;z-index:calc(var(--sg-z-index-modal-backdrop) + 1)}:host .sdv-modal-dialog__container{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:initial;width:375px;max-width:95vw}:host .sdv-modal-dialog__container>.header,:host .sdv-modal-dialog__container>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .sdv-modal-dialog__container>.header h3,:host .sdv-modal-dialog__container>.header .h3,:host .sdv-modal-dialog__container>header h3,:host .sdv-modal-dialog__container>header .h3{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__container>.header h3+.close,:host .sdv-modal-dialog__container>.header .h3+.close,:host .sdv-modal-dialog__container>header h3+.close,:host .sdv-modal-dialog__container>header .h3+.close{margin:-7px}:host .sdv-modal-dialog__container>.body{padding:1rem;overflow:auto;width:100%}:host .sdv-modal-dialog__container>.body p{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__container>.footer,:host .sdv-modal-dialog__container>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .sdv-modal-dialog__container>.footer,:host .sdv-modal-dialog__container>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .sdv-modal-dialog__container>.footer button+button,:host .sdv-modal-dialog__container>.footer button+.button,:host .sdv-modal-dialog__container>.footer .button+button,:host .sdv-modal-dialog__container>.footer .button+.button,:host .sdv-modal-dialog__container>footer button+button,:host .sdv-modal-dialog__container>footer button+.button,:host .sdv-modal-dialog__container>footer .button+button,:host .sdv-modal-dialog__container>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .sdv-modal-dialog__container>.footer button+button,:host .sdv-modal-dialog__container>.footer button+.button,:host .sdv-modal-dialog__container>.footer .button+button,:host .sdv-modal-dialog__container>.footer .button+.button,:host .sdv-modal-dialog__container>footer button+button,:host .sdv-modal-dialog__container>footer button+.button,:host .sdv-modal-dialog__container>footer .button+button,:host .sdv-modal-dialog__container>footer .button+.button{margin-left:.75rem}}:host .sdv-modal-dialog__container.medium{width:512px}:host .sdv-modal-dialog__container.large{width:720px}:host .sdv-modal-dialog__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .sdv-modal-dialog__heading h3,:host .sdv-modal-dialog__heading .h3{margin-bottom:0;margin-top:0}:host .sdv-modal-dialog__heading h3+.close,:host .sdv-modal-dialog__heading .h3+.close{margin:-7px}:host .sdv-modal-dialog__heading button{display:grid;place-content:center}:host .sdv-modal-dialog__body{padding:1rem;overflow:auto;width:100%}:host .sdv-modal-dialog__body p{margin-bottom:0;margin-top:0}:host .sdv-modal-backdrop{background:#00000059;inset:0;position:fixed;z-index:999;display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .sdv-modal-backdrop--transparent{opacity:0}:host .sdv-modal-backdrop--transparent.entered,:host .sdv-modal-backdrop--transparent.is-entering{opacity:1}:host .sdv-modal-backdrop--transparent.is-exiting{opacity:0}\n"] }]
|
|
155
|
+
}], propDecorators: { dialogRef: [{
|
|
156
|
+
type: ViewChild,
|
|
157
|
+
args: ['dialog']
|
|
158
|
+
}], thook: [{
|
|
159
|
+
type: HostBinding,
|
|
160
|
+
args: ['attr.data-thook']
|
|
161
|
+
}, {
|
|
162
|
+
type: Input
|
|
163
|
+
}], baseClass: [{
|
|
164
|
+
type: HostBinding,
|
|
165
|
+
args: ['class.sdv-modal-dialog']
|
|
166
|
+
}], shown: [{
|
|
167
|
+
type: HostBinding,
|
|
168
|
+
args: ['class.-active']
|
|
169
|
+
}, {
|
|
170
|
+
type: Input
|
|
171
|
+
}], ariaHidden: [{
|
|
172
|
+
type: HostBinding,
|
|
173
|
+
args: ['attr.aria-hidden']
|
|
174
|
+
}], initiallyShown: [{
|
|
175
|
+
type: Input
|
|
176
|
+
}], heading: [{
|
|
177
|
+
type: Input
|
|
178
|
+
}], title: [{
|
|
179
|
+
type: Input
|
|
180
|
+
}], content: [{
|
|
181
|
+
type: Input
|
|
182
|
+
}], autoClose: [{
|
|
183
|
+
type: Input
|
|
184
|
+
}], payload: [{
|
|
185
|
+
type: Input
|
|
186
|
+
}], dialogTitleId: [{
|
|
187
|
+
type: Input
|
|
188
|
+
}], dialogBodyId: [{
|
|
189
|
+
type: Input
|
|
190
|
+
}], closeModalOnEscape: [{
|
|
191
|
+
type: Input
|
|
192
|
+
}], buttons: [{
|
|
193
|
+
type: Input
|
|
194
|
+
}], ngvCloseEvent: [{
|
|
195
|
+
type: Output
|
|
196
|
+
}], ngvPositiveEvent: [{
|
|
197
|
+
type: Output
|
|
198
|
+
}], ngvNeutralEvent: [{
|
|
199
|
+
type: Output
|
|
200
|
+
}], ngvNegativeEvent: [{
|
|
201
|
+
type: Output
|
|
202
|
+
}], close: [{
|
|
203
|
+
type: HostListener,
|
|
204
|
+
args: ['click', ['$event', '"host"']]
|
|
205
|
+
}, {
|
|
206
|
+
type: HostListener,
|
|
207
|
+
args: ['document:keydown.escape', ['$event']]
|
|
208
|
+
}], focusTrap: [{
|
|
209
|
+
type: HostListener,
|
|
210
|
+
args: ['keydown', ['$event']]
|
|
211
|
+
}] } });
|
|
212
|
+
|
|
213
|
+
class NgvFoldOutComponent {
|
|
214
|
+
constructor() {
|
|
215
|
+
/** Special property used for selecting DOM elements during automated UI testing. */
|
|
216
|
+
this.thook = 'fold-out';
|
|
217
|
+
// /** @internal */
|
|
218
|
+
// faEllipsisH: IconDefinition = faEllipsisH
|
|
219
|
+
/** @internal */
|
|
220
|
+
this.shown = false;
|
|
221
|
+
// Empty constructor
|
|
222
|
+
}
|
|
223
|
+
ngOnDestroy() {
|
|
224
|
+
this.onClickSubscription?.unsubscribe();
|
|
225
|
+
}
|
|
226
|
+
/** Toggle display of the option list */
|
|
227
|
+
toggleVisibility(event, setVisibility) {
|
|
228
|
+
this.shown = setVisibility !== undefined ? setVisibility : !this.shown;
|
|
229
|
+
if (this.shown)
|
|
230
|
+
this.subscribeToOutsideClickEvent();
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Closes the fold-out on click outside.
|
|
234
|
+
*/
|
|
235
|
+
subscribeToOutsideClickEvent() {
|
|
236
|
+
this.onClickSubscription = fromEvent(document, 'click').subscribe({
|
|
237
|
+
next: (event) => {
|
|
238
|
+
if (this.shown &&
|
|
239
|
+
!this.inputRef?.nativeElement.contains(event.target)) {
|
|
240
|
+
this.toggleVisibility();
|
|
241
|
+
this.onClickSubscription?.unsubscribe();
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvFoldOutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
247
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgvFoldOutComponent, selector: "ngv-fold-out", inputs: { thook: "thook", alignOptions: "alignOptions" }, host: { properties: { "attr.data-thook": "this.thook" } }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["foldout"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div #foldout class=\"sdv-field-dropdown\">\n <button\n data-thook=\"fold-out-toggle\"\n class=\"sdv-button fold-out-button\"\n (click)=\"toggleVisibility($event)\"\n >\n <gds-icon-dot-grid-one-horizontal\n width=\"24\"\n height=\"24\"\n *nggCoreElement\n ></gds-icon-dot-grid-one-horizontal>\n </button>\n\n <div\n class=\"gds-fold-out__popover\"\n [ngClass]=\"{ 'flex-right': alignOptions === 'right' }\"\n [class.gds-fold-out__popover-expanded]=\"shown\"\n (click)=\"toggleVisibility($event, false)\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["i.sg-icon{font-size:0;width:1rem;height:1rem;display:inline-block}i.sg-icon:before{content:\"\";display:inline-block;background:var(--color);width:100%;height:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}i.sg-icon.sg-icon-calendar:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 248h80v-56H48v56zm0 48v64h80v-64H48zm128 0v64h96v-64h-96zm144 0v64h80v-64h-80zm80-104h-80v56h80v-56zm0 216h-80v56h64c8.8 0 16-7.2 16-16v-40zm-128 0h-96v56h96v-56zm-144 0H48v40c0 8.8 7.16 16 16 16h64v-56zm144-216h-96v56h96v-56z '/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 248h80v-56H48v56zm0 48v64h80v-64H48zm128 0v64h96v-64h-96zm144 0v64h80v-64h-80zm80-104h-80v56h80v-56zm0 216h-80v56h64c8.8 0 16-7.2 16-16v-40zm-128 0h-96v56h96v-56zm-144 0H48v40c0 8.8 7.16 16 16 16h64v-56zm144-216h-96v56h96v-56z '/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-calendar-range:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M96 288c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm224 64c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-128-64c0-13.3 10.7-24 24-24h112c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24zm40 72c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24h112zM152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 448c0 8.8 7.16 16 16 16h320c8.8 0 16-7.2 16-16V192H48v256z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M96 288c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm224 64c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-128-64c0-13.3 10.7-24 24-24h112c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24zm40 72c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24h112zM152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 448c0 8.8 7.16 16 16 16h320c8.8 0 16-7.2 16-16V192H48v256z'/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-ellipsis:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z'/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-grip-vertical:before{-webkit-mask-image:url(\"data:image/svg+xml, %3Csvg height='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z' /%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml, %3Csvg height='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z' /%3E%3C/svg%3E\")}i.sg-icon.sg-icon-next:before{background:none;border-bottom:2px solid;border-left:2px solid;content:\"\";display:block;height:12px;margin-left:-10px;margin-top:2px;transform:translate(75%) rotate(-135deg) scaleZ(-1);transition:transform .3s ease-in;width:12px}i.sg-icon.sg-icon-previous:before{background:none;border-bottom:2px solid;border-left:2px solid;content:\"\";display:block;height:12px;margin-left:-4px;margin-top:2px;transform:translate(75%) rotate(45deg) scaleZ(-1);transition:transform .3s ease-in;width:12px}i.sg-icon.sg-icon-ellipsis:before{margin-right:-2px}:host .flex-right{right:0}:host .fold-out-button{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);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;background-color:transparent;border:.0625rem solid transparent;padding:.625rem;height:2.75rem;width:2.75rem;min-width:auto;--color: var(--gds-ref-pallet-base800);border-color:transparent;color:var(--gds-ref-pallet-base800);display:flex;gap:.5rem;line-height:.75;padding-inline:.4375rem;width:auto}:host .fold-out-button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .fold-out-button:focus,:host .fold-out-button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .fold-out-button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .fold-out-button{border:2px solid currentcolor}}:host .fold-out-button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .fold-out-button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}.form-group :host .fold-out-button{margin-top:-.625rem}:host .fold-out-button.small{height:2rem;width:2rem;padding:.4375rem;line-height:1.125rem}:host .fold-out-button svg{height:1rem;width:1rem}:host .fold-out-button path,:host .fold-out-button line,:host .fold-out-button circle,:host .fold-out-button rect,:host .fold-out-button ellipse,:host .fold-out-button polyline,:host .fold-out-button text{fill:var(--gds-ref-pallet-base800);stroke:var(--gds-ref-pallet-base800);transition:all .3s cubic-bezier(.23,1,.32,1)}:host .fold-out-button:hover,:host .fold-out-button.highlighted{background-color:#0000001a;border-color:transparent}:host .fold-out-button:active,:host .fold-out-button.highlighted:hover{background-color:#0003;border-color:transparent}:host .gds-fold-out__popover{background-clip:border-box;background:var(--sg-card-background);border:var(--sg-card-border);border-radius:var(--sg-card-border-radius);box-shadow:var(--sg-card-box-shadow);color:var(--sg-card-color);display:flex;flex-direction:column;padding:1rem;width:-moz-fit-content;width:fit-content;display:none;padding:0}:host .gds-fold-out__popover>header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem;margin-block-end:1rem}:host .gds-fold-out__popover>header .close{margin:-.5rem -.5rem -.5rem .5rem}:host .gds-fold-out__popover>*:not(header,footer){flex:1 1 auto}:host .gds-fold-out__popover>footer{margin-top:.75rem}@media (min-width: 36em){:host .gds-fold-out__popover>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-fold-out__popover>footer button:not(.link)+button,:host .gds-fold-out__popover>footer button:not(.link)+.button,:host .gds-fold-out__popover>footer .button:not(.link)+button,:host .gds-fold-out__popover>footer .button:not(.link)+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-fold-out__popover>footer button:not(.link)+button,:host .gds-fold-out__popover>footer button:not(.link)+.button,:host .gds-fold-out__popover>footer .button:not(.link)+button,:host .gds-fold-out__popover>footer .button:not(.link)+.button{margin-left:.75rem}}:host .gds-fold-out__popover-expanded{display:block}:host ::ng-deep .sdv-field-dropdown__options__label{padding:.75rem 1rem;line-height:1.25;cursor:pointer;display:flex;gap:.75rem;-webkit-user-select:none;user-select:none}:host ::ng-deep .sdv-field-dropdown__options__label:active{background-color:var(--grey-400)}:host ::ng-deep .sdv-field-dropdown__options__label:focus{outline-color:#000;outline-offset:-.25rem}:host ::ng-deep .sdv-field-dropdown__options__label.active.sg-highlighted,:host ::ng-deep .sdv-field-dropdown__options__label[aria-selected=true]{background:var(--grey-1000);color:#fff}:host ::ng-deep .sdv-field-dropdown__options__label:hover,:host ::ng-deep .sdv-field-dropdown__options__label:focus-visible{background-color:var(--grey-400)}:host ::ng-deep .sdv-field-dropdown__options__label:active{background-color:var(--grey-500)}:host ::ng-deep .sdv-field-dropdown__options__label:focus-visible{outline-color:#000;outline-offset:-.25rem}:host ::ng-deep .sdv-field-dropdown__options__label[aria-hidden=true]{display:none}:host ::ng-deep .sdv-field-dropdown__options__label[highlighted]{background:var(--grey-1000);color:#fff}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
248
|
+
}
|
|
249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvFoldOutComponent, decorators: [{
|
|
250
|
+
type: Component,
|
|
251
|
+
args: [{ selector: 'ngv-fold-out', template: "<div #foldout class=\"sdv-field-dropdown\">\n <button\n data-thook=\"fold-out-toggle\"\n class=\"sdv-button fold-out-button\"\n (click)=\"toggleVisibility($event)\"\n >\n <gds-icon-dot-grid-one-horizontal\n width=\"24\"\n height=\"24\"\n *nggCoreElement\n ></gds-icon-dot-grid-one-horizontal>\n </button>\n\n <div\n class=\"gds-fold-out__popover\"\n [ngClass]=\"{ 'flex-right': alignOptions === 'right' }\"\n [class.gds-fold-out__popover-expanded]=\"shown\"\n (click)=\"toggleVisibility($event, false)\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n", styles: ["i.sg-icon{font-size:0;width:1rem;height:1rem;display:inline-block}i.sg-icon:before{content:\"\";display:inline-block;background:var(--color);width:100%;height:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}i.sg-icon.sg-icon-calendar:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 248h80v-56H48v56zm0 48v64h80v-64H48zm128 0v64h96v-64h-96zm144 0v64h80v-64h-80zm80-104h-80v56h80v-56zm0 216h-80v56h64c8.8 0 16-7.2 16-16v-40zm-128 0h-96v56h96v-56zm-144 0H48v40c0 8.8 7.16 16 16 16h64v-56zm144-216h-96v56h96v-56z '/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 248h80v-56H48v56zm0 48v64h80v-64H48zm128 0v64h96v-64h-96zm144 0v64h80v-64h-80zm80-104h-80v56h80v-56zm0 216h-80v56h64c8.8 0 16-7.2 16-16v-40zm-128 0h-96v56h96v-56zm-144 0H48v40c0 8.8 7.16 16 16 16h64v-56zm144-216h-96v56h96v-56z '/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-calendar-range:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M96 288c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm224 64c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-128-64c0-13.3 10.7-24 24-24h112c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24zm40 72c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24h112zM152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 448c0 8.8 7.16 16 16 16h320c8.8 0 16-7.2 16-16V192H48v256z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M96 288c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm224 64c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-128-64c0-13.3 10.7-24 24-24h112c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24zm40 72c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24h112zM152 64h144V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40h40c35.3 0 64 28.65 64 64v320c0 35.3-28.7 64-64 64H64c-35.35 0-64-28.7-64-64V128c0-35.35 28.65-64 64-64h40V24c0-13.25 10.7-24 24-24s24 10.75 24 24v40zM48 448c0 8.8 7.16 16 16 16h320c8.8 0 16-7.2 16-16V192H48v256z'/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-ellipsis:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Pro 6.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc.--%3E%3Cpath d='M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z'/%3E%3C/svg%3E\")}i.sg-icon.sg-icon-grip-vertical:before{-webkit-mask-image:url(\"data:image/svg+xml, %3Csvg height='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z' /%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml, %3Csvg height='1em' viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z' /%3E%3C/svg%3E\")}i.sg-icon.sg-icon-next:before{background:none;border-bottom:2px solid;border-left:2px solid;content:\"\";display:block;height:12px;margin-left:-10px;margin-top:2px;transform:translate(75%) rotate(-135deg) scaleZ(-1);transition:transform .3s ease-in;width:12px}i.sg-icon.sg-icon-previous:before{background:none;border-bottom:2px solid;border-left:2px solid;content:\"\";display:block;height:12px;margin-left:-4px;margin-top:2px;transform:translate(75%) rotate(45deg) scaleZ(-1);transition:transform .3s ease-in;width:12px}i.sg-icon.sg-icon-ellipsis:before{margin-right:-2px}:host .flex-right{right:0}:host .fold-out-button{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);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;background-color:transparent;border:.0625rem solid transparent;padding:.625rem;height:2.75rem;width:2.75rem;min-width:auto;--color: var(--gds-ref-pallet-base800);border-color:transparent;color:var(--gds-ref-pallet-base800);display:flex;gap:.5rem;line-height:.75;padding-inline:.4375rem;width:auto}:host .fold-out-button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .fold-out-button:focus,:host .fold-out-button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .fold-out-button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .fold-out-button{border:2px solid currentcolor}}:host .fold-out-button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .fold-out-button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}.form-group :host .fold-out-button{margin-top:-.625rem}:host .fold-out-button.small{height:2rem;width:2rem;padding:.4375rem;line-height:1.125rem}:host .fold-out-button svg{height:1rem;width:1rem}:host .fold-out-button path,:host .fold-out-button line,:host .fold-out-button circle,:host .fold-out-button rect,:host .fold-out-button ellipse,:host .fold-out-button polyline,:host .fold-out-button text{fill:var(--gds-ref-pallet-base800);stroke:var(--gds-ref-pallet-base800);transition:all .3s cubic-bezier(.23,1,.32,1)}:host .fold-out-button:hover,:host .fold-out-button.highlighted{background-color:#0000001a;border-color:transparent}:host .fold-out-button:active,:host .fold-out-button.highlighted:hover{background-color:#0003;border-color:transparent}:host .gds-fold-out__popover{background-clip:border-box;background:var(--sg-card-background);border:var(--sg-card-border);border-radius:var(--sg-card-border-radius);box-shadow:var(--sg-card-box-shadow);color:var(--sg-card-color);display:flex;flex-direction:column;padding:1rem;width:-moz-fit-content;width:fit-content;display:none;padding:0}:host .gds-fold-out__popover>header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem;margin-block-end:1rem}:host .gds-fold-out__popover>header .close{margin:-.5rem -.5rem -.5rem .5rem}:host .gds-fold-out__popover>*:not(header,footer){flex:1 1 auto}:host .gds-fold-out__popover>footer{margin-top:.75rem}@media (min-width: 36em){:host .gds-fold-out__popover>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-fold-out__popover>footer button:not(.link)+button,:host .gds-fold-out__popover>footer button:not(.link)+.button,:host .gds-fold-out__popover>footer .button:not(.link)+button,:host .gds-fold-out__popover>footer .button:not(.link)+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-fold-out__popover>footer button:not(.link)+button,:host .gds-fold-out__popover>footer button:not(.link)+.button,:host .gds-fold-out__popover>footer .button:not(.link)+button,:host .gds-fold-out__popover>footer .button:not(.link)+.button{margin-left:.75rem}}:host .gds-fold-out__popover-expanded{display:block}:host ::ng-deep .sdv-field-dropdown__options__label{padding:.75rem 1rem;line-height:1.25;cursor:pointer;display:flex;gap:.75rem;-webkit-user-select:none;user-select:none}:host ::ng-deep .sdv-field-dropdown__options__label:active{background-color:var(--grey-400)}:host ::ng-deep .sdv-field-dropdown__options__label:focus{outline-color:#000;outline-offset:-.25rem}:host ::ng-deep .sdv-field-dropdown__options__label.active.sg-highlighted,:host ::ng-deep .sdv-field-dropdown__options__label[aria-selected=true]{background:var(--grey-1000);color:#fff}:host ::ng-deep .sdv-field-dropdown__options__label:hover,:host ::ng-deep .sdv-field-dropdown__options__label:focus-visible{background-color:var(--grey-400)}:host ::ng-deep .sdv-field-dropdown__options__label:active{background-color:var(--grey-500)}:host ::ng-deep .sdv-field-dropdown__options__label:focus-visible{outline-color:#000;outline-offset:-.25rem}:host ::ng-deep .sdv-field-dropdown__options__label[aria-hidden=true]{display:none}:host ::ng-deep .sdv-field-dropdown__options__label[highlighted]{background:var(--grey-1000);color:#fff}\n"] }]
|
|
252
|
+
}], ctorParameters: function () { return []; }, propDecorators: { thook: [{
|
|
253
|
+
type: HostBinding,
|
|
254
|
+
args: ['attr.data-thook']
|
|
255
|
+
}, {
|
|
256
|
+
type: Input
|
|
257
|
+
}], inputRef: [{
|
|
258
|
+
type: ViewChild,
|
|
259
|
+
args: ['foldout', { read: ElementRef }]
|
|
260
|
+
}], alignOptions: [{
|
|
261
|
+
type: Input
|
|
262
|
+
}] } });
|
|
263
|
+
|
|
264
|
+
class NgvFoldOutOptionDirective {
|
|
265
|
+
constructor() {
|
|
266
|
+
this.baseClass = true;
|
|
267
|
+
}
|
|
268
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvFoldOutOptionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
269
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgvFoldOutOptionDirective, selector: "[ngvOption]", host: { properties: { "class.sdv-field-dropdown__options__label": "this.baseClass" } }, ngImport: i0 }); }
|
|
270
|
+
}
|
|
271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvFoldOutOptionDirective, decorators: [{
|
|
272
|
+
type: Directive,
|
|
273
|
+
args: [{
|
|
274
|
+
selector: '[ngvOption]',
|
|
275
|
+
}]
|
|
276
|
+
}], propDecorators: { baseClass: [{
|
|
277
|
+
type: HostBinding,
|
|
278
|
+
args: ['class.sdv-field-dropdown__options__label']
|
|
279
|
+
}] } });
|
|
280
|
+
|
|
281
|
+
/** Modal slide-out component based on vanilla pattern library design.
|
|
282
|
+
* The modal title can be set using the @Input heading, and will automatically be translated if
|
|
283
|
+
* the string matches a cms key.
|
|
284
|
+
* Content can be injected into the body of the slide-out by either setting the @Input content to any type of
|
|
285
|
+
* markdown, or using content projection (adding content between the `ngv-slideout-modal`-start and end tag).
|
|
286
|
+
* If the content needs to stretch outside the normal padded area, add the attribute `slot="outside-content"` to the
|
|
287
|
+
* projected content main element.
|
|
288
|
+
* Test hooks:
|
|
289
|
+
* The modal hook defaults to 'slideout' but is customizeable.
|
|
290
|
+
* The closing button can be selected using 'slideout-close'.
|
|
291
|
+
* The backdrop is selectable using 'slideout-backdrop'.
|
|
292
|
+
*/
|
|
293
|
+
class NgvSlideOutComponent {
|
|
294
|
+
/** @internal */
|
|
295
|
+
get fromLeft() {
|
|
296
|
+
return this.side === 'left';
|
|
297
|
+
}
|
|
298
|
+
/** Buttons are defined as a key-value pair where key is one of "positive|neutral|negative" and value is the button label. */
|
|
299
|
+
set buttons(buttons) {
|
|
300
|
+
this._buttons = buttons;
|
|
301
|
+
}
|
|
302
|
+
constructor(host) {
|
|
303
|
+
this.host = host;
|
|
304
|
+
/** Sets from which side the modal should open. */
|
|
305
|
+
this.side = 'right';
|
|
306
|
+
/** Defines the default visibility state of the slide-out. */
|
|
307
|
+
this.shown = false;
|
|
308
|
+
/** Defines the default visibility state of the modal. */
|
|
309
|
+
this.initiallyShown = false;
|
|
310
|
+
/** Sets whether it is possible to close the modal from the top right corner. */
|
|
311
|
+
this.closable = true;
|
|
312
|
+
/** Allows the modal content to decide the width of the modal. */
|
|
313
|
+
this.autoWidth = false;
|
|
314
|
+
/** Special property used for selecting DOM elements during automated UI testing. */
|
|
315
|
+
this.thook = 'slideout';
|
|
316
|
+
/** Will emit true on closing event. */
|
|
317
|
+
this.ngvCloseEvent = new EventEmitter();
|
|
318
|
+
this.ngvPositiveEvent = new EventEmitter();
|
|
319
|
+
this.ngvNeutralEvent = new EventEmitter();
|
|
320
|
+
this.ngvNegativeEvent = new EventEmitter();
|
|
321
|
+
// appends methods for opening and closing modal to native element
|
|
322
|
+
this.host.nativeElement.open = this.open.bind(this);
|
|
323
|
+
this.host.nativeElement.close = this.close.bind(this);
|
|
324
|
+
}
|
|
325
|
+
ngOnInit() {
|
|
326
|
+
this.shown = this.initiallyShown;
|
|
327
|
+
if (this.shown)
|
|
328
|
+
this.limitFocusable();
|
|
329
|
+
}
|
|
330
|
+
onAction(event, action) {
|
|
331
|
+
event.preventDefault();
|
|
332
|
+
switch (action) {
|
|
333
|
+
case 'positive':
|
|
334
|
+
this.ngvPositiveEvent.emit();
|
|
335
|
+
break;
|
|
336
|
+
case 'neutral':
|
|
337
|
+
this.ngvNeutralEvent.emit();
|
|
338
|
+
break;
|
|
339
|
+
case 'negative':
|
|
340
|
+
this.ngvNegativeEvent.emit();
|
|
341
|
+
break;
|
|
342
|
+
}
|
|
343
|
+
this.close(event, 'action');
|
|
344
|
+
}
|
|
345
|
+
/**
|
|
346
|
+
* Called on a modal element. Opens the modal and sets focus to the last focusable element in the modal.
|
|
347
|
+
*
|
|
348
|
+
* @param opener - reference to last focused element before opening modal
|
|
349
|
+
* @returns - true
|
|
350
|
+
*/
|
|
351
|
+
open(opener) {
|
|
352
|
+
this.shown = true;
|
|
353
|
+
this.previous = opener || document.activeElement;
|
|
354
|
+
this.limitFocusable();
|
|
355
|
+
return true;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Called on a modal element. Closes the modal and emits a `ngvCloseEvent`. Sets focus to the lats focused element if an element was sent in to open function.
|
|
359
|
+
*
|
|
360
|
+
* @param event
|
|
361
|
+
* @param initiator
|
|
362
|
+
*/
|
|
363
|
+
close(event, initiator) {
|
|
364
|
+
if (initiator === 'host' &&
|
|
365
|
+
event instanceof MouseEvent &&
|
|
366
|
+
event.target !== event.currentTarget)
|
|
367
|
+
return;
|
|
368
|
+
if (this.shown && this.closable) {
|
|
369
|
+
this.ngvCloseEvent.emit(this.shown);
|
|
370
|
+
this.shown = false;
|
|
371
|
+
window.setTimeout(() => {
|
|
372
|
+
if (this.previous)
|
|
373
|
+
this.previous.focus();
|
|
374
|
+
this.previous = undefined;
|
|
375
|
+
});
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
/** @internal */
|
|
379
|
+
focusTrap(event) {
|
|
380
|
+
if (event.key !== 'Tab')
|
|
381
|
+
return;
|
|
382
|
+
if (event.shiftKey) {
|
|
383
|
+
// shift + tab
|
|
384
|
+
if (this.lastFocusable &&
|
|
385
|
+
document.activeElement === this.firstFocusable) {
|
|
386
|
+
this.lastFocusable.focus();
|
|
387
|
+
event.preventDefault();
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
else {
|
|
391
|
+
// tab
|
|
392
|
+
if (this.firstFocusable &&
|
|
393
|
+
document.activeElement === this.lastFocusable) {
|
|
394
|
+
this.firstFocusable.focus();
|
|
395
|
+
event.preventDefault();
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
limitFocusable() {
|
|
400
|
+
window.setTimeout(() => {
|
|
401
|
+
if (!this.slideOutRef)
|
|
402
|
+
return;
|
|
403
|
+
const focusable = this.slideOutRef.nativeElement.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
|
|
404
|
+
this.firstFocusable = focusable[0];
|
|
405
|
+
this.lastFocusable = focusable[focusable.length - 1];
|
|
406
|
+
if (this.lastFocusable)
|
|
407
|
+
this.lastFocusable.focus();
|
|
408
|
+
});
|
|
409
|
+
}
|
|
410
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvSlideOutComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
411
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgvSlideOutComponent, selector: "ngv-slideout-modal", inputs: { side: "side", shown: "shown", initiallyShown: "initiallyShown", heading: "heading", title: "title", content: "content", closable: "closable", autoWidth: "autoWidth", thook: "thook", buttons: "buttons" }, outputs: { ngvCloseEvent: "ngvCloseEvent", ngvPositiveEvent: "ngvPositiveEvent", ngvNeutralEvent: "ngvNeutralEvent", ngvNegativeEvent: "ngvNegativeEvent" }, host: { listeners: { "click": "close($event,\"host\")", "document:keydown.escape": "close($event)", "keydown": "focusTrap($event)" } }, viewQueries: [{ propertyName: "slideOutRef", first: true, predicate: ["slideOut"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"sdv-modal-title\"\n aria-describedby=\"sdv-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 class=\"gds-slide-out__heading\" id=\"sdv-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"close\"\n (click)=\"this.close()\"\n >\n <span className=\"sr-only\">Close</span>\n <i></i>\n </button>\n </header>\n\n <section id=\"sdv-modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"sdv-modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"gds-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .gds-backdrop{background:#00000059;inset:0;position:fixed;z-index:1040;display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .gds-backdrop--transparent{opacity:0}:host .gds-backdrop--transparent.entered,:host .gds-backdrop--transparent.is-entering{opacity:1}:host .gds-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host #sdv-modal-body{flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
|
|
412
|
+
trigger('modalAnimation', [
|
|
413
|
+
transition(':enter', [
|
|
414
|
+
query('.gds-slide-out', style({ transform: 'translateX(100%)' }), {
|
|
415
|
+
optional: true,
|
|
416
|
+
}),
|
|
417
|
+
query('.gds-backdrop, [role=dialog]', style({ opacity: '0' }), {
|
|
418
|
+
optional: true,
|
|
419
|
+
}),
|
|
420
|
+
group([
|
|
421
|
+
query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(0)' })), { optional: true }),
|
|
422
|
+
query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '1' })), { optional: true }),
|
|
423
|
+
]),
|
|
424
|
+
]),
|
|
425
|
+
transition(':leave', [
|
|
426
|
+
query('.gds-slide-out', style({ transform: 'translateX(0)' }), {
|
|
427
|
+
optional: true,
|
|
428
|
+
}),
|
|
429
|
+
group([
|
|
430
|
+
query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(100%)' })), { optional: true }),
|
|
431
|
+
query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '0' })), { optional: true }),
|
|
432
|
+
]),
|
|
433
|
+
]),
|
|
434
|
+
]),
|
|
435
|
+
] }); }
|
|
436
|
+
}
|
|
437
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvSlideOutComponent, decorators: [{
|
|
438
|
+
type: Component,
|
|
439
|
+
args: [{ selector: 'ngv-slideout-modal', animations: [
|
|
440
|
+
trigger('modalAnimation', [
|
|
441
|
+
transition(':enter', [
|
|
442
|
+
query('.gds-slide-out', style({ transform: 'translateX(100%)' }), {
|
|
443
|
+
optional: true,
|
|
444
|
+
}),
|
|
445
|
+
query('.gds-backdrop, [role=dialog]', style({ opacity: '0' }), {
|
|
446
|
+
optional: true,
|
|
447
|
+
}),
|
|
448
|
+
group([
|
|
449
|
+
query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(0)' })), { optional: true }),
|
|
450
|
+
query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '1' })), { optional: true }),
|
|
451
|
+
]),
|
|
452
|
+
]),
|
|
453
|
+
transition(':leave', [
|
|
454
|
+
query('.gds-slide-out', style({ transform: 'translateX(0)' }), {
|
|
455
|
+
optional: true,
|
|
456
|
+
}),
|
|
457
|
+
group([
|
|
458
|
+
query('.gds-slide-out', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ transform: 'translateX(100%)' })), { optional: true }),
|
|
459
|
+
query('.gds-backdrop, [role=dialog]', animate('350ms cubic-bezier(0.33, 1, 0.68, 1)', style({ opacity: '0' })), { optional: true }),
|
|
460
|
+
]),
|
|
461
|
+
]),
|
|
462
|
+
]),
|
|
463
|
+
], template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"sdv-modal-title\"\n aria-describedby=\"sdv-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 class=\"gds-slide-out__heading\" id=\"sdv-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"close\"\n (click)=\"this.close()\"\n >\n <span className=\"sr-only\">Close</span>\n <i></i>\n </button>\n </header>\n\n <section id=\"sdv-modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"sdv-modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"gds-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .gds-backdrop{background:#00000059;inset:0;position:fixed;z-index:1040;display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .gds-backdrop--transparent{opacity:0}:host .gds-backdrop--transparent.entered,:host .gds-backdrop--transparent.is-entering{opacity:1}:host .gds-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host #sdv-modal-body{flex:1}\n"] }]
|
|
464
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { slideOutRef: [{
|
|
465
|
+
type: ViewChild,
|
|
466
|
+
args: ['slideOut']
|
|
467
|
+
}], side: [{
|
|
468
|
+
type: Input
|
|
469
|
+
}], shown: [{
|
|
470
|
+
type: Input
|
|
471
|
+
}], initiallyShown: [{
|
|
472
|
+
type: Input
|
|
473
|
+
}], heading: [{
|
|
474
|
+
type: Input
|
|
475
|
+
}], title: [{
|
|
476
|
+
type: Input
|
|
477
|
+
}], content: [{
|
|
478
|
+
type: Input
|
|
479
|
+
}], closable: [{
|
|
480
|
+
type: Input
|
|
481
|
+
}], autoWidth: [{
|
|
482
|
+
type: Input
|
|
483
|
+
}], thook: [{
|
|
484
|
+
type: Input
|
|
485
|
+
}], buttons: [{
|
|
486
|
+
type: Input
|
|
487
|
+
}], ngvCloseEvent: [{
|
|
488
|
+
type: Output
|
|
489
|
+
}], ngvPositiveEvent: [{
|
|
490
|
+
type: Output
|
|
491
|
+
}], ngvNeutralEvent: [{
|
|
492
|
+
type: Output
|
|
493
|
+
}], ngvNegativeEvent: [{
|
|
494
|
+
type: Output
|
|
495
|
+
}], close: [{
|
|
496
|
+
type: HostListener,
|
|
497
|
+
args: ['click', ['$event', '"host"']]
|
|
498
|
+
}, {
|
|
499
|
+
type: HostListener,
|
|
500
|
+
args: ['document:keydown.escape', ['$event']]
|
|
501
|
+
}], focusTrap: [{
|
|
502
|
+
type: HostListener,
|
|
503
|
+
args: ['keydown', ['$event']]
|
|
504
|
+
}] } });
|
|
505
|
+
|
|
506
|
+
class NgvModalModule {
|
|
507
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
508
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgvModalModule, declarations: [NgvDialogComponent,
|
|
509
|
+
NgvSlideOutComponent,
|
|
510
|
+
NgvFoldOutComponent,
|
|
511
|
+
NgvFoldOutOptionDirective], imports: [CommonModule, NgvButtonModule], exports: [NgvDialogComponent,
|
|
512
|
+
NgvSlideOutComponent,
|
|
513
|
+
NgvFoldOutComponent,
|
|
514
|
+
NgvFoldOutOptionDirective] }); }
|
|
515
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvModalModule, imports: [CommonModule, NgvButtonModule] }); }
|
|
516
|
+
}
|
|
517
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvModalModule, decorators: [{
|
|
518
|
+
type: NgModule,
|
|
519
|
+
args: [{
|
|
520
|
+
imports: [CommonModule, NgvButtonModule],
|
|
521
|
+
declarations: [
|
|
522
|
+
NgvDialogComponent,
|
|
523
|
+
NgvSlideOutComponent,
|
|
524
|
+
NgvFoldOutComponent,
|
|
525
|
+
NgvFoldOutOptionDirective,
|
|
526
|
+
],
|
|
527
|
+
exports: [
|
|
528
|
+
NgvDialogComponent,
|
|
529
|
+
NgvSlideOutComponent,
|
|
530
|
+
NgvFoldOutComponent,
|
|
531
|
+
NgvFoldOutOptionDirective,
|
|
532
|
+
],
|
|
533
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
534
|
+
}]
|
|
535
|
+
}] });
|
|
536
|
+
|
|
537
|
+
/**
|
|
538
|
+
* Generated bundle index. Do not edit.
|
|
539
|
+
*/
|
|
540
|
+
|
|
541
|
+
export { NgvDialogComponent, NgvFoldOutComponent, NgvFoldOutOptionDirective, NgvModalModule, NgvSlideOutComponent };
|
|
542
|
+
//# sourceMappingURL=sebgroup-green-angular-src-v-angular-modal.mjs.map
|