@taiga-ui/kit 2.36.0 → 2.38.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/abstract/input-slider.d.ts +30 -7
- package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
- package/bundles/taiga-ui-kit-abstract.umd.js +67 -21
- package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-abstract.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-arrow.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badge.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badged-content.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badged-content.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-badged-content.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.js +504 -0
- package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-components-files.umd.min.js +16 -0
- package/bundles/taiga-ui-kit-components-files.umd.min.js.map +1 -0
- package/bundles/taiga-ui-kit-components-input-count.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js +3 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.js +4 -2
- package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.js +43 -45
- package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-files.umd.js +498 -0
- package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-components-input-files.umd.min.js +16 -0
- package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -0
- package/bundles/taiga-ui-kit-components-input-number.umd.js +37 -28
- package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +20 -8
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.js +5 -4
- package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.js +26 -4
- package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +200 -117
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-time.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-line-clamp.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.js +66 -21
- package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components.umd.js +20 -4
- package/bundles/taiga-ui-kit-components.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-enums.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-enums.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +25 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-pipes-field-error.umd.js +10 -2
- package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-pipes-field-error.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.js +8 -0
- package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-files.umd.js +8 -0
- package/bundles/taiga-ui-kit-utils-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-files.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-utils-files.umd.min.js.map +1 -1
- package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
- package/components/arrow/arrow-options.d.ts +4 -2
- package/components/arrow/taiga-ui-kit-components-arrow.metadata.json +1 -1
- package/components/badge/badge.component.d.ts +2 -1
- package/components/badge/taiga-ui-kit-components-badge.metadata.json +1 -1
- package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
- package/components/combo-box/combo-box.component.d.ts +4 -4
- package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
- package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
- package/components/files/file/file.component.d.ts +42 -0
- package/components/files/files.component.d.ts +12 -0
- package/components/files/files.module.d.ts +2 -0
- package/components/files/index.d.ts +2 -0
- package/components/files/package.json +13 -0
- package/components/files/taiga-ui-kit-components-files.d.ts +5 -0
- package/components/files/taiga-ui-kit-components-files.metadata.json +1 -0
- package/components/index.d.ts +2 -0
- package/components/input/input.component.d.ts +2 -2
- package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
- package/components/input-count/input-count.component.d.ts +3 -2
- package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
- package/components/input-date/input-date.component.d.ts +5 -3
- package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
- package/components/input-date-range/input-date-range.component.d.ts +3 -2
- package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
- package/components/input-date-time/input-date-time.component.d.ts +7 -5
- package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
- package/components/input-file/file/file.component.d.ts +1 -1
- package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
- package/components/input-files/index.d.ts +2 -0
- package/components/input-files/input-files.component.d.ts +42 -0
- package/components/input-files/input-files.module.d.ts +2 -0
- package/components/input-files/package.json +13 -0
- package/components/input-files/taiga-ui-kit-components-input-files.d.ts +4 -0
- package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -0
- package/components/input-number/input-number.component.d.ts +7 -4
- package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
- package/components/input-password/input-password.component.d.ts +4 -3
- package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
- package/components/input-phone/input-phone.component.d.ts +5 -6
- package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
- package/components/input-phone-international/input-phone-international.component.d.ts +4 -2
- package/components/input-phone-international/taiga-ui-kit-components-input-phone-international.metadata.json +1 -1
- package/components/input-range/input-range.component.d.ts +4 -1
- package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
- package/components/input-slider/input-slider.component.d.ts +56 -23
- package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
- package/components/input-tag/input-tag.component.d.ts +2 -1
- package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
- package/components/input-time/input-time.component.d.ts +2 -2
- package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
- package/components/multi-select/multi-select.component.d.ts +5 -5
- package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
- package/components/multi-select-option/taiga-ui-kit-components-multi-select-option.metadata.json +1 -1
- package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
- package/components/progress/utils/calculate-color-segments.d.ts +0 -4
- package/components/radio/radio.component.d.ts +1 -1
- package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
- package/components/select/select.component.d.ts +4 -4
- package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
- package/components/slider/slider-key-steps.directive.d.ts +12 -2
- package/components/slider/slider-options.d.ts +1 -1
- package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
- package/components/taiga-ui-kit-components.metadata.json +1 -1
- package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
- package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
- package/enums/file-state.d.ts +1 -0
- package/enums/taiga-ui-kit-enums.metadata.json +1 -1
- package/esm2015/abstract/input-slider.js +49 -8
- package/esm2015/components/accordion/accordion-item/accordion-item.component.js +1 -1
- package/esm2015/components/accordion/accordion.component.js +2 -2
- package/esm2015/components/arrow/arrow-options.js +1 -1
- package/esm2015/components/badge/badge.component.js +1 -1
- package/esm2015/components/badged-content/badged-content.component.js +3 -3
- package/esm2015/components/checkbox/checkbox.component.js +3 -3
- package/esm2015/components/combo-box/combo-box.component.js +1 -1
- package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +3 -3
- package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +3 -3
- package/esm2015/components/files/file/file.component.js +164 -0
- package/esm2015/components/files/files.component.js +45 -0
- package/esm2015/components/files/files.module.js +29 -0
- package/esm2015/components/files/index.js +3 -0
- package/esm2015/components/files/taiga-ui-kit-components-files.js +6 -0
- package/esm2015/components/index.js +3 -1
- package/esm2015/components/input/input.component.js +1 -1
- package/esm2015/components/input-count/input-count.component.js +3 -3
- package/esm2015/components/input-date/input-date.component.js +5 -3
- package/esm2015/components/input-date-range/input-date-range.component.js +4 -2
- package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
- package/esm2015/components/input-file/file/file.component.js +19 -19
- package/esm2015/components/input-file/input-file.component.js +7 -7
- package/esm2015/components/input-file/input-file.module.js +3 -3
- package/esm2015/components/input-files/index.js +3 -0
- package/esm2015/components/input-files/input-files.component.js +212 -0
- package/esm2015/components/input-files/input-files.module.js +34 -0
- package/esm2015/components/input-files/taiga-ui-kit-components-input-files.js +5 -0
- package/esm2015/components/input-number/input-number.component.js +25 -19
- package/esm2015/components/input-number/input-number.module.js +5 -1
- package/esm2015/components/input-password/input-password.component.js +3 -3
- package/esm2015/components/input-phone/input-phone.component.js +6 -5
- package/esm2015/components/input-phone-international/input-phone-international.component.js +20 -6
- package/esm2015/components/input-range/input-range.component.js +25 -7
- package/esm2015/components/input-slider/input-slider.component.js +196 -105
- package/esm2015/components/input-slider/input-slider.module.js +13 -6
- package/esm2015/components/input-tag/input-tag.component.js +2 -2
- package/esm2015/components/input-time/input-time.component.js +1 -1
- package/esm2015/components/line-clamp/line-clamp.directive.js +4 -4
- package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +3 -3
- package/esm2015/components/multi-select/multi-select.component.js +2 -2
- package/esm2015/components/multi-select-option/multi-select-option.component.js +3 -3
- package/esm2015/components/pagination/pagination.component.js +2 -2
- package/esm2015/components/progress/utils/calculate-color-segments.js +3 -2
- package/esm2015/components/radio/radio.component.js +2 -2
- package/esm2015/components/select/select.component.js +3 -3
- package/esm2015/components/slider/slider-key-steps.directive.js +33 -8
- package/esm2015/components/slider/slider-options.js +7 -5
- package/esm2015/components/slider/slider.component.js +1 -1
- package/esm2015/components/slider/slider.module.js +14 -4
- package/esm2015/components/text-area/text-area.component.js +3 -3
- package/esm2015/components/toggle/toggle.component.js +3 -3
- package/esm2015/enums/file-state.js +1 -1
- package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +26 -2
- package/esm2015/pipes/field-error/field-error-content-pipe.js +11 -3
- package/esm2015/tokens/i18n.js +7 -1
- package/esm2015/utils/files/get-accept-array.js +7 -0
- package/esm2015/utils/files/index.js +2 -1
- package/esm5/abstract/input-slider.js +67 -20
- package/esm5/components/accordion/accordion-item/accordion-item.component.js +1 -1
- package/esm5/components/accordion/accordion.component.js +2 -2
- package/esm5/components/arrow/arrow-options.js +1 -1
- package/esm5/components/badge/badge.component.js +1 -1
- package/esm5/components/badged-content/badged-content.component.js +3 -3
- package/esm5/components/checkbox/checkbox.component.js +3 -3
- package/esm5/components/combo-box/combo-box.component.js +1 -1
- package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +3 -3
- package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +3 -3
- package/esm5/components/files/file/file.component.js +213 -0
- package/esm5/components/files/files.component.js +50 -0
- package/esm5/components/files/files.module.js +32 -0
- package/esm5/components/files/index.js +3 -0
- package/esm5/components/files/taiga-ui-kit-components-files.js +6 -0
- package/esm5/components/index.js +3 -1
- package/esm5/components/input/input.component.js +1 -1
- package/esm5/components/input-count/input-count.component.js +3 -3
- package/esm5/components/input-date/input-date.component.js +5 -3
- package/esm5/components/input-date-range/input-date-range.component.js +4 -2
- package/esm5/components/input-date-time/input-date-time.component.js +2 -2
- package/esm5/components/input-file/file/file.component.js +37 -37
- package/esm5/components/input-file/input-file.component.js +7 -9
- package/esm5/components/input-file/input-file.module.js +3 -3
- package/esm5/components/input-files/index.js +3 -0
- package/esm5/components/input-files/input-files.component.js +247 -0
- package/esm5/components/input-files/input-files.module.js +37 -0
- package/esm5/components/input-files/taiga-ui-kit-components-input-files.js +5 -0
- package/esm5/components/input-number/input-number.component.js +35 -27
- package/esm5/components/input-number/input-number.module.js +5 -1
- package/esm5/components/input-password/input-password.component.js +3 -3
- package/esm5/components/input-phone/input-phone.component.js +6 -5
- package/esm5/components/input-phone-international/input-phone-international.component.js +21 -9
- package/esm5/components/input-range/input-range.component.js +29 -7
- package/esm5/components/input-slider/input-slider.component.js +198 -115
- package/esm5/components/input-slider/input-slider.module.js +13 -6
- package/esm5/components/input-tag/input-tag.component.js +2 -2
- package/esm5/components/input-time/input-time.component.js +1 -1
- package/esm5/components/line-clamp/line-clamp.directive.js +4 -4
- package/esm5/components/multi-select/multi-select-group/multi-select-group.component.js +3 -3
- package/esm5/components/multi-select/multi-select.component.js +2 -2
- package/esm5/components/multi-select-option/multi-select-option.component.js +3 -3
- package/esm5/components/pagination/pagination.component.js +2 -2
- package/esm5/components/progress/utils/calculate-color-segments.js +3 -2
- package/esm5/components/radio/radio.component.js +2 -2
- package/esm5/components/select/select.component.js +3 -3
- package/esm5/components/slider/slider-key-steps.directive.js +48 -13
- package/esm5/components/slider/slider-options.js +7 -5
- package/esm5/components/slider/slider.component.js +1 -1
- package/esm5/components/slider/slider.module.js +14 -4
- package/esm5/components/text-area/text-area.component.js +3 -3
- package/esm5/components/toggle/toggle.component.js +3 -3
- package/esm5/enums/file-state.js +1 -1
- package/esm5/internal/primitive-calendar-range/primitive-calendar-range.component.js +26 -2
- package/esm5/pipes/field-error/field-error-content-pipe.js +11 -3
- package/esm5/tokens/i18n.js +7 -1
- package/esm5/utils/files/get-accept-array.js +7 -0
- package/esm5/utils/files/index.js +2 -1
- package/fesm2015/taiga-ui-kit-abstract.js +48 -7
- package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-accordion.js +2 -2
- package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-badged-content.js +2 -2
- package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox.js +2 -2
- package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +4 -4
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-files.js +232 -0
- package/fesm2015/taiga-ui-kit-components-files.js.map +1 -0
- package/fesm2015/taiga-ui-kit-components-input-count.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js +3 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js +4 -2
- package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-file.js +25 -25
- package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-files.js +246 -0
- package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -0
- package/fesm2015/taiga-ui-kit-components-input-number.js +27 -18
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-password.js +3 -3
- package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js +19 -5
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js +5 -4
- package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +23 -5
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +203 -108
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-line-clamp.js +3 -3
- package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select-option.js +2 -2
- package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js +2 -2
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +2 -2
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio.js +1 -1
- package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-slider.js +51 -16
- package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-toggle.js +2 -2
- package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components.js +2 -0
- package/fesm2015/taiga-ui-kit-components.js.map +1 -1
- package/fesm2015/taiga-ui-kit-enums.js.map +1 -1
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +25 -1
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-pipes-field-error.js +10 -2
- package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
- package/fesm2015/taiga-ui-kit-tokens.js +7 -1
- package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-files.js +8 -1
- package/fesm2015/taiga-ui-kit-utils-files.js.map +1 -1
- package/fesm5/taiga-ui-kit-abstract.js +66 -19
- package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-accordion.js +2 -2
- package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-arrow.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-badge.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-badged-content.js +2 -2
- package/fesm5/taiga-ui-kit-components-badged-content.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-checkbox.js +2 -2
- package/fesm5/taiga-ui-kit-components-checkbox.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +4 -4
- package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-files.js +289 -0
- package/fesm5/taiga-ui-kit-components-files.js.map +1 -0
- package/fesm5/taiga-ui-kit-components-input-count.js +2 -2
- package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-range.js +3 -1
- package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-time.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date.js +4 -2
- package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-file.js +43 -45
- package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-files.js +284 -0
- package/fesm5/taiga-ui-kit-components-input-files.js.map +1 -0
- package/fesm5/taiga-ui-kit-components-input-number.js +37 -26
- package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-password.js +3 -3
- package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone-international.js +20 -8
- package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone.js +5 -4
- package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-range.js +27 -5
- package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-slider.js +206 -119
- package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-tag.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-line-clamp.js +3 -3
- package/fesm5/taiga-ui-kit-components-line-clamp.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-multi-select-option.js +2 -2
- package/fesm5/taiga-ui-kit-components-multi-select-option.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-multi-select.js +2 -2
- package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
- package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-progress.js +2 -2
- package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-radio.js +1 -1
- package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-select.js +1 -1
- package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-slider.js +66 -21
- package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
- package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-toggle.js +2 -2
- package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm5/taiga-ui-kit-components.js +2 -0
- package/fesm5/taiga-ui-kit-components.js.map +1 -1
- package/fesm5/taiga-ui-kit-enums.js.map +1 -1
- package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js +25 -1
- package/fesm5/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-pipes-field-error.js +10 -2
- package/fesm5/taiga-ui-kit-pipes-field-error.js.map +1 -1
- package/fesm5/taiga-ui-kit-tokens.js +7 -1
- package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm5/taiga-ui-kit-utils-files.js +8 -1
- package/fesm5/taiga-ui-kit-utils-files.js.map +1 -1
- package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +3 -0
- package/internal/primitive-calendar-range/taiga-ui-kit-internal-primitive-calendar-range.metadata.json +1 -1
- package/package.json +4 -4
- package/pipes/field-error/field-error-content-pipe.d.ts +1 -0
- package/pipes/field-error/taiga-ui-kit-pipes-field-error.metadata.json +1 -1
- package/tokens/i18n.d.ts +2 -0
- package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
- package/utils/files/get-accept-array.d.ts +1 -0
- package/utils/files/index.d.ts +1 -0
- package/utils/files/taiga-ui-kit-utils-files.metadata.json +1 -1
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { __decorate, __extends, __param, __read, __spread } from "tslib";
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Inject, Input, Optional, Output, Self, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
3
|
+
import { NgControl } from '@angular/forms';
|
|
4
|
+
import { AbstractTuiNullableControl, EMPTY_ARRAY, isNativeFocused, TUI_FOCUSABLE_ITEM_ACCESSOR, TUI_IS_MOBILE, tuiDefaultProp, tuiPure, } from '@taiga-ui/cdk';
|
|
5
|
+
import { MODE_PROVIDER } from '@taiga-ui/core';
|
|
6
|
+
import { TUI_DIGITAL_INFORMATION_UNITS, TUI_INPUT_FILE_TEXTS } from '@taiga-ui/kit/tokens';
|
|
7
|
+
import { formatSize, getAcceptArray } from '@taiga-ui/kit/utils/files';
|
|
8
|
+
import { Observable, of } from 'rxjs';
|
|
9
|
+
import { map } from 'rxjs/operators';
|
|
10
|
+
var DEFAULT_MAX_SIZE = 30 * 1000 * 1000; // 30 MB
|
|
11
|
+
// @dynamic
|
|
12
|
+
var TuiInputFilesComponent = /** @class */ (function (_super) {
|
|
13
|
+
__extends(TuiInputFilesComponent, _super);
|
|
14
|
+
function TuiInputFilesComponent(control, changeDetectorRef, isMobile, inputFileTexts$, units$) {
|
|
15
|
+
var _this = _super.call(this, control, changeDetectorRef) || this;
|
|
16
|
+
_this.isMobile = isMobile;
|
|
17
|
+
_this.inputFileTexts$ = inputFileTexts$;
|
|
18
|
+
_this.units$ = units$;
|
|
19
|
+
_this.dataTransfer = null;
|
|
20
|
+
_this.link = '';
|
|
21
|
+
_this.label = '';
|
|
22
|
+
_this.accept = '';
|
|
23
|
+
_this.multiple = false;
|
|
24
|
+
_this.size = 'm';
|
|
25
|
+
_this.maxFileSize = DEFAULT_MAX_SIZE;
|
|
26
|
+
_this.reject = new EventEmitter();
|
|
27
|
+
return _this;
|
|
28
|
+
}
|
|
29
|
+
TuiInputFilesComponent_1 = TuiInputFilesComponent;
|
|
30
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "nativeFocusableElement", {
|
|
31
|
+
get: function () {
|
|
32
|
+
var _a;
|
|
33
|
+
return ((_a = this.input) === null || _a === void 0 ? void 0 : _a.nativeElement) || null;
|
|
34
|
+
},
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "focused", {
|
|
39
|
+
get: function () {
|
|
40
|
+
return isNativeFocused(this.nativeFocusableElement);
|
|
41
|
+
},
|
|
42
|
+
enumerable: true,
|
|
43
|
+
configurable: true
|
|
44
|
+
});
|
|
45
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "computedPseudoHovered", {
|
|
46
|
+
get: function () {
|
|
47
|
+
var _a;
|
|
48
|
+
return (_a = this.pseudoHovered) !== null && _a !== void 0 ? _a : (this.fileDragged || null);
|
|
49
|
+
},
|
|
50
|
+
enumerable: true,
|
|
51
|
+
configurable: true
|
|
52
|
+
});
|
|
53
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "computedLink$", {
|
|
54
|
+
get: function () {
|
|
55
|
+
return this.computeLink$(this.fileDragged, this.multiple, this.link);
|
|
56
|
+
},
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "computedLabel$", {
|
|
61
|
+
get: function () {
|
|
62
|
+
return this.computeLabel$(this.isMobile, this.fileDragged, this.multiple, this.label);
|
|
63
|
+
},
|
|
64
|
+
enumerable: true,
|
|
65
|
+
configurable: true
|
|
66
|
+
});
|
|
67
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "fileDragged", {
|
|
68
|
+
get: function () {
|
|
69
|
+
var _a;
|
|
70
|
+
return !!((_a = this.dataTransfer) === null || _a === void 0 ? void 0 : _a.types.includes('Files'));
|
|
71
|
+
},
|
|
72
|
+
enumerable: true,
|
|
73
|
+
configurable: true
|
|
74
|
+
});
|
|
75
|
+
Object.defineProperty(TuiInputFilesComponent.prototype, "arrayValue", {
|
|
76
|
+
get: function () {
|
|
77
|
+
return this.getValueArray(this.value);
|
|
78
|
+
},
|
|
79
|
+
enumerable: true,
|
|
80
|
+
configurable: true
|
|
81
|
+
});
|
|
82
|
+
TuiInputFilesComponent.prototype.onHovered = function (hovered) {
|
|
83
|
+
this.updateHovered(hovered);
|
|
84
|
+
};
|
|
85
|
+
TuiInputFilesComponent.prototype.onFocused = function (focused) {
|
|
86
|
+
this.updateFocused(focused);
|
|
87
|
+
};
|
|
88
|
+
TuiInputFilesComponent.prototype.onPressed = function (pressed) {
|
|
89
|
+
this.updatePressed(pressed);
|
|
90
|
+
};
|
|
91
|
+
TuiInputFilesComponent.prototype.onFilesSelected = function (input, texts, units) {
|
|
92
|
+
this.processSelectedFiles(input.files, texts, units);
|
|
93
|
+
input.value = '';
|
|
94
|
+
};
|
|
95
|
+
TuiInputFilesComponent.prototype.onDropped = function (event, texts, units) {
|
|
96
|
+
this.processSelectedFiles(event.files, texts, units);
|
|
97
|
+
};
|
|
98
|
+
TuiInputFilesComponent.prototype.onDragOver = function (dataTransfer) {
|
|
99
|
+
this.dataTransfer = dataTransfer;
|
|
100
|
+
};
|
|
101
|
+
TuiInputFilesComponent.prototype.removeFile = function (removedFile) {
|
|
102
|
+
this.updateValue(this.multiple ? this.arrayValue.filter(function (file) { return file !== removedFile; }) : null);
|
|
103
|
+
};
|
|
104
|
+
TuiInputFilesComponent.prototype.computeLink$ = function (fileDragged, multiple, link) {
|
|
105
|
+
return fileDragged
|
|
106
|
+
? of('')
|
|
107
|
+
: this.inputFileTexts$.pipe(map(function (texts) {
|
|
108
|
+
return multiple && link === ''
|
|
109
|
+
? texts.defaultLinkMultiple
|
|
110
|
+
: link || texts.defaultLinkSingle;
|
|
111
|
+
}));
|
|
112
|
+
};
|
|
113
|
+
TuiInputFilesComponent.prototype.computeLabel$ = function (isMobile, fileDragged, multiple, label) {
|
|
114
|
+
if (isMobile) {
|
|
115
|
+
return of('');
|
|
116
|
+
}
|
|
117
|
+
if (fileDragged) {
|
|
118
|
+
return this.inputFileTexts$.pipe(map(function (texts) { return (multiple ? texts.dropMultiple : texts.drop); }));
|
|
119
|
+
}
|
|
120
|
+
return this.inputFileTexts$.pipe(map(function (texts) {
|
|
121
|
+
return multiple && label === ''
|
|
122
|
+
? texts.defaultLabelMultiple
|
|
123
|
+
: label || texts.defaultLabelSingle;
|
|
124
|
+
}));
|
|
125
|
+
};
|
|
126
|
+
TuiInputFilesComponent.prototype.getValueArray = function (value) {
|
|
127
|
+
if (!value) {
|
|
128
|
+
return EMPTY_ARRAY;
|
|
129
|
+
}
|
|
130
|
+
return Array.isArray(value) ? value : [value];
|
|
131
|
+
};
|
|
132
|
+
TuiInputFilesComponent.prototype.processSelectedFiles = function (files, texts, units) {
|
|
133
|
+
var _this = this;
|
|
134
|
+
// IE11 after selecting a file through the open dialog generates a second event passing an empty FileList.
|
|
135
|
+
if (!(files === null || files === void 0 ? void 0 : files.length)) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
var newFiles = this.multiple ? Array.from(files) : [files[0]];
|
|
139
|
+
var tooBigFiles = newFiles.filter(function (file) { return file.size > _this.maxFileSize; });
|
|
140
|
+
var wrongFormatFiles = newFiles.filter(function (file) { return !_this.isFormatAcceptable(file) && !tooBigFiles.includes(file); });
|
|
141
|
+
var acceptedFiles = newFiles.filter(function (file) { return !tooBigFiles.includes(file) && !wrongFormatFiles.includes(file); });
|
|
142
|
+
if (tooBigFiles.length || wrongFormatFiles.length) {
|
|
143
|
+
this.rejectFiles(__spread(tooBigFiles.map(function (file) { return ({
|
|
144
|
+
name: file.name,
|
|
145
|
+
type: file.type,
|
|
146
|
+
size: file.size,
|
|
147
|
+
content: texts.maxSizeRejectionReason +
|
|
148
|
+
formatSize(units, _this.maxFileSize),
|
|
149
|
+
}); }), wrongFormatFiles.map(function (file) { return ({
|
|
150
|
+
name: file.name,
|
|
151
|
+
type: file.type,
|
|
152
|
+
size: file.size,
|
|
153
|
+
content: texts.formatRejectionReason,
|
|
154
|
+
}); })));
|
|
155
|
+
}
|
|
156
|
+
this.updateValue(this.multiple
|
|
157
|
+
? __spread(this.arrayValue, acceptedFiles) : acceptedFiles[0] || null);
|
|
158
|
+
};
|
|
159
|
+
TuiInputFilesComponent.prototype.isFormatAcceptable = function (file) {
|
|
160
|
+
if (!this.accept) {
|
|
161
|
+
return true;
|
|
162
|
+
}
|
|
163
|
+
var extension = "." + (file.name.split('.').pop() || '').toLowerCase();
|
|
164
|
+
return getAcceptArray(this.accept).some(function (format) {
|
|
165
|
+
return format === extension ||
|
|
166
|
+
format === file.type ||
|
|
167
|
+
(format.split('/')[1] === '*' &&
|
|
168
|
+
file.type.split('/')[0] === format.split('/')[0]);
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
TuiInputFilesComponent.prototype.rejectFiles = function (rejectedFiles) {
|
|
172
|
+
this.reject.emit(this.multiple ? rejectedFiles : rejectedFiles[0]);
|
|
173
|
+
};
|
|
174
|
+
var TuiInputFilesComponent_1;
|
|
175
|
+
TuiInputFilesComponent.ctorParameters = function () { return [
|
|
176
|
+
{ type: NgControl, decorators: [{ type: Optional }, { type: Self }, { type: Inject, args: [NgControl,] }] },
|
|
177
|
+
{ type: ChangeDetectorRef, decorators: [{ type: Inject, args: [ChangeDetectorRef,] }] },
|
|
178
|
+
{ type: Boolean, decorators: [{ type: Inject, args: [TUI_IS_MOBILE,] }] },
|
|
179
|
+
{ type: Observable, decorators: [{ type: Inject, args: [TUI_INPUT_FILE_TEXTS,] }] },
|
|
180
|
+
{ type: Observable, decorators: [{ type: Inject, args: [TUI_DIGITAL_INFORMATION_UNITS,] }] }
|
|
181
|
+
]; };
|
|
182
|
+
__decorate([
|
|
183
|
+
ViewChild('input')
|
|
184
|
+
], TuiInputFilesComponent.prototype, "input", void 0);
|
|
185
|
+
__decorate([
|
|
186
|
+
Input(),
|
|
187
|
+
tuiDefaultProp()
|
|
188
|
+
], TuiInputFilesComponent.prototype, "link", void 0);
|
|
189
|
+
__decorate([
|
|
190
|
+
Input(),
|
|
191
|
+
tuiDefaultProp()
|
|
192
|
+
], TuiInputFilesComponent.prototype, "label", void 0);
|
|
193
|
+
__decorate([
|
|
194
|
+
Input(),
|
|
195
|
+
tuiDefaultProp()
|
|
196
|
+
], TuiInputFilesComponent.prototype, "accept", void 0);
|
|
197
|
+
__decorate([
|
|
198
|
+
Input(),
|
|
199
|
+
tuiDefaultProp()
|
|
200
|
+
], TuiInputFilesComponent.prototype, "multiple", void 0);
|
|
201
|
+
__decorate([
|
|
202
|
+
Input(),
|
|
203
|
+
tuiDefaultProp()
|
|
204
|
+
], TuiInputFilesComponent.prototype, "size", void 0);
|
|
205
|
+
__decorate([
|
|
206
|
+
Input(),
|
|
207
|
+
tuiDefaultProp()
|
|
208
|
+
], TuiInputFilesComponent.prototype, "maxFileSize", void 0);
|
|
209
|
+
__decorate([
|
|
210
|
+
Output()
|
|
211
|
+
], TuiInputFilesComponent.prototype, "reject", void 0);
|
|
212
|
+
__decorate([
|
|
213
|
+
tuiPure
|
|
214
|
+
], TuiInputFilesComponent.prototype, "computeLink$", null);
|
|
215
|
+
__decorate([
|
|
216
|
+
tuiPure
|
|
217
|
+
], TuiInputFilesComponent.prototype, "computeLabel$", null);
|
|
218
|
+
__decorate([
|
|
219
|
+
tuiPure
|
|
220
|
+
], TuiInputFilesComponent.prototype, "getValueArray", null);
|
|
221
|
+
TuiInputFilesComponent = TuiInputFilesComponent_1 = __decorate([
|
|
222
|
+
Component({
|
|
223
|
+
selector: 'tui-input-files',
|
|
224
|
+
template: "<tui-wrapper\n appearance=\"input-file\"\n class=\"t-wrapper\"\n [class._mobile]=\"isMobile\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered || fileDragged\"\n [pressed]=\"computedPressed\"\n [disabled]=\"computedDisabled\"\n>\n <label\n *ngIf=\"units$ | async as units\"\n automation-id=\"tui-input-file__label\"\n >\n <a tuiLink>\n <span\n polymorpheus-outlet\n class=\"t-inline\"\n [content]=\"computedLink$ | async\"\n ></span>\n </a>\n <ng-container *ngIf=\"computedLabel$ | async as computedLabel\">\n <span> </span>\n <span\n polymorpheus-outlet\n class=\"t-inline\"\n [content]=\"computedLabel\"\n ></span>\n </ng-container>\n <ng-container *ngIf=\"!readOnly && !computedDisabled\">\n <input\n *ngIf=\"inputFileTexts$ | async as texts\"\n #input\n type=\"file\"\n class=\"t-native\"\n [id]=\"id\"\n [accept]=\"accept\"\n [multiple]=\"multiple\"\n [tuiFocusable]=\"focusable\"\n (change)=\"onFilesSelected(input, texts, units)\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (tuiPressedChange)=\"onPressed($event)\"\n (tuiDroppableDropped)=\"onDropped($event, texts, units)\"\n (tuiDroppableDragOverChange)=\"onDragOver($event)\"\n (mousedown.prevent.silent)=\"0\"\n />\n </ng-container>\n </label>\n</tui-wrapper>\n",
|
|
225
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
226
|
+
encapsulation: ViewEncapsulation.None,
|
|
227
|
+
providers: [
|
|
228
|
+
MODE_PROVIDER,
|
|
229
|
+
{
|
|
230
|
+
provide: TUI_FOCUSABLE_ITEM_ACCESSOR,
|
|
231
|
+
useExisting: forwardRef(function () { return TuiInputFilesComponent_1; }),
|
|
232
|
+
},
|
|
233
|
+
],
|
|
234
|
+
styles: ["tui-input-files{display:block}tui-wrapper[data-appearance=input-file]{display:flex;background:0 0;font:var(--tui-font-text-m);word-wrap:break-word;color:var(--tui-text-02);flex:1;justify-content:center;align-items:center;min-height:var(--tui-height-l);border-radius:var(--tui-radius-m);padding:1rem .5rem;box-sizing:border-box}tui-wrapper[data-appearance=input-file]:after{border:1px dashed;color:var(--tui-link)}tui-wrapper[data-appearance=input-file]._mobile:after{border:1px solid}tui-wrapper[data-appearance=input-file][data-state=hovered]{background:var(--tui-secondary)}tui-wrapper[data-appearance=input-file][data-state=hovered]:after{color:var(--tui-link-hover)}tui-wrapper[data-appearance=input-file][data-state=pressed]{background:var(--tui-secondary-hover)}tui-wrapper[data-appearance=input-file][data-state=disabled]{opacity:var(--tui-disabled-opacity);pointer-events:none}tui-wrapper[data-appearance=input-file][data-state=disabled]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file]._focused:after{border-style:solid;border-width:2px;color:var(--tui-focus)}tui-wrapper[data-appearance=input-file][data-mode=onDark],tui-wrapper[data-appearance=input-file][data-mode=onDark]._focused:after,tui-wrapper[data-appearance=input-file][data-mode=onDark]:after{color:var(--tui-text-01-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]{background:var(--tui-clear-inverse-hover)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]:after{color:var(--tui-text-03-night)}tui-wrapper[data-appearance=input-file][data-mode=onDark][data-state=pressed]{background:var(--tui-clear-inverse-active)}tui-wrapper[data-appearance=input-file][data-mode=onLight],tui-wrapper[data-appearance=input-file][data-mode=onLight]:after{color:var(--tui-text-01)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]{background:var(--tui-clear-hover)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=hovered]:after,tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]:after{color:var(--tui-text-03)}tui-wrapper[data-appearance=input-file][data-mode=onLight][data-state=pressed]{background:var(--tui-clear-active)}.t-native{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.t-native::-webkit-file-upload-button{display:none}.t-inline{display:inline}"]
|
|
235
|
+
}),
|
|
236
|
+
__param(0, Optional()),
|
|
237
|
+
__param(0, Self()),
|
|
238
|
+
__param(0, Inject(NgControl)),
|
|
239
|
+
__param(1, Inject(ChangeDetectorRef)),
|
|
240
|
+
__param(2, Inject(TUI_IS_MOBILE)),
|
|
241
|
+
__param(3, Inject(TUI_INPUT_FILE_TEXTS)),
|
|
242
|
+
__param(4, Inject(TUI_DIGITAL_INFORMATION_UNITS))
|
|
243
|
+
], TuiInputFilesComponent);
|
|
244
|
+
return TuiInputFilesComponent;
|
|
245
|
+
}(AbstractTuiNullableControl));
|
|
246
|
+
export { TuiInputFilesComponent };
|
|
247
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LWZpbGVzLyIsInNvdXJjZXMiOlsiaW5wdXQtZmlsZXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsMEJBQTBCLEVBQzFCLFdBQVcsRUFDWCxlQUFlLEVBQ2YsMkJBQTJCLEVBQzNCLGFBQWEsRUFDYixjQUFjLEVBR2QsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQVcsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQUMsNkJBQTZCLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RixPQUFPLEVBQUMsVUFBVSxFQUFFLGNBQWMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXJFLE9BQU8sRUFBQyxVQUFVLEVBQUUsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuQyxJQUFNLGdCQUFnQixHQUFHLEVBQUUsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUTtBQUVuRCxXQUFXO0FBZVg7SUFDWSwwQ0FBb0U7SUFtQzVFLGdDQUlJLE9BQXlCLEVBRXpCLGlCQUFvQyxFQUUzQixRQUFpQixFQUVqQixlQVlSLEVBRVEsTUFBNEM7UUF4QnpELFlB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LDBCQUEwQixHQThQckM7U0EvUFksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0VHVpTnVsbGFibGVDb250cm9sLFxuICAgIEVNUFRZX0FSUkFZLFxuICAgIGlzTmF0aXZlRm9jdXNlZCxcbiAgICBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgVFVJX0lTX01PQklMRSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbiAgICB0dWlQdXJlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7TU9ERV9QUk9WSURFUiwgVHVpU2l6ZUx9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VHVpRmlsZUxpa2V9IGZyb20gJ0B0YWlnYS11aS9raXQvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1RVSV9ESUdJVEFMX0lORk9STUFUSU9OX1VOSVRTLCBUVUlfSU5QVVRfRklMRV9URVhUU30gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHtmb3JtYXRTaXplLCBnZXRBY2NlcHRBcnJheX0gZnJvbSAnQHRhaWdhLXVpL2tpdC91dGlscy9maWxlcyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmNvbnN0IERFRkFVTFRfTUFYX1NJWkUgPSAzMCAqIDEwMDAgKiAxMDAwOyAvLyAzMCBNQlxuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtZmlsZXMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1maWxlcy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1maWxlcy5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTU9ERV9QUk9WSURFUixcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSW5wdXRGaWxlc0NvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRGaWxlc0NvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2w8VHVpRmlsZUxpa2UgfCBSZWFkb25seUFycmF5PFR1aUZpbGVMaWtlPj5cbiAgICBpbXBsZW1lbnRzIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvclxue1xuICAgIEBWaWV3Q2hpbGQoJ2lucHV0JylcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIHByaXZhdGUgZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBsaW5rOiBQb2x5bW9ycGhldXNDb250ZW50ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbGFiZWw6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBhY2NlcHQgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVMID0gJ20nO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heEZpbGVTaXplID0gREVGQVVMVF9NQVhfU0laRTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHJlamVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8UmVhZG9ubHlBcnJheTxUdWlGaWxlTGlrZT4gfCBUdWlGaWxlTGlrZT4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKVxuICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX0lTX01PQklMRSlcbiAgICAgICAgcmVhZG9ubHkgaXNNb2JpbGU6IGJvb2xlYW4sXG4gICAgICAgIEBJbmplY3QoVFVJX0lOUFVUX0ZJTEVfVEVYVFMpXG4gICAgICAgIHJlYWRvbmx5IGlucHV0RmlsZVRleHRzJDogT2JzZXJ2YWJsZTxcbiAgICAgICAgICAgIFJlY29yZDxcbiAgICAgICAgICAgICAgICB8ICdkZWZhdWx0TGFiZWxTaW5nbGUnXG4gICAgICAgICAgICAgICAgfCAnZGVmYXVsdExhYmVsTXVsdGlwbGUnXG4gICAgICAgICAgICAgICAgfCAnZGVmYXVsdExpbmtTaW5nbGUnXG4gICAgICAgICAgICAgICAgfCAnZGVmYXVsdExpbmtNdWx0aXBsZSdcbiAgICAgICAgICAgICAgICB8ICdtYXhTaXplUmVqZWN0aW9uUmVhc29uJ1xuICAgICAgICAgICAgICAgIHwgJ2Zvcm1hdFJlamVjdGlvblJlYXNvbidcbiAgICAgICAgICAgICAgICB8ICdkcm9wJ1xuICAgICAgICAgICAgICAgIHwgJ2Ryb3BNdWx0aXBsZScsXG4gICAgICAgICAgICAgICAgc3RyaW5nXG4gICAgICAgICAgICA+XG4gICAgICAgID4sXG4gICAgICAgIEBJbmplY3QoVFVJX0RJR0lUQUxfSU5GT1JNQVRJT05fVU5JVFMpXG4gICAgICAgIHJlYWRvbmx5IHVuaXRzJDogT2JzZXJ2YWJsZTxbc3RyaW5nLCBzdHJpbmcsIHN0cmluZ10+LFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudCB8fCBudWxsO1xuICAgIH1cblxuICAgIGdldCBmb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gaXNOYXRpdmVGb2N1c2VkKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkUHNldWRvSG92ZXJlZCgpOiBib29sZWFuIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnBzZXVkb0hvdmVyZWQgPz8gKHRoaXMuZmlsZURyYWdnZWQgfHwgbnVsbCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkTGluayQoKTogT2JzZXJ2YWJsZTxQb2x5bW9ycGhldXNDb250ZW50PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVMaW5rJCh0aGlzLmZpbGVEcmFnZ2VkLCB0aGlzLm11bHRpcGxlLCB0aGlzLmxpbmspO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZExhYmVsJCgpOiBPYnNlcnZhYmxlPFBvbHltb3JwaGV1c0NvbnRlbnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcHV0ZUxhYmVsJChcbiAgICAgICAgICAgIHRoaXMuaXNNb2JpbGUsXG4gICAgICAgICAgICB0aGlzLmZpbGVEcmFnZ2VkLFxuICAgICAgICAgICAgdGhpcy5tdWx0aXBsZSxcbiAgICAgICAgICAgIHRoaXMubGFiZWwsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGVEcmFnZ2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmRhdGFUcmFuc2Zlcj8udHlwZXMuaW5jbHVkZXMoJ0ZpbGVzJyk7XG4gICAgfVxuXG4gICAgZ2V0IGFycmF5VmFsdWUoKTogUmVhZG9ubHlBcnJheTxUdWlGaWxlTGlrZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZUFycmF5KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSG92ZXJlZChob3ZlcmVkKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoZm9jdXNlZCk7XG4gICAgfVxuXG4gICAgb25QcmVzc2VkKHByZXNzZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVQcmVzc2VkKHByZXNzZWQpO1xuICAgIH1cblxuICAgIG9uRmlsZXNTZWxlY3RlZChcbiAgICAgICAgaW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQsXG4gICAgICAgIHRleHRzOiBSZWNvcmQ8J21heFNpemVSZWplY3Rpb25SZWFzb24nIHwgJ2Zvcm1hdFJlamVjdGlvblJlYXNvbicsIHN0cmluZz4sXG4gICAgICAgIHVuaXRzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZ10sXG4gICAgKSB7XG4gICAgICAgIHRoaXMucHJvY2Vzc1NlbGVjdGVkRmlsZXMoaW5wdXQuZmlsZXMsIHRleHRzLCB1bml0cyk7XG4gICAgICAgIGlucHV0LnZhbHVlID0gJyc7XG4gICAgfVxuXG4gICAgb25Ecm9wcGVkKFxuICAgICAgICBldmVudDogRGF0YVRyYW5zZmVyLFxuICAgICAgICB0ZXh0czogUmVjb3JkPCdtYXhTaXplUmVqZWN0aW9uUmVhc29uJyB8ICdmb3JtYXRSZWplY3Rpb25SZWFzb24nLCBzdHJpbmc+LFxuICAgICAgICB1bml0czogW3N0cmluZywgc3RyaW5nLCBzdHJpbmddLFxuICAgICkge1xuICAgICAgICB0aGlzLnByb2Nlc3NTZWxlY3RlZEZpbGVzKGV2ZW50LmZpbGVzLCB0ZXh0cywgdW5pdHMpO1xuICAgIH1cblxuICAgIG9uRHJhZ092ZXIoZGF0YVRyYW5zZmVyOiBEYXRhVHJhbnNmZXIgfCBudWxsKSB7XG4gICAgICAgIHRoaXMuZGF0YVRyYW5zZmVyID0gZGF0YVRyYW5zZmVyO1xuICAgIH1cblxuICAgIHJlbW92ZUZpbGUocmVtb3ZlZEZpbGU6IFR1aUZpbGVMaWtlKSB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgICAgICB0aGlzLm11bHRpcGxlID8gdGhpcy5hcnJheVZhbHVlLmZpbHRlcihmaWxlID0+IGZpbGUgIT09IHJlbW92ZWRGaWxlKSA6IG51bGwsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNvbXB1dGVMaW5rJChcbiAgICAgICAgZmlsZURyYWdnZWQ6IGJvb2xlYW4sXG4gICAgICAgIG11bHRpcGxlOiBib29sZWFuLFxuICAgICAgICBsaW5rOiBQb2x5bW9ycGhldXNDb250ZW50LFxuICAgICk6IE9ic2VydmFibGU8UG9seW1vcnBoZXVzQ29udGVudD4ge1xuICAgICAgICByZXR1cm4gZmlsZURyYWdnZWRcbiAgICAgICAgICAgID8gb2YoJycpXG4gICAgICAgICAgICA6IHRoaXMuaW5wdXRGaWxlVGV4dHMkLnBpcGUoXG4gICAgICAgICAgICAgICAgICBtYXAodGV4dHMgPT5cbiAgICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZSAmJiBsaW5rID09PSAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICA/IHRleHRzLmRlZmF1bHRMaW5rTXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBsaW5rIHx8IHRleHRzLmRlZmF1bHRMaW5rU2luZ2xlLFxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgY29tcHV0ZUxhYmVsJChcbiAgICAgICAgaXNNb2JpbGU6IGJvb2xlYW4sXG4gICAgICAgIGZpbGVEcmFnZ2VkOiBib29sZWFuLFxuICAgICAgICBtdWx0aXBsZTogYm9vbGVhbixcbiAgICAgICAgbGFiZWw6IFBvbHltb3JwaGV1c0NvbnRlbnQsXG4gICAgKTogT2JzZXJ2YWJsZTxQb2x5bW9ycGhldXNDb250ZW50PiB7XG4gICAgICAgIGlmIChpc01vYmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKCcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWxlRHJhZ2dlZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXRGaWxlVGV4dHMkLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHRleHRzID0+IChtdWx0aXBsZSA/IHRleHRzLmRyb3BNdWx0aXBsZSA6IHRleHRzLmRyb3ApKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5pbnB1dEZpbGVUZXh0cyQucGlwZShcbiAgICAgICAgICAgIG1hcCh0ZXh0cyA9PlxuICAgICAgICAgICAgICAgIG11bHRpcGxlICYmIGxhYmVsID09PSAnJ1xuICAgICAgICAgICAgICAgICAgICA/IHRleHRzLmRlZmF1bHRMYWJlbE11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgIDogbGFiZWwgfHwgdGV4dHMuZGVmYXVsdExhYmVsU2luZ2xlLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0VmFsdWVBcnJheShcbiAgICAgICAgdmFsdWU6IFR1aUZpbGVMaWtlIHwgUmVhZG9ubHlBcnJheTxUdWlGaWxlTGlrZT4gfCBudWxsLFxuICAgICk6IFJlYWRvbmx5QXJyYXk8VHVpRmlsZUxpa2U+IHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIEVNUFRZX0FSUkFZO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1NlbGVjdGVkRmlsZXMoXG4gICAgICAgIGZpbGVzOiBGaWxlTGlzdCB8IG51bGwsXG4gICAgICAgIHRleHRzOiBSZWNvcmQ8J21heFNpemVSZWplY3Rpb25SZWFzb24nIHwgJ2Zvcm1hdFJlamVjdGlvblJlYXNvbicsIHN0cmluZz4sXG4gICAgICAgIHVuaXRzOiBbc3RyaW5nLCBzdHJpbmcsIHN0cmluZ10sXG4gICAgKSB7XG4gICAgICAgIC8vIElFMTEgYWZ0ZXIgc2VsZWN0aW5nIGEgZmlsZSB0aHJvdWdoIHRoZSBvcGVuIGRpYWxvZyBnZW5lcmF0ZXMgYSBzZWNvbmQgZXZlbnQgcGFzc2luZyBhbiBlbXB0eSBGaWxlTGlzdC5cbiAgICAgICAgaWYgKCFmaWxlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuZXdGaWxlcyA9IHRoaXMubXVsdGlwbGUgPyBBcnJheS5mcm9tKGZpbGVzKSA6IFtmaWxlc1swXV07XG4gICAgICAgIGNvbnN0IHRvb0JpZ0ZpbGVzID0gbmV3RmlsZXMuZmlsdGVyKGZpbGUgPT4gZmlsZS5zaXplID4gdGhpcy5tYXhGaWxlU2l6ZSk7XG4gICAgICAgIGNvbnN0IHdyb25nRm9ybWF0RmlsZXMgPSBuZXdGaWxlcy5maWx0ZXIoXG4gICAgICAgICAgICBmaWxlID0+ICF0aGlzLmlzRm9ybWF0QWNjZXB0YWJsZShmaWxlKSAmJiAhdG9vQmlnRmlsZXMuaW5jbHVkZXMoZmlsZSksXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGFjY2VwdGVkRmlsZXMgPSBuZXdGaWxlcy5maWx0ZXIoXG4gICAgICAgICAgICBmaWxlID0+ICF0b29CaWdGaWxlcy5pbmNsdWRlcyhmaWxlKSAmJiAhd3JvbmdGb3JtYXRGaWxlcy5pbmNsdWRlcyhmaWxlKSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAodG9vQmlnRmlsZXMubGVuZ3RoIHx8IHdyb25nRm9ybWF0RmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnJlamVjdEZpbGVzKFtcbiAgICAgICAgICAgICAgICAuLi50b29CaWdGaWxlcy5tYXAoZmlsZSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dHMubWF4U2l6ZVJlamVjdGlvblJlYXNvbiArXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRTaXplKHVuaXRzLCB0aGlzLm1heEZpbGVTaXplKSxcbiAgICAgICAgICAgICAgICB9KSksXG4gICAgICAgICAgICAgICAgLi4ud3JvbmdGb3JtYXRGaWxlcy5tYXAoZmlsZSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgICAgICAgc2l6ZTogZmlsZS5zaXplLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB0ZXh0cy5mb3JtYXRSZWplY3Rpb25SZWFzb24sXG4gICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgICAgICAgdGhpcy5tdWx0aXBsZVxuICAgICAgICAgICAgICAgID8gWy4uLnRoaXMuYXJyYXlWYWx1ZSwgLi4uYWNjZXB0ZWRGaWxlc11cbiAgICAgICAgICAgICAgICA6IGFjY2VwdGVkRmlsZXNbMF0gfHwgbnVsbCxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGlzRm9ybWF0QWNjZXB0YWJsZShmaWxlOiBGaWxlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5hY2NlcHQpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXh0ZW5zaW9uID0gYC4keyhmaWxlLm5hbWUuc3BsaXQoJy4nKS5wb3AoKSB8fCAnJykudG9Mb3dlckNhc2UoKX1gO1xuXG4gICAgICAgIHJldHVybiBnZXRBY2NlcHRBcnJheSh0aGlzLmFjY2VwdCkuc29tZShcbiAgICAgICAgICAgIGZvcm1hdCA9PlxuICAgICAgICAgICAgICAgIGZvcm1hdCA9PT0gZXh0ZW5zaW9uIHx8XG4gICAgICAgICAgICAgICAgZm9ybWF0ID09PSBmaWxlLnR5cGUgfHxcbiAgICAgICAgICAgICAgICAoZm9ybWF0LnNwbGl0KCcvJylbMV0gPT09ICcqJyAmJlxuICAgICAgICAgICAgICAgICAgICBmaWxlLnR5cGUuc3BsaXQoJy8nKVswXSA9PT0gZm9ybWF0LnNwbGl0KCcvJylbMF0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVqZWN0RmlsZXMocmVqZWN0ZWRGaWxlczogUmVhZG9ubHlBcnJheTxUdWlGaWxlTGlrZT4pIHtcbiAgICAgICAgdGhpcy5yZWplY3QuZW1pdCh0aGlzLm11bHRpcGxlID8gcmVqZWN0ZWRGaWxlcyA6IHJlamVjdGVkRmlsZXNbMF0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { NgModule } from '@angular/core';
|
|
4
|
+
import { TuiDroppableModule, TuiFocusableModule, TuiFocusedModule, TuiFocusVisibleModule, TuiHoveredModule, TuiLetModule, TuiPressedModule, } from '@taiga-ui/cdk';
|
|
5
|
+
import { TuiButtonModule, TuiGroupModule, TuiLinkModule, TuiLoaderModule, TuiSvgModule, TuiWrapperModule, } from '@taiga-ui/core';
|
|
6
|
+
import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
7
|
+
import { TuiInputFilesComponent } from './input-files.component';
|
|
8
|
+
var TuiInputFilesModule = /** @class */ (function () {
|
|
9
|
+
function TuiInputFilesModule() {
|
|
10
|
+
}
|
|
11
|
+
TuiInputFilesModule = __decorate([
|
|
12
|
+
NgModule({
|
|
13
|
+
imports: [
|
|
14
|
+
CommonModule,
|
|
15
|
+
PolymorpheusModule,
|
|
16
|
+
TuiLetModule,
|
|
17
|
+
TuiFocusedModule,
|
|
18
|
+
TuiFocusVisibleModule,
|
|
19
|
+
TuiPressedModule,
|
|
20
|
+
TuiHoveredModule,
|
|
21
|
+
TuiFocusableModule,
|
|
22
|
+
TuiDroppableModule,
|
|
23
|
+
TuiWrapperModule,
|
|
24
|
+
TuiSvgModule,
|
|
25
|
+
TuiLinkModule,
|
|
26
|
+
TuiLoaderModule,
|
|
27
|
+
TuiButtonModule,
|
|
28
|
+
TuiGroupModule,
|
|
29
|
+
],
|
|
30
|
+
declarations: [TuiInputFilesComponent],
|
|
31
|
+
exports: [TuiInputFilesComponent],
|
|
32
|
+
})
|
|
33
|
+
], TuiInputFilesModule);
|
|
34
|
+
return TuiInputFilesModule;
|
|
35
|
+
}());
|
|
36
|
+
export { TuiInputFilesModule };
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZmlsZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LWZpbGVzLyIsInNvdXJjZXMiOlsiaW5wdXQtZmlsZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIscUJBQXFCLEVBQ3JCLGdCQUFnQixFQUNoQixZQUFZLEVBQ1osZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGFBQWEsRUFDYixlQUFlLEVBQ2YsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBdUIvRDtJQUFBO0lBQWtDLENBQUM7SUFBdEIsbUJBQW1CO1FBckIvQixRQUFRLENBQUM7WUFDTixPQUFPLEVBQUU7Z0JBQ0wsWUFBWTtnQkFDWixrQkFBa0I7Z0JBQ2xCLFlBQVk7Z0JBQ1osZ0JBQWdCO2dCQUNoQixxQkFBcUI7Z0JBQ3JCLGdCQUFnQjtnQkFDaEIsZ0JBQWdCO2dCQUNoQixrQkFBa0I7Z0JBQ2xCLGtCQUFrQjtnQkFDbEIsZ0JBQWdCO2dCQUNoQixZQUFZO2dCQUNaLGFBQWE7Z0JBQ2IsZUFBZTtnQkFDZixlQUFlO2dCQUNmLGNBQWM7YUFDakI7WUFDRCxZQUFZLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztZQUN0QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztTQUNwQyxDQUFDO09BQ1csbUJBQW1CLENBQUc7SUFBRCwwQkFBQztDQUFBLEFBQW5DLElBQW1DO1NBQXRCLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFR1aURyb3BwYWJsZU1vZHVsZSxcbiAgICBUdWlGb2N1c2FibGVNb2R1bGUsXG4gICAgVHVpRm9jdXNlZE1vZHVsZSxcbiAgICBUdWlGb2N1c1Zpc2libGVNb2R1bGUsXG4gICAgVHVpSG92ZXJlZE1vZHVsZSxcbiAgICBUdWlMZXRNb2R1bGUsXG4gICAgVHVpUHJlc3NlZE1vZHVsZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aUJ1dHRvbk1vZHVsZSxcbiAgICBUdWlHcm91cE1vZHVsZSxcbiAgICBUdWlMaW5rTW9kdWxlLFxuICAgIFR1aUxvYWRlck1vZHVsZSxcbiAgICBUdWlTdmdNb2R1bGUsXG4gICAgVHVpV3JhcHBlck1vZHVsZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmltcG9ydCB7VHVpSW5wdXRGaWxlc0NvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1maWxlcy5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQb2x5bW9ycGhldXNNb2R1bGUsXG4gICAgICAgIFR1aUxldE1vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNlZE1vZHVsZSxcbiAgICAgICAgVHVpRm9jdXNWaXNpYmxlTW9kdWxlLFxuICAgICAgICBUdWlQcmVzc2VkTW9kdWxlLFxuICAgICAgICBUdWlIb3ZlcmVkTW9kdWxlLFxuICAgICAgICBUdWlGb2N1c2FibGVNb2R1bGUsXG4gICAgICAgIFR1aURyb3BwYWJsZU1vZHVsZSxcbiAgICAgICAgVHVpV3JhcHBlck1vZHVsZSxcbiAgICAgICAgVHVpU3ZnTW9kdWxlLFxuICAgICAgICBUdWlMaW5rTW9kdWxlLFxuICAgICAgICBUdWlMb2FkZXJNb2R1bGUsXG4gICAgICAgIFR1aUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgVHVpR3JvdXBNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlJbnB1dEZpbGVzQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbVHVpSW5wdXRGaWxlc0NvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0RmlsZXNNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWNvbXBvbmVudHMtaW5wdXQtZmlsZXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvaW5wdXQtZmlsZXMvIiwic291cmNlcyI6WyJ0YWlnYS11aS1raXQtY29tcG9uZW50cy1pbnB1dC1maWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { __decorate, __extends, __param } from "tslib";
|
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, HostListener, Inject, Input, Optional, Self, ViewChild, } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, forwardRef, HostListener, Inject, Input, Optional, Self, ViewChild, } from '@angular/core';
|
|
3
3
|
import { NgControl } from '@angular/forms';
|
|
4
4
|
import { AbstractTuiControl, AbstractTuiNullableControl, TUI_FOCUSABLE_ITEM_ACCESSOR, tuiDefaultProp, } from '@taiga-ui/cdk';
|
|
5
|
-
import { formatNumber, getFractionPartPadded, maskedMoneyValueIsEmpty, maskedNumberStringToNumber, TUI_DECIMAL_SYMBOLS, TUI_NUMBER_FORMAT, tuiCreateAutoCorrectedNumberPipe, tuiCreateNumberMask, TuiPrimitiveTextfieldComponent, } from '@taiga-ui/core';
|
|
5
|
+
import { formatNumber, getFractionPartPadded, maskedMoneyValueIsEmpty, maskedNumberStringToNumber, TUI_DECIMAL_SYMBOLS, TUI_NUMBER_FORMAT, tuiCreateAutoCorrectedNumberPipe, tuiCreateNumberMask, tuiEnableAutoCorrectDecimalSymbol, TuiPrimitiveTextfieldComponent, } from '@taiga-ui/core';
|
|
6
|
+
import { PolymorpheusOutletComponent } from '@tinkoff/ng-polymorpheus';
|
|
6
7
|
var DEFAULT_MAX_LENGTH = 18;
|
|
7
8
|
// @dynamic
|
|
8
9
|
var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
@@ -16,19 +17,21 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
16
17
|
_this.precision = 2;
|
|
17
18
|
_this.prefix = '';
|
|
18
19
|
_this.postfix = '';
|
|
19
|
-
_this.mask = function (allowNegative, decimal, decimalLimit, nativeFocusableElement) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
20
|
+
_this.mask = function (allowNegative, decimal, decimalLimit, nativeFocusableElement) {
|
|
21
|
+
return ({
|
|
22
|
+
mask: tuiCreateNumberMask({
|
|
23
|
+
allowNegative: allowNegative,
|
|
24
|
+
decimalLimit: decimalLimit,
|
|
25
|
+
allowDecimal: decimal !== 'never',
|
|
26
|
+
requireDecimal: decimal === 'always',
|
|
27
|
+
decimalSymbol: _this.numberFormat.decimalSeparator,
|
|
28
|
+
thousandSymbol: _this.numberFormat.thousandSeparator,
|
|
29
|
+
autoCorrectDecimalSymbol: tuiEnableAutoCorrectDecimalSymbol(_this.numberFormat),
|
|
30
|
+
}),
|
|
31
|
+
pipe: tuiCreateAutoCorrectedNumberPipe(decimal === 'always' ? decimalLimit : 0, _this.numberFormat.decimalSeparator, _this.numberFormat.thousandSeparator, nativeFocusableElement, allowNegative),
|
|
32
|
+
guide: false,
|
|
33
|
+
});
|
|
34
|
+
};
|
|
32
35
|
return _this;
|
|
33
36
|
}
|
|
34
37
|
TuiInputNumberComponent_1 = TuiInputNumberComponent;
|
|
@@ -75,15 +78,7 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
75
78
|
});
|
|
76
79
|
Object.defineProperty(TuiInputNumberComponent.prototype, "formattedValue", {
|
|
77
80
|
get: function () {
|
|
78
|
-
|
|
79
|
-
var absValue = Math.abs(value);
|
|
80
|
-
var hasFraction = absValue % 1 > 0;
|
|
81
|
-
var limit = this.decimal === 'always' || hasFraction ? this.precision : 0;
|
|
82
|
-
var fraction = hasFraction ? getFractionPartPadded(value, this.precision) : '';
|
|
83
|
-
if (this.focused && this.decimal !== 'always') {
|
|
84
|
-
limit = fraction.length;
|
|
85
|
-
}
|
|
86
|
-
return formatNumber(value, limit, this.numberFormat.decimalSeparator, this.numberFormat.thousandSeparator, this.numberFormat.zeroPadding);
|
|
81
|
+
return this.getFormattedValue(this.value || 0);
|
|
87
82
|
},
|
|
88
83
|
enumerable: true,
|
|
89
84
|
configurable: true
|
|
@@ -129,7 +124,7 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
129
124
|
}
|
|
130
125
|
};
|
|
131
126
|
TuiInputNumberComponent.prototype.onKeyDown = function (event) {
|
|
132
|
-
if (TUI_DECIMAL_SYMBOLS.
|
|
127
|
+
if (!TUI_DECIMAL_SYMBOLS.includes(event.key)) {
|
|
133
128
|
return;
|
|
134
129
|
}
|
|
135
130
|
if (this.decimal === 'never') {
|
|
@@ -161,6 +156,16 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
161
156
|
TuiInputNumberComponent.prototype.onPressed = function (pressed) {
|
|
162
157
|
this.updatePressed(pressed);
|
|
163
158
|
};
|
|
159
|
+
TuiInputNumberComponent.prototype.getFormattedValue = function (value) {
|
|
160
|
+
var absValue = Math.abs(value);
|
|
161
|
+
var hasFraction = absValue % 1 > 0;
|
|
162
|
+
var limit = this.decimal === 'always' || hasFraction ? this.precision : 0;
|
|
163
|
+
var fraction = hasFraction ? getFractionPartPadded(value, this.precision) : '';
|
|
164
|
+
if (this.focused && this.decimal !== 'always') {
|
|
165
|
+
limit = fraction.length;
|
|
166
|
+
}
|
|
167
|
+
return formatNumber(value, limit, this.numberFormat.decimalSeparator, this.numberFormat.thousandSeparator, this.numberFormat.zeroPadding);
|
|
168
|
+
};
|
|
164
169
|
Object.defineProperty(TuiInputNumberComponent.prototype, "isNativeValueNotFinished", {
|
|
165
170
|
get: function () {
|
|
166
171
|
var nativeNumberValue = this.nativeNumberValue;
|
|
@@ -244,13 +249,16 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
244
249
|
Input(),
|
|
245
250
|
tuiDefaultProp()
|
|
246
251
|
], TuiInputNumberComponent.prototype, "postfix", void 0);
|
|
252
|
+
__decorate([
|
|
253
|
+
ContentChild(PolymorpheusOutletComponent)
|
|
254
|
+
], TuiInputNumberComponent.prototype, "polymorpheusValueContent", void 0);
|
|
247
255
|
__decorate([
|
|
248
256
|
HostListener('keydown.0', ['$event'])
|
|
249
257
|
], TuiInputNumberComponent.prototype, "onZero", null);
|
|
250
258
|
TuiInputNumberComponent = TuiInputNumberComponent_1 = __decorate([
|
|
251
259
|
Component({
|
|
252
260
|
selector: 'tui-input-number',
|
|
253
|
-
template: "<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode=\"decimal\"\n class=\"textfield\"\n [pseudoHovered]=\"
|
|
261
|
+
template: "<tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldInputMode=\"decimal\"\n class=\"textfield\"\n [pseudoHovered]=\"computedHovered\"\n [pseudoFocused]=\"computedFocused\"\n [pseudoPressed]=\"computedPressed\"\n [invalid]=\"computedInvalid\"\n [tuiTextfieldMaxLength]=\"calculatedMaxLength\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [textMask]=\"isNegativeAllowed | tuiMapper: mask:decimal:precision:nativeFocusableElement\"\n [value]=\"computedValue\"\n [prefix]=\"prefix\"\n [postfix]=\"postfix\"\n [focusable]=\"focusable\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (focusedChange)=\"onFocused($event)\"\n (pressedChange)=\"onPressed($event)\"\n (keydown)=\"onKeyDown($event)\"\n>\n <ng-content></ng-content>\n <ng-content select=\"input\" ngProjectAs=\"input\"></ng-content>\n <div\n *ngIf=\"polymorpheusValueContent\"\n polymorpheus-outlet\n [content]=\"valueContent\"\n ></div>\n</tui-primitive-textfield>\n\n<ng-template #valueContent>\n <ng-content select=\"[polymorpheus-outlet]\"></ng-content>\n</ng-template>\n",
|
|
254
262
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
255
263
|
providers: [
|
|
256
264
|
{
|
|
@@ -273,4 +281,4 @@ var TuiInputNumberComponent = /** @class */ (function (_super) {
|
|
|
273
281
|
return TuiInputNumberComponent;
|
|
274
282
|
}(AbstractTuiNullableControl));
|
|
275
283
|
export { TuiInputNumberComponent };
|
|
276
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1udW1iZXIvIiwic291cmNlcyI6WyJpbnB1dC1udW1iZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixJQUFJLEVBQ0osU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsY0FBYyxHQUlqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsWUFBWSxFQUNaLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsMEJBQTBCLEVBRTFCLG1CQUFtQixFQUNuQixpQkFBaUIsRUFDakIsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUVuQiw4QkFBOEIsR0FFakMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixJQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztBQUU5QixXQUFXO0FBaUJYO0lBQ1ksMkNBQWtDO0lBOEIxQyxpQ0FJSSxPQUF5QixFQUV6QixpQkFBb0MsRUFFbkIsWUFBa0M7UUFSdkQsWUFVSSxrQkFBTSxPQUFPLEVBQUUsaUJBQWlCLENBQUMsU0FDcEM7UUFIb0Isa0JBQVksR0FBWixZQUFZLENBQXNCO1FBOUJ2RCxTQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFJaEIsU0FBRyxHQUFHLFFBQVEsQ0FBQztRQUlmLGFBQU8sR0FBZ0IsVUFBVSxDQUFDO1FBSWxDLGVBQVMsR0FBRyxDQUFDLENBQUM7UUFJZCxZQUFNLEdBQUcsRUFBRSxDQUFDO1FBSVosYUFB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QUMsQ0FBQzt5REFpQnJDO0lBdEhRLHVCQUF1QjtRQWhCbkMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixnNUJBQTJDO1lBRTNDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSx5QkFBdUIsRUFBdkIsQ0FBdUIsQ0FBQztpQkFDekQ7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEseUJBQXVCLEVBQXZCLENBQXVCLENBQUM7aUJBQ3pEO2FBQ0o7O1NBQ0osQ0FBQztRQWlDTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFFekIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtPQXRDckIsdUJBQXVCLENBMlJuQztJQUFELDhCQUFDO0NBQUEsQUEzUkQsQ0FDWSwwQkFBMEIsR0EwUnJDO1NBM1JZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2wsXG4gICAgVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlJbnB1dE1vZGVULFxuICAgIFR1aU1hcHBlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIGZvcm1hdE51bWJlcixcbiAgICBnZXRGcmFjdGlvblBhcnRQYWRkZWQsXG4gICAgbWFza2VkTW9uZXlWYWx1ZUlzRW1wdHksXG4gICAgbWFza2VkTnVtYmVyU3RyaW5nVG9OdW1iZXIsXG4gICAgTnVtYmVyRm9ybWF0U2V0dGluZ3MsXG4gICAgVFVJX0RFQ0lNQUxfU1lNQk9MUyxcbiAgICBUVUlfTlVNQkVSX0ZPUk1BVCxcbiAgICB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkTnVtYmVyUGlwZSxcbiAgICB0dWlDcmVhdGVOdW1iZXJNYXNrLFxuICAgIFR1aURlY2ltYWxULFxuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUZXh0TWFza09wdGlvbnMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuY29uc3QgREVGQVVMVF9NQVhfTEVOR1RIID0gMTg7XG5cbi8vIEBkeW5hbWljXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1udW1iZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1udW1iZXIudGVtcGxhdGUuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtbnVtYmVyLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0ZPQ1VTQUJMRV9JVEVNX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpSW5wdXROdW1iZXJDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dE51bWJlckNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXROdW1iZXJDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpTnVsbGFibGVDb250cm9sPG51bWJlcj5cbiAgICBpbXBsZW1lbnRzIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3Nvclxue1xuICAgIEBWaWV3Q2hpbGQoVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJpbWl0aXZlVGV4dGZpZWxkPzogVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1pbiA9IC1JbmZpbml0eTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBtYXggPSBJbmZpbml0eTtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkZWNpbWFsOiBUdWlEZWNpbWFsVCA9ICdub3QtemVybyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcHJlY2lzaW9uID0gMjtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwcmVmaXggPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwb3N0Zml4ID0gJyc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZilcbiAgICAgICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9OVU1CRVJfRk9STUFUKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG51bWJlckZvcm1hdDogTnVtYmVyRm9ybWF0U2V0dGluZ3MsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQgfHwgdGhpcy5jb21wdXRlZERpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQgJiYgdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQuZm9jdXNlZDtcbiAgICB9XG5cbiAgICBnZXQgaXNOZWdhdGl2ZUFsbG93ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1pbiA8IDA7XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0TW9kZSgpOiBUdWlJbnB1dE1vZGVUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVjaW1hbCA9PT0gJ25ldmVyJyA/ICdudW1lcmljJyA6ICdkZWNpbWFsJztcbiAgICB9XG5cbiAgICBnZXQgY2FsY3VsYXRlZE1heExlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBkZWNpbWFsUGFydCA9XG4gICAgICAgICAgICB0aGlzLmRlY2ltYWwgIT09ICduZXZlcicgJiZcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUuaW5jbHVkZXModGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcik7XG4gICAgICAgIGNvbnN0IHByZWNpc2lvbiA9IGRlY2ltYWxQYXJ0ID8gdGhpcy5wcmVjaXNpb24gKyAxIDogMDtcbiAgICAgICAgY29uc3QgdGFrZVRob3VzYW5kID0gdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IucmVwZWF0KDUpLmxlbmd0aDtcblxuICAgICAgICByZXR1cm4gREVGQVVMVF9NQVhfTEVOR1RIICsgcHJlY2lzaW9uICsgdGFrZVRob3VzYW5kO1xuICAgIH1cblxuICAgIGdldCBmb3JtYXR0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWUgfHwgMDtcbiAgICAgICAgY29uc3QgYWJzVmFsdWUgPSBNYXRoLmFicyh2YWx1ZSk7XG4gICAgICAgIGNvbnN0IGhhc0ZyYWN0aW9uID0gYWJzVmFsdWUgJSAxID4gMDtcbiAgICAgICAgbGV0IGxpbWl0ID0gdGhpcy5kZWNpbWFsID09PSAnYWx3YXlzJyB8fCBoYXNGcmFjdGlvbiA/IHRoaXMucHJlY2lzaW9uIDogMDtcblxuICAgICAgICBjb25zdCBmcmFjdGlvbiA9IGhhc0ZyYWN0aW9uID8gZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkKHZhbHVlLCB0aGlzLnByZWNpc2lvbikgOiAnJztcblxuICAgICAgICBpZiAodGhpcy5mb2N1c2VkICYmIHRoaXMuZGVjaW1hbCAhPT0gJ2Fsd2F5cycpIHtcbiAgICAgICAgICAgIGxpbWl0ID0gZnJhY3Rpb24ubGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZvcm1hdE51bWJlcihcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgbGltaXQsXG4gICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IsXG4gICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC56ZXJvUGFkZGluZyxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcHV0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBpZiAodGhpcy5mb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVWYWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlID09PSBudWxsID8gJycgOiB0aGlzLmZvcm1hdHRlZFZhbHVlO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uMCcsIFsnJGV2ZW50J10pXG4gICAgb25aZXJvKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGRlY2ltYWwgPVxuICAgICAgICAgICAgdGhpcy5uYXRpdmVWYWx1ZS5zcGxpdCh0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yKVsxXSB8fCAnJztcbiAgICAgICAgY29uc3Qge25hdGl2ZUZvY3VzYWJsZUVsZW1lbnR9ID0gdGhpcztcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBkZWNpbWFsLmxlbmd0aCA8IHRoaXMucHJlY2lzaW9uIHx8XG4gICAgICAgICAgICAhbmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8fFxuICAgICAgICAgICAgIW5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgfHxcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWVbbmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZWxlY3Rpb25TdGFydF0gIT09ICcwJ1xuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQrKztcbiAgICB9XG5cbiAgICBtYXNrOiBUdWlNYXBwZXI8Ym9vbGVhbiwgVHVpVGV4dE1hc2tPcHRpb25zPiA9IChcbiAgICAgICAgYWxsb3dOZWdhdGl2ZTogYm9vbGVhbixcbiAgICAgICAgZGVjaW1hbDogVHVpRGVjaW1hbFQsXG4gICAgICAgIGRlY2ltYWxMaW1pdDogbnVtYmVyLFxuICAgICAgICBuYXRpdmVGb2N1c2FibGVFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCxcbiAgICApID0+ICh7XG4gICAgICAgIG1hc2s6IHR1aUNyZWF0ZU51bWJlck1hc2soe1xuICAgICAgICAgICAgYWxsb3dOZWdhdGl2ZSxcbiAgICAgICAgICAgIGRlY2ltYWxMaW1pdCxcbiAgICAgICAgICAgIGFsbG93RGVjaW1hbDogZGVjaW1hbCAhPT0gJ25ldmVyJyxcbiAgICAgICAgICAgIHJlcXVpcmVEZWNpbWFsOiBkZWNpbWFsID09PSAnYWx3YXlzJyxcbiAgICAgICAgICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbDogZmFsc2UsXG4gICAgICAgICAgICBkZWNpbWFsU3ltYm9sOiB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgdGhvdXNhbmRTeW1ib2w6IHRoaXMubnVtYmVyRm9ybWF0LnRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgICB9KSxcbiAgICAgICAgcGlwZTogdHVpQ3JlYXRlQXV0b0NvcnJlY3RlZE51bWJlclBpcGUoXG4gICAgICAgICAgICBkZWNpbWFsID09PSAnYWx3YXlzJyA/IGRlY2ltYWxMaW1pdCA6IDAsXG4gICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IsXG4gICAgICAgICAgICBuYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGFsbG93TmVnYXRpdmUsXG4gICAgICAgICksXG4gICAgICAgIGd1aWRlOiBmYWxzZSxcbiAgICB9KTtcblxuICAgIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZykge1xuICAgICAgICBpZiAobWFza2VkTW9uZXlWYWx1ZUlzRW1wdHkodmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc05hdGl2ZVZhbHVlTm90RmluaXNoZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNhcHBlZCA9IHRoaXMuYWJzb2x1dGVDYXBJbnB1dFZhbHVlKHZhbHVlKTtcblxuICAgICAgICBpZiAoY2FwcGVkID09PSBudWxsIHx8IGlzTmFOKGNhcHBlZCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoY2FwcGVkKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBjYXBwZWQgIT09XG4gICAgICAgICAgICBtYXNrZWROdW1iZXJTdHJpbmdUb051bWJlcihcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LnRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgICAgICAgKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUgPSB0aGlzLmZvcm1hdHRlZFZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmIChUVUlfREVDSU1BTF9TWU1CT0xTLmluZGV4T2YoZXZlbnQua2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmRlY2ltYWwgPT09ICduZXZlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm5hdGl2ZVZhbHVlLmluY2x1ZGVzKHRoaXMubnVtYmVyRm9ybWF0LmRlY2ltYWxTZXBhcmF0b3IpKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5zZXRDYXJldEFmdGVyQ29tbWEoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRm9jdXNlZChmb2N1c2VkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlRm9jdXNlZChmb2N1c2VkKTtcblxuICAgICAgICBpZiAoZm9jdXNlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbmF0aXZlTnVtYmVyVmFsdWUgPSB0aGlzLm5hdGl2ZU51bWJlclZhbHVlO1xuXG4gICAgICAgIGlmIChpc05hTihuYXRpdmVOdW1iZXJWYWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2xhbXBlZCA9IE1hdGgubWluKHRoaXMubWF4LCBNYXRoLm1heCh0aGlzLm1pbiwgbmF0aXZlTnVtYmVyVmFsdWUpKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGNsYW1wZWQpO1xuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdGhpcy5mb3JtYXR0ZWRWYWx1ZTtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZUhvdmVyZWQoaG92ZXJlZCk7XG4gICAgfVxuXG4gICAgb25QcmVzc2VkKHByZXNzZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVQcmVzc2VkKHByZXNzZWQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGlzTmF0aXZlVmFsdWVOb3RGaW5pc2hlZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgbmF0aXZlTnVtYmVyVmFsdWUgPSB0aGlzLm5hdGl2ZU51bWJlclZhbHVlO1xuXG4gICAgICAgIHJldHVybiBuYXRpdmVOdW1iZXJWYWx1ZSA8IDBcbiAgICAgICAgICAgID8gbmF0aXZlTnVtYmVyVmFsdWUgPiB0aGlzLm1heFxuICAgICAgICAgICAgOiBuYXRpdmVOdW1iZXJWYWx1ZSA8IHRoaXMubWluO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IG5hdGl2ZVZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgPyB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBuYXRpdmVOdW1iZXJWYWx1ZSgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gbWFza2VkTnVtYmVyU3RyaW5nVG9OdW1iZXIoXG4gICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LnRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0IG5hdGl2ZVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLnByaW1pdGl2ZVRleHRmaWVsZCB8fCAhdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnByaW1pdGl2ZVRleHRmaWVsZC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyKCkge1xuICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gJyc7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUobnVsbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhYnNvbHV0ZUNhcElucHV0VmFsdWUoaW5wdXRWYWx1ZTogc3RyaW5nKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gbWFza2VkTnVtYmVyU3RyaW5nVG9OdW1iZXIoXG4gICAgICAgICAgICBpbnB1dFZhbHVlLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LnRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBjYXBwZWQgPVxuICAgICAgICAgICAgdmFsdWUgPCAwXG4gICAgICAgICAgICAgICAgPyBNYXRoLm1heChNYXRoLm1heCh0aGlzLm1pbiwgTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpLCB2YWx1ZSlcbiAgICAgICAgICAgICAgICA6IE1hdGgubWluKHZhbHVlLCBNYXRoLm1pbih0aGlzLm1heCwgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpKTtcbiAgICAgICAgY29uc3QgaW5lbGlnaWJsZVZhbHVlID0gaXNOYU4oY2FwcGVkKSB8fCBjYXBwZWQgPCB0aGlzLm1pbiB8fCBjYXBwZWQgPiB0aGlzLm1heDtcblxuICAgICAgICByZXR1cm4gaW5lbGlnaWJsZVZhbHVlID8gbnVsbCA6IGNhcHBlZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENhcmV0QWZ0ZXJDb21tYSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFmdGVyQ29tbWFQb3NpdGlvbiA9IHRoaXMubmF0aXZlVmFsdWUubGVuZ3RoIC0gdGhpcy5wcmVjaXNpb247XG5cbiAgICAgICAgdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKFxuICAgICAgICAgICAgYWZ0ZXJDb21tYVBvc2l0aW9uLFxuICAgICAgICAgICAgYWZ0ZXJDb21tYVBvc2l0aW9uLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
284
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1udW1iZXIvIiwic291cmNlcyI6WyJpbnB1dC1udW1iZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsSUFBSSxFQUNKLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUNILGtCQUFrQixFQUNsQiwwQkFBMEIsRUFDMUIsMkJBQTJCLEVBQzNCLGNBQWMsR0FJakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILFlBQVksRUFDWixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLDBCQUEwQixFQUUxQixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGdDQUFnQyxFQUNoQyxtQkFBbUIsRUFFbkIsaUNBQWlDLEVBQ2pDLDhCQUE4QixHQUVqQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBR3JFLElBQU0sa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBRTlCLFdBQVc7QUFpQlg7SUFDWSwyQ0FBa0M7SUFpQzFDLGlDQUlJLE9BQXlCLEVBRXpCLGlCQUFvQyxFQUVuQixZQUFrQztRQVJ2RCxZQVVJLGtCQUFNLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxTQUNwQztRQUhvQixrQkFBWSxHQUFaLFlBQVksQ0FBc0I7UUFqQ3ZELFNBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUloQixTQUFHLEdBQUcsUUFBUSxDQUFDO1FBSWYsYUFBTyxHQUFnQixV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YyxFQUFFOzhEQUNIO0lBSWQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7MkRBQ0w7SUFJWjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs0REFDSjtJQUdiO1FBREMsWUFBWSxDQUFDLDJCQUEyQixDQUFDOzZFQUNFO0lBd0Q1QztRQURDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzt5REFpQnJDO0lBeEdRLHVCQUF1QjtRQWhCbkMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGtCQUFrQjtZQUM1Qiw4cUNBQTJDO1lBRTNDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGNBQU0sT0FBQSx5QkFBdUIsRUFBdkIsQ0FBdUIsQ0FBQztpQkFDekQ7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEseUJBQXVCLEVBQXZCLENBQXVCLENBQUM7aUJBQ3pEO2FBQ0o7O1NBQ0osQ0FBQztRQW9DTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFFekIsV0FBQSxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtPQXpDckIsdUJBQXVCLENBb1NuQztJQUFELDhCQUFDO0NBQUEsQUFwU0QsQ0FDWSwwQkFBMEIsR0FtU3JDO1NBcFNZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlDb250cm9sLFxuICAgIEFic3RyYWN0VHVpTnVsbGFibGVDb250cm9sLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsXG4gICAgVHVpSW5wdXRNb2RlVCxcbiAgICBUdWlNYXBwZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBmb3JtYXROdW1iZXIsXG4gICAgZ2V0RnJhY3Rpb25QYXJ0UGFkZGVkLFxuICAgIG1hc2tlZE1vbmV5VmFsdWVJc0VtcHR5LFxuICAgIG1hc2tlZE51bWJlclN0cmluZ1RvTnVtYmVyLFxuICAgIE51bWJlckZvcm1hdFNldHRpbmdzLFxuICAgIFRVSV9ERUNJTUFMX1NZTUJPTFMsXG4gICAgVFVJX05VTUJFUl9GT1JNQVQsXG4gICAgdHVpQ3JlYXRlQXV0b0NvcnJlY3RlZE51bWJlclBpcGUsXG4gICAgdHVpQ3JlYXRlTnVtYmVyTWFzayxcbiAgICBUdWlEZWNpbWFsVCxcbiAgICB0dWlFbmFibGVBdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wsXG4gICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIFR1aVRleHRNYXNrT3B0aW9ucyxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNPdXRsZXRDb21wb25lbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge1RleHRNYXNrQ29uZmlnfSBmcm9tICdhbmd1bGFyMi10ZXh0LW1hc2snO1xuXG5jb25zdCBERUZBVUxUX01BWF9MRU5HVEggPSAxODtcblxuLy8gQGR5bmFtaWNcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LW51bWJlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LW51bWJlci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1udW1iZXIuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRk9DVVNBQkxFX0lURU1fQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dE51bWJlckNvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFic3RyYWN0VHVpQ29udHJvbCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0TnVtYmVyQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dE51bWJlckNvbXBvbmVudFxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlOdWxsYWJsZUNvbnRyb2w8bnVtYmVyPlxuICAgIGltcGxlbWVudHMgVHVpRm9jdXNhYmxlRWxlbWVudEFjY2Vzc29yXG57XG4gICAgQFZpZXdDaGlsZChUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmltaXRpdmVUZXh0ZmllbGQ/OiBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQ7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgbWluID0gLUluZmluaXR5O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1heCA9IEluZmluaXR5O1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRlY2ltYWw6IFR1aURlY2ltYWxUID0gJ25vdC16ZXJvJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBwcmVjaXNpb24gPSAyO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHByZWZpeCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHBvc3RmaXggPSAnJztcblxuICAgIEBDb250ZW50Q2hpbGQoUG9seW1vcnBoZXVzT3V0bGV0Q29tcG9uZW50KVxuICAgIHJlYWRvbmx5IHBvbHltb3JwaGV1c1ZhbHVlQ29udGVudD86IHVua25vd247XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZilcbiAgICAgICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFRVSV9OVU1CRVJfRk9STUFUKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IG51bWJlckZvcm1hdDogTnVtYmVyRm9ybWF0U2V0dGluZ3MsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcbiAgICB9XG5cbiAgICBnZXQgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCgpOiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAhdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQgfHwgdGhpcy5jb21wdXRlZERpc2FibGVkXG4gICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgIDogdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQubmF0aXZlRm9jdXNhYmxlRWxlbWVudDtcbiAgICB9XG5cbiAgICBnZXQgZm9jdXNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQgJiYgdGhpcy5wcmltaXRpdmVUZXh0ZmllbGQuZm9jdXNlZDtcbiAgICB9XG5cbiAgICBnZXQgaXNOZWdhdGl2ZUFsbG93ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1pbiA8IDA7XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0TW9kZSgpOiBUdWlJbnB1dE1vZGVUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVjaW1hbCA9PT0gJ25ldmVyJyA/ICdudW1lcmljJyA6ICdkZWNpbWFsJztcbiAgICB9XG5cbiAgICBnZXQgY2FsY3VsYXRlZE1heExlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBkZWNpbWFsUGFydCA9XG4gICAgICAgICAgICB0aGlzLmRlY2ltYWwgIT09ICduZXZlcicgJiZcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUuaW5jbHVkZXModGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcik7XG4gICAgICAgIGNvbnN0IHByZWNpc2lvbiA9IGRlY2ltYWxQYXJ0ID8gdGhpcy5wcmVjaXNpb24gKyAxIDogMDtcbiAgICAgICAgY29uc3QgdGFrZVRob3VzYW5kID0gdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IucmVwZWF0KDUpLmxlbmd0aDtcblxuICAgICAgICByZXR1cm4gREVGQVVMVF9NQVhfTEVOR1RIICsgcHJlY2lzaW9uICsgdGFrZVRob3VzYW5kO1xuICAgIH1cblxuICAgIGdldCBmb3JtYXR0ZWRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXR0ZWRWYWx1ZSh0aGlzLnZhbHVlIHx8IDApO1xuICAgIH1cblxuICAgIGdldCBjb21wdXRlZFZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZVZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUgPT09IG51bGwgPyAnJyA6IHRoaXMuZm9ybWF0dGVkVmFsdWU7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi4wJywgWyckZXZlbnQnXSlcbiAgICBvblplcm8oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgY29uc3QgZGVjaW1hbCA9XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlLnNwbGl0KHRoaXMubnVtYmVyRm9ybWF0LmRlY2ltYWxTZXBhcmF0b3IpWzFdIHx8ICcnO1xuICAgICAgICBjb25zdCB7bmF0aXZlRm9jdXNhYmxlRWxlbWVudH0gPSB0aGlzO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGRlY2ltYWwubGVuZ3RoIDwgdGhpcy5wcmVjaXNpb24gfHxcbiAgICAgICAgICAgICFuYXRpdmVGb2N1c2FibGVFbGVtZW50IHx8XG4gICAgICAgICAgICAhbmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZWxlY3Rpb25TdGFydCB8fFxuICAgICAgICAgICAgdGhpcy5uYXRpdmVWYWx1ZVtuYXRpdmVGb2N1c2FibGVFbGVtZW50LnNlbGVjdGlvblN0YXJ0XSAhPT0gJzAnXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZWxlY3Rpb25TdGFydCsrO1xuICAgIH1cblxuICAgIG1hc2s6IFR1aU1hcHBlcjxib29sZWFuLCBUZXh0TWFza0NvbmZpZz4gPSAoXG4gICAgICAgIGFsbG93TmVnYXRpdmU6IGJvb2xlYW4sXG4gICAgICAgIGRlY2ltYWw6IFR1aURlY2ltYWxULFxuICAgICAgICBkZWNpbWFsTGltaXQ6IG51bWJlcixcbiAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IG51bGwsXG4gICAgKSA9PlxuICAgICAgICAoe1xuICAgICAgICAgICAgbWFzazogdHVpQ3JlYXRlTnVtYmVyTWFzayh7XG4gICAgICAgICAgICAgICAgYWxsb3dOZWdhdGl2ZSxcbiAgICAgICAgICAgICAgICBkZWNpbWFsTGltaXQsXG4gICAgICAgICAgICAgICAgYWxsb3dEZWNpbWFsOiBkZWNpbWFsICE9PSAnbmV2ZXInLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVEZWNpbWFsOiBkZWNpbWFsID09PSAnYWx3YXlzJyxcbiAgICAgICAgICAgICAgICBkZWNpbWFsU3ltYm9sOiB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgICAgIHRob3VzYW5kU3ltYm9sOiB0aGlzLm51bWJlckZvcm1hdC50aG91c2FuZFNlcGFyYXRvcixcbiAgICAgICAgICAgICAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2w6IHR1aUVuYWJsZUF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbChcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgcGlwZTogdHVpQ3JlYXRlQXV0b0NvcnJlY3RlZE51bWJlclBpcGUoXG4gICAgICAgICAgICAgICAgZGVjaW1hbCA9PT0gJ2Fsd2F5cycgPyBkZWNpbWFsTGltaXQgOiAwLFxuICAgICAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LmRlY2ltYWxTZXBhcmF0b3IsXG4gICAgICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IsXG4gICAgICAgICAgICAgICAgbmF0aXZlRm9jdXNhYmxlRWxlbWVudCxcbiAgICAgICAgICAgICAgICBhbGxvd05lZ2F0aXZlLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGd1aWRlOiBmYWxzZSxcbiAgICAgICAgfSBhcyBUdWlUZXh0TWFza09wdGlvbnMgYXMgdW5rbm93biBhcyBUZXh0TWFza0NvbmZpZyk7XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKG1hc2tlZE1vbmV5VmFsdWVJc0VtcHR5KHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOYXRpdmVWYWx1ZU5vdEZpbmlzaGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjYXBwZWQgPSB0aGlzLmFic29sdXRlQ2FwSW5wdXRWYWx1ZSh2YWx1ZSk7XG5cbiAgICAgICAgaWYgKGNhcHBlZCA9PT0gbnVsbCB8fCBpc05hTihjYXBwZWQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKGNhcHBlZCk7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgY2FwcGVkICE9PVxuICAgICAgICAgICAgbWFza2VkTnVtYmVyU3RyaW5nVG9OdW1iZXIoXG4gICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC50aG91c2FuZFNlcGFyYXRvcixcbiAgICAgICAgICAgIClcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZVZhbHVlID0gdGhpcy5mb3JtYXR0ZWRWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoIVRVSV9ERUNJTUFMX1NZTUJPTFMuaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZGVjaW1hbCA9PT0gJ25ldmVyJykge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubmF0aXZlVmFsdWUuaW5jbHVkZXModGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcikpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLnNldENhcmV0QWZ0ZXJDb21tYSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Gb2N1c2VkKGZvY3VzZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGZvY3VzZWQpO1xuXG4gICAgICAgIGlmIChmb2N1c2VkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuYXRpdmVOdW1iZXJWYWx1ZSA9IHRoaXMubmF0aXZlTnVtYmVyVmFsdWU7XG5cbiAgICAgICAgaWYgKGlzTmFOKG5hdGl2ZU51bWJlclZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjbGFtcGVkID0gTWF0aC5taW4odGhpcy5tYXgsIE1hdGgubWF4KHRoaXMubWluLCBuYXRpdmVOdW1iZXJWYWx1ZSkpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoY2xhbXBlZCk7XG4gICAgICAgIHRoaXMubmF0aXZlVmFsdWUgPSB0aGlzLmZvcm1hdHRlZFZhbHVlO1xuICAgIH1cblxuICAgIG9uSG92ZXJlZChob3ZlcmVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlSG92ZXJlZChob3ZlcmVkKTtcbiAgICB9XG5cbiAgICBvblByZXNzZWQocHJlc3NlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZVByZXNzZWQocHJlc3NlZCk7XG4gICAgfVxuXG4gICAgZ2V0Rm9ybWF0dGVkVmFsdWUodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGFic1ZhbHVlID0gTWF0aC5hYnModmFsdWUpO1xuICAgICAgICBjb25zdCBoYXNGcmFjdGlvbiA9IGFic1ZhbHVlICUgMSA+IDA7XG4gICAgICAgIGxldCBsaW1pdCA9IHRoaXMuZGVjaW1hbCA9PT0gJ2Fsd2F5cycgfHwgaGFzRnJhY3Rpb24gPyB0aGlzLnByZWNpc2lvbiA6IDA7XG5cbiAgICAgICAgY29uc3QgZnJhY3Rpb24gPSBoYXNGcmFjdGlvbiA/IGdldEZyYWN0aW9uUGFydFBhZGRlZCh2YWx1ZSwgdGhpcy5wcmVjaXNpb24pIDogJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuZm9jdXNlZCAmJiB0aGlzLmRlY2ltYWwgIT09ICdhbHdheXMnKSB7XG4gICAgICAgICAgICBsaW1pdCA9IGZyYWN0aW9uLmxlbmd0aDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmb3JtYXROdW1iZXIoXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIGxpbWl0LFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LnRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQuemVyb1BhZGRpbmcsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNOYXRpdmVWYWx1ZU5vdEZpbmlzaGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBuYXRpdmVOdW1iZXJWYWx1ZSA9IHRoaXMubmF0aXZlTnVtYmVyVmFsdWU7XG5cbiAgICAgICAgcmV0dXJuIG5hdGl2ZU51bWJlclZhbHVlIDwgMFxuICAgICAgICAgICAgPyBuYXRpdmVOdW1iZXJWYWx1ZSA+IHRoaXMubWF4XG4gICAgICAgICAgICA6IG5hdGl2ZU51bWJlclZhbHVlIDwgdGhpcy5taW47XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZVZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQgPyB0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQudmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBzZXQgbmF0aXZlVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICBpZiAoIXRoaXMucHJpbWl0aXZlVGV4dGZpZWxkIHx8ICF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJpbWl0aXZlVGV4dGZpZWxkLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IG5hdGl2ZU51bWJlclZhbHVlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBtYXNrZWROdW1iZXJTdHJpbmdUb051bWJlcihcbiAgICAgICAgICAgIHRoaXMubmF0aXZlVmFsdWUsXG4gICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC5kZWNpbWFsU2VwYXJhdG9yLFxuICAgICAgICAgICAgdGhpcy5udW1iZXJGb3JtYXQudGhvdXNhbmRTZXBhcmF0b3IsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5uYXRpdmVWYWx1ZSA9ICcnO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWJzb2x1dGVDYXBJbnB1dFZhbHVlKGlucHV0VmFsdWU6IHN0cmluZyk6IG51bWJlciB8IG51bGwge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IG1hc2tlZE51bWJlclN0cmluZ1RvTnVtYmVyKFxuICAgICAgICAgICAgaW5wdXRWYWx1ZSxcbiAgICAgICAgICAgIHRoaXMubnVtYmVyRm9ybWF0LmRlY2ltYWxTZXBhcmF0b3IsXG4gICAgICAgICAgICB0aGlzLm51bWJlckZvcm1hdC50aG91c2FuZFNlcGFyYXRvcixcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY2FwcGVkID1cbiAgICAgICAgICAgIHZhbHVlIDwgMFxuICAgICAgICAgICAgICAgID8gTWF0aC5tYXgoTWF0aC5tYXgodGhpcy5taW4sIE51bWJlci5NSU5fU0FGRV9JTlRFR0VSKSwgdmFsdWUpXG4gICAgICAgICAgICAgICAgOiBNYXRoLm1pbih2YWx1ZSwgTWF0aC5taW4odGhpcy5tYXgsIE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSk7XG4gICAgICAgIGNvbnN0IGluZWxpZ2libGVWYWx1ZSA9IGlzTmFOKGNhcHBlZCkgfHwgY2FwcGVkIDwgdGhpcy5taW4gfHwgY2FwcGVkID4gdGhpcy5tYXg7XG5cbiAgICAgICAgcmV0dXJuIGluZWxpZ2libGVWYWx1ZSA/IG51bGwgOiBjYXBwZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDYXJldEFmdGVyQ29tbWEoKSB7XG4gICAgICAgIGlmICghdGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhZnRlckNvbW1hUG9zaXRpb24gPSB0aGlzLm5hdGl2ZVZhbHVlLmxlbmd0aCAtIHRoaXMucHJlY2lzaW9uO1xuXG4gICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZShcbiAgICAgICAgICAgIGFmdGVyQ29tbWFQb3NpdGlvbixcbiAgICAgICAgICAgIGFmdGVyQ29tbWFQb3NpdGlvbixcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
2
3
|
import { NgModule } from '@angular/core';
|
|
3
4
|
import { TuiMapperPipeModule } from '@taiga-ui/cdk';
|
|
4
5
|
import { TuiPrimitiveTextfieldModule, TuiTextfieldComponent, TuiTextfieldControllerModule, } from '@taiga-ui/core';
|
|
5
6
|
import { TuiValueAccessorModule } from '@taiga-ui/kit/directives';
|
|
7
|
+
import { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';
|
|
6
8
|
import { TextMaskModule } from 'angular2-text-mask';
|
|
7
9
|
import { TuiInputNumberComponent } from './input-number.component';
|
|
8
10
|
import { TuiInputNumberDirective } from './input-number.directive';
|
|
@@ -12,11 +14,13 @@ var TuiInputNumberModule = /** @class */ (function () {
|
|
|
12
14
|
TuiInputNumberModule = __decorate([
|
|
13
15
|
NgModule({
|
|
14
16
|
imports: [
|
|
17
|
+
CommonModule,
|
|
15
18
|
TextMaskModule,
|
|
16
19
|
TuiMapperPipeModule,
|
|
17
20
|
TuiPrimitiveTextfieldModule,
|
|
18
21
|
TuiTextfieldControllerModule,
|
|
19
22
|
TuiValueAccessorModule,
|
|
23
|
+
PolymorpheusModule,
|
|
20
24
|
],
|
|
21
25
|
declarations: [TuiInputNumberComponent, TuiInputNumberDirective],
|
|
22
26
|
exports: [TuiInputNumberComponent, TuiInputNumberDirective, TuiTextfieldComponent],
|
|
@@ -25,4 +29,4 @@ var TuiInputNumberModule = /** @class */ (function () {
|
|
|
25
29
|
return TuiInputNumberModule;
|
|
26
30
|
}());
|
|
27
31
|
export { TuiInputNumberModule };
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9raXQvY29tcG9uZW50cy9pbnB1dC1udW1iZXIvIiwic291cmNlcyI6WyJpbnB1dC1udW1iZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUNILDJCQUEyQixFQUMzQixxQkFBcUIsRUFDckIsNEJBQTRCLEdBQy9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBZWpFO0lBQUE7SUFBbUMsQ0FBQztJQUF2QixvQkFBb0I7UUFiaEMsUUFBUSxDQUFDO1lBQ04sT0FBTyxFQUFFO2dCQUNMLFlBQVk7Z0JBQ1osY0FBYztnQkFDZCxtQkFBbUI7Z0JBQ25CLDJCQUEyQjtnQkFDM0IsNEJBQTRCO2dCQUM1QixzQkFBc0I7Z0JBQ3RCLGtCQUFrQjthQUNyQjtZQUNELFlBQVksRUFBRSxDQUFDLHVCQUF1QixFQUFFLHVCQUF1QixDQUFDO1lBQ2hFLE9BQU8sRUFBRSxDQUFDLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixDQUFDO1NBQ3JGLENBQUM7T0FDVyxvQkFBb0IsQ0FBRztJQUFELDJCQUFDO0NBQUEsQUFBcEMsSUFBb0M7U0FBdkIsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpTWFwcGVyUGlwZU1vZHVsZX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICBUdWlUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtUdWlWYWx1ZUFjY2Vzc29yTW9kdWxlfSBmcm9tICdAdGFpZ2EtdWkva2l0L2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNNb2R1bGV9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge1RleHRNYXNrTW9kdWxlfSBmcm9tICdhbmd1bGFyMi10ZXh0LW1hc2snO1xuXG5pbXBvcnQge1R1aUlucHV0TnVtYmVyQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHtUdWlJbnB1dE51bWJlckRpcmVjdGl2ZX0gZnJvbSAnLi9pbnB1dC1udW1iZXIuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVGV4dE1hc2tNb2R1bGUsXG4gICAgICAgIFR1aU1hcHBlclBpcGVNb2R1bGUsXG4gICAgICAgIFR1aVByaW1pdGl2ZVRleHRmaWVsZE1vZHVsZSxcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29udHJvbGxlck1vZHVsZSxcbiAgICAgICAgVHVpVmFsdWVBY2Nlc3Nvck1vZHVsZSxcbiAgICAgICAgUG9seW1vcnBoZXVzTW9kdWxlLFxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpSW5wdXROdW1iZXJDb21wb25lbnQsIFR1aUlucHV0TnVtYmVyRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpSW5wdXROdW1iZXJDb21wb25lbnQsIFR1aUlucHV0TnVtYmVyRGlyZWN0aXZlLCBUdWlUZXh0ZmllbGRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dE51bWJlck1vZHVsZSB7fVxuIl19
|