@taiga-ui/kit 3.23.1-dev.main-14214d9 → 3.23.1-dev.main-ba19ce0
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/abstract-native-select.d.ts +2 -2
- package/bundles/taiga-ui-kit-abstract.umd.js +3 -3
- package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -5
- package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js +2 -4
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.js +12 -12
- package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-elastic-container.umd.js +337 -9
- package/bundles/taiga-ui-kit-components-elastic-container.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-filter.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-files.umd.js +9 -9
- package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +4 -5
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-time.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-year.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-year.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-items-with-more.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-items-with-more.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js +5 -5
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js +3 -4
- package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js +11 -11
- package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js +8 -9
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-prompt.umd.js +11 -10
- package/bundles/taiga-ui-kit-components-prompt.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-push.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-block.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-list.umd.js +4 -4
- package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.js +16 -16
- package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-routable-dialog.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-routable-dialog.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.js +24 -22
- package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.js +68 -50
- package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +23 -23
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tiles.umd.js +9 -9
- package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tree.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js +5 -5
- package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-highlight.umd.js +9 -9
- package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +5 -5
- package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-project-class.umd.js +3 -3
- package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +2 -4
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-services.umd.js +3 -3
- package/bundles/taiga-ui-kit-services.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-mask.umd.js +4 -2
- package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
- package/components/accordion/accordion-item/accordion-item-content.directive.d.ts +1 -1
- package/components/accordion/accordion-item/accordion-item.component.d.ts +2 -2
- package/components/action/action.component.d.ts +2 -2
- package/components/calendar-range/calendar-range.component.d.ts +1 -1
- package/components/carousel/carousel-scroll.directive.d.ts +2 -2
- package/components/carousel/carousel.component.d.ts +3 -3
- package/components/carousel/carousel.directive.d.ts +2 -2
- package/components/checkbox/checkbox.component.d.ts +1 -1
- package/components/checkbox-block/checkbox-block.component.d.ts +1 -1
- package/components/checkbox-labeled/checkbox-labeled.component.d.ts +1 -1
- package/components/combo-box/combo-box.component.d.ts +1 -1
- package/components/elastic-container/elastic-container.component.d.ts +2 -0
- package/components/elastic-container/elastic-container.directive.d.ts +2 -2
- package/components/filter/filter.component.d.ts +2 -2
- package/components/input/input.component.d.ts +1 -1
- package/components/input-copy/input-copy.component.d.ts +2 -2
- package/components/input-count/input-count.component.d.ts +1 -1
- package/components/input-date/input-date.component.d.ts +2 -2
- package/components/input-date-range/input-date-range.component.d.ts +2 -2
- package/components/input-date-time/input-date-time.component.d.ts +1 -1
- package/components/input-files/input-files.component.d.ts +1 -1
- package/components/input-files/input-files.directive.d.ts +2 -2
- package/components/input-inline/input-inline.component.d.ts +1 -1
- package/components/input-month/input-month.component.d.ts +1 -1
- package/components/input-month-range/input-month-range.component.d.ts +1 -1
- package/components/input-number/input-number.component.d.ts +1 -1
- package/components/input-password/input-password.component.d.ts +1 -1
- package/components/input-phone/input-phone.component.d.ts +1 -1
- package/components/input-phone-international/input-phone-international.component.d.ts +1 -1
- package/components/input-range/input-range.component.d.ts +2 -2
- package/components/input-slider/input-slider.component.d.ts +1 -1
- package/components/input-tag/input-tag.component.d.ts +2 -2
- package/components/input-time/input-time.component.d.ts +1 -1
- package/components/input-year/input-year.component.d.ts +1 -1
- package/components/items-with-more/items-with-more.service.d.ts +2 -2
- package/components/line-clamp/line-clamp.component.d.ts +2 -2
- package/components/multi-select/multi-select.component.d.ts +1 -1
- package/components/pagination/pagination.component.d.ts +3 -3
- package/components/progress/progress-bar/progress-color-segments.directive.d.ts +2 -2
- package/components/progress/progress-circle/progress-circle.component.d.ts +3 -3
- package/components/prompt/prompt.module.d.ts +2 -1
- package/components/push/push-alert.directive.d.ts +1 -1
- package/components/radio/radio.component.d.ts +1 -1
- package/components/radio-block/radio-block.component.d.ts +1 -1
- package/components/radio-labeled/radio-labeled.component.d.ts +1 -1
- package/components/radio-list/radio-list.component.d.ts +2 -2
- package/components/range/range-change.directive.d.ts +4 -4
- package/components/range/range.component.d.ts +2 -2
- package/components/rating/rating.component.d.ts +1 -1
- package/components/routable-dialog/routable-dialog.component.d.ts +1 -1
- package/components/select/select.component.d.ts +1 -1
- package/components/select-option/select-option.component.d.ts +2 -2
- package/components/slider/helpers/slider-key-steps.directive.d.ts +2 -2
- package/components/slider/helpers/slider-readonly.directive.d.ts +1 -1
- package/components/slider/slider.component.d.ts +2 -2
- package/components/stepper/step/step.component.d.ts +2 -2
- package/components/stepper/stepper.component.d.ts +7 -3
- package/components/tabs/tab/tab.component.d.ts +2 -2
- package/components/tabs/tabs/tabs.component.d.ts +2 -2
- package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +3 -3
- package/components/tabs/tabs.directive.d.ts +2 -2
- package/components/tabs/underline/underline.component.d.ts +1 -1
- package/components/tag/tag.component.d.ts +2 -2
- package/components/text-area/text-area.component.d.ts +1 -1
- package/components/tiles/tile.component.d.ts +2 -2
- package/components/tiles/tiles.component.d.ts +3 -3
- package/components/toggle/toggle.component.d.ts +1 -1
- package/components/tree/components/tree-item/tree-item.component.d.ts +2 -2
- package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +2 -2
- package/directives/highlight/highlight.directive.d.ts +3 -3
- package/directives/lazy-loading/lazy-loading.directive.d.ts +2 -2
- package/directives/lazy-loading/lazy-loading.service.d.ts +1 -1
- package/directives/project-class/project-class.directive.d.ts +2 -2
- package/esm2015/abstract/abstract-native-select.js +4 -4
- package/esm2015/components/accordion/accordion-item/accordion-item-content.directive.js +3 -3
- package/esm2015/components/accordion/accordion-item/accordion-item.component.js +4 -4
- package/esm2015/components/action/action.component.js +4 -4
- package/esm2015/components/calendar-range/calendar-range.component.js +3 -5
- package/esm2015/components/carousel/carousel-scroll.directive.js +5 -5
- package/esm2015/components/carousel/carousel.component.js +6 -6
- package/esm2015/components/carousel/carousel.directive.js +4 -4
- package/esm2015/components/checkbox/checkbox.component.js +3 -3
- package/esm2015/components/checkbox-block/checkbox-block.component.js +3 -3
- package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +3 -3
- package/esm2015/components/combo-box/combo-box.component.js +3 -3
- package/esm2015/components/elastic-container/elastic-container.component.js +15 -3
- package/esm2015/components/elastic-container/elastic-container.directive.js +4 -4
- package/esm2015/components/filter/filter.component.js +5 -5
- package/esm2015/components/input/input.component.js +3 -3
- package/esm2015/components/input-copy/input-copy.component.js +5 -5
- package/esm2015/components/input-count/input-count.component.js +3 -3
- package/esm2015/components/input-date/input-date.component.js +5 -5
- package/esm2015/components/input-date-range/input-date-range.component.js +5 -5
- package/esm2015/components/input-date-time/input-date-time.component.js +3 -3
- package/esm2015/components/input-files/input-files.component.js +3 -3
- package/esm2015/components/input-files/input-files.directive.js +8 -8
- package/esm2015/components/input-inline/input-inline.component.js +3 -3
- package/esm2015/components/input-month/input-month.component.js +3 -3
- package/esm2015/components/input-month-range/input-month-range.component.js +3 -3
- package/esm2015/components/input-number/input-number.component.js +3 -3
- package/esm2015/components/input-password/input-password.component.js +3 -3
- package/esm2015/components/input-phone/input-phone.component.js +3 -3
- package/esm2015/components/input-phone-international/input-phone-international.component.js +4 -4
- package/esm2015/components/input-range/input-range.component.js +5 -5
- package/esm2015/components/input-slider/input-slider.component.js +3 -3
- package/esm2015/components/input-tag/input-tag.component.js +5 -6
- package/esm2015/components/input-time/input-time.component.js +3 -3
- package/esm2015/components/input-year/input-year.component.js +3 -3
- package/esm2015/components/items-with-more/items-with-more.service.js +4 -4
- package/esm2015/components/line-clamp/line-clamp.component.js +6 -6
- package/esm2015/components/multi-select/multi-select.component.js +3 -3
- package/esm2015/components/multi-select/native-multi-select/native-multi-select.js +2 -3
- package/esm2015/components/pagination/pagination.component.js +12 -12
- package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +4 -4
- package/esm2015/components/progress/progress-circle/progress-circle.component.js +6 -7
- package/esm2015/components/prompt/prompt.component.js +5 -4
- package/esm2015/components/prompt/prompt.module.js +5 -4
- package/esm2015/components/push/push-alert.directive.js +3 -3
- package/esm2015/components/radio/radio.component.js +3 -3
- package/esm2015/components/radio-block/radio-block.component.js +3 -3
- package/esm2015/components/radio-labeled/radio-labeled.component.js +3 -3
- package/esm2015/components/radio-list/radio-list.component.js +5 -5
- package/esm2015/components/range/range-change.directive.js +11 -11
- package/esm2015/components/range/range.component.js +6 -6
- package/esm2015/components/rating/rating.component.js +3 -3
- package/esm2015/components/routable-dialog/routable-dialog.component.js +3 -3
- package/esm2015/components/select/select.component.js +3 -3
- package/esm2015/components/select-option/select-option.component.js +4 -4
- package/esm2015/components/slider/helpers/slider-key-steps.directive.js +7 -6
- package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -5
- package/esm2015/components/slider/helpers/slider-thumb-label/slider-thumb-label.component.js +5 -4
- package/esm2015/components/slider/slider.component.js +11 -11
- package/esm2015/components/stepper/step/step.component.js +4 -4
- package/esm2015/components/stepper/stepper.component.js +40 -20
- package/esm2015/components/tabs/tab/tab.component.js +5 -5
- package/esm2015/components/tabs/tabs/tabs.component.js +5 -5
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +7 -7
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +3 -3
- package/esm2015/components/tabs/tabs.directive.js +4 -4
- package/esm2015/components/tabs/underline/underline.component.js +5 -5
- package/esm2015/components/tag/tag.component.js +4 -4
- package/esm2015/components/text-area/text-area.component.js +3 -3
- package/esm2015/components/tiles/tile.component.js +4 -4
- package/esm2015/components/tiles/tiles.component.js +7 -7
- package/esm2015/components/toggle/toggle.component.js +3 -3
- package/esm2015/components/tree/components/tree-item/tree-item.component.js +4 -4
- package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +6 -6
- package/esm2015/directives/highlight/highlight.directive.js +10 -10
- package/esm2015/directives/lazy-loading/lazy-loading.directive.js +4 -4
- package/esm2015/directives/lazy-loading/lazy-loading.service.js +3 -3
- package/esm2015/directives/project-class/project-class.directive.js +4 -4
- package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +3 -5
- package/esm2015/services/dialog-form.service.js +4 -4
- package/esm2015/utils/mask/create-date-mask.js +3 -2
- package/esm2015/utils/mask/create-date-range-mask.js +3 -2
- package/fesm2015/taiga-ui-kit-abstract.js +3 -3
- package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-accordion.js +5 -5
- package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-action.js +3 -3
- package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-range.js +2 -4
- package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-carousel.js +12 -12
- package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-block.js +2 -2
- package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +2 -2
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox.js +2 -2
- package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-combo-box.js +2 -2
- package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-elastic-container.js +17 -5
- package/fesm2015/taiga-ui-kit-components-elastic-container.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-filter.js +4 -4
- package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-copy.js +4 -4
- package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-count.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js +4 -4
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js +4 -4
- package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-files.js +9 -9
- package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-inline.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month-range.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-number.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-password.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js +3 -3
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +4 -4
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +4 -5
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-time.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-year.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-year.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-items-with-more.js +3 -3
- package/fesm2015/taiga-ui-kit-components-items-with-more.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-line-clamp.js +5 -5
- package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js +3 -4
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js +11 -11
- package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +8 -9
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-prompt.js +8 -7
- package/fesm2015/taiga-ui-kit-components-prompt.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-push.js +2 -2
- package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-block.js +2 -2
- package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-labeled.js +2 -2
- package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-list.js +4 -4
- package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio.js +2 -2
- package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-range.js +15 -15
- package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-rating.js +2 -2
- package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-routable-dialog.js +2 -2
- package/fesm2015/taiga-ui-kit-components-routable-dialog.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select-option.js +3 -3
- package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js +2 -2
- package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-slider.js +24 -22
- package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-stepper.js +44 -27
- package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +23 -23
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tag.js +3 -3
- package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tiles.js +9 -9
- package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-toggle.js +2 -2
- package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tree.js +3 -3
- package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +5 -5
- package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-highlight.js +9 -9
- package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +5 -5
- package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-project-class.js +3 -3
- package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +2 -4
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-services.js +3 -3
- package/fesm2015/taiga-ui-kit-services.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-mask.js +4 -2
- package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
- package/internal/primitive-calendar-range/primitive-calendar-range.component.d.ts +1 -1
- package/package.json +1 -1
- package/services/dialog-form.service.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-input-time.js","sources":["../../../projects/kit/components/input-time/input-time-options.ts","../../../projects/kit/components/input-time/input-time.component.ts","../../../projects/kit/components/input-time/input-time.template.html","../../../projects/kit/components/input-time/input-time.module.ts","../../../projects/kit/components/input-time/taiga-ui-kit-components-input-time.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiContextWithImplicit, TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputTimeOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly mode: TuiTimeMode;\n readonly postfix: string;\n readonly maxValues: Record<TuiTimeFormatParts, number>;\n readonly itemSize: TuiSizeL | TuiSizeS;\n}\n\nexport const TUI_INPUT_TIME_DEFAULT_OPTIONS: TuiInputTimeOptions = {\n icon: ({$implicit}) => ($implicit === `s` ? `tuiIconClock` : `tuiIconClockLarge`),\n mode: `HH:MM`,\n postfix: ``,\n maxValues: MAX_TIME_VALUES,\n itemSize: `m`,\n};\n\n/**\n * Default parameters for InputTime component\n */\nexport const TUI_INPUT_TIME_OPTIONS = new InjectionToken<TuiInputTimeOptions>(\n `[TUI_INPUT_TIME_OPTIONS]`,\n {\n factory: () => TUI_INPUT_TIME_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputTimeOptionsProvider: (\n options: Partial<TuiInputTimeOptions>,\n) => ValueProvider = (options: Partial<TuiInputTimeOptions>) => ({\n provide: TUI_INPUT_TIME_OPTIONS,\n useValue: {...TUI_INPUT_TIME_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n TUI_STRICT_MATCHER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiPure,\n TuiTime,\n TuiTimeLike,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListHost,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_TIME_TEXTS} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_INPUT_TIME_OPTIONS, TuiInputTimeOptions} from './input-time-options';\n\n@Component({\n selector: 'tui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputTimeComponent),\n tuiAsControl(TuiInputTimeComponent),\n tuiAsDataListHost(TuiInputTimeComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputTimeComponent\n extends AbstractTuiNullableControl<TuiTime>\n implements TuiFocusableElementAccessor, TuiDataListHost<TuiTime>\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiTime> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiTime[] = [];\n\n @Input()\n @tuiDefaultProp()\n itemSize: TuiInputTimeOptions['itemSize'] = this.options.itemSize;\n\n @Input()\n @tuiDefaultProp()\n strict = false;\n\n @Input()\n @tuiDefaultProp()\n mode: TuiInputTimeOptions['mode'] = this.options.mode;\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input()\n @tuiDefaultProp()\n postfix: TuiInputTimeOptions['postfix'] = this.options.postfix;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TIME_TEXTS)\n private readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_INPUT_TIME_OPTIONS)\n private readonly options: TuiInputTimeOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.filtered.length;\n }\n\n get filtered(): readonly TuiTime[] {\n return this.filter(this.items, this.mode, this.computedSearch);\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(this.mode);\n }\n\n get computedValue(): string {\n return this.value ? this.value.toString(this.mode) : this.nativeValue;\n }\n\n get computedSearch(): string {\n return this.computedValue.length !== this.mode.length ? this.computedValue : '';\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocus === false) {\n return false;\n }\n\n if ((this.open && this.canOpen) || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get icon(): TuiInputTimeOptions['icon'] {\n return this.options.icon;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n @tuiPure\n getFiller$(mode: TuiTimeMode): Observable<string> {\n return this.timeTexts$.pipe(map(texts => texts[mode]));\n }\n\n @HostListener('click')\n onClick(): void {\n this.open = !this.open;\n }\n\n onValueChange(value: string): void {\n this.open = !!this.items.length;\n\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n const match = this.getMatch(value);\n\n if (match !== undefined) {\n this.value = match;\n\n return;\n }\n\n if (value.length !== this.mode.length) {\n this.value = null;\n\n return;\n }\n\n const time = TuiTime.fromString(value);\n\n this.value = this.strict ? this.findNearestTimeFromItems(time) : time;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value !== null ||\n this.nativeValue === '' ||\n this.mode === 'HH:MM'\n ) {\n return;\n }\n\n this.value = TuiTime.fromString(this.nativeValue);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n onArrowUp(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, 1);\n }\n\n onArrowDown(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, -1);\n }\n\n handleOption(item: TuiTime): void {\n this.focusInput();\n this.value = item;\n }\n\n onOpen(open: boolean): void {\n this.open = open;\n }\n\n override writeValue(value: TuiTime | null): void {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n @tuiPure\n private calculateMask(mode: TuiTimeMode): TuiTextMaskOptions {\n return {\n mask: tuiCreateTimeMask(mode, this.options.maxValues),\n pipe: tuiCreateAutoCorrectedTimePipe(mode, this.options.maxValues),\n guide: false,\n };\n }\n\n @tuiPure\n private filter(\n items: readonly TuiTime[],\n mode: TuiTimeMode,\n search: string,\n ): readonly TuiTime[] {\n return items.filter(item => item.toString(mode).includes(search));\n }\n\n private findNearestTimeFromItems(value: TuiTime): TuiTime | null {\n return this.items.reduce((previous, current) =>\n Math.abs(current.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds()) <\n Math.abs(previous.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds())\n ? current\n : previous,\n );\n }\n\n private getMatch(value: string): TuiTime | undefined {\n return this.items.find(item => TUI_STRICT_MATCHER(item, value));\n }\n\n private close(): void {\n this.open = false;\n }\n\n private processArrow(event: Event, shift: -1 | 1): void {\n const {target} = event;\n\n if (this.readOnly || !tuiIsElement(target) || !tuiIsInput(target)) {\n return;\n }\n\n const selectionStart = target.selectionStart || 0;\n\n this.shiftTime(this.calculateShift(selectionStart, shift));\n\n target.setSelectionRange(selectionStart, selectionStart);\n event.preventDefault();\n }\n\n private calculateShift(selectionStart: number, shift: number): TuiTimeLike {\n if (selectionStart <= 2) {\n return {hours: shift};\n }\n\n if (selectionStart <= 5) {\n return {minutes: shift};\n }\n\n if (selectionStart <= 8) {\n return {seconds: shift};\n }\n\n return {ms: shift};\n }\n\n private shiftTime(shift: TuiTimeLike): void {\n if (this.value === null) {\n return;\n }\n\n const increasedTime = this.value.shift(shift);\n\n // Manual update so we can set caret position properly\n this.nativeValue = increasedTime.toString(this.mode);\n this.value = increasedTime;\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n this.close();\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdownContent\"\n [open]=\"canOpen && open\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {TextMaskModule, TuiValueAccessorModule} from '@taiga-ui/kit/directives';\n\nimport {TuiInputTimeComponent} from './input-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiSelectOptionModule,\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputTimeComponent],\n exports: [TuiInputTimeComponent],\n})\nexport class TuiInputTimeModule {}\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-input-time.js","sources":["../../../projects/kit/components/input-time/input-time-options.ts","../../../projects/kit/components/input-time/input-time.component.ts","../../../projects/kit/components/input-time/input-time.template.html","../../../projects/kit/components/input-time/input-time.module.ts","../../../projects/kit/components/input-time/taiga-ui-kit-components-input-time.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiContextWithImplicit, TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputTimeOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly mode: TuiTimeMode;\n readonly postfix: string;\n readonly maxValues: Record<TuiTimeFormatParts, number>;\n readonly itemSize: TuiSizeL | TuiSizeS;\n}\n\nexport const TUI_INPUT_TIME_DEFAULT_OPTIONS: TuiInputTimeOptions = {\n icon: ({$implicit}) => ($implicit === `s` ? `tuiIconClock` : `tuiIconClockLarge`),\n mode: `HH:MM`,\n postfix: ``,\n maxValues: MAX_TIME_VALUES,\n itemSize: `m`,\n};\n\n/**\n * Default parameters for InputTime component\n */\nexport const TUI_INPUT_TIME_OPTIONS = new InjectionToken<TuiInputTimeOptions>(\n `[TUI_INPUT_TIME_OPTIONS]`,\n {\n factory: () => TUI_INPUT_TIME_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputTimeOptionsProvider: (\n options: Partial<TuiInputTimeOptions>,\n) => ValueProvider = (options: Partial<TuiInputTimeOptions>) => ({\n provide: TUI_INPUT_TIME_OPTIONS,\n useValue: {...TUI_INPUT_TIME_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n TUI_STRICT_MATCHER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiPure,\n TuiTime,\n TuiTimeLike,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListHost,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_TIME_TEXTS} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_INPUT_TIME_OPTIONS, TuiInputTimeOptions} from './input-time-options';\n\n@Component({\n selector: 'tui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputTimeComponent),\n tuiAsControl(TuiInputTimeComponent),\n tuiAsDataListHost(TuiInputTimeComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputTimeComponent\n extends AbstractTuiNullableControl<TuiTime>\n implements TuiFocusableElementAccessor, TuiDataListHost<TuiTime>\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiTime> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiTime[] = [];\n\n @Input()\n @tuiDefaultProp()\n itemSize: TuiInputTimeOptions['itemSize'] = this.options.itemSize;\n\n @Input()\n @tuiDefaultProp()\n strict = false;\n\n @Input()\n @tuiDefaultProp()\n mode: TuiInputTimeOptions['mode'] = this.options.mode;\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input()\n @tuiDefaultProp()\n postfix: TuiInputTimeOptions['postfix'] = this.options.postfix;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_TIME_TEXTS)\n private readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_INPUT_TIME_OPTIONS)\n private readonly options: TuiInputTimeOptions,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.filtered.length;\n }\n\n get filtered(): readonly TuiTime[] {\n return this.filter(this.items, this.mode, this.computedSearch);\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(this.mode);\n }\n\n get computedValue(): string {\n return this.value ? this.value.toString(this.mode) : this.nativeValue;\n }\n\n get computedSearch(): string {\n return this.computedValue.length !== this.mode.length ? this.computedValue : '';\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocus === false) {\n return false;\n }\n\n if ((this.open && this.canOpen) || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get icon(): TuiInputTimeOptions['icon'] {\n return this.options.icon;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n @tuiPure\n getFiller$(mode: TuiTimeMode): Observable<string> {\n return this.timeTexts$.pipe(map(texts => texts[mode]));\n }\n\n @HostListener('click')\n onClick(): void {\n this.open = !this.open;\n }\n\n onValueChange(value: string): void {\n this.open = !!this.items.length;\n\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n const match = this.getMatch(value);\n\n if (match !== undefined) {\n this.value = match;\n\n return;\n }\n\n if (value.length !== this.mode.length) {\n this.value = null;\n\n return;\n }\n\n const time = TuiTime.fromString(value);\n\n this.value = this.strict ? this.findNearestTimeFromItems(time) : time;\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value !== null ||\n this.nativeValue === '' ||\n this.mode === 'HH:MM'\n ) {\n return;\n }\n\n this.value = TuiTime.fromString(this.nativeValue);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n onArrowUp(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, 1);\n }\n\n onArrowDown(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, -1);\n }\n\n handleOption(item: TuiTime): void {\n this.focusInput();\n this.value = item;\n }\n\n onOpen(open: boolean): void {\n this.open = open;\n }\n\n override writeValue(value: TuiTime | null): void {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n @tuiPure\n private calculateMask(mode: TuiTimeMode): TuiTextMaskOptions {\n return {\n mask: tuiCreateTimeMask(mode, this.options.maxValues),\n pipe: tuiCreateAutoCorrectedTimePipe(mode, this.options.maxValues),\n guide: false,\n };\n }\n\n @tuiPure\n private filter(\n items: readonly TuiTime[],\n mode: TuiTimeMode,\n search: string,\n ): readonly TuiTime[] {\n return items.filter(item => item.toString(mode).includes(search));\n }\n\n private findNearestTimeFromItems(value: TuiTime): TuiTime | null {\n return this.items.reduce((previous, current) =>\n Math.abs(current.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds()) <\n Math.abs(previous.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds())\n ? current\n : previous,\n );\n }\n\n private getMatch(value: string): TuiTime | undefined {\n return this.items.find(item => TUI_STRICT_MATCHER(item, value));\n }\n\n private close(): void {\n this.open = false;\n }\n\n private processArrow(event: Event, shift: -1 | 1): void {\n const {target} = event;\n\n if (this.readOnly || !tuiIsElement(target) || !tuiIsInput(target)) {\n return;\n }\n\n const selectionStart = target.selectionStart || 0;\n\n this.shiftTime(this.calculateShift(selectionStart, shift));\n\n target.setSelectionRange(selectionStart, selectionStart);\n event.preventDefault();\n }\n\n private calculateShift(selectionStart: number, shift: number): TuiTimeLike {\n if (selectionStart <= 2) {\n return {hours: shift};\n }\n\n if (selectionStart <= 5) {\n return {minutes: shift};\n }\n\n if (selectionStart <= 8) {\n return {seconds: shift};\n }\n\n return {ms: shift};\n }\n\n private shiftTime(shift: TuiTimeLike): void {\n if (this.value === null) {\n return;\n }\n\n const increasedTime = this.value.shift(shift);\n\n // Manual update so we can set caret position properly\n this.nativeValue = increasedTime.toString(this.mode);\n this.value = increasedTime;\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n this.close();\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdownContent\"\n [open]=\"canOpen && open\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {TextMaskModule, TuiValueAccessorModule} from '@taiga-ui/kit/directives';\n\nimport {TuiInputTimeComponent} from './input-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiSelectOptionModule,\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputTimeComponent],\n exports: [TuiInputTimeComponent],\n})\nexport class TuiInputTimeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -14,8 +14,8 @@ import * as i4 from '@taiga-ui/kit/pipes';
|
|
|
14
14
|
import { TuiToYearPipeModule } from '@taiga-ui/kit/pipes';
|
|
15
15
|
|
|
16
16
|
class TuiInputYearComponent extends AbstractTuiNullableControl {
|
|
17
|
-
constructor(control,
|
|
18
|
-
super(control,
|
|
17
|
+
constructor(control, cdr, options) {
|
|
18
|
+
super(control, cdr);
|
|
19
19
|
this.options = options;
|
|
20
20
|
this.min = this.options.min.year;
|
|
21
21
|
this.max = this.options.max.year;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-input-year.js","sources":["../../../projects/kit/components/input-year/input-year.component.ts","../../../projects/kit/components/input-year/input-year.template.html","../../../projects/kit/components/input-year/input-year.directive.ts","../../../projects/kit/components/input-year/input-year.module.ts","../../../projects/kit/components/input-year/taiga-ui-kit-components-input-year.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DIGIT_REGEXP,\n TuiPrimitiveTextfieldComponent,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_INPUT_DATE_OPTIONS, TuiInputDateOptions} from '@taiga-ui/kit/tokens';\n\n@Component({\n selector: 'tui-input-year',\n templateUrl: './input-year.template.html',\n styleUrls: ['./input-year.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputYearComponent),\n tuiAsControl(TuiInputYearComponent),\n ],\n})\nexport class TuiInputYearComponent\n extends AbstractTuiNullableControl<number>\n implements TuiWithOptionalMinMax<number>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min = this.options.min.year;\n\n @Input()\n @tuiDefaultProp()\n max = this.options.max.year;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<number> = ALWAYS_FALSE_HANDLER;\n\n open = false;\n\n readonly initialItem = new Date().getFullYear();\n\n readonly textMaskOptions = {\n mask: new Array(4).fill(TUI_DIGIT_REGEXP),\n guide: false,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_INPUT_DATE_OPTIONS)\n private readonly options: TuiInputDateOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n onValueChange(value: string): void {\n this.value = value ? Number(value.slice(0, 4)) : null;\n }\n\n onYearClick({year}: TuiYear): void {\n this.value = year;\n this.onOpenChange(false);\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onOpenChange(open: boolean): void {\n this.open = open;\n }\n\n toggle(): void {\n this.open = !this.open;\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n (click)=\"toggle()\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [textMask]=\"textMaskOptions\"\n [value]=\"value?.toString() || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-primitive-year-picker\n tuiPreventDefault=\"mousedown\"\n [min]=\"min | tuiToYear\"\n [max]=\"max | tuiToYear\"\n [initialItem]=\"value || initialItem | tuiToYear\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [value]=\"value === null ? null : (value | tuiToYear)\"\n (yearClick)=\"onYearClick($event)\"\n ></tui-primitive-year-picker>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputYearComponent} from './input-year.component';\n\n@Directive({\n selector: 'tui-input-year',\n providers: [tuiAsTextfieldHost(TuiInputYearDirective)],\n})\nexport class TuiInputYearDirective extends AbstractTuiTextfieldHost<TuiInputYearComponent> {\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n override process(input: HTMLInputElement): void {\n input.inputMode = 'numeric';\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiPrimitiveYearPickerModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TextMaskModule} from '@taiga-ui/kit/directives';\nimport {TuiToYearPipeModule} from '@taiga-ui/kit/pipes';\n\nimport {TuiInputYearComponent} from './input-year.component';\nimport {TuiInputYearDirective} from './input-year.directive';\n\n@NgModule({\n imports: [\n TextMaskModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiPrimitiveYearPickerModule,\n TuiPreventDefaultModule,\n TuiTextfieldControllerModule,\n TuiToYearPipeModule,\n ],\n declarations: [TuiInputYearComponent, TuiInputYearDirective],\n exports: [TuiInputYearComponent, TuiInputYearDirective, TuiTextfieldComponent],\n})\nexport class TuiInputYearModule {}\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-input-year.js","sources":["../../../projects/kit/components/input-year/input-year.component.ts","../../../projects/kit/components/input-year/input-year.template.html","../../../projects/kit/components/input-year/input-year.directive.ts","../../../projects/kit/components/input-year/input-year.module.ts","../../../projects/kit/components/input-year/taiga-ui-kit-components-input-year.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiYear,\n} from '@taiga-ui/cdk';\nimport {\n TUI_DIGIT_REGEXP,\n TuiPrimitiveTextfieldComponent,\n TuiWithOptionalMinMax,\n} from '@taiga-ui/core';\nimport {TUI_INPUT_DATE_OPTIONS, TuiInputDateOptions} from '@taiga-ui/kit/tokens';\n\n@Component({\n selector: 'tui-input-year',\n templateUrl: './input-year.template.html',\n styleUrls: ['./input-year.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputYearComponent),\n tuiAsControl(TuiInputYearComponent),\n ],\n})\nexport class TuiInputYearComponent\n extends AbstractTuiNullableControl<number>\n implements TuiWithOptionalMinMax<number>, TuiFocusableElementAccessor\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n min = this.options.min.year;\n\n @Input()\n @tuiDefaultProp()\n max = this.options.max.year;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<number> = ALWAYS_FALSE_HANDLER;\n\n open = false;\n\n readonly initialItem = new Date().getFullYear();\n\n readonly textMaskOptions = {\n mask: new Array(4).fill(TUI_DIGIT_REGEXP),\n guide: false,\n };\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n @Inject(TUI_INPUT_DATE_OPTIONS)\n private readonly options: TuiInputDateOptions,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return !!this.textfield && this.textfield.focused;\n }\n\n get calendarIcon(): TuiInputDateOptions['icon'] {\n return this.options.icon;\n }\n\n onValueChange(value: string): void {\n this.value = value ? Number(value.slice(0, 4)) : null;\n }\n\n onYearClick({year}: TuiYear): void {\n this.value = year;\n this.onOpenChange(false);\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n onOpenChange(open: boolean): void {\n this.open = open;\n }\n\n toggle(): void {\n this.open = !this.open;\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"interactive\"\n [content]=\"dropdown\"\n [open]=\"open && interactive\"\n (openChange)=\"onOpenChange($event)\"\n (click)=\"toggle()\"\n>\n <tui-primitive-textfield\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldIcon]=\"calendarIcon\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [textMask]=\"textMaskOptions\"\n [value]=\"value?.toString() || ''\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n\n <ng-template #dropdown>\n <tui-primitive-year-picker\n tuiPreventDefault=\"mousedown\"\n [min]=\"min | tuiToYear\"\n [max]=\"max | tuiToYear\"\n [initialItem]=\"value || initialItem | tuiToYear\"\n [disabledItemHandler]=\"disabledItemHandler\"\n [value]=\"value === null ? null : (value | tuiToYear)\"\n (yearClick)=\"onYearClick($event)\"\n ></tui-primitive-year-picker>\n </ng-template>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputYearComponent} from './input-year.component';\n\n@Directive({\n selector: 'tui-input-year',\n providers: [tuiAsTextfieldHost(TuiInputYearDirective)],\n})\nexport class TuiInputYearDirective extends AbstractTuiTextfieldHost<TuiInputYearComponent> {\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n override process(input: HTMLInputElement): void {\n input.inputMode = 'numeric';\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiPreventDefaultModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiPrimitiveYearPickerModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TextMaskModule} from '@taiga-ui/kit/directives';\nimport {TuiToYearPipeModule} from '@taiga-ui/kit/pipes';\n\nimport {TuiInputYearComponent} from './input-year.component';\nimport {TuiInputYearDirective} from './input-year.directive';\n\n@NgModule({\n imports: [\n TextMaskModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiPrimitiveYearPickerModule,\n TuiPreventDefaultModule,\n TuiTextfieldControllerModule,\n TuiToYearPipeModule,\n ],\n declarations: [TuiInputYearComponent, TuiInputYearDirective],\n exports: [TuiInputYearComponent, TuiInputYearDirective, TuiTextfieldComponent],\n})\nexport class TuiInputYearModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,8 @@ import { TUI_VALUE_ACCESSOR_PROVIDER, FIXED_DROPDOWN_CONTROLLER_PROVIDER } from
|
|
|
10
10
|
import { CommonModule } from '@angular/common';
|
|
11
11
|
|
|
12
12
|
class TuiInputComponent extends AbstractTuiControl {
|
|
13
|
-
constructor(control,
|
|
14
|
-
super(control,
|
|
13
|
+
constructor(control, cdr) {
|
|
14
|
+
super(control, cdr);
|
|
15
15
|
this.datalist = '';
|
|
16
16
|
this.open = false;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-input.js","sources":["../../../projects/kit/components/input/input.component.ts","../../../projects/kit/components/input/input.template.html","../../../projects/kit/components/input/input.directive.ts","../../../projects/kit/components/input/input.module.ts","../../../projects/kit/components/input/taiga-ui-kit-components-input.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n Inject,\n Optional,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n} from '@taiga-ui/core';\nimport {\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n TUI_VALUE_ACCESSOR_PROVIDER,\n} from '@taiga-ui/kit/providers';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-input',\n templateUrl: './input.template.html',\n styleUrls: ['./input.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TUI_VALUE_ACCESSOR_PROVIDER,\n tuiAsFocusableItemAccessor(TuiInputComponent),\n tuiAsDataListHost(TuiInputComponent),\n tuiAsControl(TuiInputComponent),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n > = '';\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.computedDisabled || !this.textfield\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n onValueChange(value: string): void {\n this.value = value;\n this.open = true;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n handleOption(item: unknown): void {\n this.setNativeValue(String(item));\n this.focusInput();\n this.value = String(item);\n this.open = false;\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-input__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"value\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputComponent} from './input.component';\n\n@Directive({\n selector: 'tui-input',\n providers: [tuiAsTextfieldHost(TuiInputDirective)],\n})\nexport class TuiInputDirective extends AbstractTuiTextfieldHost<TuiInputComponent> {\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/core';\n\nimport {TuiInputComponent} from './input.component';\nimport {TuiInputDirective} from './input.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n ],\n declarations: [TuiInputComponent, TuiInputDirective],\n exports: [TuiInputComponent, TuiInputDirective, TuiTextfieldComponent],\n})\nexport class TuiInputModule {}\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-input.js","sources":["../../../projects/kit/components/input/input.component.ts","../../../projects/kit/components/input/input.template.html","../../../projects/kit/components/input/input.directive.ts","../../../projects/kit/components/input/input.module.ts","../../../projects/kit/components/input/taiga-ui-kit-components-input.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n Inject,\n Optional,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n TuiFocusableElementAccessor,\n tuiIsNativeFocused,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n} from '@taiga-ui/core';\nimport {\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n TUI_VALUE_ACCESSOR_PROVIDER,\n} from '@taiga-ui/kit/providers';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n@Component({\n selector: 'tui-input',\n templateUrl: './input.template.html',\n styleUrls: ['./input.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TUI_VALUE_ACCESSOR_PROVIDER,\n tuiAsFocusableItemAccessor(TuiInputComponent),\n tuiAsDataListHost(TuiInputComponent),\n tuiAsControl(TuiInputComponent),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiHostedDropdownComponent)\n private readonly hostedDropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist: PolymorpheusContent<\n TuiContextWithImplicit<TuiActiveZoneDirective>\n > = '';\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) cdr: ChangeDetectorRef,\n ) {\n super(control, cdr);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.computedDisabled || !this.textfield\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.hostedDropdown && this.hostedDropdown.focused)\n );\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n onValueChange(value: string): void {\n this.value = value;\n this.open = true;\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n handleOption(item: unknown): void {\n this.setNativeValue(String(item));\n this.focusInput();\n this.value = String(item);\n this.open = false;\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n }\n }\n\n private setNativeValue(value: string): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n automation-id=\"tui-input__textfield\"\n class=\"t-textfield\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"computedFocusable\"\n [value]=\"value\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputComponent} from './input.component';\n\n@Directive({\n selector: 'tui-input',\n providers: [tuiAsTextfieldHost(TuiInputDirective)],\n})\nexport class TuiInputDirective extends AbstractTuiTextfieldHost<TuiInputComponent> {\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/core';\n\nimport {TuiInputComponent} from './input.component';\nimport {TuiInputDirective} from './input.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n TuiActiveZoneModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n ],\n declarations: [TuiInputComponent, TuiInputDirective],\n exports: [TuiInputComponent, TuiInputDirective, TuiTextfieldComponent],\n})\nexport class TuiInputModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -39,10 +39,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
39
39
|
}] } });
|
|
40
40
|
|
|
41
41
|
class TuiItemsWithMoreService extends Observable {
|
|
42
|
-
constructor(ngZone,
|
|
42
|
+
constructor(ngZone, el, mutation$, resize$, directive) {
|
|
43
43
|
super(subscriber => this.stream$.subscribe(subscriber));
|
|
44
44
|
this.ngZone = ngZone;
|
|
45
|
-
this.
|
|
45
|
+
this.el = el;
|
|
46
46
|
this.mutation$ = mutation$;
|
|
47
47
|
this.resize$ = resize$;
|
|
48
48
|
this.directive = directive;
|
|
@@ -50,7 +50,7 @@ class TuiItemsWithMoreService extends Observable {
|
|
|
50
50
|
}
|
|
51
51
|
getOverflowIndex() {
|
|
52
52
|
var _a;
|
|
53
|
-
const { clientWidth, children } = this.
|
|
53
|
+
const { clientWidth, children } = this.el.nativeElement;
|
|
54
54
|
const items = Array.from(children, ({ clientWidth }) => clientWidth);
|
|
55
55
|
const first = this.directive.required === -1 ? 0 : this.directive.required;
|
|
56
56
|
const last = items.length - 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-items-with-more.js","sources":["../../../projects/kit/components/items-with-more/items-with-more.directive.ts","../../../projects/kit/components/items-with-more/items-with-more.service.ts","../../../projects/kit/components/items-with-more/more.directive.ts","../../../projects/kit/components/items-with-more/items-with-more.component.ts","../../../projects/kit/components/items-with-more/items-with-more.template.html","../../../projects/kit/components/items-with-more/items-with-more.module.ts","../../../projects/kit/components/items-with-more/taiga-ui-kit-components-items-with-more.ts"],"sourcesContent":["import {Directive, Input} from '@angular/core';\nimport {AbstractTuiController, tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-items-with-more',\n})\nexport class TuiItemsWithMoreDirective extends AbstractTuiController {\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Input()\n @tuiDefaultProp()\n required = -1;\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {tuiClamp, TuiResizeService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, throttleTime} from 'rxjs/operators';\n\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\n\n@Injectable()\nexport class TuiItemsWithMoreService extends Observable<number> {\n readonly stream$ = merge(this.directive.change$, this.mutation$, this.resize$).pipe(\n throttleTime(0),\n map(() => this.getOverflowIndex()),\n distinctUntilChanged(),\n tuiZoneOptimized(this.ngZone),\n share(),\n );\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(MutationObserverService) private readonly mutation$: Observable<unknown>,\n @Inject(TuiResizeService) private readonly resize$: Observable<unknown>,\n @Inject(TuiItemsWithMoreDirective)\n private readonly directive: TuiItemsWithMoreDirective,\n ) {\n super(subscriber => this.stream$.subscribe(subscriber));\n }\n\n private getOverflowIndex(): number {\n const {clientWidth, children} = this.elementRef.nativeElement;\n const items = Array.from(children, ({clientWidth}) => clientWidth);\n const first = this.directive.required === -1 ? 0 : this.directive.required;\n const last = items.length - 1;\n const more = children[last]?.tagName === `SPAN` ? items[last] : 0;\n\n items.unshift(...items.splice(first, 1));\n\n let total = items.reduce((sum, width) => sum + width, 0) - more;\n\n if (total <= clientWidth && this.directive.itemsLimit >= items.length) {\n return this.maxItems;\n }\n\n for (let i = last - 1; i > 0; i--) {\n total -= items[i];\n\n if (total + more <= clientWidth) {\n return tuiClamp(\n i > this.directive.required ? i - 1 : i - 2,\n -1,\n this.maxItems,\n );\n }\n }\n\n return -1;\n }\n\n private get maxItems(): number {\n return this.directive.itemsLimit > this.directive.required\n ? this.directive.itemsLimit - 1\n : this.directive.itemsLimit - 2;\n }\n}\n","import {Directive} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\n\n@Directive({\n selector: '[tuiMore]',\n})\nexport class TuiMoreDirective {\n static ngTemplateContextGuard(\n _dir: TuiMoreDirective,\n _ctx: unknown,\n ): _ctx is TuiContextWithImplicit<number> {\n return true;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n Inject,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n TuiDestroyService,\n TuiItemDirective,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\nimport {TuiItemsWithMoreService} from './items-with-more.service';\nimport {TuiMoreDirective} from './more.directive';\n\n@Component({\n selector: 'tui-items-with-more',\n templateUrl: './items-with-more.template.html',\n styleUrls: ['./items-with-more.style.less'],\n providers: [\n MutationObserverService,\n TuiResizeService,\n TuiDestroyService,\n TuiItemsWithMoreService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n characterData: true,\n subtree: true,\n },\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiItemsWithMoreComponent {\n @ContentChildren(TuiItemDirective, {read: TemplateRef, descendants: true})\n readonly items: QueryList<TemplateRef<unknown>> = EMPTY_QUERY;\n\n @ContentChild(TuiMoreDirective, {read: TemplateRef})\n readonly more?: TemplateRef<TuiContextWithImplicit<number>>;\n\n constructor(\n @Inject(TuiItemsWithMoreDirective) readonly directive: TuiItemsWithMoreDirective,\n @Inject(TuiItemsWithMoreService) readonly lastVisibleIndex$: Observable<number>,\n ) {}\n}\n","<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<ng-container *tuiLet=\"(lastVisibleIndex$ | async) || 0 as lastIndex\">\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-item\"\n [class.t-item_hidden]=\"index > lastIndex && index !== directive.required\"\n [tuiProjectClass]=\"['_active']\"\n >\n <ng-container *ngTemplateOutlet=\"item\"></ng-container>\n </div>\n <span\n *ngIf=\"more && lastIndex < items.length - 1\"\n class=\"t-item\"\n [class.t-item_hidden]=\"lastIndex >= items.length - 1\"\n [tuiProjectClass]=\"['_active']\"\n >\n <ng-container\n [ngTemplateOutlet]=\"more\"\n [ngTemplateOutletContext]=\"{$implicit: lastIndex}\"\n ></ng-container>\n </span>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiItemDirective, TuiItemModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiProjectClassModule} from '@taiga-ui/kit/directives';\n\nimport {TuiItemsWithMoreComponent} from './items-with-more.component';\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\nimport {TuiMoreDirective} from './more.directive';\n\n@NgModule({\n imports: [CommonModule, TuiItemModule, TuiLetModule, TuiProjectClassModule],\n declarations: [\n TuiItemsWithMoreComponent,\n TuiItemsWithMoreDirective,\n TuiMoreDirective,\n ],\n exports: [\n TuiItemsWithMoreComponent,\n TuiItemsWithMoreDirective,\n TuiMoreDirective,\n TuiItemDirective,\n ],\n})\nexport class TuiItemsWithMoreModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-items-with-more.js","sources":["../../../projects/kit/components/items-with-more/items-with-more.directive.ts","../../../projects/kit/components/items-with-more/items-with-more.service.ts","../../../projects/kit/components/items-with-more/more.directive.ts","../../../projects/kit/components/items-with-more/items-with-more.component.ts","../../../projects/kit/components/items-with-more/items-with-more.template.html","../../../projects/kit/components/items-with-more/items-with-more.module.ts","../../../projects/kit/components/items-with-more/taiga-ui-kit-components-items-with-more.ts"],"sourcesContent":["import {Directive, Input} from '@angular/core';\nimport {AbstractTuiController, tuiDefaultProp} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-items-with-more',\n})\nexport class TuiItemsWithMoreDirective extends AbstractTuiController {\n @Input()\n @tuiDefaultProp()\n itemsLimit = Infinity;\n\n @Input()\n @tuiDefaultProp()\n required = -1;\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {tuiClamp, TuiResizeService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, throttleTime} from 'rxjs/operators';\n\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\n\n@Injectable()\nexport class TuiItemsWithMoreService extends Observable<number> {\n readonly stream$ = merge(this.directive.change$, this.mutation$, this.resize$).pipe(\n throttleTime(0),\n map(() => this.getOverflowIndex()),\n distinctUntilChanged(),\n tuiZoneOptimized(this.ngZone),\n share(),\n );\n\n constructor(\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(MutationObserverService) private readonly mutation$: Observable<unknown>,\n @Inject(TuiResizeService) private readonly resize$: Observable<unknown>,\n @Inject(TuiItemsWithMoreDirective)\n private readonly directive: TuiItemsWithMoreDirective,\n ) {\n super(subscriber => this.stream$.subscribe(subscriber));\n }\n\n private getOverflowIndex(): number {\n const {clientWidth, children} = this.el.nativeElement;\n const items = Array.from(children, ({clientWidth}) => clientWidth);\n const first = this.directive.required === -1 ? 0 : this.directive.required;\n const last = items.length - 1;\n const more = children[last]?.tagName === `SPAN` ? items[last] : 0;\n\n items.unshift(...items.splice(first, 1));\n\n let total = items.reduce((sum, width) => sum + width, 0) - more;\n\n if (total <= clientWidth && this.directive.itemsLimit >= items.length) {\n return this.maxItems;\n }\n\n for (let i = last - 1; i > 0; i--) {\n total -= items[i];\n\n if (total + more <= clientWidth) {\n return tuiClamp(\n i > this.directive.required ? i - 1 : i - 2,\n -1,\n this.maxItems,\n );\n }\n }\n\n return -1;\n }\n\n private get maxItems(): number {\n return this.directive.itemsLimit > this.directive.required\n ? this.directive.itemsLimit - 1\n : this.directive.itemsLimit - 2;\n }\n}\n","import {Directive} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\n\n@Directive({\n selector: '[tuiMore]',\n})\nexport class TuiMoreDirective {\n static ngTemplateContextGuard(\n _dir: TuiMoreDirective,\n _ctx: unknown,\n ): _ctx is TuiContextWithImplicit<number> {\n return true;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n Inject,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport {\n MUTATION_OBSERVER_INIT,\n MutationObserverService,\n} from '@ng-web-apis/mutation-observer';\nimport {\n EMPTY_QUERY,\n TuiContextWithImplicit,\n TuiDestroyService,\n TuiItemDirective,\n TuiResizeService,\n} from '@taiga-ui/cdk';\nimport {Observable} from 'rxjs';\n\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\nimport {TuiItemsWithMoreService} from './items-with-more.service';\nimport {TuiMoreDirective} from './more.directive';\n\n@Component({\n selector: 'tui-items-with-more',\n templateUrl: './items-with-more.template.html',\n styleUrls: ['./items-with-more.style.less'],\n providers: [\n MutationObserverService,\n TuiResizeService,\n TuiDestroyService,\n TuiItemsWithMoreService,\n {\n provide: MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n characterData: true,\n subtree: true,\n },\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiItemsWithMoreComponent {\n @ContentChildren(TuiItemDirective, {read: TemplateRef, descendants: true})\n readonly items: QueryList<TemplateRef<unknown>> = EMPTY_QUERY;\n\n @ContentChild(TuiMoreDirective, {read: TemplateRef})\n readonly more?: TemplateRef<TuiContextWithImplicit<number>>;\n\n constructor(\n @Inject(TuiItemsWithMoreDirective) readonly directive: TuiItemsWithMoreDirective,\n @Inject(TuiItemsWithMoreService) readonly lastVisibleIndex$: Observable<number>,\n ) {}\n}\n","<ng-container *ngIf=\"items.changes | async\"></ng-container>\n<ng-container *tuiLet=\"(lastVisibleIndex$ | async) || 0 as lastIndex\">\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-item\"\n [class.t-item_hidden]=\"index > lastIndex && index !== directive.required\"\n [tuiProjectClass]=\"['_active']\"\n >\n <ng-container *ngTemplateOutlet=\"item\"></ng-container>\n </div>\n <span\n *ngIf=\"more && lastIndex < items.length - 1\"\n class=\"t-item\"\n [class.t-item_hidden]=\"lastIndex >= items.length - 1\"\n [tuiProjectClass]=\"['_active']\"\n >\n <ng-container\n [ngTemplateOutlet]=\"more\"\n [ngTemplateOutletContext]=\"{$implicit: lastIndex}\"\n ></ng-container>\n </span>\n</ng-container>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiItemDirective, TuiItemModule, TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiProjectClassModule} from '@taiga-ui/kit/directives';\n\nimport {TuiItemsWithMoreComponent} from './items-with-more.component';\nimport {TuiItemsWithMoreDirective} from './items-with-more.directive';\nimport {TuiMoreDirective} from './more.directive';\n\n@NgModule({\n imports: [CommonModule, TuiItemModule, TuiLetModule, TuiProjectClassModule],\n declarations: [\n TuiItemsWithMoreComponent,\n TuiItemsWithMoreDirective,\n TuiMoreDirective,\n ],\n exports: [\n TuiItemsWithMoreComponent,\n TuiItemsWithMoreDirective,\n TuiMoreDirective,\n TuiItemDirective,\n ],\n})\nexport class TuiItemsWithMoreModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
@@ -89,8 +89,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
89
89
|
}] }]; } });
|
|
90
90
|
|
|
91
91
|
class TuiLineClampComponent {
|
|
92
|
-
constructor(
|
|
93
|
-
this.
|
|
92
|
+
constructor(el, renderer, cd, ngZone, options) {
|
|
93
|
+
this.el = el;
|
|
94
94
|
this.renderer = renderer;
|
|
95
95
|
this.cd = cd;
|
|
96
96
|
this.ngZone = ngZone;
|
|
@@ -105,7 +105,7 @@ class TuiLineClampComponent {
|
|
|
105
105
|
this.overflownChange = this.isOverflown$.pipe(distinctUntilChanged());
|
|
106
106
|
this.lineClamp$ = this.linesLimit$.pipe(startWith(1), pairwise(), switchMap(([prev, next]) => next >= prev
|
|
107
107
|
? of(next)
|
|
108
|
-
: tuiTypedFromEvent(this.
|
|
108
|
+
: tuiTypedFromEvent(this.el.nativeElement, 'transitionend').pipe(filter(tuiIsCurrentTarget), map(() => next))));
|
|
109
109
|
this.skipInitialTransition();
|
|
110
110
|
}
|
|
111
111
|
set linesLimit(linesLimit) {
|
|
@@ -116,7 +116,7 @@ class TuiLineClampComponent {
|
|
|
116
116
|
return false;
|
|
117
117
|
}
|
|
118
118
|
const { scrollHeight, scrollWidth } = this.outlet.nativeElement;
|
|
119
|
-
const { clientHeight, clientWidth } = this.
|
|
119
|
+
const { clientHeight, clientWidth } = this.el.nativeElement;
|
|
120
120
|
// 4px buffer for IE/Edge incorrectly rounding scrollHeight
|
|
121
121
|
return scrollHeight - clientHeight > 4 || scrollWidth - clientWidth > 0;
|
|
122
122
|
}
|
|
@@ -137,7 +137,7 @@ class TuiLineClampComponent {
|
|
|
137
137
|
timer(0)
|
|
138
138
|
.pipe(tuiZonefree(this.ngZone))
|
|
139
139
|
.subscribe(() => {
|
|
140
|
-
this.renderer.addClass(this.
|
|
140
|
+
this.renderer.addClass(this.el.nativeElement, '_initialized');
|
|
141
141
|
this.cd.detectChanges();
|
|
142
142
|
});
|
|
143
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-kit-components-line-clamp.js","sources":["../../../projects/kit/components/line-clamp/line-clamp-box.component.ts","../../../projects/kit/components/line-clamp/line-clamp-options.ts","../../../projects/kit/components/line-clamp/line-clamp-position.directive.ts","../../../projects/kit/components/line-clamp/line-clamp.component.ts","../../../projects/kit/components/line-clamp/line-clamp.template.html","../../../projects/kit/components/line-clamp/line-clamp.module.ts","../../../projects/kit/components/line-clamp/taiga-ui-kit-components-line-clamp.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding} from '@angular/core';\nimport {TuiDestroyService, TuiHoveredService} from '@taiga-ui/cdk';\nimport {\n tuiFadeIn,\n TuiHintComponent,\n TuiHintDirective,\n tuiPositionAccessorFor,\n TuiPositionService,\n tuiRectAccessorFor,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-line-clamp-box',\n template: `\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n `,\n styleUrls: ['./line-clamp-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiDestroyService,\n TuiPositionService,\n TuiHoveredService,\n tuiPositionAccessorFor('hint'),\n tuiRectAccessorFor('hint', TuiHintDirective),\n ],\n animations: [tuiFadeIn],\n})\nexport class TuiLineClampBoxComponent extends TuiHintComponent {\n @HostBinding('style.minWidth.px')\n get width(): number {\n return this.accessor.getClientRect().width;\n }\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiLineClampOptions {\n readonly showHint: boolean;\n}\n\nexport const TUI_LINE_CLAMP_DEFAULT_OPTIONS: TuiLineClampOptions = {\n showHint: true,\n};\n\n/**\n * Default parameters for LineClamp component\n */\nexport const TUI_LINE_CLAMP_OPTIONS = new InjectionToken<TuiLineClampOptions>(\n `[TUI_LINE_CLAMP_OPTIONS]`,\n {\n factory: () => TUI_LINE_CLAMP_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiLineClampOptionsProvider: (\n options: Partial<TuiLineClampOptions>,\n) => ValueProvider = (options: Partial<TuiLineClampOptions>) => ({\n provide: TUI_LINE_CLAMP_OPTIONS,\n useValue: {...TUI_LINE_CLAMP_DEFAULT_OPTIONS, ...options},\n});\n","import {Directive, Inject} from '@angular/core';\nimport {\n tuiAsPositionAccessor,\n TuiHintDirective,\n TuiPoint,\n TuiPositionAccessor,\n TuiRectAccessor,\n} from '@taiga-ui/core';\n\n@Directive({\n selector: '[tuiHintCustomPosition]',\n providers: [tuiAsPositionAccessor(TuiLineClampPositionDirective)],\n})\nexport class TuiLineClampPositionDirective extends TuiPositionAccessor {\n readonly type = 'hint';\n\n constructor(@Inject(TuiHintDirective) private readonly accessor: TuiRectAccessor) {\n super();\n }\n\n getPosition(): TuiPoint {\n const {top, left} = this.accessor.getClientRect();\n\n return [top, left];\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n Output,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n tuiDefaultProp,\n tuiIsCurrentTarget,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_HINT_COMPONENT, TuiHintDirective} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, of, Subject, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n pairwise,\n startWith,\n switchMap,\n} from 'rxjs/operators';\n\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TUI_LINE_CLAMP_OPTIONS, TuiLineClampOptions} from './line-clamp-options';\n\n@Component({\n selector: 'tui-line-clamp',\n templateUrl: './line-clamp.template.html',\n styleUrls: ['./line-clamp.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_HINT_COMPONENT,\n useValue: TuiLineClampBoxComponent,\n },\n ],\n})\nexport class TuiLineClampComponent implements DoCheck, AfterViewInit {\n @ViewChild(TuiHintDirective, {read: ElementRef})\n private readonly outlet?: ElementRef<HTMLElement>;\n\n private readonly linesLimit$ = new BehaviorSubject(1);\n private readonly isOverflown$ = new Subject<boolean>();\n private initialized = false;\n\n @HostBinding('style.maxHeight.px')\n maxHeight: number | null = null;\n\n @HostBinding('style.height.px')\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n set linesLimit(linesLimit: number) {\n this.linesLimit$.next(linesLimit);\n }\n\n @Input()\n @tuiDefaultProp()\n lineHeight = 24;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Output()\n readonly overflownChange: Observable<boolean> = this.isOverflown$.pipe(\n distinctUntilChanged(),\n );\n\n lineClamp$ = this.linesLimit$.pipe(\n startWith(1),\n pairwise(),\n switchMap(([prev, next]) =>\n next >= prev\n ? of(next)\n : tuiTypedFromEvent(this.elementRef.nativeElement, 'transitionend').pipe(\n filter(tuiIsCurrentTarget),\n map(() => next),\n ),\n ),\n );\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) private readonly cd: ChangeDetectorRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_LINE_CLAMP_OPTIONS) private readonly options: TuiLineClampOptions,\n ) {\n this.skipInitialTransition();\n }\n\n get overflown(): boolean {\n if (!this.outlet) {\n return false;\n }\n\n const {scrollHeight, scrollWidth} = this.outlet.nativeElement;\n const {clientHeight, clientWidth} = this.elementRef.nativeElement;\n\n // 4px buffer for IE/Edge incorrectly rounding scrollHeight\n return scrollHeight - clientHeight > 4 || scrollWidth - clientWidth > 0;\n }\n\n get computedContent(): PolymorpheusContent {\n return this.options.showHint && this.overflown ? this.content : '';\n }\n\n @HostListener('transitionend')\n updateView(): void {\n this.cd.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.initialized = true;\n }\n\n ngDoCheck(): void {\n this.updateStaticallyHostBinding();\n this.isOverflown$.next(this.overflown);\n }\n\n private skipInitialTransition(): void {\n timer(0)\n .pipe(tuiZonefree(this.ngZone))\n .subscribe(() => {\n this.renderer.addClass(this.elementRef.nativeElement, '_initialized');\n this.cd.detectChanges();\n });\n }\n\n private updateStaticallyHostBinding(): void {\n if (this.outlet) {\n this.height = this.outlet.nativeElement.scrollHeight + 4;\n }\n\n if (this.initialized) {\n this.maxHeight = this.lineHeight * this.linesLimit$.value;\n }\n }\n}\n","<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule, TuiResizeModule} from '@taiga-ui/cdk';\nimport {TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineClampComponent} from './line-clamp.component';\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TuiLineClampPositionDirective} from './line-clamp-position.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiResizeModule,\n TuiLetModule,\n ],\n declarations: [\n TuiLineClampComponent,\n TuiLineClampBoxComponent,\n TuiLineClampPositionDirective,\n ],\n exports: [TuiLineClampComponent],\n})\nexport class TuiLineClampModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.TuiLineClampPositionDirective","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-kit-components-line-clamp.js","sources":["../../../projects/kit/components/line-clamp/line-clamp-box.component.ts","../../../projects/kit/components/line-clamp/line-clamp-options.ts","../../../projects/kit/components/line-clamp/line-clamp-position.directive.ts","../../../projects/kit/components/line-clamp/line-clamp.component.ts","../../../projects/kit/components/line-clamp/line-clamp.template.html","../../../projects/kit/components/line-clamp/line-clamp.module.ts","../../../projects/kit/components/line-clamp/taiga-ui-kit-components-line-clamp.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding} from '@angular/core';\nimport {TuiDestroyService, TuiHoveredService} from '@taiga-ui/cdk';\nimport {\n tuiFadeIn,\n TuiHintComponent,\n TuiHintDirective,\n tuiPositionAccessorFor,\n TuiPositionService,\n tuiRectAccessorFor,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-line-clamp-box',\n template: `\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n `,\n styleUrls: ['./line-clamp-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiDestroyService,\n TuiPositionService,\n TuiHoveredService,\n tuiPositionAccessorFor('hint'),\n tuiRectAccessorFor('hint', TuiHintDirective),\n ],\n animations: [tuiFadeIn],\n})\nexport class TuiLineClampBoxComponent extends TuiHintComponent {\n @HostBinding('style.minWidth.px')\n get width(): number {\n return this.accessor.getClientRect().width;\n }\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiLineClampOptions {\n readonly showHint: boolean;\n}\n\nexport const TUI_LINE_CLAMP_DEFAULT_OPTIONS: TuiLineClampOptions = {\n showHint: true,\n};\n\n/**\n * Default parameters for LineClamp component\n */\nexport const TUI_LINE_CLAMP_OPTIONS = new InjectionToken<TuiLineClampOptions>(\n `[TUI_LINE_CLAMP_OPTIONS]`,\n {\n factory: () => TUI_LINE_CLAMP_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiLineClampOptionsProvider: (\n options: Partial<TuiLineClampOptions>,\n) => ValueProvider = (options: Partial<TuiLineClampOptions>) => ({\n provide: TUI_LINE_CLAMP_OPTIONS,\n useValue: {...TUI_LINE_CLAMP_DEFAULT_OPTIONS, ...options},\n});\n","import {Directive, Inject} from '@angular/core';\nimport {\n tuiAsPositionAccessor,\n TuiHintDirective,\n TuiPoint,\n TuiPositionAccessor,\n TuiRectAccessor,\n} from '@taiga-ui/core';\n\n@Directive({\n selector: '[tuiHintCustomPosition]',\n providers: [tuiAsPositionAccessor(TuiLineClampPositionDirective)],\n})\nexport class TuiLineClampPositionDirective extends TuiPositionAccessor {\n readonly type = 'hint';\n\n constructor(@Inject(TuiHintDirective) private readonly accessor: TuiRectAccessor) {\n super();\n }\n\n getPosition(): TuiPoint {\n const {top, left} = this.accessor.getClientRect();\n\n return [top, left];\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n Output,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n tuiDefaultProp,\n tuiIsCurrentTarget,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_HINT_COMPONENT, TuiHintDirective} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, of, Subject, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n pairwise,\n startWith,\n switchMap,\n} from 'rxjs/operators';\n\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TUI_LINE_CLAMP_OPTIONS, TuiLineClampOptions} from './line-clamp-options';\n\n@Component({\n selector: 'tui-line-clamp',\n templateUrl: './line-clamp.template.html',\n styleUrls: ['./line-clamp.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_HINT_COMPONENT,\n useValue: TuiLineClampBoxComponent,\n },\n ],\n})\nexport class TuiLineClampComponent implements DoCheck, AfterViewInit {\n @ViewChild(TuiHintDirective, {read: ElementRef})\n private readonly outlet?: ElementRef<HTMLElement>;\n\n private readonly linesLimit$ = new BehaviorSubject(1);\n private readonly isOverflown$ = new Subject<boolean>();\n private initialized = false;\n\n @HostBinding('style.maxHeight.px')\n maxHeight: number | null = null;\n\n @HostBinding('style.height.px')\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n set linesLimit(linesLimit: number) {\n this.linesLimit$.next(linesLimit);\n }\n\n @Input()\n @tuiDefaultProp()\n lineHeight = 24;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Output()\n readonly overflownChange: Observable<boolean> = this.isOverflown$.pipe(\n distinctUntilChanged(),\n );\n\n lineClamp$ = this.linesLimit$.pipe(\n startWith(1),\n pairwise(),\n switchMap(([prev, next]) =>\n next >= prev\n ? of(next)\n : tuiTypedFromEvent(this.el.nativeElement, 'transitionend').pipe(\n filter(tuiIsCurrentTarget),\n map(() => next),\n ),\n ),\n );\n\n constructor(\n @Inject(ElementRef) private readonly el: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) private readonly cd: ChangeDetectorRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_LINE_CLAMP_OPTIONS) private readonly options: TuiLineClampOptions,\n ) {\n this.skipInitialTransition();\n }\n\n get overflown(): boolean {\n if (!this.outlet) {\n return false;\n }\n\n const {scrollHeight, scrollWidth} = this.outlet.nativeElement;\n const {clientHeight, clientWidth} = this.el.nativeElement;\n\n // 4px buffer for IE/Edge incorrectly rounding scrollHeight\n return scrollHeight - clientHeight > 4 || scrollWidth - clientWidth > 0;\n }\n\n get computedContent(): PolymorpheusContent {\n return this.options.showHint && this.overflown ? this.content : '';\n }\n\n @HostListener('transitionend')\n updateView(): void {\n this.cd.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.initialized = true;\n }\n\n ngDoCheck(): void {\n this.updateStaticallyHostBinding();\n this.isOverflown$.next(this.overflown);\n }\n\n private skipInitialTransition(): void {\n timer(0)\n .pipe(tuiZonefree(this.ngZone))\n .subscribe(() => {\n this.renderer.addClass(this.el.nativeElement, '_initialized');\n this.cd.detectChanges();\n });\n }\n\n private updateStaticallyHostBinding(): void {\n if (this.outlet) {\n this.height = this.outlet.nativeElement.scrollHeight + 4;\n }\n\n if (this.initialized) {\n this.maxHeight = this.lineHeight * this.linesLimit$.value;\n }\n }\n}\n","<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule, TuiResizeModule} from '@taiga-ui/cdk';\nimport {TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineClampComponent} from './line-clamp.component';\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TuiLineClampPositionDirective} from './line-clamp-position.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiResizeModule,\n TuiLetModule,\n ],\n declarations: [\n TuiLineClampComponent,\n TuiLineClampBoxComponent,\n TuiLineClampPositionDirective,\n ],\n exports: [TuiLineClampComponent],\n})\nexport class TuiLineClampModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.TuiLineClampPositionDirective","i4"],"mappings":"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"}
|
|
@@ -46,8 +46,7 @@ class AbstractTuiNativeMultiSelect extends AbstractTuiNativeSelect {
|
|
|
46
46
|
this.selectedMapper = (option, value) => value.includes(option);
|
|
47
47
|
}
|
|
48
48
|
onValueChange() {
|
|
49
|
-
|
|
50
|
-
this.host.onSelectionChange(Array.from(selectedOptions).map(option => option.value));
|
|
49
|
+
this.host.onSelectionChange(Array.from(this.el.nativeElement.selectedOptions).map(option => option.value));
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
52
|
AbstractTuiNativeMultiSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AbstractTuiNativeMultiSelect, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -57,8 +56,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
57
56
|
}] });
|
|
58
57
|
|
|
59
58
|
class TuiMultiSelectComponent extends AbstractTuiMultipleControl {
|
|
60
|
-
constructor(control,
|
|
61
|
-
super(control,
|
|
59
|
+
constructor(control, cdr, arrowMode, itemsHandlers, options, controller, isMobile) {
|
|
60
|
+
super(control, cdr);
|
|
62
61
|
this.arrowMode = arrowMode;
|
|
63
62
|
this.itemsHandlers = itemsHandlers;
|
|
64
63
|
this.options = options;
|