@alauda/ui 6.5.9-beta.23 → 6.5.9-beta.25
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/accordion/accordion-item/accordion-item.component.d.ts +1 -1
- package/accordion/accordion.component.d.ts +1 -1
- package/anchor/anchor.component.d.ts +2 -2
- package/anchor/anchor.directive.d.ts +2 -2
- package/autocomplete/autocomplete.directive.d.ts +2 -2
- package/autocomplete/suggestion/suggestion.component.d.ts +1 -1
- package/back-top/back-top.component.d.ts +1 -1
- package/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/button/button.component.d.ts +1 -1
- package/card/card.component.d.ts +1 -1
- package/card/helper-directives.d.ts +1 -1
- package/checkbox/checkbox-group/checkbox-group.component.d.ts +1 -1
- package/checkbox/checkbox.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/range-picker/range-picker.component.d.ts +1 -1
- package/date-picker/trigger/trigger.component.d.ts +1 -1
- package/dialog/dialog-content/dialog-close.directive.d.ts +1 -1
- package/dialog/dialog-content/dialog-header.component.d.ts +1 -1
- package/drawer/component/drawer.component.d.ts +1 -1
- 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/menu/menu.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/esm2022/accordion/accordion-item/accordion-item.component.mjs +73 -0
- package/esm2022/accordion/accordion.component.mjs +29 -0
- package/{esm2020 → esm2022}/accordion/accordion.module.mjs +11 -11
- package/esm2022/anchor/anchor.component.mjs +141 -0
- package/esm2022/anchor/anchor.directive.mjs +198 -0
- package/{esm2020 → esm2022}/anchor/anchor.module.mjs +11 -11
- package/{esm2020 → esm2022}/autocomplete/autocomplete-placeholder.component.mjs +4 -4
- package/esm2022/autocomplete/autocomplete.component.mjs +72 -0
- package/esm2022/autocomplete/autocomplete.directive.mjs +278 -0
- package/{esm2020 → esm2022}/autocomplete/autocomplete.module.mjs +17 -17
- package/{esm2020 → esm2022}/autocomplete/helper-directives.mjs +4 -4
- package/esm2022/autocomplete/suggestion/suggestion.component.mjs +85 -0
- package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +25 -0
- package/esm2022/back-top/back-top.component.mjs +68 -0
- package/{esm2020 → esm2022}/back-top/back-top.module.mjs +5 -5
- package/esm2022/breadcrumb/breadcrumb-item.component.mjs +33 -0
- package/esm2022/breadcrumb/breadcrumb.component.mjs +56 -0
- package/{esm2020 → esm2022}/breadcrumb/breadcrumb.module.mjs +5 -5
- package/{esm2020 → esm2022}/button/button-group/button-group.component.mjs +4 -4
- package/esm2022/button/button.component.mjs +124 -0
- package/{esm2020 → esm2022}/button/button.module.mjs +5 -5
- package/esm2022/card/card.component.mjs +14 -0
- package/{esm2020 → esm2022}/card/card.module.mjs +13 -13
- package/esm2022/card/helper-directives.mjs +45 -0
- package/{esm2020 → esm2022}/card/section.component.mjs +4 -4
- package/esm2022/checkbox/checkbox-group/checkbox-group.component.mjs +60 -0
- package/esm2022/checkbox/checkbox.component.mjs +116 -0
- package/{esm2020 → esm2022}/checkbox/checkbox.module.mjs +5 -5
- package/esm2022/color-picker/color-picker.component.mjs +28 -0
- package/{esm2020 → esm2022}/color-picker/color-picker.module.mjs +5 -5
- package/esm2022/date-picker/calendar/date-picker-panel/component.mjs +137 -0
- package/esm2022/date-picker/calendar/footer/component.mjs +29 -0
- package/esm2022/date-picker/calendar/header/component.mjs +99 -0
- package/esm2022/date-picker/calendar/panel/picker-panel.mjs +158 -0
- package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +210 -0
- package/esm2022/date-picker/calendar/util.mjs +152 -0
- package/esm2022/date-picker/date-picker/date-picker.component.mjs +115 -0
- package/{esm2020 → esm2022}/date-picker/date-picker.module.mjs +35 -35
- package/esm2022/date-picker/range-picker/range-picker.component.mjs +88 -0
- package/esm2022/date-picker/trigger/trigger.component.mjs +76 -0
- package/esm2022/dialog/confirm-dialog/confirm-dialog-config.mjs +13 -0
- package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +88 -0
- package/esm2022/dialog/dialog-config.mjs +14 -0
- package/esm2022/dialog/dialog-content/dialog-close.directive.mjs +42 -0
- package/{esm2020 → esm2022}/dialog/dialog-content/dialog-content.component.mjs +5 -5
- package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +13 -0
- package/esm2022/dialog/dialog-content/dialog-header.component.mjs +42 -0
- package/esm2022/dialog/dialog-ref.mjs +52 -0
- package/esm2022/dialog/dialog.component.mjs +154 -0
- package/{esm2020 → esm2022}/dialog/dialog.module.mjs +22 -22
- package/esm2022/dialog/dialog.service.mjs +124 -0
- package/esm2022/drawer/component/drawer.component.mjs +248 -0
- package/{esm2020 → esm2022}/drawer/component/helper-directives.mjs +10 -10
- package/{esm2020 → esm2022}/drawer/drawer.module.mjs +11 -11
- package/esm2022/drawer/drawer.service.mjs +47 -0
- package/esm2022/dropdown/dropdown-active.directive.mjs +18 -0
- package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +50 -0
- package/esm2022/dropdown/dropdown.directive.mjs +83 -0
- package/{esm2020 → esm2022}/dropdown/dropdown.module.mjs +21 -21
- package/{esm2020 → esm2022}/dropdown/helper-directives.mjs +4 -4
- package/esm2022/dropdown/menu/menu-content.directive.mjs +59 -0
- package/esm2022/dropdown/menu/menu.component.mjs +34 -0
- package/{esm2020 → esm2022}/dropdown/menu-group/menu-group.component.mjs +4 -4
- package/esm2022/dropdown/menu-item/menu-item.component.mjs +35 -0
- package/esm2022/dropdown/submenu/submenu.component.mjs +38 -0
- package/esm2022/form/common-form.mjs +88 -0
- package/esm2022/form/form-item/form-item.component.mjs +121 -0
- package/esm2022/form/form.directive.mjs +70 -0
- package/{esm2020 → esm2022}/form/form.module.mjs +17 -17
- package/esm2022/form/helper-directives.mjs +78 -0
- package/{esm2020 → esm2022}/i18n/i18n.module.mjs +5 -5
- package/esm2022/i18n/i18n.pipe.mjs +21 -0
- package/esm2022/i18n/i18n.service.mjs +46 -0
- package/esm2022/icon/icon-register.service.mjs +75 -0
- package/esm2022/icon/icon.component.mjs +74 -0
- package/{esm2020 → esm2022}/icon/icon.module.mjs +5 -5
- package/{esm2020 → esm2022}/inline-alert/helper-directives.mjs +4 -4
- package/esm2022/inline-alert/inline-alert.component.mjs +54 -0
- package/{esm2020 → esm2022}/inline-alert/inline-alert.module.mjs +5 -5
- package/esm2022/input/autosize.directive.mjs +56 -0
- package/esm2022/input/helper-directives.mjs +43 -0
- package/esm2022/input/input-group/input-group.component.mjs +46 -0
- package/esm2022/input/input.component.mjs +59 -0
- package/{esm2020 → esm2022}/input/input.module.mjs +33 -33
- package/esm2022/input/number-input/number-input.component.mjs +115 -0
- package/esm2022/input/search/search.component.mjs +87 -0
- package/esm2022/input/tags-input/tags-input.component.mjs +264 -0
- package/esm2022/message/base-message.mjs +99 -0
- package/esm2022/message/message-wrapper.component.mjs +15 -0
- package/esm2022/message/message.component.mjs +77 -0
- package/esm2022/message/message.config.mjs +20 -0
- package/{esm2020 → esm2022}/message/message.module.mjs +5 -5
- package/{esm2020 → esm2022}/message/message.service.mjs +4 -4
- package/esm2022/notification/notification-wrapper.component.mjs +17 -0
- package/esm2022/notification/notification.component.mjs +106 -0
- package/{esm2020 → esm2022}/notification/notification.module.mjs +5 -5
- package/{esm2020 → esm2022}/notification/notification.service.mjs +4 -4
- package/esm2022/paginator/paginator-intl.mjs +24 -0
- package/esm2022/paginator/paginator.component.mjs +124 -0
- package/{esm2020 → esm2022}/paginator/paginator.module.mjs +5 -5
- package/esm2022/radio/base-radio.mjs +72 -0
- package/esm2022/radio/radio-button/radio-button.component.mjs +41 -0
- package/esm2022/radio/radio-group/radio-group.component.mjs +70 -0
- package/{esm2020 → esm2022}/radio/radio.component.mjs +5 -5
- package/{esm2020 → esm2022}/radio/radio.module.mjs +5 -5
- package/{esm2020 → esm2022}/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +13 -14
- package/esm2022/scrolling/fixed-size-table-virtual-scroll.directive.mjs +119 -0
- package/esm2022/scrolling/fixed-size-virtual-scroll.directive.mjs +27 -0
- package/{esm2020 → esm2022}/scrolling/scrolling.module.mjs +9 -9
- package/{esm2020 → esm2022}/scrolling/virtual-for-of.directive.mjs +4 -4
- package/esm2022/scrolling/virtual-scroll-viewport.component.mjs +26 -0
- package/esm2022/select/base-select.mjs +345 -0
- package/{esm2020 → esm2022}/select/helper-directives.mjs +7 -7
- package/esm2022/select/multi-select/multi-select.component.mjs +318 -0
- package/esm2022/select/option/option.component.mjs +119 -0
- package/esm2022/select/option-group/option-group.component.mjs +25 -0
- package/{esm2020 → esm2022}/select/option-placeholder.component.mjs +4 -4
- package/esm2022/select/select.component.mjs +107 -0
- package/{esm2020 → esm2022}/select/select.module.mjs +29 -29
- package/esm2022/select/validators.mjs +78 -0
- package/esm2022/shared/click-outside.directive.mjs +29 -0
- package/{esm2020 → esm2022}/shared/shared.module.mjs +5 -5
- package/esm2022/sort/sort-header.component.mjs +74 -0
- package/esm2022/sort/sort.directive.mjs +73 -0
- package/{esm2020 → esm2022}/sort/sort.module.mjs +5 -5
- package/esm2022/status-bar/status-bar.component.mjs +28 -0
- package/{esm2020 → esm2022}/status-bar/status-bar.module.mjs +5 -5
- package/esm2022/steps/steps.component.mjs +180 -0
- package/{esm2020 → esm2022}/steps/steps.module.mjs +5 -5
- package/esm2022/switch/switch.component.mjs +43 -0
- package/{esm2020 → esm2022}/switch/switch.module.mjs +5 -5
- package/esm2022/table/table-cell-def.directive.mjs +25 -0
- package/esm2022/table/table-cell.component.mjs +115 -0
- package/{esm2020 → esm2022}/table/table-cell.directive.mjs +5 -5
- package/esm2022/table/table-column-def.directive.mjs +31 -0
- package/esm2022/table/table-header-cell-def.directive.mjs +25 -0
- package/{esm2020 → esm2022}/table/table-header-cell.directive.mjs +4 -4
- package/esm2022/table/table-header-row-def.directive.mjs +33 -0
- package/{esm2020 → esm2022}/table/table-header-row.component.mjs +4 -4
- package/esm2022/table/table-placeholder.directive.mjs +33 -0
- package/esm2022/table/table-row-def.directive.mjs +34 -0
- package/esm2022/table/table-row.component.mjs +43 -0
- package/esm2022/table/table-scroll.directive.mjs +133 -0
- package/esm2022/table/table.component.mjs +79 -0
- package/{esm2020 → esm2022}/table/table.module.mjs +35 -35
- package/{esm2020 → esm2022}/table-of-contents/table-of-contents.module.mjs +5 -5
- package/esm2022/table-of-contents/toc-container.directive.mjs +111 -0
- package/esm2022/table-of-contents/toc-content.directive.mjs +39 -0
- package/esm2022/table-of-contents/toc-link.directive.mjs +48 -0
- package/esm2022/tabs/tab-body.component.mjs +151 -0
- package/esm2022/tabs/tab-context.service.mjs +30 -0
- package/esm2022/tabs/tab-group.component.mjs +256 -0
- package/esm2022/tabs/tab-header-active-indicator.component.mjs +46 -0
- package/esm2022/tabs/tab-header.component.mjs +276 -0
- package/esm2022/tabs/tab.component.mjs +77 -0
- package/{esm2020 → esm2022}/tabs/tabs.module.mjs +34 -34
- package/esm2022/tag/check-tag/check-tag.component.mjs +31 -0
- package/esm2022/tag/tag.component.mjs +63 -0
- package/{esm2020 → esm2022}/tag/tag.module.mjs +5 -5
- package/{esm2020 → esm2022}/theme/theme.module.mjs +5 -5
- package/esm2022/theme/theme.pipe.mjs +64 -0
- package/esm2022/theme/theme.service.mjs +55 -0
- package/esm2022/time-picker/component.mjs +181 -0
- package/esm2022/time-picker/panel/panel.component.mjs +240 -0
- package/{esm2020 → esm2022}/time-picker/time-picker.module.mjs +23 -23
- package/esm2022/tooltip/base-tooltip.mjs +329 -0
- package/esm2022/tooltip/tooltip-active.directive.mjs +51 -0
- package/esm2022/tooltip/tooltip-copy.directive.mjs +87 -0
- package/esm2022/tooltip/tooltip-intl.mjs +21 -0
- package/esm2022/tooltip/tooltip.component.mjs +120 -0
- package/esm2022/tooltip/tooltip.directive.mjs +44 -0
- package/{esm2020 → esm2022}/tooltip/tooltip.module.mjs +8 -8
- package/{esm2020 → esm2022}/tree-select/tree-node-placeholder.component.mjs +4 -4
- package/esm2022/tree-select/tree-select.component.mjs +350 -0
- package/{esm2020 → esm2022}/tree-select/tree-select.module.mjs +9 -9
- package/esm2022/utils/bem.mjs +44 -0
- package/{fesm2020 → fesm2022}/alauda-ui.mjs +2200 -1860
- package/fesm2022/alauda-ui.mjs.map +1 -0
- package/form/common-form.d.ts +1 -1
- package/form/form-item/form-item.component.d.ts +1 -1
- package/form/form.directive.d.ts +1 -1
- package/form/helper-directives.d.ts +1 -1
- package/icon/icon.component.d.ts +1 -1
- package/inline-alert/inline-alert.component.d.ts +1 -1
- package/input/autosize.directive.d.ts +1 -1
- package/input/input.component.d.ts +1 -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 +1 -1
- package/package.json +11 -17
- package/paginator/paginator.component.d.ts +1 -1
- package/radio/base-radio.d.ts +1 -1
- package/radio/radio-group/radio-group.component.d.ts +1 -1
- package/scrolling/fixed-size-table-virtual-scroll.directive.d.ts +1 -1
- package/scrolling/virtual-for-of.directive.d.ts +1 -1
- package/select/base-select.d.ts +1 -1
- package/select/multi-select/multi-select.component.d.ts +1 -1
- package/select/option/option.component.d.ts +1 -1
- package/select/validators.d.ts +1 -1
- package/sort/sort-header.component.d.ts +1 -1
- package/sort/sort.directive.d.ts +1 -1
- package/status-bar/status-bar.component.d.ts +1 -1
- package/steps/steps.component.d.ts +1 -1
- package/switch/switch.component.d.ts +1 -1
- package/table/table-cell.component.d.ts +2 -2
- package/table/table-cell.directive.d.ts +1 -1
- package/table/table-column-def.directive.d.ts +1 -1
- package/table/table-header-row-def.directive.d.ts +1 -1
- package/table/table-row-def.directive.d.ts +1 -1
- package/table/table-row.component.d.ts +1 -1
- package/table/table-scroll.directive.d.ts +2 -2
- package/table/table.component.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 +2 -2
- package/tabs/tab-group.component.d.ts +1 -1
- package/tabs/tab-header-active-indicator.component.d.ts +1 -1
- package/tabs/tab-header.component.d.ts +1 -1
- package/tabs/tab.component.d.ts +1 -1
- package/tag/check-tag/check-tag.component.d.ts +1 -1
- package/tag/tag.component.d.ts +1 -1
- package/time-picker/component.d.ts +1 -1
- package/time-picker/panel/panel.component.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.directive.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +2 -2
- package/esm2020/accordion/accordion-item/accordion-item.component.mjs +0 -71
- package/esm2020/accordion/accordion.component.mjs +0 -27
- package/esm2020/anchor/anchor.component.mjs +0 -137
- package/esm2020/anchor/anchor.directive.mjs +0 -182
- package/esm2020/autocomplete/autocomplete.component.mjs +0 -64
- package/esm2020/autocomplete/autocomplete.directive.mjs +0 -277
- package/esm2020/autocomplete/suggestion/suggestion.component.mjs +0 -79
- package/esm2020/autocomplete/suggestion-group/suggestion-group.component.mjs +0 -23
- package/esm2020/back-top/back-top.component.mjs +0 -65
- package/esm2020/breadcrumb/breadcrumb-item.component.mjs +0 -32
- package/esm2020/breadcrumb/breadcrumb.component.mjs +0 -57
- package/esm2020/button/button.component.mjs +0 -121
- package/esm2020/card/card.component.mjs +0 -16
- package/esm2020/card/helper-directives.mjs +0 -47
- package/esm2020/checkbox/checkbox-group/checkbox-group.component.mjs +0 -61
- package/esm2020/checkbox/checkbox.component.mjs +0 -112
- package/esm2020/color-picker/color-picker.component.mjs +0 -28
- package/esm2020/date-picker/calendar/date-picker-panel/component.mjs +0 -128
- package/esm2020/date-picker/calendar/footer/component.mjs +0 -29
- package/esm2020/date-picker/calendar/header/component.mjs +0 -99
- package/esm2020/date-picker/calendar/panel/picker-panel.mjs +0 -151
- package/esm2020/date-picker/calendar/range-picker-panel/component.mjs +0 -207
- package/esm2020/date-picker/calendar/util.mjs +0 -145
- package/esm2020/date-picker/date-picker/date-picker.component.mjs +0 -110
- package/esm2020/date-picker/range-picker/range-picker.component.mjs +0 -86
- package/esm2020/date-picker/trigger/trigger.component.mjs +0 -69
- package/esm2020/dialog/confirm-dialog/confirm-dialog-config.mjs +0 -12
- package/esm2020/dialog/confirm-dialog/confirm-dialog.component.mjs +0 -85
- package/esm2020/dialog/dialog-config.mjs +0 -15
- package/esm2020/dialog/dialog-content/dialog-close.directive.mjs +0 -38
- package/esm2020/dialog/dialog-content/dialog-footer.component.mjs +0 -15
- package/esm2020/dialog/dialog-content/dialog-header.component.mjs +0 -39
- package/esm2020/dialog/dialog-ref.mjs +0 -48
- package/esm2020/dialog/dialog.component.mjs +0 -147
- package/esm2020/dialog/dialog.service.mjs +0 -120
- package/esm2020/drawer/component/drawer.component.mjs +0 -229
- package/esm2020/drawer/drawer.service.mjs +0 -44
- package/esm2020/dropdown/dropdown-active.directive.mjs +0 -21
- package/esm2020/dropdown/dropdown-button/dropdown-button.component.mjs +0 -51
- package/esm2020/dropdown/dropdown.directive.mjs +0 -81
- package/esm2020/dropdown/menu/menu-content.directive.mjs +0 -51
- package/esm2020/dropdown/menu/menu.component.mjs +0 -33
- package/esm2020/dropdown/menu-item/menu-item.component.mjs +0 -37
- package/esm2020/dropdown/submenu/submenu.component.mjs +0 -40
- package/esm2020/form/common-form.mjs +0 -84
- package/esm2020/form/form-item/form-item.component.mjs +0 -108
- package/esm2020/form/form.directive.mjs +0 -69
- package/esm2020/form/helper-directives.mjs +0 -80
- package/esm2020/i18n/i18n.pipe.mjs +0 -20
- package/esm2020/i18n/i18n.service.mjs +0 -43
- package/esm2020/icon/icon-register.service.mjs +0 -73
- package/esm2020/icon/icon.component.mjs +0 -65
- package/esm2020/inline-alert/inline-alert.component.mjs +0 -53
- package/esm2020/input/autosize.directive.mjs +0 -54
- package/esm2020/input/helper-directives.mjs +0 -43
- package/esm2020/input/input-group/input-group.component.mjs +0 -39
- package/esm2020/input/input.component.mjs +0 -57
- package/esm2020/input/number-input/number-input.component.mjs +0 -112
- package/esm2020/input/search/search.component.mjs +0 -88
- package/esm2020/input/tags-input/tags-input.component.mjs +0 -255
- package/esm2020/message/base-message.mjs +0 -90
- package/esm2020/message/message-wrapper.component.mjs +0 -14
- package/esm2020/message/message.component.mjs +0 -70
- package/esm2020/message/message.config.mjs +0 -16
- package/esm2020/notification/notification-wrapper.component.mjs +0 -16
- package/esm2020/notification/notification.component.mjs +0 -103
- package/esm2020/paginator/paginator-intl.mjs +0 -26
- package/esm2020/paginator/paginator.component.mjs +0 -117
- package/esm2020/radio/base-radio.mjs +0 -67
- package/esm2020/radio/radio-button/radio-button.component.mjs +0 -41
- package/esm2020/radio/radio-group/radio-group.component.mjs +0 -73
- package/esm2020/scrolling/fixed-size-table-virtual-scroll.directive.mjs +0 -119
- package/esm2020/scrolling/fixed-size-virtual-scroll.directive.mjs +0 -27
- package/esm2020/scrolling/virtual-scroll-viewport.component.mjs +0 -26
- package/esm2020/select/base-select.mjs +0 -334
- package/esm2020/select/multi-select/multi-select.component.mjs +0 -310
- package/esm2020/select/option/option.component.mjs +0 -112
- package/esm2020/select/option-group/option-group.component.mjs +0 -23
- package/esm2020/select/select.component.mjs +0 -107
- package/esm2020/select/validators.mjs +0 -75
- package/esm2020/shared/click-outside.directive.mjs +0 -28
- package/esm2020/sort/sort-header.component.mjs +0 -68
- package/esm2020/sort/sort.directive.mjs +0 -74
- package/esm2020/status-bar/status-bar.component.mjs +0 -29
- package/esm2020/steps/steps.component.mjs +0 -180
- package/esm2020/switch/switch.component.mjs +0 -46
- package/esm2020/table/table-cell-def.directive.mjs +0 -25
- package/esm2020/table/table-cell.component.mjs +0 -121
- package/esm2020/table/table-column-def.directive.mjs +0 -31
- package/esm2020/table/table-header-cell-def.directive.mjs +0 -25
- package/esm2020/table/table-header-row-def.directive.mjs +0 -35
- package/esm2020/table/table-placeholder.directive.mjs +0 -30
- package/esm2020/table/table-row-def.directive.mjs +0 -37
- package/esm2020/table/table-row.component.mjs +0 -42
- package/esm2020/table/table-scroll.directive.mjs +0 -133
- package/esm2020/table/table.component.mjs +0 -76
- package/esm2020/table-of-contents/toc-container.directive.mjs +0 -109
- package/esm2020/table-of-contents/toc-content.directive.mjs +0 -35
- package/esm2020/table-of-contents/toc-link.directive.mjs +0 -44
- package/esm2020/tabs/tab-body.component.mjs +0 -147
- package/esm2020/tabs/tab-context.service.mjs +0 -28
- package/esm2020/tabs/tab-group.component.mjs +0 -246
- package/esm2020/tabs/tab-header-active-indicator.component.mjs +0 -44
- package/esm2020/tabs/tab-header.component.mjs +0 -264
- package/esm2020/tabs/tab.component.mjs +0 -71
- package/esm2020/tag/check-tag/check-tag.component.mjs +0 -33
- package/esm2020/tag/tag.component.mjs +0 -65
- package/esm2020/theme/theme.pipe.mjs +0 -69
- package/esm2020/theme/theme.service.mjs +0 -52
- package/esm2020/time-picker/component.mjs +0 -179
- package/esm2020/time-picker/panel/panel.component.mjs +0 -228
- package/esm2020/tooltip/base-tooltip.mjs +0 -318
- package/esm2020/tooltip/tooltip-active.directive.mjs +0 -49
- package/esm2020/tooltip/tooltip-copy.directive.mjs +0 -82
- package/esm2020/tooltip/tooltip-intl.mjs +0 -23
- package/esm2020/tooltip/tooltip.component.mjs +0 -107
- package/esm2020/tooltip/tooltip.directive.mjs +0 -47
- package/esm2020/tree-select/tree-select.component.mjs +0 -339
- package/esm2020/utils/bem.mjs +0 -43
- package/fesm2015/alauda-ui.mjs +0 -11663
- package/fesm2015/alauda-ui.mjs.map +0 -1
- package/fesm2020/alauda-ui.mjs.map +0 -1
- /package/{esm2020 → esm2022}/accordion/index.mjs +0 -0
- /package/{esm2020 → esm2022}/alauda-ui.mjs +0 -0
- /package/{esm2020 → esm2022}/anchor/index.mjs +0 -0
- /package/{esm2020 → esm2022}/anchor/types.mjs +0 -0
- /package/{esm2020 → esm2022}/anchor/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/autocomplete/autocomplete.types.mjs +0 -0
- /package/{esm2020 → esm2022}/autocomplete/index.mjs +0 -0
- /package/{esm2020 → esm2022}/back-top/index.mjs +0 -0
- /package/{esm2020 → esm2022}/breadcrumb/index.mjs +0 -0
- /package/{esm2020 → esm2022}/button/button.types.mjs +0 -0
- /package/{esm2020 → esm2022}/button/index.mjs +0 -0
- /package/{esm2020 → esm2022}/card/index.mjs +0 -0
- /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
- /package/{esm2020 → esm2022}/color-picker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/core/animation/animation-consts.mjs +0 -0
- /package/{esm2020 → esm2022}/date-picker/calendar/constant.mjs +0 -0
- /package/{esm2020 → esm2022}/date-picker/date-picker.type.mjs +0 -0
- /package/{esm2020 → esm2022}/date-picker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/dialog/dialog-animations.mjs +0 -0
- /package/{esm2020 → esm2022}/dialog/dialog.types.mjs +0 -0
- /package/{esm2020 → esm2022}/dialog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/dialog/utils/errors.mjs +0 -0
- /package/{esm2020 → esm2022}/dialog/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/component/drawer-ref.mjs +0 -0
- /package/{esm2020 → esm2022}/drawer/index.mjs +0 -0
- /package/{esm2020 → esm2022}/dropdown/dropdown.types.mjs +0 -0
- /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
- /package/{esm2020 → esm2022}/form/form.types.mjs +0 -0
- /package/{esm2020 → esm2022}/form/index.mjs +0 -0
- /package/{esm2020 → esm2022}/i18n/i18n.type.mjs +0 -0
- /package/{esm2020 → esm2022}/i18n/index.mjs +0 -0
- /package/{esm2020 → esm2022}/i18n/language/en.mjs +0 -0
- /package/{esm2020 → esm2022}/i18n/language/zh.mjs +0 -0
- /package/{esm2020 → esm2022}/icon/icons.mjs +0 -0
- /package/{esm2020 → esm2022}/icon/index.mjs +0 -0
- /package/{esm2020 → esm2022}/icon/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/inline-alert/index.mjs +0 -0
- /package/{esm2020 → esm2022}/inline-alert/inline-alert.types.mjs +0 -0
- /package/{esm2020 → esm2022}/input/index.mjs +0 -0
- /package/{esm2020 → esm2022}/input/tags-input/with-max-row-count.mjs +0 -0
- /package/{esm2020 → esm2022}/input/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/message/index.mjs +0 -0
- /package/{esm2020 → esm2022}/message/message-animations.mjs +0 -0
- /package/{esm2020 → esm2022}/notification/index.mjs +0 -0
- /package/{esm2020 → esm2022}/notification/notification.config.mjs +0 -0
- /package/{esm2020 → esm2022}/paginator/index.mjs +0 -0
- /package/{esm2020 → esm2022}/radio/index.mjs +0 -0
- /package/{esm2020 → esm2022}/radio/radio.types.mjs +0 -0
- /package/{esm2020 → esm2022}/scrolling/index.mjs +0 -0
- /package/{esm2020 → esm2022}/select/index.mjs +0 -0
- /package/{esm2020 → esm2022}/select/select.types.mjs +0 -0
- /package/{esm2020 → esm2022}/sort/index.mjs +0 -0
- /package/{esm2020 → esm2022}/sort/sort-errors.mjs +0 -0
- /package/{esm2020 → esm2022}/sort/sort.types.mjs +0 -0
- /package/{esm2020 → esm2022}/status-bar/index.mjs +0 -0
- /package/{esm2020 → esm2022}/status-bar/status-bar.types.mjs +0 -0
- /package/{esm2020 → esm2022}/steps/index.mjs +0 -0
- /package/{esm2020 → esm2022}/steps/types.mjs +0 -0
- /package/{esm2020 → esm2022}/switch/index.mjs +0 -0
- /package/{esm2020 → esm2022}/table/index.mjs +0 -0
- /package/{esm2020 → esm2022}/table-of-contents/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tabs/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tabs/tabs.types.mjs +0 -0
- /package/{esm2020 → esm2022}/tag/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tag/tag.types.mjs +0 -0
- /package/{esm2020 → esm2022}/theme/index.mjs +0 -0
- /package/{esm2020 → esm2022}/theme/theme.types.mjs +0 -0
- /package/{esm2020 → esm2022}/theme/utils.mjs +0 -0
- /package/{esm2020 → esm2022}/time-picker/constant.mjs +0 -0
- /package/{esm2020 → esm2022}/time-picker/index.mjs +0 -0
- /package/{esm2020 → esm2022}/time-picker/time-picker.type.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/tooltip.types.mjs +0 -0
- /package/{esm2020 → esm2022}/tooltip/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tree-select/index.mjs +0 -0
- /package/{esm2020 → esm2022}/tree-select/tree-select.types.mjs +0 -0
- /package/{esm2020 → esm2022}/types.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/animations.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/async.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/coercion.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/fn.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/observe-dom.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/operators.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/scroll-into-view.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/watch-content-exist.mjs +0 -0
|
@@ -1,228 +0,0 @@
|
|
|
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 "@angular/common";
|
|
12
|
-
import * as i2 from "../../button/button.component";
|
|
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
|
-
set format(value) {
|
|
18
|
-
if (value != null) {
|
|
19
|
-
this._format = value;
|
|
20
|
-
const charSet = new Set(value);
|
|
21
|
-
this.hourEnabled = charSet.has('H') || charSet.has('h');
|
|
22
|
-
this.minuteEnabled = charSet.has('m');
|
|
23
|
-
this.secondEnabled = charSet.has('s');
|
|
24
|
-
this.enabledColumns = [
|
|
25
|
-
this.hourEnabled,
|
|
26
|
-
this.minuteEnabled,
|
|
27
|
-
this.secondEnabled,
|
|
28
|
-
].filter(Boolean).length;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
get format() {
|
|
32
|
-
return this._format;
|
|
33
|
-
}
|
|
34
|
-
get totalWidth() {
|
|
35
|
-
return this.enabledColumns * TIME_PICKER_COLUMN_WIDTH;
|
|
36
|
-
}
|
|
37
|
-
onMousedown() {
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
constructor(cdr) {
|
|
41
|
-
super(cdr);
|
|
42
|
-
this.cdr = cdr;
|
|
43
|
-
this.hourStep = 1;
|
|
44
|
-
this.minuteStep = 1;
|
|
45
|
-
this.secondStep = 1;
|
|
46
|
-
this.confirm = new EventEmitter();
|
|
47
|
-
this.TimePickerControlType = TimePickerControlType;
|
|
48
|
-
this.HOUR_ITEM_CONFIG = HOUR_ITEMS;
|
|
49
|
-
this.MINUTE_ITEM_CONFIG = MINUTE_ITEMS;
|
|
50
|
-
this.SECOND_ITEM_CONFIG = SECOND_ITEMS;
|
|
51
|
-
this.CONTROL_ITEM_HEIGHT = CONTROL_ITEM_HEIGHT;
|
|
52
|
-
this.ComponentSize = ComponentSize;
|
|
53
|
-
this.bem = bem;
|
|
54
|
-
this.enabledColumns = 0;
|
|
55
|
-
this.firstScrolled = false;
|
|
56
|
-
this.model$.subscribe(_ => {
|
|
57
|
-
this.cdr.markForCheck();
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
isDisabled(value, type) {
|
|
61
|
-
const currentValue = this.model;
|
|
62
|
-
if (this.disabled) {
|
|
63
|
-
return true;
|
|
64
|
-
}
|
|
65
|
-
if (type === TimePickerControlType.Hour) {
|
|
66
|
-
return (!this.disableHours ? [] : this.disableHours()).includes(value);
|
|
67
|
-
}
|
|
68
|
-
if (type === TimePickerControlType.Minute) {
|
|
69
|
-
return (!this.disableMinutes ? [] : this.disableMinutes(currentValue?.hour())).includes(value);
|
|
70
|
-
}
|
|
71
|
-
if (type === TimePickerControlType.Second) {
|
|
72
|
-
return (!this.disableSeconds
|
|
73
|
-
? []
|
|
74
|
-
: this.disableSeconds(currentValue?.hour(), currentValue?.minute())).includes(value);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
ngOnChanges({ hourStep, minuteStep, secondStep }) {
|
|
78
|
-
if (hourStep?.currentValue > 0) {
|
|
79
|
-
this.HOUR_ITEM_CONFIG = HOUR_ITEMS.filter(i => i % hourStep.currentValue === 0);
|
|
80
|
-
}
|
|
81
|
-
if (minuteStep?.currentValue > 0) {
|
|
82
|
-
this.MINUTE_ITEM_CONFIG = MINUTE_ITEMS.filter(i => i % minuteStep.currentValue === 0);
|
|
83
|
-
}
|
|
84
|
-
if (secondStep?.currentValue > 0) {
|
|
85
|
-
this.SECOND_ITEM_CONFIG = SECOND_ITEMS.filter(i => i % secondStep.currentValue === 0);
|
|
86
|
-
}
|
|
87
|
-
this.cdr.markForCheck();
|
|
88
|
-
}
|
|
89
|
-
writeValue(value) {
|
|
90
|
-
super.writeValue(value);
|
|
91
|
-
this.syncScrollOffset(!this.firstScrolled ? 0 : 120, value);
|
|
92
|
-
}
|
|
93
|
-
selectValue(value, type) {
|
|
94
|
-
if (this.isDisabled(value, type)) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
this.firstScrolled = true;
|
|
98
|
-
const result = this.syncValue(value, type, this.model);
|
|
99
|
-
this.syncScrollOffset(120, result);
|
|
100
|
-
}
|
|
101
|
-
syncValue(value, type, currentValue) {
|
|
102
|
-
if (!type) {
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
const result = (currentValue ||
|
|
106
|
-
updateDateByTimeModel(dayjs(), { hour: 0, minute: 0, second: 0 })).set(type, value);
|
|
107
|
-
this.emitModel(result);
|
|
108
|
-
return result;
|
|
109
|
-
}
|
|
110
|
-
syncScrollOffset(duration, value) {
|
|
111
|
-
const empty = !value;
|
|
112
|
-
const config = [
|
|
113
|
-
{
|
|
114
|
-
ref: this.hourRef,
|
|
115
|
-
enabled: this.hourEnabled,
|
|
116
|
-
step: this.hourStep,
|
|
117
|
-
type: 'hour',
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
ref: this.minuteRef,
|
|
121
|
-
enabled: this.minuteEnabled,
|
|
122
|
-
step: this.minuteStep,
|
|
123
|
-
type: 'minute',
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
ref: this.secondRef,
|
|
127
|
-
enabled: this.secondEnabled,
|
|
128
|
-
step: this.secondStep,
|
|
129
|
-
type: 'second',
|
|
130
|
-
},
|
|
131
|
-
];
|
|
132
|
-
config.forEach(cf => {
|
|
133
|
-
if (cf.enabled && cf.ref) {
|
|
134
|
-
this.scrollByValue(cf.ref.nativeElement, empty ? 0 : value.get(cf.type), cf.step, empty ? 0 : duration);
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
if (!empty) {
|
|
138
|
-
this.firstScrolled = true;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
scrollByValue(element, value, divideBy, duration) {
|
|
142
|
-
const targetOffset = (value * CONTROL_ITEM_HEIGHT) / divideBy;
|
|
143
|
-
const currentTop = element.scrollTop;
|
|
144
|
-
if (currentTop === targetOffset) {
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
if (!duration) {
|
|
148
|
-
element.scrollTop = targetOffset;
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
const difference = targetOffset - currentTop;
|
|
152
|
-
const perTick = (difference / duration) * 10;
|
|
153
|
-
requestAnimationFrame(() => {
|
|
154
|
-
element.scrollTop = currentTop + perTick;
|
|
155
|
-
if (element.scrollTop === targetOffset) {
|
|
156
|
-
return;
|
|
157
|
-
}
|
|
158
|
-
this.scrollByValue(element, value, divideBy, duration - 10);
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
matchValue(value, type, currDate) {
|
|
163
|
-
return currDate?.get(type) === value;
|
|
164
|
-
}
|
|
165
|
-
getControlTypeConfig(type) {
|
|
166
|
-
return {
|
|
167
|
-
[TimePickerControlType.Hour]: this.HOUR_ITEM_CONFIG,
|
|
168
|
-
[TimePickerControlType.Minute]: this.MINUTE_ITEM_CONFIG,
|
|
169
|
-
[TimePickerControlType.Second]: this.SECOND_ITEM_CONFIG,
|
|
170
|
-
}[type];
|
|
171
|
-
}
|
|
172
|
-
selectNow() {
|
|
173
|
-
this.firstScrolled = true;
|
|
174
|
-
this.emitModel(dayjs());
|
|
175
|
-
}
|
|
176
|
-
trackBy(_index, content) {
|
|
177
|
-
return content;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
TimePickerPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TimePickerPanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
181
|
-
TimePickerPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", 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: [
|
|
182
|
-
{
|
|
183
|
-
provide: NG_VALUE_ACCESSOR,
|
|
184
|
-
useExisting: forwardRef(() => TimePickerPanelComponent),
|
|
185
|
-
multi: true,
|
|
186
|
-
},
|
|
187
|
-
], 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"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i3.I18nPipe, name: "auiI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TimePickerPanelComponent, decorators: [{
|
|
189
|
-
type: Component,
|
|
190
|
-
args: [{ selector: 'aui-time-picker-panel', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
191
|
-
{
|
|
192
|
-
provide: NG_VALUE_ACCESSOR,
|
|
193
|
-
useExisting: forwardRef(() => TimePickerPanelComponent),
|
|
194
|
-
multi: true,
|
|
195
|
-
},
|
|
196
|
-
], 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"] }]
|
|
197
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { format: [{
|
|
198
|
-
type: Input
|
|
199
|
-
}], onMousedown: [{
|
|
200
|
-
type: HostListener,
|
|
201
|
-
args: ['mousedown']
|
|
202
|
-
}], hourStep: [{
|
|
203
|
-
type: Input
|
|
204
|
-
}], minuteStep: [{
|
|
205
|
-
type: Input
|
|
206
|
-
}], secondStep: [{
|
|
207
|
-
type: Input
|
|
208
|
-
}], footerTemplate: [{
|
|
209
|
-
type: Input
|
|
210
|
-
}], confirm: [{
|
|
211
|
-
type: Output
|
|
212
|
-
}], disableHours: [{
|
|
213
|
-
type: Input
|
|
214
|
-
}], disableMinutes: [{
|
|
215
|
-
type: Input
|
|
216
|
-
}], disableSeconds: [{
|
|
217
|
-
type: Input
|
|
218
|
-
}], hourRef: [{
|
|
219
|
-
type: ViewChild,
|
|
220
|
-
args: ['hourRef', { static: false }]
|
|
221
|
-
}], minuteRef: [{
|
|
222
|
-
type: ViewChild,
|
|
223
|
-
args: ['minuteRef', { static: false }]
|
|
224
|
-
}], secondRef: [{
|
|
225
|
-
type: ViewChild,
|
|
226
|
-
args: ['secondRef', { static: false }]
|
|
227
|
-
}] } });
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL3BhbmVsL3BhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9wYW5lbC9wYW5lbC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFHTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEtBQWdCLE1BQU0sT0FBTyxDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxHQUNiLE1BQU0sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQUU1RCxNQUFNLHdCQUF3QixHQUFHLEVBQUUsQ0FBQztBQUNwQyxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQWdCOUMsTUFBTSxPQUFPLHdCQUNYLFNBQVEsaUJBQXdCO0lBR2hDLElBQ0ksTUFBTSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcs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LENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7WUFDdkQsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLDRWQzlDSCx3akdBcUdBOzJGRHJEYSx3QkFBd0I7a0JBZHBDLFNBQVM7K0JBQ0UsdUJBQXVCLGlCQUdsQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjt3R0FPRyxNQUFNO3NCQURULEtBQUs7Z0JBMEJxQixXQUFXO3NCQUFyQyxZQUFZO3VCQUFDLFdBQVc7Z0JBS3pCLFFBQVE7c0JBRFAsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixPQUFPO3NCQUROLE1BQU07Z0JBSVAsWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBaUJOLE9BQU87c0JBRE4sU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUl2QyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFJekMsU0FBUztzQkFEUixTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgZGF5anMsIHsgRGF5anMgfSBmcm9tICdkYXlqcyc7XG5cbmltcG9ydCB7IHVwZGF0ZURhdGVCeVRpbWVNb2RlbCB9IGZyb20gJy4uLy4uL2RhdGUtcGlja2VyL2NhbGVuZGFyL3V0aWwnO1xuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi9mb3JtL2NvbW1vbi1mb3JtJztcbmltcG9ydCB7IENvbXBvbmVudFNpemUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBidWlsZEJlbSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7XG4gIENPTlRST0xfSVRFTV9IRUlHSFQsXG4gIEhPVVJfSVRFTVMsXG4gIE1JTlVURV9JVEVNUyxcbiAgU0VDT05EX0lURU1TLFxufSBmcm9tICcuLi9jb25zdGFudCc7XG5pbXBvcnQgeyBUaW1lUGlja2VyQ29udHJvbFR5cGUgfSBmcm9tICcuLi90aW1lLXBpY2tlci50eXBlJztcblxuY29uc3QgVElNRV9QSUNLRVJfQ09MVU1OX1dJRFRIID0gODA7XG5jb25zdCBiZW0gPSBidWlsZEJlbSgnYXVpLXRpbWUtcGlja2VyLXBhbmVsJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS10aW1lLXBpY2tlci1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYW5lbC50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGFuZWwuc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaW1lUGlja2VyUGFuZWxDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlclBhbmVsQ29tcG9uZW50XG4gIGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8RGF5anM+XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpXG4gIHNldCBmb3JtYXQodmFsdWU6IHN0cmluZykge1xuICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLl9mb3JtYXQgPSB2YWx1ZTtcbiAgICAgIGNvbnN0IGNoYXJTZXQgPSBuZXcgU2V0KHZhbHVlKTtcbiAgICAgIHRoaXMuaG91ckVuYWJsZWQgPSBjaGFyU2V0LmhhcygnSCcpIHx8IGNoYXJTZXQuaGFzKCdoJyk7XG4gICAgICB0aGlzLm1pbnV0ZUVuYWJsZWQgPSBjaGFyU2V0LmhhcygnbScpO1xuICAgICAgdGhpcy5zZWNvbmRFbmFibGVkID0gY2hhclNldC5oYXMoJ3MnKTtcbiAgICAgIHRoaXMuZW5hYmxlZENvbHVtbnMgPSBbXG4gICAgICAgIHRoaXMuaG91ckVuYWJsZWQsXG4gICAgICAgIHRoaXMubWludXRlRW5hYmxlZCxcbiAgICAgICAgdGhpcy5zZWNvbmRFbmFibGVkLFxuICAgICAgXS5maWx0ZXIoQm9vbGVhbikubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIGdldCBmb3JtYXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybWF0O1xuICB9XG5cbiAgcHJpdmF0ZSBfZm9ybWF0OiBzdHJpbmc7XG5cbiAgZ2V0IHRvdGFsV2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZW5hYmxlZENvbHVtbnMgKiBUSU1FX1BJQ0tFUl9DT0xVTU5fV0lEVEg7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nKSBvbk1vdXNlZG93bigpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBASW5wdXQoKVxuICBob3VyU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgbWludXRlU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgc2Vjb25kU3RlcCA9IDE7XG5cbiAgQElucHV0KClcbiAgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIEBPdXRwdXQoKVxuICBjb25maXJtID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVIb3VyczogKCkgPT4gbnVtYmVyW107XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZU1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PiBudW1iZXJbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlU2Vjb25kczogKGhvdXI/OiBudW1iZXIsIG1pbnV0ZT86IG51bWJlcikgPT4gbnVtYmVyW107XG5cbiAgaG91ckVuYWJsZWQ6IGJvb2xlYW47XG4gIG1pbnV0ZUVuYWJsZWQ6IGJvb2xlYW47XG4gIHNlY29uZEVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgVGltZVBpY2tlckNvbnRyb2xUeXBlID0gVGltZVBpY2tlckNvbnRyb2xUeXBlO1xuICBIT1VSX0lURU1fQ09ORklHID0gSE9VUl9JVEVNUztcbiAgTUlOVVRFX0lURU1fQ09ORklHID0gTUlOVVRFX0lURU1TO1xuICBTRUNPTkRfSVRFTV9DT05GSUcgPSBTRUNPTkRfSVRFTVM7XG5cbiAgQ09OVFJPTF9JVEVNX0hFSUdIVCA9IENPTlRST0xfSVRFTV9IRUlHSFQ7XG4gIENvbXBvbmVudFNpemUgPSBDb21wb25lbnRTaXplO1xuICBiZW0gPSBiZW07XG5cbiAgQFZpZXdDaGlsZCgnaG91clJlZicsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBob3VyUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdtaW51dGVSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgbWludXRlUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdzZWNvbmRSZWYnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgc2Vjb25kUmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBlbmFibGVkQ29sdW1ucyA9IDA7XG5cbiAgLy8g55So5LqO5o6n5Yi25Yid5qyh5rua5Yqo77yM5piv5ZCm5bGV56S65rua5Yqo5Yqo55S75pWI5p6cXG4gIGZpcnN0U2Nyb2xsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgb3ZlcnJpZGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGNkcik7XG4gICAgdGhpcy5tb2RlbCQuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBpc0Rpc2FibGVkKHZhbHVlOiBudW1iZXIsIHR5cGU6IFRpbWVQaWNrZXJDb250cm9sVHlwZSkge1xuICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMubW9kZWw7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpIHtcbiAgICAgIHJldHVybiAoIXRoaXMuZGlzYWJsZUhvdXJzID8gW10gOiB0aGlzLmRpc2FibGVIb3VycygpKS5pbmNsdWRlcyh2YWx1ZSk7XG4gICAgfVxuICAgIGlmICh0eXBlID09PSBUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICAhdGhpcy5kaXNhYmxlTWludXRlcyA/IFtdIDogdGhpcy5kaXNhYmxlTWludXRlcyhjdXJyZW50VmFsdWU/LmhvdXIoKSlcbiAgICAgICkuaW5jbHVkZXModmFsdWUpO1xuICAgIH1cbiAgICBpZiAodHlwZSA9PT0gVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZCkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgIXRoaXMuZGlzYWJsZVNlY29uZHNcbiAgICAgICAgICA/IFtdXG4gICAgICAgICAgOiB0aGlzLmRpc2FibGVTZWNvbmRzKGN1cnJlbnRWYWx1ZT8uaG91cigpLCBjdXJyZW50VmFsdWU/Lm1pbnV0ZSgpKVxuICAgICAgKS5pbmNsdWRlcyh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyBob3VyU3RlcCwgbWludXRlU3RlcCwgc2Vjb25kU3RlcCB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGhvdXJTdGVwPy5jdXJyZW50VmFsdWUgPiAwKSB7XG4gICAgICB0aGlzLkhPVVJfSVRFTV9DT05GSUcgPSBIT1VSX0lURU1TLmZpbHRlcihcbiAgICAgICAgaSA9PiBpICUgaG91clN0ZXAuY3VycmVudFZhbHVlID09PSAwLFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKG1pbnV0ZVN0ZXA/LmN1cnJlbnRWYWx1ZSA+IDApIHtcbiAgICAgIHRoaXMuTUlOVVRFX0lURU1fQ09ORklHID0gTUlOVVRFX0lURU1TLmZpbHRlcihcbiAgICAgICAgaSA9PiBpICUgbWludXRlU3RlcC5jdXJyZW50VmFsdWUgPT09IDAsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoc2Vjb25kU3RlcD8uY3VycmVudFZhbHVlID4gMCkge1xuICAgICAgdGhpcy5TRUNPTkRfSVRFTV9DT05GSUcgPSBTRUNPTkRfSVRFTVMuZmlsdGVyKFxuICAgICAgICBpID0+IGkgJSBzZWNvbmRTdGVwLmN1cnJlbnRWYWx1ZSA9PT0gMCxcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogRGF5anMpIHtcbiAgICBzdXBlci53cml0ZVZhbHVlKHZhbHVlKTtcbiAgICB0aGlzLnN5bmNTY3JvbGxPZmZzZXQoIXRoaXMuZmlyc3RTY3JvbGxlZCA/IDAgOiAxMjAsIHZhbHVlKTtcbiAgfVxuXG4gIHNlbGVjdFZhbHVlKHZhbHVlOiBudW1iZXIsIHR5cGU6IFRpbWVQaWNrZXJDb250cm9sVHlwZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzRGlzYWJsZWQodmFsdWUsIHR5cGUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZmlyc3RTY3JvbGxlZCA9IHRydWU7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5zeW5jVmFsdWUodmFsdWUsIHR5cGUsIHRoaXMubW9kZWwpO1xuICAgIHRoaXMuc3luY1Njcm9sbE9mZnNldCgxMjAsIHJlc3VsdCk7XG4gIH1cblxuICBzeW5jVmFsdWUodmFsdWU6IG51bWJlciwgdHlwZTogVGltZVBpY2tlckNvbnRyb2xUeXBlLCBjdXJyZW50VmFsdWU6IERheWpzKSB7XG4gICAgaWYgKCF0eXBlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IChcbiAgICAgIGN1cnJlbnRWYWx1ZSB8fFxuICAgICAgdXBkYXRlRGF0ZUJ5VGltZU1vZGVsKGRheWpzKCksIHsgaG91cjogMCwgbWludXRlOiAwLCBzZWNvbmQ6IDAgfSlcbiAgICApLnNldCh0eXBlLCB2YWx1ZSk7XG4gICAgdGhpcy5lbWl0TW9kZWwocmVzdWx0KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgc3luY1Njcm9sbE9mZnNldChkdXJhdGlvbjogbnVtYmVyLCB2YWx1ZTogRGF5anMpIHtcbiAgICBjb25zdCBlbXB0eSA9ICF2YWx1ZTtcbiAgICBjb25zdCBjb25maWcgPSBbXG4gICAgICB7XG4gICAgICAgIHJlZjogdGhpcy5ob3VyUmVmLFxuICAgICAgICBlbmFibGVkOiB0aGlzLmhvdXJFbmFibGVkLFxuICAgICAgICBzdGVwOiB0aGlzLmhvdXJTdGVwLFxuICAgICAgICB0eXBlOiAnaG91cicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICByZWY6IHRoaXMubWludXRlUmVmLFxuICAgICAgICBlbmFibGVkOiB0aGlzLm1pbnV0ZUVuYWJsZWQsXG4gICAgICAgIHN0ZXA6IHRoaXMubWludXRlU3RlcCxcbiAgICAgICAgdHlwZTogJ21pbnV0ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICByZWY6IHRoaXMuc2Vjb25kUmVmLFxuICAgICAgICBlbmFibGVkOiB0aGlzLnNlY29uZEVuYWJsZWQsXG4gICAgICAgIHN0ZXA6IHRoaXMuc2Vjb25kU3RlcCxcbiAgICAgICAgdHlwZTogJ3NlY29uZCcsXG4gICAgICB9LFxuICAgIF0gYXMgY29uc3Q7XG5cbiAgICBjb25maWcuZm9yRWFjaChjZiA9PiB7XG4gICAgICBpZiAoY2YuZW5hYmxlZCAmJiBjZi5yZWYpIHtcbiAgICAgICAgdGhpcy5zY3JvbGxCeVZhbHVlKFxuICAgICAgICAgIGNmLnJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgIGVtcHR5ID8gMCA6IHZhbHVlLmdldChjZi50eXBlKSxcbiAgICAgICAgICBjZi5zdGVwLFxuICAgICAgICAgIGVtcHR5ID8gMCA6IGR1cmF0aW9uLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICghZW1wdHkpIHtcbiAgICAgIHRoaXMuZmlyc3RTY3JvbGxlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzY3JvbGxCeVZhbHVlKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgZGl2aWRlQnk6IG51bWJlcixcbiAgICBkdXJhdGlvbjogbnVtYmVyLFxuICApIHtcbiAgICBjb25zdCB0YXJnZXRPZmZzZXQgPSAodmFsdWUgKiBDT05UUk9MX0lURU1fSEVJR0hUKSAvIGRpdmlkZUJ5O1xuICAgIGNvbnN0IGN1cnJlbnRUb3AgPSBlbGVtZW50LnNjcm9sbFRvcDtcbiAgICBpZiAoY3VycmVudFRvcCA9PT0gdGFyZ2V0T2Zmc2V0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghZHVyYXRpb24pIHtcbiAgICAgIGVsZW1lbnQuc2Nyb2xsVG9wID0gdGFyZ2V0T2Zmc2V0O1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBkaWZmZXJlbmNlID0gdGFyZ2V0T2Zmc2V0IC0gY3VycmVudFRvcDtcbiAgICAgIC8vIOavj+S4qnRpY2vmu5rliqjot53nprtcbiAgICAgIGNvbnN0IHBlclRpY2sgPSAoZGlmZmVyZW5jZSAvIGR1cmF0aW9uKSAqIDEwO1xuXG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBlbGVtZW50LnNjcm9sbFRvcCA9IGN1cnJlbnRUb3AgKyBwZXJUaWNrO1xuICAgICAgICBpZiAoZWxlbWVudC5zY3JvbGxUb3AgPT09IHRhcmdldE9mZnNldCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNjcm9sbEJ5VmFsdWUoZWxlbWVudCwgdmFsdWUsIGRpdmlkZUJ5LCBkdXJhdGlvbiAtIDEwKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG1hdGNoVmFsdWUoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICB0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUsXG4gICAgY3VyckRhdGU6IERheWpzLFxuICApOiBib29sZWFuIHtcbiAgICByZXR1cm4gY3VyckRhdGU/LmdldCh0eXBlKSA9PT0gdmFsdWU7XG4gIH1cblxuICBnZXRDb250cm9sVHlwZUNvbmZpZyh0eXBlOiBUaW1lUGlja2VyQ29udHJvbFR5cGUpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cl06IHRoaXMuSE9VUl9JVEVNX0NPTkZJRyxcbiAgICAgIFtUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlXTogdGhpcy5NSU5VVEVfSVRFTV9DT05GSUcsXG4gICAgICBbVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZF06IHRoaXMuU0VDT05EX0lURU1fQ09ORklHLFxuICAgIH1bdHlwZV07XG4gIH1cblxuICBzZWxlY3ROb3coKSB7XG4gICAgdGhpcy5maXJzdFNjcm9sbGVkID0gdHJ1ZTtcbiAgICB0aGlzLmVtaXRNb2RlbChkYXlqcygpKTtcbiAgfVxuXG4gIHRyYWNrQnkoX2luZGV4OiBudW1iZXIsIGNvbnRlbnQ6IG51bWJlcikge1xuICAgIHJldHVybiBjb250ZW50O1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwiZW5hYmxlZENvbHVtbnNcIlxuICBbY2xhc3NdPVwiYmVtLmJsb2NrKClcIlxuICBbc3R5bGUud2lkdGgucHhdPVwidG90YWxXaWR0aFwiXG4+XG4gIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb250ZW50JylcIj5cbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbicpXCJcbiAgICAgICNob3VyUmVmXG4gICAgICAqbmdJZj1cImhvdXJFbmFibGVkXCJcbiAgICA+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGdldENvbnRyb2xUeXBlQ29uZmlnKFRpbWVQaWNrZXJDb250cm9sVHlwZS5Ib3VyKVwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIpLFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IG1hdGNoVmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLkhvdXIsIG1vZGVsKVxuICAgICAgICAgIH1cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuSG91cilcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlcjogJzIuMC0wJyB9fVxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4tc3RydXQnKVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29sdW1uJylcIlxuICAgICAgI21pbnV0ZVJlZlxuICAgICAgKm5nSWY9XCJtaW51dGVFbmFibGVkXCJcbiAgICA+XG4gICAgICA8dWw+XG4gICAgICAgIDxsaVxuICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgbGV0IGl0ZW0gb2YgZ2V0Q29udHJvbFR5cGVDb25maWcoVGltZVBpY2tlckNvbnRyb2xUeXBlLk1pbnV0ZSk7XG4gICAgICAgICAgICB0cmFja0J5OiB0cmFja0J5XG4gICAgICAgICAgXCJcbiAgICAgICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NlbGwnKVwiXG4gICAgICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJDT05UUk9MX0lURU1fSEVJR0hUXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICBkaXNhYmxlZDogaXNEaXNhYmxlZChpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlKSxcbiAgICAgICAgICAgIHNlbGVjdGVkOiBtYXRjaFZhbHVlKGl0ZW0sIFRpbWVQaWNrZXJDb250cm9sVHlwZS5NaW51dGUsIG1vZGVsKVxuICAgICAgICAgIH1cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuTWludXRlKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBpdGVtIHwgbnVtYmVyOiAnMi4wLTAnIH19XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPGRpdiBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NvbHVtbi1zdHJ1dCcpXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4nKVwiXG4gICAgICAjc2Vjb25kUmVmXG4gICAgICAqbmdJZj1cInNlY29uZEVuYWJsZWRcIlxuICAgID5cbiAgICAgIDx1bD5cbiAgICAgICAgPGxpXG4gICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICBsZXQgaXRlbSBvZiBnZXRDb250cm9sVHlwZUNvbmZpZyhUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kKVxuICAgICAgICAgIFwiXG4gICAgICAgICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjZWxsJylcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwiQ09OVFJPTF9JVEVNX0hFSUdIVFwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGlzRGlzYWJsZWQoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZCksXG4gICAgICAgICAgICBzZWxlY3RlZDogbWF0Y2hWYWx1ZShpdGVtLCBUaW1lUGlja2VyQ29udHJvbFR5cGUuU2Vjb25kLCBtb2RlbClcbiAgICAgICAgICB9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbSwgVGltZVBpY2tlckNvbnRyb2xUeXBlLlNlY29uZClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgaXRlbSB8IG51bWJlcjogJzIuMC0wJyB9fVxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb2x1bW4tc3RydXQnKVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWZvb3RlclRlbXBsYXRlOyBlbHNlIGN1c3RvbUZvb3RlclwiPlxuICAgIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdmb290ZXInKVwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwiaW5saW5lXCJcbiAgICAgICAgKGNsaWNrKT1cInNlbGVjdE5vdygpXCJcbiAgICAgICAgW3NpemVdPVwiQ29tcG9uZW50U2l6ZS5TbWFsbFwiXG4gICAgICA+XG4gICAgICAgIHt7ICdub3cnIHwgYXVpSTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJwcmltYXJ5XCJcbiAgICAgICAgW3NpemVdPVwiQ29tcG9uZW50U2l6ZS5TbWFsbFwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7IGNvbmZpcm0ubmV4dCgpXCJcbiAgICAgID5cbiAgICAgICAge3sgJ2NvbmZpcm0nIHwgYXVpSTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2N1c3RvbUZvb3Rlcj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJUZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHRoaXMgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
|