@alauda/ui 6.5.10-beta.2 → 6.5.10-beta.4
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/.changeset/README.md +8 -0
- package/accordion/accordion-item/accordion-item.component.d.ts +3 -3
- package/accordion/accordion.component.d.ts +1 -1
- package/alauda-ui.d.ts +5 -0
- package/anchor/anchor.component.d.ts +2 -2
- package/anchor/anchor.directive.d.ts +3 -3
- package/autocomplete/autocomplete-placeholder.component.d.ts +1 -1
- package/autocomplete/autocomplete.component.d.ts +1 -1
- package/autocomplete/autocomplete.directive.d.ts +2 -2
- package/autocomplete/autocomplete.types.d.ts +1 -1
- package/autocomplete/helper-directives.d.ts +1 -1
- package/autocomplete/suggestion/suggestion.component.d.ts +1 -1
- package/autocomplete/suggestion-group/suggestion-group.component.d.ts +1 -1
- package/back-top/back-top.component.d.ts +2 -2
- package/breadcrumb/breadcrumb-item.component.d.ts +1 -1
- package/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/button/button-group/button-group.component.d.ts +1 -1
- package/button/button.component.d.ts +1 -1
- package/button/button.types.d.ts +10 -1
- package/card/card.component.d.ts +1 -1
- package/card/helper-directives.d.ts +6 -3
- package/card/section.component.d.ts +1 -1
- package/checkbox/checkbox-group/checkbox-group.component.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +1 -1
- package/color-picker/color-picker.component.d.ts +1 -1
- package/date-picker/calendar/date-picker-panel/component.d.ts +1 -1
- package/date-picker/calendar/footer/component.d.ts +1 -1
- package/date-picker/calendar/header/component.d.ts +1 -1
- package/date-picker/calendar/panel/picker-panel.d.ts +1 -1
- package/date-picker/calendar/range-picker-panel/component.d.ts +1 -1
- package/date-picker/date-picker/date-picker.component.d.ts +1 -1
- package/date-picker/date-picker.type.d.ts +2 -2
- package/date-picker/range-picker/range-picker.component.d.ts +1 -1
- package/date-picker/trigger/trigger.component.d.ts +1 -1
- package/dialog/confirm-dialog/confirm-dialog.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-close.directive.d.ts +1 -1
- package/dialog/dialog-content/dialog-content.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-footer.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-header.component.d.ts +1 -1
- package/dialog/dialog.component.d.ts +1 -1
- package/dialog/dialog.types.d.ts +3 -3
- package/drawer/component/drawer.component.d.ts +1 -1
- package/drawer/component/helper-directives.d.ts +3 -3
- package/dropdown/dropdown-active.directive.d.ts +1 -1
- package/dropdown/dropdown-button/dropdown-button.component.d.ts +1 -1
- package/dropdown/dropdown.directive.d.ts +1 -1
- package/dropdown/dropdown.types.d.ts +1 -1
- package/dropdown/helper-directives.d.ts +1 -1
- package/dropdown/menu/menu-content.directive.d.ts +1 -1
- package/dropdown/menu/menu.component.d.ts +1 -1
- package/dropdown/menu-group/menu-group.component.d.ts +1 -1
- package/dropdown/menu-item/menu-item.component.d.ts +1 -1
- package/dropdown/submenu/submenu.component.d.ts +1 -1
- package/esm2020/accordion/accordion-item/accordion-item.component.mjs +73 -0
- package/esm2020/accordion/accordion.component.mjs +27 -0
- package/esm2020/accordion/accordion.module.mjs +39 -0
- package/esm2020/alauda-ui.mjs +5 -0
- package/esm2020/anchor/anchor.component.mjs +138 -0
- package/esm2020/anchor/anchor.directive.mjs +182 -0
- package/esm2020/anchor/anchor.module.mjs +36 -0
- package/{esm2022 → esm2020}/autocomplete/autocomplete-placeholder.component.mjs +4 -4
- package/esm2020/autocomplete/autocomplete.component.mjs +64 -0
- package/esm2020/autocomplete/autocomplete.directive.mjs +278 -0
- package/esm2020/autocomplete/autocomplete.module.mjs +53 -0
- package/{esm2022 → esm2020}/autocomplete/helper-directives.mjs +4 -4
- package/esm2020/autocomplete/suggestion/suggestion.component.mjs +79 -0
- package/esm2020/autocomplete/suggestion-group/suggestion-group.component.mjs +23 -0
- package/esm2020/back-top/back-top.component.mjs +67 -0
- package/esm2020/back-top/back-top.module.mjs +19 -0
- package/esm2020/breadcrumb/breadcrumb-item.component.mjs +32 -0
- package/esm2020/breadcrumb/breadcrumb.component.mjs +57 -0
- package/esm2020/breadcrumb/breadcrumb.module.mjs +20 -0
- package/{esm2022 → esm2020}/button/button-group/button-group.component.mjs +4 -4
- package/esm2020/button/button.component.mjs +122 -0
- package/esm2020/button/button.module.mjs +20 -0
- package/esm2020/button/button.types.mjs +22 -0
- package/esm2020/card/card.component.mjs +16 -0
- package/esm2020/card/card.module.mjs +40 -0
- package/esm2020/card/helper-directives.mjs +50 -0
- package/{esm2022 → esm2020}/card/section.component.mjs +4 -4
- package/esm2020/checkbox/checkbox-group/checkbox-group.component.mjs +61 -0
- package/esm2020/checkbox/checkbox.component.mjs +112 -0
- package/esm2020/checkbox/checkbox.module.mjs +20 -0
- package/esm2020/color-picker/color-picker.component.mjs +28 -0
- package/esm2020/color-picker/color-picker.module.mjs +19 -0
- package/esm2020/date-picker/calendar/constant.mjs +32 -0
- package/esm2020/date-picker/calendar/date-picker-panel/component.mjs +128 -0
- package/esm2020/date-picker/calendar/footer/component.mjs +29 -0
- package/esm2020/date-picker/calendar/header/component.mjs +103 -0
- package/esm2020/date-picker/calendar/panel/picker-panel.mjs +155 -0
- package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +209 -0
- package/esm2020/date-picker/calendar/util.mjs +146 -0
- package/esm2020/date-picker/date-picker/date-picker.component.mjs +110 -0
- package/esm2020/date-picker/date-picker.module.mjs +84 -0
- package/esm2020/date-picker/range-picker/range-picker.component.mjs +86 -0
- package/esm2020/date-picker/trigger/trigger.component.mjs +69 -0
- package/esm2020/dialog/confirm-dialog/confirm-dialog-config.mjs +12 -0
- package/esm2020/dialog/confirm-dialog/confirm-dialog.component.mjs +85 -0
- package/{esm2022 → esm2020}/dialog/dialog-animations.mjs +2 -1
- package/esm2020/dialog/dialog-config.mjs +15 -0
- package/esm2020/dialog/dialog-content/dialog-close.directive.mjs +38 -0
- package/esm2020/dialog/dialog-content/dialog-content.component.mjs +20 -0
- package/esm2020/dialog/dialog-content/dialog-footer.component.mjs +15 -0
- package/esm2020/dialog/dialog-content/dialog-header.component.mjs +39 -0
- package/esm2020/dialog/dialog-ref.mjs +48 -0
- package/esm2020/dialog/dialog.component.mjs +148 -0
- package/esm2020/dialog/dialog.module.mjs +68 -0
- package/esm2020/dialog/dialog.service.mjs +121 -0
- package/esm2020/drawer/component/drawer.component.mjs +232 -0
- package/esm2020/drawer/component/helper-directives.mjs +37 -0
- package/esm2020/drawer/drawer.module.mjs +37 -0
- package/esm2020/drawer/drawer.service.mjs +44 -0
- package/esm2020/dropdown/dropdown-active.directive.mjs +21 -0
- package/esm2020/dropdown/dropdown-button/dropdown-button.component.mjs +57 -0
- package/esm2020/dropdown/dropdown.directive.mjs +81 -0
- package/esm2020/dropdown/dropdown.module.mjs +65 -0
- package/{esm2022 → esm2020}/dropdown/helper-directives.mjs +4 -4
- package/esm2020/dropdown/menu/menu-content.directive.mjs +51 -0
- package/esm2020/dropdown/menu/menu.component.mjs +26 -0
- package/{esm2022 → esm2020}/dropdown/menu-group/menu-group.component.mjs +4 -4
- package/esm2020/dropdown/menu-item/menu-item.component.mjs +37 -0
- package/esm2020/dropdown/submenu/submenu.component.mjs +40 -0
- package/esm2020/form/common-form.mjs +91 -0
- package/esm2020/form/form-item/form-item.component.mjs +108 -0
- package/esm2020/form/form.directive.mjs +69 -0
- package/esm2020/form/form.module.mjs +48 -0
- package/esm2020/form/helper-directives.mjs +80 -0
- package/{esm2022 → esm2020}/i18n/i18n.module.mjs +5 -5
- package/esm2020/i18n/i18n.pipe.mjs +20 -0
- package/esm2020/i18n/i18n.service.mjs +43 -0
- package/esm2020/icon/icon-register.service.mjs +74 -0
- package/esm2020/icon/icon.component.mjs +65 -0
- package/esm2020/icon/icon.module.mjs +21 -0
- package/{esm2022 → esm2020}/inline-alert/helper-directives.mjs +4 -4
- package/esm2020/inline-alert/inline-alert.component.mjs +53 -0
- package/esm2020/inline-alert/inline-alert.module.mjs +20 -0
- package/esm2020/input/autosize.directive.mjs +59 -0
- package/esm2020/input/helper-directives.mjs +43 -0
- package/esm2020/input/input-group/input-group.component.mjs +39 -0
- package/esm2020/input/input.component.mjs +61 -0
- package/esm2020/input/input.module.mjs +87 -0
- package/esm2020/input/number-input/number-input.component.mjs +112 -0
- package/esm2020/input/search/search.component.mjs +88 -0
- package/esm2020/input/tags-input/tags-input.component.mjs +260 -0
- package/esm2020/message/base-message.mjs +90 -0
- package/esm2020/message/message-wrapper.component.mjs +14 -0
- package/esm2020/message/message.component.mjs +70 -0
- package/esm2020/message/message.config.mjs +21 -0
- package/esm2020/message/message.module.mjs +23 -0
- package/{esm2022 → esm2020}/message/message.service.mjs +4 -4
- package/esm2020/notification/notification-wrapper.component.mjs +16 -0
- package/esm2020/notification/notification.component.mjs +107 -0
- package/esm2020/notification/notification.module.mjs +24 -0
- package/{esm2022 → esm2020}/notification/notification.service.mjs +4 -4
- package/esm2020/paginator/paginator-intl.mjs +37 -0
- package/esm2020/paginator/paginator.component.mjs +125 -0
- package/esm2020/paginator/paginator.module.mjs +24 -0
- package/esm2020/radio/base-radio.mjs +67 -0
- package/esm2020/radio/radio-button/radio-button.component.mjs +42 -0
- package/esm2020/radio/radio-group/radio-group.component.mjs +76 -0
- package/esm2020/radio/radio.component.mjs +24 -0
- package/esm2020/radio/radio.module.mjs +21 -0
- package/esm2020/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +83 -0
- package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +121 -0
- package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +28 -0
- package/{esm2022 → esm2020}/scrolling/scrolling.module.mjs +9 -9
- package/{esm2022 → esm2020}/scrolling/virtual-for-of.directive.mjs +4 -4
- package/esm2020/scrolling/virtual-scroll-viewport.component.mjs +26 -0
- package/esm2020/select/base-select.mjs +337 -0
- package/{esm2022 → esm2020}/select/helper-directives.mjs +7 -7
- package/esm2020/select/multi-select/multi-select.component.mjs +313 -0
- package/esm2020/select/option/option.component.mjs +112 -0
- package/esm2020/select/option-group/option-group.component.mjs +23 -0
- package/{esm2022 → esm2020}/select/option-placeholder.component.mjs +4 -4
- package/esm2020/select/select.component.mjs +108 -0
- package/esm2020/select/select.module.mjs +80 -0
- package/esm2020/select/validators.mjs +79 -0
- package/esm2020/shared/click-outside.directive.mjs +28 -0
- package/{esm2022 → esm2020}/shared/shared.module.mjs +5 -5
- package/esm2020/sort/sort-errors.mjs +17 -0
- package/esm2020/sort/sort-header.component.mjs +72 -0
- package/esm2020/sort/sort.directive.mjs +75 -0
- package/esm2020/sort/sort.module.mjs +19 -0
- package/esm2020/status-bar/status-bar.component.mjs +29 -0
- package/esm2020/status-bar/status-bar.module.mjs +19 -0
- package/esm2020/steps/steps.component.mjs +184 -0
- package/esm2020/steps/steps.module.mjs +19 -0
- package/esm2020/switch/switch.component.mjs +46 -0
- package/esm2020/switch/switch.module.mjs +18 -0
- package/esm2020/table/table-cell-def.directive.mjs +29 -0
- package/esm2020/table/table-cell.component.mjs +121 -0
- package/esm2020/table/table-cell.directive.mjs +31 -0
- package/esm2020/table/table-column-def.directive.mjs +37 -0
- package/esm2020/table/table-header-cell-def.directive.mjs +29 -0
- package/esm2020/table/table-header-cell.directive.mjs +27 -0
- package/esm2020/table/table-header-row-def.directive.mjs +39 -0
- package/esm2020/table/table-header-row.component.mjs +25 -0
- package/esm2020/table/table-placeholder.directive.mjs +30 -0
- package/esm2020/table/table-row-def.directive.mjs +42 -0
- package/esm2020/table/table-row.component.mjs +43 -0
- package/esm2020/table/table-scroll.directive.mjs +134 -0
- package/esm2020/table/table.component.mjs +79 -0
- package/esm2020/table/table.module.mjs +96 -0
- package/esm2020/table-of-contents/table-of-contents.module.mjs +20 -0
- package/esm2020/table-of-contents/toc-container.directive.mjs +109 -0
- package/esm2020/table-of-contents/toc-content.directive.mjs +35 -0
- package/esm2020/table-of-contents/toc-link.directive.mjs +44 -0
- package/esm2020/tabs/tab-body.component.mjs +165 -0
- package/esm2020/tabs/tab-context.service.mjs +31 -0
- package/esm2020/tabs/tab-group.component.mjs +291 -0
- package/esm2020/tabs/tab-header-active-indicator.component.mjs +53 -0
- package/esm2020/tabs/tab-header.component.mjs +367 -0
- package/esm2020/tabs/tab.component.mjs +85 -0
- package/esm2020/tabs/tabs.module.mjs +88 -0
- package/esm2020/tabs/tabs.types.mjs +13 -0
- package/esm2020/tag/check-tag/check-tag.component.mjs +33 -0
- package/esm2020/tag/tag.component.mjs +66 -0
- package/esm2020/tag/tag.module.mjs +20 -0
- package/esm2020/theme/theme.module.mjs +18 -0
- package/esm2020/theme/theme.pipe.mjs +69 -0
- package/esm2020/theme/theme.service.mjs +52 -0
- package/esm2020/time-picker/component.mjs +179 -0
- package/esm2020/time-picker/panel/panel.component.mjs +230 -0
- package/esm2020/time-picker/time-picker.module.mjs +58 -0
- package/esm2020/tooltip/base-tooltip.mjs +322 -0
- package/esm2020/tooltip/tooltip-active.directive.mjs +49 -0
- package/esm2020/tooltip/tooltip-copy.directive.mjs +82 -0
- package/esm2020/tooltip/tooltip-intl.mjs +29 -0
- package/esm2020/tooltip/tooltip.component.mjs +107 -0
- package/esm2020/tooltip/tooltip.directive.mjs +47 -0
- package/esm2020/tooltip/tooltip.module.mjs +33 -0
- package/{esm2022 → esm2020}/tree-select/tree-node-placeholder.component.mjs +4 -4
- package/esm2020/tree-select/tree-select.component.mjs +340 -0
- package/esm2020/tree-select/tree-select.module.mjs +34 -0
- package/esm2020/types.mjs +11 -0
- package/esm2020/utils/bem.mjs +44 -0
- package/esm2020/utils/coercion.mjs +17 -0
- package/fesm2015/alauda-ui.mjs +12051 -0
- package/fesm2015/alauda-ui.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/alauda-ui.mjs +2863 -2810
- package/fesm2020/alauda-ui.mjs.map +1 -0
- package/form/common-form.d.ts +8 -1
- package/form/form-item/form-item.component.d.ts +1 -1
- package/form/form.directive.d.ts +1 -1
- package/form/form.types.d.ts +2 -2
- package/form/helper-directives.d.ts +5 -5
- package/i18n/i18n.pipe.d.ts +1 -1
- package/i18n/i18n.type.d.ts +1 -1
- package/icon/icon.component.d.ts +1 -1
- package/inline-alert/helper-directives.d.ts +1 -1
- package/inline-alert/inline-alert.component.d.ts +1 -1
- package/inline-alert/inline-alert.types.d.ts +1 -1
- package/input/autosize.directive.d.ts +4 -1
- package/input/helper-directives.d.ts +4 -4
- package/input/input-group/input-group.component.d.ts +1 -1
- package/input/input.component.d.ts +4 -1
- package/input/number-input/number-input.component.d.ts +1 -1
- package/input/search/search.component.d.ts +1 -1
- package/input/tags-input/tags-input.component.d.ts +4 -4
- package/message/message-wrapper.component.d.ts +1 -1
- package/message/message.component.d.ts +1 -1
- package/message/message.config.d.ts +20 -0
- package/notification/notification-wrapper.component.d.ts +1 -1
- package/notification/notification.component.d.ts +5 -1
- package/notification/notification.config.d.ts +1 -1
- package/package.json +19 -13
- package/paginator/paginator-intl.d.ts +9 -0
- package/paginator/paginator.component.d.ts +15 -1
- package/radio/base-radio.d.ts +1 -1
- package/radio/radio-button/radio-button.component.d.ts +1 -1
- package/radio/radio-group/radio-group.component.d.ts +4 -1
- package/radio/radio.component.d.ts +1 -1
- package/radio/radio.types.d.ts +1 -1
- package/scrolling/fixed-size-table-virtual-scroll.directive.d.ts +1 -1
- package/scrolling/fixed-size-virtual-scroll.directive.d.ts +1 -1
- package/scrolling/virtual-for-of.directive.d.ts +1 -1
- package/scrolling/virtual-scroll-viewport.component.d.ts +1 -1
- package/select/base-select.d.ts +4 -1
- package/select/helper-directives.d.ts +2 -2
- package/select/multi-select/multi-select.component.d.ts +1 -1
- package/select/option/option.component.d.ts +1 -1
- package/select/option-group/option-group.component.d.ts +1 -1
- package/select/option-placeholder.component.d.ts +1 -1
- package/select/select.component.d.ts +1 -1
- package/select/select.types.d.ts +3 -3
- package/select/validators.d.ts +1 -1
- package/shared/click-outside.directive.d.ts +1 -1
- package/sort/sort-errors.d.ts +4 -0
- package/sort/sort-header.component.d.ts +1 -1
- package/sort/sort.directive.d.ts +1 -1
- package/sort/sort.types.d.ts +2 -2
- package/src/accordion/README.md +13 -0
- package/src/anchor/README.md +23 -0
- package/src/dropdown/README.md +57 -0
- package/src/form/README.md +32 -0
- package/src/icon/README.md +28 -0
- package/src/inline-alert/README.md +16 -0
- package/src/input/number-input/README.md +16 -0
- package/src/select/README.md +57 -0
- package/src/sort/README.md +13 -0
- package/src/table/README.md +8 -0
- package/src/table-of-contents/README.md +94 -0
- package/src/tag/README.md +32 -0
- package/src/tree-select/README.md +34 -0
- package/status-bar/status-bar.component.d.ts +1 -1
- package/status-bar/status-bar.types.d.ts +2 -2
- package/steps/steps.component.d.ts +4 -1
- package/steps/types.d.ts +6 -3
- package/switch/switch.component.d.ts +1 -1
- package/table/table-cell-def.directive.d.ts +5 -1
- package/table/table-cell.component.d.ts +2 -2
- package/table/table-cell.directive.d.ts +2 -1
- package/table/table-column-def.directive.d.ts +5 -1
- package/table/table-header-cell-def.directive.d.ts +5 -1
- package/table/table-header-cell.directive.d.ts +2 -1
- package/table/table-header-row-def.directive.d.ts +5 -1
- package/table/table-header-row.component.d.ts +2 -1
- package/table/table-placeholder.directive.d.ts +2 -2
- package/table/table-row-def.directive.d.ts +6 -1
- package/table/table-row.component.d.ts +2 -1
- package/table/table-scroll.directive.d.ts +2 -2
- package/table/table.component.d.ts +1 -1
- package/table-of-contents/toc-container.directive.d.ts +1 -1
- package/table-of-contents/toc-content.directive.d.ts +1 -1
- package/table-of-contents/toc-link.directive.d.ts +1 -1
- package/tabs/tab-body.component.d.ts +23 -7
- package/tabs/tab-context.service.d.ts +3 -0
- package/tabs/tab-group.component.d.ts +29 -1
- package/tabs/tab-header-active-indicator.component.d.ts +10 -1
- package/tabs/tab-header.component.d.ts +85 -2
- package/tabs/tab.component.d.ts +19 -1
- package/tabs/tabs.types.d.ts +5 -2
- package/tag/check-tag/check-tag.component.d.ts +1 -1
- package/tag/tag.component.d.ts +1 -1
- package/tag/tag.types.d.ts +1 -1
- package/theme/style.css +1 -5
- package/theme/theme.pipe.d.ts +4 -4
- package/theme/theme.types.d.ts +3 -3
- package/time-picker/component.d.ts +1 -1
- package/time-picker/panel/panel.component.d.ts +1 -1
- package/time-picker/time-picker.type.d.ts +1 -1
- package/tooltip/base-tooltip.d.ts +1 -1
- package/tooltip/tooltip-active.directive.d.ts +1 -1
- package/tooltip/tooltip-copy.directive.d.ts +1 -1
- package/tooltip/tooltip-intl.d.ts +4 -0
- package/tooltip/tooltip.component.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +1 -1
- package/tree-select/tree-node-placeholder.component.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +2 -2
- package/tree-select/tree-select.types.d.ts +1 -1
- package/types.d.ts +5 -2
- package/utils/operators.d.ts +1 -1
- package/esm2022/accordion/accordion-item/accordion-item.component.mjs +0 -73
- package/esm2022/accordion/accordion.component.mjs +0 -29
- package/esm2022/accordion/accordion.module.mjs +0 -39
- package/esm2022/alauda-ui.mjs +0 -2
- package/esm2022/anchor/anchor.component.mjs +0 -141
- package/esm2022/anchor/anchor.directive.mjs +0 -198
- package/esm2022/anchor/anchor.module.mjs +0 -35
- package/esm2022/autocomplete/autocomplete.component.mjs +0 -72
- package/esm2022/autocomplete/autocomplete.directive.mjs +0 -278
- package/esm2022/autocomplete/autocomplete.module.mjs +0 -53
- package/esm2022/autocomplete/suggestion/suggestion.component.mjs +0 -85
- package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +0 -25
- package/esm2022/back-top/back-top.component.mjs +0 -68
- package/esm2022/back-top/back-top.module.mjs +0 -19
- package/esm2022/breadcrumb/breadcrumb-item.component.mjs +0 -33
- package/esm2022/breadcrumb/breadcrumb.component.mjs +0 -56
- package/esm2022/breadcrumb/breadcrumb.module.mjs +0 -20
- package/esm2022/button/button.component.mjs +0 -124
- package/esm2022/button/button.module.mjs +0 -20
- package/esm2022/button/button.types.mjs +0 -13
- package/esm2022/card/card.component.mjs +0 -14
- package/esm2022/card/card.module.mjs +0 -40
- package/esm2022/card/helper-directives.mjs +0 -45
- package/esm2022/checkbox/checkbox-group/checkbox-group.component.mjs +0 -60
- package/esm2022/checkbox/checkbox.component.mjs +0 -116
- package/esm2022/checkbox/checkbox.module.mjs +0 -20
- package/esm2022/color-picker/color-picker.component.mjs +0 -28
- package/esm2022/color-picker/color-picker.module.mjs +0 -19
- package/esm2022/date-picker/calendar/constant.mjs +0 -31
- package/esm2022/date-picker/calendar/date-picker-panel/component.mjs +0 -137
- package/esm2022/date-picker/calendar/footer/component.mjs +0 -29
- package/esm2022/date-picker/calendar/header/component.mjs +0 -99
- package/esm2022/date-picker/calendar/panel/picker-panel.mjs +0 -158
- package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +0 -210
- package/esm2022/date-picker/calendar/util.mjs +0 -152
- package/esm2022/date-picker/date-picker/date-picker.component.mjs +0 -115
- package/esm2022/date-picker/date-picker.module.mjs +0 -82
- package/esm2022/date-picker/range-picker/range-picker.component.mjs +0 -88
- package/esm2022/date-picker/trigger/trigger.component.mjs +0 -76
- package/esm2022/dialog/confirm-dialog/confirm-dialog-config.mjs +0 -13
- package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +0 -88
- package/esm2022/dialog/dialog-config.mjs +0 -14
- package/esm2022/dialog/dialog-content/dialog-close.directive.mjs +0 -42
- package/esm2022/dialog/dialog-content/dialog-content.component.mjs +0 -19
- package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +0 -13
- package/esm2022/dialog/dialog-content/dialog-header.component.mjs +0 -42
- package/esm2022/dialog/dialog-ref.mjs +0 -52
- package/esm2022/dialog/dialog.component.mjs +0 -154
- package/esm2022/dialog/dialog.module.mjs +0 -65
- package/esm2022/dialog/dialog.service.mjs +0 -124
- package/esm2022/drawer/component/drawer.component.mjs +0 -248
- package/esm2022/drawer/component/helper-directives.mjs +0 -33
- package/esm2022/drawer/drawer.module.mjs +0 -36
- package/esm2022/drawer/drawer.service.mjs +0 -47
- package/esm2022/dropdown/dropdown-active.directive.mjs +0 -18
- package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +0 -58
- package/esm2022/dropdown/dropdown.directive.mjs +0 -83
- package/esm2022/dropdown/dropdown.module.mjs +0 -65
- package/esm2022/dropdown/menu/menu-content.directive.mjs +0 -59
- package/esm2022/dropdown/menu/menu.component.mjs +0 -26
- package/esm2022/dropdown/menu-item/menu-item.component.mjs +0 -35
- package/esm2022/dropdown/submenu/submenu.component.mjs +0 -38
- package/esm2022/form/common-form.mjs +0 -88
- package/esm2022/form/form-item/form-item.component.mjs +0 -121
- package/esm2022/form/form.directive.mjs +0 -70
- package/esm2022/form/form.module.mjs +0 -48
- package/esm2022/form/helper-directives.mjs +0 -78
- package/esm2022/i18n/i18n.pipe.mjs +0 -21
- package/esm2022/i18n/i18n.service.mjs +0 -46
- package/esm2022/icon/icon-register.service.mjs +0 -75
- package/esm2022/icon/icon.component.mjs +0 -74
- package/esm2022/icon/icon.module.mjs +0 -21
- package/esm2022/inline-alert/inline-alert.component.mjs +0 -54
- package/esm2022/inline-alert/inline-alert.module.mjs +0 -20
- package/esm2022/input/autosize.directive.mjs +0 -56
- package/esm2022/input/helper-directives.mjs +0 -43
- package/esm2022/input/input-group/input-group.component.mjs +0 -46
- package/esm2022/input/input.component.mjs +0 -59
- package/esm2022/input/input.module.mjs +0 -85
- package/esm2022/input/number-input/number-input.component.mjs +0 -115
- package/esm2022/input/search/search.component.mjs +0 -87
- package/esm2022/input/tags-input/tags-input.component.mjs +0 -264
- package/esm2022/message/base-message.mjs +0 -99
- package/esm2022/message/message-wrapper.component.mjs +0 -15
- package/esm2022/message/message.component.mjs +0 -77
- package/esm2022/message/message.config.mjs +0 -20
- package/esm2022/message/message.module.mjs +0 -22
- package/esm2022/notification/notification-wrapper.component.mjs +0 -17
- package/esm2022/notification/notification.component.mjs +0 -106
- package/esm2022/notification/notification.module.mjs +0 -23
- package/esm2022/paginator/paginator-intl.mjs +0 -24
- package/esm2022/paginator/paginator.component.mjs +0 -124
- package/esm2022/paginator/paginator.module.mjs +0 -24
- package/esm2022/radio/base-radio.mjs +0 -72
- package/esm2022/radio/radio-button/radio-button.component.mjs +0 -41
- package/esm2022/radio/radio-group/radio-group.component.mjs +0 -70
- package/esm2022/radio/radio.component.mjs +0 -23
- package/esm2022/radio/radio.module.mjs +0 -21
- package/esm2022/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +0 -80
- package/esm2022/scrolling/fixed-size-table-virtual-scroll.directive.mjs +0 -119
- package/esm2022/scrolling/fixed-size-virtual-scroll.directive.mjs +0 -27
- package/esm2022/scrolling/virtual-scroll-viewport.component.mjs +0 -26
- package/esm2022/select/base-select.mjs +0 -345
- package/esm2022/select/multi-select/multi-select.component.mjs +0 -318
- package/esm2022/select/option/option.component.mjs +0 -119
- package/esm2022/select/option-group/option-group.component.mjs +0 -25
- package/esm2022/select/select.component.mjs +0 -107
- package/esm2022/select/select.module.mjs +0 -78
- package/esm2022/select/validators.mjs +0 -78
- package/esm2022/shared/click-outside.directive.mjs +0 -29
- package/esm2022/sort/sort-errors.mjs +0 -13
- package/esm2022/sort/sort-header.component.mjs +0 -74
- package/esm2022/sort/sort.directive.mjs +0 -73
- package/esm2022/sort/sort.module.mjs +0 -19
- package/esm2022/status-bar/status-bar.component.mjs +0 -28
- package/esm2022/status-bar/status-bar.module.mjs +0 -19
- package/esm2022/steps/steps.component.mjs +0 -180
- package/esm2022/steps/steps.module.mjs +0 -19
- package/esm2022/switch/switch.component.mjs +0 -43
- package/esm2022/switch/switch.module.mjs +0 -18
- package/esm2022/table/table-cell-def.directive.mjs +0 -25
- package/esm2022/table/table-cell.component.mjs +0 -115
- package/esm2022/table/table-cell.directive.mjs +0 -29
- package/esm2022/table/table-column-def.directive.mjs +0 -31
- package/esm2022/table/table-header-cell-def.directive.mjs +0 -25
- package/esm2022/table/table-header-cell.directive.mjs +0 -25
- package/esm2022/table/table-header-row-def.directive.mjs +0 -33
- package/esm2022/table/table-header-row.component.mjs +0 -24
- package/esm2022/table/table-placeholder.directive.mjs +0 -33
- package/esm2022/table/table-row-def.directive.mjs +0 -34
- package/esm2022/table/table-row.component.mjs +0 -43
- package/esm2022/table/table-scroll.directive.mjs +0 -133
- package/esm2022/table/table.component.mjs +0 -79
- package/esm2022/table/table.module.mjs +0 -96
- package/esm2022/table-of-contents/table-of-contents.module.mjs +0 -20
- package/esm2022/table-of-contents/toc-container.directive.mjs +0 -111
- package/esm2022/table-of-contents/toc-content.directive.mjs +0 -39
- package/esm2022/table-of-contents/toc-link.directive.mjs +0 -48
- package/esm2022/tabs/tab-body.component.mjs +0 -151
- package/esm2022/tabs/tab-context.service.mjs +0 -30
- package/esm2022/tabs/tab-group.component.mjs +0 -256
- package/esm2022/tabs/tab-header-active-indicator.component.mjs +0 -46
- package/esm2022/tabs/tab-header.component.mjs +0 -276
- package/esm2022/tabs/tab.component.mjs +0 -77
- package/esm2022/tabs/tabs.module.mjs +0 -86
- package/esm2022/tabs/tabs.types.mjs +0 -10
- package/esm2022/tag/check-tag/check-tag.component.mjs +0 -31
- package/esm2022/tag/tag.component.mjs +0 -63
- package/esm2022/tag/tag.module.mjs +0 -20
- package/esm2022/theme/theme.module.mjs +0 -18
- package/esm2022/theme/theme.pipe.mjs +0 -64
- package/esm2022/theme/theme.service.mjs +0 -55
- package/esm2022/time-picker/component.mjs +0 -181
- package/esm2022/time-picker/panel/panel.component.mjs +0 -240
- package/esm2022/time-picker/time-picker.module.mjs +0 -56
- package/esm2022/tooltip/base-tooltip.mjs +0 -329
- package/esm2022/tooltip/tooltip-active.directive.mjs +0 -51
- package/esm2022/tooltip/tooltip-copy.directive.mjs +0 -87
- package/esm2022/tooltip/tooltip-intl.mjs +0 -21
- package/esm2022/tooltip/tooltip.component.mjs +0 -120
- package/esm2022/tooltip/tooltip.directive.mjs +0 -44
- package/esm2022/tooltip/tooltip.module.mjs +0 -32
- package/esm2022/tree-select/tree-select.component.mjs +0 -350
- package/esm2022/tree-select/tree-select.module.mjs +0 -34
- package/esm2022/types.mjs +0 -8
- package/esm2022/utils/bem.mjs +0 -44
- package/esm2022/utils/coercion.mjs +0 -13
- package/fesm2022/alauda-ui.mjs.map +0 -1
- /package/{esm2022 → esm2020}/accordion/index.mjs +0 -0
- /package/{esm2022 → esm2020}/anchor/index.mjs +0 -0
- /package/{esm2022 → esm2020}/anchor/types.mjs +0 -0
- /package/{esm2022 → esm2020}/anchor/utils.mjs +0 -0
- /package/{esm2022 → esm2020}/autocomplete/autocomplete.types.mjs +0 -0
- /package/{esm2022 → esm2020}/autocomplete/index.mjs +0 -0
- /package/{esm2022 → esm2020}/back-top/index.mjs +0 -0
- /package/{esm2022 → esm2020}/breadcrumb/index.mjs +0 -0
- /package/{esm2022 → esm2020}/button/index.mjs +0 -0
- /package/{esm2022 → esm2020}/card/index.mjs +0 -0
- /package/{esm2022 → esm2020}/checkbox/index.mjs +0 -0
- /package/{esm2022 → esm2020}/color-picker/index.mjs +0 -0
- /package/{esm2022 → esm2020}/core/animation/animation-consts.mjs +0 -0
- /package/{esm2022 → esm2020}/date-picker/date-picker.type.mjs +0 -0
- /package/{esm2022 → esm2020}/date-picker/index.mjs +0 -0
- /package/{esm2022 → esm2020}/dialog/dialog.types.mjs +0 -0
- /package/{esm2022 → esm2020}/dialog/index.mjs +0 -0
- /package/{esm2022 → esm2020}/dialog/utils/errors.mjs +0 -0
- /package/{esm2022 → esm2020}/dialog/utils/index.mjs +0 -0
- /package/{esm2022 → esm2020}/drawer/component/drawer-ref.mjs +0 -0
- /package/{esm2022 → esm2020}/drawer/index.mjs +0 -0
- /package/{esm2022 → esm2020}/dropdown/dropdown.types.mjs +0 -0
- /package/{esm2022 → esm2020}/dropdown/index.mjs +0 -0
- /package/{esm2022 → esm2020}/form/form.types.mjs +0 -0
- /package/{esm2022 → esm2020}/form/index.mjs +0 -0
- /package/{esm2022 → esm2020}/i18n/i18n.type.mjs +0 -0
- /package/{esm2022 → esm2020}/i18n/index.mjs +0 -0
- /package/{esm2022 → esm2020}/i18n/language/en.mjs +0 -0
- /package/{esm2022 → esm2020}/i18n/language/zh.mjs +0 -0
- /package/{esm2022 → esm2020}/icon/icons.mjs +0 -0
- /package/{esm2022 → esm2020}/icon/index.mjs +0 -0
- /package/{esm2022 → esm2020}/icon/utils.mjs +0 -0
- /package/{esm2022 → esm2020}/index.mjs +0 -0
- /package/{esm2022 → esm2020}/inline-alert/index.mjs +0 -0
- /package/{esm2022 → esm2020}/inline-alert/inline-alert.types.mjs +0 -0
- /package/{esm2022 → esm2020}/input/index.mjs +0 -0
- /package/{esm2022 → esm2020}/input/tags-input/with-max-row-count.mjs +0 -0
- /package/{esm2022 → esm2020}/input/utils/index.mjs +0 -0
- /package/{esm2022 → esm2020}/message/index.mjs +0 -0
- /package/{esm2022 → esm2020}/message/message-animations.mjs +0 -0
- /package/{esm2022 → esm2020}/notification/index.mjs +0 -0
- /package/{esm2022 → esm2020}/notification/notification.config.mjs +0 -0
- /package/{esm2022 → esm2020}/paginator/index.mjs +0 -0
- /package/{esm2022 → esm2020}/radio/index.mjs +0 -0
- /package/{esm2022 → esm2020}/radio/radio.types.mjs +0 -0
- /package/{esm2022 → esm2020}/scrolling/index.mjs +0 -0
- /package/{esm2022 → esm2020}/select/index.mjs +0 -0
- /package/{esm2022 → esm2020}/select/select.types.mjs +0 -0
- /package/{esm2022 → esm2020}/sort/index.mjs +0 -0
- /package/{esm2022 → esm2020}/sort/sort.types.mjs +0 -0
- /package/{esm2022 → esm2020}/status-bar/index.mjs +0 -0
- /package/{esm2022 → esm2020}/status-bar/status-bar.types.mjs +0 -0
- /package/{esm2022 → esm2020}/steps/index.mjs +0 -0
- /package/{esm2022 → esm2020}/steps/types.mjs +0 -0
- /package/{esm2022 → esm2020}/switch/index.mjs +0 -0
- /package/{esm2022 → esm2020}/table/index.mjs +0 -0
- /package/{esm2022 → esm2020}/table-of-contents/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tabs/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tag/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tag/tag.types.mjs +0 -0
- /package/{esm2022 → esm2020}/theme/index.mjs +0 -0
- /package/{esm2022 → esm2020}/theme/theme.types.mjs +0 -0
- /package/{esm2022 → esm2020}/theme/utils.mjs +0 -0
- /package/{esm2022 → esm2020}/time-picker/constant.mjs +0 -0
- /package/{esm2022 → esm2020}/time-picker/index.mjs +0 -0
- /package/{esm2022 → esm2020}/time-picker/time-picker.type.mjs +0 -0
- /package/{esm2022 → esm2020}/tooltip/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tooltip/tooltip.types.mjs +0 -0
- /package/{esm2022 → esm2020}/tooltip/utils/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tree-select/index.mjs +0 -0
- /package/{esm2022 → esm2020}/tree-select/tree-select.types.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/animations.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/async.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/fn.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/index.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/observe-dom.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/operators.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/scroll-into-view.mjs +0 -0
- /package/{esm2022 → esm2020}/utils/watch-content-exist.mjs +0 -0
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, forwardRef, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import dayjs from 'dayjs';
|
|
4
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
5
|
+
import { updateDateByTimeModel } from '../date-picker/calendar/util';
|
|
6
|
+
import { CommonFormControl } from '../form/common-form';
|
|
7
|
+
import { ComponentSize } from '../types';
|
|
8
|
+
import { isTimePickerModel, } from './time-picker.type';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../input/input-group/input-group.component";
|
|
11
|
+
import * as i2 from "../input/input.component";
|
|
12
|
+
import * as i3 from "../icon/icon.component";
|
|
13
|
+
import * as i4 from "./panel/panel.component";
|
|
14
|
+
import * as i5 from "../tooltip/tooltip.directive";
|
|
15
|
+
import * as i6 from "@angular/forms";
|
|
16
|
+
import * as i7 from "@angular/common";
|
|
17
|
+
import * as i8 from "../input/helper-directives";
|
|
18
|
+
dayjs.extend(customParseFormat);
|
|
19
|
+
export class TimePickerComponent extends CommonFormControl {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this.format = 'HH:mm:ss';
|
|
23
|
+
this.size = ComponentSize.Medium;
|
|
24
|
+
this.placeholder = '';
|
|
25
|
+
this.clearable = true;
|
|
26
|
+
this.showIcon = true;
|
|
27
|
+
this.hourStep = 1;
|
|
28
|
+
this.minuteStep = 1;
|
|
29
|
+
this.secondStep = 1;
|
|
30
|
+
this.open = new EventEmitter();
|
|
31
|
+
this.close = new EventEmitter();
|
|
32
|
+
this.timeValue = null;
|
|
33
|
+
this.timeFormatValue = '';
|
|
34
|
+
}
|
|
35
|
+
writeValue(value) {
|
|
36
|
+
super.writeValue(value);
|
|
37
|
+
if (!value) {
|
|
38
|
+
return this.setValue(null);
|
|
39
|
+
}
|
|
40
|
+
let result;
|
|
41
|
+
if (isTimePickerModel(value)) {
|
|
42
|
+
result = updateDateByTimeModel(dayjs(), value);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
result = dayjs(value);
|
|
46
|
+
this.submit(false, result);
|
|
47
|
+
}
|
|
48
|
+
this.setValue(result);
|
|
49
|
+
}
|
|
50
|
+
setValue(value) {
|
|
51
|
+
this.timeValue = value;
|
|
52
|
+
this.timeFormatValue = value ? dayjs(value).format(this.format) : null;
|
|
53
|
+
this.cdr.markForCheck();
|
|
54
|
+
}
|
|
55
|
+
changeFromPanel(value) {
|
|
56
|
+
this.timeFormatValue = value?.format(this.format);
|
|
57
|
+
}
|
|
58
|
+
changeFromInput(source) {
|
|
59
|
+
if (!source) {
|
|
60
|
+
this.timeValue = null;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
const afterParsed = dayjs(source, this.format);
|
|
64
|
+
if (afterParsed.isValid()) {
|
|
65
|
+
this.timeValue = afterParsed;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
onKeyDown(event) {
|
|
70
|
+
switch (event.key) {
|
|
71
|
+
case 'Enter':
|
|
72
|
+
this.openPanel();
|
|
73
|
+
event.stopPropagation();
|
|
74
|
+
event.preventDefault();
|
|
75
|
+
break;
|
|
76
|
+
case 'Escape':
|
|
77
|
+
this.closePanel();
|
|
78
|
+
event.stopPropagation();
|
|
79
|
+
event.preventDefault();
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
handleTooltipVisible(visible) {
|
|
84
|
+
if (visible) {
|
|
85
|
+
this.open.emit();
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
if (this.onTouched) {
|
|
89
|
+
this.onTouched();
|
|
90
|
+
}
|
|
91
|
+
this.setValue(this.timeValue);
|
|
92
|
+
this.submit();
|
|
93
|
+
this.close.emit();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
openPanel() {
|
|
97
|
+
if (this.tooltipRef.isCreated) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
this.tooltipRef.show();
|
|
101
|
+
this.open.next();
|
|
102
|
+
}
|
|
103
|
+
closePanel() {
|
|
104
|
+
if (!this.tooltipRef.isCreated) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
this.tooltipRef.hide();
|
|
108
|
+
this.close.next();
|
|
109
|
+
}
|
|
110
|
+
clearValue(event) {
|
|
111
|
+
this.setValue(null);
|
|
112
|
+
this.submit();
|
|
113
|
+
event.stopPropagation();
|
|
114
|
+
event.preventDefault();
|
|
115
|
+
}
|
|
116
|
+
submit(close = true, value) {
|
|
117
|
+
const refer = value ?? this.timeValue;
|
|
118
|
+
this.emitModel(refer
|
|
119
|
+
? {
|
|
120
|
+
second: refer.second(),
|
|
121
|
+
minute: refer.minute(),
|
|
122
|
+
hour: refer.hour(),
|
|
123
|
+
}
|
|
124
|
+
: null);
|
|
125
|
+
if (close) {
|
|
126
|
+
this.closePanel();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
TimePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
131
|
+
TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: TimePickerComponent, selector: "aui-time-picker", inputs: { format: "format", size: "size", placeholder: "placeholder", clearable: "clearable", showIcon: "showIcon", disableHours: "disableHours", disableMinutes: "disableMinutes", disableSeconds: "disableSeconds", hourStep: "hourStep", minuteStep: "minuteStep", secondStep: "secondStep", footerTemplate: "footerTemplate" }, outputs: { open: "open", close: "close" }, providers: [
|
|
132
|
+
{
|
|
133
|
+
provide: NG_VALUE_ACCESSOR,
|
|
134
|
+
useExisting: forwardRef(() => TimePickerComponent),
|
|
135
|
+
multi: true,
|
|
136
|
+
},
|
|
137
|
+
], viewQueries: [{ propertyName: "tooltipRef", first: true, predicate: ["tooltipRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"aui-time-picker\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"clearable && timeFormatValue\"\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"template\"\n [auiDisableAnimation]=\"true\"\n auiTooltipType=\"plain\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n [auiTooltipDisabled]=\"disabled\"\n (auiTooltipVisibleChange)=\"handleTooltipVisible($event)\"\n>\n <aui-input-group>\n <input\n aui-input\n autocomplete=\"off\"\n [size]=\"size\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"timeFormatValue\"\n (ngModelChange)=\"changeFromInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <span\n *ngIf=\"showIcon\"\n auiInputSuffix\n class=\"aui-time-picker__icon-container\"\n >\n <aui-icon\n class=\"aui-time-picker__indicator\"\n icon=\"clock\"\n ></aui-icon>\n <aui-icon\n class=\"aui-time-picker__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </aui-input-group>\n</div>\n\n<ng-template #template>\n <aui-time-picker-panel\n [disabled]=\"disabled\"\n [disableHours]=\"disableHours\"\n [disableMinutes]=\"disableMinutes\"\n [disableSeconds]=\"disableSeconds\"\n [hourStep]=\"hourStep\"\n [minuteStep]=\"minuteStep\"\n [secondStep]=\"secondStep\"\n [format]=\"format\"\n [footerTemplate]=\"footerTemplate\"\n [(ngModel)]=\"timeValue\"\n (ngModelChange)=\"changeFromPanel($event)\"\n (confirm)=\"submit()\"\n (click)=\"$event.stopPropagation()\"\n (mousedown)=\"$event.preventDefault()\"\n ></aui-time-picker-panel>\n</ng-template>\n", styles: [".aui-time-picker{display:inline-block;position:relative;width:var(--aui-form-item-width-s)}.aui-time-picker__icon-container{display:block;position:relative}.aui-time-picker.isDisabled .aui-time-picker__icon-container{color:rgb(var(--aui-color-n-4))}.aui-time-picker__clear{display:none}.aui-time-picker__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-time-picker__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-time-picker.isClearable:not(.isDisabled):hover .aui-time-picker__indicator{display:none}.aui-time-picker.isClearable:not(.isDisabled):hover .aui-time-picker__clear{display:flex}aui-time-picker.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-time-picker.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,:root aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,:root .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n"], components: [{ type: i1.InputGroupComponent, selector: "aui-input-group" }, { type: i2.InputComponent, selector: "input[aui-input],textarea[aui-input]", inputs: ["size", "disabled"] }, { type: i3.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { type: i4.TimePickerPanelComponent, selector: "aui-time-picker-panel", inputs: ["format", "hourStep", "minuteStep", "secondStep", "footerTemplate", "disableHours", "disableMinutes", "disableSeconds"], outputs: ["confirm"] }], directives: [{ type: i5.TooltipDirective, selector: "[auiTooltip]", inputs: ["auiTooltip", "auiTooltipContext", "auiTooltipClass", "auiTooltipType", "auiTooltipPosition", "auiTooltipTrigger", "auiTooltipDisabled", "auiTooltipHideOnClick", "auiDisableAnimation"], outputs: ["auiTooltipVisibleChange"], exportAs: ["auiTooltip"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.InputSuffixDirective, selector: "[auiInputSuffix]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
138
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerComponent, decorators: [{
|
|
139
|
+
type: Component,
|
|
140
|
+
args: [{ selector: 'aui-time-picker', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
141
|
+
{
|
|
142
|
+
provide: NG_VALUE_ACCESSOR,
|
|
143
|
+
useExisting: forwardRef(() => TimePickerComponent),
|
|
144
|
+
multi: true,
|
|
145
|
+
},
|
|
146
|
+
], template: "<div\n class=\"aui-time-picker\"\n [class.isDisabled]=\"disabled\"\n [class.isClearable]=\"clearable && timeFormatValue\"\n #tooltipRef=\"auiTooltip\"\n [auiTooltip]=\"template\"\n [auiDisableAnimation]=\"true\"\n auiTooltipType=\"plain\"\n auiTooltipTrigger=\"click\"\n auiTooltipPosition=\"bottom start\"\n [auiTooltipDisabled]=\"disabled\"\n (auiTooltipVisibleChange)=\"handleTooltipVisible($event)\"\n>\n <aui-input-group>\n <input\n aui-input\n autocomplete=\"off\"\n [size]=\"size\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"timeFormatValue\"\n (ngModelChange)=\"changeFromInput($event)\"\n (keydown)=\"onKeyDown($event)\"\n />\n <span\n *ngIf=\"showIcon\"\n auiInputSuffix\n class=\"aui-time-picker__icon-container\"\n >\n <aui-icon\n class=\"aui-time-picker__indicator\"\n icon=\"clock\"\n ></aui-icon>\n <aui-icon\n class=\"aui-time-picker__clear\"\n icon=\"xmark_small\"\n (click)=\"clearValue($event)\"\n ></aui-icon>\n </span>\n </aui-input-group>\n</div>\n\n<ng-template #template>\n <aui-time-picker-panel\n [disabled]=\"disabled\"\n [disableHours]=\"disableHours\"\n [disableMinutes]=\"disableMinutes\"\n [disableSeconds]=\"disableSeconds\"\n [hourStep]=\"hourStep\"\n [minuteStep]=\"minuteStep\"\n [secondStep]=\"secondStep\"\n [format]=\"format\"\n [footerTemplate]=\"footerTemplate\"\n [(ngModel)]=\"timeValue\"\n (ngModelChange)=\"changeFromPanel($event)\"\n (confirm)=\"submit()\"\n (click)=\"$event.stopPropagation()\"\n (mousedown)=\"$event.preventDefault()\"\n ></aui-time-picker-panel>\n</ng-template>\n", styles: [".aui-time-picker{display:inline-block;position:relative;width:var(--aui-form-item-width-s)}.aui-time-picker__icon-container{display:block;position:relative}.aui-time-picker.isDisabled .aui-time-picker__icon-container{color:rgb(var(--aui-color-n-4))}.aui-time-picker__clear{display:none}.aui-time-picker__clear .aui-icon{border-radius:50%;color:rgb(var(--aui-color-help-text));cursor:pointer;transition:all .3s ease}.aui-time-picker__clear .aui-icon:hover{color:rgb(var(--aui-color-main-bg));background-color:rgb(var(--aui-color-help-text))}.aui-time-picker.isClearable:not(.isDisabled):hover .aui-time-picker__indicator{display:none}.aui-time-picker.isClearable:not(.isDisabled):hover .aui-time-picker__clear{display:flex}aui-time-picker.ng-invalid.ng-dirty .aui-input,.ng-submitted aui-time-picker.ng-invalid .aui-input{border-color:rgb(var(--aui-color-red))!important}:root aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,:root aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,:root .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,:root .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}html[aui-theme-mode=light] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=light] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=light] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=light] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=system] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=system] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=system] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}}html[aui-theme-mode=dark] aui-time-picker.ng-invalid.ng-dirty .aui-input:focus,html[aui-theme-mode=dark] aui-time-picker.ng-invalid.ng-dirty .aui-input.isFocused,html[aui-theme-mode=dark] .ng-submitted aui-time-picker.ng-invalid .aui-input:focus,html[aui-theme-mode=dark] .ng-submitted aui-time-picker.ng-invalid .aui-input.isFocused{box-shadow:0 0 0 2px rgba(var(--aui-color-red),.3)}\n"] }]
|
|
147
|
+
}], propDecorators: { format: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], size: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], placeholder: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], clearable: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], showIcon: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], disableHours: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], disableMinutes: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], disableSeconds: [{
|
|
162
|
+
type: Input
|
|
163
|
+
}], hourStep: [{
|
|
164
|
+
type: Input
|
|
165
|
+
}], minuteStep: [{
|
|
166
|
+
type: Input
|
|
167
|
+
}], secondStep: [{
|
|
168
|
+
type: Input
|
|
169
|
+
}], footerTemplate: [{
|
|
170
|
+
type: Input
|
|
171
|
+
}], open: [{
|
|
172
|
+
type: Output
|
|
173
|
+
}], close: [{
|
|
174
|
+
type: Output
|
|
175
|
+
}], tooltipRef: [{
|
|
176
|
+
type: ViewChild,
|
|
177
|
+
args: ['tooltipRef']
|
|
178
|
+
}] } });
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sS0FBZ0IsTUFBTSxPQUFPLENBQUM7QUFDckMsT0FBTyxpQkFBaUIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXpDLE9BQU8sRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7OztBQUU1QixLQUFLLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFnQmhDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxpQkFHeEM7SUFqQkQ7O1FBbUJFLFdBQU0sR0FBRyxVQUFVLENBQUM7UUFHcEIsU0FBSSxHQUFrQixhQUFhLENBQUMsTUFBTSxDQUFDO1FBRzNDLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBR2pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFHakIsYUFBUSxHQUFHLElBQUksQ0FBQztRQVloQixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBR2IsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUdmLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFNTixTQUFJLEdBQUcs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O1NBQ1o7S0FDRiwySkN4Q0gsK3NEQTREQTsyRkRsQmEsbUJBQW1CO2tCQWQvQixTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkFPRCxNQUFNO3NCQURMLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJRyxJQUFJO3NCQURaLE1BQU07Z0JBSUUsS0FBSztzQkFEYixNQUFNO2dCQUlQLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBkYXlqcywgeyBEYXlqcyB9IGZyb20gJ2RheWpzJztcbmltcG9ydCBjdXN0b21QYXJzZUZvcm1hdCBmcm9tICdkYXlqcy9wbHVnaW4vY3VzdG9tUGFyc2VGb3JtYXQnO1xuXG5pbXBvcnQgeyB1cGRhdGVEYXRlQnlUaW1lTW9kZWwgfSBmcm9tICcuLi9kYXRlLXBpY2tlci9jYWxlbmRhci91dGlsJztcbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybS9jb21tb24tZm9ybSc7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vdG9vbHRpcCc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5pbXBvcnQge1xuICBUaW1lUGlja2VyRGF0YUxpa2UsXG4gIFRpbWVQaWNrZXJNb2RlbCxcbiAgaXNUaW1lUGlja2VyTW9kZWwsXG59IGZyb20gJy4vdGltZS1waWNrZXIudHlwZSc7XG5cbmRheWpzLmV4dGVuZChjdXN0b21QYXJzZUZvcm1hdCk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10aW1lLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lUGlja2VyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBDb21tb25Gb3JtQ29udHJvbDxcbiAgVGltZVBpY2tlckRhdGFMaWtlLFxuICBUaW1lUGlja2VyTW9kZWxcbj4ge1xuICBASW5wdXQoKVxuICBmb3JtYXQgPSAnSEg6bW06c3MnO1xuXG4gIEBJbnB1dCgpXG4gIHNpemU6IENvbXBvbmVudFNpemUgPSBDb21wb25lbnRTaXplLk1lZGl1bTtcblxuICBASW5wdXQoKVxuICBwbGFjZWhvbGRlciA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGNsZWFyYWJsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgc2hvd0ljb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVIb3VyczogKCkgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZU1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlU2Vjb25kczogKGhvdXI/OiBudW1iZXIsIG1pbnV0ZT86IG51bWJlcikgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgaG91clN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIG1pbnV0ZVN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIHNlY29uZFN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx2b2lkPjtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgb3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgndG9vbHRpcFJlZicpXG4gIHRvb2x0aXBSZWY6IFRvb2x0aXBEaXJlY3RpdmU7XG5cbiAgdGltZVZhbHVlOiBEYXlqcyA9IG51bGw7XG4gIHRpbWVGb3JtYXRWYWx1ZSA9ICcnO1xuXG4gIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IFRpbWVQaWNrZXJEYXRhTGlrZSkge1xuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgICBsZXQgcmVzdWx0OiBEYXlqcztcbiAgICBpZiAoaXNUaW1lUGlja2VyTW9kZWwodmFsdWUpKSB7XG4gICAgICByZXN1bHQgPSB1cGRhdGVEYXRlQnlUaW1lTW9kZWwoZGF5anMoKSwgdmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQgPSBkYXlqcyh2YWx1ZSk7XG4gICAgICB0aGlzLnN1Ym1pdChmYWxzZSwgcmVzdWx0KTtcbiAgICB9XG4gICAgdGhpcy5zZXRWYWx1ZShyZXN1bHQpO1xuICB9XG5cbiAgc2V0VmFsdWUodmFsdWU6IERheWpzKSB7XG4gICAgdGhpcy50aW1lVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnRpbWVGb3JtYXRWYWx1ZSA9IHZhbHVlID8gZGF5anModmFsdWUpLmZvcm1hdCh0aGlzLmZvcm1hdCkgOiBudWxsO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgY2hhbmdlRnJvbVBhbmVsKHZhbHVlOiBEYXlqcykge1xuICAgIHRoaXMudGltZUZvcm1hdFZhbHVlID0gdmFsdWU/LmZvcm1hdCh0aGlzLmZvcm1hdCk7XG4gIH1cblxuICBjaGFuZ2VGcm9tSW5wdXQoc291cmNlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXNvdXJjZSkge1xuICAgICAgdGhpcy50aW1lVmFsdWUgPSBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBhZnRlclBhcnNlZCA9IGRheWpzKHNvdXJjZSwgdGhpcy5mb3JtYXQpO1xuICAgICAgaWYgKGFmdGVyUGFyc2VkLmlzVmFsaWQoKSkge1xuICAgICAgICB0aGlzLnRpbWVWYWx1ZSA9IGFmdGVyUGFyc2VkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgIHRoaXMub3BlblBhbmVsKCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICAgIHRoaXMuY2xvc2VQYW5lbCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlVG9vbHRpcFZpc2libGUodmlzaWJsZTogYm9vbGVhbikge1xuICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICB0aGlzLm9wZW4uZW1pdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy50aW1lVmFsdWUpO1xuICAgICAgdGhpcy5zdWJtaXQoKTtcblxuICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgb3BlblBhbmVsKCkge1xuICAgIGlmICh0aGlzLnRvb2x0aXBSZWYuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudG9vbHRpcFJlZi5zaG93KCk7XG4gICAgdGhpcy5vcGVuLm5leHQoKTtcbiAgfVxuXG4gIGNsb3NlUGFuZWwoKSB7XG4gICAgaWYgKCF0aGlzLnRvb2x0aXBSZWYuaXNDcmVhdGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudG9vbHRpcFJlZi5oaWRlKCk7XG4gICAgdGhpcy5jbG9zZS5uZXh0KCk7XG4gIH1cblxuICBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuc2V0VmFsdWUobnVsbCk7XG4gICAgdGhpcy5zdWJtaXQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgc3VibWl0KGNsb3NlID0gdHJ1ZSwgdmFsdWU/OiBEYXlqcykge1xuICAgIGNvbnN0IHJlZmVyID0gdmFsdWUgPz8gdGhpcy50aW1lVmFsdWU7XG4gICAgdGhpcy5lbWl0TW9kZWwoXG4gICAgICByZWZlclxuICAgICAgICA/IHtcbiAgICAgICAgICAgIHNlY29uZDogcmVmZXIuc2Vjb25kKCksXG4gICAgICAgICAgICBtaW51dGU6IHJlZmVyLm1pbnV0ZSgpLFxuICAgICAgICAgICAgaG91cjogcmVmZXIuaG91cigpLFxuICAgICAgICAgIH1cbiAgICAgICAgOiBudWxsLFxuICAgICk7XG4gICAgaWYgKGNsb3NlKSB7XG4gICAgICB0aGlzLmNsb3NlUGFuZWwoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhdWktdGltZS1waWNrZXJcIlxuICBbY2xhc3MuaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5pc0NsZWFyYWJsZV09XCJjbGVhcmFibGUgJiYgdGltZUZvcm1hdFZhbHVlXCJcbiAgI3Rvb2x0aXBSZWY9XCJhdWlUb29sdGlwXCJcbiAgW2F1aVRvb2x0aXBdPVwidGVtcGxhdGVcIlxuICBbYXVpRGlzYWJsZUFuaW1hdGlvbl09XCJ0cnVlXCJcbiAgYXVpVG9vbHRpcFR5cGU9XCJwbGFpblwiXG4gIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gc3RhcnRcIlxuICBbYXVpVG9vbHRpcERpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgKGF1aVRvb2x0aXBWaXNpYmxlQ2hhbmdlKT1cImhhbmRsZVRvb2x0aXBWaXNpYmxlKCRldmVudClcIlxuPlxuICA8YXVpLWlucHV0LWdyb3VwPlxuICAgIDxpbnB1dFxuICAgICAgYXVpLWlucHV0XG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgW3NpemVdPVwic2l6ZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFsobmdNb2RlbCldPVwidGltZUZvcm1hdFZhbHVlXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZUZyb21JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cInNob3dJY29uXCJcbiAgICAgIGF1aUlucHV0U3VmZml4XG4gICAgICBjbGFzcz1cImF1aS10aW1lLXBpY2tlcl9faWNvbi1jb250YWluZXJcIlxuICAgID5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImF1aS10aW1lLXBpY2tlcl9faW5kaWNhdG9yXCJcbiAgICAgICAgaWNvbj1cImNsb2NrXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIGNsYXNzPVwiYXVpLXRpbWUtcGlja2VyX19jbGVhclwiXG4gICAgICAgIGljb249XCJ4bWFya19zbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIlxuICAgICAgPjwvYXVpLWljb24+XG4gICAgPC9zcGFuPlxuICA8L2F1aS1pbnB1dC1ncm91cD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8YXVpLXRpbWUtcGlja2VyLXBhbmVsXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbZGlzYWJsZUhvdXJzXT1cImRpc2FibGVIb3Vyc1wiXG4gICAgW2Rpc2FibGVNaW51dGVzXT1cImRpc2FibGVNaW51dGVzXCJcbiAgICBbZGlzYWJsZVNlY29uZHNdPVwiZGlzYWJsZVNlY29uZHNcIlxuICAgIFtob3VyU3RlcF09XCJob3VyU3RlcFwiXG4gICAgW21pbnV0ZVN0ZXBdPVwibWludXRlU3RlcFwiXG4gICAgW3NlY29uZFN0ZXBdPVwic2Vjb25kU3RlcFwiXG4gICAgW2Zvcm1hdF09XCJmb3JtYXRcIlxuICAgIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiXG4gICAgWyhuZ01vZGVsKV09XCJ0aW1lVmFsdWVcIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZUZyb21QYW5lbCgkZXZlbnQpXCJcbiAgICAoY29uZmlybSk9XCJzdWJtaXQoKVwiXG4gICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gID48L2F1aS10aW1lLXBpY2tlci1wYW5lbD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, Output, ViewChild, ViewEncapsulation, forwardRef, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import dayjs from 'dayjs';
|
|
4
|
+
import { updateDateByTimeModel } from '../../date-picker/calendar/util';
|
|
5
|
+
import { CommonFormControl } from '../../form/common-form';
|
|
6
|
+
import { ComponentSize } from '../../types';
|
|
7
|
+
import { buildBem } from '../../utils';
|
|
8
|
+
import { CONTROL_ITEM_HEIGHT, HOUR_ITEMS, MINUTE_ITEMS, SECOND_ITEMS, } from '../constant';
|
|
9
|
+
import { TimePickerControlType } from '../time-picker.type';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../../button/button.component";
|
|
12
|
+
import * as i2 from "@angular/common";
|
|
13
|
+
import * as i3 from "../../i18n/i18n.pipe";
|
|
14
|
+
const TIME_PICKER_COLUMN_WIDTH = 80;
|
|
15
|
+
const bem = buildBem('aui-time-picker-panel');
|
|
16
|
+
export class TimePickerPanelComponent extends CommonFormControl {
|
|
17
|
+
constructor(cdr) {
|
|
18
|
+
super(cdr);
|
|
19
|
+
this.cdr = cdr;
|
|
20
|
+
this.hourStep = 1;
|
|
21
|
+
this.minuteStep = 1;
|
|
22
|
+
this.secondStep = 1;
|
|
23
|
+
this.confirm = new EventEmitter();
|
|
24
|
+
this.TimePickerControlType = TimePickerControlType;
|
|
25
|
+
this.HOUR_ITEM_CONFIG = HOUR_ITEMS;
|
|
26
|
+
this.MINUTE_ITEM_CONFIG = MINUTE_ITEMS;
|
|
27
|
+
this.SECOND_ITEM_CONFIG = SECOND_ITEMS;
|
|
28
|
+
this.CONTROL_ITEM_HEIGHT = CONTROL_ITEM_HEIGHT;
|
|
29
|
+
this.ComponentSize = ComponentSize;
|
|
30
|
+
this.bem = bem;
|
|
31
|
+
this.enabledColumns = 0;
|
|
32
|
+
// 用于控制初次滚动,是否展示滚动动画效果
|
|
33
|
+
this.firstScrolled = false;
|
|
34
|
+
this.model$.subscribe(_ => {
|
|
35
|
+
this.cdr.markForCheck();
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
set format(value) {
|
|
39
|
+
if (value != null) {
|
|
40
|
+
this._format = value;
|
|
41
|
+
const charSet = new Set(value);
|
|
42
|
+
this.hourEnabled = charSet.has('H') || charSet.has('h');
|
|
43
|
+
this.minuteEnabled = charSet.has('m');
|
|
44
|
+
this.secondEnabled = charSet.has('s');
|
|
45
|
+
this.enabledColumns = [
|
|
46
|
+
this.hourEnabled,
|
|
47
|
+
this.minuteEnabled,
|
|
48
|
+
this.secondEnabled,
|
|
49
|
+
].filter(Boolean).length;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
get format() {
|
|
53
|
+
return this._format;
|
|
54
|
+
}
|
|
55
|
+
get totalWidth() {
|
|
56
|
+
return this.enabledColumns * TIME_PICKER_COLUMN_WIDTH;
|
|
57
|
+
}
|
|
58
|
+
onMousedown() {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
isDisabled(value, type) {
|
|
62
|
+
const currentValue = this.model;
|
|
63
|
+
if (this.disabled) {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
if (type === TimePickerControlType.Hour) {
|
|
67
|
+
return (!this.disableHours ? [] : this.disableHours()).includes(value);
|
|
68
|
+
}
|
|
69
|
+
if (type === TimePickerControlType.Minute) {
|
|
70
|
+
return (!this.disableMinutes ? [] : this.disableMinutes(currentValue?.hour())).includes(value);
|
|
71
|
+
}
|
|
72
|
+
if (type === TimePickerControlType.Second) {
|
|
73
|
+
return (!this.disableSeconds
|
|
74
|
+
? []
|
|
75
|
+
: this.disableSeconds(currentValue?.hour(), currentValue?.minute())).includes(value);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
ngOnChanges({ hourStep, minuteStep, secondStep }) {
|
|
79
|
+
if (hourStep?.currentValue > 0) {
|
|
80
|
+
this.HOUR_ITEM_CONFIG = HOUR_ITEMS.filter(i => i % hourStep.currentValue === 0);
|
|
81
|
+
}
|
|
82
|
+
if (minuteStep?.currentValue > 0) {
|
|
83
|
+
this.MINUTE_ITEM_CONFIG = MINUTE_ITEMS.filter(i => i % minuteStep.currentValue === 0);
|
|
84
|
+
}
|
|
85
|
+
if (secondStep?.currentValue > 0) {
|
|
86
|
+
this.SECOND_ITEM_CONFIG = SECOND_ITEMS.filter(i => i % secondStep.currentValue === 0);
|
|
87
|
+
}
|
|
88
|
+
this.cdr.markForCheck();
|
|
89
|
+
}
|
|
90
|
+
writeValue(value) {
|
|
91
|
+
super.writeValue(value);
|
|
92
|
+
this.syncScrollOffset(!this.firstScrolled ? 0 : 120, value);
|
|
93
|
+
}
|
|
94
|
+
selectValue(value, type) {
|
|
95
|
+
if (this.isDisabled(value, type)) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
this.firstScrolled = true;
|
|
99
|
+
const result = this.syncValue(value, type, this.model);
|
|
100
|
+
this.syncScrollOffset(120, result);
|
|
101
|
+
}
|
|
102
|
+
syncValue(value, type, currentValue) {
|
|
103
|
+
if (!type) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const result = (currentValue ||
|
|
107
|
+
updateDateByTimeModel(dayjs(), { hour: 0, minute: 0, second: 0 })).set(type, value);
|
|
108
|
+
this.emitModel(result);
|
|
109
|
+
return result;
|
|
110
|
+
}
|
|
111
|
+
syncScrollOffset(duration, value) {
|
|
112
|
+
const empty = !value;
|
|
113
|
+
const config = [
|
|
114
|
+
{
|
|
115
|
+
ref: this.hourRef,
|
|
116
|
+
enabled: this.hourEnabled,
|
|
117
|
+
step: this.hourStep,
|
|
118
|
+
type: 'hour',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
ref: this.minuteRef,
|
|
122
|
+
enabled: this.minuteEnabled,
|
|
123
|
+
step: this.minuteStep,
|
|
124
|
+
type: 'minute',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
ref: this.secondRef,
|
|
128
|
+
enabled: this.secondEnabled,
|
|
129
|
+
step: this.secondStep,
|
|
130
|
+
type: 'second',
|
|
131
|
+
},
|
|
132
|
+
];
|
|
133
|
+
config.forEach(cf => {
|
|
134
|
+
if (cf.enabled && cf.ref) {
|
|
135
|
+
this.scrollByValue(cf.ref.nativeElement, empty ? 0 : value.get(cf.type), cf.step, empty ? 0 : duration);
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
if (!empty) {
|
|
139
|
+
this.firstScrolled = true;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
scrollByValue(element, value, divideBy, duration) {
|
|
143
|
+
const targetOffset = (value * CONTROL_ITEM_HEIGHT) / divideBy;
|
|
144
|
+
const currentTop = element.scrollTop;
|
|
145
|
+
if (currentTop === targetOffset) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (!duration) {
|
|
149
|
+
element.scrollTop = targetOffset;
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
const difference = targetOffset - currentTop;
|
|
153
|
+
// 每个tick滚动距离
|
|
154
|
+
const perTick = (difference / duration) * 10;
|
|
155
|
+
requestAnimationFrame(() => {
|
|
156
|
+
element.scrollTop = currentTop + perTick;
|
|
157
|
+
if (element.scrollTop === targetOffset) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
this.scrollByValue(element, value, divideBy, duration - 10);
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
matchValue(value, type, currDate) {
|
|
165
|
+
return currDate?.get(type) === value;
|
|
166
|
+
}
|
|
167
|
+
getControlTypeConfig(type) {
|
|
168
|
+
return {
|
|
169
|
+
[TimePickerControlType.Hour]: this.HOUR_ITEM_CONFIG,
|
|
170
|
+
[TimePickerControlType.Minute]: this.MINUTE_ITEM_CONFIG,
|
|
171
|
+
[TimePickerControlType.Second]: this.SECOND_ITEM_CONFIG,
|
|
172
|
+
}[type];
|
|
173
|
+
}
|
|
174
|
+
selectNow() {
|
|
175
|
+
this.firstScrolled = true;
|
|
176
|
+
this.emitModel(dayjs());
|
|
177
|
+
}
|
|
178
|
+
trackBy(_index, content) {
|
|
179
|
+
return content;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
TimePickerPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerPanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
183
|
+
TimePickerPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: TimePickerPanelComponent, selector: "aui-time-picker-panel", inputs: { format: "format", hourStep: "hourStep", minuteStep: "minuteStep", secondStep: "secondStep", footerTemplate: "footerTemplate", disableHours: "disableHours", disableMinutes: "disableMinutes", disableSeconds: "disableSeconds" }, outputs: { confirm: "confirm" }, host: { listeners: { "mousedown": "onMousedown()" } }, providers: [
|
|
184
|
+
{
|
|
185
|
+
provide: NG_VALUE_ACCESSOR,
|
|
186
|
+
useExisting: forwardRef(() => TimePickerPanelComponent),
|
|
187
|
+
multi: true,
|
|
188
|
+
},
|
|
189
|
+
], viewQueries: [{ propertyName: "hourRef", first: true, predicate: ["hourRef"], descendants: true }, { propertyName: "minuteRef", first: true, predicate: ["minuteRef"], descendants: true }, { propertyName: "secondRef", first: true, predicate: ["secondRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\n *ngIf=\"enabledColumns\"\n [class]=\"bem.block()\"\n [style.width.px]=\"totalWidth\"\n>\n <div [class]=\"bem.element('content')\">\n <div\n [class]=\"bem.element('column')\"\n #hourRef\n *ngIf=\"hourEnabled\"\n >\n <ul>\n <li\n *ngFor=\"let item of getControlTypeConfig(TimePickerControlType.Hour)\"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Hour),\n selected: matchValue(item, TimePickerControlType.Hour, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Hour)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n <div\n [class]=\"bem.element('column')\"\n #minuteRef\n *ngIf=\"minuteEnabled\"\n >\n <ul>\n <li\n *ngFor=\"\n let item of getControlTypeConfig(TimePickerControlType.Minute);\n trackBy: trackBy\n \"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Minute),\n selected: matchValue(item, TimePickerControlType.Minute, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Minute)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n <div\n [class]=\"bem.element('column')\"\n #secondRef\n *ngIf=\"secondEnabled\"\n >\n <ul>\n <li\n *ngFor=\"\n let item of getControlTypeConfig(TimePickerControlType.Second)\n \"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Second),\n selected: matchValue(item, TimePickerControlType.Second, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Second)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n </div>\n\n <ng-container *ngIf=\"!footerTemplate; else customFooter\">\n <div [class]=\"bem.element('footer')\">\n <button\n aui-button=\"inline\"\n (click)=\"selectNow()\"\n [size]=\"ComponentSize.Small\"\n >\n {{ 'now' | auiI18n }}\n </button>\n <button\n aui-button=\"primary\"\n [size]=\"ComponentSize.Small\"\n (click)=\"$event.stopImmediatePropagation(); confirm.next()\"\n >\n {{ 'confirm' | auiI18n }}\n </button>\n </div>\n </ng-container>\n <ng-template #customFooter>\n <ng-container\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: this }\"\n ></ng-container>\n </ng-template>\n</div>\n", styles: [".aui-time-picker-panel{display:flex;flex-direction:column;background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);overflow:hidden;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}:root .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-time-picker-panel ul,.aui-time-picker-panel li{border:none}.aui-time-picker-panel__content{display:flex;flex-direction:row;height:252px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-time-picker-panel__footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:9px}.aui-time-picker-panel__column{flex:1;align-self:stretch;text-align:center;overflow:auto}.aui-time-picker-panel__column::-webkit-scrollbar{width:4px;height:4px}.aui-time-picker-panel__column::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-time-picker-panel__column::-webkit-scrollbar-corner{background-color:transparent}.aui-time-picker-panel__column ul{min-height:252px;list-style:none;padding:0;margin:0}.aui-time-picker-panel__column-strut{height:224px;width:1px;visibility:hidden}.aui-time-picker-panel__column+.aui-time-picker-panel__column{border-left:1px solid rgb(var(--aui-color-n-8))}.aui-time-picker-panel__cell{flex:none;width:100%;height:28px;color:rgb(var(--aui-color-main-text));line-height:28px;cursor:pointer}.aui-time-picker-panel__cell:hover{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-primary))}.aui-time-picker-panel__cell.selected{background-color:rgb(var(--aui-color-p-7));color:rgb(var(--aui-color-primary));font-weight:var(--aui-font-weight-bold)}.aui-time-picker-panel__cell.disabled{background-color:rgb(var(--aui-color-n-8));color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}\n"], components: [{ type: i1.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "number": i2.DecimalPipe, "auiI18n": i3.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerPanelComponent, decorators: [{
|
|
191
|
+
type: Component,
|
|
192
|
+
args: [{ selector: 'aui-time-picker-panel', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
193
|
+
{
|
|
194
|
+
provide: NG_VALUE_ACCESSOR,
|
|
195
|
+
useExisting: forwardRef(() => TimePickerPanelComponent),
|
|
196
|
+
multi: true,
|
|
197
|
+
},
|
|
198
|
+
], template: "<div\n *ngIf=\"enabledColumns\"\n [class]=\"bem.block()\"\n [style.width.px]=\"totalWidth\"\n>\n <div [class]=\"bem.element('content')\">\n <div\n [class]=\"bem.element('column')\"\n #hourRef\n *ngIf=\"hourEnabled\"\n >\n <ul>\n <li\n *ngFor=\"let item of getControlTypeConfig(TimePickerControlType.Hour)\"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Hour),\n selected: matchValue(item, TimePickerControlType.Hour, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Hour)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n <div\n [class]=\"bem.element('column')\"\n #minuteRef\n *ngIf=\"minuteEnabled\"\n >\n <ul>\n <li\n *ngFor=\"\n let item of getControlTypeConfig(TimePickerControlType.Minute);\n trackBy: trackBy\n \"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Minute),\n selected: matchValue(item, TimePickerControlType.Minute, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Minute)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n <div\n [class]=\"bem.element('column')\"\n #secondRef\n *ngIf=\"secondEnabled\"\n >\n <ul>\n <li\n *ngFor=\"\n let item of getControlTypeConfig(TimePickerControlType.Second)\n \"\n [class]=\"bem.element('cell')\"\n [style.height.px]=\"CONTROL_ITEM_HEIGHT\"\n [ngClass]=\"{\n disabled: isDisabled(item, TimePickerControlType.Second),\n selected: matchValue(item, TimePickerControlType.Second, model)\n }\"\n (click)=\"selectValue(item, TimePickerControlType.Second)\"\n >\n {{ item | number: '2.0-0' }}\n </li>\n </ul>\n <div [class]=\"bem.element('column-strut')\"></div>\n </div>\n </div>\n\n <ng-container *ngIf=\"!footerTemplate; else customFooter\">\n <div [class]=\"bem.element('footer')\">\n <button\n aui-button=\"inline\"\n (click)=\"selectNow()\"\n [size]=\"ComponentSize.Small\"\n >\n {{ 'now' | auiI18n }}\n </button>\n <button\n aui-button=\"primary\"\n [size]=\"ComponentSize.Small\"\n (click)=\"$event.stopImmediatePropagation(); confirm.next()\"\n >\n {{ 'confirm' | auiI18n }}\n </button>\n </div>\n </ng-container>\n <ng-template #customFooter>\n <ng-container\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: this }\"\n ></ng-container>\n </ng-template>\n</div>\n", styles: [".aui-time-picker-panel{display:flex;flex-direction:column;background-color:rgb(var(--aui-color-n-10));border-radius:var(--aui-border-radius-m);overflow:hidden;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}:root .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-time-picker-panel{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-time-picker-panel ul,.aui-time-picker-panel li{border:none}.aui-time-picker-panel__content{display:flex;flex-direction:row;height:252px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-time-picker-panel__footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:9px}.aui-time-picker-panel__column{flex:1;align-self:stretch;text-align:center;overflow:auto}.aui-time-picker-panel__column::-webkit-scrollbar{width:4px;height:4px}.aui-time-picker-panel__column::-webkit-scrollbar-thumb{border-radius:2px;background-color:rgba(var(--aui-color-n-1),.2)}.aui-time-picker-panel__column::-webkit-scrollbar-corner{background-color:transparent}.aui-time-picker-panel__column ul{min-height:252px;list-style:none;padding:0;margin:0}.aui-time-picker-panel__column-strut{height:224px;width:1px;visibility:hidden}.aui-time-picker-panel__column+.aui-time-picker-panel__column{border-left:1px solid rgb(var(--aui-color-n-8))}.aui-time-picker-panel__cell{flex:none;width:100%;height:28px;color:rgb(var(--aui-color-main-text));line-height:28px;cursor:pointer}.aui-time-picker-panel__cell:hover{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-primary))}.aui-time-picker-panel__cell.selected{background-color:rgb(var(--aui-color-p-7));color:rgb(var(--aui-color-primary));font-weight:var(--aui-font-weight-bold)}.aui-time-picker-panel__cell.disabled{background-color:rgb(var(--aui-color-n-8));color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}\n"] }]
|
|
199
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { format: [{
|
|
200
|
+
type: Input
|
|
201
|
+
}], onMousedown: [{
|
|
202
|
+
type: HostListener,
|
|
203
|
+
args: ['mousedown']
|
|
204
|
+
}], hourStep: [{
|
|
205
|
+
type: Input
|
|
206
|
+
}], minuteStep: [{
|
|
207
|
+
type: Input
|
|
208
|
+
}], secondStep: [{
|
|
209
|
+
type: Input
|
|
210
|
+
}], footerTemplate: [{
|
|
211
|
+
type: Input
|
|
212
|
+
}], confirm: [{
|
|
213
|
+
type: Output
|
|
214
|
+
}], disableHours: [{
|
|
215
|
+
type: Input
|
|
216
|
+
}], disableMinutes: [{
|
|
217
|
+
type: Input
|
|
218
|
+
}], disableSeconds: [{
|
|
219
|
+
type: Input
|
|
220
|
+
}], hourRef: [{
|
|
221
|
+
type: ViewChild,
|
|
222
|
+
args: ['hourRef', { static: false }]
|
|
223
|
+
}], minuteRef: [{
|
|
224
|
+
type: ViewChild,
|
|
225
|
+
args: ['minuteRef', { static: false }]
|
|
226
|
+
}], secondRef: [{
|
|
227
|
+
type: ViewChild,
|
|
228
|
+
args: ['secondRef', { static: false }]
|
|
229
|
+
}] } });
|
|
230
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL3BhbmVsL3BhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9wYW5lbC9wYW5lbC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEtBQWdCLE1BQU0sT0FBTyxDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxHQUNiLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQUU1RCxNQUFNLHdCQUF3QixHQUFHLEVBQUUsQ0FBQztBQUNwQyxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQWdCOUMsTUFBTSxPQUFPLHdCQUNYLFNBQVEsaUJBQXdCO0lBb0ZoQyxZQUErQixHQUFzQjtRQUNuRCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFEa0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFsRHJELGFBQVEsR0FBRyxDQUFDLENBQUM7UUFHYixlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBR2YsZUFBVSxHQUFHLENBQUMsQ0FBQztRQU1mLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZW5DLDBCQUFxQixHQUFHLHFCQUFxQixDQUFDO1FBQzlDLHFCQUFnQixHQUFHLFVBQVUsQ0FBQztRQUM5Qix1QkFBa0IsR0FBRyxZQUFZLENBQUM7UUFDbEMsdUJBQWtCLEdBQUcsWUFBWSxDQUFDO1FBRWxDLHdCQUFtQixHQUFHLG1CQUFtQixDQUFDO1FBQzFDLGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBQzlCLFFBQUcsR0FBRyxHQUFHLENBQUM7UUFXVixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUVuQixzQkFBc0I7UUFDdEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFJcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUF0RkQsSUFDSSxNQUFNLENBQUMsS0FBYTtRQUN0QixJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QyxJQUFJLENBQUMsY0FBYyxHQUFHO2dCQUNwQixJQUFJLENBQUMsV0FBVztnQkFDaEIsSUFBSSxDQUFDLGFBQWE7Z0JBQ2xCLElBQUksQ0FBQyxhQUFhO2FBQ25CLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUlELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQztJQUN4RCxDQUFDO0lBRTBCLFdBQVc7UUFDcEMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBNERELFVBQVUsQ0FBQyxLQUFhLEVBQUUsSUFBMkI7UUFDbkQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNoQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksSUFBSSxLQUFLLHFCQUFxQixDQUFDLElBQUksRUFBRTtZQUN2QyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4RTtRQUNELElBQUksSUFBSSxLQUFLLHFCQUFxQixDQUFDLE1BQU0sRUFBRTtZQUN6QyxPQUFPLENBQ0wsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQ3RFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25CO1FBQ0QsSUFBSSxJQUFJLEtBQUsscUJBQXFCLENBQUMsTUFBTSxFQUFFO1lBQ3pDLE9BQU8sQ0FDTCxDQUFDLElBQUksQ0FBQyxjQUFjO2dCQUNsQixDQUFDLENBQUMsRUFBRTtnQkFDSixDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQ3RFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFpQjtRQUM3RCxJQUFJLFFBQVEsRUFBRSxZQUFZLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUN2QyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsWUFBWSxLQUFLLENBQUMsQ0FDckMsQ0FBQztTQUNIO1FBQ0QsSUFBSSxVQUFVLEVBQUUsWUFBWSxHQUFHLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FDM0MsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLFlBQVksS0FBSyxDQUFDLENBQ3ZDLENBQUM7U0FDSDtRQUNELElBQUksVUFBVSxFQUFFLFlBQVksR0FBRyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFlBQVksQ0FBQyxNQUFNLENBQzNDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUN2QyxDQUFDO1NBQ0g7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFUSxVQUFVLENBQUMsS0FBWTtRQUM5QixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYSxFQUFFLElBQTJCO1FBQ3BELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDaEMsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYSxFQUFFLElBQTJCLEVBQUUsWUFBbUI7UUFDdkUsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU87U0FDUjtRQUNELE1BQU0sTUFBTSxHQUFHLENBQ2IsWUFBWTtZQUNaLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUNsRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsUUFBZ0IsRUFBRSxLQUFZO1FBQzdDLE1BQU0sS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ3JCLE1BQU0sTUFBTSxHQUFHO1lBQ2I7Z0JBQ0UsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPO2dCQUNqQixPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQ3pCLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDbkIsSUFBSSxFQUFFLE1BQU07YUFDYjtZQUNEO2dCQUNFLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhO2dCQUMzQixJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQ3JCLElBQUksRUFBRSxRQUFRO2FBQ2Y7WUFDRDtnQkFDRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYTtnQkFDM0IsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUNyQixJQUFJLEVBQUUsUUFBUTthQUNmO1NBQ08sQ0FBQztRQUVYLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFDbEIsSUFBSSxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxhQUFhLENBQ2hCLEVBQUUsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUNwQixLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQzlCLEVBQUUsQ0FBQyxJQUFJLEVBQ1AsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FDckIsQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUNuQixPQUFvQixFQUNwQixLQUFhLEVBQ2IsUUFBZ0IsRUFDaEIsUUFBZ0I7UUFFaEIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxRQUFRLENBQUM7UUFDOUQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUNyQyxJQUFJLFVBQVUsS0FBSyxZQUFZLEVBQUU7WUFDL0IsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLE9BQU8sQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDO1NBQ2xDO2FBQU07WUFDTCxNQUFNLFVBQVUsR0FBRyxZQUFZLEdBQUcsVUFBVSxDQUFDO1lBQzdDLGFBQWE7WUFDYixNQUFNLE9BQU8sR0FBRyxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFFN0MscUJBQXFCLENBQUMsR0FBRyxFQUFFO2dCQUN6QixPQUFPLENBQUMsU0FBUyxHQUFHLFVBQVUsR0FBRyxPQUFPLENBQUM7Z0JBQ3pDLElBQUksT0FBTyxDQUFDLFNBQVMsS0FBSyxZQUFZLEVBQUU7b0JBQ3RDLE9BQU87aUJBQ1I7Z0JBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDOUQsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxVQUFVLENBQ1IsS0FBYSxFQUNiLElBQTJCLEVBQzNCLFFBQWU7UUFFZixPQUFPLFFBQVEsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUEyQjtRQUM5QyxPQUFPO1lBQ0wsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1lBQ25ELENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtZQUN2RCxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7U0FDeEQsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxPQUFPLENBQUMsTUFBYyxFQUFFLE9BQWU7UUFDckMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7cUhBeFBVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLG9YQVJ4QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO1lBQ3ZELEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRiw0VkM5Q0gsd2pHQXFHQTsyRkRyRGEsd0JBQXdCO2tCQWRwQyxTQUFTOytCQUNFLHVCQUF1QixpQkFHbEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQzs0QkFDdkQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7d0dBT0csTUFBTTtzQkFEVCxLQUFLO2dCQTBCcUIsV0FBVztzQkFBckMsWUFBWTt1QkFBQyxXQUFXO2dCQUt6QixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNO2dCQUlQLFlBQVk7c0JBRFgsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQWlCTixPQUFPO3NCQUROLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFJdkMsU0FBUztzQkFEUixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBSXpDLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyB1cGRhdGVEYXRlQnlUaW1lTW9kZWwgfSBmcm9tICcuLi8uLi9kYXRlLXBpY2tlci9jYWxlbmRhci91dGlsJztcbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vLi4vZm9ybS9jb21tb24tZm9ybSc7XG5pbXBvcnQgeyBDb21wb25lbnRTaXplIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgYnVpbGRCZW0gfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge1xuICBDT05UUk9MX0lURU1fSEVJR0hULFxuICBIT1VSX0lURU1TLFxuICBNSU5VVEVfSVRFTVMsXG4gIFNFQ09ORF9JVEVNUyxcbn0gZnJvbSAnLi4vY29uc3RhbnQnO1xuaW1wb3J0IHsgVGltZVBpY2tlckNvbnRyb2xUeXBlIH0gZnJvbSAnLi4vdGltZS1waWNrZXIudHlwZSc7XG5cbmNvbnN0IFRJTUVfUElDS0VSX0NPTFVNTl9XSURUSCA9IDgwO1xuY29uc3QgYmVtID0gYnVpbGRCZW0oJ2F1aS10aW1lLXBpY2tlci1wYW5lbCcpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktdGltZS1waWNrZXItcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFuZWwudGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhbmVsLnN0eWxlLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGltZVBpY2tlclBhbmVsQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRpbWVQaWNrZXJQYW5lbENvbXBvbmVudFxuICBleHRlbmRzIENvbW1vbkZvcm1Db250cm9sPERheWpzPlxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlc1xue1xuICBASW5wdXQoKVxuICBzZXQgZm9ybWF0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgdGhpcy5fZm9ybWF0ID0gdmFsdWU7XG4gICAgICBjb25zdCBjaGFyU2V0ID0gbmV3IFNldCh2YWx1ZSk7XG4gICAgICB0aGlzLmhvdXJFbmFibGVkID0gY2hhclNldC5oYXMoJ0gnKSB8fCBjaGFyU2V0LmhhcygnaCcpO1xuICAgICAgdGhpcy5taW51dGVFbmFibGVkID0gY2hhclNldC5oYXMoJ20nKTtcbiAgICAgIHRoaXMuc2Vjb25kRW5hYmxlZCA9IGNoYXJTZXQuaGFzKCdzJyk7XG4gICAgICB0aGlzLmVuYWJsZWRDb2x1bW5zID0gW1xuICAgICAgICB0aGlzLmhvdXJFbmFibGVkLFxuICAgICAgICB0aGlzLm1pbnV0ZUVuYWJsZWQsXG4gICAgICAgIHRoaXMuc2Vjb25kRW5hYmxlZCxcbiAgICAgIF0uZmlsdGVyKEJvb2xlYW4pLmxlbmd0aDtcbiAgICB9XG4gIH1cblxuICBnZXQgZm9ybWF0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1hdDtcbiAgfVxuXG4gIHByaXZhdGUgX2Zvcm1hdDogc3RyaW5nO1xuXG4gIGdldCB0b3RhbFdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLmVuYWJsZWRDb2x1bW5zICogVElNRV9QSUNLRVJfQ09MVU1OX1dJRFRIO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJykgb25Nb3VzZWRvd24oKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgQElucHV0KClcbiAgaG91clN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIG1pbnV0ZVN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIHNlY29uZFN0ZXAgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx2b2lkPjtcblxuICBAT3V0cHV0KClcbiAgY29uZmlybSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlSG91cnM6ICgpID0+IG51bWJlcltdO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVNaW51dGVzOiAoaG91cj86IG51bWJlcikgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZVNlY29uZHM6IChob3VyPzogbnVtYmVyLCBtaW51dGU/OiBudW1iZXIpID0+IG51bWJlcltdO1xuXG4gIGhvdXJFbmFibGVkOiBib29sZWFuO1xuICBtaW51dGVFbmFibGVkOiBib29sZWFuO1xuICBzZWNvbmRFbmFibGVkOiBib29sZWFuO1xuXG4gIFRpbWVQaWNrZXJDb250cm9sVHlwZSA9IFRpbWVQaWNrZXJDb250cm9sVHlwZTtcbiAgSE9VUl9JVEVNX0NPTkZJRyA9IEhPVVJfSVRFTVM7XG4gIE1JTlVURV9JVEVNX0NPTkZJRyA9IE1JTlVURV9JVEVNUztcbiAgU0VDT05EX0lURU1fQ09ORklHID0gU0VDT05EX0lURU1TO1xuXG4gIENPTlRST0xfSVRFTV9IRUlHSFQgPSBDT05UUk9MX0lURU1fSEVJR0hUO1xuICBDb21wb25lbnRTaXplID0gQ29tcG9uZW50U2l6ZTtcbiAgYmVtID0gYmVtO1xuXG4gIEBWaWV3Q2hpbGQoJ2hvdXJSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgaG91clJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnbWludXRlUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1pbnV0ZVJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgQFZpZXdDaGlsZCgnc2Vjb25kUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHNlY29uZFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgZW5hYmxlZENvbHVtbnMgPSAwO1xuXG4gIC8vIOeUqOS6juaOp+WItuWIneasoea7muWKqO+8jOaYr+WQpuWxleekuua7muWKqOWKqOeUu+aViOaenFxuICBmaXJzdFNjcm9sbGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihjZHIpO1xuICAgIHRoaXMubW9kZWwkLnN1YnNjcmliZShfID0+IHtcbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG5cbiAgaXNEaXNhYmxlZCh2YWx1ZTogbnVtYmVyLCB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUpIHtcbiAgICBjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLm1vZGVsO1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHR5cGUgPT09IFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyKSB7XG4gICAgICByZXR1cm4gKCF0aGlzLmRpc2FibGVIb3VycyA/IFtdIDogdGhpcy5kaXNhYmxlSG91cnMoKSkuaW5jbHVkZXModmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgIXRoaXMuZGlzYWJsZU1pbnV0ZXMgPyBbXSA6IHRoaXMuZGlzYWJsZU1pbnV0ZXMoY3VycmVudFZhbHVlPy5ob3VyKCkpXG4gICAgICApLmluY2x1ZGVzKHZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHR5cGUgPT09IFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgICF0aGlzLmRpc2FibGVTZWNvbmRzXG4gICAgICAgICAgPyBbXVxuICAgICAgICAgIDogdGhpcy5kaXNhYmxlU2Vjb25kcyhjdXJyZW50VmFsdWU/LmhvdXIoKSwgY3VycmVudFZhbHVlPy5taW51dGUoKSlcbiAgICAgICkuaW5jbHVkZXModmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgaG91clN0ZXAsIG1pbnV0ZVN0ZXAsIHNlY29uZFN0ZXAgfTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChob3VyU3RlcD8uY3VycmVudFZhbHVlID4gMCkge1xuICAgICAgdGhpcy5IT1VSX0lURU1fQ09ORklHID0gSE9VUl9JVEVNUy5maWx0ZXIoXG4gICAgICAgIGkgPT4gaSAlIGhvdXJTdGVwLmN1cnJlbnRWYWx1ZSA9PT0gMCxcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChtaW51dGVTdGVwPy5jdXJyZW50VmFsdWUgPiAwKSB7XG4gICAgICB0aGlzLk1JTlVURV9JVEVNX0NPTkZJRyA9IE1JTlVURV9JVEVNUy5maWx0ZXIoXG4gICAgICAgIGkgPT4gaSAlIG1pbnV0ZVN0ZXAuY3VycmVudFZhbHVlID09PSAwLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHNlY29uZFN0ZXA/LmN1cnJlbnRWYWx1ZSA+IDApIHtcbiAgICAgIHRoaXMuU0VDT05EX0lURU1fQ09ORklHID0gU0VDT05EX0lURU1TLmZpbHRlcihcbiAgICAgICAgaSA9PiBpICUgc2Vjb25kU3RlcC5jdXJyZW50VmFsdWUgPT09IDAsXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IERheWpzKSB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5zeW5jU2Nyb2xsT2Zmc2V0KCF0aGlzLmZpcnN0U2Nyb2xsZWQgPyAwIDogMTIwLCB2YWx1ZSk7XG4gIH1cblxuICBzZWxlY3RWYWx1ZSh2YWx1ZTogbnVtYmVyLCB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKHZhbHVlLCB0eXBlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZpcnN0U2Nyb2xsZWQgPSB0cnVlO1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuc3luY1ZhbHVlKHZhbHVlLCB0eXBlLCB0aGlzLm1vZGVsKTtcbiAgICB0aGlzLnN5bmNTY3JvbGxPZmZzZXQoMTIwLCByZXN1bHQpO1xuICB9XG5cbiAgc3luY1ZhbHVlKHZhbHVlOiBudW1iZXIsIHR5cGU6IFRpbWVQaWNrZXJDb250cm9sVHlwZSwgY3VycmVudFZhbHVlOiBEYXlqcykge1xuICAgIGlmICghdHlwZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSAoXG4gICAgICBjdXJyZW50VmFsdWUgfHxcbiAgICAgIHVwZGF0ZURhdGVCeVRpbWVNb2RlbChkYXlqcygpLCB7IGhvdXI6IDAsIG1pbnV0ZTogMCwgc2Vjb25kOiAwIH0pXG4gICAgKS5zZXQodHlwZSwgdmFsdWUpO1xuICAgIHRoaXMuZW1pdE1vZGVsKHJlc3VsdCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHN5bmNTY3JvbGxPZmZzZXQoZHVyYXRpb246IG51bWJlciwgdmFsdWU6IERheWpzKSB7XG4gICAgY29uc3QgZW1wdHkgPSAhdmFsdWU7XG4gICAgY29uc3QgY29uZmlnID0gW1xuICAgICAge1xuICAgICAgICByZWY6IHRoaXMuaG91clJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5ob3VyRW5hYmxlZCxcbiAgICAgICAgc3RlcDogdGhpcy5ob3VyU3RlcCxcbiAgICAgICAgdHlwZTogJ2hvdXInLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcmVmOiB0aGlzLm1pbnV0ZVJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5taW51dGVFbmFibGVkLFxuICAgICAgICBzdGVwOiB0aGlzLm1pbnV0ZVN0ZXAsXG4gICAgICAgIHR5cGU6ICdtaW51dGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcmVmOiB0aGlzLnNlY29uZFJlZixcbiAgICAgICAgZW5hYmxlZDogdGhpcy5zZWNvbmRFbmFibGVkLFxuICAgICAgICBzdGVwOiB0aGlzLnNlY29uZFN0ZXAsXG4gICAgICAgIHR5cGU6ICdzZWNvbmQnLFxuICAgICAgfSxcbiAgICBdIGFzIGNvbnN0O1xuXG4gICAgY29uZmlnLmZvckVhY2goY2YgPT4ge1xuICAgICAgaWYgKGNmLmVuYWJsZWQgJiYgY2YucmVmKSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsQnlWYWx1ZShcbiAgICAgICAgICBjZi5yZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICBlbXB0eSA/IDAgOiB2YWx1ZS5nZXQoY2YudHlwZSksXG4gICAgICAgICAgY2Yuc3RlcCxcbiAgICAgICAgICBlbXB0eSA/IDAgOiBkdXJhdGlvbixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoIWVtcHR5KSB7XG4gICAgICB0aGlzLmZpcnN0U2Nyb2xsZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2Nyb2xsQnlWYWx1ZShcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICB2YWx1ZTogbnVtYmVyLFxuICAgIGRpdmlkZUJ5OiBudW1iZXIsXG4gICAgZHVyYXRpb246IG51bWJlcixcbiAgKSB7XG4gICAgY29uc3QgdGFyZ2V0T2Zmc2V0ID0gKHZhbHVlICogQ09OVFJPTF9JVEVNX0hFSUdIVCkgLyBkaXZpZGVCeTtcbiAgICBjb25zdCBjdXJyZW50VG9wID0gZWxlbWVudC5zY3JvbGxUb3A7XG4gICAgaWYgKGN1cnJlbnRUb3AgPT09IHRhcmdldE9mZnNldCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIWR1cmF0aW9uKSB7XG4gICAgICBlbGVtZW50LnNjcm9sbFRvcCA9IHRhcmdldE9mZnNldDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZGlmZmVyZW5jZSA9IHRhcmdldE9mZnNldCAtIGN1cnJlbnRUb3A7XG4gICAgICAvLyDmr4/kuKp0aWNr5rua5Yqo6Led56a7XG4gICAgICBjb25zdCBwZXJUaWNrID0gKGRpZmZlcmVuY2UgLyBkdXJhdGlvbikgKiAxMDtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgZWxlbWVudC5zY3JvbGxUb3AgPSBjdXJyZW50VG9wICsgcGVyVGljaztcbiAgICAgICAgaWYgKGVsZW1lbnQuc2Nyb2xsVG9wID09PSB0YXJnZXRPZmZzZXQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zY3JvbGxCeVZhbHVlKGVsZW1lbnQsIHZhbHVlLCBkaXZpZGVCeSwgZHVyYXRpb24gLSAxMCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBtYXRjaFZhbHVlKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgdHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlLFxuICAgIGN1cnJEYXRlOiBEYXlqcyxcbiAgKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGN1cnJEYXRlPy5nZXQodHlwZSkgPT09IHZhbHVlO1xuICB9XG5cbiAgZ2V0Q29udHJvbFR5cGVDb25maWcodHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlKTogbnVtYmVyW10ge1xuICAgIHJldHVybiB7XG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXJdOiB0aGlzLkhPVVJfSVRFTV9DT05GSUcsXG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZV06IHRoaXMuTUlOVVRFX0lURU1fQ09ORklHLFxuICAgICAgW1RpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmRdOiB0aGlzLlNFQ09ORF9JVEVNX0NPTkZJRyxcbiAgICB9W3R5cGVdO1xuICB9XG5cbiAgc2VsZWN0Tm93KCkge1xuICAgIHRoaXMuZmlyc3RTY3JvbGxlZCA9IHRydWU7XG4gICAgdGhpcy5lbWl0TW9kZWwoZGF5anMoKSk7XG4gIH1cblxuICB0cmFja0J5KF9pbmRleDogbnVtYmVyLCBjb250ZW50OiBudW1iZXIpIHtcbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxufVxuIiwiPGRpdlxuICAqbmdJZj1cImVuYWJsZWRDb2x1bW5zXCJcbiAgW2NsYXNzXT1cImJlbS5ibG9jaygpXCJcbiAgW3N0eWxlLndpZHRoLnB4XT1cInRvdGFsV2lkdGhcIlxuPlxuICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29udGVudCcpXCI+XG4gICAgPGRpdlxuICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4nKVwiXG4gICAgICAjaG91clJlZlxuICAgICAgKm5nSWY9XCJob3VyRW5hYmxlZFwiXG4gICAgPlxuICAgICAgPHVsPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBnZXRDb250cm9sVHlwZUNvbmZpZyhUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cilcIlxuICAgICAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY2VsbCcpXCJcbiAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cIkNPTlRST0xfSVRFTV9IRUlHSFRcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgIGRpc2FibGVkOiBpc0Rpc2FibGVkKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyKSxcbiAgICAgICAgICAgIHNlbGVjdGVkOiBtYXRjaFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGl0ZW0gfCBudW1iZXI6ICcyLjAtMCcgfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uLXN0cnV0JylcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbicpXCJcbiAgICAgICNtaW51dGVSZWZcbiAgICAgICpuZ0lmPVwibWludXRlRW5hYmxlZFwiXG4gICAgPlxuICAgICAgPHVsPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgIGxldCBpdGVtIG9mIGdldENvbnRyb2xUeXBlQ29uZmlnKFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUpO1xuICAgICAgICAgICAgdHJhY2tCeTogdHJhY2tCeVxuICAgICAgICAgIFwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSksXG4gICAgICAgICAgICBzZWxlY3RlZDogbWF0Y2hWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSlcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlcjogJzIuMC0wJyB9fVxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4tc3RydXQnKVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uJylcIlxuICAgICAgI3NlY29uZFJlZlxuICAgICAgKm5nSWY9XCJzZWNvbmRFbmFibGVkXCJcbiAgICA+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaVxuICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgbGV0IGl0ZW0gb2YgZ2V0Q29udHJvbFR5cGVDb25maWcoVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZClcbiAgICAgICAgICBcIlxuICAgICAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY2VsbCcpXCJcbiAgICAgICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cIkNPTlRST0xfSVRFTV9IRUlHSFRcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgIGRpc2FibGVkOiBpc0Rpc2FibGVkKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQpLFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IG1hdGNoVmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZCwgbW9kZWwpXG4gICAgICAgICAgfVwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5TZWNvbmQpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGl0ZW0gfCBudW1iZXI6ICcyLjAtMCcgfX1cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uLXN0cnV0JylcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFmb290ZXJUZW1wbGF0ZTsgZWxzZSBjdXN0b21Gb290ZXJcIj5cbiAgICA8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnZm9vdGVyJylcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvbj1cImlubGluZVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3ROb3coKVwiXG4gICAgICAgIFtzaXplXT1cIkNvbXBvbmVudFNpemUuU21hbGxcIlxuICAgICAgPlxuICAgICAgICB7eyAnbm93JyB8IGF1aUkxOG4gfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwicHJpbWFyeVwiXG4gICAgICAgIFtzaXplXT1cIkNvbXBvbmVudFNpemUuU21hbGxcIlxuICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpOyBjb25maXJtLm5leHQoKVwiXG4gICAgICA+XG4gICAgICAgIHt7ICdjb25maXJtJyB8IGF1aUkxOG4gfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNjdXN0b21Gb290ZXI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiB0aGlzIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
2
|
+
import { PortalModule } from '@angular/cdk/portal';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { NgModule } from '@angular/core';
|
|
5
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import { ButtonModule } from '../button';
|
|
7
|
+
import { I18nModule } from '../i18n';
|
|
8
|
+
import { IconModule } from '../icon';
|
|
9
|
+
import { InputModule } from '../input';
|
|
10
|
+
import { TooltipModule } from '../tooltip';
|
|
11
|
+
import { TimePickerComponent } from './component';
|
|
12
|
+
import { TimePickerPanelComponent } from './panel/panel.component';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
export class TimePickerModule {
|
|
15
|
+
}
|
|
16
|
+
TimePickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
TimePickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerModule, declarations: [TimePickerComponent, TimePickerPanelComponent], imports: [FormsModule,
|
|
18
|
+
ReactiveFormsModule,
|
|
19
|
+
PortalModule,
|
|
20
|
+
OverlayModule,
|
|
21
|
+
CommonModule,
|
|
22
|
+
InputModule,
|
|
23
|
+
TooltipModule,
|
|
24
|
+
IconModule,
|
|
25
|
+
ButtonModule,
|
|
26
|
+
I18nModule], exports: [TimePickerComponent, TimePickerPanelComponent] });
|
|
27
|
+
TimePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerModule, imports: [[
|
|
28
|
+
FormsModule,
|
|
29
|
+
ReactiveFormsModule,
|
|
30
|
+
PortalModule,
|
|
31
|
+
OverlayModule,
|
|
32
|
+
CommonModule,
|
|
33
|
+
InputModule,
|
|
34
|
+
TooltipModule,
|
|
35
|
+
IconModule,
|
|
36
|
+
ButtonModule,
|
|
37
|
+
I18nModule,
|
|
38
|
+
]] });
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: TimePickerModule, decorators: [{
|
|
40
|
+
type: NgModule,
|
|
41
|
+
args: [{
|
|
42
|
+
imports: [
|
|
43
|
+
FormsModule,
|
|
44
|
+
ReactiveFormsModule,
|
|
45
|
+
PortalModule,
|
|
46
|
+
OverlayModule,
|
|
47
|
+
CommonModule,
|
|
48
|
+
InputModule,
|
|
49
|
+
TooltipModule,
|
|
50
|
+
IconModule,
|
|
51
|
+
ButtonModule,
|
|
52
|
+
I18nModule,
|
|
53
|
+
],
|
|
54
|
+
declarations: [TimePickerComponent, TimePickerPanelComponent],
|
|
55
|
+
exports: [TimePickerComponent, TimePickerPanelComponent],
|
|
56
|
+
}]
|
|
57
|
+
}] });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL3RpbWUtcGlja2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQWtCbkUsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQUhaLG1CQUFtQixFQUFFLHdCQUF3QixhQVgxRCxXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLFlBQVk7UUFDWixhQUFhO1FBQ2IsWUFBWTtRQUNaLFdBQVc7UUFDWCxhQUFhO1FBQ2IsVUFBVTtRQUNWLFlBQVk7UUFDWixVQUFVLGFBR0YsbUJBQW1CLEVBQUUsd0JBQXdCOzhHQUU1QyxnQkFBZ0IsWUFmbEI7WUFDUCxXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWixhQUFhO1lBQ2IsWUFBWTtZQUNaLFdBQVc7WUFDWCxhQUFhO1lBQ2IsVUFBVTtZQUNWLFlBQVk7WUFDWixVQUFVO1NBQ1g7MkZBSVUsZ0JBQWdCO2tCQWhCNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixVQUFVO3dCQUNWLFlBQVk7d0JBQ1osVUFBVTtxQkFDWDtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSx3QkFBd0IsQ0FBQztvQkFDN0QsT0FBTyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsd0JBQXdCLENBQUM7aUJBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IEkxOG5Nb2R1bGUgfSBmcm9tICcuLi9pMThuJztcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uJztcbmltcG9ydCB7IElucHV0TW9kdWxlIH0gZnJvbSAnLi4vaW5wdXQnO1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4uL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBUaW1lUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHsgVGltZVBpY2tlclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9wYW5lbC9wYW5lbC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW5wdXRNb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBJY29uTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBJMThuTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtUaW1lUGlja2VyQ29tcG9uZW50LCBUaW1lUGlja2VyUGFuZWxDb21wb25lbnRdLFxuICBleHBvcnRzOiBbVGltZVBpY2tlckNvbXBvbmVudCwgVGltZVBpY2tlclBhbmVsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlck1vZHVsZSB7fVxuIl19
|