@taiga-ui/kit 2.13.0 → 2.16.0-fixed
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 +4 -3
- package/abstract/slider/slider.d.ts +2 -2
- package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
- package/bundles/taiga-ui-kit-abstract.umd.js +28 -12
- 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-breadcrumbs.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-field-error.umd.js +17 -6
- package/bundles/taiga-ui-kit-components-field-error.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-field-error.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-field-error.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.js +86 -30
- package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.min.js +2 -2
- 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 +24 -24
- 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 +2 -2
- 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 +61 -32
- 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 +2 -2
- 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 +18 -17
- package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -0
- package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.js +28 -14
- 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-phone-international.umd.js +23 -7
- 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 +15 -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 +20 -15
- 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 +15 -10
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -3
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-time.umd.js +1 -0
- 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-multi-select.umd.js +20 -6
- 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-progress.umd.js +325 -0
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-components-progress.umd.min.js +16 -0
- package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -0
- package/bundles/taiga-ui-kit-components-radio.umd.js +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-range.umd.js +1 -2
- package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.js +1 -2
- package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +17 -9
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.js +16 -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 +2 -2
- package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.js +52 -26
- package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components.umd.js +12 -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-directives-dropdown-context.umd.js +390 -0
- package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js +16 -0
- package/bundles/taiga-ui-kit-directives-dropdown-context.umd.min.js.map +1 -0
- package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +1 -0
- package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-directives.umd.js +12 -4
- package/bundles/taiga-ui-kit-directives.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.js +4 -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-mask.umd.js +7 -7
- package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-mask.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-utils-mask.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-validators.umd.js +1 -0
- package/bundles/taiga-ui-kit-validators.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-validators.umd.min.js.map +1 -1
- package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
- package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
- package/components/field-error/field-error.component.d.ts +2 -0
- package/components/field-error/taiga-ui-kit-components-field-error.metadata.json +1 -1
- package/components/index.d.ts +1 -0
- package/components/input-count/index.d.ts +1 -0
- package/components/input-count/input-count-options.d.ts +19 -0
- package/components/input-count/input-count.component.d.ts +10 -3
- package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
- package/components/input-date/input-date.component.d.ts +7 -4
- 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 +8 -5
- 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 +10 -5
- package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
- package/components/input-number/input-number.component.d.ts +4 -2
- package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
- package/components/input-phone/input-phone.component.d.ts +4 -2
- 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 +5 -1
- 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 -2
- package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
- package/components/input-slider/input-slider.component.d.ts +4 -2
- package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
- package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
- package/components/input-time/taiga-ui-kit-components-input-time.metadata.json +1 -1
- package/components/multi-select/multi-select.component.d.ts +4 -2
- package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
- package/components/progress/index.d.ts +4 -0
- package/components/progress/package.json +13 -0
- package/components/progress/pipes/progress-color-segments.pipe.d.ts +8 -0
- package/components/progress/progress-bar/progress-bar.component.d.ts +5 -0
- package/components/progress/progress-label/progress-label.component.d.ts +2 -0
- package/components/progress/progress.module.d.ts +2 -0
- package/components/progress/taiga-ui-kit-components-progress.d.ts +4 -0
- package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -0
- package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
- package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
- package/components/select-option/taiga-ui-kit-components-select-option.metadata.json +1 -1
- package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
- package/components/tabs/tab/tab.component.d.ts +5 -2
- package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
- package/components/tag/taiga-ui-kit-components-tag.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/text-area/text-area.component.d.ts +2 -0
- package/components/toggle/index.d.ts +1 -0
- package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
- package/components/toggle/toggle-options.d.ts +16 -0
- package/components/toggle/toggle.component.d.ts +7 -4
- package/directives/dropdown-context/dropdown-context.directive.d.ts +28 -0
- package/directives/dropdown-context/dropdown-context.module.d.ts +2 -0
- package/directives/dropdown-context/index.d.ts +2 -0
- package/directives/dropdown-context/package.json +13 -0
- package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.d.ts +4 -0
- package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.metadata.json +1 -0
- package/directives/index.d.ts +1 -0
- package/directives/taiga-ui-kit-directives.metadata.json +1 -1
- package/esm2015/abstract/input-slider.js +14 -9
- package/esm2015/abstract/slider/slider.js +10 -6
- package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
- package/esm2015/components/checkbox/checkbox.component.js +1 -1
- package/esm2015/components/field-error/field-error.component.js +10 -2
- package/esm2015/components/field-error/field-error.module.js +2 -3
- package/esm2015/components/index.js +2 -1
- package/esm2015/components/input-count/index.js +2 -1
- package/esm2015/components/input-count/input-count-options.js +21 -0
- package/esm2015/components/input-count/input-count.component.js +49 -25
- package/esm2015/components/input-count/input-count.module.js +3 -1
- package/esm2015/components/input-date/input-date.component.js +18 -13
- package/esm2015/components/input-date/input-date.module.js +3 -2
- package/esm2015/components/input-date-range/input-date-range.component.js +25 -20
- package/esm2015/components/input-date-time/input-date-time.component.js +58 -38
- package/esm2015/components/input-file/file/file.component.js +2 -1
- package/esm2015/components/input-number/input-number.component.js +26 -16
- package/esm2015/components/input-phone/input-phone.component.js +13 -6
- package/esm2015/components/input-phone-international/input-phone-international.component.js +23 -8
- package/esm2015/components/input-phone-international/input-phone-international.module.js +5 -4
- package/esm2015/components/input-range/input-range.component.js +22 -16
- package/esm2015/components/input-range/input-range.module.js +2 -3
- package/esm2015/components/input-slider/input-slider.component.js +17 -11
- package/esm2015/components/input-slider/input-slider.module.js +2 -3
- package/esm2015/components/input-tag/input-tag.component.js +6 -4
- package/esm2015/components/input-time/input-time.component.js +2 -1
- package/esm2015/components/multi-select/multi-select.component.js +18 -8
- package/esm2015/components/progress/index.js +5 -0
- package/esm2015/components/progress/pipes/progress-color-segments.pipe.js +34 -0
- package/esm2015/components/progress/progress-bar/progress-bar.component.js +27 -0
- package/esm2015/components/progress/progress-label/progress-label.component.js +14 -0
- package/esm2015/components/progress/progress.module.js +25 -0
- package/esm2015/components/progress/taiga-ui-kit-components-progress.js +5 -0
- package/esm2015/components/radio/radio.component.js +1 -1
- package/esm2015/components/range/range.component.js +2 -2
- package/esm2015/components/range/range.module.js +2 -3
- package/esm2015/components/select-option/select-option.component.js +1 -1
- package/esm2015/components/slider/slider.component.js +2 -2
- package/esm2015/components/slider/slider.module.js +2 -3
- package/esm2015/components/tabs/tab/tab.component.js +19 -11
- package/esm2015/components/tabs/underline/underline.component.js +1 -1
- package/esm2015/components/tag/tag.component.js +1 -1
- package/esm2015/components/text-area/text-area.component.js +9 -3
- package/esm2015/components/toggle/index.js +2 -1
- package/esm2015/components/toggle/toggle-options.js +19 -0
- package/esm2015/components/toggle/toggle.component.js +19 -15
- package/esm2015/components/toggle/toggle.module.js +3 -1
- package/esm2015/directives/dropdown-context/dropdown-context.directive.js +137 -0
- package/esm2015/directives/dropdown-context/dropdown-context.module.js +15 -0
- package/esm2015/directives/dropdown-context/index.js +3 -0
- package/esm2015/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +5 -0
- package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +2 -1
- package/esm2015/directives/index.js +2 -1
- package/esm2015/interfaces/with-date-mask-pipe-config.js +1 -1
- package/esm2015/tokens/i18n.js +4 -1
- package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -3
- package/esm2015/utils/mask/create-auto-corrected-date-range-pipe.js +7 -7
- package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +3 -2
- package/esm2015/validators/unfinished.validator.js +2 -1
- package/esm5/abstract/input-slider.js +18 -9
- package/esm5/abstract/slider/slider.js +14 -6
- package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
- package/esm5/components/checkbox/checkbox.component.js +1 -1
- package/esm5/components/field-error/field-error.component.js +14 -2
- package/esm5/components/field-error/field-error.module.js +2 -3
- package/esm5/components/index.js +2 -1
- package/esm5/components/input-count/index.js +2 -1
- package/esm5/components/input-count/input-count-options.js +21 -0
- package/esm5/components/input-count/input-count.component.js +61 -29
- package/esm5/components/input-count/input-count.module.js +3 -1
- package/esm5/components/input-date/input-date.component.js +18 -17
- package/esm5/components/input-date/input-date.module.js +3 -2
- package/esm5/components/input-date-range/input-date-range.component.js +25 -24
- package/esm5/components/input-date-time/input-date-time.component.js +66 -37
- package/esm5/components/input-file/file/file.component.js +2 -1
- package/esm5/components/input-number/input-number.component.js +30 -16
- package/esm5/components/input-phone/input-phone.component.js +17 -6
- package/esm5/components/input-phone-international/input-phone-international.component.js +23 -8
- package/esm5/components/input-phone-international/input-phone-international.module.js +5 -4
- package/esm5/components/input-range/input-range.component.js +22 -16
- package/esm5/components/input-range/input-range.module.js +2 -3
- package/esm5/components/input-slider/input-slider.component.js +17 -11
- package/esm5/components/input-slider/input-slider.module.js +2 -3
- package/esm5/components/input-tag/input-tag.component.js +6 -4
- package/esm5/components/input-time/input-time.component.js +2 -1
- package/esm5/components/multi-select/multi-select.component.js +22 -8
- package/esm5/components/progress/index.js +5 -0
- package/esm5/components/progress/pipes/progress-color-segments.pipe.js +37 -0
- package/esm5/components/progress/progress-bar/progress-bar.component.js +28 -0
- package/esm5/components/progress/progress-label/progress-label.component.js +17 -0
- package/esm5/components/progress/progress.module.js +28 -0
- package/esm5/components/progress/taiga-ui-kit-components-progress.js +5 -0
- package/esm5/components/radio/radio.component.js +1 -1
- package/esm5/components/range/range.component.js +2 -2
- package/esm5/components/range/range.module.js +2 -3
- package/esm5/components/select-option/select-option.component.js +1 -1
- package/esm5/components/slider/slider.component.js +2 -2
- package/esm5/components/slider/slider.module.js +2 -3
- package/esm5/components/tabs/tab/tab.component.js +19 -11
- package/esm5/components/tabs/underline/underline.component.js +1 -1
- package/esm5/components/tag/tag.component.js +1 -1
- package/esm5/components/text-area/text-area.component.js +17 -3
- package/esm5/components/toggle/index.js +2 -1
- package/esm5/components/toggle/toggle-options.js +21 -0
- package/esm5/components/toggle/toggle.component.js +27 -23
- package/esm5/components/toggle/toggle.module.js +3 -1
- package/esm5/directives/dropdown-context/dropdown-context.directive.js +153 -0
- package/esm5/directives/dropdown-context/dropdown-context.module.js +18 -0
- package/esm5/directives/dropdown-context/index.js +3 -0
- package/esm5/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +5 -0
- package/esm5/directives/dropdown-selection/dropdown-selection.directive.js +2 -1
- package/esm5/directives/index.js +2 -1
- package/esm5/interfaces/with-date-mask-pipe-config.js +1 -1
- package/esm5/tokens/i18n.js +4 -1
- package/esm5/utils/mask/create-auto-corrected-date-pipe.js +3 -3
- package/esm5/utils/mask/create-auto-corrected-date-range-pipe.js +7 -7
- package/esm5/utils/mask/create-auto-corrected-date-time-pipe.js +3 -2
- package/esm5/validators/unfinished.validator.js +2 -1
- package/fesm2015/taiga-ui-kit-abstract.js +21 -13
- package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
- package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
- package/fesm2015/taiga-ui-kit-components-field-error.js +11 -3
- package/fesm2015/taiga-ui-kit-components-field-error.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-count.js +71 -26
- package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js +24 -19
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js +56 -36
- package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js +18 -12
- package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-file.js +1 -0
- package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-number.js +25 -15
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js +26 -10
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js +12 -5
- package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +21 -16
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +16 -11
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -3
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-time.js +1 -0
- package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js +17 -7
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +93 -0
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -0
- package/fesm2015/taiga-ui-kit-components-radio.js +1 -1
- package/fesm2015/taiga-ui-kit-components-range.js +2 -3
- package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select-option.js +1 -1
- package/fesm2015/taiga-ui-kit-components-slider.js +2 -3
- package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +18 -10
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tag.js +1 -1
- package/fesm2015/taiga-ui-kit-components-text-area.js +8 -2
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-toggle.js +39 -16
- package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components.js +1 -0
- package/fesm2015/taiga-ui-kit-components.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +153 -0
- package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +1 -0
- package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +1 -0
- package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives.js +1 -0
- package/fesm2015/taiga-ui-kit-directives.js.map +1 -1
- package/fesm2015/taiga-ui-kit-tokens.js +4 -1
- package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-mask.js +8 -8
- package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
- package/fesm2015/taiga-ui-kit-validators.js +1 -0
- package/fesm2015/taiga-ui-kit-validators.js.map +1 -1
- package/fesm5/taiga-ui-kit-abstract.js +29 -13
- package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
- package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
- package/fesm5/taiga-ui-kit-components-field-error.js +15 -3
- package/fesm5/taiga-ui-kit-components-field-error.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-count.js +83 -30
- package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-range.js +24 -23
- package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-time.js +66 -37
- package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date.js +18 -16
- package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-file.js +1 -0
- package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-number.js +29 -15
- package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone-international.js +26 -10
- package/fesm5/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone.js +16 -5
- package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-range.js +21 -16
- package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-slider.js +16 -11
- package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-tag.js +5 -3
- package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-time.js +1 -0
- package/fesm5/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-multi-select.js +21 -7
- package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-progress.js +103 -0
- package/fesm5/taiga-ui-kit-components-progress.js.map +1 -0
- package/fesm5/taiga-ui-kit-components-radio.js +1 -1
- package/fesm5/taiga-ui-kit-components-range.js +2 -3
- package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-select-option.js +1 -1
- package/fesm5/taiga-ui-kit-components-slider.js +2 -3
- package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-tabs.js +18 -10
- package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-tag.js +1 -1
- package/fesm5/taiga-ui-kit-components-text-area.js +16 -2
- package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-toggle.js +49 -24
- package/fesm5/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm5/taiga-ui-kit-components.js +1 -0
- package/fesm5/taiga-ui-kit-components.js.map +1 -1
- package/fesm5/taiga-ui-kit-directives-dropdown-context.js +172 -0
- package/fesm5/taiga-ui-kit-directives-dropdown-context.js.map +1 -0
- package/fesm5/taiga-ui-kit-directives-dropdown-selection.js +1 -0
- package/fesm5/taiga-ui-kit-directives-dropdown-selection.js.map +1 -1
- package/fesm5/taiga-ui-kit-directives.js +1 -0
- package/fesm5/taiga-ui-kit-directives.js.map +1 -1
- package/fesm5/taiga-ui-kit-tokens.js +4 -1
- package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm5/taiga-ui-kit-utils-mask.js +8 -8
- package/fesm5/taiga-ui-kit-utils-mask.js.map +1 -1
- package/fesm5/taiga-ui-kit-validators.js +1 -0
- package/fesm5/taiga-ui-kit-validators.js.map +1 -1
- package/interfaces/with-date-mask-pipe-config.d.ts +4 -1
- package/package.json +4 -4
- package/tokens/i18n.d.ts +2 -0
- package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
- package/utils/mask/create-auto-corrected-date-pipe.d.ts +3 -4
- package/utils/mask/create-auto-corrected-date-range-pipe.d.ts +2 -3
- package/utils/mask/create-auto-corrected-date-time-pipe.d.ts +2 -3
- package/utils/mask/taiga-ui-kit-utils-mask.metadata.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-progress.js","sources":["ng://@taiga-ui/kit/components/progress/pipes/progress-color-segments.pipe.ts","ng://@taiga-ui/kit/components/progress/progress-bar/progress-bar.component.ts","ng://@taiga-ui/kit/components/progress/progress-label/progress-label.component.ts","ng://@taiga-ui/kit/components/progress/progress.module.ts","ng://@taiga-ui/kit/components/progress/taiga-ui-kit-components-progress.ts"],"sourcesContent":["import {ElementRef, Inject, Pipe, PipeTransform} from '@angular/core';\nimport {USER_AGENT} from '@ng-web-apis/common';\nimport {CHROMIUM_EDGE_START_VERSION, isEdgeOlderThan, isIE} from '@taiga-ui/cdk';\n\n@Pipe({\n name: 'tuiProgressColorSegments',\n})\nexport class TuiProgressColorSegmentsPipe implements PipeTransform {\n private readonly isOldBrowsers =\n isEdgeOlderThan(CHROMIUM_EDGE_START_VERSION, this.userAgent) ||\n isIE(this.userAgent);\n\n constructor(\n @Inject(USER_AGENT) private readonly userAgent: string,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n ) {}\n\n transform(colors: string[]): string {\n if (this.isOldBrowsers) {\n return colors[0];\n }\n\n const elementWidth = this.elementRef.nativeElement.offsetWidth;\n const segmentWidth = Math.ceil(elementWidth / colors.length);\n const colorsString = colors.reduce(\n (acc, color, i) =>\n `${acc}, ${color} ${i * segmentWidth}px ${(i + 1) * segmentWidth}px`,\n '',\n );\n\n return `linear-gradient(to right ${colorsString})`;\n }\n}\n","import {ChangeDetectionStrategy, Component, HostBinding, Input} from '@angular/core';\nimport {tuiDefaultProp} from '@taiga-ui/cdk';\nimport {TuiSizeS} from '@taiga-ui/core';\n\n@Component({\n selector: 'progress[tuiProgressBar]',\n template: '',\n styleUrls: ['./progress-bar.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressBarComponent {\n @Input()\n @HostBinding('style.--tui-progress-color')\n color?: string;\n\n @Input()\n @HostBinding('attr.data-size')\n @tuiDefaultProp()\n size: TuiSizeS = 'm';\n}\n","import {ChangeDetectionStrategy, Component} from '@angular/core';\n\n@Component({\n selector: 'label[tuiProgressLabel]',\n templateUrl: './progress-label.template.html',\n styleUrls: ['./progress-label.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiProgressLabelComponent {}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiProgressColorSegmentsPipe} from './pipes/progress-color-segments.pipe';\nimport {TuiProgressBarComponent} from './progress-bar/progress-bar.component';\nimport {TuiProgressLabelComponent} from './progress-label/progress-label.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [\n TuiProgressBarComponent,\n TuiProgressLabelComponent,\n TuiProgressColorSegmentsPipe,\n ],\n exports: [\n TuiProgressBarComponent,\n TuiProgressLabelComponent,\n TuiProgressColorSegmentsPipe,\n ],\n})\nexport class TuiProgressModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;IAYI,sCACyC,SAAiB,EACjB,UAAmC;QADnC,cAAS,GAAT,SAAS,CAAQ;QACjB,eAAU,GAAV,UAAU,CAAyB;QAN3D,kBAAa,GAC1B,eAAe,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC;YAC5D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAKrB;IAEJ,gDAAS,GAAT,UAAU,MAAgB;QACtB,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,IAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;QAC/D,IAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAC9B,UAAC,GAAG,EAAE,KAAK,EAAE,CAAC;YACV,OAAG,GAAG,UAAK,KAAK,SAAI,CAAC,GAAG,YAAY,WAAM,CAAC,CAAC,GAAG,CAAC,IAAI,YAAY,OAAI;SAAA,EACxE,EAAE,CACL,CAAC;QAEF,OAAO,8BAA4B,YAAY,MAAG,CAAC;KACtD;;6CAlBI,MAAM,SAAC,UAAU;gBAC+B,UAAU,uBAA1D,MAAM,SAAC,UAAU;;IAPb,4BAA4B;QAHxC,IAAI,CAAC;YACF,IAAI,EAAE,0BAA0B;SACnC,CAAC;QAOO,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;QAClB,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;OAPd,4BAA4B,CAyBxC;IAAD,mCAAC;CAzBD;;;ICGA;QAQI,SAAI,GAAa,GAAG,CAAC;KACxB;IANG;QAFC,KAAK,EAAE;QACP,WAAW,CAAC,4BAA4B,CAAC;0DAC3B;IAKf;QAHC,KAAK,EAAE;QACP,WAAW,CAAC,gBAAgB,CAAC;QAC7B,cAAc,EAAE;yDACI;IARZ,uBAAuB;QANnC,SAAS,CAAC;YACP,QAAQ,EAAE,0BAA0B;YACpC,QAAQ,EAAE,EAAE;YAEZ,eAAe,EAAE,uBAAuB,CAAC,MAAM;;SAClD,CAAC;OACW,uBAAuB,CASnC;IAAD,8BAAC;CATD;;;ICFA;KAAyC;IAA5B,yBAAyB;QANrC,SAAS,CAAC;YACP,QAAQ,EAAE,yBAAyB;YACnC,2HAA6C;YAE7C,eAAe,EAAE,uBAAuB,CAAC,MAAM;;SAClD,CAAC;OACW,yBAAyB,CAAG;IAAD,gCAAC;CAAzC;;;ICWA;KAAiC;IAApB,iBAAiB;QAb7B,QAAQ,CAAC;YACN,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,YAAY,EAAE;gBACV,uBAAuB;gBACvB,yBAAyB;gBACzB,4BAA4B;aAC/B;YACD,OAAO,EAAE;gBACL,uBAAuB;gBACvB,yBAAyB;gBACzB,4BAA4B;aAC/B;SACJ,CAAC;OACW,iBAAiB,CAAG;IAAD,wBAAC;CAAjC;;ACnBA;;;;;;"}
|
|
@@ -159,7 +159,7 @@ var TuiRadioComponent = /** @class */ (function (_super) {
|
|
|
159
159
|
},
|
|
160
160
|
],
|
|
161
161
|
animations: [tuiScaleIn],
|
|
162
|
-
styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0;border-radius:100%}:host[data-tui-host-size='m']{width:1rem;height:1rem}:host[data-tui-host-size='l']{width:1.5rem;height:1.5rem}:host._readonly{pointer-events:none}.mark{position:absolute;background-color:currentColor;border-radius:100%}:host[data-tui-host-size='m'] .mark{margin:.25rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .mark{margin:.4375rem;width:.625rem;height:.625rem}.native{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.native:-webkit-autofill,.native:-webkit-autofill:focus,.native:-webkit-autofill:hover{border-radius:inherit;-webkit-text-fill-color:
|
|
162
|
+
styles: [":host{font:var(--tui-font-text-s);color:var(--tui-text-01);position:relative;display:block;flex-shrink:0;border-radius:100%}:host[data-tui-host-size='m']{width:1rem;height:1rem}:host[data-tui-host-size='l']{width:1.5rem;height:1.5rem}:host._readonly{pointer-events:none}.mark{position:absolute;background-color:currentColor;border-radius:100%}:host[data-tui-host-size='m'] .mark{margin:.25rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .mark{margin:.4375rem;width:.625rem;height:.625rem}.native{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.native:-webkit-autofill,.native:-webkit-autofill:focus,.native:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host._disabled .native{cursor:default}"]
|
|
163
163
|
}),
|
|
164
164
|
__param(0, Optional()),
|
|
165
165
|
__param(0, Self()),
|
|
@@ -7,7 +7,7 @@ import { DOT_WIDTH, AbstractTuiSlider } from '@taiga-ui/kit/abstract';
|
|
|
7
7
|
import { TUI_FLOATING_PRECISION } from '@taiga-ui/kit/constants';
|
|
8
8
|
import { TUI_FROM_TO_TEXTS } from '@taiga-ui/kit/tokens';
|
|
9
9
|
import { Observable } from 'rxjs';
|
|
10
|
-
import {
|
|
10
|
+
import { TuiFormatNumberPipeModule } from '@taiga-ui/core';
|
|
11
11
|
|
|
12
12
|
// @dynamic
|
|
13
13
|
var TuiRangeComponent = /** @class */ (function (_super) {
|
|
@@ -94,7 +94,7 @@ var TuiRangeComponent = /** @class */ (function (_super) {
|
|
|
94
94
|
TuiRangeComponent = TuiRangeComponent_1 = __decorate([
|
|
95
95
|
Component({
|
|
96
96
|
selector: 'tui-range',
|
|
97
|
-
template: "<div\n class=\"event-catcher\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n>\n <div class=\"wrapper\">\n <div *ngIf=\"segmented\" class=\"segments\">\n <span\n *tuiRepeatTimes=\"let segmentIndex of segments + 1\"\n class=\"segment\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\" class=\"number\">\n {{getSegmentPrefix(segmentIndex, fromToText)}}\n {{getSegmentLabel(segmentIndex) | tuiFormatNumber}}\n <span *ngIf=\"
|
|
97
|
+
template: "<div\n class=\"event-catcher\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n>\n <div class=\"wrapper\">\n <div *ngIf=\"segmented\" class=\"segments\">\n <span\n *tuiRepeatTimes=\"let segmentIndex of segments + 1\"\n class=\"segment\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\" class=\"number\">\n {{getSegmentPrefix(segmentIndex, fromToText)}}\n {{getSegmentLabel(segmentIndex) | tuiFormatNumber}}\n <span *ngIf=\"pluralizeMap\">\n {{getSegmentLabel(segmentIndex) | i18nPlural:\n pluralizeMap}}\n </span>\n </span>\n </span>\n </div>\n <div\n class=\"bar\"\n automation-id=\"tui-slider__bar\"\n [style.left.%]=\"left\"\n [style.right.%]=\"right\"\n >\n <div\n #dotLeft\n class=\"dot\"\n automation-id=\"tui-slider__left\"\n [class.dot_focus-visible]=\"focusVisibleLeft && computedFocused\"\n [tuiFocusable]=\"isLeftFocusable\"\n (tuiFocusVisibleChange)=\"onLeftFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(false)\"\n (keydown.arrowDown.prevent)=\"decrement(false)\"\n (keydown.arrowRight.prevent)=\"increment(false)\"\n (keydown.arrowUp.prevent)=\"increment(false)\"\n ></div>\n <div\n #dotRight\n class=\"dot\"\n automation-id=\"tui-slider__right\"\n [class.dot_focus-visible]=\"focusVisibleRight && computedFocused\"\n [tuiFocusable]=\"isRightFocusable\"\n (tuiFocusVisibleChange)=\"onRightFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(true)\"\n (keydown.arrowDown.prevent)=\"decrement(true)\"\n (keydown.arrowRight.prevent)=\"increment(true)\"\n (keydown.arrowUp.prevent)=\"increment(true)\"\n ></div>\n </div>\n </div>\n</div>\n",
|
|
98
98
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
99
99
|
providers: [
|
|
100
100
|
{
|
|
@@ -126,7 +126,6 @@ var TuiRangeModule = /** @class */ (function () {
|
|
|
126
126
|
TuiFocusableModule,
|
|
127
127
|
TuiActiveZoneModule,
|
|
128
128
|
TuiFocusVisibleModule,
|
|
129
|
-
TuiPluralizePipeModule,
|
|
130
129
|
TuiFormatNumberPipeModule,
|
|
131
130
|
],
|
|
132
131
|
declarations: [TuiRangeComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-range.js","sources":["ng://@taiga-ui/kit/components/range/range.component.ts","ng://@taiga-ui/kit/components/range/range.module.ts","ng://@taiga-ui/kit/components/range/taiga-ui-kit-components-range.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n Inject,\n Optional,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n isNativeFocusedIn,\n round,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiSlider, DOT_WIDTH} from '@taiga-ui/kit/abstract';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-range',\n templateUrl: '../../abstract/slider/slider.common.template.html',\n styleUrls: ['../../abstract/slider/slider.common.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRangeComponent),\n },\n ],\n})\nexport class TuiRangeComponent\n extends AbstractTuiSlider<[number, number]>\n implements TuiFocusableElementAccessor {\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_FROM_TO_TEXTS) fromToTexts$: Observable<[string, string]>,\n ) {\n super(control, changeDetectorRef, documentRef, fromToTexts$);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n if (this.computedDisabled || !this.dotLeft || !this.dotRight) {\n return null;\n }\n\n return this.isLeftFocusable\n ? this.dotLeft.nativeElement\n : this.dotRight.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n get left(): number {\n return 100 * this.getFractionFromValue(this.value[0]);\n }\n\n get right(): number {\n return 100 - 100 * this.getFractionFromValue(this.value[1]);\n }\n\n protected getFallbackValue(): [number, number] {\n return [0, 0];\n }\n\n protected processStep(increment: boolean, right: boolean) {\n const fraction = this.getFractionFromValue(right ? this.value[1] : this.value[0]);\n const step = this.computedStep;\n const value = this.getValueFromFraction(\n increment ? fraction + step : fraction - step,\n );\n\n this.processValue(value, right);\n }\n\n protected processValue(value: number, right: boolean) {\n const guardedValue = this.valueGuard(value);\n\n if (right === true) {\n this.updateEnd(guardedValue);\n } else {\n this.updateStart(guardedValue);\n }\n }\n\n protected getCalibratedFractionFromEvents(\n rect: ClientRect,\n clientX: number,\n isMouseDownRight: boolean,\n ): number {\n const value =\n clientX -\n rect.left -\n DOT_WIDTH[this.size] / 2 -\n (isMouseDownRight ? DOT_WIDTH[this.size] : 0);\n const total = rect.width - 2 * DOT_WIDTH[this.size];\n\n return round(value / total, TUI_FLOATING_PRECISION);\n }\n\n private updateStart(value: number) {\n this.updateValue([Math.min(value, this.value[1]), this.value[1]]);\n }\n\n private updateEnd(value: number) {\n this.updateValue([this.value[0], Math.max(value, this.value[0])]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiActiveZoneModule,\n TuiFocusableModule,\n TuiFocusVisibleModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiFormatNumberPipeModule
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-range.js","sources":["ng://@taiga-ui/kit/components/range/range.component.ts","ng://@taiga-ui/kit/components/range/range.module.ts","ng://@taiga-ui/kit/components/range/taiga-ui-kit-components-range.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n Inject,\n Optional,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n isNativeFocusedIn,\n round,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiSlider, DOT_WIDTH} from '@taiga-ui/kit/abstract';\nimport {TUI_FLOATING_PRECISION} from '@taiga-ui/kit/constants';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-range',\n templateUrl: '../../abstract/slider/slider.common.template.html',\n styleUrls: ['../../abstract/slider/slider.common.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiRangeComponent),\n },\n ],\n})\nexport class TuiRangeComponent\n extends AbstractTuiSlider<[number, number]>\n implements TuiFocusableElementAccessor {\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_FROM_TO_TEXTS) fromToTexts$: Observable<[string, string]>,\n ) {\n super(control, changeDetectorRef, documentRef, fromToTexts$);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n if (this.computedDisabled || !this.dotLeft || !this.dotRight) {\n return null;\n }\n\n return this.isLeftFocusable\n ? this.dotLeft.nativeElement\n : this.dotRight.nativeElement;\n }\n\n get focused(): boolean {\n return isNativeFocusedIn(this.elementRef.nativeElement);\n }\n\n get left(): number {\n return 100 * this.getFractionFromValue(this.value[0]);\n }\n\n get right(): number {\n return 100 - 100 * this.getFractionFromValue(this.value[1]);\n }\n\n protected getFallbackValue(): [number, number] {\n return [0, 0];\n }\n\n protected processStep(increment: boolean, right: boolean) {\n const fraction = this.getFractionFromValue(right ? this.value[1] : this.value[0]);\n const step = this.computedStep;\n const value = this.getValueFromFraction(\n increment ? fraction + step : fraction - step,\n );\n\n this.processValue(value, right);\n }\n\n protected processValue(value: number, right: boolean) {\n const guardedValue = this.valueGuard(value);\n\n if (right === true) {\n this.updateEnd(guardedValue);\n } else {\n this.updateStart(guardedValue);\n }\n }\n\n protected getCalibratedFractionFromEvents(\n rect: ClientRect,\n clientX: number,\n isMouseDownRight: boolean,\n ): number {\n const value =\n clientX -\n rect.left -\n DOT_WIDTH[this.size] / 2 -\n (isMouseDownRight ? DOT_WIDTH[this.size] : 0);\n const total = rect.width - 2 * DOT_WIDTH[this.size];\n\n return round(value / total, TUI_FLOATING_PRECISION);\n }\n\n private updateStart(value: number) {\n this.updateValue([Math.min(value, this.value[1]), this.value[1]]);\n }\n\n private updateEnd(value: number) {\n this.updateValue([this.value[0], Math.max(value, this.value[0])]);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiActiveZoneModule,\n TuiFocusableModule,\n TuiFocusVisibleModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiFormatNumberPipeModule} from '@taiga-ui/core';\nimport {TuiRangeComponent} from './range.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiRepeatTimesModule,\n TuiFocusableModule,\n TuiActiveZoneModule,\n TuiFocusVisibleModule,\n TuiFormatNumberPipeModule,\n ],\n declarations: [TuiRangeComponent],\n exports: [TuiRangeComponent],\n})\nexport class TuiRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ var TuiSelectOptionComponent = /** @class */ (function () {
|
|
|
43
43
|
selector: 'tui-select-option',
|
|
44
44
|
template: "<ng-container *ngTemplateOutlet=\"context.$implicit\"></ng-container>\n<tui-svg\n *ngIf=\"selected$ | async else dummy\"\n automation-id=\"tui-select-option__checkmark\"\n class=\"checkmark\"\n src=\"tuiIconCheckLarge\"\n [tuiScrollIntoView]=\"true\"\n></tui-svg>\n<ng-template #dummy>\n <span class=\"dummy\"></span>\n</ng-template>\n",
|
|
45
45
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
46
|
-
styles: [":host{display:flex;flex:1;align-items:center;max-width:100
|
|
46
|
+
styles: [":host{display:flex;flex:1;align-items:center;max-width:100%}.checkmark{margin:0 -.375rem 0 auto;border-left:5px solid transparent}.dummy{width:1.5rem}"]
|
|
47
47
|
}),
|
|
48
48
|
__param(0, Inject(POLYMORPHEUS_CONTEXT)),
|
|
49
49
|
__param(1, Inject(TUI_DATA_LIST_HOST)),
|
|
@@ -6,7 +6,7 @@ import { isNativeFocused, TUI_FOCUSABLE_ITEM_ACCESSOR, TuiRepeatTimesModule, Tui
|
|
|
6
6
|
import { AbstractTuiSlider } from '@taiga-ui/kit/abstract';
|
|
7
7
|
import { TUI_FROM_TO_TEXTS } from '@taiga-ui/kit/tokens';
|
|
8
8
|
import { Observable } from 'rxjs';
|
|
9
|
-
import {
|
|
9
|
+
import { TuiFormatNumberPipeModule } from '@taiga-ui/core';
|
|
10
10
|
|
|
11
11
|
// @dynamic
|
|
12
12
|
var TuiSliderComponent = /** @class */ (function (_super) {
|
|
@@ -65,7 +65,7 @@ var TuiSliderComponent = /** @class */ (function (_super) {
|
|
|
65
65
|
TuiSliderComponent = TuiSliderComponent_1 = __decorate([
|
|
66
66
|
Component({
|
|
67
67
|
selector: 'tui-slider',
|
|
68
|
-
template: "<div\n class=\"event-catcher\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n>\n <div class=\"wrapper\">\n <div *ngIf=\"segmented\" class=\"segments\">\n <span\n *tuiRepeatTimes=\"let segmentIndex of segments + 1\"\n class=\"segment\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\" class=\"number\">\n {{getSegmentPrefix(segmentIndex, fromToText)}}\n {{getSegmentLabel(segmentIndex) | tuiFormatNumber}}\n <span *ngIf=\"
|
|
68
|
+
template: "<div\n class=\"event-catcher\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n>\n <div class=\"wrapper\">\n <div *ngIf=\"segmented\" class=\"segments\">\n <span\n *tuiRepeatTimes=\"let segmentIndex of segments + 1\"\n class=\"segment\"\n automation-id=\"tui-slider__segment\"\n >\n <span *ngIf=\"fromToTexts$ | async as fromToText\" class=\"number\">\n {{getSegmentPrefix(segmentIndex, fromToText)}}\n {{getSegmentLabel(segmentIndex) | tuiFormatNumber}}\n <span *ngIf=\"pluralizeMap\">\n {{getSegmentLabel(segmentIndex) | i18nPlural:\n pluralizeMap}}\n </span>\n </span>\n </span>\n </div>\n <div\n class=\"bar\"\n automation-id=\"tui-slider__bar\"\n [style.left.%]=\"left\"\n [style.right.%]=\"right\"\n >\n <div\n #dotLeft\n class=\"dot\"\n automation-id=\"tui-slider__left\"\n [class.dot_focus-visible]=\"focusVisibleLeft && computedFocused\"\n [tuiFocusable]=\"isLeftFocusable\"\n (tuiFocusVisibleChange)=\"onLeftFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(false)\"\n (keydown.arrowDown.prevent)=\"decrement(false)\"\n (keydown.arrowRight.prevent)=\"increment(false)\"\n (keydown.arrowUp.prevent)=\"increment(false)\"\n ></div>\n <div\n #dotRight\n class=\"dot\"\n automation-id=\"tui-slider__right\"\n [class.dot_focus-visible]=\"focusVisibleRight && computedFocused\"\n [tuiFocusable]=\"isRightFocusable\"\n (tuiFocusVisibleChange)=\"onRightFocusVisible($event)\"\n (keydown.arrowLeft.prevent)=\"decrement(true)\"\n (keydown.arrowDown.prevent)=\"decrement(true)\"\n (keydown.arrowRight.prevent)=\"increment(true)\"\n (keydown.arrowUp.prevent)=\"increment(true)\"\n ></div>\n </div>\n </div>\n</div>\n",
|
|
69
69
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
70
70
|
providers: [
|
|
71
71
|
{
|
|
@@ -96,7 +96,6 @@ var TuiSliderModule = /** @class */ (function () {
|
|
|
96
96
|
TuiFocusableModule,
|
|
97
97
|
TuiFocusVisibleModule,
|
|
98
98
|
TuiActiveZoneModule,
|
|
99
|
-
TuiPluralizePipeModule,
|
|
100
99
|
TuiFormatNumberPipeModule,
|
|
101
100
|
],
|
|
102
101
|
declarations: [TuiSliderComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-slider.js","sources":["ng://@taiga-ui/kit/components/slider/slider.component.ts","ng://@taiga-ui/kit/components/slider/slider.module.ts","ng://@taiga-ui/kit/components/slider/taiga-ui-kit-components-slider.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n Inject,\n Optional,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiSlider} from '@taiga-ui/kit/abstract';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-slider',\n templateUrl: '../../abstract/slider/slider.common.template.html',\n styleUrls: ['../../abstract/slider/slider.common.style.less', './slider.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiSliderComponent),\n },\n ],\n})\nexport class TuiSliderComponent\n extends AbstractTuiSlider<number>\n implements TuiFocusableElementAccessor {\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(TUI_FROM_TO_TEXTS) fromToTexts$: Observable<[string, string]>,\n ) {\n super(control, changeDetectorRef, documentRef, fromToTexts$);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.dotRight ? this.dotRight.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get left(): number {\n return 0;\n }\n\n get right(): number {\n return 100 - 100 * this.getFractionFromValue(this.value);\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n protected processStep(increment: boolean) {\n const fraction = this.getFractionFromValue(this.value);\n const step = this.computedStep;\n const value = this.getValueFromFraction(\n increment ? fraction + step : fraction - step,\n );\n\n this.processValue(value);\n }\n\n protected processValue(value: number) {\n this.updateValue(this.valueGuard(value));\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiActiveZoneModule,\n TuiFocusableModule,\n TuiFocusVisibleModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiFormatNumberPipeModule
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-slider.js","sources":["ng://@taiga-ui/kit/components/slider/slider.component.ts","ng://@taiga-ui/kit/components/slider/slider.module.ts","ng://@taiga-ui/kit/components/slider/taiga-ui-kit-components-slider.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n forwardRef,\n Inject,\n Optional,\n Self,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n isNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiFocusableElementAccessor,\n TuiNativeFocusableElement,\n} from '@taiga-ui/cdk';\nimport {AbstractTuiSlider} from '@taiga-ui/kit/abstract';\nimport {TUI_FROM_TO_TEXTS} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\n\n// @dynamic\n@Component({\n selector: 'tui-slider',\n templateUrl: '../../abstract/slider/slider.common.template.html',\n styleUrls: ['../../abstract/slider/slider.common.style.less', './slider.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiSliderComponent),\n },\n ],\n})\nexport class TuiSliderComponent\n extends AbstractTuiSlider<number>\n implements TuiFocusableElementAccessor {\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(DOCUMENT) documentRef: Document,\n @Inject(TUI_FROM_TO_TEXTS) fromToTexts$: Observable<[string, string]>,\n ) {\n super(control, changeDetectorRef, documentRef, fromToTexts$);\n }\n\n get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.dotRight ? this.dotRight.nativeElement : null;\n }\n\n get focused(): boolean {\n return isNativeFocused(this.nativeFocusableElement);\n }\n\n get left(): number {\n return 0;\n }\n\n get right(): number {\n return 100 - 100 * this.getFractionFromValue(this.value);\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n protected processStep(increment: boolean) {\n const fraction = this.getFractionFromValue(this.value);\n const step = this.computedStep;\n const value = this.getValueFromFraction(\n increment ? fraction + step : fraction - step,\n );\n\n this.processValue(value);\n }\n\n protected processValue(value: number) {\n this.updateValue(this.valueGuard(value));\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiActiveZoneModule,\n TuiFocusableModule,\n TuiFocusVisibleModule,\n TuiRepeatTimesModule,\n} from '@taiga-ui/cdk';\nimport {TuiFormatNumberPipeModule} from '@taiga-ui/core';\nimport {TuiSliderComponent} from './slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiRepeatTimesModule,\n TuiFocusableModule,\n TuiFocusVisibleModule,\n TuiActiveZoneModule,\n TuiFormatNumberPipeModule,\n ],\n declarations: [TuiSliderComponent],\n exports: [TuiSliderComponent],\n})\nexport class TuiSliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAqBA;;IAcY,sCAAyB;IAEjC,4BAII,OAAyB,EACE,iBAAoC,EAC7C,WAAqB,EACZ,YAA0C;eAErE,kBAAM,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,CAAC;KAC/D;2BAbQ,kBAAkB;IAe3B,sBAAI,sDAAsB;aAA1B;YACI,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;SAC7D;;;OAAA;IAED,sBAAI,uCAAO;aAAX;YACI,OAAO,eAAe,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;SACvD;;;OAAA;IAED,sBAAI,oCAAI;aAAR;YACI,OAAO,CAAC,CAAC;SACZ;;;OAAA;IAED,sBAAI,qCAAK;aAAT;YACI,OAAO,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC5D;;;OAAA;IAES,6CAAgB,GAA1B;QACI,OAAO,CAAC,CAAC;KACZ;IAES,wCAAW,GAArB,UAAsB,SAAkB;QACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvD,IAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;QAC/B,IAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CACnC,SAAS,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAChD,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KAC5B;IAES,yCAAY,GAAtB,UAAuB,KAAa;QAChC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5C;;;gBAxCY,SAAS,uBAHjB,QAAQ,YACR,IAAI,YACJ,MAAM,SAAC,SAAS;gBAE6B,iBAAiB,uBAA9D,MAAM,SAAC,iBAAiB;gBACM,QAAQ,uBAAtC,MAAM,SAAC,QAAQ;gBACyB,UAAU,uBAAlD,MAAM,SAAC,iBAAiB;;IAVpB,kBAAkB;QAZ9B,SAAS,CAAC;YACP,QAAQ,EAAE,YAAY;YACtB,u1EAAgE;YAEhE,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,2BAA2B;oBACpC,WAAW,EAAE,UAAU,CAAC,cAAM,OAAA,oBAAkB,GAAA,CAAC;iBACpD;aACJ;;SACJ,CAAC;QAKO,WAAA,QAAQ,EAAE,CAAA;QACV,WAAA,IAAI,EAAE,CAAA;QACN,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;QAEjB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;QACzB,WAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChB,WAAA,MAAM,CAAC,iBAAiB,CAAC,CAAA;OAVrB,kBAAkB,CAgD9B;IAAD,yBAAC;CAAA,CA/CW,iBAAiB;;;ICZ7B;KAA+B;IAAlB,eAAe;QAZ3B,QAAQ,CAAC;YACN,OAAO,EAAE;gBACL,YAAY;gBACZ,oBAAoB;gBACpB,kBAAkB;gBAClB,qBAAqB;gBACrB,mBAAmB;gBACnB,yBAAyB;aAC5B;YACD,YAAY,EAAE,CAAC,kBAAkB,CAAC;YAClC,OAAO,EAAE,CAAC,kBAAkB,CAAC;SAChC,CAAC;OACW,eAAe,CAAG;IAAD,sBAAC;CAA/B;;ACvBA;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __decorate, __param } from 'tslib';
|
|
2
2
|
import { TemplateRef, Inject, Directive, InjectionToken, ElementRef, Optional, HostBinding, Component, ChangeDetectionStrategy, EventEmitter, Renderer2, ChangeDetectorRef, Input, Output, ContentChildren, forwardRef, HostListener, ViewChild, NgZone, NgModule } from '@angular/core';
|
|
3
3
|
import { RouterLinkActive } from '@angular/router';
|
|
4
|
-
import { TuiDestroyService, TuiFocusVisibleService, identity, typedFromEvent, tuiCustomEvent, TUI_IS_IOS, TUI_IS_ANDROID, EMPTY_QUERY, itemsQueryListObservable, moveFocus, TuiResizeService, tuiDefaultProp, tuiPure,
|
|
4
|
+
import { TuiDestroyService, TuiFocusVisibleService, identity, typedFromEvent, tuiCustomEvent, isNativeFocused, setNativeFocused, TUI_IS_IOS, TUI_IS_ANDROID, EMPTY_QUERY, itemsQueryListObservable, moveFocus, TuiResizeService, tuiDefaultProp, tuiPure, getClosestFocusable, tuiZonefree, px, TuiFocusableModule } from '@taiga-ui/cdk';
|
|
5
5
|
import { TuiRouterLinkActiveService, MODE_PROVIDER, TUI_MODE, TuiHostedDropdownModule, TuiSvgModule } from '@taiga-ui/core';
|
|
6
6
|
import { TUI_MOBILE_AWARE, TUI_MORE_WORD } from '@taiga-ui/kit/tokens';
|
|
7
7
|
import { EMPTY, merge, Observable, ReplaySubject, of } from 'rxjs';
|
|
@@ -58,9 +58,10 @@ function tabActiveFactory(_a, documentRef, routerLinkActiveService, mutationObse
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
var TuiTabComponent = /** @class */ (function () {
|
|
61
|
-
function TuiTabComponent(routerLinkActive, mode$, event$, mobileAware, isIos, isAndroid, focusVisible$) {
|
|
61
|
+
function TuiTabComponent(routerLinkActive, elementRef, mode$, event$, mobileAware, isIos, isAndroid, focusVisible$) {
|
|
62
62
|
var _this = this;
|
|
63
63
|
this.routerLinkActive = routerLinkActive;
|
|
64
|
+
this.elementRef = elementRef;
|
|
64
65
|
this.mode$ = mode$;
|
|
65
66
|
this.event$ = event$;
|
|
66
67
|
this.focusVisible = false;
|
|
@@ -77,8 +78,14 @@ var TuiTabComponent = /** @class */ (function () {
|
|
|
77
78
|
enumerable: true,
|
|
78
79
|
configurable: true
|
|
79
80
|
});
|
|
81
|
+
TuiTabComponent.prototype.ngOnDestroy = function () {
|
|
82
|
+
if (isNativeFocused(this.elementRef.nativeElement)) {
|
|
83
|
+
setNativeFocused(this.elementRef.nativeElement, false);
|
|
84
|
+
}
|
|
85
|
+
};
|
|
80
86
|
TuiTabComponent.ctorParameters = function () { return [
|
|
81
87
|
{ type: RouterLinkActive, decorators: [{ type: Optional }, { type: Inject, args: [RouterLinkActive,] }] },
|
|
88
|
+
{ type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
|
|
82
89
|
{ type: Observable, decorators: [{ type: Inject, args: [TUI_MODE,] }] },
|
|
83
90
|
{ type: Observable, decorators: [{ type: Inject, args: [TUI_TAB_EVENT,] }] },
|
|
84
91
|
{ type: Boolean, decorators: [{ type: Inject, args: [TUI_MOBILE_AWARE,] }] },
|
|
@@ -108,16 +115,17 @@ var TuiTabComponent = /** @class */ (function () {
|
|
|
108
115
|
'($.data-mode.attr)': 'mode$',
|
|
109
116
|
type: 'button',
|
|
110
117
|
},
|
|
111
|
-
styles: [":host-context(._underline):hover{box-shadow:inset 0 -2px var(--tui-base-03)}:host{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:0 0;font-size:inherit;line-height:inherit;position:relative;display:flex;flex-shrink:0;height:100%;box-sizing:border-box;justify-content:space-between;align-items:center;white-space:nowrap;cursor:pointer;outline:0;text-decoration:none;color:inherit;transition-property:color,box-shadow,opacity}:host:not(:last-child){margin-right:1.5rem}:host:hover{color:var(--tui-text-01)}:host:disabled{opacity:var(--tui-disabled-opacity);pointer-events:none}:host:not([data-mode])._active{opacity:1;color:var(--tui-text-01);box-shadow:none}:host[data-mode=onDark]{color:rgba(255,255,255,.72)}:host[data-mode=onDark]._active,:host[data-mode=onDark]:hover{color:#fff}:host[data-mode=onDark]._focus-visible .highlight{background:var(--tui-clear-inverse);color:var(--tui-text-01)}:host[data-mode=onLight]{color:
|
|
118
|
+
styles: [":host-context(._underline):hover{box-shadow:inset 0 -2px var(--tui-base-03)}:host{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;border:0;background:0 0;font-size:inherit;line-height:inherit;position:relative;display:flex;flex-shrink:0;height:100%;box-sizing:border-box;justify-content:space-between;align-items:center;white-space:nowrap;cursor:pointer;outline:0;text-decoration:none;color:inherit;transition-property:color,box-shadow,opacity}:host:not(:last-child){margin-right:1.5rem}:host:hover{color:var(--tui-text-01)}:host:disabled{opacity:var(--tui-disabled-opacity);pointer-events:none}:host:not([data-mode])._active{opacity:1;color:var(--tui-text-01);box-shadow:none}:host[data-mode=onDark]{color:rgba(255,255,255,.72)}:host[data-mode=onDark]._active,:host[data-mode=onDark]:hover{color:#fff}:host[data-mode=onDark]._focus-visible .highlight{background:var(--tui-clear-inverse);color:var(--tui-text-01)}:host[data-mode=onLight]{color:var(--tui-text-02)}:host[data-mode=onLight]._active,:host[data-mode=onLight]:hover{color:var(--tui-text-01)}:host[data-mode=onLight]._focus-visible .highlight{background:var(--tui-text-01);color:#fff}:host._focus-visible .highlight{background:var(--tui-selection)}:host._android{transition-property:opacity;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;height:3rem;flex:1;flex-shrink:0;justify-content:center;margin:0;text-transform:uppercase;color:var(--tui-base-09);opacity:.5;font-size:.875rem;font-weight:500;letter-spacing:-.008125rem;font-family:-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',sans-serif}:host._android:hover{box-shadow:none}:host._android._active{opacity:1;color:var(--tui-base-09)}:host._android .highlight{width:auto}:host._ios{height:1.75rem;flex:1;flex-shrink:0;justify-content:center;margin:0;color:var(--tui-base-01);opacity:1;font-size:.8125rem;font-weight:500;letter-spacing:-.005rem;font-family:-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',sans-serif}:host._ios:hover{box-shadow:none}:host._ios._active{font-size:.875rem;font-weight:600;color:var(--tui-link)}:host._ios .highlight{width:auto}.highlight{display:inline-flex;width:100%;align-items:center;justify-content:inherit}.highlight ::ng-deep>*{flex-shrink:0}"]
|
|
112
119
|
}),
|
|
113
120
|
__param(0, Optional()),
|
|
114
121
|
__param(0, Inject(RouterLinkActive)),
|
|
115
|
-
__param(1, Inject(
|
|
116
|
-
__param(2, Inject(
|
|
117
|
-
__param(3, Inject(
|
|
118
|
-
__param(4, Inject(
|
|
119
|
-
__param(5, Inject(
|
|
120
|
-
__param(6, Inject(
|
|
122
|
+
__param(1, Inject(ElementRef)),
|
|
123
|
+
__param(2, Inject(TUI_MODE)),
|
|
124
|
+
__param(3, Inject(TUI_TAB_EVENT)),
|
|
125
|
+
__param(4, Inject(TUI_MOBILE_AWARE)),
|
|
126
|
+
__param(5, Inject(TUI_IS_IOS)),
|
|
127
|
+
__param(6, Inject(TUI_IS_ANDROID)),
|
|
128
|
+
__param(7, Inject(TuiFocusVisibleService))
|
|
121
129
|
], TuiTabComponent);
|
|
122
130
|
return TuiTabComponent;
|
|
123
131
|
}());
|
|
@@ -572,7 +580,7 @@ var TuiUnderlineComponent = /** @class */ (function () {
|
|
|
572
580
|
host: {
|
|
573
581
|
'($.data-mode.attr)': 'mode$',
|
|
574
582
|
},
|
|
575
|
-
styles: [":host{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;left:0;height:100%;color:var(--tui-primary);transform:scale(0);box-shadow:inset 0 -.1875rem 0 -.0625rem;transition-property:none;pointer-events:none}:host._ios{border-radius:.4375rem;background:var(--tui-base-01);box-shadow:0 .1875rem .0625rem rgba(0,0,0,.04),0 .1875rem .5rem rgba(0,0,0,.12)}:host._android{box-shadow:inset 0 -.1875rem var(--tui-link)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-mode=onLight]{color:var(--tui-text-
|
|
583
|
+
styles: [":host{transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;left:0;height:100%;color:var(--tui-primary);transform:scale(0);box-shadow:inset 0 -.1875rem 0 -.0625rem;transition-property:none;pointer-events:none}:host._ios{border-radius:.4375rem;background:var(--tui-base-01);box-shadow:0 .1875rem .0625rem rgba(0,0,0,.04),0 .1875rem .5rem rgba(0,0,0,.12)}:host._android{box-shadow:inset 0 -.1875rem var(--tui-link)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-mode=onLight]{color:var(--tui-text-02)}"]
|
|
576
584
|
}),
|
|
577
585
|
__param(0, Inject(ElementRef)),
|
|
578
586
|
__param(1, Inject(NgZone)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-tabs.js","sources":["ng://@taiga-ui/kit/components/tabs/tab.directive.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.providers.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.const.ts","ng://@taiga-ui/kit/components/tabs/tabs/tabs.component.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.providers.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.component.ts","ng://@taiga-ui/kit/components/tabs/underline/underline.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.module.ts","ng://@taiga-ui/kit/components/tabs/taiga-ui-kit-components-tabs.ts"],"sourcesContent":["import {Directive, Inject, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiTab]`,\n})\nexport class TuiTabDirective {\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<{}>) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Optional, Provider} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {\n identity,\n tuiCustomEvent,\n TuiDestroyService,\n TuiFocusVisibleService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiRouterLinkActiveService} from '@taiga-ui/core';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\nexport const TUI_TAB_EVENT = new InjectionToken<Observable<Event>>(\n 'Stream of tab activation events',\n);\nexport const TUI_TAB_PROVIDERS: Provider[] = [\n TuiDestroyService,\n TuiFocusVisibleService,\n TuiRouterLinkActiveService,\n {\n provide: TUI_TAB_EVENT,\n deps: [\n ElementRef,\n DOCUMENT,\n TuiRouterLinkActiveService,\n [new Optional(), MutationObserverService],\n [new Optional(), RouterLinkActive],\n ],\n useFactory: tabActiveFactory,\n },\n MODE_PROVIDER,\n];\n\nexport function tabActiveFactory(\n {nativeElement}: ElementRef<HTMLElement>,\n documentRef: Document,\n routerLinkActiveService: Observable<boolean>,\n mutationObserverService: MutationObserverService | null,\n routerLinkActive: RouterLinkActive | null,\n): Observable<unknown> {\n const mutationObserver =\n routerLinkActive && mutationObserverService\n ? mutationObserverService.pipe(filter(() => routerLinkActive.isActive))\n : EMPTY;\n\n return merge(\n mutationObserver,\n routerLinkActiveService.pipe(filter(identity)),\n nativeElement.matches('button') ? typedFromEvent(nativeElement, 'click') : EMPTY,\n ).pipe(\n map(() =>\n nativeElement.dispatchEvent(\n tuiCustomEvent(TUI_TAB_ACTIVATE, {bubbles: true}, documentRef),\n ),\n ),\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n Optional,\n} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {TUI_IS_ANDROID, TUI_IS_IOS, TuiFocusVisibleService} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {TUI_TAB_EVENT, TUI_TAB_PROVIDERS} from './tab.providers';\n\n@Component({\n selector: `a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]`,\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TAB_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n type: 'button',\n },\n})\nexport class TuiTabComponent {\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n private readonly routerLinkActive: RouterLinkActive | null,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TAB_EVENT) readonly event$: Observable<Event>,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return !!this.routerLinkActive && this.routerLinkActive.isActive;\n }\n}\n","export const TAB_ACTIVE_CLASS = '_active';\nexport const TAB_MARGIN = 24;\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n itemsQueryListObservable,\n moveFocus,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo} from 'rxjs/operators';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TUI_TAB_ACTIVATE} from '../tab/tab.providers';\nimport {TAB_ACTIVE_CLASS} from '../tabs.const';\n\n// TODO: remove in ivy compilation\nexport const OBSERVER_INIT = {\n childList: true,\n};\n\n// @dynamic\n@Component({\n selector: 'tui-tabs, nav[tuiTabs]',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-zero-scrollbar',\n },\n providers: [\n TuiDestroyService,\n TuiResizeService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: OBSERVER_INIT,\n },\n ],\n})\nexport class TuiTabsComponent implements AfterViewChecked {\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input('activeItemIndex')\n set activeItemIndexSetter(index: number) {\n this.activeItemIndex = index;\n this.scrollTo(this.tabs[index]);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @ContentChildren(forwardRef(() => TuiTabComponent))\n private readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n resize$.pipe(filter(() => this.underline)).subscribe(() => {\n changeDetectorRef.detectChanges();\n });\n }\n\n @tuiPure\n get refresh$(): Observable<boolean> {\n return itemsQueryListObservable(this.children).pipe(mapTo(true));\n }\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from(\n this.elementRef.nativeElement.querySelectorAll<HTMLElement>('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n ngAfterViewChecked() {\n const {tabs, activeElement} = this;\n\n tabs.forEach(nativeElement => {\n this.renderer.removeClass(nativeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(nativeElement, 'tabIndex', '-1');\n });\n\n if (activeElement) {\n this.renderer.addClass(activeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(activeElement, 'tabIndex', '0');\n }\n }\n\n @HostListener(`${TUI_TAB_ACTIVATE}.stop`, ['$event.target'])\n onActivate(element: HTMLElement) {\n const index = this.tabs.findIndex(tab => tab === element);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexSetter = index;\n this.activeItemIndexChange.emit(index);\n }\n\n @HostListener('keydown.arrowRight.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowLeft.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {tabs} = this;\n\n moveFocus(tabs.indexOf(current), tabs, step);\n }\n\n private scrollTo(element?: HTMLElement) {\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n const {nativeElement} = this.elementRef;\n\n if (offsetLeft < nativeElement.scrollLeft) {\n nativeElement.scrollLeft = offsetLeft;\n }\n\n if (\n offsetLeft + offsetWidth >\n nativeElement.scrollLeft + nativeElement.offsetWidth\n ) {\n nativeElement.scrollLeft =\n offsetLeft + offsetWidth - nativeElement.offsetWidth;\n }\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectorRef, ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {TuiDestroyService, TuiResizeService} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {debounceTime, filter, startWith, takeUntil, tap} from 'rxjs/operators';\n\nexport function tabsRefreshFactory(\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n destroy$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n changeDetectorRef: ChangeDetectorRef,\n): Observable<unknown> {\n return merge(\n resize$,\n mutations$.pipe(tap(() => changeDetectorRef.detectChanges())),\n ).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntil(destroy$),\n );\n}\n\n// TODO: remove in ivy compilation\nexport const MUTATION_CONFIG = {\n childList: true,\n subtree: true,\n};\nexport const TABS_REFRESH = new InjectionToken<Observable<unknown>>('Refresh stream');\nexport const TABS_PROVIDERS: Provider[] = [\n TuiResizeService,\n TuiDestroyService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: MUTATION_CONFIG,\n },\n {\n provide: TABS_REFRESH,\n deps: [\n TuiResizeService,\n MutationObserverService,\n TuiDestroyService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: tabsRefreshFactory,\n },\n];\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestFocusable,\n isNativeFocused,\n setNativeFocused,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\nimport {TuiTabDirective} from '../tab.directive';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TAB_MARGIN} from '../tabs.const';\nimport {TABS_PROVIDERS, TABS_REFRESH} from './tabs-with-more.providers';\n\n// @dynamic\n@Component({\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TABS_PROVIDERS,\n})\nexport class TuiTabsWithMoreComponent implements AfterViewInit {\n @Input()\n @tuiDefaultProp()\n moreContent: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = 0;\n\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @ContentChildren(TuiTabDirective, {read: TemplateRef})\n readonly items: QueryList<TemplateRef<{}>> = EMPTY_QUERY;\n\n open = false;\n\n private maxIndex = Infinity;\n\n @ViewChild(TuiTabComponent, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n constructor(\n @Inject(TABS_REFRESH) private readonly refresh$: Observable<unknown>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ChangeDetectorRef) private readonly changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from<HTMLElement>(\n this.elementRef.nativeElement.querySelectorAll('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n get isMoreFocusable(): boolean {\n return !!this.moreButton && isNativeFocused(this.moreButton.nativeElement);\n }\n\n get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset = this.itemsLimit - 1 > this.activeItemIndex ? 1 : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n ngAfterViewInit() {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n filter(maxIndex => this.maxIndex !== maxIndex),\n )\n .subscribe(maxIndex => {\n this.maxIndex = maxIndex;\n this.changeDetectorRef.detectChanges();\n });\n }\n\n onActiveItemIndexChange(activeItemIndex: number) {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n onClick(index: number) {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n onArrowRight(element: HTMLElement) {\n if (isNativeFocused(element)) {\n this.focusMore();\n }\n }\n\n onArrowLeft() {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n setNativeFocused(tabs[index]);\n\n if (isNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n onWrapperArrow(button: HTMLButtonElement, wrapper: HTMLElement, prev: boolean) {\n const target = getClosestFocusable(button, prev, wrapper);\n\n if (target) {\n setNativeFocused(target);\n }\n }\n\n private focusMore() {\n if (this.moreButton) {\n setNativeFocused(this.moreButton.nativeElement);\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {clientWidth} = this.elementRef.nativeElement;\n const activeWidth = tabs[activeItemIndex] ? tabs[activeItemIndex].scrollWidth : 0;\n const moreWidth = tabs[tabs.length - 1].scrollWidth;\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, tab) => acc + tab.scrollWidth, 0) +\n maxIndex * TAB_MARGIN -\n moreWidth;\n\n if (total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= tabs[maxIndex].scrollWidth + TAB_MARGIN;\n maxIndex--;\n\n const activeDisplaced = activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + TAB_MARGIN : 0;\n const currentWidth = total + activeOffset + moreWidth + TAB_MARGIN;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = this.maxIndex === maxIndex - 1 ? 1 : 0;\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return 0;\n }\n\n private updateActiveItemIndex(activeItemIndex: number) {\n if (this.activeItemIndex === activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n this.maxIndex = this.getMaxIndex();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {px, TUI_IS_ANDROID, TUI_IS_IOS, tuiDefaultProp, tuiZonefree} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {asCallable} from '@tinkoff/ng-event-plugins';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {debounceTime, map, mapTo, share, switchMap} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-underline',\n template: '',\n styleUrls: ['./underline.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiUnderlineComponent {\n @Input()\n @tuiDefaultProp()\n set element(element: HTMLElement | null) {\n this.element$.next(element);\n }\n\n @HostBinding('class._ios')\n readonly isIos = this.mobileAware && this.ios;\n\n @HostBinding('class._android')\n readonly isAndroid = this.mobileAware && this.android;\n\n private readonly element$ = new ReplaySubject<HTMLElement | null>(1);\n\n private readonly refresh$ = this.element$.pipe(\n switchMap(element =>\n element\n ? this.animationFrame$.pipe(mapTo(element), tuiZonefree(this.ngZone))\n : of(null),\n ),\n share(),\n );\n\n @HostListener('$.style.transitionProperty')\n readonly transition$ = asCallable(\n this.element$.pipe(\n map(element => element && 'all'),\n debounceTime(50),\n ),\n );\n\n @HostListener('$.style.transform')\n readonly transform$ = asCallable(\n this.refresh$.pipe(\n map(element =>\n element ? `translate3d(${px(element.offsetLeft)}, 0, 0)` : null,\n ),\n ),\n );\n\n @HostListener('$.style.width.px')\n readonly width$ = asCallable(\n this.refresh$.pipe(map(element => (element ? element.clientWidth : 0))),\n );\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MOBILE_AWARE) private readonly mobileAware: boolean,\n @Inject(TUI_IS_IOS) private readonly ios: boolean,\n @Inject(TUI_IS_ANDROID) private readonly android: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {\n nativeElement['$.style.transitionProperty'] = this.transition$;\n nativeElement['$.style.transform'] = this.transform$;\n nativeElement['$.style.width.px'] = this.width$;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiHostedDropdownModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTabDirective} from './tab.directive';\nimport {TuiTabComponent} from './tab/tab.component';\nimport {TuiTabsWithMoreComponent} from './tabs-with-more/tabs-with-more.component';\nimport {TuiTabsComponent} from './tabs/tabs.component';\nimport {TuiUnderlineComponent} from './underline/underline.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiFocusableModule,\n PolymorpheusModule,\n ],\n declarations: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiUnderlineComponent,\n TuiTabDirective,\n ],\n exports: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiTabDirective,\n ],\n})\nexport class TuiTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-tabs.js","sources":["ng://@taiga-ui/kit/components/tabs/tab.directive.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.providers.ts","ng://@taiga-ui/kit/components/tabs/tab/tab.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.const.ts","ng://@taiga-ui/kit/components/tabs/tabs/tabs.component.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.providers.ts","ng://@taiga-ui/kit/components/tabs/tabs-with-more/tabs-with-more.component.ts","ng://@taiga-ui/kit/components/tabs/underline/underline.component.ts","ng://@taiga-ui/kit/components/tabs/tabs.module.ts","ng://@taiga-ui/kit/components/tabs/taiga-ui-kit-components-tabs.ts"],"sourcesContent":["import {Directive, Inject, TemplateRef} from '@angular/core';\n\n@Directive({\n selector: `ng-template[tuiTab]`,\n})\nexport class TuiTabDirective {\n constructor(@Inject(TemplateRef) readonly template: TemplateRef<{}>) {}\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ElementRef, InjectionToken, Optional, Provider} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {\n identity,\n tuiCustomEvent,\n TuiDestroyService,\n TuiFocusVisibleService,\n typedFromEvent,\n} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TuiRouterLinkActiveService} from '@taiga-ui/core';\nimport {EMPTY, merge, Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\nexport const TUI_TAB_EVENT = new InjectionToken<Observable<Event>>(\n 'Stream of tab activation events',\n);\nexport const TUI_TAB_PROVIDERS: Provider[] = [\n TuiDestroyService,\n TuiFocusVisibleService,\n TuiRouterLinkActiveService,\n {\n provide: TUI_TAB_EVENT,\n deps: [\n ElementRef,\n DOCUMENT,\n TuiRouterLinkActiveService,\n [new Optional(), MutationObserverService],\n [new Optional(), RouterLinkActive],\n ],\n useFactory: tabActiveFactory,\n },\n MODE_PROVIDER,\n];\n\nexport function tabActiveFactory(\n {nativeElement}: ElementRef<HTMLElement>,\n documentRef: Document,\n routerLinkActiveService: Observable<boolean>,\n mutationObserverService: MutationObserverService | null,\n routerLinkActive: RouterLinkActive | null,\n): Observable<unknown> {\n const mutationObserver =\n routerLinkActive && mutationObserverService\n ? mutationObserverService.pipe(filter(() => routerLinkActive.isActive))\n : EMPTY;\n\n return merge(\n mutationObserver,\n routerLinkActiveService.pipe(filter(identity)),\n nativeElement.matches('button') ? typedFromEvent(nativeElement, 'click') : EMPTY,\n ).pipe(\n map(() =>\n nativeElement.dispatchEvent(\n tuiCustomEvent(TUI_TAB_ACTIVATE, {bubbles: true}, documentRef),\n ),\n ),\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Inject,\n OnDestroy,\n Optional,\n} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {\n isNativeFocused,\n setNativeFocused,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n TuiFocusVisibleService,\n} from '@taiga-ui/cdk';\nimport {TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {TUI_TAB_EVENT, TUI_TAB_PROVIDERS} from './tab.providers';\n\n@Component({\n selector: `a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]`,\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TAB_PROVIDERS,\n host: {\n '($.data-mode.attr)': 'mode$',\n type: 'button',\n },\n})\nexport class TuiTabComponent implements OnDestroy {\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @HostBinding('class._focus-visible')\n focusVisible = false;\n\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n private readonly routerLinkActive: RouterLinkActive | null,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n @Inject(TUI_TAB_EVENT) readonly event$: Observable<Event>,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TuiFocusVisibleService) focusVisible$: TuiFocusVisibleService,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n focusVisible$.subscribe(visible => {\n this.focusVisible = visible;\n });\n }\n\n @HostBinding('class._active')\n get isActive(): boolean {\n return !!this.routerLinkActive && this.routerLinkActive.isActive;\n }\n\n ngOnDestroy() {\n if (isNativeFocused(this.elementRef.nativeElement)) {\n setNativeFocused(this.elementRef.nativeElement, false);\n }\n }\n}\n","export const TAB_ACTIVE_CLASS = '_active';\nexport const TAB_MARGIN = 24;\n","import {\n AfterViewChecked,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n Output,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n itemsQueryListObservable,\n moveFocus,\n TUI_IS_ANDROID,\n TUI_IS_IOS,\n tuiDefaultProp,\n TuiDestroyService,\n tuiPure,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {Observable} from 'rxjs';\nimport {filter, mapTo} from 'rxjs/operators';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TUI_TAB_ACTIVATE} from '../tab/tab.providers';\nimport {TAB_ACTIVE_CLASS} from '../tabs.const';\n\n// TODO: remove in ivy compilation\nexport const OBSERVER_INIT = {\n childList: true,\n};\n\n// @dynamic\n@Component({\n selector: 'tui-tabs, nav[tuiTabs]',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-zero-scrollbar',\n },\n providers: [\n TuiDestroyService,\n TuiResizeService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: OBSERVER_INIT,\n },\n ],\n})\nexport class TuiTabsComponent implements AfterViewChecked {\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input('activeItemIndex')\n set activeItemIndexSetter(index: number) {\n this.activeItemIndex = index;\n this.scrollTo(this.tabs[index]);\n }\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostBinding('class._ios')\n readonly isIos: boolean;\n\n @HostBinding('class._android')\n readonly isAndroid: boolean;\n\n @ContentChildren(forwardRef(() => TuiTabComponent))\n private readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n activeItemIndex = 0;\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TuiResizeService) resize$: Observable<void>,\n @Inject(TUI_IS_IOS) isIos: boolean,\n @Inject(TUI_IS_ANDROID) isAndroid: boolean,\n @Inject(TUI_MOBILE_AWARE) mobileAware: boolean,\n ) {\n this.isIos = mobileAware && isIos;\n this.isAndroid = mobileAware && isAndroid;\n\n resize$.pipe(filter(() => this.underline)).subscribe(() => {\n changeDetectorRef.detectChanges();\n });\n }\n\n @tuiPure\n get refresh$(): Observable<boolean> {\n return itemsQueryListObservable(this.children).pipe(mapTo(true));\n }\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from(\n this.elementRef.nativeElement.querySelectorAll<HTMLElement>('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n ngAfterViewChecked() {\n const {tabs, activeElement} = this;\n\n tabs.forEach(nativeElement => {\n this.renderer.removeClass(nativeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(nativeElement, 'tabIndex', '-1');\n });\n\n if (activeElement) {\n this.renderer.addClass(activeElement, TAB_ACTIVE_CLASS);\n this.renderer.setAttribute(activeElement, 'tabIndex', '0');\n }\n }\n\n @HostListener(`${TUI_TAB_ACTIVATE}.stop`, ['$event.target'])\n onActivate(element: HTMLElement) {\n const index = this.tabs.findIndex(tab => tab === element);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexSetter = index;\n this.activeItemIndexChange.emit(index);\n }\n\n @HostListener('keydown.arrowRight.prevent', ['$event.target', '1'])\n @HostListener('keydown.arrowLeft.prevent', ['$event.target', '-1'])\n onKeyDownArrow(current: HTMLElement, step: number) {\n const {tabs} = this;\n\n moveFocus(tabs.indexOf(current), tabs, step);\n }\n\n private scrollTo(element?: HTMLElement) {\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n const {nativeElement} = this.elementRef;\n\n if (offsetLeft < nativeElement.scrollLeft) {\n nativeElement.scrollLeft = offsetLeft;\n }\n\n if (\n offsetLeft + offsetWidth >\n nativeElement.scrollLeft + nativeElement.offsetWidth\n ) {\n nativeElement.scrollLeft =\n offsetLeft + offsetWidth - nativeElement.offsetWidth;\n }\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {ChangeDetectorRef, ElementRef, InjectionToken, Provider} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {TuiDestroyService, TuiResizeService} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {debounceTime, filter, startWith, takeUntil, tap} from 'rxjs/operators';\n\nexport function tabsRefreshFactory(\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n destroy$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n changeDetectorRef: ChangeDetectorRef,\n): Observable<unknown> {\n return merge(\n resize$,\n mutations$.pipe(tap(() => changeDetectorRef.detectChanges())),\n ).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntil(destroy$),\n );\n}\n\n// TODO: remove in ivy compilation\nexport const MUTATION_CONFIG = {\n childList: true,\n subtree: true,\n};\nexport const TABS_REFRESH = new InjectionToken<Observable<unknown>>('Refresh stream');\nexport const TABS_PROVIDERS: Provider[] = [\n TuiResizeService,\n TuiDestroyService,\n MutationObserverService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: MUTATION_CONFIG,\n },\n {\n provide: TABS_REFRESH,\n deps: [\n TuiResizeService,\n MutationObserverService,\n TuiDestroyService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: tabsRefreshFactory,\n },\n];\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n EMPTY_QUERY,\n getClosestFocusable,\n isNativeFocused,\n setNativeFocused,\n tuiDefaultProp,\n} from '@taiga-ui/cdk';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\nimport {filter, map} from 'rxjs/operators';\nimport {TuiTabDirective} from '../tab.directive';\nimport {TuiTabComponent} from '../tab/tab.component';\nimport {TAB_MARGIN} from '../tabs.const';\nimport {TABS_PROVIDERS, TABS_REFRESH} from './tabs-with-more.providers';\n\n// @dynamic\n@Component({\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TABS_PROVIDERS,\n})\nexport class TuiTabsWithMoreComponent implements AfterViewInit {\n @Input()\n @tuiDefaultProp()\n moreContent: PolymorpheusContent = '';\n\n @Input()\n @HostBinding('class._underline')\n @tuiDefaultProp()\n underline = true;\n\n @Input()\n @tuiDefaultProp()\n activeItemIndex = 0;\n\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Output()\n readonly activeItemIndexChange = new EventEmitter<number>();\n\n @ContentChildren(TuiTabDirective, {read: TemplateRef})\n readonly items: QueryList<TemplateRef<{}>> = EMPTY_QUERY;\n\n open = false;\n\n private maxIndex = Infinity;\n\n @ViewChild(TuiTabComponent, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n constructor(\n @Inject(TABS_REFRESH) private readonly refresh$: Observable<unknown>,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(ChangeDetectorRef) private readonly changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_MORE_WORD) readonly moreWord$: Observable<string>,\n ) {}\n\n get tabs(): ReadonlyArray<HTMLElement> {\n return Array.from<HTMLElement>(\n this.elementRef.nativeElement.querySelectorAll('[tuiTab]'),\n );\n }\n\n get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n get isMoreFocusable(): boolean {\n return !!this.moreButton && isNativeFocused(this.moreButton.nativeElement);\n }\n\n get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset = this.itemsLimit - 1 > this.activeItemIndex ? 1 : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n ngAfterViewInit() {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n filter(maxIndex => this.maxIndex !== maxIndex),\n )\n .subscribe(maxIndex => {\n this.maxIndex = maxIndex;\n this.changeDetectorRef.detectChanges();\n });\n }\n\n onActiveItemIndexChange(activeItemIndex: number) {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n onClick(index: number) {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n onArrowRight(element: HTMLElement) {\n if (isNativeFocused(element)) {\n this.focusMore();\n }\n }\n\n onArrowLeft() {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n setNativeFocused(tabs[index]);\n\n if (isNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n onWrapperArrow(button: HTMLButtonElement, wrapper: HTMLElement, prev: boolean) {\n const target = getClosestFocusable(button, prev, wrapper);\n\n if (target) {\n setNativeFocused(target);\n }\n }\n\n private focusMore() {\n if (this.moreButton) {\n setNativeFocused(this.moreButton.nativeElement);\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {clientWidth} = this.elementRef.nativeElement;\n const activeWidth = tabs[activeItemIndex] ? tabs[activeItemIndex].scrollWidth : 0;\n const moreWidth = tabs[tabs.length - 1].scrollWidth;\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, tab) => acc + tab.scrollWidth, 0) +\n maxIndex * TAB_MARGIN -\n moreWidth;\n\n if (total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= tabs[maxIndex].scrollWidth + TAB_MARGIN;\n maxIndex--;\n\n const activeDisplaced = activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + TAB_MARGIN : 0;\n const currentWidth = total + activeOffset + moreWidth + TAB_MARGIN;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = this.maxIndex === maxIndex - 1 ? 1 : 0;\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return 0;\n }\n\n private updateActiveItemIndex(activeItemIndex: number) {\n if (this.activeItemIndex === activeItemIndex) {\n return;\n }\n\n this.activeItemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n this.maxIndex = this.getMaxIndex();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {px, TUI_IS_ANDROID, TUI_IS_IOS, tuiDefaultProp, tuiZonefree} from '@taiga-ui/cdk';\nimport {MODE_PROVIDER, TUI_MODE, TuiBrightness} from '@taiga-ui/core';\nimport {TUI_MOBILE_AWARE} from '@taiga-ui/kit/tokens';\nimport {asCallable} from '@tinkoff/ng-event-plugins';\nimport {Observable, of, ReplaySubject} from 'rxjs';\nimport {debounceTime, map, mapTo, share, switchMap} from 'rxjs/operators';\n\n@Component({\n selector: 'tui-underline',\n template: '',\n styleUrls: ['./underline.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MODE_PROVIDER],\n host: {\n '($.data-mode.attr)': 'mode$',\n },\n})\nexport class TuiUnderlineComponent {\n @Input()\n @tuiDefaultProp()\n set element(element: HTMLElement | null) {\n this.element$.next(element);\n }\n\n @HostBinding('class._ios')\n readonly isIos = this.mobileAware && this.ios;\n\n @HostBinding('class._android')\n readonly isAndroid = this.mobileAware && this.android;\n\n private readonly element$ = new ReplaySubject<HTMLElement | null>(1);\n\n private readonly refresh$ = this.element$.pipe(\n switchMap(element =>\n element\n ? this.animationFrame$.pipe(mapTo(element), tuiZonefree(this.ngZone))\n : of(null),\n ),\n share(),\n );\n\n @HostListener('$.style.transitionProperty')\n readonly transition$ = asCallable(\n this.element$.pipe(\n map(element => element && 'all'),\n debounceTime(50),\n ),\n );\n\n @HostListener('$.style.transform')\n readonly transform$ = asCallable(\n this.refresh$.pipe(\n map(element =>\n element ? `translate3d(${px(element.offsetLeft)}, 0, 0)` : null,\n ),\n ),\n );\n\n @HostListener('$.style.width.px')\n readonly width$ = asCallable(\n this.refresh$.pipe(map(element => (element ? element.clientWidth : 0))),\n );\n\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ANIMATION_FRAME) private readonly animationFrame$: Observable<number>,\n @Inject(TUI_MOBILE_AWARE) private readonly mobileAware: boolean,\n @Inject(TUI_IS_IOS) private readonly ios: boolean,\n @Inject(TUI_IS_ANDROID) private readonly android: boolean,\n @Inject(TUI_MODE) readonly mode$: Observable<TuiBrightness | null>,\n ) {\n nativeElement['$.style.transitionProperty'] = this.transition$;\n nativeElement['$.style.transform'] = this.transform$;\n nativeElement['$.style.width.px'] = this.width$;\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiFocusableModule} from '@taiga-ui/cdk';\nimport {TuiHostedDropdownModule, TuiSvgModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\nimport {TuiTabDirective} from './tab.directive';\nimport {TuiTabComponent} from './tab/tab.component';\nimport {TuiTabsWithMoreComponent} from './tabs-with-more/tabs-with-more.component';\nimport {TuiTabsComponent} from './tabs/tabs.component';\nimport {TuiUnderlineComponent} from './underline/underline.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiHostedDropdownModule,\n TuiSvgModule,\n TuiFocusableModule,\n PolymorpheusModule,\n ],\n declarations: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiUnderlineComponent,\n TuiTabDirective,\n ],\n exports: [\n TuiTabsWithMoreComponent,\n TuiTabsComponent,\n TuiTabComponent,\n TuiTabDirective,\n ],\n})\nexport class TuiTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -223,7 +223,7 @@ var TuiTagComponent = /** @class */ (function () {
|
|
|
223
223
|
host: {
|
|
224
224
|
'($.data-mode.attr)': 'mode$',
|
|
225
225
|
},
|
|
226
|
-
styles: [":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{border-radius:inherit;-webkit-text-fill-color:
|
|
226
|
+
styles: [":host{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);position:relative;display:inline-block;border-radius:var(--tui-radius-s);max-width:100%;cursor:default;outline:0;text-decoration:none}:host:after{transition-property:background;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;width:100%;height:100%;content:'';box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:active[data-tui-host-status=custom]:after,:host._hoverable:hover[data-tui-host-status=custom]:after{background-color:var(--tui-clear)}:host:focus:after{border:2px solid var(--tui-focus)}:host[data-tui-host-status=primary]{background-color:var(--tui-primary);color:var(--tui-primary-text)}:host[data-tui-host-status=primary]._hoverable:hover{background-color:var(--tui-primary-hover)}:host[data-tui-host-status=primary]._hoverable:active{background-color:var(--tui-primary-active)}:host[data-tui-host-status=error]{background-color:var(--tui-error-bg);color:var(--tui-text-01)}:host[data-tui-host-status=error]._hoverable:active,:host[data-tui-host-status=error]._hoverable:hover{background-color:var(--tui-error-bg-hover)}:host[data-tui-host-status=error][data-mode=onDark]{background-color:var(--tui-error-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=error][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=error][data-mode=onDark]._hoverable:hover{background-color:var(--tui-error-bg-night-hover)}:host[data-tui-host-status=success]{background-color:var(--tui-success-bg);color:var(--tui-text-01)}:host[data-tui-host-status=success]._hoverable:active,:host[data-tui-host-status=success]._hoverable:hover{background-color:var(--tui-success-bg-hover)}:host[data-tui-host-status=success][data-mode=onDark]{background-color:var(--tui-success-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=success][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=success][data-mode=onDark]._hoverable:hover{background-color:var(--tui-success-bg-night-hover)}:host[data-tui-host-status=warning]{background-color:var(--tui-warning-bg);color:var(--tui-text-01)}:host[data-tui-host-status=warning]._hoverable:active,:host[data-tui-host-status=warning]._hoverable:hover{background-color:var(--tui-warning-bg-hover)}:host[data-tui-host-status=warning][data-mode=onDark]{background-color:var(--tui-warning-bg-night);color:var(--tui-text-01-night)}:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:active,:host[data-tui-host-status=warning][data-mode=onDark]._hoverable:hover{background-color:var(--tui-warning-bg-night-hover)}:host[data-tui-host-status=default]{color:var(--tui-text-01-night);background-color:var(--tui-base-06)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:hover{background-color:var(--tui-base-07)}:host[data-tui-host-status=default]:not([data-mode])._hoverable:active{background-color:var(--tui-base-08)}:host[data-tui-host-status=default][data-mode=onDark]{color:var(--tui-text-01-night);background-color:var(--tui-clear-inverse)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:hover{background-color:var(--tui-clear-inverse-hover)}:host[data-tui-host-status=default][data-mode=onDark]._hoverable:active{background-color:var(--tui-clear-inverse-active)}:host[data-tui-host-status=default][data-mode=onDark]:focus:after{border:2px solid var(--tui-base-01)}:host[data-tui-host-status=default][data-mode=onLight]{background-color:var(--tui-clear);color:var(--tui-text-01)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:hover{background-color:var(--tui-clear-hover)}:host[data-tui-host-status=default][data-mode=onLight]._hoverable:active{background-color:var(--tui-clear-active)}:host._editing{background:0 0!important}:host._disabled{pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:var(--tui-text-01)}.text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:.02em}.tag{position:relative;display:flex;align-items:center;border-radius:inherit;white-space:pre}:host[data-tui-host-size='s'] .tag{font:var(--tui-font-text-xs);height:1.25rem;padding:0 .5rem}:host[data-tui-host-size='m'] .tag{height:var(--tui-height-xs);padding:0 .5rem}:host[data-tui-host-size='l'] .tag{height:var(--tui-height-s);padding:0 .75rem}:host._has-icon[data-tui-host-size='s'] .tag{padding-right:.125rem}:host._has-icon[data-tui-host-size='m'] .tag{padding-right:0}:host._has-icon[data-tui-host-size='l'] .tag{padding-right:.25rem}:host._editing .tag{visibility:hidden}:host._disabled._has-icon[data-tui-host-size='m'] .tag,:host._disabled._has-icon[data-tui-host-size='s'] .tag{padding-right:.5rem}:host._disabled._has-icon[data-tui-host-size='l'] .tag{padding-right:.75rem}.edit{font:var(--tui-font-text-s);padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;box-sizing:border-box}.edit:-webkit-autofill,.edit:-webkit-autofill:focus,.edit:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}:host[data-tui-host-size='s'] .edit{height:1.25rem;line-height:1.25rem;padding-left:.5rem}:host[data-tui-host-size='m'] .edit{height:var(--tui-height-xs);line-height:var(--tui-height-xs);padding-left:.5rem}:host[data-tui-host-size='l'] .edit{height:var(--tui-height-s);line-height:var(--tui-height-s);padding-left:.75rem}.icon{margin-left:.25rem;height:100%}.icon:not(.icon_loader){cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity)}.icon:hover{opacity:1}.icon_loader{width:1rem;height:1rem;margin:0 .25rem}:host[data-tui-host-size='s'] .icon_loader{margin:0 .375rem 0 .75rem;width:.5rem;height:.5rem}:host[data-tui-host-size='l'] .icon_loader{margin:0 .25rem 0 .5rem}.left-content{margin-right:.25rem;width:1rem;height:1rem}"]
|
|
227
227
|
}),
|
|
228
228
|
__param(0, Inject(ElementRef)),
|
|
229
229
|
__param(1, Inject(TUI_MODE))
|
|
@@ -115,6 +115,20 @@ var TuiTextAreaComponent = /** @class */ (function (_super) {
|
|
|
115
115
|
enumerable: true,
|
|
116
116
|
configurable: true
|
|
117
117
|
});
|
|
118
|
+
Object.defineProperty(TuiTextAreaComponent.prototype, "fittedContent", {
|
|
119
|
+
get: function () {
|
|
120
|
+
return this.value.slice(0, this.controller.maxLength || Infinity);
|
|
121
|
+
},
|
|
122
|
+
enumerable: true,
|
|
123
|
+
configurable: true
|
|
124
|
+
});
|
|
125
|
+
Object.defineProperty(TuiTextAreaComponent.prototype, "extraContent", {
|
|
126
|
+
get: function () {
|
|
127
|
+
return this.value.slice(this.controller.maxLength || Infinity);
|
|
128
|
+
},
|
|
129
|
+
enumerable: true,
|
|
130
|
+
configurable: true
|
|
131
|
+
});
|
|
118
132
|
TuiTextAreaComponent.prototype.onFocused = function (focused) {
|
|
119
133
|
this.updateFocused(focused);
|
|
120
134
|
};
|
|
@@ -185,14 +199,14 @@ var TuiTextAreaComponent = /** @class */ (function (_super) {
|
|
|
185
199
|
TuiTextAreaComponent = __decorate([
|
|
186
200
|
Component({
|
|
187
201
|
selector: 'tui-text-area',
|
|
188
|
-
template: "<tui-wrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"counter\"\n >\n {{value.length}}/{{controller.maxLength}}\n </div>\n</tui-wrapper>\n\n<label\n class=\"content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (mousedown)=\"onMouseDown($event)\"\n>\n <div class=\"wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"placeholder\"\n [class.placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"hasExampleText\"\n automation-id=\"tui-text-area__example-text\"\n class=\"example-text\"\n >\n <span class=\"example-text-inner\"> {{controller.exampleText}} </span>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"input-wrapper\">\n <div class=\"relative\">\n <div class=\"pseudo-content\">{{
|
|
202
|
+
template: "<tui-wrapper\n automation-id=\"tui-text-area__wrapper\"\n class=\"outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focused]=\"computedFocused\"\n [hovered]=\"computedHovered\"\n [readOnly]=\"readOnly\"\n [invalid]=\"computedInvalid\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"counter\"\n >\n {{value.length}}/{{controller.maxLength}}\n </div>\n</tui-wrapper>\n\n<label\n class=\"content\"\n (tuiHoveredChange)=\"onHovered($event)\"\n (mousedown)=\"onMouseDown($event)\"\n>\n <div class=\"wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"placeholder\"\n [class.placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content></ng-content>\n </div>\n <div\n *ngIf=\"hasExampleText\"\n automation-id=\"tui-text-area__example-text\"\n class=\"example-text\"\n >\n <span class=\"example-text-inner\"> {{controller.exampleText}} </span>\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"input-wrapper\">\n <div class=\"relative\">\n <div class=\"pseudo-content\" aria-hidden=\"true\">\n <span>{{fittedContent}}</span>\n <span class=\"pseudo-content__extra\"\n >{{extraContent}}</span\n >\n \n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"input\"\n [id]=\"id\"\n [tuiFocusable]=\"focusable\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n [readOnly]=\"readOnly\"\n (tuiFocusedChange)=\"onFocused($event)\"\n (ngModelChange)=\"onValue($event)\"\n ></textarea>\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n class=\"tooltip\"\n describeId=\"placeholer_until_accesibility_is_added\"\n [direction]=\"hintController.direction\"\n [mode]=\"hintController.mode\"\n [content]=\"hintController.content\"\n [showDelay]=\"hintController.showDelay\"\n [hideDelay]=\"hintController.hideDelay\"\n ></tui-tooltip>\n</label>\n",
|
|
189
203
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
190
204
|
providers: TUI_TEXT_AREA_PROVIDERS,
|
|
191
205
|
host: {
|
|
192
206
|
'($.data-mode.attr)': 'mode$',
|
|
193
207
|
'[class._ios]': 'isIOS',
|
|
194
208
|
},
|
|
195
|
-
styles: [":host{font:var(--tui-font-text-m);position:relative;z-index:0;display:flex;flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-tui-host-size='m']{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-tui-host-size='m']._has-counter{min-height:6.625rem}:host[data-tui-host-size='l']._has-counter{min-height:7.875rem}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution:0.001dpcm){.content::-webkit-scrollbar,.content::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:6px solid transparent}.content::-webkit-scrollbar{background-color:transparent}.content::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}.content::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}.content::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:.0625rem;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-tui-host-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-tui-host-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-tui-host-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-tui-host-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;
|
|
209
|
+
styles: [":host{font:var(--tui-font-text-m);position:relative;z-index:0;display:flex;flex-direction:column;min-height:6.75rem;border-radius:var(--tui-radius-m);color:var(--tui-text-01)}:host[data-mode=onDark]{color:var(--tui-text-01-night)}:host[data-tui-host-size='m']{font:var(--tui-font-text-s);min-height:5.5rem}:host[data-tui-host-size='m']._has-counter{min-height:6.625rem}:host[data-tui-host-size='l']._has-counter{min-height:7.875rem}.outline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.content{margin-top:0;margin-bottom:0;min-height:inherit;width:100%;box-sizing:border-box;overflow:hidden;cursor:text}@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution:0.001dpcm){.content::-webkit-scrollbar,.content::-webkit-scrollbar-thumb{width:1rem;height:1rem;border-radius:6.25rem;background-clip:padding-box;border:6px solid transparent}.content::-webkit-scrollbar{background-color:transparent}.content::-webkit-scrollbar-thumb{background-color:var(--tui-clear-hover)}.content::-webkit-scrollbar-thumb:hover{background-color:var(--tui-clear-active)}.content::-webkit-scrollbar-thumb:active{background-color:var(--tui-text-03)}}:host._disabled .content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .content{position:absolute;top:0;left:0;bottom:.0625rem;right:0;min-height:auto}:host._has-counter:not(._expandable) .content{bottom:1.6875rem}.wrapper{position:relative;width:100%;height:100%;min-height:inherit;padding-bottom:.4375rem;box-sizing:border-box}:host[data-tui-host-size='m']._label-outside .wrapper{padding-top:.75rem}:host[data-tui-host-size='l']._label-outside .wrapper{padding-top:1rem}:host[data-tui-host-size='m']:not(._label-outside) .wrapper{padding-top:1.375rem}:host[data-tui-host-size='l']:not(._label-outside) .wrapper{padding-top:1.625rem}.input-wrapper{min-height:inherit;width:100%;flex:1}.relative{position:relative;min-height:inherit}.box{display:flex;min-height:100%;width:100%}:host:not(._expandable) .box{height:100%}:host._has-counter._expandable .box{margin-bottom:1.25rem}.pseudo-content{white-space:pre-wrap;word-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden}:host[data-tui-host-size='m'] .pseudo-content{padding:0 .75rem}:host[data-tui-host-size='l'] .pseudo-content{padding:0 1rem}.pseudo-content__extra{background-color:var(--tui-error-bg-night)}.input{padding:0;border:0;border-radius:inherit;background:0 0;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;width:100%;box-sizing:border-box;height:100%;resize:none;overflow:hidden}.input:-webkit-autofill,.input:-webkit-autofill:focus,.input:-webkit-autofill:hover{border-radius:inherit;color:inherit!important;background-color:transparent!important;-webkit-text-fill-color:var(--tui-text-01)!important;border-color:var(--tui-autofill);-webkit-box-shadow:0 0 0 1000px var(--tui-autofill) inset!important}.input:focus{outline:0}:host[data-tui-host-size='m'] .input{padding:0 .75rem}:host[data-tui-host-size='l'] .input{padding:0 1rem}:host._ios .input{padding-left:.8125rem}:host[data-mode=onDark]._disabled .input{color:var(--tui-text-03-night)}:host._focused._has-tooltip .input,:host._focused._has-tooltip .pseudo-content,:host._has-value._has-tooltip .input,:host._has-value._has-tooltip .pseudo-content{padding-right:2.5rem}.placeholder{transition-property:transform,min-width,color,letter-spacing;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out;font:var(--tui-font-text-s);color:var(--tui-text-01);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;width:100%;height:1.25rem;font-size:.8125rem;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;color:var(--tui-text-02);transform-origin:left;letter-spacing:normal;text-transform:none;position:absolute;max-width:calc(100% - 1.5rem)}.placeholder_raised{width:114%;transform:translateY(-.625rem) scale(.87);max-width:calc(113% - 2rem)}:host[data-tui-host-size='m'] .placeholder_raised{width:118%;transform:translateY(-.5rem) scale(.85);letter-spacing:.025rem}:host._invalid:not(._focused) .placeholder_raised,:host._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill)}:host[data-mode=onDark]._invalid:not(._focused) .placeholder_raised,:host[data-mode=onDark]._invalid:not(._focused)._hovered .placeholder_raised{color:var(--tui-error-fill-night)}:host._focused .placeholder,:host[data-tui-host-size='l']._focused._label-outside .placeholder,:host[data-tui-host-size='m']._focused._label-outside .placeholder{color:var(--tui-text-03)}:host[data-tui-host-size='l']._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m']._focused:not(._label-outside) .placeholder{color:var(--tui-text-01)}:host[data-mode=onDark] .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='l'][data-mode=onDark]._focused:not(._label-outside) .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused:not(._label-outside) .placeholder{color:var(--tui-text-01-night)}:host[data-mode=onDark]._focused .placeholder,:host[data-tui-host-size='l'][data-mode=onDark]._focused._label-outside .placeholder,:host[data-tui-host-size='m'][data-mode=onDark]._focused._label-outside .placeholder{color:var(--tui-text-02-night)}:host[data-tui-host-size='m'] .placeholder{top:.75rem;left:.75rem}:host[data-tui-host-size='l'] .placeholder{font-size:.9375rem;top:1rem;left:1rem}:host._has-tooltip .placeholder{max-width:calc(100% - 3.25rem)}:host._label-outside .placeholder{overflow:initial;height:auto;white-space:initial}.example-text{position:absolute;max-width:calc(100% - 1.5rem);color:var(--tui-text-03);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host._has-tooltip._focused .example-text,:host._has-tooltip._has-value .example-text{max-width:calc(100% - 3.25rem)}:host[data-tui-host-size='m'] .example-text{left:.75rem}:host[data-tui-host-size='l'] .example-text{left:1rem}.tooltip{position:absolute;top:1rem;right:.75rem}.counter{font:var(--tui-font-text-s);position:absolute;bottom:.5rem;right:.75rem;pointer-events:none;margin-top:auto;text-align:right;color:var(--tui-text-03)}:host[data-mode=onDark] .counter{color:var(--tui-text-03-night)}"]
|
|
196
210
|
}),
|
|
197
211
|
__param(0, Optional()),
|
|
198
212
|
__param(0, Self()),
|