@taiga-ui/kit 3.0.0-rc.0 → 3.0.0-rc.1
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/bundles/taiga-ui-kit-components-accordion.umd.js +5 -17
- package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.js +3 -9
- package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-arrow.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-avatar.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badge.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-badged-content.umd.js +3 -6
- package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js +0 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js +12 -8
- package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.js +4 -5
- package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +7 -10
- package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +5 -9
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.js +5 -9
- package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.js +21 -41
- package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +5 -26
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.js +1 -2
- package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.js +21 -36
- package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.js +12 -35
- package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js +19 -42
- 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 +18 -42
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.js +17 -41
- package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-files.umd.js +4 -17
- package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -8
- package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js +19 -37
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.js +19 -37
- package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.js +14 -37
- package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.js +29 -56
- package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +38 -51
- package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.js +30 -57
- package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.js +17 -13
- package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +14 -12
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +33 -50
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-time.umd.js +8 -15
- package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.js +16 -33
- package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js +108 -18
- package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-marker-icon.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js +34 -69
- package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js +10 -23
- package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +2 -15
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js +5 -15
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-block.umd.js +7 -10
- package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +5 -9
- package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio-list.umd.js +5 -9
- package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.js +5 -10
- package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.js +40 -86
- package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.js +4 -8
- package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select-option.umd.js +5 -5
- package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js +20 -40
- package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.js +40 -38
- package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.js +9 -7
- package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +40 -40
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.js +6 -17
- package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.js +18 -31
- package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.js +5 -9
- package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tree.umd.js +2 -8
- package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-constants.umd.js +334 -3
- package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
- package/bundles/{taiga-ui-kit-directives-dropdown-context.umd.js → taiga-ui-kit-directives-data-list-dropdown-manager.umd.js} +117 -141
- package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -0
- package/bundles/taiga-ui-kit-directives-highlight.umd.js +0 -1
- package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +2 -2
- package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-present.umd.js +2 -2
- package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives-project-class.umd.js +0 -3
- package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-directives.umd.js +6 -18
- package/bundles/taiga-ui-kit-directives.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +4 -4
- package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-pipes-field-error.umd.js +0 -2
- package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +3 -3
- package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-providers.umd.js +11 -42
- package/bundles/taiga-ui-kit-providers.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.js +17 -12
- package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-files.umd.js +3 -15
- package/bundles/taiga-ui-kit-utils-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-format.umd.js +1 -5
- package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-mask.umd.js +3 -9
- package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-math.umd.js +1 -1
- package/bundles/taiga-ui-kit-utils-math.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js +1 -5
- package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-utils.umd.js +4 -10
- package/bundles/taiga-ui-kit-utils.umd.js.map +1 -1
- package/components/badge/badge.component.d.ts +2 -2
- package/components/badged-content/badged-content.component.d.ts +2 -2
- package/components/combo-box/index.d.ts +0 -1
- package/components/filter/filter.component.d.ts +1 -1
- package/components/input/index.d.ts +0 -1
- package/components/input-copy/index.d.ts +0 -1
- package/components/input-copy/input-copy.component.d.ts +4 -4
- package/components/input-date/index.d.ts +0 -1
- package/components/input-date-range/index.d.ts +0 -1
- package/components/input-date-time/index.d.ts +0 -1
- package/components/input-month/index.d.ts +0 -1
- package/components/input-month-range/index.d.ts +0 -1
- package/components/input-password/input-password.component.d.ts +2 -2
- package/components/input-password/input-password.module.d.ts +2 -3
- package/components/input-phone/index.d.ts +0 -1
- package/components/input-phone/input-phone.component.d.ts +2 -2
- package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -5
- package/components/input-range/input-range.component.d.ts +1 -0
- package/components/input-slider/input-slider.component.d.ts +1 -0
- package/components/input-tag/input-tag-options.d.ts +4 -1
- package/components/input-tag/input-tag.component.d.ts +3 -5
- package/components/line-clamp/index.d.ts +1 -0
- package/components/line-clamp/line-clamp-box.component.d.ts +7 -0
- package/components/line-clamp/line-clamp-position.directive.d.ts +9 -0
- package/components/line-clamp/line-clamp.module.d.ts +7 -5
- package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +0 -3
- package/components/pagination/pagination.component.d.ts +0 -1
- package/components/progress/progress-segmented/progress-segmented.component.d.ts +0 -2
- package/components/range/range.component.d.ts +7 -23
- package/components/select/index.d.ts +0 -1
- package/components/slider/helpers/slider-key-steps.directive.d.ts +1 -3
- package/components/slider/slider.component.d.ts +5 -3
- package/components/stepper/step/step.component.d.ts +2 -2
- package/components/tabs/tab/tab.providers.d.ts +1 -4
- package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +2 -1
- package/components/tabs/tabs-with-more/tabs-with-more.providers.d.ts +3 -4
- package/components/tag/tag.component.d.ts +1 -3
- package/components/text-area/index.d.ts +0 -1
- package/components/tree/components/tree-item/tree-item.providers.d.ts +0 -1
- package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +15 -0
- package/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.d.ts +7 -0
- package/directives/data-list-dropdown-manager/index.d.ts +2 -0
- package/directives/data-list-dropdown-manager/package.json +10 -0
- package/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.d.ts +5 -0
- package/directives/index.d.ts +1 -3
- package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -17
- package/esm2015/components/accordion/accordion.component.js +5 -5
- package/esm2015/components/action/action.component.js +6 -12
- package/esm2015/components/arrow/arrow.component.js +3 -3
- package/esm2015/components/avatar/avatar.component.js +6 -6
- package/esm2015/components/badge/badge.component.js +6 -6
- package/esm2015/components/badged-content/badged-content.component.js +4 -7
- package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
- package/esm2015/components/calendar-month/calendar-month.component.js +1 -2
- package/esm2015/components/calendar-range/calendar-range.component.js +12 -11
- package/esm2015/components/carousel/carousel-scroll.directive.js +3 -3
- package/esm2015/components/carousel/carousel.component.js +4 -5
- package/esm2015/components/carousel/carousel.directive.js +3 -3
- package/esm2015/components/checkbox/checkbox.component.js +8 -12
- package/esm2015/components/checkbox-block/checkbox-block.component.js +10 -13
- package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +8 -12
- package/esm2015/components/combo-box/combo-box.component.js +20 -8
- package/esm2015/components/combo-box/combo-box.directive.js +5 -15
- package/esm2015/components/combo-box/index.js +1 -2
- package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +5 -15
- package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +5 -15
- package/esm2015/components/data-list-wrapper/data-list-wrapper.js +3 -4
- package/esm2015/components/files/file/file.component.js +3 -4
- package/esm2015/components/filter/filter.component.js +2 -2
- package/esm2015/components/input/index.js +1 -2
- package/esm2015/components/input/input.component.js +18 -7
- package/esm2015/components/input/input.directive.js +5 -15
- package/esm2015/components/input-copy/index.js +1 -2
- package/esm2015/components/input-copy/input-copy.component.js +18 -10
- package/esm2015/components/input-copy/input-copy.directive.js +5 -15
- package/esm2015/components/input-count/input-count.component.js +14 -27
- package/esm2015/components/input-count/input-count.directive.js +5 -15
- package/esm2015/components/input-date/index.js +1 -2
- package/esm2015/components/input-date/input-date.component.js +15 -9
- package/esm2015/components/input-date/input-date.directive.js +5 -15
- package/esm2015/components/input-date-range/index.js +1 -2
- package/esm2015/components/input-date-range/input-date-range.component.js +18 -11
- package/esm2015/components/input-date-range/input-date-range.directive.js +5 -15
- package/esm2015/components/input-date-time/index.js +1 -2
- package/esm2015/components/input-date-time/input-date-time.component.js +16 -10
- package/esm2015/components/input-date-time/input-date-time.directive.js +5 -15
- package/esm2015/components/input-files/input-files.component.js +8 -21
- package/esm2015/components/input-inline/input-inline.component.js +5 -11
- package/esm2015/components/input-month/index.js +1 -2
- package/esm2015/components/input-month/input-month.component.js +17 -8
- package/esm2015/components/input-month/input-month.directive.js +5 -17
- package/esm2015/components/input-month-range/index.js +1 -2
- package/esm2015/components/input-month-range/input-month-range.component.js +17 -8
- package/esm2015/components/input-month-range/input-month-range.directive.js +5 -17
- package/esm2015/components/input-number/input-number.component.js +16 -29
- package/esm2015/components/input-number/input-number.directive.js +5 -15
- package/esm2015/components/input-password/input-password.component.js +18 -32
- package/esm2015/components/input-password/input-password.directive.js +5 -15
- package/esm2015/components/input-password/input-password.module.js +1 -5
- package/esm2015/components/input-phone/index.js +1 -2
- package/esm2015/components/input-phone/input-phone.component.js +28 -14
- package/esm2015/components/input-phone/input-phone.directive.js +5 -15
- package/esm2015/components/input-phone-international/input-phone-international.component.js +16 -22
- package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +5 -11
- package/esm2015/components/input-range/input-range.component.js +20 -16
- package/esm2015/components/input-slider/input-slider.component.js +13 -15
- package/esm2015/components/input-tag/input-tag-options.js +8 -1
- package/esm2015/components/input-tag/input-tag.component.js +24 -54
- package/esm2015/components/input-time/input-time.component.js +11 -18
- package/esm2015/components/line-clamp/index.js +2 -1
- package/esm2015/components/line-clamp/line-clamp-box.component.js +32 -0
- package/esm2015/components/line-clamp/line-clamp-position.directive.js +26 -0
- package/esm2015/components/line-clamp/line-clamp.component.js +22 -9
- package/esm2015/components/line-clamp/line-clamp.module.js +30 -6
- package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
- package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +11 -21
- package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +17 -28
- package/esm2015/components/multi-select/multi-select.component.js +15 -30
- package/esm2015/components/multi-select-option/multi-select-option.component.js +6 -6
- package/esm2015/components/pagination/pagination.component.js +13 -25
- package/esm2015/components/pdf-viewer/pdf-viewer.module.js +4 -17
- package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +4 -4
- package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
- package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +3 -11
- package/esm2015/components/radio/radio.component.js +8 -13
- package/esm2015/components/radio-block/radio-block.component.js +10 -13
- package/esm2015/components/radio-labeled/radio-labeled.component.js +8 -12
- package/esm2015/components/radio-list/radio-list.component.js +8 -12
- package/esm2015/components/range/range-change.directive.js +10 -9
- package/esm2015/components/range/range.component.js +27 -79
- package/esm2015/components/rating/rating.component.js +7 -11
- package/esm2015/components/select/index.js +1 -2
- package/esm2015/components/select/select.component.js +19 -7
- package/esm2015/components/select/select.directive.js +5 -15
- package/esm2015/components/select-option/select-option.component.js +7 -7
- package/esm2015/components/slider/helpers/slider-key-steps.directive.js +14 -22
- package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -6
- package/esm2015/components/slider/slider.component.js +21 -10
- package/esm2015/components/stepper/step/step.component.js +5 -5
- package/esm2015/components/stepper/stepper.component.js +7 -5
- package/esm2015/components/tabs/tab/tab.providers.js +10 -10
- package/esm2015/components/tabs/tabs/tabs.component.js +1 -2
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +18 -17
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +9 -11
- package/esm2015/components/tag/tag.component.js +10 -20
- package/esm2015/components/text-area/index.js +1 -2
- package/esm2015/components/text-area/text-area.component.js +19 -8
- package/esm2015/components/text-area/text-area.directive.js +5 -15
- package/esm2015/components/toggle/toggle.component.js +8 -12
- package/esm2015/components/tree/components/tree-item/tree-item.providers.js +2 -6
- package/esm2015/components/tree/directives/tree-controller.directive.js +3 -3
- package/esm2015/components/tree/misc/tree.service.js +1 -2
- package/esm2015/constants/max-day-range-length-mapper.js +5 -4
- package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +100 -0
- package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.js +16 -0
- package/esm2015/directives/data-list-dropdown-manager/index.js +3 -0
- package/esm2015/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.js +5 -0
- package/esm2015/directives/highlight/highlight.directive.js +1 -2
- package/esm2015/directives/index.js +2 -4
- package/esm2015/directives/lazy-loading/lazy-loading.directive.js +2 -2
- package/esm2015/directives/lazy-loading/lazy-loading.service.js +3 -3
- package/esm2015/directives/present/present.directive.js +4 -4
- package/esm2015/directives/project-class/project-class.directive.js +1 -4
- package/esm2015/interfaces/index.js +1 -2
- package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +7 -7
- package/esm2015/pipes/field-error/field-error-content-pipe.js +1 -2
- package/esm2015/pipes/field-error/field-error-pipe.js +1 -2
- package/esm2015/pipes/filter-by-input/filter-by-input.base.js +5 -5
- package/esm2015/providers/month-formatter.provider.js +8 -13
- package/esm2015/providers/specific-dropdown-controllers.js +6 -29
- package/esm2015/tokens/calendar-date-stream.js +15 -0
- package/esm2015/tokens/index.js +2 -3
- package/esm2015/utils/files/format-size.js +4 -9
- package/esm2015/utils/files/get-accept-array.js +2 -7
- package/esm2015/utils/format/string-hash-to-hsl.js +2 -5
- package/esm2015/utils/index.js +1 -2
- package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -8
- package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +3 -3
- package/esm2015/utils/math/key-steps.js +3 -3
- package/esm2015/utils/miscellaneous/get-precision.js +2 -5
- package/fesm2015/taiga-ui-kit-components-accordion.js +7 -19
- package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-action.js +5 -11
- package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-arrow.js +2 -2
- package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-avatar.js +5 -5
- package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-badge.js +4 -4
- package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-badged-content.js +3 -6
- package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
- package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js +0 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-range.js +12 -11
- package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-carousel.js +5 -6
- package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-block.js +9 -12
- package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +7 -11
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox.js +7 -11
- package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-combo-box.js +22 -41
- package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +7 -28
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-files.js +2 -3
- package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
- package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-copy.js +22 -36
- package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-count.js +15 -38
- package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js +20 -44
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js +19 -44
- package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js +18 -43
- package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-files.js +7 -20
- package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-inline.js +4 -10
- package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month-range.js +20 -37
- package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month.js +20 -37
- package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-number.js +17 -40
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-password.js +20 -47
- package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js +18 -30
- package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js +31 -57
- package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +19 -15
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +12 -14
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +33 -55
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-time.js +10 -17
- package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input.js +20 -36
- package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-line-clamp.js +96 -14
- package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-marker-icon.js +1 -1
- package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select-option.js +5 -5
- package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js +37 -73
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js +13 -25
- package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +3 -16
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +7 -15
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-block.js +9 -12
- package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-labeled.js +7 -11
- package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio-list.js +7 -11
- package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio.js +7 -12
- package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-range.js +38 -86
- package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-rating.js +6 -10
- package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select-option.js +6 -6
- package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js +21 -40
- package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-slider.js +34 -32
- package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-stepper.js +10 -8
- package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +33 -35
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tag.js +10 -20
- package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-text-area.js +22 -34
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-toggle.js +7 -11
- package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tree.js +4 -9
- package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
- package/fesm2015/taiga-ui-kit-constants.js +4 -3
- package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +120 -0
- package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -0
- package/fesm2015/taiga-ui-kit-directives-highlight.js +0 -1
- package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +3 -3
- package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-present.js +3 -3
- package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives-project-class.js +0 -3
- package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
- package/fesm2015/taiga-ui-kit-directives.js +1 -3
- package/fesm2015/taiga-ui-kit-directives.js.map +1 -1
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +6 -6
- package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-pipes-field-error.js +0 -2
- package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
- package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +4 -4
- package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
- package/fesm2015/taiga-ui-kit-providers.js +13 -40
- package/fesm2015/taiga-ui-kit-providers.js.map +1 -1
- package/fesm2015/taiga-ui-kit-tokens.js +15 -8
- package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-files.js +5 -15
- package/fesm2015/taiga-ui-kit-utils-files.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-format.js +2 -5
- package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-mask.js +4 -9
- package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-math.js +2 -2
- package/fesm2015/taiga-ui-kit-utils-math.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils-miscellaneous.js +2 -5
- package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
- package/fesm2015/taiga-ui-kit-utils.js +0 -1
- package/fesm2015/taiga-ui-kit-utils.js.map +1 -1
- package/interfaces/index.d.ts +0 -1
- package/package.json +5 -5
- package/providers/month-formatter.provider.d.ts +0 -7
- package/providers/specific-dropdown-controllers.d.ts +1 -6
- package/tokens/calendar-date-stream.d.ts +5 -0
- package/tokens/index.d.ts +1 -2
- package/tokens/validation-errors.d.ts +1 -1
- package/utils/files/format-size.d.ts +1 -5
- package/utils/files/get-accept-array.d.ts +1 -5
- package/utils/format/string-hash-to-hsl.d.ts +1 -3
- package/utils/index.d.ts +0 -1
- package/utils/mask/create-auto-corrected-date-pipe.d.ts +1 -5
- package/utils/miscellaneous/get-precision.d.ts +1 -3
- package/abstract/index.d.ts +0 -1
- package/abstract/package.json +0 -10
- package/abstract/slider/slider.d.ts +0 -69
- package/abstract/taiga-ui-kit-abstract.d.ts +0 -5
- package/bundles/taiga-ui-kit-abstract.umd.js +0 -651
- package/bundles/taiga-ui-kit-abstract.umd.js.map +0 -1
- package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +0 -1
- package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js +0 -107
- package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js.map +0 -1
- package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +0 -643
- package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +0 -1
- package/bundles/taiga-ui-kit-utils-dom.umd.js +0 -124
- package/bundles/taiga-ui-kit-utils-dom.umd.js.map +0 -1
- package/components/combo-box/combo-box.providers.d.ts +0 -1
- package/components/input/input.providers.d.ts +0 -1
- package/components/input-copy/input-copy.providers.d.ts +0 -2
- package/components/input-date/input-date.providers.d.ts +0 -1
- package/components/input-date-range/input-date-range.providers.d.ts +0 -1
- package/components/input-date-time/input-date-time.providers.d.ts +0 -1
- package/components/input-month/input-month.providers.d.ts +0 -2
- package/components/input-month-range/input-month-range.providers.d.ts +0 -2
- package/components/input-phone/input-phone.providers.d.ts +0 -5
- package/components/select/select.providers.d.ts +0 -1
- package/components/text-area/text-area.providers.d.ts +0 -2
- package/directives/dropdown-context/dropdown-context.directive.d.ts +0 -30
- package/directives/dropdown-context/dropdown-context.module.d.ts +0 -8
- package/directives/dropdown-context/index.d.ts +0 -2
- package/directives/dropdown-context/package.json +0 -10
- package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.d.ts +0 -5
- package/directives/dropdown-hover/dropdown-hover.directive.d.ts +0 -11
- package/directives/dropdown-hover/dropdown-hover.module.d.ts +0 -7
- package/directives/dropdown-hover/index.d.ts +0 -2
- package/directives/dropdown-hover/package.json +0 -10
- package/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.d.ts +0 -5
- package/directives/dropdown-selection/dropdown-selection.directive.d.ts +0 -46
- package/directives/dropdown-selection/dropdown-selection.module.d.ts +0 -8
- package/directives/dropdown-selection/index.d.ts +0 -2
- package/directives/dropdown-selection/package.json +0 -10
- package/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.d.ts +0 -5
- package/esm2015/abstract/index.js +0 -2
- package/esm2015/abstract/slider/slider.js +0 -264
- package/esm2015/abstract/taiga-ui-kit-abstract.js +0 -5
- package/esm2015/components/combo-box/combo-box.providers.js +0 -26
- package/esm2015/components/input/input.providers.js +0 -22
- package/esm2015/components/input-copy/input-copy.providers.js +0 -16
- package/esm2015/components/input-date/input-date.providers.js +0 -27
- package/esm2015/components/input-date-range/input-date-range.providers.js +0 -27
- package/esm2015/components/input-date-time/input-date-time.providers.js +0 -27
- package/esm2015/components/input-month/input-month.providers.js +0 -19
- package/esm2015/components/input-month-range/input-month-range.providers.js +0 -19
- package/esm2015/components/input-phone/input-phone.providers.js +0 -35
- package/esm2015/components/select/select.providers.js +0 -26
- package/esm2015/components/text-area/text-area.providers.js +0 -18
- package/esm2015/directives/dropdown-context/dropdown-context.directive.js +0 -141
- package/esm2015/directives/dropdown-context/dropdown-context.module.js +0 -18
- package/esm2015/directives/dropdown-context/index.js +0 -3
- package/esm2015/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +0 -5
- package/esm2015/directives/dropdown-hover/dropdown-hover.directive.js +0 -56
- package/esm2015/directives/dropdown-hover/dropdown-hover.module.js +0 -16
- package/esm2015/directives/dropdown-hover/index.js +0 -3
- package/esm2015/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.js +0 -5
- package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +0 -252
- package/esm2015/directives/dropdown-selection/dropdown-selection.module.js +0 -18
- package/esm2015/directives/dropdown-selection/index.js +0 -3
- package/esm2015/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.js +0 -5
- package/esm2015/interfaces/bread-crumbs-item.js +0 -2
- package/esm2015/tokens/calendar-data-stream.js +0 -3
- package/esm2015/tokens/tag-status.js +0 -6
- package/esm2015/utils/dom/get-word-range.js +0 -53
- package/esm2015/utils/dom/index.js +0 -4
- package/esm2015/utils/dom/scroll-to-element.js +0 -23
- package/esm2015/utils/dom/set-range-offset.js +0 -29
- package/esm2015/utils/dom/taiga-ui-kit-utils-dom.js +0 -5
- package/fesm2015/taiga-ui-kit-abstract.js +0 -271
- package/fesm2015/taiga-ui-kit-abstract.js.map +0 -1
- package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +0 -162
- package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +0 -1
- package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js +0 -76
- package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js.map +0 -1
- package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +0 -273
- package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +0 -1
- package/fesm2015/taiga-ui-kit-utils-dom.js +0 -111
- package/fesm2015/taiga-ui-kit-utils-dom.js.map +0 -1
- package/interfaces/bread-crumbs-item.d.ts +0 -6
- package/tokens/calendar-data-stream.d.ts +0 -4
- package/tokens/tag-status.d.ts +0 -3
- package/utils/dom/get-word-range.d.ts +0 -9
- package/utils/dom/index.d.ts +0 -3
- package/utils/dom/package.json +0 -10
- package/utils/dom/scroll-to-element.d.ts +0 -5
- package/utils/dom/set-range-offset.d.ts +0 -6
- package/utils/dom/taiga-ui-kit-utils-dom.d.ts +0 -5
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { forwardRef } from '@angular/core';
|
|
2
|
-
import { AbstractTuiControl, TUI_FOCUSABLE_ITEM_ACCESSOR } from '@taiga-ui/cdk';
|
|
3
|
-
import { HINT_CONTROLLER_PROVIDER, MODE_PROVIDER, TEXTFIELD_CONTROLLER_PROVIDER, } from '@taiga-ui/core';
|
|
4
|
-
import { TuiTextAreaComponent } from './text-area.component';
|
|
5
|
-
export const TUI_TEXT_AREA_PROVIDERS = [
|
|
6
|
-
{
|
|
7
|
-
provide: TUI_FOCUSABLE_ITEM_ACCESSOR,
|
|
8
|
-
useExisting: forwardRef(() => TuiTextAreaComponent),
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
provide: AbstractTuiControl,
|
|
12
|
-
useExisting: forwardRef(() => TuiTextAreaComponent),
|
|
13
|
-
},
|
|
14
|
-
TEXTFIELD_CONTROLLER_PROVIDER,
|
|
15
|
-
HINT_CONTROLLER_PROVIDER,
|
|
16
|
-
MODE_PROVIDER,
|
|
17
|
-
];
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLnByb3ZpZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEucHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFDLGtCQUFrQixFQUFFLDJCQUEyQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsYUFBYSxFQUNiLDZCQUE2QixHQUNoQyxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRTNELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFlO0lBQy9DO1FBQ0ksT0FBTyxFQUFFLDJCQUEyQjtRQUNwQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO0tBQ3REO0lBQ0Q7UUFDSSxPQUFPLEVBQUUsa0JBQWtCO1FBQzNCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7S0FDdEQ7SUFDRCw2QkFBNkI7SUFDN0Isd0JBQXdCO0lBQ3hCLGFBQWE7Q0FDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Zm9yd2FyZFJlZiwgUHJvdmlkZXJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdFR1aUNvbnRyb2wsIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5cbmltcG9ydCB7VHVpVGV4dEFyZWFDb21wb25lbnR9IGZyb20gJy4vdGV4dC1hcmVhLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBUVUlfVEVYVF9BUkVBX1BST1ZJREVSUzogUHJvdmlkZXJbXSA9IFtcbiAgICB7XG4gICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpVGV4dEFyZWFDb21wb25lbnQpLFxuICAgIH0sXG4gICAge1xuICAgICAgICBwcm92aWRlOiBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aVRleHRBcmVhQ29tcG9uZW50KSxcbiAgICB9LFxuICAgIFRFWFRGSUVMRF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuXTtcbiJdfQ==
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { DOCUMENT } from '@angular/common';
|
|
3
|
-
import { ComponentFactoryResolver, Directive, forwardRef, HostListener, Inject, Injector, Input, } from '@angular/core';
|
|
4
|
-
import { EMPTY_CLIENT_RECT, setNativeFocused, TuiActiveZoneDirective, tuiDefaultProp, TuiDestroyService, TuiDropdownPortalService, tuiGetClosestFocusable, tuiGetNativeFocused, tuiPointToClientRect, } from '@taiga-ui/cdk';
|
|
5
|
-
import { AbstractTuiDropdown, TUI_DROPDOWN_DIRECTIVE } from '@taiga-ui/core';
|
|
6
|
-
import { EMPTY } from 'rxjs';
|
|
7
|
-
import { filter, takeUntil } from 'rxjs/operators';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@taiga-ui/cdk";
|
|
10
|
-
import * as i2 from "rxjs";
|
|
11
|
-
// @dynamic
|
|
12
|
-
export class TuiDropdownContextDirective extends AbstractTuiDropdown {
|
|
13
|
-
constructor(elementRef, documentRef, destroy$, componentFactoryResolver, injector, portalService, activeZone) {
|
|
14
|
-
super(componentFactoryResolver, injector, portalService, elementRef, activeZone);
|
|
15
|
-
this.elementRef = elementRef;
|
|
16
|
-
this.documentRef = documentRef;
|
|
17
|
-
this.activeZone = activeZone;
|
|
18
|
-
this.lastClickedClientRect = EMPTY_CLIENT_RECT;
|
|
19
|
-
this.content = ``;
|
|
20
|
-
this.refresh$ = EMPTY;
|
|
21
|
-
this.context = { close: () => this.closeDropdownBox() };
|
|
22
|
-
activeZone.tuiActiveZoneChange
|
|
23
|
-
.pipe(filter(isActive => !isActive), takeUntil(destroy$))
|
|
24
|
-
.subscribe(() => this.closeDropdownBox());
|
|
25
|
-
}
|
|
26
|
-
get clientRect() {
|
|
27
|
-
return this.lastClickedClientRect;
|
|
28
|
-
}
|
|
29
|
-
get fixed() {
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
get dropdownContent() {
|
|
33
|
-
var _a, _b;
|
|
34
|
-
return ((_b = (_a = this.dropdownBoxRef) === null || _a === void 0 ? void 0 : _a.instance.contentElementRef) === null || _b === void 0 ? void 0 : _b.nativeElement) || null;
|
|
35
|
-
}
|
|
36
|
-
onHostClick() {
|
|
37
|
-
this.closeDropdownBox();
|
|
38
|
-
}
|
|
39
|
-
onContextMenu(x, y) {
|
|
40
|
-
this.closeDropdownBox();
|
|
41
|
-
this.openDropdown(x, y);
|
|
42
|
-
}
|
|
43
|
-
onAnotherContextOpen(target) {
|
|
44
|
-
const isAnotherContextOpened = !this.elementRef.nativeElement.contains(target);
|
|
45
|
-
if (isAnotherContextOpened) {
|
|
46
|
-
this.closeDropdownBox();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
onArrow(event, down) {
|
|
50
|
-
const activeElement = tuiGetNativeFocused(this.documentRef);
|
|
51
|
-
const focusInside = activeElement && this.activeZone.contains(activeElement);
|
|
52
|
-
if (!this.dropdownContent || focusInside) {
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
event.preventDefault();
|
|
56
|
-
const nextEl = this.dropdownContent.nextElementSibling;
|
|
57
|
-
const initial = down || !this.checkIsFocusableElement(nextEl) ? this.dropdownContent : nextEl;
|
|
58
|
-
const focusable = tuiGetClosestFocusable(initial, !down, this.dropdownContent);
|
|
59
|
-
if (focusable === null) {
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
setNativeFocused(focusable);
|
|
63
|
-
}
|
|
64
|
-
onKeyDownEsc(event) {
|
|
65
|
-
if (!this.dropdownContent) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
event.stopPropagation();
|
|
69
|
-
this.closeDropdownBox();
|
|
70
|
-
}
|
|
71
|
-
openDropdown(x, y) {
|
|
72
|
-
this.lastClickedClientRect = tuiPointToClientRect(x, y);
|
|
73
|
-
this.openDropdownBox();
|
|
74
|
-
}
|
|
75
|
-
checkIsFocusableElement(element) {
|
|
76
|
-
return !!element && `focus` in element && `blur` in element;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
TuiDropdownContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextDirective, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: TuiDestroyService }, { token: ComponentFactoryResolver }, { token: Injector }, { token: TuiDropdownPortalService }, { token: i1.TuiActiveZoneDirective }], target: i0.ɵɵFactoryTarget.Directive });
|
|
80
|
-
TuiDropdownContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownContextDirective, selector: "[tuiDropdownContext]", inputs: { content: ["tuiDropdownContext", "content"] }, host: { listeners: { "click": "onHostClick()", "contextmenu.prevent": "onContextMenu($event.clientX,$event.clientY)", "document:contextmenu": "onAnotherContextOpen($event.target)", "document:keydown.arrowDown": "onArrow($event,true)", "document:keydown.arrowUp": "onArrow($event,false)", "document:keydown.esc": "onKeyDownEsc($event)" } }, providers: [
|
|
81
|
-
TuiDestroyService,
|
|
82
|
-
TuiActiveZoneDirective,
|
|
83
|
-
{
|
|
84
|
-
provide: TUI_DROPDOWN_DIRECTIVE,
|
|
85
|
-
useExisting: forwardRef(() => TuiDropdownContextDirective),
|
|
86
|
-
},
|
|
87
|
-
], usesInheritance: true, ngImport: i0 });
|
|
88
|
-
__decorate([
|
|
89
|
-
tuiDefaultProp()
|
|
90
|
-
], TuiDropdownContextDirective.prototype, "content", void 0);
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextDirective, decorators: [{
|
|
92
|
-
type: Directive,
|
|
93
|
-
args: [{
|
|
94
|
-
selector: `[tuiDropdownContext]`,
|
|
95
|
-
providers: [
|
|
96
|
-
TuiDestroyService,
|
|
97
|
-
TuiActiveZoneDirective,
|
|
98
|
-
{
|
|
99
|
-
provide: TUI_DROPDOWN_DIRECTIVE,
|
|
100
|
-
useExisting: forwardRef(() => TuiDropdownContextDirective),
|
|
101
|
-
},
|
|
102
|
-
],
|
|
103
|
-
}]
|
|
104
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Document, decorators: [{
|
|
105
|
-
type: Inject,
|
|
106
|
-
args: [DOCUMENT]
|
|
107
|
-
}] }, { type: i2.Observable, decorators: [{
|
|
108
|
-
type: Inject,
|
|
109
|
-
args: [TuiDestroyService]
|
|
110
|
-
}] }, { type: i0.ComponentFactoryResolver, decorators: [{
|
|
111
|
-
type: Inject,
|
|
112
|
-
args: [ComponentFactoryResolver]
|
|
113
|
-
}] }, { type: i0.Injector, decorators: [{
|
|
114
|
-
type: Inject,
|
|
115
|
-
args: [Injector]
|
|
116
|
-
}] }, { type: i1.TuiDropdownPortalService, decorators: [{
|
|
117
|
-
type: Inject,
|
|
118
|
-
args: [TuiDropdownPortalService]
|
|
119
|
-
}] }, { type: i1.TuiActiveZoneDirective }]; }, propDecorators: { content: [{
|
|
120
|
-
type: Input,
|
|
121
|
-
args: [`tuiDropdownContext`]
|
|
122
|
-
}], onHostClick: [{
|
|
123
|
-
type: HostListener,
|
|
124
|
-
args: [`click`]
|
|
125
|
-
}], onContextMenu: [{
|
|
126
|
-
type: HostListener,
|
|
127
|
-
args: [`contextmenu.prevent`, [`$event.clientX`, `$event.clientY`]]
|
|
128
|
-
}], onAnotherContextOpen: [{
|
|
129
|
-
type: HostListener,
|
|
130
|
-
args: [`document:contextmenu`, [`$event.target`]]
|
|
131
|
-
}], onArrow: [{
|
|
132
|
-
type: HostListener,
|
|
133
|
-
args: [`document:keydown.arrowDown`, [`$event`, `true`]]
|
|
134
|
-
}, {
|
|
135
|
-
type: HostListener,
|
|
136
|
-
args: [`document:keydown.arrowUp`, [`$event`, `false`]]
|
|
137
|
-
}], onKeyDownEsc: [{
|
|
138
|
-
type: HostListener,
|
|
139
|
-
args: [`document:keydown.esc`, [`$event`]]
|
|
140
|
-
}] } });
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9kcm9wZG93bi1jb250ZXh0L2Ryb3Bkb3duLWNvbnRleHQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHdCQUF3QixFQUN4QixTQUFTLEVBRVQsVUFBVSxFQUNWLFlBQVksRUFDWixNQUFNLEVBQ04sUUFBUSxFQUNSLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixzQkFBc0IsRUFDdEIsY0FBYyxFQUNkLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUNuQixvQkFBb0IsR0FDdkIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG1CQUFtQixFQUFFLHNCQUFzQixFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEYsT0FBTyxFQUFDLEtBQUssRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRWpELFdBQVc7QUFZWCxNQUFNLE9BQU8sMkJBQ1QsU0FBUSxtQkFBbUI7SUFhM0IsWUFDdUIsVUFBc0IsRUFDTixXQUFxQixFQUM3QixRQUE2QixFQUV4RCx3QkFBa0QsRUFDaEMsUUFBa0IsRUFDRixhQUF1QyxFQUNoRSxVQUFrQztRQUUzQyxLQUFLLENBQUMsd0JBQXdCLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFUOUQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNOLGdCQUFXLEdBQVgsV0FBVyxDQUFVO1FBTS9D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RUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFXdkQsT0FBTztzQkFGTixZQUFZO3VCQUFDLDRCQUE0QixFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQzs7c0JBQzdELFlBQVk7dUJBQUMsMEJBQTBCLEVBQUUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDO2dCQXdCN0QsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLHNCQUFzQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIEluamVjdCxcbiAgICBJbmplY3RvcixcbiAgICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEVNUFRZX0NMSUVOVF9SRUNULFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBUdWlEcm9wZG93blBvcnRhbFNlcnZpY2UsXG4gICAgdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZSxcbiAgICB0dWlHZXROYXRpdmVGb2N1c2VkLFxuICAgIHR1aVBvaW50VG9DbGllbnRSZWN0LFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7QWJzdHJhY3RUdWlEcm9wZG93biwgVFVJX0RST1BET1dOX0RJUkVDVElWRSwgVHVpRHJvcGRvd259IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7UG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRpbmtvZmYvbmctcG9seW1vcnBoZXVzJztcbmltcG9ydCB7RU1QVFksIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vLyBAZHluYW1pY1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6IGBbdHVpRHJvcGRvd25Db250ZXh0XWAsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgICAgICBUdWlBY3RpdmVab25lRGlyZWN0aXZlLFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUVUlfRFJPUERPV05fRElSRUNUSVZFLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpRHJvcGRvd25Db250ZXh0RGlyZWN0aXZlKSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkNvbnRleHREaXJlY3RpdmVcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpRHJvcGRvd25cbiAgICBpbXBsZW1lbnRzIFR1aURyb3Bkb3duXG57XG4gICAgcHJpdmF0ZSBsYXN0Q2xpY2tlZENsaWVudFJlY3QgPSBFTVBUWV9DTElFTlRfUkVDVDtcblxuICAgIEBJbnB1dChgdHVpRHJvcGRvd25Db250ZXh0YClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGNvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQgPSBgYDtcblxuICAgIHJlYWRvbmx5IHJlZnJlc2gkID0gRU1QVFk7XG5cbiAgICByZWFkb25seSBjb250ZXh0ID0ge2Nsb3NlOiAoKSA9PiB0aGlzLmNsb3NlRHJvcGRvd25Cb3goKX07XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnRSZWY6IERvY3VtZW50LFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgICAgICAgQEluamVjdChDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpXG4gICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBASW5qZWN0KEluamVjdG9yKSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIEBJbmplY3QoVHVpRHJvcGRvd25Qb3J0YWxTZXJ2aWNlKSBwb3J0YWxTZXJ2aWNlOiBUdWlEcm9wZG93blBvcnRhbFNlcnZpY2UsXG4gICAgICAgIHJlYWRvbmx5IGFjdGl2ZVpvbmU6IFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgaW5qZWN0b3IsIHBvcnRhbFNlcnZpY2UsIGVsZW1lbnRSZWYsIGFjdGl2ZVpvbmUpO1xuXG4gICAgICAgIGFjdGl2ZVpvbmUudHVpQWN0aXZlWm9uZUNoYW5nZVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKGlzQWN0aXZlID0+ICFpc0FjdGl2ZSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKGRlc3Ryb3kkKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZURyb3Bkb3duQm94KCkpO1xuICAgIH1cblxuICAgIGdldCBjbGllbnRSZWN0KCk6IENsaWVudFJlY3Qge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXN0Q2xpY2tlZENsaWVudFJlY3Q7XG4gICAgfVxuXG4gICAgZ2V0IGZpeGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBkcm9wZG93bkNvbnRlbnQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Cb3hSZWY/Lmluc3RhbmNlLmNvbnRlbnRFbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50IHx8IG51bGw7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgY2xpY2tgKVxuICAgIG9uSG9zdENsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd25Cb3goKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKGBjb250ZXh0bWVudS5wcmV2ZW50YCwgW2AkZXZlbnQuY2xpZW50WGAsIGAkZXZlbnQuY2xpZW50WWBdKVxuICAgIG9uQ29udGV4dE1lbnUoeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duQm94KCk7XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duKHgsIHkpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGRvY3VtZW50OmNvbnRleHRtZW51YCwgW2AkZXZlbnQudGFyZ2V0YF0pXG4gICAgb25Bbm90aGVyQ29udGV4dE9wZW4odGFyZ2V0OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBpc0Fub3RoZXJDb250ZXh0T3BlbmVkID0gIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldCk7XG5cbiAgICAgICAgaWYgKGlzQW5vdGhlckNvbnRleHRPcGVuZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bkJveCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgZG9jdW1lbnQ6a2V5ZG93bi5hcnJvd0Rvd25gLCBbYCRldmVudGAsIGB0cnVlYF0pXG4gICAgQEhvc3RMaXN0ZW5lcihgZG9jdW1lbnQ6a2V5ZG93bi5hcnJvd1VwYCwgW2AkZXZlbnRgLCBgZmFsc2VgXSlcbiAgICBvbkFycm93KGV2ZW50OiBLZXlib2FyZEV2ZW50LCBkb3duOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSB0dWlHZXROYXRpdmVGb2N1c2VkKHRoaXMuZG9jdW1lbnRSZWYpO1xuICAgICAgICBjb25zdCBmb2N1c0luc2lkZSA9IGFjdGl2ZUVsZW1lbnQgJiYgdGhpcy5hY3RpdmVab25lLmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgIGlmICghdGhpcy5kcm9wZG93bkNvbnRlbnQgfHwgZm9jdXNJbnNpZGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgY29uc3QgbmV4dEVsID0gdGhpcy5kcm9wZG93bkNvbnRlbnQubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgICAgICBjb25zdCBpbml0aWFsID1cbiAgICAgICAgICAgIGRvd24gfHwgIXRoaXMuY2hlY2tJc0ZvY3VzYWJsZUVsZW1lbnQobmV4dEVsKSA/IHRoaXMuZHJvcGRvd25Db250ZW50IDogbmV4dEVsO1xuICAgICAgICBjb25zdCBmb2N1c2FibGUgPSB0dWlHZXRDbG9zZXN0Rm9jdXNhYmxlKGluaXRpYWwsICFkb3duLCB0aGlzLmRyb3Bkb3duQ29udGVudCk7XG5cbiAgICAgICAgaWYgKGZvY3VzYWJsZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0TmF0aXZlRm9jdXNlZChmb2N1c2FibGUpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYGRvY3VtZW50OmtleWRvd24uZXNjYCwgW2AkZXZlbnRgXSlcbiAgICBvbktleURvd25Fc2MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRyb3Bkb3duQ29udGVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93bkJveCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb3BlbkRyb3Bkb3duKHg6IG51bWJlciwgeTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMubGFzdENsaWNrZWRDbGllbnRSZWN0ID0gdHVpUG9pbnRUb0NsaWVudFJlY3QoeCwgeSk7XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duQm94KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0lzRm9jdXNhYmxlRWxlbWVudChlbGVtZW50OiBFbGVtZW50IHwgbnVsbCk6IGVsZW1lbnQgaXMgSFRNTEVsZW1lbnQge1xuICAgICAgICByZXR1cm4gISFlbGVtZW50ICYmIGBmb2N1c2AgaW4gZWxlbWVudCAmJiBgYmx1cmAgaW4gZWxlbWVudDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { TuiDropdownBoxModule } from '@taiga-ui/core';
|
|
3
|
-
import { TuiDropdownContextDirective } from './dropdown-context.directive';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class TuiDropdownContextModule {
|
|
6
|
-
}
|
|
7
|
-
TuiDropdownContextModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
-
TuiDropdownContextModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextModule, declarations: [TuiDropdownContextDirective], imports: [TuiDropdownBoxModule], exports: [TuiDropdownContextDirective] });
|
|
9
|
-
TuiDropdownContextModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextModule, imports: [[TuiDropdownBoxModule]] });
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownContextModule, decorators: [{
|
|
11
|
-
type: NgModule,
|
|
12
|
-
args: [{
|
|
13
|
-
imports: [TuiDropdownBoxModule],
|
|
14
|
-
declarations: [TuiDropdownContextDirective],
|
|
15
|
-
exports: [TuiDropdownContextDirective],
|
|
16
|
-
}]
|
|
17
|
-
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tY29udGV4dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9kcm9wZG93bi1jb250ZXh0L2Ryb3Bkb3duLWNvbnRleHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sOEJBQThCLENBQUM7O0FBT3pFLE1BQU0sT0FBTyx3QkFBd0I7O3NIQUF4Qix3QkFBd0I7dUhBQXhCLHdCQUF3QixpQkFIbEIsMkJBQTJCLGFBRGhDLG9CQUFvQixhQUVwQiwyQkFBMkI7dUhBRTVCLHdCQUF3QixZQUp4QixDQUFDLG9CQUFvQixDQUFDOzRGQUl0Qix3QkFBd0I7a0JBTHBDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQy9CLFlBQVksRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUMzQyxPQUFPLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpRHJvcGRvd25Cb3hNb2R1bGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcblxuaW1wb3J0IHtUdWlEcm9wZG93bkNvbnRleHREaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtUdWlEcm9wZG93bkJveE1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbVHVpRHJvcGRvd25Db250ZXh0RGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpRHJvcGRvd25Db250ZXh0RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRHJvcGRvd25Db250ZXh0TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './dropdown-context.directive';
|
|
2
|
-
export * from './dropdown-context.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9kcm9wZG93bi1jb250ZXh0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJvcGRvd24tY29udGV4dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi1jb250ZXh0Lm1vZHVsZSc7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtZHJvcGRvd24tY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9kaXJlY3RpdmVzL2Ryb3Bkb3duLWNvbnRleHQvdGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtZHJvcGRvd24tY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, HostListener, Inject } from '@angular/core';
|
|
2
|
-
import { isPresent, setNativeMouseFocused, TuiDestroyService, tuiGetClosestFocusable, tuiIsNativeFocusedIn, typedFromEvent, } from '@taiga-ui/cdk';
|
|
3
|
-
import { TuiHostedDropdownComponent } from '@taiga-ui/core';
|
|
4
|
-
import { merge, of, timer } from 'rxjs';
|
|
5
|
-
import { debounce, debounceTime, distinctUntilChanged, filter, map, mapTo, share, switchMap, takeUntil, tap, } from 'rxjs/operators';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "rxjs";
|
|
8
|
-
import * as i2 from "@taiga-ui/core";
|
|
9
|
-
// TODO: Refactor
|
|
10
|
-
export class TuiDropdownHoverDirective {
|
|
11
|
-
constructor(destroy$, { nativeElement }, dropdown) {
|
|
12
|
-
this.dropdown = dropdown;
|
|
13
|
-
const dropdown$ = dropdown.openChange.pipe(
|
|
14
|
-
// Give change detection time to open dropdown
|
|
15
|
-
debounceTime(0), map(() => dropdown.dropdown), filter(isPresent), share());
|
|
16
|
-
const open$ = merge(typedFromEvent(nativeElement, `mouseenter`), typedFromEvent(nativeElement, `click`).pipe(tap(e => e.stopImmediatePropagation())), dropdown$.pipe(switchMap(element => merge(typedFromEvent(element, `focusin`), typedFromEvent(element, `mouseenter`))))).pipe(mapTo(true));
|
|
17
|
-
const close$ = merge(typedFromEvent(nativeElement, `mouseleave`), dropdown$.pipe(switchMap(element => typedFromEvent(element, `mouseleave`).pipe(filter(() => !tuiIsNativeFocusedIn(element)))))).pipe(mapTo(false));
|
|
18
|
-
merge(open$, close$)
|
|
19
|
-
.pipe(debounce(value => (value ? of(value) : timer(300))), distinctUntilChanged(), takeUntil(destroy$))
|
|
20
|
-
.subscribe(open => {
|
|
21
|
-
dropdown.updateOpen(open);
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
onMouseEnter() {
|
|
25
|
-
const { host } = this.dropdown;
|
|
26
|
-
if (tuiIsNativeFocusedIn(host)) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
const focusable = tuiGetClosestFocusable(host, false, host, false);
|
|
30
|
-
if (focusable) {
|
|
31
|
-
setNativeMouseFocused(focusable);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
TuiDropdownHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverDirective, deps: [{ token: TuiDestroyService }, { token: ElementRef }, { token: TuiHostedDropdownComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
36
|
-
TuiDropdownHoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownHoverDirective, selector: "tui-hosted-dropdown[tuiDropdownHover]", host: { listeners: { "mouseenter": "onMouseEnter()" } }, providers: [TuiDestroyService], ngImport: i0 });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverDirective, decorators: [{
|
|
38
|
-
type: Directive,
|
|
39
|
-
args: [{
|
|
40
|
-
selector: `tui-hosted-dropdown[tuiDropdownHover]`,
|
|
41
|
-
providers: [TuiDestroyService],
|
|
42
|
-
}]
|
|
43
|
-
}], ctorParameters: function () { return [{ type: i1.Observable, decorators: [{
|
|
44
|
-
type: Inject,
|
|
45
|
-
args: [TuiDestroyService]
|
|
46
|
-
}] }, { type: i0.ElementRef, decorators: [{
|
|
47
|
-
type: Inject,
|
|
48
|
-
args: [ElementRef]
|
|
49
|
-
}] }, { type: i2.TuiHostedDropdownComponent, decorators: [{
|
|
50
|
-
type: Inject,
|
|
51
|
-
args: [TuiHostedDropdownComponent]
|
|
52
|
-
}] }]; }, propDecorators: { onMouseEnter: [{
|
|
53
|
-
type: HostListener,
|
|
54
|
-
args: [`mouseenter`]
|
|
55
|
-
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taG92ZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2RpcmVjdGl2ZXMvZHJvcGRvd24taG92ZXIvZHJvcGRvd24taG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUNILFNBQVMsRUFDVCxxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDcEIsY0FBYyxHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBRSxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUNILFFBQVEsRUFDUixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBQ0gsS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDTixNQUFNLGdCQUFnQixDQUFDOzs7O0FBRXhCLGlCQUFpQjtBQUtqQixNQUFNLE9BQU8seUJBQXlCO0lBQ2xDLFlBQytCLFFBQTBCLEVBQ2pDLEVBQUMsYUFBYSxFQUEwQixFQUUzQyxRQUFvQztRQUFwQyxhQUFRLEdBQVIsUUFBUSxDQUE0QjtRQUVyRCxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUk7UUFDdEMsOENBQThDO1FBQzlDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFDZixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUM1QixNQUFNLENBQUMsU0FBUyxDQUFDLEVBQ2pCLEtBQUssRUFBRSxDQUNWLENBQUM7UUFFRixNQUFNLEtBQUssR0FBRyxLQUFLLENBQ2YsY0FBYyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsRUFDM0MsY0FBYyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ3ZDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLENBQ3pDLEVBQ0QsU0FBUyxDQUFDLElBQUksQ0FDVixTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FDaEIsS0FBSyxDQUNELGNBQWMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLEVBQ2xDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQ3hDLENBQ0osQ0FDSixDQUNKLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXBCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FDaEIsY0FBYyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsRUFDM0MsU0FBUyxDQUFDLElBQUksQ0FDVixTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FDaEIsY0FBYyxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQ3RDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQy9DLENBQ0osQ0FDSixDQUNKLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRXJCLEtBQUssQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDO2FBQ2YsSUFBSSxDQUNELFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQ25ELG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEI7YUFDQSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDZCxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUdELFlBQVk7UUFDUixNQUFNLEVBQUMsSUFBSSxFQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUU3QixJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzVCLE9BQU87U0FDVjtRQUVELE1BQU0sU0FBUyxHQUFHLHNCQUFzQixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRW5FLElBQUksU0FBUyxFQUFFO1lBQ1gscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDcEM7SUFDTCxDQUFDOzt1SEFqRVEseUJBQXlCLGtCQUV0QixpQkFBaUIsYUFDakIsVUFBVSxhQUNWLDBCQUEwQjsyR0FKN0IseUJBQXlCLHlIQUZ2QixDQUFDLGlCQUFpQixDQUFDOzRGQUVyQix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVDQUF1QztvQkFDakQsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQ2pDOzswQkFHUSxNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsVUFBVTs7MEJBQ2pCLE1BQU07MkJBQUMsMEJBQTBCOzRDQWlEdEMsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBpc1ByZXNlbnQsXG4gICAgc2V0TmF0aXZlTW91c2VGb2N1c2VkLFxuICAgIFR1aURlc3Ryb3lTZXJ2aWNlLFxuICAgIHR1aUdldENsb3Nlc3RGb2N1c2FibGUsXG4gICAgdHVpSXNOYXRpdmVGb2N1c2VkSW4sXG4gICAgdHlwZWRGcm9tRXZlbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHttZXJnZSwgT2JzZXJ2YWJsZSwgb2YsIHRpbWVyfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGVib3VuY2UsXG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgbWFwVG8sXG4gICAgc2hhcmUsXG4gICAgc3dpdGNoTWFwLFxuICAgIHRha2VVbnRpbCxcbiAgICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gVE9ETzogUmVmYWN0b3JcbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWhvc3RlZC1kcm9wZG93blt0dWlEcm9wZG93bkhvdmVyXWAsXG4gICAgcHJvdmlkZXJzOiBbVHVpRGVzdHJveVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD4sXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudClcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bjogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQsXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duJCA9IGRyb3Bkb3duLm9wZW5DaGFuZ2UucGlwZShcbiAgICAgICAgICAgIC8vIEdpdmUgY2hhbmdlIGRldGVjdGlvbiB0aW1lIHRvIG9wZW4gZHJvcGRvd25cbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiBkcm9wZG93bi5kcm9wZG93biksXG4gICAgICAgICAgICBmaWx0ZXIoaXNQcmVzZW50KSxcbiAgICAgICAgICAgIHNoYXJlKCksXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgb3BlbiQgPSBtZXJnZShcbiAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsIGBtb3VzZWVudGVyYCksXG4gICAgICAgICAgICB0eXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCBgY2xpY2tgKS5waXBlKFxuICAgICAgICAgICAgICAgIHRhcChlID0+IGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGRyb3Bkb3duJC5waXBlKFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChlbGVtZW50ID0+XG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQoZWxlbWVudCwgYGZvY3VzaW5gKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KGVsZW1lbnQsIGBtb3VzZWVudGVyYCksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICkucGlwZShtYXBUbyh0cnVlKSk7XG5cbiAgICAgICAgY29uc3QgY2xvc2UkID0gbWVyZ2UoXG4gICAgICAgICAgICB0eXBlZEZyb21FdmVudChuYXRpdmVFbGVtZW50LCBgbW91c2VsZWF2ZWApLFxuICAgICAgICAgICAgZHJvcGRvd24kLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGVsZW1lbnQgPT5cbiAgICAgICAgICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQoZWxlbWVudCwgYG1vdXNlbGVhdmVgKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKCgpID0+ICF0dWlJc05hdGl2ZUZvY3VzZWRJbihlbGVtZW50KSksXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICkucGlwZShtYXBUbyhmYWxzZSkpO1xuXG4gICAgICAgIG1lcmdlKG9wZW4kLCBjbG9zZSQpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBkZWJvdW5jZSh2YWx1ZSA9PiAodmFsdWUgPyBvZih2YWx1ZSkgOiB0aW1lcigzMDApKSksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShvcGVuID0+IHtcbiAgICAgICAgICAgICAgICBkcm9wZG93bi51cGRhdGVPcGVuKG9wZW4pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcihgbW91c2VlbnRlcmApXG4gICAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7aG9zdH0gPSB0aGlzLmRyb3Bkb3duO1xuXG4gICAgICAgIGlmICh0dWlJc05hdGl2ZUZvY3VzZWRJbihob3N0KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZm9jdXNhYmxlID0gdHVpR2V0Q2xvc2VzdEZvY3VzYWJsZShob3N0LCBmYWxzZSwgaG9zdCwgZmFsc2UpO1xuXG4gICAgICAgIGlmIChmb2N1c2FibGUpIHtcbiAgICAgICAgICAgIHNldE5hdGl2ZU1vdXNlRm9jdXNlZChmb2N1c2FibGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { TuiDropdownHoverDirective } from './dropdown-hover.directive';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TuiDropdownHoverModule {
|
|
5
|
-
}
|
|
6
|
-
TuiDropdownHoverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
-
TuiDropdownHoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverModule, declarations: [TuiDropdownHoverDirective], exports: [TuiDropdownHoverDirective] });
|
|
8
|
-
TuiDropdownHoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverModule });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownHoverModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
declarations: [TuiDropdownHoverDirective],
|
|
13
|
-
exports: [TuiDropdownHoverDirective],
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taG92ZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2RpcmVjdGl2ZXMvZHJvcGRvd24taG92ZXIvZHJvcGRvd24taG92ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7O0FBTXJFLE1BQU0sT0FBTyxzQkFBc0I7O29IQUF0QixzQkFBc0I7cUhBQXRCLHNCQUFzQixpQkFIaEIseUJBQXlCLGFBQzlCLHlCQUF5QjtxSEFFMUIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBSmxDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMseUJBQXlCLENBQUM7b0JBQ3pDLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixDQUFDO2lCQUN2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1R1aURyb3Bkb3duSG92ZXJEaXJlY3RpdmV9IGZyb20gJy4vZHJvcGRvd24taG92ZXIuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtUdWlEcm9wZG93bkhvdmVyRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbVHVpRHJvcGRvd25Ib3ZlckRpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aURyb3Bkb3duSG92ZXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './dropdown-hover.directive';
|
|
2
|
-
export * from './dropdown-hover.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9kcm9wZG93bi1ob3Zlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duLWhvdmVyLm1vZHVsZSc7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './index';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWkta2l0LWRpcmVjdGl2ZXMtZHJvcGRvd24taG92ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvZGlyZWN0aXZlcy9kcm9wZG93bi1ob3Zlci90YWlnYS11aS1raXQtZGlyZWN0aXZlcy1kcm9wZG93bi1ob3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -1,252 +0,0 @@
|
|
|
1
|
-
import { DOCUMENT } from '@angular/common';
|
|
2
|
-
import { ChangeDetectorRef, ComponentFactoryResolver, Directive, ElementRef, forwardRef, Host, Inject, Injector, Input, NgZone, Optional, Renderer2, ViewContainerRef, } from '@angular/core';
|
|
3
|
-
import { ALWAYS_TRUE_HANDLER, CHAR_NO_BREAK_SPACE, CHAR_ZERO_WIDTH_SPACE, EMPTY_CLIENT_RECT, TuiActiveZoneDirective, TuiDestroyService, TuiDropdownPortalService, tuiGetNativeFocused, TuiParentsScrollService, tuiPx, typedFromEvent, } from '@taiga-ui/cdk';
|
|
4
|
-
import { AbstractTuiDropdown, TUI_DOCUMENT_OR_SHADOW_ROOT, TUI_DROPDOWN_DIRECTIVE, TUI_ELEMENT_REF, } from '@taiga-ui/core';
|
|
5
|
-
import { getWordRange } from '@taiga-ui/kit/utils/dom';
|
|
6
|
-
import { merge } from 'rxjs';
|
|
7
|
-
import { map, switchMapTo, takeUntil } from 'rxjs/operators';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@taiga-ui/cdk";
|
|
10
|
-
// @dynamic
|
|
11
|
-
export class TuiDropdownSelectionDirective extends AbstractTuiDropdown {
|
|
12
|
-
constructor(documentRef, componentFactoryResolver, injector, portalService, elementRef, activeZone, shadowRootRef, customElementRef, destroy$, refresh$, changeDetectorRef, ngZone, renderer, viewContainerRef) {
|
|
13
|
-
super(componentFactoryResolver, injector, portalService, customElementRef || elementRef, activeZone);
|
|
14
|
-
this.refresh$ = refresh$;
|
|
15
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
16
|
-
this.ngZone = ngZone;
|
|
17
|
-
this.renderer = renderer;
|
|
18
|
-
this.viewContainerRef = viewContainerRef;
|
|
19
|
-
this.visibilityHandler = ALWAYS_TRUE_HANDLER;
|
|
20
|
-
this.position = `selection`;
|
|
21
|
-
this.documentRef = shadowRootRef || documentRef;
|
|
22
|
-
// SSR protection
|
|
23
|
-
if (!this.documentRef.createRange) {
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
this.range = this.documentRef.createRange();
|
|
27
|
-
const { nativeElement } = this.elementRef;
|
|
28
|
-
merge(typedFromEvent(this.documentRef, `mouseup`), typedFromEvent(nativeElement, `mousedown`).pipe(switchMapTo(typedFromEvent(nativeElement, `mousemove`).pipe(takeUntil(typedFromEvent(this.documentRef, `mouseup`))))), typedFromEvent(nativeElement, `keyup`))
|
|
29
|
-
.pipe(map(() => {
|
|
30
|
-
const active = tuiGetNativeFocused(this.documentRef);
|
|
31
|
-
const selection = this.documentRef.getSelection();
|
|
32
|
-
// TODO: iframe warning
|
|
33
|
-
if ((active instanceof HTMLInputElement ||
|
|
34
|
-
active instanceof HTMLTextAreaElement) &&
|
|
35
|
-
nativeElement.contains(active)) {
|
|
36
|
-
return this.veryVerySadInputFix(active);
|
|
37
|
-
}
|
|
38
|
-
return (selection === null || selection === void 0 ? void 0 : selection.rangeCount) ? selection.getRangeAt(0) : this.range;
|
|
39
|
-
}), takeUntil(destroy$))
|
|
40
|
-
.subscribe(range => {
|
|
41
|
-
const contained = !!range && nativeElement.contains(range.commonAncestorContainer);
|
|
42
|
-
this.range = contained ? range : this.range;
|
|
43
|
-
const valid = contained &&
|
|
44
|
-
(!this.visibilityHandler ||
|
|
45
|
-
!this.range ||
|
|
46
|
-
this.visibilityHandler(this.range));
|
|
47
|
-
this.toggleDropdownBox(!!range && (valid || this.inDropdown(range)));
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
set tuiDropdownSelection(handler) {
|
|
51
|
-
if (!handler || !this.range) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
const inHostAndValid = this.elementRef.nativeElement.contains(this.range.commonAncestorContainer) &&
|
|
55
|
-
handler(this.range);
|
|
56
|
-
this.visibilityHandler = handler;
|
|
57
|
-
this.toggleDropdownBox(inHostAndValid);
|
|
58
|
-
}
|
|
59
|
-
get clientRect() {
|
|
60
|
-
const { defaultView } = this.documentRef;
|
|
61
|
-
const { rangeRect } = this;
|
|
62
|
-
const frameElement = defaultView ? defaultView.frameElement : null;
|
|
63
|
-
if (!frameElement) {
|
|
64
|
-
return rangeRect;
|
|
65
|
-
}
|
|
66
|
-
const documentRect = frameElement.getBoundingClientRect();
|
|
67
|
-
return {
|
|
68
|
-
top: rangeRect.top + documentRect.top,
|
|
69
|
-
left: rangeRect.left + documentRect.left,
|
|
70
|
-
right: rangeRect.left + documentRect.left + rangeRect.width,
|
|
71
|
-
bottom: rangeRect.top + documentRect.top + rangeRect.height,
|
|
72
|
-
width: rangeRect.width,
|
|
73
|
-
height: rangeRect.height,
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
ngOnDestroy() {
|
|
77
|
-
this.closeDropdownBox();
|
|
78
|
-
if (this.ghost) {
|
|
79
|
-
this.renderer.removeChild(this.viewContainerRef.element.nativeElement, this.ghost);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* get ClientRect of current Range according to provided position
|
|
84
|
-
*/
|
|
85
|
-
get rangeRect() {
|
|
86
|
-
if (!this.range) {
|
|
87
|
-
return EMPTY_CLIENT_RECT;
|
|
88
|
-
}
|
|
89
|
-
switch (this.position) {
|
|
90
|
-
case `tag`: {
|
|
91
|
-
const { commonAncestorContainer } = this.range;
|
|
92
|
-
const element = commonAncestorContainer.nodeType === Node.ELEMENT_NODE
|
|
93
|
-
? commonAncestorContainer
|
|
94
|
-
: commonAncestorContainer.parentNode;
|
|
95
|
-
return element.getBoundingClientRect();
|
|
96
|
-
}
|
|
97
|
-
case `word`:
|
|
98
|
-
return getWordRange(this.range).getBoundingClientRect();
|
|
99
|
-
default:
|
|
100
|
-
return this.range.getBoundingClientRect();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Toggle dropdown visibility (has to be in ngZone.run because it could be initiated inside iframe in Editor)
|
|
105
|
-
*/
|
|
106
|
-
toggleDropdownBox(visible) {
|
|
107
|
-
this.ngZone.run(() => {
|
|
108
|
-
if (visible) {
|
|
109
|
-
this.openDropdownBox();
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
this.closeDropdownBox();
|
|
113
|
-
}
|
|
114
|
-
this.changeDetectorRef.markForCheck();
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Check if Node is inside dropdown
|
|
119
|
-
*/
|
|
120
|
-
boxContains(node) {
|
|
121
|
-
return (!!this.dropdownBoxRef &&
|
|
122
|
-
this.dropdownBoxRef.location.nativeElement.contains(node));
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Check if given range is at least partially inside dropdown
|
|
126
|
-
*/
|
|
127
|
-
inDropdown(range) {
|
|
128
|
-
const { startContainer, endContainer } = range;
|
|
129
|
-
const inDropdown = this.boxContains(range.commonAncestorContainer);
|
|
130
|
-
const hostToDropdown = this.boxContains(endContainer) &&
|
|
131
|
-
this.elementRef.nativeElement.contains(startContainer);
|
|
132
|
-
const dropdownToHost = this.boxContains(startContainer) &&
|
|
133
|
-
this.elementRef.nativeElement.contains(endContainer);
|
|
134
|
-
return inDropdown || hostToDropdown || dropdownToHost;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Position invisible DIV and create Range similar to selected range inside input/textarea
|
|
138
|
-
*/
|
|
139
|
-
veryVerySadInputFix(element) {
|
|
140
|
-
const { ghost = this.initGhost(element) } = this;
|
|
141
|
-
const { top, left, width, height } = element.getBoundingClientRect();
|
|
142
|
-
const { selectionStart, selectionEnd } = element;
|
|
143
|
-
const range = this.documentRef.createRange();
|
|
144
|
-
const hostRect = this.elementRef.nativeElement.getBoundingClientRect();
|
|
145
|
-
ghost.style.top = tuiPx(top - hostRect.top);
|
|
146
|
-
ghost.style.left = tuiPx(left - hostRect.left);
|
|
147
|
-
ghost.style.width = tuiPx(width);
|
|
148
|
-
ghost.style.height = tuiPx(height);
|
|
149
|
-
ghost.textContent = CHAR_ZERO_WIDTH_SPACE + element.value + CHAR_NO_BREAK_SPACE;
|
|
150
|
-
range.setStart(ghost.firstChild, selectionStart || 0);
|
|
151
|
-
range.setEnd(ghost.firstChild, selectionEnd || 0);
|
|
152
|
-
return range;
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Create an invisible DIV styled exactly like input/textarea element inside directive
|
|
156
|
-
*/
|
|
157
|
-
initGhost(element) {
|
|
158
|
-
const ghost = this.renderer.createElement(`div`);
|
|
159
|
-
const { nativeElement } = this.viewContainerRef.element;
|
|
160
|
-
const { font, letterSpacing, textTransform, padding } = getComputedStyle(element);
|
|
161
|
-
ghost.style.position = `absolute`;
|
|
162
|
-
ghost.style.pointerEvents = `none`;
|
|
163
|
-
ghost.style.opacity = `0`;
|
|
164
|
-
ghost.style.whiteSpace = `pre-wrap`;
|
|
165
|
-
ghost.style.font = font;
|
|
166
|
-
ghost.style.letterSpacing = letterSpacing;
|
|
167
|
-
ghost.style.textTransform = textTransform;
|
|
168
|
-
ghost.style.padding = padding;
|
|
169
|
-
this.renderer.appendChild(nativeElement, ghost);
|
|
170
|
-
this.ghost = ghost;
|
|
171
|
-
return ghost;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
TuiDropdownSelectionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownSelectionDirective, deps: [{ token: DOCUMENT }, { token: ComponentFactoryResolver }, { token: Injector }, { token: TuiDropdownPortalService }, { token: ElementRef, host: true }, { token: TuiActiveZoneDirective, optional: true }, { token: TUI_DOCUMENT_OR_SHADOW_ROOT, optional: true }, { token: TUI_ELEMENT_REF, optional: true }, { token: TuiDestroyService }, { token: TuiParentsScrollService }, { token: ChangeDetectorRef }, { token: NgZone }, { token: Renderer2 }, { token: ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
175
|
-
TuiDropdownSelectionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiDropdownSelectionDirective, selector: "[tuiDropdownSelection]:not(ng-container)", inputs: { tuiDropdownSelection: "tuiDropdownSelection", position: ["tuiDropdownSelectionPosition", "position"] }, providers: [
|
|
176
|
-
{
|
|
177
|
-
provide: TUI_DROPDOWN_DIRECTIVE,
|
|
178
|
-
useExisting: forwardRef(() => TuiDropdownSelectionDirective),
|
|
179
|
-
},
|
|
180
|
-
TuiParentsScrollService,
|
|
181
|
-
TuiDestroyService,
|
|
182
|
-
], usesInheritance: true, ngImport: i0 });
|
|
183
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiDropdownSelectionDirective, decorators: [{
|
|
184
|
-
type: Directive,
|
|
185
|
-
args: [{
|
|
186
|
-
selector: `[tuiDropdownSelection]:not(ng-container)`,
|
|
187
|
-
providers: [
|
|
188
|
-
{
|
|
189
|
-
provide: TUI_DROPDOWN_DIRECTIVE,
|
|
190
|
-
useExisting: forwardRef(() => TuiDropdownSelectionDirective),
|
|
191
|
-
},
|
|
192
|
-
TuiParentsScrollService,
|
|
193
|
-
TuiDestroyService,
|
|
194
|
-
],
|
|
195
|
-
}]
|
|
196
|
-
}], ctorParameters: function () { return [{ type: Document, decorators: [{
|
|
197
|
-
type: Inject,
|
|
198
|
-
args: [DOCUMENT]
|
|
199
|
-
}] }, { type: i0.ComponentFactoryResolver, decorators: [{
|
|
200
|
-
type: Inject,
|
|
201
|
-
args: [ComponentFactoryResolver]
|
|
202
|
-
}] }, { type: i0.Injector, decorators: [{
|
|
203
|
-
type: Inject,
|
|
204
|
-
args: [Injector]
|
|
205
|
-
}] }, { type: i1.TuiDropdownPortalService, decorators: [{
|
|
206
|
-
type: Inject,
|
|
207
|
-
args: [TuiDropdownPortalService]
|
|
208
|
-
}] }, { type: i0.ElementRef, decorators: [{
|
|
209
|
-
type: Host
|
|
210
|
-
}, {
|
|
211
|
-
type: Inject,
|
|
212
|
-
args: [ElementRef]
|
|
213
|
-
}] }, { type: i1.TuiActiveZoneDirective, decorators: [{
|
|
214
|
-
type: Inject,
|
|
215
|
-
args: [TuiActiveZoneDirective]
|
|
216
|
-
}, {
|
|
217
|
-
type: Optional
|
|
218
|
-
}] }, { type: Document, decorators: [{
|
|
219
|
-
type: Inject,
|
|
220
|
-
args: [TUI_DOCUMENT_OR_SHADOW_ROOT]
|
|
221
|
-
}, {
|
|
222
|
-
type: Optional
|
|
223
|
-
}] }, { type: i0.ElementRef, decorators: [{
|
|
224
|
-
type: Inject,
|
|
225
|
-
args: [TUI_ELEMENT_REF]
|
|
226
|
-
}, {
|
|
227
|
-
type: Optional
|
|
228
|
-
}] }, { type: i1.TuiDestroyService, decorators: [{
|
|
229
|
-
type: Inject,
|
|
230
|
-
args: [TuiDestroyService]
|
|
231
|
-
}] }, { type: i1.TuiParentsScrollService, decorators: [{
|
|
232
|
-
type: Inject,
|
|
233
|
-
args: [TuiParentsScrollService]
|
|
234
|
-
}] }, { type: i0.ChangeDetectorRef, decorators: [{
|
|
235
|
-
type: Inject,
|
|
236
|
-
args: [ChangeDetectorRef]
|
|
237
|
-
}] }, { type: i0.NgZone, decorators: [{
|
|
238
|
-
type: Inject,
|
|
239
|
-
args: [NgZone]
|
|
240
|
-
}] }, { type: i0.Renderer2, decorators: [{
|
|
241
|
-
type: Inject,
|
|
242
|
-
args: [Renderer2]
|
|
243
|
-
}] }, { type: i0.ViewContainerRef, decorators: [{
|
|
244
|
-
type: Inject,
|
|
245
|
-
args: [ViewContainerRef]
|
|
246
|
-
}] }]; }, propDecorators: { tuiDropdownSelection: [{
|
|
247
|
-
type: Input
|
|
248
|
-
}], position: [{
|
|
249
|
-
type: Input,
|
|
250
|
-
args: [`tuiDropdownSelectionPosition`]
|
|
251
|
-
}] } });
|
|
252
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tc2VsZWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tpdC9kaXJlY3RpdmVzL2Ryb3Bkb3duLXNlbGVjdGlvbi9kcm9wZG93bi1zZWxlY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLHdCQUF3QixFQUN4QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixJQUFJLEVBQ0osTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsTUFBTSxFQUVOLFFBQVEsRUFDUixTQUFTLEVBQ1QsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsbUJBQW1CLEVBQ25CLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsc0JBQXNCLEVBRXRCLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsbUJBQW1CLEVBQ25CLHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsY0FBYyxHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsbUJBQW1CLEVBQ25CLDJCQUEyQixFQUMzQixzQkFBc0IsRUFDdEIsZUFBZSxHQUVsQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzNCLE9BQU8sRUFBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7QUFFM0QsV0FBVztBQVlYLE1BQU0sT0FBTyw2QkFDVCxTQUFRLG1CQUFtQjtJQXlCM0IsWUFDc0IsV0FBcUIsRUFFdkMsd0JBQWtELEVBQ2hDLFFBQWtCLEVB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QUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDZCQUE2QixDQUFDO1NBQy9EO1FBQ0QsdUJBQXVCO1FBQ3ZCLGlCQUFpQjtLQUNwQjs0RkFFUSw2QkFBNkI7a0JBWHpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxzQkFBc0I7NEJBQy9CLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDhCQUE4QixDQUFDO3lCQUMvRDt3QkFDRCx1QkFBdUI7d0JBQ3ZCLGlCQUFpQjtxQkFDcEI7aUJBQ0o7MERBNEJzQyxRQUFROzBCQUF0QyxNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsd0JBQXdCOzswQkFFL0IsTUFBTTsyQkFBQyxRQUFROzswQkFDZixNQUFNOzJCQUFDLHdCQUF3Qjs7MEJBQy9CLElBQUk7OzBCQUFJLE1BQU07MkJBQUMsVUFBVTs7MEJBQ3pCLE1BQU07MkJBQUMsc0JBQXNCOzswQkFDN0IsUUFBUTs4QkFJTSxRQUFROzBCQUZ0QixNQUFNOzJCQUFDLDJCQUEyQjs7MEJBQ2xDLFFBQVE7OzBCQUVSLE1BQU07MkJBQUMsZUFBZTs7MEJBQ3RCLFFBQVE7OzBCQUVSLE1BQU07MkJBQUMsaUJBQWlCOzswQkFFeEIsTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUM5QixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsTUFBTTs7MEJBQ2IsTUFBTTsyQkFBQyxTQUFTOzswQkFDaEIsTUFBTTsyQkFBQyxnQkFBZ0I7NENBdEN4QixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBZU4sUUFBUTtzQkFEUCxLQUFLO3VCQUFDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3QsXG4gICAgSW5qZWN0LFxuICAgIEluamVjdG9yLFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBTFdBWVNfVFJVRV9IQU5ETEVSLFxuICAgIENIQVJfTk9fQlJFQUtfU1BBQ0UsXG4gICAgQ0hBUl9aRVJPX1dJRFRIX1NQQUNFLFxuICAgIEVNUFRZX0NMSUVOVF9SRUNULFxuICAgIFR1aUFjdGl2ZVpvbmVEaXJlY3RpdmUsXG4gICAgVHVpQm9vbGVhbkhhbmRsZXIsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgVHVpRHJvcGRvd25Qb3J0YWxTZXJ2aWNlLFxuICAgIHR1aUdldE5hdGl2ZUZvY3VzZWQsXG4gICAgVHVpUGFyZW50c1Njcm9sbFNlcnZpY2UsXG4gICAgdHVpUHgsXG4gICAgdHlwZWRGcm9tRXZlbnQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aURyb3Bkb3duLFxuICAgIFRVSV9ET0NVTUVOVF9PUl9TSEFET1dfUk9PVCxcbiAgICBUVUlfRFJPUERPV05fRElSRUNUSVZFLFxuICAgIFRVSV9FTEVNRU5UX1JFRixcbiAgICBUdWlEcm9wZG93bixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtnZXRXb3JkUmFuZ2V9IGZyb20gJ0B0YWlnYS11aS9raXQvdXRpbHMvZG9tJztcbmltcG9ydCB7bWVyZ2V9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcFRvLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gQGR5bmFtaWNcbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3R1aURyb3Bkb3duU2VsZWN0aW9uXTpub3QobmctY29udGFpbmVyKWAsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9EUk9QRE9XTl9ESVJFQ1RJVkUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlEcm9wZG93blNlbGVjdGlvbkRpcmVjdGl2ZSksXG4gICAgICAgIH0sXG4gICAgICAgIFR1aVBhcmVudHNTY3JvbGxTZXJ2aWNlLFxuICAgICAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlEcm9wZG93blNlbGVjdGlvbkRpcmVjdGl2ZVxuICAgIGV4dGVuZHMgQWJzdHJhY3RUdWlEcm9wZG93blxuICAgIGltcGxlbWVudHMgVHVpRHJvcGRvd24sIE9uRGVzdHJveVxue1xuICAgIHByaXZhdGUgdmlzaWJpbGl0eUhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFJhbmdlPiA9IEFMV0FZU19UUlVFX0hBTkRMRVI7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudFJlZjogRG9jdW1lbnQ7XG4gICAgcHJpdmF0ZSBnaG9zdD86IEhUTUxFbGVtZW50O1xuICAgIHByaXZhdGUgcmFuZ2U/OiBSYW5nZTtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHR1aURyb3Bkb3duU2VsZWN0aW9uKGhhbmRsZXI6IFR1aUJvb2xlYW5IYW5kbGVyPFJhbmdlPiB8ICcnKSB7XG4gICAgICAgIGlmICghaGFuZGxlciB8fCAhdGhpcy5yYW5nZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5Ib3N0QW5kVmFsaWQgPVxuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnModGhpcy5yYW5nZS5jb21tb25BbmNlc3RvckNvbnRhaW5lcikgJiZcbiAgICAgICAgICAgIGhhbmRsZXIodGhpcy5yYW5nZSk7XG5cbiAgICAgICAgdGhpcy52aXNpYmlsaXR5SGFuZGxlciA9IGhhbmRsZXI7XG4gICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd25Cb3goaW5Ib3N0QW5kVmFsaWQpO1xuICAgIH1cblxuICAgIEBJbnB1dChgdHVpRHJvcGRvd25TZWxlY3Rpb25Qb3NpdGlvbmApXG4gICAgcG9zaXRpb246ICdzZWxlY3Rpb24nIHwgJ3dvcmQnIHwgJ3RhZycgPSBgc2VsZWN0aW9uYDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudFJlZjogRG9jdW1lbnQsXG4gICAgICAgIEBJbmplY3QoQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKVxuICAgICAgICBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgQEluamVjdChJbmplY3RvcikgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBASW5qZWN0KFR1aURyb3Bkb3duUG9ydGFsU2VydmljZSkgcG9ydGFsU2VydmljZTogVHVpRHJvcGRvd25Qb3J0YWxTZXJ2aWNlLFxuICAgICAgICBASG9zdCgpIEBJbmplY3QoRWxlbWVudFJlZikgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSlcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgYWN0aXZlWm9uZTogVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVFVJX0RPQ1VNRU5UX09SX1NIQURPV19ST09UKVxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBzaGFkb3dSb290UmVmOiBEb2N1bWVudCB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVFVJX0VMRU1FTlRfUkVGKVxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBjdXN0b21FbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IG51bGwsXG4gICAgICAgIEBJbmplY3QoVHVpRGVzdHJveVNlcnZpY2UpXG4gICAgICAgIGRlc3Ryb3kkOiBUdWlEZXN0cm95U2VydmljZSxcbiAgICAgICAgQEluamVjdChUdWlQYXJlbnRzU2Nyb2xsU2VydmljZSkgcmVhZG9ubHkgcmVmcmVzaCQ6IFR1aVBhcmVudHNTY3JvbGxTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoUmVuZGVyZXIyKSBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBJbmplY3QoVmlld0NvbnRhaW5lclJlZikgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICkge1xuICAgICAgICBzdXBlcihcbiAgICAgICAgICAgIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgICAgIGluamVjdG9yLFxuICAgICAgICAgICAgcG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgIGN1c3RvbUVsZW1lbnRSZWYgfHwgZWxlbWVudFJlZixcbiAgICAgICAgICAgIGFjdGl2ZVpvbmUsXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuZG9jdW1lbnRSZWYgPSBzaGFkb3dSb290UmVmIHx8IGRvY3VtZW50UmVmO1xuXG4gICAgICAgIC8vIFNTUiBwcm90ZWN0aW9uXG4gICAgICAgIGlmICghdGhpcy5kb2N1bWVudFJlZi5jcmVhdGVSYW5nZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yYW5nZSA9IHRoaXMuZG9jdW1lbnRSZWYuY3JlYXRlUmFuZ2UoKTtcblxuICAgICAgICBjb25zdCB7bmF0aXZlRWxlbWVudH0gPSB0aGlzLmVsZW1lbnRSZWY7XG5cbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICB0eXBlZEZyb21FdmVudCh0aGlzLmRvY3VtZW50UmVmLCBgbW91c2V1cGApLFxuICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYG1vdXNlZG93bmApLnBpcGUoXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwVG8oXG4gICAgICAgICAgICAgICAgICAgIHR5cGVkRnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsIGBtb3VzZW1vdmVgKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHR5cGVkRnJvbUV2ZW50KHRoaXMuZG9jdW1lbnRSZWYsIGBtb3VzZXVwYCkpLFxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdHlwZWRGcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgYGtleXVwYCksXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFjdGl2ZSA9IHR1aUdldE5hdGl2ZUZvY3VzZWQodGhpcy5kb2N1bWVudFJlZik7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHRoaXMuZG9jdW1lbnRSZWYuZ2V0U2VsZWN0aW9uKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogaWZyYW1lIHdhcm5pbmdcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGFjdGl2ZSBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmUgaW5zdGFuY2VvZiBIVE1MVGV4dEFyZWFFbGVtZW50KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgbmF0aXZlRWxlbWVudC5jb250YWlucyhhY3RpdmUpXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudmVyeVZlcnlTYWRJbnB1dEZpeChhY3RpdmUpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbj8ucmFuZ2VDb3VudCA/IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApIDogdGhpcy5yYW5nZTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyYW5nZSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udGFpbmVkID1cbiAgICAgICAgICAgICAgICAgICAgISFyYW5nZSAmJiBuYXRpdmVFbGVtZW50LmNvbnRhaW5zKHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKTtcblxuICAgICAgICAgICAgICAgIHRoaXMucmFuZ2UgPSBjb250YWluZWQgPyByYW5nZSA6IHRoaXMucmFuZ2U7XG5cbiAgICAgICAgICAgICAgICBjb25zdCB2YWxpZCA9XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgICAoIXRoaXMudmlzaWJpbGl0eUhhbmRsZXIgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzLnJhbmdlIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZpc2liaWxpdHlIYW5kbGVyKHRoaXMucmFuZ2UpKTtcblxuICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd25Cb3goISFyYW5nZSAmJiAodmFsaWQgfHwgdGhpcy5pbkRyb3Bkb3duKHJhbmdlKSkpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IGNsaWVudFJlY3QoKTogQ2xpZW50UmVjdCB7XG4gICAgICAgIGNvbnN0IHtkZWZhdWx0Vmlld30gPSB0aGlzLmRvY3VtZW50UmVmO1xuICAgICAgICBjb25zdCB7cmFuZ2VSZWN0fSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGZyYW1lRWxlbWVudCA9IGRlZmF1bHRWaWV3ID8gZGVmYXVsdFZpZXcuZnJhbWVFbGVtZW50IDogbnVsbDtcblxuICAgICAgICBpZiAoIWZyYW1lRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHJhbmdlUmVjdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRvY3VtZW50UmVjdCA9IGZyYW1lRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG9wOiByYW5nZVJlY3QudG9wICsgZG9jdW1lbnRSZWN0LnRvcCxcbiAgICAgICAgICAgIGxlZnQ6IHJhbmdlUmVjdC5sZWZ0ICsgZG9jdW1lbnRSZWN0LmxlZnQsXG4gICAgICAgICAgICByaWdodDogcmFuZ2VSZWN0LmxlZnQgKyBkb2N1bWVudFJlY3QubGVmdCArIHJhbmdlUmVjdC53aWR0aCxcbiAgICAgICAgICAgIGJvdHRvbTogcmFuZ2VSZWN0LnRvcCArIGRvY3VtZW50UmVjdC50b3AgKyByYW5nZVJlY3QuaGVpZ2h0LFxuICAgICAgICAgICAgd2lkdGg6IHJhbmdlUmVjdC53aWR0aCxcbiAgICAgICAgICAgIGhlaWdodDogcmFuZ2VSZWN0LmhlaWdodCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duQm94KCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZ2hvc3QpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQoXG4gICAgICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICB0aGlzLmdob3N0LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldCBDbGllbnRSZWN0IG9mIGN1cnJlbnQgUmFuZ2UgYWNjb3JkaW5nIHRvIHByb3ZpZGVkIHBvc2l0aW9uXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXQgcmFuZ2VSZWN0KCk6IENsaWVudFJlY3Qge1xuICAgICAgICBpZiAoIXRoaXMucmFuZ2UpIHtcbiAgICAgICAgICAgIHJldHVybiBFTVBUWV9DTElFTlRfUkVDVDtcbiAgICAgICAgfVxuXG4gICAgICAgIHN3aXRjaCAodGhpcy5wb3NpdGlvbikge1xuICAgICAgICAgICAgY2FzZSBgdGFnYDoge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtjb21tb25BbmNlc3RvckNvbnRhaW5lcn0gPSB0aGlzLnJhbmdlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPVxuICAgICAgICAgICAgICAgICAgICBjb21tb25BbmNlc3RvckNvbnRhaW5lci5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREVcbiAgICAgICAgICAgICAgICAgICAgICAgID8gY29tbW9uQW5jZXN0b3JDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogY29tbW9uQW5jZXN0b3JDb250YWluZXIucGFyZW50Tm9kZTtcblxuICAgICAgICAgICAgICAgIHJldHVybiAoZWxlbWVudCBhcyBFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgYHdvcmRgOlxuICAgICAgICAgICAgICAgIHJldHVybiBnZXRXb3JkUmFuZ2UodGhpcy5yYW5nZSkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJhbmdlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlIGRyb3Bkb3duIHZpc2liaWxpdHkgKGhhcyB0byBiZSBpbiBuZ1pvbmUucnVuIGJlY2F1c2UgaXQgY291bGQgYmUgaW5pdGlhdGVkIGluc2lkZSBpZnJhbWUgaW4gRWRpdG9yKVxuICAgICAqL1xuICAgIHByaXZhdGUgdG9nZ2xlRHJvcGRvd25Cb3godmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHZpc2libGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5Ecm9wZG93bkJveCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd25Cb3goKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgTm9kZSBpcyBpbnNpZGUgZHJvcGRvd25cbiAgICAgKi9cbiAgICBwcml2YXRlIGJveENvbnRhaW5zKG5vZGU6IE5vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdGhpcy5kcm9wZG93bkJveFJlZiAmJlxuICAgICAgICAgICAgdGhpcy5kcm9wZG93bkJveFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKG5vZGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgaWYgZ2l2ZW4gcmFuZ2UgaXMgYXQgbGVhc3QgcGFydGlhbGx5IGluc2lkZSBkcm9wZG93blxuICAgICAqL1xuICAgIHByaXZhdGUgaW5Ecm9wZG93bihyYW5nZTogUmFuZ2UpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qge3N0YXJ0Q29udGFpbmVyLCBlbmRDb250YWluZXJ9ID0gcmFuZ2U7XG4gICAgICAgIGNvbnN0IGluRHJvcGRvd24gPSB0aGlzLmJveENvbnRhaW5zKHJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyKTtcbiAgICAgICAgY29uc3QgaG9zdFRvRHJvcGRvd24gPVxuICAgICAgICAgICAgdGhpcy5ib3hDb250YWlucyhlbmRDb250YWluZXIpICYmXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhzdGFydENvbnRhaW5lcik7XG4gICAgICAgIGNvbnN0IGRyb3Bkb3duVG9Ib3N0ID1cbiAgICAgICAgICAgIHRoaXMuYm94Q29udGFpbnMoc3RhcnRDb250YWluZXIpICYmXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhlbmRDb250YWluZXIpO1xuXG4gICAgICAgIHJldHVybiBpbkRyb3Bkb3duIHx8IGhvc3RUb0Ryb3Bkb3duIHx8IGRyb3Bkb3duVG9Ib3N0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBvc2l0aW9uIGludmlzaWJsZSBESVYgYW5kIGNyZWF0ZSBSYW5nZSBzaW1pbGFyIHRvIHNlbGVjdGVkIHJhbmdlIGluc2lkZSBpbnB1dC90ZXh0YXJlYVxuICAgICAqL1xuICAgIHByaXZhdGUgdmVyeVZlcnlTYWRJbnB1dEZpeChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudCk6IFJhbmdlIHtcbiAgICAgICAgY29uc3Qge2dob3N0ID0gdGhpcy5pbml0R2hvc3QoZWxlbWVudCl9ID0gdGhpcztcbiAgICAgICAgY29uc3Qge3RvcCwgbGVmdCwgd2lkdGgsIGhlaWdodH0gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCB7c2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZH0gPSBlbGVtZW50O1xuICAgICAgICBjb25zdCByYW5nZSA9IHRoaXMuZG9jdW1lbnRSZWYuY3JlYXRlUmFuZ2UoKTtcbiAgICAgICAgY29uc3QgaG9zdFJlY3QgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICBnaG9zdC5zdHlsZS50b3AgPSB0dWlQeCh0b3AgLSBob3N0UmVjdC50b3ApO1xuICAgICAgICBnaG9zdC5zdHlsZS5sZWZ0ID0gdHVpUHgobGVmdCAtIGhvc3RSZWN0LmxlZnQpO1xuICAgICAgICBnaG9zdC5zdHlsZS53aWR0aCA9IHR1aVB4KHdpZHRoKTtcbiAgICAgICAgZ2hvc3Quc3R5bGUuaGVpZ2h0ID0gdHVpUHgoaGVpZ2h0KTtcbiAgICAgICAgZ2hvc3QudGV4dENvbnRlbnQgPSBDSEFSX1pFUk9fV0lEVEhfU1BBQ0UgKyBlbGVtZW50LnZhbHVlICsgQ0hBUl9OT19CUkVBS19TUEFDRTtcblxuICAgICAgICByYW5nZS5zZXRTdGFydChnaG9zdC5maXJzdENoaWxkISwgc2VsZWN0aW9uU3RhcnQgfHwgMCk7XG4gICAgICAgIHJhbmdlLnNldEVuZChnaG9zdC5maXJzdENoaWxkISwgc2VsZWN0aW9uRW5kIHx8IDApO1xuXG4gICAgICAgIHJldHVybiByYW5nZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGUgYW4gaW52aXNpYmxlIERJViBzdHlsZWQgZXhhY3RseSBsaWtlIGlucHV0L3RleHRhcmVhIGVsZW1lbnQgaW5zaWRlIGRpcmVjdGl2ZVxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdEdob3N0KGVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAgICAgICBjb25zdCBnaG9zdCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudChgZGl2YCk7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVFbGVtZW50fSA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5lbGVtZW50O1xuICAgICAgICBjb25zdCB7Zm9udCwgbGV0dGVyU3BhY2luZywgdGV4dFRyYW5zZm9ybSwgcGFkZGluZ30gPSBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuXG4gICAgICAgIGdob3N0LnN0eWxlLnBvc2l0aW9uID0gYGFic29sdXRlYDtcbiAgICAgICAgZ2hvc3Quc3R5bGUucG9pbnRlckV2ZW50cyA9IGBub25lYDtcbiAgICAgICAgZ2hvc3Quc3R5bGUub3BhY2l0eSA9IGAwYDtcbiAgICAgICAgZ2hvc3Quc3R5bGUud2hpdGVTcGFjZSA9IGBwcmUtd3JhcGA7XG4gICAgICAgIGdob3N0LnN0eWxlLmZvbnQgPSBmb250O1xuICAgICAgICBnaG9zdC5zdHlsZS5sZXR0ZXJTcGFjaW5nID0gbGV0dGVyU3BhY2luZztcbiAgICAgICAgZ2hvc3Quc3R5bGUudGV4dFRyYW5zZm9ybSA9IHRleHRUcmFuc2Zvcm07XG4gICAgICAgIGdob3N0LnN0eWxlLnBhZGRpbmcgPSBwYWRkaW5nO1xuXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQobmF0aXZlRWxlbWVudCwgZ2hvc3QpO1xuICAgICAgICB0aGlzLmdob3N0ID0gZ2hvc3Q7XG5cbiAgICAgICAgcmV0dXJuIGdob3N0O1xuICAgIH1cbn1cbiJdfQ==
|