@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,221 @@
|
|
|
1
|
+
import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Inject, Input, Optional, Output, Self, } from '@angular/core';
|
|
2
|
+
import { NgControl, UntypedFormControl } from '@angular/forms';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { debounceTime, takeUntil } from 'rxjs/operators';
|
|
5
|
+
import { TRANSLOCO_SCOPE } from '@ngneat/transloco';
|
|
6
|
+
import { NgvBaseControlValueAccessorComponent } from '@sebgroup/green-angular/src/v-angular/base-control-value-accessor';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/forms";
|
|
9
|
+
import * as i2 from "@angular/common";
|
|
10
|
+
import * as i3 from "@ngneat/transloco";
|
|
11
|
+
import * as i4 from "@sebgroup/green-angular/src/v-angular/input-mask";
|
|
12
|
+
/**
|
|
13
|
+
* Input fields allow users to add and edit text.
|
|
14
|
+
* https://designlibrary.sebgroup.com/components/component-input
|
|
15
|
+
*/
|
|
16
|
+
export class NgvInputComponent extends NgvBaseControlValueAccessorComponent {
|
|
17
|
+
/** Minimum length (number of characters) of value. */
|
|
18
|
+
set minLength(length) {
|
|
19
|
+
this._minlength = length;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Minimum length (number of characters) of value.
|
|
23
|
+
* @deprecated minlength triggers angular-template-validation. Use @Input() minLength instead.
|
|
24
|
+
*/
|
|
25
|
+
set minlength(length) {
|
|
26
|
+
this._minlength = length;
|
|
27
|
+
}
|
|
28
|
+
get minlength() {
|
|
29
|
+
return this._minlength;
|
|
30
|
+
}
|
|
31
|
+
/** Maximum length (number of characters) of value. */
|
|
32
|
+
set maxLength(length) {
|
|
33
|
+
this._maxlength = length;
|
|
34
|
+
this.writeValue(this.state);
|
|
35
|
+
}
|
|
36
|
+
get maxlength() {
|
|
37
|
+
return this._maxlength;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Maximum length (number of characters) of value.
|
|
41
|
+
* @deprecated maxlength triggers angular-template-validation. Use @Input() maxLength instead.
|
|
42
|
+
*/
|
|
43
|
+
set maxlength(length) {
|
|
44
|
+
this._maxlength = length;
|
|
45
|
+
this.writeValue(this.state);
|
|
46
|
+
}
|
|
47
|
+
set showCharacterCountdown(option) {
|
|
48
|
+
this._showCharacterCountDown = option;
|
|
49
|
+
}
|
|
50
|
+
get showCharacterCountdown() {
|
|
51
|
+
return this._showCharacterCountDown && this.hasMaxLength;
|
|
52
|
+
}
|
|
53
|
+
set inputMask(newInputMask) {
|
|
54
|
+
// Hide input field
|
|
55
|
+
this.hideInput$.next(true);
|
|
56
|
+
this.cdr.detectChanges();
|
|
57
|
+
this._inputMask = newInputMask;
|
|
58
|
+
// Show input field to reload input-mask settings upon update
|
|
59
|
+
setTimeout(() => {
|
|
60
|
+
this.hideInput$.next(false);
|
|
61
|
+
this.cdr.detectChanges();
|
|
62
|
+
}, 200);
|
|
63
|
+
}
|
|
64
|
+
get inputMask() {
|
|
65
|
+
return this._inputMask;
|
|
66
|
+
}
|
|
67
|
+
get control() {
|
|
68
|
+
return this.ngControl?.control ?? this._formControl;
|
|
69
|
+
}
|
|
70
|
+
/** Returns if maxlength is used */
|
|
71
|
+
get hasMaxLength() {
|
|
72
|
+
return !!this.maxlength && this.maxlength !== Number.MAX_SAFE_INTEGER;
|
|
73
|
+
}
|
|
74
|
+
constructor(ngControl, translocoScope, cdr) {
|
|
75
|
+
super(ngControl, translocoScope, cdr);
|
|
76
|
+
this.ngControl = ngControl;
|
|
77
|
+
this.translocoScope = translocoScope;
|
|
78
|
+
this.cdr = cdr;
|
|
79
|
+
/** Adding .gds-form-item as a class to host element */
|
|
80
|
+
this.class = 'gds-form-item';
|
|
81
|
+
/** Special property used for selecting DOM elements during automated UI testing. */
|
|
82
|
+
this.thook = 'input';
|
|
83
|
+
/** Type of input field. Should avoid types that modify field too much such as range. */
|
|
84
|
+
this.type = 'text';
|
|
85
|
+
/** If set to "on", hint for form autofill feature. */
|
|
86
|
+
this.autocomplete = 'on';
|
|
87
|
+
/** If set to true, the value will not be editable. */
|
|
88
|
+
this.readonly = false;
|
|
89
|
+
/** If set to true, enables the Angular template-driven email validator. */
|
|
90
|
+
this.email = false;
|
|
91
|
+
/** Minimum value required for numeric input types. */
|
|
92
|
+
this.min = 0;
|
|
93
|
+
/** Maximum value required for numeric input types. */
|
|
94
|
+
this.max = Number.MAX_SAFE_INTEGER;
|
|
95
|
+
/** Incremental values that are valid for numeric input types. */
|
|
96
|
+
this.step = 1;
|
|
97
|
+
this._maxlength = Number.MAX_SAFE_INTEGER;
|
|
98
|
+
this._minlength = 0;
|
|
99
|
+
/** Wether to show label that tells how many characters are still left to be entered. Will only be set if maxLength is also set */
|
|
100
|
+
this._showCharacterCountDown = true;
|
|
101
|
+
/** Pattern the value must match to be valid. */
|
|
102
|
+
this.pattern = '';
|
|
103
|
+
/** Amount of time to wait until emitting (ngvINput) event */
|
|
104
|
+
this.debounceTime = 500;
|
|
105
|
+
/**
|
|
106
|
+
* @deprecated
|
|
107
|
+
* Text to put in badge
|
|
108
|
+
*/
|
|
109
|
+
this.badgeText = '';
|
|
110
|
+
/** Emits every time the value of the inner input field changes, independantly of updates on the formcontroller */
|
|
111
|
+
this.ngvInput = new EventEmitter();
|
|
112
|
+
this._formControl = new UntypedFormControl();
|
|
113
|
+
/** Toggler for showing or hiding the input field */
|
|
114
|
+
this.hideInput$ = new Subject();
|
|
115
|
+
this.inputChange$ = new Subject();
|
|
116
|
+
this._destroy$ = new Subject();
|
|
117
|
+
}
|
|
118
|
+
ngOnInit() {
|
|
119
|
+
super.ngOnInit();
|
|
120
|
+
this.inputChange$
|
|
121
|
+
.pipe(takeUntil(this._destroy$), debounceTime(this.debounceTime))
|
|
122
|
+
.subscribe((inputValue) => {
|
|
123
|
+
this.ngvInput.emit(inputValue);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
ngOnDestroy() {
|
|
127
|
+
this._destroy$.next(true);
|
|
128
|
+
this._destroy$.complete();
|
|
129
|
+
}
|
|
130
|
+
writeValue(value) {
|
|
131
|
+
// maxLength will only work with string values
|
|
132
|
+
if (value?.length && value.length > this.maxlength) {
|
|
133
|
+
// cut value to match max length
|
|
134
|
+
this.state = this.cutTextAfterMaxLength(value);
|
|
135
|
+
if (value.length !== this.state.length) {
|
|
136
|
+
this.onChange(this.state);
|
|
137
|
+
}
|
|
138
|
+
// emit value
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// update state
|
|
142
|
+
this.state = value;
|
|
143
|
+
}
|
|
144
|
+
this.cdr.detectChanges();
|
|
145
|
+
}
|
|
146
|
+
cutTextAfterMaxLength(value) {
|
|
147
|
+
if (typeof value === 'string') {
|
|
148
|
+
return value.substring(0, this.maxlength);
|
|
149
|
+
}
|
|
150
|
+
return value;
|
|
151
|
+
}
|
|
152
|
+
/** @internal */
|
|
153
|
+
onInput(event) {
|
|
154
|
+
event.stopPropagation();
|
|
155
|
+
if (this.disabled)
|
|
156
|
+
return;
|
|
157
|
+
this.state = event.target.value;
|
|
158
|
+
this.onChange(this.state);
|
|
159
|
+
this.inputChange$.next(this.state);
|
|
160
|
+
}
|
|
161
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
162
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NgvInputComponent, selector: "ngv-input", inputs: { thook: "thook", type: "type", placeholder: "placeholder", autocomplete: "autocomplete", readonly: "readonly", email: "email", min: "min", max: "max", step: "step", minLength: "minLength", minlength: "minlength", maxLength: "maxLength", maxlength: "maxlength", showCharacterCountdown: "showCharacterCountdown", pattern: "pattern", debounceTime: "debounceTime", badgeText: "badgeText", inputMask: "inputMask" }, outputs: { ngvInput: "ngvInput" }, host: { properties: { "class": "this.class", "attr.data-thook": "this.thook" } }, usesInheritance: true, ngImport: i0, template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"sdv-field-label hide-if-empty\"\n [attr.for]=\"id + '-input'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-input'\"\n class=\"ngv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n <ng-container *ngIf=\"!inputMask\">\n {{ state }}\n </ng-container>\n <ng-container *ngIf=\"!!inputMask\">\n {{ state | ngvInputMaskFormat: inputMask }}\n </ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div class=\"gds-input-wrapper\" [class.ngv-field--error]=\"invalid\">\n <div class=\"input-group-prefix hide-if-empty\">\n <ng-content select=\"[slot='prefix']\"></ng-content>\n </div>\n\n <!-- INPUT FIELD -->\n <div class=\"input-group\" *ngIf=\"!inputMask\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"sdv-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [attr.aria-describedby]=\"id + '-message'\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n\n <!-- INPUT FIELD WITH MASK -->\n <div\n class=\"input-group\"\n *ngIf=\"!!inputMask && (hideInput$ | async) === false\"\n >\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"sdv-field\"\n autocomplete=\"off\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [attr.aria-describedby]=\"id + '-message'\"\n [ngvInputMask]=\"inputMask\"\n [formControl]=\"control\"\n />\n </div>\n\n <div class=\"input-group-suffix hide-if-empty\">\n <ng-content select=\"[slot='suffix']\"></ng-content>\n <ng-content></ng-content>\n </div>\n </div>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.id]=\"id + '-message'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"!inputMask && hasMaxLength && showCharacterCountdown\">\n <span\n *ngvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host.gds-form-item{display:flex;flex-direction:column;max-width:100%;position:relative;width:100%;z-index:0}:host.gds-form-item:not(:last-child){margin-bottom:1.5rem}:host.gds-form-item .gds-form-item__header{display:flex}:host.gds-form-item .gds-form-item__header .form-info{font-weight:400}:host.gds-form-item .gds-form-item__header button.icon.small{margin-top:-.5rem;margin-right:-.5rem}:host.gds-form-item .gds-form-item__labels{flex:1;margin-bottom:.5rem}:host.gds-form-item .gds-form-item__labels .form-info{margin-bottom:0}:host.gds-form-item .gds-form-item__labels .form-info a:link:not(.button,[aria-disabled]){color:#0062bc}:host.gds-form-item .gds-form-item__labels>*{width:100%;display:block}:host.gds-form-item .gds-form-item__expandable-info{overflow:hidden;font-size:.875rem;line-height:1.25rem;transition:height .3s cubic-bezier(.23,1,.32,1)}:host.gds-form-item .gds-form-item__expandable-info>div{padding-bottom:.5rem}:host.gds-form-item .gds-form-item__backdrop{position:absolute;inset:0;background:var(--gds-ref-pallet-base100);border-radius:2px;z-index:-1;margin:-1rem;opacity:0;transition:all .3s cubic-bezier(.23,1,.32,1);border:1px solid transparent}@media (prefers-reduced-motion: reduce){:host.gds-form-item .gds-form-item__backdrop{transition:none}}:host.gds-form-item:has([aria-expanded=true]) .gds-form-item__backdrop{opacity:1;border-radius:.25rem;border-color:var(--gds-ref-pallet-base600)}:host.gds-form-item .gds-form-item__footer:not(:empty){margin-top:.5rem;display:flex;column-gap:1rem}:host.gds-form-item .gds-form-item__footer:not(:empty)>span{font-weight:500}:host .hide-if-empty:empty{display:none}:host input:not([type]),:host input[type=date],:host input[type=datetime],:host input[type=datetime-local],:host input[type=email],:host input[type=month],:host input[type=number],:host input[type=password],:host input[type=search],:host input[type=tel],:host input[type=text],:host input[type=time],:host input[type=url],:host input[type=week]{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);background-color:var(--sg-form-control-bg);color:var(--sg-text-primary);min-height:2.75rem;display:flex;align-items:center;justify-content:center}:host input:not([type]):focus:not(:focus-visible),:host input[type=date]:focus:not(:focus-visible),:host input[type=datetime]:focus:not(:focus-visible),:host input[type=datetime-local]:focus:not(:focus-visible),:host input[type=email]:focus:not(:focus-visible),:host input[type=month]:focus:not(:focus-visible),:host input[type=number]:focus:not(:focus-visible),:host input[type=password]:focus:not(:focus-visible),:host input[type=search]:focus:not(:focus-visible),:host input[type=tel]:focus:not(:focus-visible),:host input[type=text]:focus:not(:focus-visible),:host input[type=time]:focus:not(:focus-visible),:host input[type=url]:focus:not(:focus-visible),:host input[type=week]:focus:not(:focus-visible){box-shadow:none;outline:0}:host input:not([type]):focus,:host input:not([type]):focus-visible,:host input[type=date]:focus,:host input[type=date]:focus-visible,:host input[type=datetime]:focus,:host input[type=datetime]:focus-visible,:host input[type=datetime-local]:focus,:host input[type=datetime-local]:focus-visible,:host input[type=email]:focus,:host input[type=email]:focus-visible,:host input[type=month]:focus,:host input[type=month]:focus-visible,:host input[type=number]:focus,:host input[type=number]:focus-visible,:host input[type=password]:focus,:host input[type=password]:focus-visible,:host input[type=search]:focus,:host input[type=search]:focus-visible,:host input[type=tel]:focus,:host input[type=tel]:focus-visible,:host input[type=text]:focus,:host input[type=text]:focus-visible,:host input[type=time]:focus,:host input[type=time]:focus-visible,:host input[type=url]:focus,:host input[type=url]:focus-visible,:host input[type=week]:focus,:host input[type=week]:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host input:not([type]).small,:host input[type=date].small,:host input[type=datetime].small,:host input[type=datetime-local].small,:host input[type=email].small,:host input[type=month].small,:host input[type=number].small,:host input[type=password].small,:host input[type=search].small,:host input[type=tel].small,:host input[type=text].small,:host input[type=time].small,:host input[type=url].small,:host input[type=week].small{min-height:2rem;padding:.25rem .75rem;line-height:1rem}@media screen and (-ms-high-contrast: active){:host input:not([type]),:host input[type=date],:host input[type=datetime],:host input[type=datetime-local],:host input[type=email],:host input[type=month],:host input[type=number],:host input[type=password],:host input[type=search],:host input[type=tel],:host input[type=text],:host input[type=time],:host input[type=url],:host input[type=week]{border:2px solid currentcolor}}:host input:not([type]):disabled,:host input:not([type]).disabled,:host input:not([type])[aria-disabled=true],:host input[type=date]:disabled,:host input[type=date].disabled,:host input[type=date][aria-disabled=true],:host input[type=datetime]:disabled,:host input[type=datetime].disabled,:host input[type=datetime][aria-disabled=true],:host input[type=datetime-local]:disabled,:host input[type=datetime-local].disabled,:host input[type=datetime-local][aria-disabled=true],:host input[type=email]:disabled,:host input[type=email].disabled,:host input[type=email][aria-disabled=true],:host input[type=month]:disabled,:host input[type=month].disabled,:host input[type=month][aria-disabled=true],:host input[type=number]:disabled,:host input[type=number].disabled,:host input[type=number][aria-disabled=true],:host input[type=password]:disabled,:host input[type=password].disabled,:host input[type=password][aria-disabled=true],:host input[type=search]:disabled,:host input[type=search].disabled,:host input[type=search][aria-disabled=true],:host input[type=tel]:disabled,:host input[type=tel].disabled,:host input[type=tel][aria-disabled=true],:host input[type=text]:disabled,:host input[type=text].disabled,:host input[type=text][aria-disabled=true],:host input[type=time]:disabled,:host input[type=time].disabled,:host input[type=time][aria-disabled=true],:host input[type=url]:disabled,:host input[type=url].disabled,:host input[type=url][aria-disabled=true],:host input[type=week]:disabled,:host input[type=week].disabled,:host input[type=week][aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host input:not([type]):disabled::placeholder,:host input:not([type]).disabled::placeholder,:host input:not([type])[aria-disabled=true]::placeholder,:host input[type=date]:disabled::placeholder,:host input[type=date].disabled::placeholder,:host input[type=date][aria-disabled=true]::placeholder,:host input[type=datetime]:disabled::placeholder,:host input[type=datetime].disabled::placeholder,:host input[type=datetime][aria-disabled=true]::placeholder,:host input[type=datetime-local]:disabled::placeholder,:host input[type=datetime-local].disabled::placeholder,:host input[type=datetime-local][aria-disabled=true]::placeholder,:host input[type=email]:disabled::placeholder,:host input[type=email].disabled::placeholder,:host input[type=email][aria-disabled=true]::placeholder,:host input[type=month]:disabled::placeholder,:host input[type=month].disabled::placeholder,:host input[type=month][aria-disabled=true]::placeholder,:host input[type=number]:disabled::placeholder,:host input[type=number].disabled::placeholder,:host input[type=number][aria-disabled=true]::placeholder,:host input[type=password]:disabled::placeholder,:host input[type=password].disabled::placeholder,:host input[type=password][aria-disabled=true]::placeholder,:host input[type=search]:disabled::placeholder,:host input[type=search].disabled::placeholder,:host input[type=search][aria-disabled=true]::placeholder,:host input[type=tel]:disabled::placeholder,:host input[type=tel].disabled::placeholder,:host input[type=tel][aria-disabled=true]::placeholder,:host input[type=text]:disabled::placeholder,:host input[type=text].disabled::placeholder,:host input[type=text][aria-disabled=true]::placeholder,:host input[type=time]:disabled::placeholder,:host input[type=time].disabled::placeholder,:host input[type=time][aria-disabled=true]::placeholder,:host input[type=url]:disabled::placeholder,:host input[type=url].disabled::placeholder,:host input[type=url][aria-disabled=true]::placeholder,:host input[type=week]:disabled::placeholder,:host input[type=week].disabled::placeholder,:host input[type=week][aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host input:not([type]):hover,:host input[type=date]:hover,:host input[type=datetime]:hover,:host input[type=datetime-local]:hover,:host input[type=email]:hover,:host input[type=month]:hover,:host input[type=number]:hover,:host input[type=password]:hover,:host input[type=search]:hover,:host input[type=tel]:hover,:host input[type=text]:hover,:host input[type=time]:hover,:host input[type=url]:hover,:host input[type=week]:hover{background-color:var(--gds-ref-pallet-base100)}:host input[type=number]{-moz-appearance:textfield}:host input[type=number]::-webkit-outer-spin-button,:host input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}:host input{width:100%}:host .gds-input-wrapper{display:flex;flex-direction:column;position:relative;transition:all .2s ease-in-out,outline-offset 0s,outline-width 0s}:host .gds-input-wrapper:before{background:transparent;border-radius:0 0 4px 4px;clip-path:inset(4px 0 0 0);content:\"\";display:block;height:4px;position:absolute;transition:.3s ease-in-out;width:100%}:host .gds-input-wrapper:before{bottom:0}.is-invalid :host .gds-input-wrapper{color:var(--intent-danger-background);opacity:1}.is-invalid :host .gds-input-wrapper:before{background:var(--intent-danger-background);clip-path:inset(1px 0 0 0)}:host label:is(label),:host .label:is(label),:host legend:is(label){margin-bottom:0}:host label.form-control,:host .label.form-control,:host legend.form-control{width:-moz-fit-content;width:fit-content}@supports (-moz-appearance: none){:host label.form-control:focus:not(:focus-visible),:host .label.form-control:focus:not(:focus-visible),:host legend.form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:focus,:host label.form-control:focus-within,:host .label.form-control:focus,:host .label.form-control:focus-within,:host legend.form-control:focus,:host legend.form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.form-control),:host .label:not(.form-control),:host legend:not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label+input,:host label+textarea,fieldset :host label+div,:host label+button,:host label+.group-stepper,:host label+.stepper-wrapper,:host label+.group,:host .label+input,:host .label+textarea,fieldset :host .label+div,:host .label+button,:host .label+.group-stepper,:host .label+.stepper-wrapper,:host .label+.group,:host legend+input,:host legend+textarea,fieldset :host legend+div,:host legend+button,:host legend+.group-stepper,:host legend+.stepper-wrapper,:host legend+.group{margin-top:.5rem}:host label+.form-info,:host .label+.form-info,:host legend+.form-info{margin-bottom:.5rem}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{color:var(--intent-danger-background, #9f000a)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i4.NgvInputMaskDirective, selector: "[ngvInputMask]", inputs: ["ngvInputMask"] }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.InputMaskFormatPipe, name: "ngvInputMaskFormat" }] }); }
|
|
163
|
+
}
|
|
164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputComponent, decorators: [{
|
|
165
|
+
type: Component,
|
|
166
|
+
args: [{ selector: 'ngv-input', template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"sdv-field-label hide-if-empty\"\n [attr.for]=\"id + '-input'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"sdv-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-input'\"\n class=\"ngv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n <ng-container *ngIf=\"!inputMask\">\n {{ state }}\n </ng-container>\n <ng-container *ngIf=\"!!inputMask\">\n {{ state | ngvInputMaskFormat: inputMask }}\n </ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT WRAPPER -->\n<ng-container *ngIf=\"!locked\">\n <div class=\"gds-input-wrapper\" [class.ngv-field--error]=\"invalid\">\n <div class=\"input-group-prefix hide-if-empty\">\n <ng-content select=\"[slot='prefix']\"></ng-content>\n </div>\n\n <!-- INPUT FIELD -->\n <div class=\"input-group\" *ngIf=\"!inputMask\">\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"sdv-field\"\n [attr.type]=\"type\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [attr.email]=\"email\"\n [attr.aria-describedby]=\"id + '-message'\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [pattern]=\"pattern\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n />\n </div>\n\n <!-- INPUT FIELD WITH MASK -->\n <div\n class=\"input-group\"\n *ngIf=\"!!inputMask && (hideInput$ | async) === false\"\n >\n <input\n #input\n [id]=\"id + '-input'\"\n class=\"sdv-field\"\n autocomplete=\"off\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [readOnly]=\"readonly\"\n [attr.role]=\"role\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [attr.aria-describedby]=\"id + '-message'\"\n [ngvInputMask]=\"inputMask\"\n [formControl]=\"control\"\n />\n </div>\n\n <div class=\"input-group-suffix hide-if-empty\">\n <ng-content select=\"[slot='suffix']\"></ng-content>\n <ng-content></ng-content>\n </div>\n </div>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.id]=\"id + '-message'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span *ngIf=\"error; else errorsRef\">{{ error }}</span>\n <ng-template #errorsRef>\n <span *ngIf=\"firstError as error\">\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"!inputMask && hasMaxLength && showCharacterCountdown\">\n <span\n *ngvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host.gds-form-item{display:flex;flex-direction:column;max-width:100%;position:relative;width:100%;z-index:0}:host.gds-form-item:not(:last-child){margin-bottom:1.5rem}:host.gds-form-item .gds-form-item__header{display:flex}:host.gds-form-item .gds-form-item__header .form-info{font-weight:400}:host.gds-form-item .gds-form-item__header button.icon.small{margin-top:-.5rem;margin-right:-.5rem}:host.gds-form-item .gds-form-item__labels{flex:1;margin-bottom:.5rem}:host.gds-form-item .gds-form-item__labels .form-info{margin-bottom:0}:host.gds-form-item .gds-form-item__labels .form-info a:link:not(.button,[aria-disabled]){color:#0062bc}:host.gds-form-item .gds-form-item__labels>*{width:100%;display:block}:host.gds-form-item .gds-form-item__expandable-info{overflow:hidden;font-size:.875rem;line-height:1.25rem;transition:height .3s cubic-bezier(.23,1,.32,1)}:host.gds-form-item .gds-form-item__expandable-info>div{padding-bottom:.5rem}:host.gds-form-item .gds-form-item__backdrop{position:absolute;inset:0;background:var(--gds-ref-pallet-base100);border-radius:2px;z-index:-1;margin:-1rem;opacity:0;transition:all .3s cubic-bezier(.23,1,.32,1);border:1px solid transparent}@media (prefers-reduced-motion: reduce){:host.gds-form-item .gds-form-item__backdrop{transition:none}}:host.gds-form-item:has([aria-expanded=true]) .gds-form-item__backdrop{opacity:1;border-radius:.25rem;border-color:var(--gds-ref-pallet-base600)}:host.gds-form-item .gds-form-item__footer:not(:empty){margin-top:.5rem;display:flex;column-gap:1rem}:host.gds-form-item .gds-form-item__footer:not(:empty)>span{font-weight:500}:host .hide-if-empty:empty{display:none}:host input:not([type]),:host input[type=date],:host input[type=datetime],:host input[type=datetime-local],:host input[type=email],:host input[type=month],:host input[type=number],:host input[type=password],:host input[type=search],:host input[type=tel],:host input[type=text],:host input[type=time],:host input[type=url],:host input[type=week]{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);background-color:var(--sg-form-control-bg);color:var(--sg-text-primary);min-height:2.75rem;display:flex;align-items:center;justify-content:center}:host input:not([type]):focus:not(:focus-visible),:host input[type=date]:focus:not(:focus-visible),:host input[type=datetime]:focus:not(:focus-visible),:host input[type=datetime-local]:focus:not(:focus-visible),:host input[type=email]:focus:not(:focus-visible),:host input[type=month]:focus:not(:focus-visible),:host input[type=number]:focus:not(:focus-visible),:host input[type=password]:focus:not(:focus-visible),:host input[type=search]:focus:not(:focus-visible),:host input[type=tel]:focus:not(:focus-visible),:host input[type=text]:focus:not(:focus-visible),:host input[type=time]:focus:not(:focus-visible),:host input[type=url]:focus:not(:focus-visible),:host input[type=week]:focus:not(:focus-visible){box-shadow:none;outline:0}:host input:not([type]):focus,:host input:not([type]):focus-visible,:host input[type=date]:focus,:host input[type=date]:focus-visible,:host input[type=datetime]:focus,:host input[type=datetime]:focus-visible,:host input[type=datetime-local]:focus,:host input[type=datetime-local]:focus-visible,:host input[type=email]:focus,:host input[type=email]:focus-visible,:host input[type=month]:focus,:host input[type=month]:focus-visible,:host input[type=number]:focus,:host input[type=number]:focus-visible,:host input[type=password]:focus,:host input[type=password]:focus-visible,:host input[type=search]:focus,:host input[type=search]:focus-visible,:host input[type=tel]:focus,:host input[type=tel]:focus-visible,:host input[type=text]:focus,:host input[type=text]:focus-visible,:host input[type=time]:focus,:host input[type=time]:focus-visible,:host input[type=url]:focus,:host input[type=url]:focus-visible,:host input[type=week]:focus,:host input[type=week]:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host input:not([type]).small,:host input[type=date].small,:host input[type=datetime].small,:host input[type=datetime-local].small,:host input[type=email].small,:host input[type=month].small,:host input[type=number].small,:host input[type=password].small,:host input[type=search].small,:host input[type=tel].small,:host input[type=text].small,:host input[type=time].small,:host input[type=url].small,:host input[type=week].small{min-height:2rem;padding:.25rem .75rem;line-height:1rem}@media screen and (-ms-high-contrast: active){:host input:not([type]),:host input[type=date],:host input[type=datetime],:host input[type=datetime-local],:host input[type=email],:host input[type=month],:host input[type=number],:host input[type=password],:host input[type=search],:host input[type=tel],:host input[type=text],:host input[type=time],:host input[type=url],:host input[type=week]{border:2px solid currentcolor}}:host input:not([type]):disabled,:host input:not([type]).disabled,:host input:not([type])[aria-disabled=true],:host input[type=date]:disabled,:host input[type=date].disabled,:host input[type=date][aria-disabled=true],:host input[type=datetime]:disabled,:host input[type=datetime].disabled,:host input[type=datetime][aria-disabled=true],:host input[type=datetime-local]:disabled,:host input[type=datetime-local].disabled,:host input[type=datetime-local][aria-disabled=true],:host input[type=email]:disabled,:host input[type=email].disabled,:host input[type=email][aria-disabled=true],:host input[type=month]:disabled,:host input[type=month].disabled,:host input[type=month][aria-disabled=true],:host input[type=number]:disabled,:host input[type=number].disabled,:host input[type=number][aria-disabled=true],:host input[type=password]:disabled,:host input[type=password].disabled,:host input[type=password][aria-disabled=true],:host input[type=search]:disabled,:host input[type=search].disabled,:host input[type=search][aria-disabled=true],:host input[type=tel]:disabled,:host input[type=tel].disabled,:host input[type=tel][aria-disabled=true],:host input[type=text]:disabled,:host input[type=text].disabled,:host input[type=text][aria-disabled=true],:host input[type=time]:disabled,:host input[type=time].disabled,:host input[type=time][aria-disabled=true],:host input[type=url]:disabled,:host input[type=url].disabled,:host input[type=url][aria-disabled=true],:host input[type=week]:disabled,:host input[type=week].disabled,:host input[type=week][aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host input:not([type]):disabled::placeholder,:host input:not([type]).disabled::placeholder,:host input:not([type])[aria-disabled=true]::placeholder,:host input[type=date]:disabled::placeholder,:host input[type=date].disabled::placeholder,:host input[type=date][aria-disabled=true]::placeholder,:host input[type=datetime]:disabled::placeholder,:host input[type=datetime].disabled::placeholder,:host input[type=datetime][aria-disabled=true]::placeholder,:host input[type=datetime-local]:disabled::placeholder,:host input[type=datetime-local].disabled::placeholder,:host input[type=datetime-local][aria-disabled=true]::placeholder,:host input[type=email]:disabled::placeholder,:host input[type=email].disabled::placeholder,:host input[type=email][aria-disabled=true]::placeholder,:host input[type=month]:disabled::placeholder,:host input[type=month].disabled::placeholder,:host input[type=month][aria-disabled=true]::placeholder,:host input[type=number]:disabled::placeholder,:host input[type=number].disabled::placeholder,:host input[type=number][aria-disabled=true]::placeholder,:host input[type=password]:disabled::placeholder,:host input[type=password].disabled::placeholder,:host input[type=password][aria-disabled=true]::placeholder,:host input[type=search]:disabled::placeholder,:host input[type=search].disabled::placeholder,:host input[type=search][aria-disabled=true]::placeholder,:host input[type=tel]:disabled::placeholder,:host input[type=tel].disabled::placeholder,:host input[type=tel][aria-disabled=true]::placeholder,:host input[type=text]:disabled::placeholder,:host input[type=text].disabled::placeholder,:host input[type=text][aria-disabled=true]::placeholder,:host input[type=time]:disabled::placeholder,:host input[type=time].disabled::placeholder,:host input[type=time][aria-disabled=true]::placeholder,:host input[type=url]:disabled::placeholder,:host input[type=url].disabled::placeholder,:host input[type=url][aria-disabled=true]::placeholder,:host input[type=week]:disabled::placeholder,:host input[type=week].disabled::placeholder,:host input[type=week][aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host input:not([type]):hover,:host input[type=date]:hover,:host input[type=datetime]:hover,:host input[type=datetime-local]:hover,:host input[type=email]:hover,:host input[type=month]:hover,:host input[type=number]:hover,:host input[type=password]:hover,:host input[type=search]:hover,:host input[type=tel]:hover,:host input[type=text]:hover,:host input[type=time]:hover,:host input[type=url]:hover,:host input[type=week]:hover{background-color:var(--gds-ref-pallet-base100)}:host input[type=number]{-moz-appearance:textfield}:host input[type=number]::-webkit-outer-spin-button,:host input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}:host input{width:100%}:host .gds-input-wrapper{display:flex;flex-direction:column;position:relative;transition:all .2s ease-in-out,outline-offset 0s,outline-width 0s}:host .gds-input-wrapper:before{background:transparent;border-radius:0 0 4px 4px;clip-path:inset(4px 0 0 0);content:\"\";display:block;height:4px;position:absolute;transition:.3s ease-in-out;width:100%}:host .gds-input-wrapper:before{bottom:0}.is-invalid :host .gds-input-wrapper{color:var(--intent-danger-background);opacity:1}.is-invalid :host .gds-input-wrapper:before{background:var(--intent-danger-background);clip-path:inset(1px 0 0 0)}:host label:is(label),:host .label:is(label),:host legend:is(label){margin-bottom:0}:host label.form-control,:host .label.form-control,:host legend.form-control{width:-moz-fit-content;width:fit-content}@supports (-moz-appearance: none){:host label.form-control:focus:not(:focus-visible),:host .label.form-control:focus:not(:focus-visible),:host legend.form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label.form-control:focus,:host label.form-control:focus-within,:host .label.form-control:focus,:host .label.form-control:focus-within,:host legend.form-control:focus,:host legend.form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.form-control),:host .label:not(.form-control),:host legend:not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label+input,:host label+textarea,fieldset :host label+div,:host label+button,:host label+.group-stepper,:host label+.stepper-wrapper,:host label+.group,:host .label+input,:host .label+textarea,fieldset :host .label+div,:host .label+button,:host .label+.group-stepper,:host .label+.stepper-wrapper,:host .label+.group,:host legend+input,:host legend+textarea,fieldset :host legend+div,:host legend+button,:host legend+.group-stepper,:host legend+.stepper-wrapper,:host legend+.group{margin-top:.5rem}:host label+.form-info,:host .label+.form-info,:host legend+.form-info{margin-bottom:.5rem}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{color:var(--intent-danger-background, #9f000a)}\n"] }]
|
|
167
|
+
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
168
|
+
type: Self
|
|
169
|
+
}, {
|
|
170
|
+
type: Optional
|
|
171
|
+
}] }, { type: undefined, decorators: [{
|
|
172
|
+
type: Optional
|
|
173
|
+
}, {
|
|
174
|
+
type: Inject,
|
|
175
|
+
args: [TRANSLOCO_SCOPE]
|
|
176
|
+
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { class: [{
|
|
177
|
+
type: HostBinding,
|
|
178
|
+
args: ['class']
|
|
179
|
+
}], thook: [{
|
|
180
|
+
type: HostBinding,
|
|
181
|
+
args: ['attr.data-thook']
|
|
182
|
+
}, {
|
|
183
|
+
type: Input
|
|
184
|
+
}], type: [{
|
|
185
|
+
type: Input
|
|
186
|
+
}], placeholder: [{
|
|
187
|
+
type: Input
|
|
188
|
+
}], autocomplete: [{
|
|
189
|
+
type: Input
|
|
190
|
+
}], readonly: [{
|
|
191
|
+
type: Input
|
|
192
|
+
}], email: [{
|
|
193
|
+
type: Input
|
|
194
|
+
}], min: [{
|
|
195
|
+
type: Input
|
|
196
|
+
}], max: [{
|
|
197
|
+
type: Input
|
|
198
|
+
}], step: [{
|
|
199
|
+
type: Input
|
|
200
|
+
}], minLength: [{
|
|
201
|
+
type: Input
|
|
202
|
+
}], minlength: [{
|
|
203
|
+
type: Input
|
|
204
|
+
}], maxLength: [{
|
|
205
|
+
type: Input
|
|
206
|
+
}], maxlength: [{
|
|
207
|
+
type: Input
|
|
208
|
+
}], showCharacterCountdown: [{
|
|
209
|
+
type: Input
|
|
210
|
+
}], pattern: [{
|
|
211
|
+
type: Input
|
|
212
|
+
}], debounceTime: [{
|
|
213
|
+
type: Input
|
|
214
|
+
}], badgeText: [{
|
|
215
|
+
type: Input
|
|
216
|
+
}], inputMask: [{
|
|
217
|
+
type: Input
|
|
218
|
+
}], ngvInput: [{
|
|
219
|
+
type: Output
|
|
220
|
+
}] } });
|
|
221
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQvaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQvaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBa0IsTUFBTSxtQkFBbUIsQ0FBQTtBQUduRSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQTs7Ozs7O0FBRXhIOzs7R0FHRztBQU9ILE1BQU0sT0FBTyxpQkFDWCxTQUFRLG9DQUFvQztJQXVCNUMsc0RBQXNEO0lBQ3RELElBQWEsU0FBUyxDQUFDLE1BQWM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUE7SUFDMUIsQ0FBQztJQUNEOzs7T0FHRztJQUNILElBQWEsU0FBUyxDQUFDLE1BQWM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUE7SUFDMUIsQ0FBQztJQUNELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN4QixDQUFDO0lBQ0Qsc0RBQXNEO0lBQ3RELElBQWEs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QVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUVHLEdBQUc7c0JBQVgsS0FBSztnQkFFRyxHQUFHO3NCQUFYLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBT08sU0FBUztzQkFBckIsS0FBSztnQkFPTyxTQUFTO3NCQUFyQixLQUFLO2dCQVdPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBVU8sc0JBQXNCO3NCQUFsQyxLQUFLO2dCQVFHLE9BQU87c0JBQWYsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSU8sU0FBUztzQkFBckIsS0FBSztnQkFpQkksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTmdDb250cm9sLCBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBUUkFOU0xPQ09fU0NPUEUsIFRyYW5zbG9jb1Njb3BlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nXG5pbXBvcnQgdHlwZSB7IElucHV0bWFza09wdGlvbnMgfSBmcm9tICdAc2ViZ3JvdXAvZ3JlZW4tYW5ndWxhci9zcmMvdi1hbmd1bGFyL2lucHV0LW1hc2snXG5cbmltcG9ydCB7IE5ndkJhc2VDb250cm9sVmFsdWVBY2Nlc3NvckNvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvYmFzZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yJ1xuXG4vKipcbiAqIElucHV0IGZpZWxkcyBhbGxvdyB1c2VycyB0byBhZGQgYW5kIGVkaXQgdGV4dC5cbiAqIGh0dHBzOi8vZGVzaWdubGlicmFyeS5zZWJncm91cC5jb20vY29tcG9uZW50cy9jb21wb25lbnQtaW5wdXRcbiAqL1xuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbmd2LWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd2SW5wdXRDb21wb25lbnRcbiAgZXh0ZW5kcyBOZ3ZCYXNlQ29udHJvbFZhbHVlQWNjZXNzb3JDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKiogQWRkaW5nIC5nZHMtZm9ybS1pdGVtIGFzIGEgY2xhc3MgdG8gaG9zdCBlbGVtZW50ICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBjbGFzcyA9ICdnZHMtZm9ybS1pdGVtJ1xuICAvKiogU3BlY2lhbCBwcm9wZXJ0eSB1c2VkIGZvciBzZWxlY3RpbmcgRE9NIGVsZW1lbnRzIGR1cmluZyBhdXRvbWF0ZWQgVUkgdGVzdGluZy4gKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdGhvb2snKSBASW5wdXQoKSB0aG9vayA9ICdpbnB1dCdcbiAgLyoqIFR5cGUgb2YgaW5wdXQgZmllbGQuIFNob3VsZCBhdm9pZCB0eXBlcyB0aGF0IG1vZGlmeSBmaWVsZCB0b28gbXVjaCBzdWNoIGFzIHJhbmdlLiAqL1xuICBASW5wdXQoKSB0eXBlID0gJ3RleHQnXG4gIC8qKiBUZXh0IHNob3duIGJlZm9yZSBpbnB1dCBoYXMgYSB3cml0dGVuIHZhbHVlLiAqL1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKiogSWYgc2V0IHRvIFwib25cIiwgaGludCBmb3IgZm9ybSBhdXRvZmlsbCBmZWF0dXJlLiAqL1xuICBASW5wdXQoKSBhdXRvY29tcGxldGUgPSAnb24nXG4gIC8qKiBJZiBzZXQgdG8gdHJ1ZSwgdGhlIHZhbHVlIHdpbGwgbm90IGJlIGVkaXRhYmxlLiAqL1xuICBASW5wdXQoKSByZWFkb25seSA9IGZhbHNlXG4gIC8qKiBJZiBzZXQgdG8gdHJ1ZSwgZW5hYmxlcyB0aGUgQW5ndWxhciB0ZW1wbGF0ZS1kcml2ZW4gZW1haWwgdmFsaWRhdG9yLiAqL1xuICBASW5wdXQoKSBlbWFpbCA9IGZhbHNlXG4gIC8qKiBNaW5pbXVtIHZhbHVlIHJlcXVpcmVkIGZvciBudW1lcmljIGlucHV0IHR5cGVzLiAqL1xuICBASW5wdXQoKSBtaW4gPSAwXG4gIC8qKiBNYXhpbXVtIHZhbHVlIHJlcXVpcmVkIGZvciBudW1lcmljIGlucHV0IHR5cGVzLiAqL1xuICBASW5wdXQoKSBtYXggPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuICAvKiogSW5jcmVtZW50YWwgdmFsdWVzIHRoYXQgYXJlIHZhbGlkIGZvciBudW1lcmljIGlucHV0IHR5cGVzLiAqL1xuICBASW5wdXQoKSBzdGVwID0gMVxuICAvKiogTWluaW11bSBsZW5ndGggKG51bWJlciBvZiBjaGFyYWN0ZXJzKSBvZiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgc2V0IG1pbkxlbmd0aChsZW5ndGg6IG51bWJlcikge1xuICAgIHRoaXMuX21pbmxlbmd0aCA9IGxlbmd0aFxuICB9XG4gIC8qKlxuICAgKiBNaW5pbXVtIGxlbmd0aCAobnVtYmVyIG9mIGNoYXJhY3RlcnMpIG9mIHZhbHVlLlxuICAgKiBAZGVwcmVjYXRlZCBtaW5sZW5ndGggdHJpZ2dlcnMgYW5ndWxhci10ZW1wbGF0ZS12YWxpZGF0aW9uLiBVc2UgQElucHV0KCkgbWluTGVuZ3RoIGluc3RlYWQuXG4gICAqL1xuICBASW5wdXQoKSBzZXQgbWlubGVuZ3RoKGxlbmd0aDogbnVtYmVyKSB7XG4gICAgdGhpcy5fbWlubGVuZ3RoID0gbGVuZ3RoXG4gIH1cbiAgZ2V0IG1pbmxlbmd0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9taW5sZW5ndGhcbiAgfVxuICAvKiogTWF4aW11bSBsZW5ndGggKG51bWJlciBvZiBjaGFyYWN0ZXJzKSBvZiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgc2V0IG1heExlbmd0aChsZW5ndGg6IG51bWJlcikge1xuICAgIHRoaXMuX21heGxlbmd0aCA9IGxlbmd0aFxuICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnN0YXRlKVxuICB9XG4gIGdldCBtYXhsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4bGVuZ3RoXG4gIH1cbiAgLyoqXG4gICAqIE1heGltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIG1heGxlbmd0aCB0cmlnZ2VycyBhbmd1bGFyLXRlbXBsYXRlLXZhbGlkYXRpb24uIFVzZSBASW5wdXQoKSBtYXhMZW5ndGggaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtYXhsZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhsZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zdGF0ZSlcbiAgfVxuICBwcml2YXRlIF9tYXhsZW5ndGggPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gIHByaXZhdGUgX21pbmxlbmd0aCA9IDBcblxuICAvKiogV2V0aGVyIHRvIHNob3cgbGFiZWwgdGhhdCB0ZWxscyBob3cgbWFueSBjaGFyYWN0ZXJzIGFyZSBzdGlsbCBsZWZ0IHRvIGJlIGVudGVyZWQuIFdpbGwgb25seSBiZSBzZXQgaWYgbWF4TGVuZ3RoIGlzIGFsc28gc2V0ICovXG4gIHByaXZhdGUgX3Nob3dDaGFyYWN0ZXJDb3VudERvd24gPSB0cnVlXG4gIEBJbnB1dCgpIHNldCBzaG93Q2hhcmFjdGVyQ291bnRkb3duKG9wdGlvbjogYm9vbGVhbikge1xuICAgIHRoaXMuX3Nob3dDaGFyYWN0ZXJDb3VudERvd24gPSBvcHRpb25cbiAgfVxuICBnZXQgc2hvd0NoYXJhY3RlckNvdW50ZG93bigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvd0NoYXJhY3RlckNvdW50RG93biAmJiB0aGlzLmhhc01heExlbmd0aFxuICB9XG5cbiAgLyoqIFBhdHRlcm4gdGhlIHZhbHVlIG11c3QgbWF0Y2ggdG8gYmUgdmFsaWQuICovXG4gIEBJbnB1dCgpIHBhdHRlcm4gPSAnJ1xuICAvKiogQW1vdW50IG9mIHRpbWUgdG8gd2FpdCB1bnRpbCBlbWl0dGluZyAobmd2SU5wdXQpIGV2ZW50ICovXG4gIEBJbnB1dCgpIGRlYm91bmNlVGltZSA9IDUwMFxuICAvKipcbiAgICogQGRlcHJlY2F0ZWRcbiAgICogVGV4dCB0byBwdXQgaW4gYmFkZ2VcbiAgICovXG4gIEBJbnB1dCgpIGJhZGdlVGV4dCA9ICcnXG5cbiAgLyoqIFNldHRpbmdzIGZvciBpbnB1dCBtYXNrIGlmIHJlcXVlc3RlZCAqL1xuICBwcml2YXRlIF9pbnB1dE1hc2shOiBJbnB1dG1hc2tPcHRpb25zPGFueT5cbiAgQElucHV0KCkgc2V0IGlucHV0TWFzayhuZXdJbnB1dE1hc2s6IElucHV0bWFza09wdGlvbnM8YW55Pikge1xuICAgIC8vIEhpZGUgaW5wdXQgZmllbGRcbiAgICB0aGlzLmhpZGVJbnB1dCQubmV4dCh0cnVlKVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICAgIHRoaXMuX2lucHV0TWFzayA9IG5ld0lucHV0TWFza1xuXG4gICAgLy8gU2hvdyBpbnB1dCBmaWVsZCB0byByZWxvYWQgaW5wdXQtbWFzayBzZXR0aW5ncyB1cG9uIHVwZGF0ZVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5oaWRlSW5wdXQkLm5leHQoZmFsc2UpXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICB9LCAyMDApXG4gIH1cbiAgZ2V0IGlucHV0TWFzaygpOiBJbnB1dG1hc2tPcHRpb25zPGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9pbnB1dE1hc2tcbiAgfVxuXG4gIC8qKiBFbWl0cyBldmVyeSB0aW1lIHRoZSB2YWx1ZSBvZiB0aGUgaW5uZXIgaW5wdXQgZmllbGQgY2hhbmdlcywgaW5kZXBlbmRhbnRseSBvZiB1cGRhdGVzIG9uIHRoZSBmb3JtY29udHJvbGxlciAqL1xuICBAT3V0cHV0KCkgbmd2SW5wdXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuXG4gIHByaXZhdGUgX2Zvcm1Db250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCgpXG4gIGdldCBjb250cm9sKCk6IFVudHlwZWRGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuICh0aGlzLm5nQ29udHJvbD8uY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2wpID8/IHRoaXMuX2Zvcm1Db250cm9sXG4gIH1cbiAgLyoqIFJldHVybnMgaWYgbWF4bGVuZ3RoIGlzIHVzZWQgKi9cbiAgZ2V0IGhhc01heExlbmd0aCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLm1heGxlbmd0aCAmJiB0aGlzLm1heGxlbmd0aCAhPT0gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcbiAgfVxuXG4gIC8qKiBUb2dnbGVyIGZvciBzaG93aW5nIG9yIGhpZGluZyB0aGUgaW5wdXQgZmllbGQgKi9cbiAgaGlkZUlucHV0JCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KClcblxuICBwcm90ZWN0ZWQgaW5wdXRDaGFuZ2UkID0gbmV3IFN1YmplY3Q8YW55PigpXG4gIHByb3RlY3RlZCBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpXG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFRSQU5TTE9DT19TQ09QRSlcbiAgICBwcm90ZWN0ZWQgdHJhbnNsb2NvU2NvcGU6IFRyYW5zbG9jb1Njb3BlLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHtcbiAgICBzdXBlcihuZ0NvbnRyb2wsIHRyYW5zbG9jb1Njb3BlLCBjZHIpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpXG4gICAgdGhpcy5pbnB1dENoYW5nZSRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSkpXG4gICAgICAuc3Vic2NyaWJlKChpbnB1dFZhbHVlKSA9PiB7XG4gICAgICAgIHRoaXMubmd2SW5wdXQuZW1pdChpbnB1dFZhbHVlKVxuICAgICAgfSlcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQodHJ1ZSlcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpXG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAvLyBtYXhMZW5ndGggd2lsbCBvbmx5IHdvcmsgd2l0aCBzdHJpbmcgdmFsdWVzXG4gICAgaWYgKHZhbHVlPy5sZW5ndGggJiYgdmFsdWUubGVuZ3RoID4gdGhpcy5tYXhsZW5ndGgpIHtcbiAgICAgIC8vIGN1dCB2YWx1ZSB0byBtYXRjaCBtYXggbGVuZ3RoXG4gICAgICB0aGlzLnN0YXRlID0gdGhpcy5jdXRUZXh0QWZ0ZXJNYXhMZW5ndGgodmFsdWUpXG4gICAgICBpZiAodmFsdWUubGVuZ3RoICE9PSB0aGlzLnN0YXRlLmxlbmd0aCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuc3RhdGUpXG4gICAgICB9XG4gICAgICAvLyBlbWl0IHZhbHVlXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHVwZGF0ZSBzdGF0ZVxuICAgICAgdGhpcy5zdGF0ZSA9IHZhbHVlXG4gICAgfVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgY3V0VGV4dEFmdGVyTWF4TGVuZ3RoKHZhbHVlOiBhbnkpOiBhbnkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gdmFsdWUuc3Vic3RyaW5nKDAsIHRoaXMubWF4bGVuZ3RoKVxuICAgIH1cbiAgICByZXR1cm4gdmFsdWVcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm5cbiAgICB0aGlzLnN0YXRlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZVxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5zdGF0ZSlcbiAgICB0aGlzLmlucHV0Q2hhbmdlJC5uZXh0KHRoaXMuc3RhdGUpXG4gIH1cbn1cbiIsIjwhLS0gTEFCRUwgLS0+XG48bGFiZWxcbiAgW2lkXT1cImlkICsgJy1sYWJlbCdcIlxuICBjbGFzcz1cInNkdi1maWVsZC1sYWJlbCBoaWRlLWlmLWVtcHR5XCJcbiAgW2F0dHIuZm9yXT1cImlkICsgJy1pbnB1dCdcIlxuICAqdHJhbnNsb2NvPVwibGV0IHQ7IHJlYWQ6IHNjb3BlXCJcbj5cbiAgPG5nLXRlbXBsYXRlXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbENvbnRlbnRUcGwgfHwgYmFzaWNMYWJlbENvbnRlbnRUcGxcIlxuICA+PC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlICNiYXNpY0xhYmVsQ29udGVudFRwbD5cbiAgICA8IS0tIHRvIHRyaWdnZXIgY3NzOmVtcHR5IGlmIG5vIGxhYmVsIHdhcyBhZGRlZCAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxcIj5cbiAgICAgIHt7IGxhYmVsIH19XG4gICAgICA8c3BhblxuICAgICAgICAqbmdJZj1cIm9wdGlvbmFsID09PSB0cnVlIHx8IChyZXF1aXJlZCAhPT0gdHJ1ZSAmJiBvcHRpb25hbCAhPT0gZmFsc2UpXCJcbiAgICAgICAgY2xhc3M9XCJzZHYtZmllbGQtbGFiZWwtLW9wdGlvbmFsXCJcbiAgICAgID5cbiAgICAgICAgKHt7IHQoJ2xhYmVsLm9wdGlvbmFsJykgfX0pXG4gICAgICA8L3NwYW4+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG48L2xhYmVsPlxuXG48IS0tIERFU0NSSVBUSU9OIC0tPlxuPGRpdiBjbGFzcz1cImZvcm0taW5mbyBkZXNjcmlwdGlvbiBoaWRlLWlmLWVtcHR5XCI+XG4gIHt7IGRlc2NyaXB0aW9uIH19XG48L2Rpdj5cblxuPCEtLSBMT0NLRUQgSU5QVVQgLS0+XG48bmctY29udGFpbmVyICpuZ0lmPVwibG9ja2VkXCI+XG4gIDxkaXZcbiAgICBbaWRdPVwiaWQgKyAnLWlucHV0J1wiXG4gICAgY2xhc3M9XCJuZ3YtZmllbGQtLWxvY2tlZFwiXG4gICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICBbYXR0ci52YWx1ZV09XCJzdGF0ZVwiXG4gICAgW2F0dHIucm9sZV09XCJyb2xlXCJcbiAgPlxuICAgIDxzcGFuICpuZ0lmPVwiIXN0YXRlXCIgY2xhc3M9XCJ1bnNldC1zdGF0ZVwiPi08L3NwYW4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlucHV0TWFza1wiPlxuICAgICAgICB7eyBzdGF0ZSB9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISFpbnB1dE1hc2tcIj5cbiAgICAgICAge3sgc3RhdGUgfCBuZ3ZJbnB1dE1hc2tGb3JtYXQ6IGlucHV0TWFzayB9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjwhLS0gSU5QVVQgV1JBUFBFUiAtLT5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9ja2VkXCI+XG4gIDxkaXYgY2xhc3M9XCJnZHMtaW5wdXQtd3JhcHBlclwiIFtjbGFzcy5uZ3YtZmllbGQtLWVycm9yXT1cImludmFsaWRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtcHJlZml4IGhpZGUtaWYtZW1wdHlcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltzbG90PSdwcmVmaXgnXVwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS0gSU5QVVQgRklFTEQgLS0+XG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCIgKm5nSWY9XCIhaW5wdXRNYXNrXCI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgI2lucHV0XG4gICAgICAgIFtpZF09XCJpZCArICctaW5wdXQnXCJcbiAgICAgICAgY2xhc3M9XCJzZHYtZmllbGRcIlxuICAgICAgICBbYXR0ci50eXBlXT1cInR5cGVcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgIFthdHRyLmVtYWlsXT1cImVtYWlsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJpZCArICctbWVzc2FnZSdcIlxuICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgW3N0ZXBdPVwic3RlcFwiXG4gICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoXCJcbiAgICAgICAgW3BhdHRlcm5dPVwicGF0dGVyblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2F1dG9mb2N1c109XCJhdXRvZm9jdXNcIlxuICAgICAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICBbYXR0ci5yb2xlXT1cInJvbGVcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICBbdmFsdWVdPVwic3RhdGVcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIElOUFVUIEZJRUxEIFdJVEggTUFTSyAtLT5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImlucHV0LWdyb3VwXCJcbiAgICAgICpuZ0lmPVwiISFpbnB1dE1hc2sgJiYgKGhpZGVJbnB1dCQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICA+XG4gICAgICA8aW5wdXRcbiAgICAgICAgI2lucHV0XG4gICAgICAgIFtpZF09XCJpZCArICctaW5wdXQnXCJcbiAgICAgICAgY2xhc3M9XCJzZHYtZmllbGRcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZXNjcmlwdGlvblwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiaWQgKyAnLW1lc3NhZ2UnXCJcbiAgICAgICAgW25ndklucHV0TWFza109XCJpbnB1dE1hc2tcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLXN1ZmZpeCBoaWRlLWlmLWVtcHR5XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD0nc3VmZml4J11cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDwhLS0gRVJST1JTIC0tPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJnZHMtZm9ybS1pdGVtX19mb290ZXIgZXJyb3Itd3JhcHBlclwiXG4gICAgKnRyYW5zbG9jbz1cImxldCB0OyByZWFkOiBzY29wZVwiXG4gID5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJmb3JtLWluZm8gZm9ybS1pbmZvLS1lcnJvclwiXG4gICAgICBbYXR0ci5pZF09XCJpZCArICctbWVzc2FnZSdcIlxuICAgICAgKm5nSWY9XCJpbnZhbGlkICYmIChlcnJvciB8fCBuZ0NvbnRyb2w/LmludmFsaWQpXCJcbiAgICA+XG4gICAgICA8c3BhbiAqbmdJZj1cImVycm9yOyBlbHNlIGVycm9yc1JlZlwiPnt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgPG5nLXRlbXBsYXRlICNlcnJvcnNSZWY+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZmlyc3RFcnJvciBhcyBlcnJvclwiPlxuICAgICAgICAgIHt7IHQoJ2Vycm9yLmZpZWxkJyArIGVycm9yPy5jb2RlLCBlcnJvcj8ucGFyYW1zKSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvc3Bhbj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaW5wdXRNYXNrICYmIGhhc01heExlbmd0aCAmJiBzaG93Q2hhcmFjdGVyQ291bnRkb3duXCI+XG4gICAgICA8c3BhblxuICAgICAgICAqbmd2Q2hhcmFjdGVyQ291bnRkb3duPVwiXG4gICAgICAgICAgbWF4bGVuZ3RoO1xuICAgICAgICAgIGN1cnJlbnRMZW5ndGg6IChpbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8udmFsdWUgPz8gJycpLmxlbmd0aDtcbiAgICAgICAgICBjaGFyYWN0ZXJzTGVmdCBhcyBjaGFyYWN0ZXJzTGVmdFxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImZvcm0taW5mb1wiXG4gICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIlxuICAgICAgPlxuICAgICAgICB7eyBjaGFyYWN0ZXJzTGVmdCB9fSB7eyB0KCdsYWJlbC5tYXhsZW5ndGgnKSB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { NgvI18nModule } from '@sebgroup/green-angular/src/v-angular/i18n';
|
|
5
|
+
import { NgvInputComponent } from './input.component';
|
|
6
|
+
import { NgvInputMaskModule } from '@sebgroup/green-angular/src/v-angular/input-mask';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class NgvInputModule {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgvInputModule, declarations: [NgvInputComponent], imports: [CommonModule,
|
|
11
|
+
NgvI18nModule,
|
|
12
|
+
NgvInputMaskModule,
|
|
13
|
+
ReactiveFormsModule], exports: [NgvInputComponent] }); }
|
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputModule, imports: [CommonModule,
|
|
15
|
+
NgvI18nModule,
|
|
16
|
+
NgvInputMaskModule,
|
|
17
|
+
ReactiveFormsModule] }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputModule, decorators: [{
|
|
20
|
+
type: NgModule,
|
|
21
|
+
args: [{
|
|
22
|
+
declarations: [NgvInputComponent],
|
|
23
|
+
imports: [
|
|
24
|
+
CommonModule,
|
|
25
|
+
NgvI18nModule,
|
|
26
|
+
NgvInputMaskModule,
|
|
27
|
+
ReactiveFormsModule,
|
|
28
|
+
],
|
|
29
|
+
exports: [NgvInputComponent],
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQvaW5wdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQTs7QUFZckYsTUFBTSxPQUFPLGNBQWM7K0dBQWQsY0FBYztnSEFBZCxjQUFjLGlCQVRWLGlCQUFpQixhQUU5QixZQUFZO1lBQ1osYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixtQkFBbUIsYUFFWCxpQkFBaUI7Z0hBRWhCLGNBQWMsWUFQdkIsWUFBWTtZQUNaLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsbUJBQW1COzs0RkFJVixjQUFjO2tCQVYxQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBOZ3ZJMThuTW9kdWxlIH0gZnJvbSAnQHNlYmdyb3VwL2dyZWVuLWFuZ3VsYXIvc3JjL3YtYW5ndWxhci9pMThuJ1xuaW1wb3J0IHsgTmd2SW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LmNvbXBvbmVudCdcbmltcG9ydCB7IE5ndklucHV0TWFza01vZHVsZSB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQtbWFzaydcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTmd2SW5wdXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE5ndkkxOG5Nb2R1bGUsXG4gICAgTmd2SW5wdXRNYXNrTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtOZ3ZJbnB1dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndklucHV0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export class InputMaskConfig {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.isAsync = false;
|
|
5
|
+
this.inputSelector = 'input';
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
export const INPUT_MASK_CONFIG = new InjectionToken('InputMaskConfig');
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQtbWFzay9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUNFLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsa0JBQWEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQ2pELGlCQUFpQixDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNsYXNzIElucHV0TWFza0NvbmZpZyB7XG4gIGlzQXN5bmMgPSBmYWxzZTtcbiAgaW5wdXRTZWxlY3RvciA9ICdpbnB1dCc7XG59XG5cbmV4cG9ydCBjb25zdCBJTlBVVF9NQVNLX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJbnB1dE1hc2tDb25maWc+KFxuICAnSW5wdXRNYXNrQ29uZmlnJ1xuKTtcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const createMask = (options) => typeof options === 'string' ? { mask: options } : options;
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvaW5wdXQtbWFzay9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQ3hCLE9BQXFDLEVBQ2hCLEVBQUUsQ0FDdkIsT0FBTyxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXRtYXNrT3B0aW9ucyB9IGZyb20gJy4vaW5wdXQtbWFzay50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVNYXNrID0gPFQ+KFxuICBvcHRpb25zOiBzdHJpbmcgfCBJbnB1dG1hc2tPcHRpb25zPFQ+XG4pOiBJbnB1dG1hc2tPcHRpb25zPFQ+ID0+XG4gIHR5cGVvZiBvcHRpb25zID09PSAnc3RyaW5nJyA/IHsgbWFzazogb3B0aW9ucyB9IDogb3B0aW9ucztcbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './input-mask-format.pipe';
|
|
2
|
+
export * from './input-mask.directive';
|
|
3
|
+
export * from './input-mask.module';
|
|
4
|
+
export * from './input-mask.types';
|
|
5
|
+
export * from './constants';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9pbnB1dC1tYXNrL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLHFCQUFxQixDQUFBO0FBQ25DLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyxhQUFhLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2lucHV0LW1hc2stZm9ybWF0LnBpcGUnXG5leHBvcnQgKiBmcm9tICcuL2lucHV0LW1hc2suZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1tYXNrLm1vZHVsZSdcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtbWFzay50eXBlcydcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJ1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import _Inputmask from 'inputmask';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
const InputmaskStatic = _Inputmask.default || _Inputmask;
|
|
5
|
+
export class InputMaskFormatPipe {
|
|
6
|
+
transform(value, options) {
|
|
7
|
+
if (!value)
|
|
8
|
+
return value;
|
|
9
|
+
return InputmaskStatic.format(value, options);
|
|
10
|
+
}
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputMaskFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
12
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: InputMaskFormatPipe, name: "ngvInputMaskFormat" }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputMaskFormatPipe, decorators: [{
|
|
15
|
+
type: Pipe,
|
|
16
|
+
args: [{
|
|
17
|
+
name: 'ngvInputMaskFormat',
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbWFzay1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL2lucHV0LW1hc2svaW5wdXQtbWFzay1mb3JtYXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUdwRCxPQUFPLFVBQVUsTUFBTSxXQUFXLENBQUM7O0FBSW5DLE1BQU0sZUFBZSxHQUFJLFVBQXdELENBQUMsT0FBTyxJQUFJLFVBQVUsQ0FBQztBQUt4RyxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFNBQVMsQ0FBVSxLQUFVLEVBQUUsT0FBNEI7UUFDekQsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN6QixPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hELENBQUM7K0dBSlUsbUJBQW1COzZHQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSC9CLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLG9CQUFvQjtpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB0eXBlIElucHV0bWFzayBmcm9tICdpbnB1dG1hc2snO1xuaW1wb3J0IF9JbnB1dG1hc2sgZnJvbSAnaW5wdXRtYXNrJztcblxuaW1wb3J0IHR5cGUgeyBJbnB1dG1hc2tPcHRpb25zIH0gZnJvbSAnLi9pbnB1dC1tYXNrLnR5cGVzJztcblxuY29uc3QgSW5wdXRtYXNrU3RhdGljID0gKF9JbnB1dG1hc2sgYXMgdW5rbm93biBhcyB7IGRlZmF1bHQ/OiBJbnB1dG1hc2suU3RhdGljIH0pLmRlZmF1bHQgfHwgX0lucHV0bWFzaztcblxuQFBpcGUoe1xuICBuYW1lOiAnbmd2SW5wdXRNYXNrRm9ybWF0Jyxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRNYXNrRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm08VCA9IGFueT4odmFsdWU6IGFueSwgb3B0aW9uczogSW5wdXRtYXNrT3B0aW9uczxUPik6IGFueSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuIHZhbHVlO1xuICAgIHJldHVybiBJbnB1dG1hc2tTdGF0aWMuZm9ybWF0KHZhbHVlLCBvcHRpb25zKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { isPlatformServer } from '@angular/common';
|
|
2
|
+
import { Directive, ElementRef, HostListener, Inject, Input, NgZone, Optional, PLATFORM_ID, Renderer2, Self, } from '@angular/core';
|
|
3
|
+
import { NgControl, } from '@angular/forms';
|
|
4
|
+
import _Inputmask from 'inputmask';
|
|
5
|
+
import { INPUT_MASK_CONFIG, InputMaskConfig } from './config';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
import * as i2 from "./config";
|
|
9
|
+
const InputmaskConstructor = _Inputmask.default ||
|
|
10
|
+
_Inputmask;
|
|
11
|
+
export class NgvInputMaskDirective {
|
|
12
|
+
constructor(ngControl, config, platformId, elementRef, renderer, ngZone) {
|
|
13
|
+
this.ngControl = ngControl;
|
|
14
|
+
this.platformId = platformId;
|
|
15
|
+
this.elementRef = elementRef;
|
|
16
|
+
this.renderer = renderer;
|
|
17
|
+
this.ngZone = ngZone;
|
|
18
|
+
/** Input settings of directive */
|
|
19
|
+
this.ngvInputMask = {};
|
|
20
|
+
this.defaultInputMaskConfig = new InputMaskConfig();
|
|
21
|
+
this.onInput = (_) => {
|
|
22
|
+
// Empty method
|
|
23
|
+
};
|
|
24
|
+
this.onTouched = (_) => {
|
|
25
|
+
// Empty method
|
|
26
|
+
};
|
|
27
|
+
this.validate = (control) => !control.value || !this.inputMaskPlugin || this.inputMaskPlugin.isValid()
|
|
28
|
+
? null
|
|
29
|
+
: { invalidformat: true };
|
|
30
|
+
if (this.ngControl) {
|
|
31
|
+
this.ngControl.valueAccessor = this;
|
|
32
|
+
}
|
|
33
|
+
this.setNativeInputElement(config);
|
|
34
|
+
}
|
|
35
|
+
onKeyUp(event) {
|
|
36
|
+
// Trigger "onInput" when pressing delete or backspace, when input is focused
|
|
37
|
+
if (['Delete', 'Backspace'].includes(event.key)) {
|
|
38
|
+
this.elementRef.nativeElement.dispatchEvent(new Event('input', {
|
|
39
|
+
bubbles: true,
|
|
40
|
+
cancelable: true,
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
ngOnInit() {
|
|
45
|
+
if (this.control) {
|
|
46
|
+
this.control.setValidators(this.control.validator
|
|
47
|
+
? [this.control.validator, this.validate]
|
|
48
|
+
: [this.validate]);
|
|
49
|
+
this.control.updateValueAndValidity();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
ngOnDestroy() {
|
|
53
|
+
this.inputMaskPlugin?.remove();
|
|
54
|
+
this.mutationObserver?.disconnect();
|
|
55
|
+
}
|
|
56
|
+
initInputMask() {
|
|
57
|
+
if (isPlatformServer(this.platformId) ||
|
|
58
|
+
!this.nativeInputElement ||
|
|
59
|
+
!Object.keys(this.ngvInputMask).length) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
this.inputMaskPlugin = this.ngZone.runOutsideAngular(() => new InputmaskConstructor(this.inputMaskOptions).mask(this.nativeInputElement));
|
|
63
|
+
if (this.control) {
|
|
64
|
+
setTimeout(() => {
|
|
65
|
+
this.control.updateValueAndValidity();
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
ngAfterViewInit() {
|
|
70
|
+
this.initInputMask();
|
|
71
|
+
}
|
|
72
|
+
get inputMaskOptions() {
|
|
73
|
+
const { parser, ...options } = this.ngvInputMask;
|
|
74
|
+
return options;
|
|
75
|
+
}
|
|
76
|
+
writeValue(value) {
|
|
77
|
+
if (this.nativeInputElement) {
|
|
78
|
+
this.renderer.setProperty(this.nativeInputElement, 'value', value ?? '');
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
registerOnChange(fn) {
|
|
82
|
+
// Use injected parser from settings to modify value
|
|
83
|
+
// of users desire
|
|
84
|
+
this.onInput = (value) => {
|
|
85
|
+
const parser = this.ngvInputMask?.parser;
|
|
86
|
+
const newValue = parser && value ? parser(value) : value;
|
|
87
|
+
fn(newValue);
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
registerOnTouched(fn) {
|
|
91
|
+
this.onTouched = fn;
|
|
92
|
+
}
|
|
93
|
+
setDisabledState(disabled) {
|
|
94
|
+
if (this.nativeInputElement) {
|
|
95
|
+
this.renderer.setProperty(this.nativeInputElement, 'disabled', disabled);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
get control() {
|
|
99
|
+
return this.ngControl?.control;
|
|
100
|
+
}
|
|
101
|
+
setNativeInputElement(config) {
|
|
102
|
+
if (this.elementRef.nativeElement.tagName === 'INPUT') {
|
|
103
|
+
this.nativeInputElement = this.elementRef.nativeElement;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
this.defaultInputMaskConfig = {
|
|
107
|
+
...this.defaultInputMaskConfig,
|
|
108
|
+
...config,
|
|
109
|
+
};
|
|
110
|
+
if (this.defaultInputMaskConfig.isAsync) {
|
|
111
|
+
// Create an observer instance linked to the callback function
|
|
112
|
+
this.mutationObserver = new MutationObserver((mutationsList) => {
|
|
113
|
+
for (const mutation of mutationsList) {
|
|
114
|
+
if (mutation.type === 'childList') {
|
|
115
|
+
const nativeInputElement = this.elementRef.nativeElement.querySelector(this.defaultInputMaskConfig.inputSelector);
|
|
116
|
+
if (nativeInputElement) {
|
|
117
|
+
this.nativeInputElement = nativeInputElement;
|
|
118
|
+
this.mutationObserver?.disconnect();
|
|
119
|
+
this.initInputMask();
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
// Start observing the target node for configured mutations
|
|
125
|
+
this.mutationObserver.observe(this.elementRef.nativeElement, {
|
|
126
|
+
childList: true,
|
|
127
|
+
subtree: true,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
this.nativeInputElement = this.elementRef.nativeElement.querySelector(this.defaultInputMaskConfig.inputSelector);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputMaskDirective, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: INPUT_MASK_CONFIG }, { token: PLATFORM_ID }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
136
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: NgvInputMaskDirective, selector: "[ngvInputMask]", inputs: { ngvInputMask: "ngvInputMask" }, host: { listeners: { "input": "onInput($event.target.value)", "blur": "onTouched($event.target.value)", "keyup": "onKeyUp($event)" } }, ngImport: i0 }); }
|
|
137
|
+
}
|
|
138
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgvInputMaskDirective, decorators: [{
|
|
139
|
+
type: Directive,
|
|
140
|
+
args: [{
|
|
141
|
+
selector: '[ngvInputMask]',
|
|
142
|
+
}]
|
|
143
|
+
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
144
|
+
type: Optional
|
|
145
|
+
}, {
|
|
146
|
+
type: Self
|
|
147
|
+
}] }, { type: i2.InputMaskConfig, decorators: [{
|
|
148
|
+
type: Inject,
|
|
149
|
+
args: [INPUT_MASK_CONFIG]
|
|
150
|
+
}] }, { type: undefined, decorators: [{
|
|
151
|
+
type: Inject,
|
|
152
|
+
args: [PLATFORM_ID]
|
|
153
|
+
}] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { ngvInputMask: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], onInput: [{
|
|
156
|
+
type: HostListener,
|
|
157
|
+
args: ['input', ['$event.target.value']]
|
|
158
|
+
}], onTouched: [{
|
|
159
|
+
type: HostListener,
|
|
160
|
+
args: ['blur', ['$event.target.value']]
|
|
161
|
+
}], onKeyUp: [{
|
|
162
|
+
type: HostListener,
|
|
163
|
+
args: ['keyup', ['$event']]
|
|
164
|
+
}] } });
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbWFzay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL3YtYW5ndWxhci9pbnB1dC1tYXNrL2lucHV0LW1hc2suZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2xELE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFHTixRQUFRLEVBQ1IsV0FBVyxFQUNYLFNBQVMsRUFDVCxJQUFJLEdBQ0wsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUdMLFNBQVMsR0FFVixNQUFNLGdCQUFnQixDQUFBO0FBR3ZCLE9BQU8sVUFBVSxNQUFNLFdBQVcsQ0FBQTtBQUVsQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBOzs7O0FBRzdELE1BQU0sb0JBQW9CLEdBQ3ZCLFVBQXdELENBQUMsT0FBTztJQUNqRSxVQUFVLENBQUE7QUFLWixNQUFNLE9BQU8scUJBQXFCO0lBWWhDLFlBQzZCLFNBQW9CLEVBQ3BCLE1BQXVCLEVBQ3JCLFVBQWtCLEVBQ3ZDLFVBQThDLEVBQzlDLFFBQW1CLEVBQ25CLE1BQWM7UUFMSyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRWxCLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDdkMsZUFBVSxHQUFWLFVBQVUsQ0FBb0M7UUFDOUMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBZnhCLGtDQUFrQztRQUN6QixpQkFBWSxHQUF3QixFQUFFLENBQUE7UUFJL0MsMkJBQXNCLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtRQW1COUMsWUFBTyxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7WUFDbkIsZUFBZTtRQUNq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QUFNOzJCQUFDLFdBQVc7a0hBWFosWUFBWTtzQkFBcEIsS0FBSztnQkF1Qk4sT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQU05QyxTQUFTO3NCQURSLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMscUJBQXFCLENBQUM7Z0JBTTdDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBQTEFURk9STV9JRCxcbiAgUmVuZGVyZXIyLFxuICBTZWxmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTmdDb250cm9sLFxuICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuXG5pbXBvcnQgdHlwZSBJbnB1dG1hc2sgZnJvbSAnaW5wdXRtYXNrJ1xuaW1wb3J0IF9JbnB1dG1hc2sgZnJvbSAnaW5wdXRtYXNrJ1xuXG5pbXBvcnQgeyBJTlBVVF9NQVNLX0NPTkZJRywgSW5wdXRNYXNrQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnXG5pbXBvcnQgdHlwZSB7IElucHV0bWFza09wdGlvbnMgfSBmcm9tICcuL2lucHV0LW1hc2sudHlwZXMnXG5cbmNvbnN0IElucHV0bWFza0NvbnN0cnVjdG9yID1cbiAgKF9JbnB1dG1hc2sgYXMgdW5rbm93biBhcyB7IGRlZmF1bHQ/OiBJbnB1dG1hc2suU3RhdGljIH0pLmRlZmF1bHQgfHxcbiAgX0lucHV0bWFza1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmd2SW5wdXRNYXNrXScsXG59KVxuZXhwb3J0IGNsYXNzIE5ndklucHV0TWFza0RpcmVjdGl2ZTxUID0gYW55PlxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yXG57XG4gIC8qKiBJbnB1dCBzZXR0aW5ncyBvZiBkaXJlY3RpdmUgKi9cbiAgQElucHV0KCkgbmd2SW5wdXRNYXNrOiBJbnB1dG1hc2tPcHRpb25zPFQ+ID0ge31cblxuICBpbnB1dE1hc2tQbHVnaW46IElucHV0bWFzay5JbnN0YW5jZSB8IHVuZGVmaW5lZFxuICBuYXRpdmVJbnB1dEVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgZGVmYXVsdElucHV0TWFza0NvbmZpZyA9IG5ldyBJbnB1dE1hc2tDb25maWcoKVxuXG4gIHByaXZhdGUgbXV0YXRpb25PYnNlcnZlcjogTXV0YXRpb25PYnNlcnZlciB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgIEBJbmplY3QoSU5QVVRfTUFTS19DT05GSUcpIGNvbmZpZzogSW5wdXRNYXNrQ29uZmlnLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogc3RyaW5nLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50IHwgYW55PixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgKSB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpc1xuICAgIH1cbiAgICB0aGlzLnNldE5hdGl2ZUlucHV0RWxlbWVudChjb25maWcpXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50LnRhcmdldC52YWx1ZSddKVxuICBvbklucHV0ID0gKF86IGFueSkgPT4ge1xuICAgIC8vIEVtcHR5IG1ldGhvZFxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicsIFsnJGV2ZW50LnRhcmdldC52YWx1ZSddKVxuICBvblRvdWNoZWQgPSAoXzogYW55KSA9PiB7XG4gICAgLy8gRW1wdHkgbWV0aG9kXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAvLyBUcmlnZ2VyIFwib25JbnB1dFwiIHdoZW4gcHJlc3NpbmcgZGVsZXRlIG9yIGJhY2tzcGFjZSwgd2hlbiBpbnB1dCBpcyBmb2N1c2VkXG4gICAgaWYgKFsnRGVsZXRlJywgJ0JhY2tzcGFjZSddLmluY2x1ZGVzKGV2ZW50LmtleSkpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoXG4gICAgICAgIG5ldyBFdmVudCgnaW5wdXQnLCB7XG4gICAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgICBjYW5jZWxhYmxlOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsaWRhdG9ycyhcbiAgICAgICAgdGhpcy5jb250cm9sLnZhbGlkYXRvclxuICAgICAgICAgID8gW3RoaXMuY29udHJvbC52YWxpZGF0b3IsIHRoaXMudmFsaWRhdGVdXG4gICAgICAgICAgOiBbdGhpcy52YWxpZGF0ZV0sXG4gICAgICApXG5cbiAgICAgIHRoaXMuY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KClcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0TWFza1BsdWdpbj8ucmVtb3ZlKClcbiAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKVxuICB9XG5cbiAgaW5pdElucHV0TWFzaygpIHtcbiAgICBpZiAoXG4gICAgICBpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkgfHxcbiAgICAgICF0aGlzLm5hdGl2ZUlucHV0RWxlbWVudCB8fFxuICAgICAgIU9iamVjdC5rZXlzKHRoaXMubmd2SW5wdXRNYXNrKS5sZW5ndGhcbiAgICApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuaW5wdXRNYXNrUGx1Z2luID0gdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT5cbiAgICAgIG5ldyBJbnB1dG1hc2tDb25zdHJ1Y3Rvcih0aGlzLmlucHV0TWFza09wdGlvbnMpLm1hc2soXG4gICAgICAgIHRoaXMubmF0aXZlSW5wdXRFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQsXG4gICAgICApLFxuICAgIClcblxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmNvbnRyb2whLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5pbml0SW5wdXRNYXNrKClcbiAgfVxuXG4gIGdldCBpbnB1dE1hc2tPcHRpb25zKCk6IElucHV0bWFzay5PcHRpb25zIHtcbiAgICBjb25zdCB7IHBhcnNlciwgLi4ub3B0aW9ucyB9ID0gdGhpcy5uZ3ZJbnB1dE1hc2tcbiAgICByZXR1cm4gb3B0aW9uc1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubmF0aXZlSW5wdXRFbGVtZW50KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMubmF0aXZlSW5wdXRFbGVtZW50LCAndmFsdWUnLCB2YWx1ZSA/PyAnJylcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogVCB8IG51bGwpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAvLyBVc2UgaW5qZWN0ZWQgcGFyc2VyIGZyb20gc2V0dGluZ3MgdG8gbW9kaWZ5IHZhbHVlXG4gICAgLy8gb2YgdXNlcnMgZGVzaXJlXG4gICAgdGhpcy5vbklucHV0ID0gKHZhbHVlKSA9PiB7XG4gICAgICBjb25zdCBwYXJzZXIgPSB0aGlzLm5ndklucHV0TWFzaz8ucGFyc2VyXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IHBhcnNlciAmJiB2YWx1ZSA/IHBhcnNlcih2YWx1ZSkgOiB2YWx1ZVxuICAgICAgZm4obmV3VmFsdWUpXG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHZhbGlkYXRlID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gfCBudWxsID0+XG4gICAgIWNvbnRyb2wudmFsdWUgfHwgIXRoaXMuaW5wdXRNYXNrUGx1Z2luIHx8IHRoaXMuaW5wdXRNYXNrUGx1Z2luLmlzVmFsaWQoKVxuICAgICAgPyBudWxsXG4gICAgICA6IHsgaW52YWxpZGZvcm1hdDogdHJ1ZSB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh0aGlzLm5hdGl2ZUlucHV0RWxlbWVudCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLm5hdGl2ZUlucHV0RWxlbWVudCwgJ2Rpc2FibGVkJywgZGlzYWJsZWQpXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgY29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2xcbiAgfVxuXG4gIHByaXZhdGUgc2V0TmF0aXZlSW5wdXRFbGVtZW50KGNvbmZpZzogSW5wdXRNYXNrQ29uZmlnKSB7XG4gICAgaWYgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09ICdJTlBVVCcpIHtcbiAgICAgIHRoaXMubmF0aXZlSW5wdXRFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZWZhdWx0SW5wdXRNYXNrQ29uZmlnID0ge1xuICAgICAgICAuLi50aGlzLmRlZmF1bHRJbnB1dE1hc2tDb25maWcsXG4gICAgICAgIC4uLmNvbmZpZyxcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmRlZmF1bHRJbnB1dE1hc2tDb25maWcuaXNBc3luYykge1xuICAgICAgICAvLyBDcmVhdGUgYW4gb2JzZXJ2ZXIgaW5zdGFuY2UgbGlua2VkIHRvIHRoZSBjYWxsYmFjayBmdW5jdGlvblxuICAgICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zTGlzdCkgPT4ge1xuICAgICAgICAgIGZvciAoY29uc3QgbXV0YXRpb24gb2YgbXV0YXRpb25zTGlzdCkge1xuICAgICAgICAgICAgaWYgKG11dGF0aW9uLnR5cGUgPT09ICdjaGlsZExpc3QnKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG5hdGl2ZUlucHV0RWxlbWVudCA9XG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgICAgIHRoaXMuZGVmYXVsdElucHV0TWFza0NvbmZpZy5pbnB1dFNlbGVjdG9yLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgaWYgKG5hdGl2ZUlucHV0RWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMubmF0aXZlSW5wdXRFbGVtZW50ID0gbmF0aXZlSW5wdXRFbGVtZW50XG4gICAgICAgICAgICAgICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyPy5kaXNjb25uZWN0KClcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRJbnB1dE1hc2soKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIC8vIFN0YXJ0IG9ic2VydmluZyB0aGUgdGFyZ2V0IG5vZGUgZm9yIGNvbmZpZ3VyZWQgbXV0YXRpb25zXG4gICAgICAgIHRoaXMubXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm5hdGl2ZUlucHV0RWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICAgdGhpcy5kZWZhdWx0SW5wdXRNYXNrQ29uZmlnLmlucHV0U2VsZWN0b3IsXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|