@taiga-ui/kit 2.40.0 → 2.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/abstract/input-slider.d.ts +27 -9
- package/abstract/slider/slider.d.ts +3 -6
- package/abstract/taiga-ui-kit-abstract.metadata.json +1 -1
- package/bundles/taiga-ui-kit-abstract.umd.js +43 -64
- package/bundles/taiga-ui-kit-abstract.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-abstract.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-abstract.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-accordion.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-action.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-avatar.umd.js +27 -5
- package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-avatar.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-avatar.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-breadcrumbs.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-calendar-month.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-carousel.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-checkbox.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-combo-box.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.js +3 -3
- package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-files.umd.min.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-filter.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-filter.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-copy.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-count.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date-time.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-date.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-file.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-file.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-files.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-files.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-files.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-month-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-month.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-number.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-password.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-phone.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.js +196 -164
- package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-range.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-input-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.js +6 -18
- package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.js +5 -5
- package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input-tag.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-input.umd.min.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-marker-icon.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-marker-icon.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-multi-select.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-pagination.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-pdf-viewer.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-progress.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-radio.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.js +221 -31
- package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-range.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-range.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-rating.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-select.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.js +62 -6
- package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-slider.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-stepper.umd.min.js +2 -2
- package/bundles/taiga-ui-kit-components-stepper.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.js +38 -36
- package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-tabs.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-tag.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.js +2 -2
- package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-text-area.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.js +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-components-toggle.umd.min.js.map +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.js +7 -1
- package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.min.js +1 -1
- package/bundles/taiga-ui-kit-tokens.umd.min.js.map +1 -1
- package/components/accordion/taiga-ui-kit-components-accordion.metadata.json +1 -1
- package/components/action/taiga-ui-kit-components-action.metadata.json +1 -1
- package/components/avatar/avatar-options.d.ts +11 -0
- package/components/avatar/avatar.component.d.ts +4 -2
- package/components/avatar/index.d.ts +1 -0
- package/components/avatar/taiga-ui-kit-components-avatar.metadata.json +1 -1
- package/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.metadata.json +1 -1
- package/components/calendar-month/taiga-ui-kit-components-calendar-month.metadata.json +1 -1
- package/components/carousel/taiga-ui-kit-components-carousel.metadata.json +1 -1
- package/components/checkbox/taiga-ui-kit-components-checkbox.metadata.json +1 -1
- package/components/checkbox-labeled/taiga-ui-kit-components-checkbox-labeled.metadata.json +1 -1
- package/components/combo-box/taiga-ui-kit-components-combo-box.metadata.json +1 -1
- package/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.metadata.json +1 -1
- package/components/files/taiga-ui-kit-components-files.metadata.json +1 -1
- package/components/filter/taiga-ui-kit-components-filter.metadata.json +1 -1
- package/components/input/taiga-ui-kit-components-input.metadata.json +1 -1
- package/components/input-copy/taiga-ui-kit-components-input-copy.metadata.json +1 -1
- package/components/input-count/taiga-ui-kit-components-input-count.metadata.json +1 -1
- package/components/input-date/taiga-ui-kit-components-input-date.metadata.json +1 -1
- package/components/input-date-range/taiga-ui-kit-components-input-date-range.metadata.json +1 -1
- package/components/input-date-time/taiga-ui-kit-components-input-date-time.metadata.json +1 -1
- package/components/input-file/taiga-ui-kit-components-input-file.metadata.json +1 -1
- package/components/input-files/taiga-ui-kit-components-input-files.metadata.json +1 -1
- package/components/input-month/taiga-ui-kit-components-input-month.metadata.json +1 -1
- package/components/input-month-range/taiga-ui-kit-components-input-month-range.metadata.json +1 -1
- package/components/input-number/taiga-ui-kit-components-input-number.metadata.json +1 -1
- package/components/input-password/taiga-ui-kit-components-input-password.metadata.json +1 -1
- package/components/input-phone/taiga-ui-kit-components-input-phone.metadata.json +1 -1
- package/components/input-range/input-range.component.d.ts +44 -31
- package/components/input-range/taiga-ui-kit-components-input-range.metadata.json +1 -1
- package/components/input-slider/input-slider.component.d.ts +2 -8
- package/components/input-slider/taiga-ui-kit-components-input-slider.metadata.json +1 -1
- package/components/input-tag/input-tag.component.d.ts +1 -1
- package/components/input-tag/taiga-ui-kit-components-input-tag.metadata.json +1 -1
- package/components/marker-icon/taiga-ui-kit-components-marker-icon.metadata.json +1 -1
- package/components/multi-select/taiga-ui-kit-components-multi-select.metadata.json +1 -1
- package/components/pagination/taiga-ui-kit-components-pagination.metadata.json +1 -1
- package/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.metadata.json +1 -1
- package/components/progress/taiga-ui-kit-components-progress.metadata.json +1 -1
- package/components/radio/taiga-ui-kit-components-radio.metadata.json +1 -1
- package/components/range/index.d.ts +1 -0
- package/components/range/range-change.directive.d.ts +20 -0
- package/components/range/range.component.d.ts +33 -5
- package/components/range/taiga-ui-kit-components-range.metadata.json +1 -1
- package/components/rating/taiga-ui-kit-components-rating.metadata.json +1 -1
- package/components/select/taiga-ui-kit-components-select.metadata.json +1 -1
- package/components/slider/index.d.ts +1 -0
- package/components/slider/slider-old.component.d.ts +3 -1
- package/components/slider/slider-readonly.directive.d.ts +9 -0
- package/components/slider/taiga-ui-kit-components-slider.metadata.json +1 -1
- package/components/stepper/taiga-ui-kit-components-stepper.metadata.json +1 -1
- package/components/tabs/index.d.ts +0 -1
- package/components/tabs/tab/tab.component.d.ts +2 -1
- package/components/tabs/tabs/tabs.component.d.ts +2 -3
- package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +4 -1
- package/components/tabs/taiga-ui-kit-components-tabs.metadata.json +1 -1
- package/components/tag/taiga-ui-kit-components-tag.metadata.json +1 -1
- package/components/text-area/taiga-ui-kit-components-text-area.metadata.json +1 -1
- package/components/toggle/taiga-ui-kit-components-toggle.metadata.json +1 -1
- package/esm2015/abstract/input-slider.js +30 -37
- package/esm2015/abstract/slider/slider.js +13 -19
- package/esm2015/components/accordion/accordion-item/accordion-item.component.js +2 -2
- package/esm2015/components/action/action.component.js +2 -2
- package/esm2015/components/avatar/avatar-options.js +15 -0
- package/esm2015/components/avatar/avatar.component.js +14 -8
- package/esm2015/components/avatar/index.js +2 -1
- package/esm2015/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
- package/esm2015/components/calendar-month/calendar-month.component.js +2 -2
- package/esm2015/components/carousel/carousel.component.js +2 -2
- package/esm2015/components/checkbox/checkbox.component.js +1 -1
- package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
- package/esm2015/components/combo-box/combo-box.component.js +2 -2
- package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
- package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
- package/esm2015/components/files/file/file.component.js +2 -2
- package/esm2015/components/files/files.component.js +3 -3
- package/esm2015/components/filter/filter.component.js +2 -2
- package/esm2015/components/input/input.component.js +2 -2
- package/esm2015/components/input-copy/input-copy.component.js +2 -2
- package/esm2015/components/input-count/input-count.component.js +2 -2
- package/esm2015/components/input-date/input-date.component.js +2 -2
- package/esm2015/components/input-date-range/input-date-range.component.js +2 -2
- package/esm2015/components/input-date-time/input-date-time.component.js +2 -2
- package/esm2015/components/input-file/file/file.component.js +2 -2
- package/esm2015/components/input-files/input-files.component.js +1 -1
- package/esm2015/components/input-month/input-month.component.js +2 -2
- package/esm2015/components/input-month-range/input-month-range.component.js +2 -2
- package/esm2015/components/input-number/input-number.component.js +3 -3
- package/esm2015/components/input-password/input-password.component.js +2 -2
- package/esm2015/components/input-phone/input-phone.component.js +2 -2
- package/esm2015/components/input-range/input-range.component.js +192 -156
- package/esm2015/components/input-range/input-range.module.js +13 -15
- package/esm2015/components/input-slider/input-slider.component.js +8 -20
- package/esm2015/components/input-tag/input-tag.component.js +6 -6
- package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
- package/esm2015/components/multi-select/multi-select.component.js +2 -2
- package/esm2015/components/pagination/pagination.component.js +2 -2
- package/esm2015/components/pdf-viewer/pdf-viewer.component.js +2 -2
- package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
- package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +2 -2
- package/esm2015/components/radio/radio.component.js +3 -3
- package/esm2015/components/range/index.js +2 -1
- package/esm2015/components/range/range-change.directive.js +83 -0
- package/esm2015/components/range/range.component.js +118 -28
- package/esm2015/components/range/range.module.js +10 -7
- package/esm2015/components/rating/rating.component.js +2 -2
- package/esm2015/components/select/select.component.js +2 -2
- package/esm2015/components/slider/index.js +2 -1
- package/esm2015/components/slider/slider-key-steps.directive.js +2 -2
- package/esm2015/components/slider/slider-old.component.js +11 -5
- package/esm2015/components/slider/slider-readonly.directive.js +50 -0
- package/esm2015/components/slider/slider.component.js +1 -1
- package/esm2015/components/slider/slider.module.js +4 -1
- package/esm2015/components/stepper/step/step.component.js +2 -2
- package/esm2015/components/tabs/index.js +1 -2
- package/esm2015/components/tabs/tab/tab.component.js +13 -9
- package/esm2015/components/tabs/tabs/tabs.component.js +5 -11
- package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +24 -16
- package/esm2015/components/tabs/underline/underline.component.js +2 -2
- package/esm2015/components/tag/tag.component.js +3 -3
- package/esm2015/components/text-area/text-area.component.js +3 -3
- package/esm2015/components/toggle/toggle.component.js +1 -1
- package/esm2015/tokens/i18n.js +2 -2
- package/esm2015/tokens/index.js +2 -1
- package/esm2015/tokens/mobile-aware.js +2 -1
- package/esm2015/tokens/tab-margin.js +5 -0
- package/esm5/abstract/input-slider.js +30 -48
- package/esm5/abstract/slider/slider.js +13 -19
- package/esm5/components/accordion/accordion-item/accordion-item.component.js +2 -2
- package/esm5/components/action/action.component.js +2 -2
- package/esm5/components/avatar/avatar-options.js +16 -0
- package/esm5/components/avatar/avatar.component.js +14 -8
- package/esm5/components/avatar/index.js +2 -1
- package/esm5/components/breadcrumbs/breadcrumbs-wrapper.component.js +2 -2
- package/esm5/components/calendar-month/calendar-month.component.js +2 -2
- package/esm5/components/carousel/carousel.component.js +2 -2
- package/esm5/components/checkbox/checkbox.component.js +1 -1
- package/esm5/components/checkbox-labeled/checkbox-labeled.component.js +2 -2
- package/esm5/components/combo-box/combo-box.component.js +2 -2
- package/esm5/components/data-list-wrapper/data-list-group-wrapper.component.js +2 -2
- package/esm5/components/data-list-wrapper/data-list-wrapper.component.js +2 -2
- package/esm5/components/files/file/file.component.js +2 -2
- package/esm5/components/files/files.component.js +3 -3
- package/esm5/components/filter/filter.component.js +2 -2
- package/esm5/components/input/input.component.js +2 -2
- package/esm5/components/input-copy/input-copy.component.js +2 -2
- package/esm5/components/input-count/input-count.component.js +2 -2
- package/esm5/components/input-date/input-date.component.js +2 -2
- package/esm5/components/input-date-range/input-date-range.component.js +2 -2
- package/esm5/components/input-date-time/input-date-time.component.js +2 -2
- package/esm5/components/input-file/file/file.component.js +2 -2
- package/esm5/components/input-files/input-files.component.js +1 -1
- package/esm5/components/input-month/input-month.component.js +2 -2
- package/esm5/components/input-month-range/input-month-range.component.js +2 -2
- package/esm5/components/input-number/input-number.component.js +3 -3
- package/esm5/components/input-password/input-password.component.js +2 -2
- package/esm5/components/input-phone/input-phone.component.js +2 -2
- package/esm5/components/input-range/input-range.component.js +194 -157
- package/esm5/components/input-range/input-range.module.js +13 -15
- package/esm5/components/input-slider/input-slider.component.js +8 -20
- package/esm5/components/input-tag/input-tag.component.js +6 -6
- package/esm5/components/marker-icon/marker-icon.component.js +2 -2
- package/esm5/components/multi-select/multi-select.component.js +2 -2
- package/esm5/components/pagination/pagination.component.js +2 -2
- package/esm5/components/pdf-viewer/pdf-viewer.component.js +2 -2
- package/esm5/components/progress/progress-circle/progress-circle.component.js +2 -2
- package/esm5/components/progress/progress-segmented/progress-segmented.component.js +2 -2
- package/esm5/components/radio/radio.component.js +3 -3
- package/esm5/components/range/index.js +2 -1
- package/esm5/components/range/range-change.directive.js +101 -0
- package/esm5/components/range/range.component.js +126 -29
- package/esm5/components/range/range.module.js +10 -7
- package/esm5/components/rating/rating.component.js +2 -2
- package/esm5/components/select/select.component.js +2 -2
- package/esm5/components/slider/index.js +2 -1
- package/esm5/components/slider/slider-key-steps.directive.js +2 -2
- package/esm5/components/slider/slider-old.component.js +11 -5
- package/esm5/components/slider/slider-readonly.directive.js +51 -0
- package/esm5/components/slider/slider.component.js +1 -1
- package/esm5/components/slider/slider.module.js +4 -1
- package/esm5/components/stepper/step/step.component.js +2 -2
- package/esm5/components/tabs/index.js +1 -2
- package/esm5/components/tabs/tab/tab.component.js +13 -9
- package/esm5/components/tabs/tabs/tabs.component.js +5 -15
- package/esm5/components/tabs/tabs-with-more/tabs-with-more.component.js +27 -16
- package/esm5/components/tabs/underline/underline.component.js +2 -2
- package/esm5/components/tag/tag.component.js +3 -3
- package/esm5/components/text-area/text-area.component.js +3 -3
- package/esm5/components/toggle/toggle.component.js +1 -1
- package/esm5/tokens/i18n.js +2 -2
- package/esm5/tokens/index.js +2 -1
- package/esm5/tokens/mobile-aware.js +2 -1
- package/esm5/tokens/tab-margin.js +5 -0
- package/fesm2015/taiga-ui-kit-abstract.js +43 -55
- package/fesm2015/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-accordion.js +1 -1
- package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-action.js +1 -1
- package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-avatar.js +27 -8
- package/fesm2015/taiga-ui-kit-components-avatar.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 +1 -1
- package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-carousel.js +1 -1
- package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-checkbox.js +1 -1
- package/fesm2015/taiga-ui-kit-components-combo-box.js +1 -1
- package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +2 -2
- package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-files.js +3 -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 +1 -1
- package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-count.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-file.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-files.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month-range.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-number.js +2 -2
- package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-password.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-range.js +198 -167
- package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-slider.js +7 -19
- package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input-tag.js +5 -5
- package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-input.js +1 -1
- package/fesm2015/taiga-ui-kit-components-input.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.js +1 -1
- package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js +1 -1
- package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +1 -1
- package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-progress.js +2 -2
- package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-radio.js +2 -2
- package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-range.js +199 -34
- package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-rating.js +1 -1
- package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js +1 -1
- package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-slider.js +61 -7
- package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-stepper.js +1 -1
- package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tabs.js +39 -34
- package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-tag.js +2 -2
- package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-text-area.js +2 -2
- package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm2015/taiga-ui-kit-components-toggle.js +1 -1
- package/fesm2015/taiga-ui-kit-tokens.js +7 -2
- package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
- package/fesm5/taiga-ui-kit-abstract.js +43 -66
- package/fesm5/taiga-ui-kit-abstract.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-accordion.js +1 -1
- package/fesm5/taiga-ui-kit-components-accordion.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-action.js +1 -1
- package/fesm5/taiga-ui-kit-components-action.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-avatar.js +27 -8
- package/fesm5/taiga-ui-kit-components-avatar.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-breadcrumbs.js +1 -1
- package/fesm5/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-calendar-month.js +1 -1
- package/fesm5/taiga-ui-kit-components-calendar-month.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-carousel.js +1 -1
- package/fesm5/taiga-ui-kit-components-carousel.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-checkbox-labeled.js +1 -1
- package/fesm5/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-checkbox.js +1 -1
- package/fesm5/taiga-ui-kit-components-combo-box.js +1 -1
- package/fesm5/taiga-ui-kit-components-combo-box.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-data-list-wrapper.js +2 -2
- package/fesm5/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-files.js +3 -3
- package/fesm5/taiga-ui-kit-components-files.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-filter.js +1 -1
- package/fesm5/taiga-ui-kit-components-filter.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-copy.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-copy.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-count.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-count.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-range.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-time.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-date-time.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-date.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-date.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-file.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-file.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-files.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-month-range.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-month-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-month.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-month.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-number.js +2 -2
- package/fesm5/taiga-ui-kit-components-input-number.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-password.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-password.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone.js +1 -1
- package/fesm5/taiga-ui-kit-components-input-phone.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-range.js +200 -168
- package/fesm5/taiga-ui-kit-components-input-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-slider.js +7 -19
- package/fesm5/taiga-ui-kit-components-input-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input-tag.js +5 -5
- package/fesm5/taiga-ui-kit-components-input-tag.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-input.js +1 -1
- package/fesm5/taiga-ui-kit-components-input.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-marker-icon.js +1 -1
- package/fesm5/taiga-ui-kit-components-marker-icon.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-multi-select.js +1 -1
- package/fesm5/taiga-ui-kit-components-multi-select.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-pagination.js +1 -1
- package/fesm5/taiga-ui-kit-components-pagination.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-pdf-viewer.js +1 -1
- package/fesm5/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-progress.js +2 -2
- package/fesm5/taiga-ui-kit-components-progress.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-radio.js +2 -2
- package/fesm5/taiga-ui-kit-components-radio.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-range.js +225 -35
- package/fesm5/taiga-ui-kit-components-range.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-rating.js +1 -1
- package/fesm5/taiga-ui-kit-components-rating.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-select.js +1 -1
- package/fesm5/taiga-ui-kit-components-select.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-slider.js +62 -7
- package/fesm5/taiga-ui-kit-components-slider.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-stepper.js +1 -1
- package/fesm5/taiga-ui-kit-components-stepper.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-tabs.js +42 -38
- package/fesm5/taiga-ui-kit-components-tabs.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-tag.js +2 -2
- package/fesm5/taiga-ui-kit-components-tag.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-text-area.js +2 -2
- package/fesm5/taiga-ui-kit-components-text-area.js.map +1 -1
- package/fesm5/taiga-ui-kit-components-toggle.js +1 -1
- package/fesm5/taiga-ui-kit-tokens.js +7 -2
- package/fesm5/taiga-ui-kit-tokens.js.map +1 -1
- package/package.json +7 -7
- package/tokens/i18n.d.ts +1 -5
- package/tokens/index.d.ts +1 -0
- package/tokens/mobile-aware.d.ts +1 -0
- package/tokens/tab-margin.d.ts +2 -0
- package/tokens/taiga-ui-kit-tokens.metadata.json +1 -1
- package/components/tabs/tabs.const.d.ts +0 -2
- package/esm2015/components/tabs/tabs.const.js +0 -3
- package/esm5/components/tabs/tabs.const.js +0 -3
|
@@ -105,7 +105,7 @@ var TuiInputPasswordComponent = /** @class */ (function (_super) {
|
|
|
105
105
|
TuiInputPasswordComponent = TuiInputPasswordComponent_1 = __decorate([
|
|
106
106
|
Component({
|
|
107
107
|
selector: 'tui-input-password',
|
|
108
|
-
template: "<tui-primitive-textfield\n class=\"textfield\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoPressed]=\"pseudoPressed\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [nativeId]=\"nativeId\"\n [tuiTextfieldType]=\"inputType\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"interactive ? iconContent : null\"\n [value]=\"value\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n>\n <ng-content></ng-content>\n <ng-content
|
|
108
|
+
template: "<tui-primitive-textfield\n class=\"textfield\"\n [pseudoFocused]=\"pseudoFocused\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoPressed]=\"pseudoPressed\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [nativeId]=\"nativeId\"\n [tuiTextfieldType]=\"inputType\"\n [disabled]=\"computedDisabled\"\n [readOnly]=\"readOnly\"\n [iconContent]=\"interactive ? iconContent : null\"\n [value]=\"value\"\n (valueChange)=\"onValueChange($event)\"\n (focusedChange)=\"onFocused($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (pressedChange)=\"onPressed($event)\"\n>\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n</tui-primitive-textfield>\n\n<ng-template\n #iconContent=\"polymorpheus\"\n [polymorpheus]=\"type\"\n>\n <span\n *tuiLet=\"passwordTexts$ | async as texts\"\n polymorpheus-outlet\n [content]=\"icon\"\n [context]=\"context\"\n >\n <ng-template let-icon>\n <tui-svg\n automation-id=\"tui-password__icon\"\n tuiHintId=\"not_required\"\n class=\"icon\"\n [tuiHint]=\"texts[0] && texts[1] && hintContent\"\n [tuiHintDirection]=\"hintController.direction\"\n [tuiHintMode]=\"computedMode$ | async\"\n [src]=\"icon\"\n (click)=\"togglePasswordVisibility()\"\n ></tui-svg>\n </ng-template>\n\n <ng-template\n #hintContent=\"polymorpheus\"\n polymorpheus\n >\n {{ isPasswordHidden ? texts[0] : texts[1] }}\n </ng-template>\n </span>\n</ng-template>\n",
|
|
109
109
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
110
110
|
providers: [
|
|
111
111
|
{
|
|
@@ -134,4 +134,4 @@ var TuiInputPasswordComponent = /** @class */ (function (_super) {
|
|
|
134
134
|
return TuiInputPasswordComponent;
|
|
135
135
|
}(AbstractTuiControl));
|
|
136
136
|
export { TuiInputPasswordComponent };
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBhc3N3b3JkLyIsInNvdXJjZXMiOlsiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEVBQ1IsSUFBSSxFQUNKLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUNILGtCQUFrQixFQUNsQiwyQkFBMkIsRUFLM0IsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsYUFBYSxFQUNiLDJCQUEyQixFQUMzQixRQUFRLEVBQ1Isa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYiwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLDhCQUE4QixFQUM5QixRQUFRLEVBQ1IsUUFBUSxFQUNSLHlCQUF5QixHQUM1QixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBQyxhQUFhLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUNILDBCQUEwQixHQUU3QixNQUFNLDBCQUEwQixDQUFDO0FBRWxDLFdBQVc7QUFtQlg7SUFDWSw2Q0FBMEI7SUFxQmxDLG1DQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBRTlDLGFBQXdDLEVBRWhELGNBQTRDLEVBRTVDLE9BQWdDLEVBRWhDLGNBQTBDLEVBRWxDLEtBQXVDO1FBZjVELFlBaUJJ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QUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUUxQixXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1FBRTFCLFdBQUEsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFFbEMsV0FBQSxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtRQUVuQyxXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtPQXBDWix5QkFBeUIsQ0E4RnJDO0lBQUQsZ0NBQUM7Q0FBQSxBQTlGRCxDQUNZLGtCQUFrQixHQTZGN0I7U0E5RlkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlDb250cm9sLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlJbnB1dFR5cGVULFxuICAgIFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRVSV9ISU5UX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUVUlfTU9ERSxcbiAgICBUVUlfVEVYVEZJRUxEX1NJWkUsXG4gICAgVHVpQnJpZ2h0bmVzcyxcbiAgICBUdWlIaW50Q29udHJvbGxlckRpcmVjdGl2ZSxcbiAgICBUdWlIaW50TW9kZVQsXG4gICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxuICAgIFR1aVRleHRmaWVsZFNpemVEaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VFVJX1BBU1NXT1JEX1RFWFRTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9JTlBVVF9QQVNTV09SRF9PUFRJT05TLFxuICAgIFR1aUlucHV0UGFzc3dvcmRPcHRpb25zLFxufSBmcm9tICcuL2lucHV0LXBhc3N3b3JkLW9wdGlvbnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtcGFzc3dvcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1wYXNzd29yZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1wYXNzd29yZC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0UGFzc3dvcmRDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dFBhc3N3b3JkQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgSElOVF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0UGFzc3dvcmRDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIGlzUGFzc3dvcmRIaWRkZW4gPSB0cnVlO1xuXG4gICAgcmVhZG9ubHkgY29tcHV0ZWRNb2RlJDogT2JzZXJ2YWJsZTxUdWlIaW50TW9kZVQgfCBudWxsPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLm1vZGUkLnBpcGUobWFwKHZhbCA9PiAodmFsID09PSAnb25EYXJrJyA/ICdvbkRhcmsnIDogbnVsbCkpKSxcbiAgICAgICAgdGhpcy5oaW50Q29udHJvbGxlci5jaGFuZ2UkLnBpcGUoXG4gICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5oaW50Q29udHJvbGxlci5tb2RlKSxcbiAgICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgICBtYXAoKFttb2RlLCBjb250cm9sbGVyXSkgPT4gY29udHJvbGxlciB8fCBtb2RlKSxcbiAgICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICk7XG5cbiAgICByZWFkb25seSB0eXBlITogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9TSVpFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZFNpemU6IFR1aVRleHRmaWVsZFNpemVEaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoVFVJX1BBU1NXT1JEX1RFWFRTKVxuICAgICAgICByZWFkb25seSBwYXNzd29yZFRleHRzJDogT2JzZXJ2YWJsZTxbc3RyaW5nLCBzdHJpbmddPixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfUEFTU1dPUkRfT1BUSU9OUylcbiAgICAgICAgcmVhZG9ubHkgb3B0aW9uczogVHVpSW5wdXRQYXNzd29yZE9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoVFVJX0hJTlRfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBoaW50Q29udHJvbGxlcjogVHVpSGludENvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoVFVJX01PREUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbW9kZSQ6IE9ic2VydmFibGU8VHVpQnJpZ2h0bmVzcyB8IG51bGw+LFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlZERpc2FibGVkIHx8ICF0aGlzLnRleHRmaWVsZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudGV4dGZpZWxkICYmIHRoaXMudGV4dGZpZWxkLmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGljb24oKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aVNpemVTIHwgVHVpU2l6ZUw+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzUGFzc3dvcmRIaWRkZW4gPyB0aGlzLm9wdGlvbnMuaWNvbnMuaGlkZSA6IHRoaXMub3B0aW9ucy5pY29ucy5zaG93O1xuICAgIH1cblxuICAgIGdldCBjb250ZXh0KCk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb250ZXh0KHRoaXMudGV4dGZpZWxkU2l6ZS5zaXplKTtcbiAgICB9XG5cbiAgICBnZXQgaW5wdXRUeXBlKCk6IFR1aUlucHV0VHlwZVQge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1Bhc3N3b3JkSGlkZGVuIHx8ICF0aGlzLmludGVyYWN0aXZlID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0JztcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHRleHRWYWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGV4dFZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoZm9jdXNlZCk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIG9uUHJlc3NlZChwcmVzc2VkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUHJlc3NlZChwcmVzc2VkKTtcbiAgICB9XG5cbiAgICB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSB7XG4gICAgICAgIHRoaXMuaXNQYXNzd29yZEhpZGRlbiA9ICF0aGlzLmlzUGFzc3dvcmRIaWRkZW47XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRDb250ZXh0KFxuICAgICAgICAkaW1wbGljaXQ6IFR1aVNpemVTIHwgVHVpU2l6ZUwsXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPiB7XG4gICAgICAgIHJldHVybiB7JGltcGxpY2l0fTtcbiAgICB9XG59XG4iXX0=
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBhc3N3b3JkLyIsInNvdXJjZXMiOlsiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEVBQ1IsSUFBSSxFQUNKLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUNILGtCQUFrQixFQUNsQiwyQkFBMkIsRUFLM0IsT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsYUFBYSxFQUNiLDJCQUEyQixFQUMzQixRQUFRLEVBQ1Isa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYiwwQkFBMEIsRUFDMUIsWUFBWSxFQUNaLDhCQUE4QixFQUM5QixRQUFRLEVBQ1IsUUFBUSxFQUNSLHlCQUF5QixHQUM1QixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBQyxhQUFhLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUNILDBCQUEwQixHQUU3QixNQUFNLDBCQUEwQixDQUFDO0FBRWxDLFdBQVc7QUFtQlg7SUFDWSw2Q0FBMEI7SUFxQmxDLG1DQUlJLE9BQXlCLEVBQ0UsaUJBQW9DLEVBRTlDLGFBQXdDLEVBRWhELGNBQTRDLEVBRTVDLE9BQWdDLEVBRWhDLGNBQTBDLEVBRWxDLEtBQXVDO1FBZjVELFlBaUJJ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QUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUUxQixXQUFBLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1FBRTFCLFdBQUEsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFFbEMsV0FBQSxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtRQUVuQyxXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtPQXBDWix5QkFBeUIsQ0E4RnJDO0lBQUQsZ0NBQUM7Q0FBQSxBQTlGRCxDQUNZLGtCQUFrQixHQTZGN0I7U0E5RlkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOZ0NvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RUdWlDb250cm9sLFxuICAgIFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlJbnB1dFR5cGVULFxuICAgIFR1aU5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIEhJTlRfQ09OVFJPTExFUl9QUk9WSURFUixcbiAgICBNT0RFX1BST1ZJREVSLFxuICAgIFRVSV9ISU5UX1dBVENIRURfQ09OVFJPTExFUixcbiAgICBUVUlfTU9ERSxcbiAgICBUVUlfVEVYVEZJRUxEX1NJWkUsXG4gICAgVHVpQnJpZ2h0bmVzcyxcbiAgICBUdWlIaW50Q29udHJvbGxlckRpcmVjdGl2ZSxcbiAgICBUdWlIaW50TW9kZVQsXG4gICAgVHVpUHJpbWl0aXZlVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgIFR1aVNpemVMLFxuICAgIFR1aVNpemVTLFxuICAgIFR1aVRleHRmaWVsZFNpemVEaXJlY3RpdmUsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VFVJX1BBU1NXT1JEX1RFWFRTfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1xuICAgIFRVSV9JTlBVVF9QQVNTV09SRF9PUFRJT05TLFxuICAgIFR1aUlucHV0UGFzc3dvcmRPcHRpb25zLFxufSBmcm9tICcuL2lucHV0LXBhc3N3b3JkLW9wdGlvbnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtcGFzc3dvcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1wYXNzd29yZC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1wYXNzd29yZC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFRVSV9GT0NVU0FCTEVfSVRFTV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFR1aUlucHV0UGFzc3dvcmRDb21wb25lbnQpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUdWlJbnB1dFBhc3N3b3JkQ29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICAgICAgSElOVF9DT05UUk9MTEVSX1BST1ZJREVSLFxuICAgICAgICBNT0RFX1BST1ZJREVSLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0UGFzc3dvcmRDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3JcbntcbiAgICBAVmlld0NoaWxkKFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIGlzUGFzc3dvcmRIaWRkZW4gPSB0cnVlO1xuXG4gICAgcmVhZG9ubHkgY29tcHV0ZWRNb2RlJDogT2JzZXJ2YWJsZTxUdWlIaW50TW9kZVQgfCBudWxsPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLm1vZGUkLnBpcGUobWFwKHZhbCA9PiAodmFsID09PSAnb25EYXJrJyA/ICdvbkRhcmsnIDogbnVsbCkpKSxcbiAgICAgICAgdGhpcy5oaW50Q29udHJvbGxlci5jaGFuZ2UkLnBpcGUoXG4gICAgICAgICAgICBzdGFydFdpdGgobnVsbCksXG4gICAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5oaW50Q29udHJvbGxlci5tb2RlKSxcbiAgICAgICAgKSxcbiAgICBdKS5waXBlKFxuICAgICAgICBtYXAoKFttb2RlLCBjb250cm9sbGVyXSkgPT4gY29udHJvbGxlciB8fCBtb2RlKSxcbiAgICAgICAgc3RhcnRXaXRoKG51bGwpLFxuICAgICk7XG5cbiAgICByZWFkb25seSB0eXBlITogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKVxuICAgICAgICBAU2VsZigpXG4gICAgICAgIEBJbmplY3QoTmdDb250cm9sKVxuICAgICAgICBjb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsLFxuICAgICAgICBASW5qZWN0KENoYW5nZURldGVjdG9yUmVmKSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9TSVpFKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZFNpemU6IFR1aVRleHRmaWVsZFNpemVEaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoVFVJX1BBU1NXT1JEX1RFWFRTKVxuICAgICAgICByZWFkb25seSBwYXNzd29yZFRleHRzJDogT2JzZXJ2YWJsZTxbc3RyaW5nLCBzdHJpbmddPixcbiAgICAgICAgQEluamVjdChUVUlfSU5QVVRfUEFTU1dPUkRfT1BUSU9OUylcbiAgICAgICAgcmVhZG9ubHkgb3B0aW9uczogVHVpSW5wdXRQYXNzd29yZE9wdGlvbnMsXG4gICAgICAgIEBJbmplY3QoVFVJX0hJTlRfV0FUQ0hFRF9DT05UUk9MTEVSKVxuICAgICAgICByZWFkb25seSBoaW50Q29udHJvbGxlcjogVHVpSGludENvbnRyb2xsZXJEaXJlY3RpdmUsXG4gICAgICAgIEBJbmplY3QoVFVJX01PREUpXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbW9kZSQ6IE9ic2VydmFibGU8VHVpQnJpZ2h0bmVzcyB8IG51bGw+LFxuICAgICkge1xuICAgICAgICBzdXBlcihjb250cm9sLCBjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogVHVpTmF0aXZlRm9jdXNhYmxlRWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlZERpc2FibGVkIHx8ICF0aGlzLnRleHRmaWVsZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMudGV4dGZpZWxkICYmIHRoaXMudGV4dGZpZWxkLmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGljb24oKTogUG9seW1vcnBoZXVzQ29udGVudDxUdWlDb250ZXh0V2l0aEltcGxpY2l0PFR1aVNpemVTIHwgVHVpU2l6ZUw+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzUGFzc3dvcmRIaWRkZW4gPyB0aGlzLm9wdGlvbnMuaWNvbnMuaGlkZSA6IHRoaXMub3B0aW9ucy5pY29ucy5zaG93O1xuICAgIH1cblxuICAgIGdldCBjb250ZXh0KCk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8VHVpU2l6ZVMgfCBUdWlTaXplTD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb250ZXh0KHRoaXMudGV4dGZpZWxkU2l6ZS5zaXplKTtcbiAgICB9XG5cbiAgICBnZXQgaW5wdXRUeXBlKCk6IFR1aUlucHV0VHlwZVQge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1Bhc3N3b3JkSGlkZGVuIHx8ICF0aGlzLmludGVyYWN0aXZlID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0JztcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHRleHRWYWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUodGV4dFZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkZvY3VzZWQoZm9jdXNlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLnVwZGF0ZUZvY3VzZWQoZm9jdXNlZCk7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIG9uUHJlc3NlZChwcmVzc2VkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUHJlc3NlZChwcmVzc2VkKTtcbiAgICB9XG5cbiAgICB0b2dnbGVQYXNzd29yZFZpc2liaWxpdHkoKSB7XG4gICAgICAgIHRoaXMuaXNQYXNzd29yZEhpZGRlbiA9ICF0aGlzLmlzUGFzc3dvcmRIaWRkZW47XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXRDb250ZXh0KFxuICAgICAgICAkaW1wbGljaXQ6IFR1aVNpemVTIHwgVHVpU2l6ZUwsXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlTaXplUyB8IFR1aVNpemVMPiB7XG4gICAgICAgIHJldHVybiB7JGltcGxpY2l0fTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -277,7 +277,7 @@ var TuiInputPhoneComponent = /** @class */ (function (_super) {
|
|
|
277
277
|
TuiInputPhoneComponent = __decorate([
|
|
278
278
|
Component({
|
|
279
279
|
selector: 'tui-input-phone',
|
|
280
|
-
template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoFocused]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content
|
|
280
|
+
template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHovered]=\"pseudoHovered\"\n [pseudoFocused]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (hoveredChange)=\"onHovered($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n",
|
|
281
281
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
282
282
|
providers: INPUT_PHONE_PROVIDERS,
|
|
283
283
|
styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}"]
|
|
@@ -295,4 +295,4 @@ export { TuiInputPhoneComponent };
|
|
|
295
295
|
function isText(value) {
|
|
296
296
|
return isNaN(parseInt(value.replace(TUI_MASK_SYMBOLS_REGEXP, ''), 10));
|
|
297
297
|
}
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGhvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLyIsInNvdXJjZXMiOlsiaW5wdXQtcGhvbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZixnQkFBZ0IsRUFHaEIsY0FBYyxFQUdkLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsV0FBVyxFQUNYLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZiwwQkFBMEIsRUFDMUIsOEJBQThCLEVBQzlCLDRCQUE0QixFQUM1QixrQkFBa0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRWhGLFdBQVc7QUFRWDtJQUNZLDBDQUEwQjtJQThEbEMsZ0NBSUksT0FBeUIsRUFDRSxpQkFBb0MsRUFFL0QsVUFBK0IsRUFFZCxnQkFBOEM7UUFUbkUsWUFXSSxrQkFBTSxPQUFPLEVBQUUsaUJBQWlCLENBQUMsU0FLcEM7UUFQb0Isc0JBQWdCLEdBQWhCLGdCQUFnQixDQUE4QjtRQXJEbkUsK0JBQXlCLEdBQUcsaUJBQWlCLENB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QUFRLEVBQUUsaUJBQWlCO1lBQzNCLDhuQ0FBMEM7WUFFMUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsU0FBUyxFQUFFLHFCQUFxQjs7U0FDbkMsQ0FBQztRQWlFTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtRQUV4QixXQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO09BdkV6QixzQkFBc0IsQ0FrU2xDO0lBQUQsNkJBQUM7Q0FBQSxBQWxTRCxDQUNZLGtCQUFrQixHQWlTN0I7U0FsU1ksc0JBQXNCO0FBb1NuQyxTQUFTLE1BQU0sQ0FBQyxLQUFhO0lBQ3pCLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBTZWxmLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgZ2V0Q2xpcGJvYXJkRGF0YVRleHQsXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlJbnB1dE1vZGVULFxuICAgIHR1aVJlcXVpcmVkU2V0dGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgZm9ybWF0UGhvbmUsXG4gICAgVFVJX01BU0tfU1lNQk9MU19SRUdFWFAsXG4gICAgVFVJX1RFWFRGSUVMRF9DTEVBTkVSLFxuICAgIFR1aURhdGFMaXN0RGlyZWN0aXZlLFxuICAgIFR1aURhdGFMaXN0SG9zdCxcbiAgICBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVGV4dGZpZWxkQ2xlYW5lckRpcmVjdGl2ZSxcbiAgICBUdWlUZXh0TWFza09wdGlvbnMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VGV4dE1hc2tDb25maWd9IGZyb20gJ2FuZ3VsYXIyLXRleHQtbWFzayc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0lOUFVUX1BIT05FX1BST1ZJREVSUywgU0VMRUNUSU9OX1NUUkVBTX0gZnJvbSAnLi9pbnB1dC1waG9uZS5wcm92aWRlcnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtcGhvbmUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1waG9uZS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1waG9uZS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBJTlBVVF9QSE9ORV9QUk9WSURFUlMsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0UGhvbmVDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsIFR1aURhdGFMaXN0SG9zdDxzdHJpbmc+XG57XG4gICAgQFZpZXdDaGlsZChUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duPzogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIEBJbnB1dCgnY291bnRyeUNvZGUnKVxuICAgIEB0dWlSZXF1aXJlZFNldHRlcigpXG4gICAgc2V0IGNvdW50cnlDb2RlU2V0dGVyKGNvdW50cnlDb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZVdpdGhOZXdDb3VudHJ5Q29kZShjb3VudHJ5Q29kZSk7XG4gICAgICAgIHRoaXMuY291bnRyeUNvZGUgPSBjb3VudHJ5Q29kZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcGhvbmVNYXNrQWZ0ZXJDb3VudHJ5Q29kZSA9ICcoIyMjKSAjIyMtIyMtIyMnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFsbG93VGV4dCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlYXJjaCA9ICcnO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgc2VhcmNoQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAQ29udGVudENoaWxkKFR1aURhdGFMaXN0RGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICAgIHJlYWRvbmx5IGRhdGFsaXN0PzogVGVtcGxhdGVSZWY8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlBY3RpdmVab25lRGlyZWN0aXZlPj47XG5cbiAgICByZWFkb25seSB0ZXh0TWFza09wdGlvbnM6IFRleHRNYXNrQ29uZmlnID0ge1xuICAgICAgICBtYXNrOiB2YWx1ZSA9PlxuICAgICAgICAgICAgdGhpcy5hbGxvd1RleHQgJiYgIXRoaXMudmFsdWUgJiYgaXNUZXh0KHZhbHVlKSAmJiB2YWx1ZSAhPT0gJysnXG4gICAgICAgICAgICAgICAgPyBmYWxzZVxuICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuY291bnRyeUNvZGUuc3BsaXQoJycpLFxuICAgICAgICAgICAgICAgICAgICAgICcgJyxcbiAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBob25lTWFza0FmdGVyQ291bnRyeUNvZGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoL1teI1xcLSAoKV0rL2csICcnKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQoJycpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoaXRlbSA9PiAoaXRlbSA9PT0gJyMnID8gL1xcZC8gOiBpdGVtKSksXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICBwaXBlOiB2YWx1ZSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5hbGxvd1RleHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA9PT0gJycgJiYgdGhpcy5mb2N1c2VkICYmICF0aGlzLnJlYWRPbmx5XG4gICAgICAgICAgICAgICAgPyBgJHt0aGlzLmNvdW50cnlDb2RlfSBgXG4gICAgICAgICAgICAgICAgOiB2YWx1ZS5yZXBsYWNlKC8tJC8sICcnKTtcbiAgICAgICAgfSxcbiAgICAgICAgZ3VpZGU6IGZhbHNlLFxuICAgIH0gYXMgVHVpVGV4dE1hc2tPcHRpb25zIGFzIHVua25vd24gYXMgVGV4dE1hc2tDb25maWc7XG5cbiAgICBjb3VudHJ5Q29kZSA9ICcrNyc7XG5cbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFNFTEVDVElPTl9TVFJFQU0pXG4gICAgICAgIHNlbGVjdGlvbiQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9DTEVBTkVSKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZENsZWFuZXI6IFR1aVRleHRmaWVsZENsZWFuZXJEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcblxuICAgICAgICBzZWxlY3Rpb24kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldENhcmV0UG9zaXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gIXRoaXMudGV4dGZpZWxkIHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB8fFxuICAgICAgICAgICAgKCEhdGhpcy5kcm9wZG93biAmJiB0aGlzLmRyb3Bkb3duLmZvY3VzZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgICAgICAgICAgID8gZm9ybWF0UGhvbmUodGhpcy52YWx1ZSwgdGhpcy5jb3VudHJ5Q29kZSwgdGhpcy5waG9uZU1hc2tBZnRlckNvdW50cnlDb2RlKVxuICAgICAgICAgICAgOiB0aGlzLnNlYXJjaCB8fCAnJztcbiAgICB9XG5cbiAgICBnZXQgaW5wdXRNb2RlKCk6IFR1aUlucHV0TW9kZVQge1xuICAgICAgICByZXR1cm4gdGhpcy5hbGxvd1RleHQgPyAndGV4dCcgOiAnbnVtZXJpYyc7XG4gICAgfVxuXG4gICAgZ2V0IGNhbk9wZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmludGVyYWN0aXZlICYmICEhdGhpcy5kYXRhbGlzdDtcbiAgICB9XG5cbiAgICBnZXQgY2FuQ2xlYW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkVmFsdWUgIT09IHRoaXMuY291bnRyeUNvZGUgJiYgdGhpcy50ZXh0ZmllbGRDbGVhbmVyLmNsZWFuZXI7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgICAgIGlmICghZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFZhbHVlV2l0aG91dFByZWZpeChldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YSgndGV4dCcpKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlV2l0aG91dFByZWZpeChnZXRDbGlwYm9hcmREYXRhVGV4dChldmVudCkpO1xuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKGFjdGl2ZSAmJiAhdGhpcy5jb21wdXRlZFZhbHVlICYmICF0aGlzLnJlYWRPbmx5ICYmICF0aGlzLmFsbG93VGV4dCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVTZWFyY2godGhpcy5jb3VudHJ5Q29kZSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRWYWx1ZSA9PT0gdGhpcy5jb3VudHJ5Q29kZSB8fFxuICAgICAgICAgICAgKHRoaXMuc2VhcmNoICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgaXNOYU4ocGFyc2VJbnQodGhpcy5zZWFyY2gucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLCAxMCkpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQmFja3NwYWNlKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh0YXJnZXQuc2VsZWN0aW9uU3RhcnQgfHwgMCkgPD0gdGhpcy5ub25SZW1vdmFibGVMZW5ndGggJiZcbiAgICAgICAgICAgIHRhcmdldC5zZWxlY3Rpb25TdGFydCA9PT0gdGFyZ2V0LnNlbGVjdGlvbkVuZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZSA9PT0gJycgPyB0aGlzLmNvdW50cnlDb2RlIDogdmFsdWU7XG5cbiAgICAgICAgY29uc3QgcGFyc2VkID0gaXNUZXh0KHZhbHVlKSA/IHZhbHVlIDogdmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKHBhcnNlZCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUocGFyc2VkID09PSB0aGlzLmNvdW50cnlDb2RlIHx8IGlzVGV4dChwYXJzZWQpID8gJycgOiBwYXJzZWQpO1xuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgIH1cblxuICAgIGhhbmRsZU9wdGlvbihpdGVtOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoaXRlbSk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgc3VwZXIuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaCgnJyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNhcmV0SXNJbkZvcmJpZGRlbkFyZWEoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVGb2N1c2FibGVFbGVtZW50fSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFuYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7c2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZH0gPSBuYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQobmF0aXZlRm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ICE9PSBudWxsICYmXG4gICAgICAgICAgICBzZWxlY3Rpb25TdGFydCA8IHRoaXMubm9uUmVtb3ZhYmxlTGVuZ3RoICYmXG4gICAgICAgICAgICBzZWxlY3Rpb25TdGFydCA9PT0gc2VsZWN0aW9uRW5kXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgbm9uUmVtb3ZhYmxlTGVuZ3RoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVGV4dFZhbHVlID8gMCA6IHRoaXMuY291bnRyeUNvZGUubGVuZ3RoICsgMTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBtYXhQaG9uZUxlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5jb3VudHJ5Q29kZS5sZW5ndGggK1xuICAgICAgICAgICAgdGhpcy5waG9uZU1hc2tBZnRlckNvdW50cnlDb2RlLnJlcGxhY2UoL1teI10rL2csICcnKS5sZW5ndGhcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1RleHRWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5zZWFyY2ggJiYgaXNUZXh0KHRoaXMuc2VhcmNoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENhcmV0UG9zaXRpb24oKSB7XG4gICAgICAgIGlmICh0aGlzLmNhcmV0SXNJbkZvcmJpZGRlbkFyZWEgJiYgISF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZShcbiAgICAgICAgICAgICAgICB0aGlzLm5vblJlbW92YWJsZUxlbmd0aCxcbiAgICAgICAgICAgICAgICB0aGlzLm5vblJlbW92YWJsZUxlbmd0aCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFZhbHVlV2l0aG91dFByZWZpeCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMuY2xlYW5WYWx1ZSh2YWx1ZSkpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChcbiAgICAgICAgICAgIHRoaXMuYWxsb3dUZXh0ICYmIGlzVGV4dCh2YWx1ZSlcbiAgICAgICAgICAgICAgICA/IHZhbHVlXG4gICAgICAgICAgICAgICAgOiB2YWx1ZS5yZXBsYWNlKFRVSV9NQVNLX1NZTUJPTFNfUkVHRVhQLCAnJyksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhblZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByZWc6IFJlZ0V4cCA9XG4gICAgICAgICAgICB0aGlzLmNvdW50cnlDb2RlID09PSAnKzcnXG4gICAgICAgICAgICAgICAgPyAvXjd8XjgvXG4gICAgICAgICAgICAgICAgOiBuZXcgUmVnRXhwKHRoaXMuY291bnRyeUNvZGUuc3Vic3RyaW5nKDEpKTtcbiAgICAgICAgY29uc3Qgb2xkVmFsdWVFeGlzdCA9XG4gICAgICAgICAgICB0aGlzLnZhbHVlLmxlbmd0aCA+IHRoaXMuY291bnRyeUNvZGUubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmxlbmd0aCA8IHRoaXMubWF4UGhvbmVMZW5ndGg7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlTGVuZ3RoID0gdmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLmxlbmd0aDtcbiAgICAgICAgY29uc3QgY2xlYW5OZXdWYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teMC05XSsvZywgJycpO1xuICAgICAgICBjb25zdCBzZWxlY3Rpb25MZW5ndGggPSBTdHJpbmcoZ2V0U2VsZWN0aW9uKCkpLmxlbmd0aDtcblxuICAgICAgICBpZiAob2xkVmFsdWVFeGlzdCAmJiBzZWxlY3Rpb25MZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLnZhbHVlfSR7Y2xlYW5OZXdWYWx1ZX1gLnNsaWNlKDAsIHRoaXMubWF4UGhvbmVMZW5ndGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5ld1ZhbHVlTGVuZ3RoIDwgdGhpcy5tYXhQaG9uZUxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLmNvdW50cnlDb2RlfSR7Y2xlYW5OZXdWYWx1ZX1gLnNsaWNlKDAsIHRoaXMubWF4UGhvbmVMZW5ndGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGAke3RoaXMuY291bnRyeUNvZGV9JHtjbGVhbk5ld1ZhbHVlLnJlcGxhY2UocmVnLCAnJyl9YC5zbGljZShcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgICB0aGlzLm1heFBob25lTGVuZ3RoLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dCgpIHtcbiAgICAgICAgaWYgKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsIHRydWUsIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVTZWFyY2goc2VhcmNoOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMuc2VhcmNoID09PSBzZWFyY2gpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoID0gc2VhcmNoO1xuICAgICAgICB0aGlzLnNlYXJjaENoYW5nZS5lbWl0KHNlYXJjaCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWx1ZVdpdGhOZXdDb3VudHJ5Q29kZShuZXdDb3VudHJ5Q29kZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghdGhpcy5pc1RleHRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLnZhbHVlLnJlcGxhY2UodGhpcy5jb3VudHJ5Q29kZSwgbmV3Q291bnRyeUNvZGUpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gaXNUZXh0KHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VJbnQodmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLCAxMCkpO1xufVxuIl19
|
|
298
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGhvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC9jb21wb25lbnRzL2lucHV0LXBob25lLyIsInNvdXJjZXMiOlsiaW5wdXQtcGhvbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFdBQVcsRUFDWCxTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFDSCxrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZixnQkFBZ0IsRUFHaEIsY0FBYyxFQUdkLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsV0FBVyxFQUNYLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGVBQWUsRUFDZiwwQkFBMEIsRUFDMUIsOEJBQThCLEVBQzlCLDRCQUE0QixFQUM1QixrQkFBa0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRWhGLFdBQVc7QUFRWDtJQUNZLDBDQUEwQjtJQThEbEMsZ0NBSUksT0FBeUIsRUFDRSxpQkFBb0MsRUFFL0QsVUFBK0IsRUFFZCxnQkFBOEM7UUFUbkUsWUFXSSxrQkFBTSxPQUFPLEVBQUUsaUJBQWlCLENBQUMsU0FLcEM7UUFQb0Isc0JBQWdCLEdBQWhCLGdCQUFnQixDQUE4QjtRQXJEbkUsK0JBQXlCLEdBQUcsaUJBQWlCLENB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QUFRLEVBQUUsaUJBQWlCO1lBQzNCLGtxQ0FBMEM7WUFFMUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07WUFDL0MsU0FBUyxFQUFFLHFCQUFxQjs7U0FDbkMsQ0FBQztRQWlFTyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxJQUFJLEVBQUUsQ0FBQTtRQUNOLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWpCLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtRQUV4QixXQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO09BdkV6QixzQkFBc0IsQ0FrU2xDO0lBQUQsNkJBQUM7Q0FBQSxBQWxTRCxDQUNZLGtCQUFrQixHQWlTN0I7U0FsU1ksc0JBQXNCO0FBb1NuQyxTQUFTLE1BQU0sQ0FBQyxLQUFhO0lBQ3pCLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBTZWxmLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdFR1aUNvbnRyb2wsXG4gICAgZ2V0Q2xpcGJvYXJkRGF0YVRleHQsXG4gICAgaXNOYXRpdmVGb2N1c2VkLFxuICAgIHNldE5hdGl2ZUZvY3VzZWQsXG4gICAgVHVpQWN0aXZlWm9uZURpcmVjdGl2ZSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUZvY3VzYWJsZUVsZW1lbnRBY2Nlc3NvcixcbiAgICBUdWlJbnB1dE1vZGVULFxuICAgIHR1aVJlcXVpcmVkU2V0dGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7XG4gICAgZm9ybWF0UGhvbmUsXG4gICAgVFVJX01BU0tfU1lNQk9MU19SRUdFWFAsXG4gICAgVFVJX1RFWFRGSUVMRF9DTEVBTkVSLFxuICAgIFR1aURhdGFMaXN0RGlyZWN0aXZlLFxuICAgIFR1aURhdGFMaXN0SG9zdCxcbiAgICBUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudCxcbiAgICBUdWlQcmltaXRpdmVUZXh0ZmllbGRDb21wb25lbnQsXG4gICAgVHVpVGV4dGZpZWxkQ2xlYW5lckRpcmVjdGl2ZSxcbiAgICBUdWlUZXh0TWFza09wdGlvbnMsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlJztcbmltcG9ydCB7VGV4dE1hc2tDb25maWd9IGZyb20gJ2FuZ3VsYXIyLXRleHQtbWFzayc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge0lOUFVUX1BIT05FX1BST1ZJREVSUywgU0VMRUNUSU9OX1NUUkVBTX0gZnJvbSAnLi9pbnB1dC1waG9uZS5wcm92aWRlcnMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktaW5wdXQtcGhvbmUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1waG9uZS50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1waG9uZS5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBJTlBVVF9QSE9ORV9QUk9WSURFUlMsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0UGhvbmVDb21wb25lbnRcbiAgICBleHRlbmRzIEFic3RyYWN0VHVpQ29udHJvbDxzdHJpbmc+XG4gICAgaW1wbGVtZW50cyBUdWlGb2N1c2FibGVFbGVtZW50QWNjZXNzb3IsIFR1aURhdGFMaXN0SG9zdDxzdHJpbmc+XG57XG4gICAgQFZpZXdDaGlsZChUdWlIb3N0ZWREcm9wZG93bkNvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duPzogVHVpSG9zdGVkRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZD86IFR1aVByaW1pdGl2ZVRleHRmaWVsZENvbXBvbmVudDtcblxuICAgIEBJbnB1dCgnY291bnRyeUNvZGUnKVxuICAgIEB0dWlSZXF1aXJlZFNldHRlcigpXG4gICAgc2V0IGNvdW50cnlDb2RlU2V0dGVyKGNvdW50cnlDb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy51cGRhdGVWYWx1ZVdpdGhOZXdDb3VudHJ5Q29kZShjb3VudHJ5Q29kZSk7XG4gICAgICAgIHRoaXMuY291bnRyeUNvZGUgPSBjb3VudHJ5Q29kZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgcGhvbmVNYXNrQWZ0ZXJDb3VudHJ5Q29kZSA9ICcoIyMjKSAjIyMtIyMtIyMnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFsbG93VGV4dCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNlYXJjaCA9ICcnO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcmVhZG9ubHkgc2VhcmNoQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAQ29udGVudENoaWxkKFR1aURhdGFMaXN0RGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICAgIHJlYWRvbmx5IGRhdGFsaXN0PzogVGVtcGxhdGVSZWY8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxUdWlBY3RpdmVab25lRGlyZWN0aXZlPj47XG5cbiAgICByZWFkb25seSB0ZXh0TWFza09wdGlvbnM6IFRleHRNYXNrQ29uZmlnID0ge1xuICAgICAgICBtYXNrOiB2YWx1ZSA9PlxuICAgICAgICAgICAgdGhpcy5hbGxvd1RleHQgJiYgIXRoaXMudmFsdWUgJiYgaXNUZXh0KHZhbHVlKSAmJiB2YWx1ZSAhPT0gJysnXG4gICAgICAgICAgICAgICAgPyBmYWxzZVxuICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuY291bnRyeUNvZGUuc3BsaXQoJycpLFxuICAgICAgICAgICAgICAgICAgICAgICcgJyxcbiAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBob25lTWFza0FmdGVyQ291bnRyeUNvZGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoL1teI1xcLSAoKV0rL2csICcnKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQoJycpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoaXRlbSA9PiAoaXRlbSA9PT0gJyMnID8gL1xcZC8gOiBpdGVtKSksXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICBwaXBlOiB2YWx1ZSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5hbGxvd1RleHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA9PT0gJycgJiYgdGhpcy5mb2N1c2VkICYmICF0aGlzLnJlYWRPbmx5XG4gICAgICAgICAgICAgICAgPyBgJHt0aGlzLmNvdW50cnlDb2RlfSBgXG4gICAgICAgICAgICAgICAgOiB2YWx1ZS5yZXBsYWNlKC8tJC8sICcnKTtcbiAgICAgICAgfSxcbiAgICAgICAgZ3VpZGU6IGZhbHNlLFxuICAgIH0gYXMgVHVpVGV4dE1hc2tPcHRpb25zIGFzIHVua25vd24gYXMgVGV4dE1hc2tDb25maWc7XG5cbiAgICBjb3VudHJ5Q29kZSA9ICcrNyc7XG5cbiAgICBvcGVuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNlbGYoKVxuICAgICAgICBASW5qZWN0KE5nQ29udHJvbClcbiAgICAgICAgY29udHJvbDogTmdDb250cm9sIHwgbnVsbCxcbiAgICAgICAgQEluamVjdChDaGFuZ2VEZXRlY3RvclJlZikgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBASW5qZWN0KFNFTEVDVElPTl9TVFJFQU0pXG4gICAgICAgIHNlbGVjdGlvbiQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoVFVJX1RFWFRGSUVMRF9DTEVBTkVSKVxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHRleHRmaWVsZENsZWFuZXI6IFR1aVRleHRmaWVsZENsZWFuZXJEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGNvbnRyb2wsIGNoYW5nZURldGVjdG9yUmVmKTtcblxuICAgICAgICBzZWxlY3Rpb24kLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldENhcmV0UG9zaXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IG5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB8IG51bGwge1xuICAgICAgICByZXR1cm4gIXRoaXMudGV4dGZpZWxkIHx8IHRoaXMuY29tcHV0ZWREaXNhYmxlZFxuICAgICAgICAgICAgPyBudWxsXG4gICAgICAgICAgICA6IHRoaXMudGV4dGZpZWxkLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IGZvY3VzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQodGhpcy5uYXRpdmVGb2N1c2FibGVFbGVtZW50KSB8fFxuICAgICAgICAgICAgKCEhdGhpcy5kcm9wZG93biAmJiB0aGlzLmRyb3Bkb3duLmZvY3VzZWQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbXB1dGVkVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgICAgICAgICAgID8gZm9ybWF0UGhvbmUodGhpcy52YWx1ZSwgdGhpcy5jb3VudHJ5Q29kZSwgdGhpcy5waG9uZU1hc2tBZnRlckNvdW50cnlDb2RlKVxuICAgICAgICAgICAgOiB0aGlzLnNlYXJjaCB8fCAnJztcbiAgICB9XG5cbiAgICBnZXQgaW5wdXRNb2RlKCk6IFR1aUlucHV0TW9kZVQge1xuICAgICAgICByZXR1cm4gdGhpcy5hbGxvd1RleHQgPyAndGV4dCcgOiAnbnVtZXJpYyc7XG4gICAgfVxuXG4gICAgZ2V0IGNhbk9wZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmludGVyYWN0aXZlICYmICEhdGhpcy5kYXRhbGlzdDtcbiAgICB9XG5cbiAgICBnZXQgY2FuQ2xlYW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbXB1dGVkVmFsdWUgIT09IHRoaXMuY291bnRyeUNvZGUgJiYgdGhpcy50ZXh0ZmllbGRDbGVhbmVyLmNsZWFuZXI7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGhvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVIb3ZlcmVkKGhvdmVyZWQpO1xuICAgIH1cblxuICAgIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgICAgIGlmICghZXZlbnQuZGF0YVRyYW5zZmVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFZhbHVlV2l0aG91dFByZWZpeChldmVudC5kYXRhVHJhbnNmZXIuZ2V0RGF0YSgndGV4dCcpKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlV2l0aG91dFByZWZpeChnZXRDbGlwYm9hcmREYXRhVGV4dChldmVudCkpO1xuICAgIH1cblxuICAgIG9uQWN0aXZlWm9uZShhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2VkKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKGFjdGl2ZSAmJiAhdGhpcy5jb21wdXRlZFZhbHVlICYmICF0aGlzLnJlYWRPbmx5ICYmICF0aGlzLmFsbG93VGV4dCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVTZWFyY2godGhpcy5jb3VudHJ5Q29kZSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuY29tcHV0ZWRWYWx1ZSA9PT0gdGhpcy5jb3VudHJ5Q29kZSB8fFxuICAgICAgICAgICAgKHRoaXMuc2VhcmNoICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgaXNOYU4ocGFyc2VJbnQodGhpcy5zZWFyY2gucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLCAxMCkpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQmFja3NwYWNlKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh0YXJnZXQuc2VsZWN0aW9uU3RhcnQgfHwgMCkgPD0gdGhpcy5ub25SZW1vdmFibGVMZW5ndGggJiZcbiAgICAgICAgICAgIHRhcmdldC5zZWxlY3Rpb25TdGFydCA9PT0gdGFyZ2V0LnNlbGVjdGlvbkVuZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZSA9PT0gJycgPyB0aGlzLmNvdW50cnlDb2RlIDogdmFsdWU7XG5cbiAgICAgICAgY29uc3QgcGFyc2VkID0gaXNUZXh0KHZhbHVlKSA/IHZhbHVlIDogdmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKHBhcnNlZCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUocGFyc2VkID09PSB0aGlzLmNvdW50cnlDb2RlIHx8IGlzVGV4dChwYXJzZWQpID8gJycgOiBwYXJzZWQpO1xuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgIH1cblxuICAgIGhhbmRsZU9wdGlvbihpdGVtOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5mb2N1c0lucHV0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlVmFsdWUoaXRlbSk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VhcmNoKCcnKTtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgc3VwZXIuc2V0RGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaCgnJyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEZhbGxiYWNrVmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0IGNhcmV0SXNJbkZvcmJpZGRlbkFyZWEoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHtuYXRpdmVGb2N1c2FibGVFbGVtZW50fSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKCFuYXRpdmVGb2N1c2FibGVFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7c2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZH0gPSBuYXRpdmVGb2N1c2FibGVFbGVtZW50O1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBpc05hdGl2ZUZvY3VzZWQobmF0aXZlRm9jdXNhYmxlRWxlbWVudCkgJiZcbiAgICAgICAgICAgIHNlbGVjdGlvblN0YXJ0ICE9PSBudWxsICYmXG4gICAgICAgICAgICBzZWxlY3Rpb25TdGFydCA8IHRoaXMubm9uUmVtb3ZhYmxlTGVuZ3RoICYmXG4gICAgICAgICAgICBzZWxlY3Rpb25TdGFydCA9PT0gc2VsZWN0aW9uRW5kXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgbm9uUmVtb3ZhYmxlTGVuZ3RoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVGV4dFZhbHVlID8gMCA6IHRoaXMuY291bnRyeUNvZGUubGVuZ3RoICsgMTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBtYXhQaG9uZUxlbmd0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5jb3VudHJ5Q29kZS5sZW5ndGggK1xuICAgICAgICAgICAgdGhpcy5waG9uZU1hc2tBZnRlckNvdW50cnlDb2RlLnJlcGxhY2UoL1teI10rL2csICcnKS5sZW5ndGhcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1RleHRWYWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5zZWFyY2ggJiYgaXNUZXh0KHRoaXMuc2VhcmNoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENhcmV0UG9zaXRpb24oKSB7XG4gICAgICAgIGlmICh0aGlzLmNhcmV0SXNJbkZvcmJpZGRlbkFyZWEgJiYgISF0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudC5zZXRTZWxlY3Rpb25SYW5nZShcbiAgICAgICAgICAgICAgICB0aGlzLm5vblJlbW92YWJsZUxlbmd0aCxcbiAgICAgICAgICAgICAgICB0aGlzLm5vblJlbW92YWJsZUxlbmd0aCxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFZhbHVlV2l0aG91dFByZWZpeCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMuY2xlYW5WYWx1ZSh2YWx1ZSkpO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlYXJjaChcbiAgICAgICAgICAgIHRoaXMuYWxsb3dUZXh0ICYmIGlzVGV4dCh2YWx1ZSlcbiAgICAgICAgICAgICAgICA/IHZhbHVlXG4gICAgICAgICAgICAgICAgOiB2YWx1ZS5yZXBsYWNlKFRVSV9NQVNLX1NZTUJPTFNfUkVHRVhQLCAnJyksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhblZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByZWc6IFJlZ0V4cCA9XG4gICAgICAgICAgICB0aGlzLmNvdW50cnlDb2RlID09PSAnKzcnXG4gICAgICAgICAgICAgICAgPyAvXjd8XjgvXG4gICAgICAgICAgICAgICAgOiBuZXcgUmVnRXhwKHRoaXMuY291bnRyeUNvZGUuc3Vic3RyaW5nKDEpKTtcbiAgICAgICAgY29uc3Qgb2xkVmFsdWVFeGlzdCA9XG4gICAgICAgICAgICB0aGlzLnZhbHVlLmxlbmd0aCA+IHRoaXMuY291bnRyeUNvZGUubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmxlbmd0aCA8IHRoaXMubWF4UGhvbmVMZW5ndGg7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlTGVuZ3RoID0gdmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLmxlbmd0aDtcbiAgICAgICAgY29uc3QgY2xlYW5OZXdWYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teMC05XSsvZywgJycpO1xuICAgICAgICBjb25zdCBzZWxlY3Rpb25MZW5ndGggPSBTdHJpbmcoZ2V0U2VsZWN0aW9uKCkpLmxlbmd0aDtcblxuICAgICAgICBpZiAob2xkVmFsdWVFeGlzdCAmJiBzZWxlY3Rpb25MZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLnZhbHVlfSR7Y2xlYW5OZXdWYWx1ZX1gLnNsaWNlKDAsIHRoaXMubWF4UGhvbmVMZW5ndGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5ld1ZhbHVlTGVuZ3RoIDwgdGhpcy5tYXhQaG9uZUxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgIHJldHVybiBgJHt0aGlzLmNvdW50cnlDb2RlfSR7Y2xlYW5OZXdWYWx1ZX1gLnNsaWNlKDAsIHRoaXMubWF4UGhvbmVMZW5ndGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGAke3RoaXMuY291bnRyeUNvZGV9JHtjbGVhbk5ld1ZhbHVlLnJlcGxhY2UocmVnLCAnJyl9YC5zbGljZShcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgICB0aGlzLm1heFBob25lTGVuZ3RoLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNJbnB1dCgpIHtcbiAgICAgICAgaWYgKHRoaXMubmF0aXZlRm9jdXNhYmxlRWxlbWVudCkge1xuICAgICAgICAgICAgc2V0TmF0aXZlRm9jdXNlZCh0aGlzLm5hdGl2ZUZvY3VzYWJsZUVsZW1lbnQsIHRydWUsIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVTZWFyY2goc2VhcmNoOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHRoaXMuc2VhcmNoID09PSBzZWFyY2gpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoID0gc2VhcmNoO1xuICAgICAgICB0aGlzLnNlYXJjaENoYW5nZS5lbWl0KHNlYXJjaCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVWYWx1ZVdpdGhOZXdDb3VudHJ5Q29kZShuZXdDb3VudHJ5Q29kZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghdGhpcy5pc1RleHRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLnZhbHVlLnJlcGxhY2UodGhpcy5jb3VudHJ5Q29kZSwgbmV3Q291bnRyeUNvZGUpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gaXNUZXh0KHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VJbnQodmFsdWUucmVwbGFjZShUVUlfTUFTS19TWU1CT0xTX1JFR0VYUCwgJycpLCAxMCkpO1xufVxuIl19
|