@alauda/ui 6.5.9-beta.26 → 6.5.9-beta.28
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 +7 -4
- 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 +2 -5
- 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 +2870 -2819
- 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/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 -50
- 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 -34
- 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,128 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, forwardRef, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import dayjs from 'dayjs';
|
|
4
|
+
import { CommonFormControl } from '../../../form/common-form';
|
|
5
|
+
import { DateNavRange } from '../../date-picker.type';
|
|
6
|
+
import { DatePickerType } from '../constant';
|
|
7
|
+
import { getNavRangeByType, getTimePickerModel, getTypeByNavRange, nextNavRangeType, updateDate, updateDateByTimeModel, } from '../util';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../header/component";
|
|
10
|
+
import * as i2 from "../panel/picker-panel";
|
|
11
|
+
import * as i3 from "../footer/component";
|
|
12
|
+
import * as i4 from "../../../time-picker/component";
|
|
13
|
+
import * as i5 from "../../../button/button.component";
|
|
14
|
+
import * as i6 from "@angular/common";
|
|
15
|
+
import * as i7 from "@angular/forms";
|
|
16
|
+
import * as i8 from "../../../i18n/i18n.pipe";
|
|
17
|
+
export class DatePickerPanelComponent extends CommonFormControl {
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
this.clearable = true;
|
|
21
|
+
this.showTime = false;
|
|
22
|
+
this.disabledDate = () => false;
|
|
23
|
+
this.disabledTime = () => null;
|
|
24
|
+
this.weekStartDay = 0;
|
|
25
|
+
this.showFooter = true;
|
|
26
|
+
this.confirm = new EventEmitter();
|
|
27
|
+
this.clear = new EventEmitter();
|
|
28
|
+
this.DateNavRange = DateNavRange;
|
|
29
|
+
this.DatePickerType = DatePickerType;
|
|
30
|
+
}
|
|
31
|
+
set type(type) {
|
|
32
|
+
this.navRange = getNavRangeByType(type);
|
|
33
|
+
this._type = type;
|
|
34
|
+
}
|
|
35
|
+
get type() {
|
|
36
|
+
return this._type;
|
|
37
|
+
}
|
|
38
|
+
getDisabledTimeFn(selectedDate, type) {
|
|
39
|
+
if (selectedDate !== this._cacheSelectedDate) {
|
|
40
|
+
this._cacheDisabledTimeFn = this.disabledTime(selectedDate);
|
|
41
|
+
this._cacheSelectedDate = selectedDate;
|
|
42
|
+
}
|
|
43
|
+
return this._cacheDisabledTimeFn?.[type];
|
|
44
|
+
}
|
|
45
|
+
get currentNavType() {
|
|
46
|
+
return getTypeByNavRange(this.navRange);
|
|
47
|
+
}
|
|
48
|
+
writeValue(obj) {
|
|
49
|
+
super.writeValue(obj);
|
|
50
|
+
this.selectedDate = obj;
|
|
51
|
+
this.selectedTime = getTimePickerModel(obj);
|
|
52
|
+
this.anchor = obj || dayjs();
|
|
53
|
+
this.cdr.markForCheck();
|
|
54
|
+
}
|
|
55
|
+
panelValueChange(value) {
|
|
56
|
+
this.selectedDate = updateDate(this.selectedDate || dayjs(), value, this.currentNavType);
|
|
57
|
+
this.anchor = this.selectedDate;
|
|
58
|
+
this.selectedDate = updateDateByTimeModel(this.selectedDate, this.selectedTime);
|
|
59
|
+
if (this.type === this.currentNavType) {
|
|
60
|
+
this.confirmValue(this.selectedDate, !this.showTime);
|
|
61
|
+
}
|
|
62
|
+
const nextNavRange = nextNavRangeType(this.navRange, getNavRangeByType(this.type));
|
|
63
|
+
if (this.navRange !== nextNavRange) {
|
|
64
|
+
this.navRange = nextNavRange;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
confirmValue(value, closeAfterConfirm = true) {
|
|
68
|
+
this.emitValue(value ? dayjs(value) : this.selectedDate);
|
|
69
|
+
closeAfterConfirm && this.confirm.next(null);
|
|
70
|
+
}
|
|
71
|
+
timeDateChange(time) {
|
|
72
|
+
if (!this.selectedDate) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
this.selectedDate = updateDateByTimeModel(this.selectedDate, time);
|
|
76
|
+
this.emitValue(this.selectedDate);
|
|
77
|
+
}
|
|
78
|
+
setToday() {
|
|
79
|
+
this.confirmValue(dayjs(), true);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
DatePickerPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DatePickerPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
DatePickerPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DatePickerPanelComponent, selector: "aui-date-picker-panel", inputs: { clearable: "clearable", clearText: "clearText", type: "type", showTime: "showTime", disabledDate: "disabledDate", disabledTime: "disabledTime", weekStartDay: "weekStartDay", showFooter: "showFooter", footerTemplate: "footerTemplate", extraFooter: "extraFooter", minDate: "minDate", maxDate: "maxDate" }, outputs: { confirm: "confirm", clear: "clear" }, providers: [
|
|
84
|
+
{
|
|
85
|
+
provide: NG_VALUE_ACCESSOR,
|
|
86
|
+
useExisting: forwardRef(() => DatePickerPanelComponent),
|
|
87
|
+
multi: true,
|
|
88
|
+
},
|
|
89
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"aui-date-picker-panel__wrapper\">\n <aui-calendar-header\n [dateNavRange]=\"navRange\"\n [anchor]=\"anchor\"\n [minAvail]=\"minDate\"\n [maxAvail]=\"maxDate\"\n [style.margin-inline.px]=\"4\"\n (navRangeChange)=\"navRange = $event\"\n (anchorChange)=\"anchor = $event\"\n ></aui-calendar-header>\n\n <aui-picker-panel\n [style.margin]=\"'16px 0'\"\n [anchor]=\"anchor\"\n [navRange]=\"navRange\"\n [disabledDate]=\"disabledDate\"\n [weekStartDay]=\"weekStartDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [type]=\"type\"\n [matchDates]=\"[selectedDate]\"\n (select)=\"panelValueChange($event)\"\n ></aui-picker-panel>\n\n <ng-container\n *ngIf=\"extraFooter\"\n [ngTemplateOutlet]=\"extraFooter\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-container *ngIf=\"showFooter\">\n <aui-calendar-footer\n (clear)=\"clear.next()\"\n (confirm)=\"confirmValue()\"\n [clearable]=\"clearable\"\n [clearText]=\"clearText\"\n *ngIf=\"showTime; else today\"\n >\n <ng-container\n *ngIf=\"footerTemplate; else default\"\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-template #default>\n <aui-time-picker\n *ngIf=\"currentNavType === DatePickerType.Day && showTime\"\n [showIcon]=\"false\"\n size=\"small\"\n [(ngModel)]=\"selectedTime\"\n [disableHours]=\"getDisabledTimeFn(selectedDate, 'hours')\"\n [disableMinutes]=\"getDisabledTimeFn(selectedDate, 'minutes')\"\n [disableSeconds]=\"getDisabledTimeFn(selectedDate, 'seconds')\"\n tooltipPosition=\"top start\"\n (ngModelChange)=\"timeDateChange($event)\"\n [placeholder]=\"'select_time' | auiI18n\"\n ></aui-time-picker>\n </ng-template>\n </aui-calendar-footer>\n\n <ng-template #today>\n <aui-calendar-footer\n *ngIf=\"type === DatePickerType.Day\"\n [clearable]=\"false\"\n [customAction]=\"todayBtn\"\n >\n </aui-calendar-footer>\n <ng-template #todayBtn>\n <button\n aui-button=\"inline\"\n (click)=\"setToday()\"\n >\n {{ 'today' | auiI18n }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".aui-date-picker-panel__wrapper{display:flex;flex-direction:column;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-date-picker-panel__wrapper .aui-time-picker{width:88px}\n"], components: [{ type: i1.CalendarHeaderComponent, selector: "aui-calendar-header", inputs: ["dateNavRange", "anchor", "maxAvail", "minAvail"], outputs: ["navRangeChange", "anchorChange"] }, { type: i2.PickerPanelComponent, selector: "aui-picker-panel", inputs: ["navRange", "type", "anchor", "matchDates", "disabledDate", "weekStartDay", "minDate", "maxDate"], outputs: ["select", "hovered"] }, { type: i3.CalendarFooterComponent, selector: "aui-calendar-footer", inputs: ["clearable", "clearText", "customAction"], outputs: ["confirm", "clear"] }, { type: i4.TimePickerComponent, selector: "aui-time-picker", inputs: ["format", "size", "placeholder", "clearable", "showIcon", "disableHours", "disableMinutes", "disableSeconds", "hourStep", "minuteStep", "secondStep", "footerTemplate"], outputs: ["open", "close"] }, { type: i5.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "auiI18n": i8.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DatePickerPanelComponent, decorators: [{
|
|
91
|
+
type: Component,
|
|
92
|
+
args: [{ selector: 'aui-date-picker-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
|
|
93
|
+
{
|
|
94
|
+
provide: NG_VALUE_ACCESSOR,
|
|
95
|
+
useExisting: forwardRef(() => DatePickerPanelComponent),
|
|
96
|
+
multi: true,
|
|
97
|
+
},
|
|
98
|
+
], template: "<div class=\"aui-date-picker-panel__wrapper\">\n <aui-calendar-header\n [dateNavRange]=\"navRange\"\n [anchor]=\"anchor\"\n [minAvail]=\"minDate\"\n [maxAvail]=\"maxDate\"\n [style.margin-inline.px]=\"4\"\n (navRangeChange)=\"navRange = $event\"\n (anchorChange)=\"anchor = $event\"\n ></aui-calendar-header>\n\n <aui-picker-panel\n [style.margin]=\"'16px 0'\"\n [anchor]=\"anchor\"\n [navRange]=\"navRange\"\n [disabledDate]=\"disabledDate\"\n [weekStartDay]=\"weekStartDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [type]=\"type\"\n [matchDates]=\"[selectedDate]\"\n (select)=\"panelValueChange($event)\"\n ></aui-picker-panel>\n\n <ng-container\n *ngIf=\"extraFooter\"\n [ngTemplateOutlet]=\"extraFooter\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-container *ngIf=\"showFooter\">\n <aui-calendar-footer\n (clear)=\"clear.next()\"\n (confirm)=\"confirmValue()\"\n [clearable]=\"clearable\"\n [clearText]=\"clearText\"\n *ngIf=\"showTime; else today\"\n >\n <ng-container\n *ngIf=\"footerTemplate; else default\"\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-template #default>\n <aui-time-picker\n *ngIf=\"currentNavType === DatePickerType.Day && showTime\"\n [showIcon]=\"false\"\n size=\"small\"\n [(ngModel)]=\"selectedTime\"\n [disableHours]=\"getDisabledTimeFn(selectedDate, 'hours')\"\n [disableMinutes]=\"getDisabledTimeFn(selectedDate, 'minutes')\"\n [disableSeconds]=\"getDisabledTimeFn(selectedDate, 'seconds')\"\n tooltipPosition=\"top start\"\n (ngModelChange)=\"timeDateChange($event)\"\n [placeholder]=\"'select_time' | auiI18n\"\n ></aui-time-picker>\n </ng-template>\n </aui-calendar-footer>\n\n <ng-template #today>\n <aui-calendar-footer\n *ngIf=\"type === DatePickerType.Day\"\n [clearable]=\"false\"\n [customAction]=\"todayBtn\"\n >\n </aui-calendar-footer>\n <ng-template #todayBtn>\n <button\n aui-button=\"inline\"\n (click)=\"setToday()\"\n >\n {{ 'today' | auiI18n }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".aui-date-picker-panel__wrapper{display:flex;flex-direction:column;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-date-picker-panel__wrapper .aui-time-picker{width:88px}\n"] }]
|
|
99
|
+
}], propDecorators: { clearable: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], clearText: [{
|
|
102
|
+
type: Input
|
|
103
|
+
}], type: [{
|
|
104
|
+
type: Input
|
|
105
|
+
}], showTime: [{
|
|
106
|
+
type: Input
|
|
107
|
+
}], disabledDate: [{
|
|
108
|
+
type: Input
|
|
109
|
+
}], disabledTime: [{
|
|
110
|
+
type: Input
|
|
111
|
+
}], weekStartDay: [{
|
|
112
|
+
type: Input
|
|
113
|
+
}], showFooter: [{
|
|
114
|
+
type: Input
|
|
115
|
+
}], footerTemplate: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], extraFooter: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], minDate: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], maxDate: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], confirm: [{
|
|
124
|
+
type: Output
|
|
125
|
+
}], clear: [{
|
|
126
|
+
type: Output
|
|
127
|
+
}] } });
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2RhdGUtcGlja2VyLXBhbmVsL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9jYWxlbmRhci9kYXRlLXBpY2tlci1wYW5lbC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxLQUE0QixNQUFNLE9BQU8sQ0FBQztBQUVqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsWUFBWSxFQUFrQixNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixVQUFVLEVBQ1YscUJBQXFCLEdBQ3RCLE1BQU0sU0FBUyxDQUFDOzs7Ozs7Ozs7O0FBZ0JqQixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsaUJBQXdCO0lBZHRFOztRQWdCRSxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBa0JqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBR2pCLGlCQUFZLEdBQWlELEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUd6RSxpQkFBWSxHQUFtQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7UUFHMUMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFHakIsZUFBVSxHQUFHLElBQUksQ0FBQztRQWVsQixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUdwQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQTRCakMsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFDNUIsbUJBQWMsR0FBRyxjQUFjLENBQUM7S0FpRGpDO0lBekhDLElBQ0ksSUFBSSxDQUFDLElBQW9CO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBd0NELGlCQUFpQixDQUNmLFlBQW1CLEVBQ25CLElBQXNDO1FBRXRDLElBQUksWUFBWSxLQUFLLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUM1QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDO1NBQ3hDO1FBQ0QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBSUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFXUSxVQUFVLENBQUMsR0FBVTtRQUM1QixLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBWTtRQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FDNUIsSUFBSSxDQUFDLFlBQVksSUFBSSxLQUFLLEVBQUUsRUFDNUIsS0FBSyxFQUNMLElBQUksQ0FBQyxjQUFjLENBQ3BCLENBQUM7UUFDRixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FDdkMsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLFlBQVksQ0FDbEIsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN0RDtRQUNELE1BQU0sWUFBWSxHQUFHLGdCQUFnQixDQUNuQyxJQUFJLENBQUMsUUFBUSxFQUNiLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDN0IsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxZQUFZLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxZQUFZLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWtCLEVBQUUsaUJBQWlCLEdBQUcsSUFBSTtRQUN2RCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekQsaUJBQWlCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFxQjtRQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN0QixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7O3FIQS9IVSx3QkFBd0I7eUdBQXhCLHdCQUF3QiwyWkFSeEI7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztZQUN2RCxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsaURDdENILGs0RUE4RUE7MkZEdENhLHdCQUF3QjtrQkFkcEMsU0FBUzsrQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUM7NEJBQ3ZELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGOzhCQUlELFNBQVM7c0JBRFIsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSUYsSUFBSTtzQkFEUCxLQUFLO2dCQWFOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLE9BQU87c0JBRE4sTUFBTTtnQkFJUCxLQUFLO3NCQURKLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBkYXlqcywgeyBDb25maWdUeXBlLCBEYXlqcyB9IGZyb20gJ2RheWpzJztcblxuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi8uLi9mb3JtL2NvbW1vbi1mb3JtJztcbmltcG9ydCB7IFRpbWVQaWNrZXJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL3RpbWUtcGlja2VyL3RpbWUtcGlja2VyLnR5cGUnO1xuaW1wb3J0IHsgRGF0ZU5hdlJhbmdlLCBEaXNhYmxlZFRpbWVGbiB9IGZyb20gJy4uLy4uL2RhdGUtcGlja2VyLnR5cGUnO1xuaW1wb3J0IHsgRGF0ZVBpY2tlclR5cGUgfSBmcm9tICcuLi9jb25zdGFudCc7XG5pbXBvcnQge1xuICBnZXROYXZSYW5nZUJ5VHlwZSxcbiAgZ2V0VGltZVBpY2tlck1vZGVsLFxuICBnZXRUeXBlQnlOYXZSYW5nZSxcbiAgbmV4dE5hdlJhbmdlVHlwZSxcbiAgdXBkYXRlRGF0ZSxcbiAgdXBkYXRlRGF0ZUJ5VGltZU1vZGVsLFxufSBmcm9tICcuLi91dGlsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWRhdGUtcGlja2VyLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGVQaWNrZXJQYW5lbENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEYXRlUGlja2VyUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBDb21tb25Gb3JtQ29udHJvbDxEYXlqcz4ge1xuICBASW5wdXQoKVxuICBjbGVhcmFibGUgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGNsZWFyVGV4dDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNldCB0eXBlKHR5cGU6IERhdGVQaWNrZXJUeXBlKSB7XG4gICAgdGhpcy5uYXZSYW5nZSA9IGdldE5hdlJhbmdlQnlUeXBlKHR5cGUpO1xuICAgIHRoaXMuX3R5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0IHR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBwcml2YXRlIF90eXBlOiBEYXRlUGlja2VyVHlwZTtcblxuICBASW5wdXQoKVxuICBzaG93VGltZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkRGF0ZTogKGRhdGU6IERheWpzLCB0eXBlOiBEYXRlTmF2UmFuZ2UpID0+IGJvb2xlYW4gPSAoKSA9PiBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZFRpbWU6IERpc2FibGVkVGltZUZuID0gKCkgPT4gbnVsbDtcblxuICBASW5wdXQoKVxuICB3ZWVrU3RhcnREYXkgPSAwO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dGb290ZXIgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKVxuICBleHRyYUZvb3RlcjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KClcbiAgbWluRGF0ZTogRGF5anM7XG5cbiAgQElucHV0KClcbiAgbWF4RGF0ZTogRGF5anM7XG5cbiAgQE91dHB1dCgpXG4gIGNvbmZpcm0gPSBuZXcgRXZlbnRFbWl0dGVyPERheWpzPigpO1xuXG4gIEBPdXRwdXQoKVxuICBjbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcml2YXRlIF9jYWNoZVNlbGVjdGVkRGF0ZTogRGF5anM7XG4gIHByaXZhdGUgX2NhY2hlRGlzYWJsZWRUaW1lRm46IFJldHVyblR5cGU8RGlzYWJsZWRUaW1lRm4+O1xuXG4gIGdldERpc2FibGVkVGltZUZuKFxuICAgIHNlbGVjdGVkRGF0ZTogRGF5anMsXG4gICAgdHlwZToga2V5b2YgUmV0dXJuVHlwZTxEaXNhYmxlZFRpbWVGbj4sXG4gICkge1xuICAgIGlmIChzZWxlY3RlZERhdGUgIT09IHRoaXMuX2NhY2hlU2VsZWN0ZWREYXRlKSB7XG4gICAgICB0aGlzLl9jYWNoZURpc2FibGVkVGltZUZuID0gdGhpcy5kaXNhYmxlZFRpbWUoc2VsZWN0ZWREYXRlKTtcbiAgICAgIHRoaXMuX2NhY2hlU2VsZWN0ZWREYXRlID0gc2VsZWN0ZWREYXRlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fY2FjaGVEaXNhYmxlZFRpbWVGbj8uW3R5cGVdO1xuICB9XG5cbiAgbmF2UmFuZ2U6IERhdGVOYXZSYW5nZTtcblxuICBnZXQgY3VycmVudE5hdlR5cGUoKSB7XG4gICAgcmV0dXJuIGdldFR5cGVCeU5hdlJhbmdlKHRoaXMubmF2UmFuZ2UpO1xuICB9XG5cbiAgYW5jaG9yOiBEYXlqcztcblxuICBzZWxlY3RlZERhdGU6IERheWpzO1xuXG4gIHNlbGVjdGVkVGltZTogVGltZVBpY2tlck1vZGVsO1xuXG4gIERhdGVOYXZSYW5nZSA9IERhdGVOYXZSYW5nZTtcbiAgRGF0ZVBpY2tlclR5cGUgPSBEYXRlUGlja2VyVHlwZTtcblxuICBvdmVycmlkZSB3cml0ZVZhbHVlKG9iajogRGF5anMpIHtcbiAgICBzdXBlci53cml0ZVZhbHVlKG9iaik7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSBvYmo7XG4gICAgdGhpcy5zZWxlY3RlZFRpbWUgPSBnZXRUaW1lUGlja2VyTW9kZWwob2JqKTtcbiAgICB0aGlzLmFuY2hvciA9IG9iaiB8fCBkYXlqcygpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcGFuZWxWYWx1ZUNoYW5nZSh2YWx1ZTogRGF5anMpIHtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHVwZGF0ZURhdGUoXG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSB8fCBkYXlqcygpLFxuICAgICAgdmFsdWUsXG4gICAgICB0aGlzLmN1cnJlbnROYXZUeXBlLFxuICAgICk7XG4gICAgdGhpcy5hbmNob3IgPSB0aGlzLnNlbGVjdGVkRGF0ZTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHVwZGF0ZURhdGVCeVRpbWVNb2RlbChcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlLFxuICAgICAgdGhpcy5zZWxlY3RlZFRpbWUsXG4gICAgKTtcbiAgICBpZiAodGhpcy50eXBlID09PSB0aGlzLmN1cnJlbnROYXZUeXBlKSB7XG4gICAgICB0aGlzLmNvbmZpcm1WYWx1ZSh0aGlzLnNlbGVjdGVkRGF0ZSwgIXRoaXMuc2hvd1RpbWUpO1xuICAgIH1cbiAgICBjb25zdCBuZXh0TmF2UmFuZ2UgPSBuZXh0TmF2UmFuZ2VUeXBlKFxuICAgICAgdGhpcy5uYXZSYW5nZSxcbiAgICAgIGdldE5hdlJhbmdlQnlUeXBlKHRoaXMudHlwZSksXG4gICAgKTtcbiAgICBpZiAodGhpcy5uYXZSYW5nZSAhPT0gbmV4dE5hdlJhbmdlKSB7XG4gICAgICB0aGlzLm5hdlJhbmdlID0gbmV4dE5hdlJhbmdlO1xuICAgIH1cbiAgfVxuXG4gIGNvbmZpcm1WYWx1ZSh2YWx1ZT86IENvbmZpZ1R5cGUsIGNsb3NlQWZ0ZXJDb25maXJtID0gdHJ1ZSkge1xuICAgIHRoaXMuZW1pdFZhbHVlKHZhbHVlID8gZGF5anModmFsdWUpIDogdGhpcy5zZWxlY3RlZERhdGUpO1xuICAgIGNsb3NlQWZ0ZXJDb25maXJtICYmIHRoaXMuY29uZmlybS5uZXh0KG51bGwpO1xuICB9XG5cbiAgdGltZURhdGVDaGFuZ2UodGltZTogVGltZVBpY2tlck1vZGVsKSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkRGF0ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHVwZGF0ZURhdGVCeVRpbWVNb2RlbCh0aGlzLnNlbGVjdGVkRGF0ZSwgdGltZSk7XG4gICAgdGhpcy5lbWl0VmFsdWUodGhpcy5zZWxlY3RlZERhdGUpO1xuICB9XG5cbiAgc2V0VG9kYXkoKSB7XG4gICAgdGhpcy5jb25maXJtVmFsdWUoZGF5anMoKSwgdHJ1ZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJhdWktZGF0ZS1waWNrZXItcGFuZWxfX3dyYXBwZXJcIj5cbiAgPGF1aS1jYWxlbmRhci1oZWFkZXJcbiAgICBbZGF0ZU5hdlJhbmdlXT1cIm5hdlJhbmdlXCJcbiAgICBbYW5jaG9yXT1cImFuY2hvclwiXG4gICAgW21pbkF2YWlsXT1cIm1pbkRhdGVcIlxuICAgIFttYXhBdmFpbF09XCJtYXhEYXRlXCJcbiAgICBbc3R5bGUubWFyZ2luLWlubGluZS5weF09XCI0XCJcbiAgICAobmF2UmFuZ2VDaGFuZ2UpPVwibmF2UmFuZ2UgPSAkZXZlbnRcIlxuICAgIChhbmNob3JDaGFuZ2UpPVwiYW5jaG9yID0gJGV2ZW50XCJcbiAgPjwvYXVpLWNhbGVuZGFyLWhlYWRlcj5cblxuICA8YXVpLXBpY2tlci1wYW5lbFxuICAgIFtzdHlsZS5tYXJnaW5dPVwiJzE2cHggMCdcIlxuICAgIFthbmNob3JdPVwiYW5jaG9yXCJcbiAgICBbbmF2UmFuZ2VdPVwibmF2UmFuZ2VcIlxuICAgIFtkaXNhYmxlZERhdGVdPVwiZGlzYWJsZWREYXRlXCJcbiAgICBbd2Vla1N0YXJ0RGF5XT1cIndlZWtTdGFydERheVwiXG4gICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgW3R5cGVdPVwidHlwZVwiXG4gICAgW21hdGNoRGF0ZXNdPVwiW3NlbGVjdGVkRGF0ZV1cIlxuICAgIChzZWxlY3QpPVwicGFuZWxWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPjwvYXVpLXBpY2tlci1wYW5lbD5cblxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJleHRyYUZvb3RlclwiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZXh0cmFGb290ZXJcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IHRoaXMgfVwiXG4gID48L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0Zvb3RlclwiPlxuICAgIDxhdWktY2FsZW5kYXItZm9vdGVyXG4gICAgICAoY2xlYXIpPVwiY2xlYXIubmV4dCgpXCJcbiAgICAgIChjb25maXJtKT1cImNvbmZpcm1WYWx1ZSgpXCJcbiAgICAgIFtjbGVhcmFibGVdPVwiY2xlYXJhYmxlXCJcbiAgICAgIFtjbGVhclRleHRdPVwiY2xlYXJUZXh0XCJcbiAgICAgICpuZ0lmPVwic2hvd1RpbWU7IGVsc2UgdG9kYXlcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nSWY9XCJmb290ZXJUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBjb250ZXh0OiB0aGlzIH1cIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgICAgIDxhdWktdGltZS1waWNrZXJcbiAgICAgICAgICAqbmdJZj1cImN1cnJlbnROYXZUeXBlID09PSBEYXRlUGlja2VyVHlwZS5EYXkgJiYgc2hvd1RpbWVcIlxuICAgICAgICAgIFtzaG93SWNvbl09XCJmYWxzZVwiXG4gICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVGltZVwiXG4gICAgICAgICAgW2Rpc2FibGVIb3Vyc109XCJnZXREaXNhYmxlZFRpbWVGbihzZWxlY3RlZERhdGUsICdob3VycycpXCJcbiAgICAgICAgICBbZGlzYWJsZU1pbnV0ZXNdPVwiZ2V0RGlzYWJsZWRUaW1lRm4oc2VsZWN0ZWREYXRlLCAnbWludXRlcycpXCJcbiAgICAgICAgICBbZGlzYWJsZVNlY29uZHNdPVwiZ2V0RGlzYWJsZWRUaW1lRm4oc2VsZWN0ZWREYXRlLCAnc2Vjb25kcycpXCJcbiAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3Agc3RhcnRcIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInRpbWVEYXRlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInc2VsZWN0X3RpbWUnIHwgYXVpSTE4blwiXG4gICAgICAgID48L2F1aS10aW1lLXBpY2tlcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9hdWktY2FsZW5kYXItZm9vdGVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICN0b2RheT5cbiAgICAgIDxhdWktY2FsZW5kYXItZm9vdGVyXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gRGF0ZVBpY2tlclR5cGUuRGF5XCJcbiAgICAgICAgW2NsZWFyYWJsZV09XCJmYWxzZVwiXG4gICAgICAgIFtjdXN0b21BY3Rpb25dPVwidG9kYXlCdG5cIlxuICAgICAgPlxuICAgICAgPC9hdWktY2FsZW5kYXItZm9vdGVyPlxuICAgICAgPG5nLXRlbXBsYXRlICN0b2RheUJ0bj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGF1aS1idXR0b249XCJpbmxpbmVcIlxuICAgICAgICAgIChjbGljayk9XCJzZXRUb2RheSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICd0b2RheScgfCBhdWlJMThuIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../button/button.component";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "../../../i18n/i18n.pipe";
|
|
6
|
+
export class CalendarFooterComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.clearable = true;
|
|
9
|
+
this.confirm = new EventEmitter();
|
|
10
|
+
this.clear = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
CalendarFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CalendarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
+
CalendarFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: CalendarFooterComponent, selector: "aui-calendar-footer", inputs: { clearable: "clearable", clearText: "clearText", customAction: "customAction" }, outputs: { confirm: "confirm", clear: "clear" }, ngImport: i0, template: "<div class=\"aui-calendar-footer__wrapper\">\n <div style=\"flex: 1\">\n <ng-content></ng-content>\n </div>\n <div>\n <ng-container\n *ngIf=\"customAction; else default\"\n [ngTemplateOutlet]=\"customAction\"\n >\n </ng-container>\n <ng-template #default>\n <button\n aui-button=\"text\"\n *ngIf=\"clearable\"\n (click)=\"clear.emit()\"\n size=\"small\"\n >\n {{ clearText || ('clear' | auiI18n) }}\n </button>\n <button\n aui-button=\"primary\"\n (click)=\"confirm.emit()\"\n size=\"small\"\n >\n {{ 'confirm' | auiI18n }}\n </button>\n </ng-template>\n </div>\n</div>\n", styles: [".aui-calendar-footer__wrapper{display:flex;flex-direction:row;justify-content:space-between;border-top:1px solid rgb(var(--aui-color-n-8));padding:8px 0 0}\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.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "auiI18n": i3.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CalendarFooterComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ selector: 'aui-calendar-footer', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"aui-calendar-footer__wrapper\">\n <div style=\"flex: 1\">\n <ng-content></ng-content>\n </div>\n <div>\n <ng-container\n *ngIf=\"customAction; else default\"\n [ngTemplateOutlet]=\"customAction\"\n >\n </ng-container>\n <ng-template #default>\n <button\n aui-button=\"text\"\n *ngIf=\"clearable\"\n (click)=\"clear.emit()\"\n size=\"small\"\n >\n {{ clearText || ('clear' | auiI18n) }}\n </button>\n <button\n aui-button=\"primary\"\n (click)=\"confirm.emit()\"\n size=\"small\"\n >\n {{ 'confirm' | auiI18n }}\n </button>\n </ng-template>\n </div>\n</div>\n", styles: [".aui-calendar-footer__wrapper{display:flex;flex-direction:row;justify-content:space-between;border-top:1px solid rgb(var(--aui-color-n-8));padding:8px 0 0}\n"] }]
|
|
18
|
+
}], propDecorators: { clearable: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], clearText: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}], customAction: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], confirm: [{
|
|
25
|
+
type: Output
|
|
26
|
+
}], clear: [{
|
|
27
|
+
type: Output
|
|
28
|
+
}] } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2Zvb3Rlci9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZS1waWNrZXIvY2FsZW5kYXIvZm9vdGVyL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7OztBQVN2QixNQUFNLE9BQU8sdUJBQXVCO0lBUHBDO1FBU0UsY0FBUyxHQUFHLElBQUksQ0FBQztRQVNqQixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUduQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQUNsQzs7b0hBZlksdUJBQXVCO3dHQUF2Qix1QkFBdUIsc01DakJwQywwckJBNkJBOzJGRFphLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxxQkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07OEJBSS9DLFNBQVM7c0JBRFIsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLE9BQU87c0JBRE4sTUFBTTtnQkFJUCxLQUFLO3NCQURKLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1jYWxlbmRhci1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyRm9vdGVyQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgY2xlYXJhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBjbGVhclRleHQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBjdXN0b21BY3Rpb246IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQE91dHB1dCgpXG4gIGNvbmZpcm0gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xufVxuIiwiPGRpdiBjbGFzcz1cImF1aS1jYWxlbmRhci1mb290ZXJfX3dyYXBwZXJcIj5cbiAgPGRpdiBzdHlsZT1cImZsZXg6IDFcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuICA8ZGl2PlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiY3VzdG9tQWN0aW9uOyBlbHNlIGRlZmF1bHRcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tQWN0aW9uXCJcbiAgICA+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAgICpuZ0lmPVwiY2xlYXJhYmxlXCJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyLmVtaXQoKVwiXG4gICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICA+XG4gICAgICAgIHt7IGNsZWFyVGV4dCB8fCAoJ2NsZWFyJyB8IGF1aUkxOG4pIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvbj1cInByaW1hcnlcIlxuICAgICAgICAoY2xpY2spPVwiY29uZmlybS5lbWl0KClcIlxuICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgPlxuICAgICAgICB7eyAnY29uZmlybScgfCBhdWlJMThuIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { buildBem } from '../../../utils';
|
|
4
|
+
import { DateNavRange, Side, } from '../../date-picker.type';
|
|
5
|
+
import { MONTH, YEAR } from '../constant';
|
|
6
|
+
import { calcRangeValue } from '../util';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../../button/button.component";
|
|
9
|
+
import * as i2 from "../../../icon/icon.component";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
import * as i4 from "../../../i18n/i18n.pipe";
|
|
12
|
+
const bem = buildBem('aui-calendar-header');
|
|
13
|
+
export class CalendarHeaderComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.dateNavRange = DateNavRange.Month;
|
|
16
|
+
this.anchor = dayjs();
|
|
17
|
+
this.navRangeChange = new EventEmitter();
|
|
18
|
+
this.anchorChange = new EventEmitter();
|
|
19
|
+
this.bem = bem;
|
|
20
|
+
this.DateNavRange = DateNavRange;
|
|
21
|
+
this.clickNav = (range) => {
|
|
22
|
+
if (![DateNavRange.Month, DateNavRange.Year].includes(range)) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
this.navRangeChange.next(range === DateNavRange.Month ? DateNavRange.Year : DateNavRange.Decade);
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
get _maxAvail() {
|
|
29
|
+
return this.maxAvail ? dayjs(this.maxAvail) : null;
|
|
30
|
+
}
|
|
31
|
+
get _minAvail() {
|
|
32
|
+
return this.minAvail ? dayjs(this.minAvail) : null;
|
|
33
|
+
}
|
|
34
|
+
get headerRange() {
|
|
35
|
+
return calcRangeValue(this.dateNavRange, this.anchor);
|
|
36
|
+
}
|
|
37
|
+
// maxAvail > current date :right btn hide
|
|
38
|
+
// minAvail > current date :left btn hide
|
|
39
|
+
shouldShowNav(type, side) {
|
|
40
|
+
const availValue = (side === Side.Left ? this._minAvail : this._maxAvail)?.clone();
|
|
41
|
+
if (!availValue) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
// 对于年的判别,2014-5-1至2015-6-1日,仍当展示按钮
|
|
45
|
+
const constrainDate = [DateNavRange.Month, DateNavRange.Year].includes(type)
|
|
46
|
+
? availValue.add(side === Side.Left ? 1 : -1, type)
|
|
47
|
+
: availValue;
|
|
48
|
+
return (this.compareNavValue(type, constrainDate, this.anchor) ===
|
|
49
|
+
(side === Side.Left ? -1 : 1));
|
|
50
|
+
}
|
|
51
|
+
// @return isBetween|isEqual:0, isBefore:-1,isAfter:1
|
|
52
|
+
compareNavValue(type, constrain, anchor) {
|
|
53
|
+
const range = calcRangeValue(type, anchor);
|
|
54
|
+
const constrainValue = constrain;
|
|
55
|
+
if (type === DateNavRange.Decade) {
|
|
56
|
+
if (constrainValue.isBetween(range.start, range.end, YEAR)) {
|
|
57
|
+
return 0;
|
|
58
|
+
}
|
|
59
|
+
return constrainValue.isBefore(range.start) ? -1 : 1;
|
|
60
|
+
}
|
|
61
|
+
return constrainValue.isSame(range.start, MONTH)
|
|
62
|
+
? 0
|
|
63
|
+
: constrainValue.isBefore(range.start, MONTH)
|
|
64
|
+
? -1
|
|
65
|
+
: 1;
|
|
66
|
+
}
|
|
67
|
+
navHead(range, value) {
|
|
68
|
+
let anchor;
|
|
69
|
+
switch (range) {
|
|
70
|
+
case DateNavRange.Month: {
|
|
71
|
+
anchor = this.anchor.add(value, MONTH);
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
case DateNavRange.Year: {
|
|
75
|
+
anchor = this.anchor.add(value, YEAR);
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
case DateNavRange.Decade:
|
|
79
|
+
anchor = this.anchor.add(value, YEAR);
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
this.anchorChange.next(anchor);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
CalendarHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CalendarHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
+
CalendarHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: CalendarHeaderComponent, selector: "aui-calendar-header", inputs: { dateNavRange: "dateNavRange", anchor: "anchor", maxAvail: "maxAvail", minAvail: "minAvail" }, outputs: { navRangeChange: "navRangeChange", anchorChange: "anchorChange" }, ngImport: i0, template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </a>\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Month)\"\n >\n {{ headerRange?.start?.month() + 1 }}{{ 'month_suffix' | auiI18n }}\n </a>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Year\"\n [class]=\"bem.element('nav-content')\"\n >\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </a>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [class]=\"bem.element('nav-content')\"\n >\n {{ headerRange?.start.year() }} - {{ headerRange?.end?.year() }}\n </span>\n\n <div [class]=\"bem.element('nav-action')\">\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n </div>\n</div>\n\n<ng-template\n #yearControl\n let-side=\"side\"\n>\n <span class=\"action-bar\">\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'right'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, 1)\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Year, side === 'left' ? -1 : 1)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Year, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'left'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, -1)\"\n >\n <aui-icon icon=\"angle_left\"></aui-icon>\n </button>\n </span>\n</ng-template>\n\n<ng-template\n #decadeControl\n let-side=\"side\"\n>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Decade, side === 'left' ? -10 : 10)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Decade, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n</ng-template>\n", styles: [".aui-calendar-header__container{height:24px;display:flex;align-items:center;justify-content:space-between}.aui-calendar-header__nav-content{flex:1;display:flex;justify-content:center;align-items:center;font-size:var(--aui-font-size-l);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-bolder)}.aui-calendar-header__nav-content a{color:rgb(var(--aui-color-main-text))}.aui-calendar-header__nav-content a:hover{color:rgb(var(--aui-color-primary));text-decoration:none!important}.aui-calendar-header__nav-content a+a{margin-left:5px}.action-bar{width:52px;display:flex}.action-bar .hidden{opacity:0;pointer-events:none}\n"], components: [{ type: i1.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { type: i2.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "auiI18n": i4.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: CalendarHeaderComponent, decorators: [{
|
|
88
|
+
type: Component,
|
|
89
|
+
args: [{ selector: 'aui-calendar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </a>\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Month)\"\n >\n {{ headerRange?.start?.month() + 1 }}{{ 'month_suffix' | auiI18n }}\n </a>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Year\"\n [class]=\"bem.element('nav-content')\"\n >\n <a\n href=\"javascript:;\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </a>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [class]=\"bem.element('nav-content')\"\n >\n {{ headerRange?.start.year() }} - {{ headerRange?.end?.year() }}\n </span>\n\n <div [class]=\"bem.element('nav-action')\">\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n </div>\n</div>\n\n<ng-template\n #yearControl\n let-side=\"side\"\n>\n <span class=\"action-bar\">\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'right'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, 1)\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Year, side === 'left' ? -1 : 1)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Year, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'left'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, -1)\"\n >\n <aui-icon icon=\"angle_left\"></aui-icon>\n </button>\n </span>\n</ng-template>\n\n<ng-template\n #decadeControl\n let-side=\"side\"\n>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Decade, side === 'left' ? -10 : 10)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Decade, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n</ng-template>\n", styles: [".aui-calendar-header__container{height:24px;display:flex;align-items:center;justify-content:space-between}.aui-calendar-header__nav-content{flex:1;display:flex;justify-content:center;align-items:center;font-size:var(--aui-font-size-l);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-bolder)}.aui-calendar-header__nav-content a{color:rgb(var(--aui-color-main-text))}.aui-calendar-header__nav-content a:hover{color:rgb(var(--aui-color-primary));text-decoration:none!important}.aui-calendar-header__nav-content a+a{margin-left:5px}.action-bar{width:52px;display:flex}.action-bar .hidden{opacity:0;pointer-events:none}\n"] }]
|
|
90
|
+
}], propDecorators: { dateNavRange: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}], anchor: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], maxAvail: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], minAvail: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], navRangeChange: [{
|
|
99
|
+
type: Output
|
|
100
|
+
}], anchorChange: [{
|
|
101
|
+
type: Output
|
|
102
|
+
}] } });
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2hlYWRlci9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZS1waWNrZXIvY2FsZW5kYXIvaGVhZGVyL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBNEIsTUFBTSxPQUFPLENBQUM7QUFFakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFFTCxZQUFZLEVBQ1osSUFBSSxHQUNMLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7Ozs7O0FBRXpDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBUzVDLE1BQU0sT0FBTyx1QkFBdUI7SUFQcEM7UUFTRSxpQkFBWSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFHbEMsV0FBTSxHQUFHLEtBQUssRUFBRSxDQUFDO1FBaUJqQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBR2xELGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQU16QyxRQUFHLEdBQUcsR0FBRyxDQUFDO1FBRVYsaUJBQVksR0FBRyxZQUFZLENBQUM7UUF3RDVCLGFBQVEsR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxJQUFJLENB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QyxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBbUIsRUFBRSxLQUFhO1FBQ3hDLElBQUksTUFBYSxDQUFDO1FBQ2xCLFFBQVEsS0FBSyxFQUFFO1lBQ2IsS0FBSyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3ZCLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3ZDLE1BQU07YUFDUDtZQUNELEtBQUssWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0QixNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUN0QyxNQUFNO2FBQ1A7WUFDRCxLQUFLLFlBQVksQ0FBQyxNQUFNO2dCQUN0QixNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUN0QyxNQUFNO1NBQ1Q7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDOztvSEF2RlUsdUJBQXVCO3dHQUF2Qix1QkFBdUIsZ1BDNUJwQyxxd0dBd0hBOzJGRDVGYSx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0UscUJBQXFCLGlCQUdoQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQyxZQUFZO3NCQURYLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFRTixRQUFRO3NCQURQLEtBQUs7Z0JBUU4sY0FBYztzQkFEYixNQUFNO2dCQUlQLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IENvbmZpZ1R5cGUsIERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyBidWlsZEJlbSB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcbmltcG9ydCB7XG4gIENhbGVuZGFySGVhZGVyUmFuZ2UsXG4gIERhdGVOYXZSYW5nZSxcbiAgU2lkZSxcbn0gZnJvbSAnLi4vLi4vZGF0ZS1waWNrZXIudHlwZSc7XG5pbXBvcnQgeyBNT05USCwgWUVBUiB9IGZyb20gJy4uL2NvbnN0YW50JztcbmltcG9ydCB7IGNhbGNSYW5nZVZhbHVlIH0gZnJvbSAnLi4vdXRpbCc7XG5cbmNvbnN0IGJlbSA9IGJ1aWxkQmVtKCdhdWktY2FsZW5kYXItaGVhZGVyJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1jYWxlbmRhci1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhbGVuZGFySGVhZGVyQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgZGF0ZU5hdlJhbmdlID0gRGF0ZU5hdlJhbmdlLk1vbnRoO1xuXG4gIEBJbnB1dCgpXG4gIGFuY2hvciA9IGRheWpzKCk7XG5cbiAgQElucHV0KClcbiAgbWF4QXZhaWw/OiBDb25maWdUeXBlO1xuXG4gIHByaXZhdGUgZ2V0IF9tYXhBdmFpbCgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXhBdmFpbCA/IGRheWpzKHRoaXMubWF4QXZhaWwpIDogbnVsbDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG1pbkF2YWlsPzogQ29uZmlnVHlwZTtcblxuICBwcml2YXRlIGdldCBfbWluQXZhaWwoKSB7XG4gICAgcmV0dXJuIHRoaXMubWluQXZhaWwgPyBkYXlqcyh0aGlzLm1pbkF2YWlsKSA6IG51bGw7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgbmF2UmFuZ2VDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERhdGVOYXZSYW5nZT4oKTtcblxuICBAT3V0cHV0KClcbiAgYW5jaG9yQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXlqcz4oKTtcblxuICBnZXQgaGVhZGVyUmFuZ2UoKTogQ2FsZW5kYXJIZWFkZXJSYW5nZSB7XG4gICAgcmV0dXJuIGNhbGNSYW5nZVZhbHVlKHRoaXMuZGF0ZU5hdlJhbmdlLCB0aGlzLmFuY2hvcik7XG4gIH1cblxuICBiZW0gPSBiZW07XG5cbiAgRGF0ZU5hdlJhbmdlID0gRGF0ZU5hdlJhbmdlO1xuXG4gIC8vIG1heEF2YWlsID4gY3VycmVudCBkYXRlIO+8mnJpZ2h0IGJ0biBoaWRlXG4gIC8vIG1pbkF2YWlsID4gY3VycmVudCBkYXRlIO+8mmxlZnQgYnRuIGhpZGVcbiAgc2hvdWxkU2hvd05hdih0eXBlOiBEYXRlTmF2UmFuZ2UsIHNpZGU6IFNpZGUpIHtcbiAgICBjb25zdCBhdmFpbFZhbHVlID0gKFxuICAgICAgc2lkZSA9PT0gU2lkZS5MZWZ0ID8gdGhpcy5fbWluQXZhaWwgOiB0aGlzLl9tYXhBdmFpbFxuICAgICk/LmNsb25lKCk7XG4gICAgaWYgKCFhdmFpbFZhbHVlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8g5a+55LqO5bm055qE5Yik5Yir77yMMjAxNC01LTHoh7MyMDE1LTYtMeaXpe+8jOS7jeW9k+WxleekuuaMiemSrlxuICAgIGNvbnN0IGNvbnN0cmFpbkRhdGUgPSBbRGF0ZU5hdlJhbmdlLk1vbnRoLCBEYXRlTmF2UmFuZ2UuWWVhcl0uaW5jbHVkZXModHlwZSlcbiAgICAgID8gYXZhaWxWYWx1ZS5hZGQoc2lkZSA9PT0gU2lkZS5MZWZ0ID8gMSA6IC0xLCB0eXBlIGFzICdtb250aCcgfCAneWVhcicpXG4gICAgICA6IGF2YWlsVmFsdWU7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuY29tcGFyZU5hdlZhbHVlKHR5cGUsIGNvbnN0cmFpbkRhdGUsIHRoaXMuYW5jaG9yKSA9PT1cbiAgICAgIChzaWRlID09PSBTaWRlLkxlZnQgPyAtMSA6IDEpXG4gICAgKTtcbiAgfVxuXG4gIC8vIEByZXR1cm4gaXNCZXR3ZWVufGlzRXF1YWw6MCwgaXNCZWZvcmU6LTEsaXNBZnRlcjoxXG4gIGNvbXBhcmVOYXZWYWx1ZSh0eXBlOiBEYXRlTmF2UmFuZ2UsIGNvbnN0cmFpbjogRGF5anMsIGFuY2hvcjogRGF5anMpIHtcbiAgICBjb25zdCByYW5nZSA9IGNhbGNSYW5nZVZhbHVlKHR5cGUsIGFuY2hvcik7XG4gICAgY29uc3QgY29uc3RyYWluVmFsdWUgPSBjb25zdHJhaW47XG4gICAgaWYgKHR5cGUgPT09IERhdGVOYXZSYW5nZS5EZWNhZGUpIHtcbiAgICAgIGlmIChjb25zdHJhaW5WYWx1ZS5pc0JldHdlZW4ocmFuZ2Uuc3RhcnQsIHJhbmdlLmVuZCwgWUVBUikpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG4gICAgICByZXR1cm4gY29uc3RyYWluVmFsdWUuaXNCZWZvcmUocmFuZ2Uuc3RhcnQpID8gLTEgOiAxO1xuICAgIH1cbiAgICByZXR1cm4gY29uc3RyYWluVmFsdWUuaXNTYW1lKHJhbmdlLnN0YXJ0LCBNT05USClcbiAgICAgID8gMFxuICAgICAgOiBjb25zdHJhaW5WYWx1ZS5pc0JlZm9yZShyYW5nZS5zdGFydCwgTU9OVEgpXG4gICAgICA/IC0xXG4gICAgICA6IDE7XG4gIH1cblxuICBuYXZIZWFkKHJhbmdlOiBEYXRlTmF2UmFuZ2UsIHZhbHVlOiBudW1iZXIpIHtcbiAgICBsZXQgYW5jaG9yOiBEYXlqcztcbiAgICBzd2l0Y2ggKHJhbmdlKSB7XG4gICAgICBjYXNlIERhdGVOYXZSYW5nZS5Nb250aDoge1xuICAgICAgICBhbmNob3IgPSB0aGlzLmFuY2hvci5hZGQodmFsdWUsIE1PTlRIKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIERhdGVOYXZSYW5nZS5ZZWFyOiB7XG4gICAgICAgIGFuY2hvciA9IHRoaXMuYW5jaG9yLmFkZCh2YWx1ZSwgWUVBUik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBEYXRlTmF2UmFuZ2UuRGVjYWRlOlxuICAgICAgICBhbmNob3IgPSB0aGlzLmFuY2hvci5hZGQodmFsdWUsIFlFQVIpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgdGhpcy5hbmNob3JDaGFuZ2UubmV4dChhbmNob3IpO1xuICB9XG5cbiAgY2xpY2tOYXYgPSAocmFuZ2U6IERhdGVOYXZSYW5nZSkgPT4ge1xuICAgIGlmICghW0RhdGVOYXZSYW5nZS5Nb250aCwgRGF0ZU5hdlJhbmdlLlllYXJdLmluY2x1ZGVzKHJhbmdlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm5hdlJhbmdlQ2hhbmdlLm5leHQoXG4gICAgICByYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoID8gRGF0ZU5hdlJhbmdlLlllYXIgOiBEYXRlTmF2UmFuZ2UuRGVjYWRlLFxuICAgICk7XG4gIH07XG59XG4iLCI8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29udGFpbmVyJylcIj5cbiAgPGRpdj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ5ZWFyQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAnbGVmdCcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVjYWRlQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAnbGVmdCcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPCEtLSDlhoXlrrnljLogLS0+XG4gIDxzcGFuXG4gICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5Nb250aFwiXG4gICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtY29udGVudCcpXCJcbiAgPlxuICAgIDxhXG4gICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuWWVhcilcIlxuICAgID5cbiAgICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydD8ueWVhcigpIH19e3sgJ3llYXJfc3VmZml4JyB8IGF1aUkxOG4gfX1cbiAgICA8L2E+XG4gICAgPGFcbiAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgKGNsaWNrKT1cImNsaWNrTmF2KERhdGVOYXZSYW5nZS5Nb250aClcIlxuICAgID5cbiAgICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydD8ubW9udGgoKSArIDEgfX17eyAnbW9udGhfc3VmZml4JyB8IGF1aUkxOG4gfX1cbiAgICA8L2E+XG4gIDwvc3Bhbj5cblxuICA8c3BhblxuICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuWWVhclwiXG4gICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtY29udGVudCcpXCJcbiAgPlxuICAgIDxhXG4gICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuWWVhcilcIlxuICAgID5cbiAgICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydD8ueWVhcigpIH19e3sgJ3llYXJfc3VmZml4JyB8IGF1aUkxOG4gfX1cbiAgICA8L2E+XG4gIDwvc3Bhbj5cblxuICA8c3BhblxuICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuRGVjYWRlXCJcbiAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ25hdi1jb250ZW50JylcIlxuICA+XG4gICAge3sgaGVhZGVyUmFuZ2U/LnN0YXJ0LnllYXIoKSB9fSAtIHt7IGhlYWRlclJhbmdlPy5lbmQ/LnllYXIoKSB9fVxuICA8L3NwYW4+XG5cbiAgPGRpdiBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ25hdi1hY3Rpb24nKVwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlICE9PSBEYXRlTmF2UmFuZ2UuRGVjYWRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInllYXJDb250cm9sXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHNpZGU6ICdyaWdodCcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVjYWRlQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAncmlnaHQnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlXG4gICN5ZWFyQ29udHJvbFxuICBsZXQtc2lkZT1cInNpZGVcIlxuPlxuICA8c3BhbiBjbGFzcz1cImFjdGlvbi1iYXJcIj5cbiAgICA8YnV0dG9uXG4gICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAqbmdJZj1cInNpZGUgPT09ICdyaWdodCdcIlxuICAgICAgW2NsYXNzLmhpZGRlbl09XCJcbiAgICAgICAgIXNob3VsZFNob3dOYXYoRGF0ZU5hdlJhbmdlLk1vbnRoLCBzaWRlKSB8fFxuICAgICAgICBkYXRlTmF2UmFuZ2UgIT09IERhdGVOYXZSYW5nZS5Nb250aFxuICAgICAgXCJcbiAgICAgIChjbGljayk9XCJuYXZIZWFkKERhdGVOYXZSYW5nZS5Nb250aCwgMSlcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwiYW5nbGVfcmlnaHRcIj48L2F1aS1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgIChjbGljayk9XCJuYXZIZWFkKERhdGVOYXZSYW5nZS5ZZWFyLCBzaWRlID09PSAnbGVmdCcgPyAtMSA6IDEpXCJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiIXNob3VsZFNob3dOYXYoRGF0ZU5hdlJhbmdlLlllYXIsIHNpZGUpXCJcbiAgICA+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgW2ljb25dPVwic2lkZSA9PT0gJ2xlZnQnID8gJ2FuZ2xlc19sZWZ0JyA6ICdhbmdsZXNfcmlnaHQnXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICpuZ0lmPVwic2lkZSA9PT0gJ2xlZnQnXCJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiXG4gICAgICAgICFzaG91bGRTaG93TmF2KERhdGVOYXZSYW5nZS5Nb250aCwgc2lkZSkgfHxcbiAgICAgICAgZGF0ZU5hdlJhbmdlICE9PSBEYXRlTmF2UmFuZ2UuTW9udGhcbiAgICAgIFwiXG4gICAgICAoY2xpY2spPVwibmF2SGVhZChEYXRlTmF2UmFuZ2UuTW9udGgsIC0xKVwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uIGljb249XCJhbmdsZV9sZWZ0XCI+PC9hdWktaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlXG4gICNkZWNhZGVDb250cm9sXG4gIGxldC1zaWRlPVwic2lkZVwiXG4+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgKGNsaWNrKT1cIm5hdkhlYWQoRGF0ZU5hdlJhbmdlLkRlY2FkZSwgc2lkZSA9PT0gJ2xlZnQnID8gLTEwIDogMTApXCJcbiAgICBbY2xhc3MuaGlkZGVuXT1cIiFzaG91bGRTaG93TmF2KERhdGVOYXZSYW5nZS5EZWNhZGUsIHNpZGUpXCJcbiAgPlxuICAgIDxhdWktaWNvblxuICAgICAgW2ljb25dPVwic2lkZSA9PT0gJ2xlZnQnID8gJ2FuZ2xlc19sZWZ0JyA6ICdhbmdsZXNfcmlnaHQnXCJcbiAgICA+PC9hdWktaWNvbj5cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import isBetween from 'dayjs/plugin/isBetween';
|
|
4
|
+
import { buildBem } from '../../../utils';
|
|
5
|
+
import { DateNavRange } from '../../date-picker.type';
|
|
6
|
+
import { DAY, DAY_PANEL_COLUMN_COUNT, DAY_PANEL_ROW_COUNT, MONTH, MONTH_PANEL_COLUMN_COUNT, MONTH_PANEL_ROW_COUNT, YEAR, YEAR_PANEL_COLUMN_COUNT, YEAR_PANEL_ROW_COUNT, } from '../constant';
|
|
7
|
+
import { calcRangeValue, composeDisabledDateFn, formatDate, getDatePanelIterable, getNavRangeByType, getTypeByNavRange, sortDates, } from '../util';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../../button/button.component";
|
|
10
|
+
import * as i2 from "@angular/common";
|
|
11
|
+
import * as i3 from "../../../i18n/i18n.pipe";
|
|
12
|
+
dayjs.extend(isBetween);
|
|
13
|
+
const bem = buildBem('aui-picker-panel');
|
|
14
|
+
export class PickerPanelComponent {
|
|
15
|
+
constructor(cdr) {
|
|
16
|
+
this.cdr = cdr;
|
|
17
|
+
this.anchor = dayjs();
|
|
18
|
+
this.disabledDate = () => false;
|
|
19
|
+
this._weekStartDay = 0;
|
|
20
|
+
this.select = new EventEmitter();
|
|
21
|
+
this.hovered = new EventEmitter();
|
|
22
|
+
this.bem = bem;
|
|
23
|
+
this.DateNavRange = DateNavRange;
|
|
24
|
+
this.weekDefs = [
|
|
25
|
+
'sunday',
|
|
26
|
+
'monday',
|
|
27
|
+
'tuesday',
|
|
28
|
+
'wednesday',
|
|
29
|
+
'thursday',
|
|
30
|
+
'friday',
|
|
31
|
+
'saturday',
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
set weekStartDay(day) {
|
|
35
|
+
const normalized = Math.max(Math.min(Math.round(day), 6), 0);
|
|
36
|
+
this.weekDefs = [
|
|
37
|
+
...this.weekDefs.slice(normalized),
|
|
38
|
+
...this.weekDefs.slice(0, normalized),
|
|
39
|
+
];
|
|
40
|
+
this._weekStartDay = normalized;
|
|
41
|
+
}
|
|
42
|
+
get weekStartDay() {
|
|
43
|
+
return this._weekStartDay;
|
|
44
|
+
}
|
|
45
|
+
get disabledDateFn() {
|
|
46
|
+
return composeDisabledDateFn(date => this.minDate && date.isBefore(this.minDate), date => this.maxDate && date.isAfter(this.maxDate), this.disabledDate);
|
|
47
|
+
}
|
|
48
|
+
ngOnChanges() {
|
|
49
|
+
// 如果 dateValue 是一个数组,必然是同一个面板上,否则应当给与不同的面板不同的dateValue值
|
|
50
|
+
const headerRange = calcRangeValue(this.navRange, this.anchor);
|
|
51
|
+
this.renderPanelData(headerRange.start, this.navRange);
|
|
52
|
+
}
|
|
53
|
+
// 根据当前数据,计算渲染表格
|
|
54
|
+
// eslint-disable-next-line sonarjs/cognitive-complexity
|
|
55
|
+
renderPanelData(date, navRange) {
|
|
56
|
+
const value = [];
|
|
57
|
+
let colCounts = 0;
|
|
58
|
+
let rowCounts = 0;
|
|
59
|
+
if (!this.panelData) {
|
|
60
|
+
this.panelData = [[]];
|
|
61
|
+
}
|
|
62
|
+
const [...values] = getDatePanelIterable(date, navRange, this.weekStartDay);
|
|
63
|
+
switch (navRange) {
|
|
64
|
+
case DateNavRange.Month: {
|
|
65
|
+
colCounts = DAY_PANEL_COLUMN_COUNT;
|
|
66
|
+
rowCounts = DAY_PANEL_ROW_COUNT;
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
case DateNavRange.Decade: {
|
|
70
|
+
colCounts = YEAR_PANEL_COLUMN_COUNT;
|
|
71
|
+
rowCounts = YEAR_PANEL_ROW_COUNT;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
case DateNavRange.Year: {
|
|
75
|
+
colCounts = MONTH_PANEL_COLUMN_COUNT;
|
|
76
|
+
rowCounts = MONTH_PANEL_ROW_COUNT;
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
// No default
|
|
80
|
+
}
|
|
81
|
+
for (let k = 0; k < rowCounts; k++) {
|
|
82
|
+
const row = [];
|
|
83
|
+
for (let i = 0; i < colCounts; i++) {
|
|
84
|
+
const cell = formatDate(navRange, values[k * colCounts + i], date);
|
|
85
|
+
cell.isDisabled = this.disabledDateFn(cell.value, navRange);
|
|
86
|
+
const sortedDates = sortDates(this.matchDates);
|
|
87
|
+
if (sortedDates?.length === 2 && navRange === DateNavRange.Month) {
|
|
88
|
+
if (cell.value.isBetween(sortedDates[0], sortedDates[1]) &&
|
|
89
|
+
!cell.isBackground) {
|
|
90
|
+
cell.inRange = true;
|
|
91
|
+
}
|
|
92
|
+
cell.isRangeStart =
|
|
93
|
+
cell.value.isSame(sortedDates[0], DAY) && !cell.isBackground;
|
|
94
|
+
cell.isRangeEnd =
|
|
95
|
+
cell.value.isSame(sortedDates[1], DAY) && !cell.isBackground;
|
|
96
|
+
if (cell.isRangeStart && cell.isRangeEnd) {
|
|
97
|
+
cell.isRangeStart = false;
|
|
98
|
+
cell.isRangeEnd = false;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
row.push(cell);
|
|
102
|
+
}
|
|
103
|
+
value.push(row);
|
|
104
|
+
}
|
|
105
|
+
this.panelData = value.slice();
|
|
106
|
+
this.cdr.markForCheck();
|
|
107
|
+
}
|
|
108
|
+
match(value) {
|
|
109
|
+
if (!this.matchDates?.filter(v => !!v)?.length ||
|
|
110
|
+
getNavRangeByType(this.type) !== this.navRange) {
|
|
111
|
+
return false;
|
|
112
|
+
}
|
|
113
|
+
return this.matchDates?.some(dateValue => this.navRange === DateNavRange.Decade
|
|
114
|
+
? value.isSame(dateValue, YEAR)
|
|
115
|
+
: this.navRange === DateNavRange.Year
|
|
116
|
+
? value.isSame(dateValue, MONTH)
|
|
117
|
+
: value.isSame(dateValue, DAY));
|
|
118
|
+
}
|
|
119
|
+
matchToday(value) {
|
|
120
|
+
return value.isSame(dayjs(), getTypeByNavRange(this.navRange));
|
|
121
|
+
}
|
|
122
|
+
selectValue(value) {
|
|
123
|
+
this.select.next(value);
|
|
124
|
+
}
|
|
125
|
+
trackByFn() {
|
|
126
|
+
return this.navRange;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
PickerPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PickerPanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
130
|
+
PickerPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: PickerPanelComponent, selector: "aui-picker-panel", inputs: { navRange: "navRange", type: "type", anchor: "anchor", matchDates: "matchDates", disabledDate: "disabledDate", weekStartDay: "weekStartDay", minDate: "minDate", maxDate: "maxDate" }, outputs: { select: "select", hovered: "hovered" }, usesOnChanges: true, ngImport: i0, template: "<div\n [class]=\"bem.element('container')\"\n [ngClass]=\"{\n 'day-panel-container': navRange === DateNavRange.Month,\n 'month-panel-container': navRange === DateNavRange.Year,\n 'year-panel-container': navRange === DateNavRange.Decade\n }\"\n>\n <div\n [class]=\"[bem.element('row'), 'week-header'].join(' ')\"\n *ngIf=\"navRange === DateNavRange.Month\"\n >\n <span\n *ngFor=\"let item of weekDefs\"\n [class]=\"bem.element('cell')\"\n >\n {{ item | auiI18n }}\n </span>\n </div>\n <div\n [class]=\"bem.element('row')\"\n *ngFor=\"let row of panelData; trackBy: trackByFn\"\n >\n <span\n *ngFor=\"let item of row; trackBy: trackByFn\"\n [class]=\"bem.element('cell')\"\n [ngClass]=\"{\n inRange: item.inRange && !item.isDisabled,\n isActive: match(item.value),\n isBackground: item.isBackground && !item.isDisabled,\n isRangeStart: item.isRangeStart,\n isRangeEnd: item.isRangeEnd,\n isToday: matchToday(item.value) && !item.isBackground,\n isDisabled: item.isDisabled\n }\"\n ><button\n aui-button=\"text\"\n [plain]=\"true\"\n [size]=\"navRange === DateNavRange.Month ? 'mini' : 'small'\"\n [disabled]=\"item.isDisabled\"\n (click)=\"selectValue(item.value)\"\n (mouseenter)=\"hovered.next(item.value)\"\n >\n {{ item.label\n }}<ng-container *ngIf=\"navRange === DateNavRange.Year\">{{\n 'month_suffix' | auiI18n\n }}</ng-container>\n </button>\n </span>\n </div>\n</div>\n", styles: [".aui-picker-panel__container{height:min-content;box-sizing:border-box;justify-content:stretch;display:flex;flex-direction:column;margin:12px 9px;align-items:center}.aui-picker-panel__container .aui-button{box-sizing:border-box}.aui-picker-panel__container .aui-button__content{padding:0!important}.aui-picker-panel__container.month-panel-container button,.aui-picker-panel__container.year-panel-container button{width:56px;height:28px!important}.aui-picker-panel__container.day-panel-container{height:min-content;padding:0;margin:0}.aui-picker-panel__container.day-panel-container button{height:24px!important;width:24px!important}.aui-picker-panel__container.day-panel-container .aui-picker-panel__row+.aui-picker-panel__row{margin-top:8px}.aui-picker-panel__row+.aui-picker-panel__row{margin-top:20px}.aui-picker-panel__row{flex:1;display:flex;align-items:center;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);width:100%}.aui-picker-panel__row.week-header{color:rgb(var(--aui-color-help-text));margin-bottom:8px}.aui-picker-panel__row.week-header span{display:inline-block;margin:0;width:36px;text-align:center}.aui-picker-panel__cell{display:inline-flex;position:relative;align-items:center;justify-content:center;margin-inline:6px}.aui-picker-panel__cell button{box-sizing:content-box;transition:color .3s ease,background-color .3s ease}.aui-picker-panel__cell.inRange{background-color:rgb(var(--aui-color-p-6));box-shadow:-6px 0 0 0 rgb(var(--aui-color-p-6)),6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isRangeEnd{box-shadow:-6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isRangeStart{box-shadow:6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isDisabled{background-color:rgb(var(--aui-color-n-8));box-shadow:-6px 0 0 0 rgb(var(--aui-color-n-8)),6px 0 0 0 rgb(var(--aui-color-n-8))}.aui-picker-panel__cell.isDisabled button{color:rgb(var(--aui-color-disabled-text))!important;border-color:rgb(var(--aui-color-disabled-text))!important}.aui-picker-panel__cell.isDisabled.isActive button,.aui-picker-panel__cell.isDisabled.isToday button{color:#fff!important;border-color:rgb(var(--aui-color-p-4))!important;background-color:rgb(var(--aui-color-p-4))!important}.aui-picker-panel__cell.isDisabled+.aui-picker-panel__cell:not(.isDisabled):not(.isRangeStart){box-shadow:-12px 0 0 0 rgb(var(--aui-color-popper-bg))}.aui-picker-panel__cell.isDisabled+.aui-picker-panel__cell:not(.isDisabled).isRangeStart{box-shadow:-12px 0 0 0 rgb(var(--aui-color-popper-bg)),6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell:not(.isDisabled)+.aui-picker-panel__cell.isDisabled{box-shadow:6px 0 0 0 rgb(var(--aui-color-n-8))}.aui-picker-panel__cell.isToday button{border:rgb(var(--aui-color-primary)) 1px solid;color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-7))}.aui-picker-panel__cell.isActive button{color:#fff;background-color:rgb(var(--aui-color-primary))}.aui-picker-panel__cell.isBackground button{background-color:initial!important;color:rgb(var(--aui-color-disabled-text))}\n"], components: [{ type: i1.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "auiI18n": i3.I18nPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
131
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: PickerPanelComponent, decorators: [{
|
|
132
|
+
type: Component,
|
|
133
|
+
args: [{ selector: 'aui-picker-panel', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n [class]=\"bem.element('container')\"\n [ngClass]=\"{\n 'day-panel-container': navRange === DateNavRange.Month,\n 'month-panel-container': navRange === DateNavRange.Year,\n 'year-panel-container': navRange === DateNavRange.Decade\n }\"\n>\n <div\n [class]=\"[bem.element('row'), 'week-header'].join(' ')\"\n *ngIf=\"navRange === DateNavRange.Month\"\n >\n <span\n *ngFor=\"let item of weekDefs\"\n [class]=\"bem.element('cell')\"\n >\n {{ item | auiI18n }}\n </span>\n </div>\n <div\n [class]=\"bem.element('row')\"\n *ngFor=\"let row of panelData; trackBy: trackByFn\"\n >\n <span\n *ngFor=\"let item of row; trackBy: trackByFn\"\n [class]=\"bem.element('cell')\"\n [ngClass]=\"{\n inRange: item.inRange && !item.isDisabled,\n isActive: match(item.value),\n isBackground: item.isBackground && !item.isDisabled,\n isRangeStart: item.isRangeStart,\n isRangeEnd: item.isRangeEnd,\n isToday: matchToday(item.value) && !item.isBackground,\n isDisabled: item.isDisabled\n }\"\n ><button\n aui-button=\"text\"\n [plain]=\"true\"\n [size]=\"navRange === DateNavRange.Month ? 'mini' : 'small'\"\n [disabled]=\"item.isDisabled\"\n (click)=\"selectValue(item.value)\"\n (mouseenter)=\"hovered.next(item.value)\"\n >\n {{ item.label\n }}<ng-container *ngIf=\"navRange === DateNavRange.Year\">{{\n 'month_suffix' | auiI18n\n }}</ng-container>\n </button>\n </span>\n </div>\n</div>\n", styles: [".aui-picker-panel__container{height:min-content;box-sizing:border-box;justify-content:stretch;display:flex;flex-direction:column;margin:12px 9px;align-items:center}.aui-picker-panel__container .aui-button{box-sizing:border-box}.aui-picker-panel__container .aui-button__content{padding:0!important}.aui-picker-panel__container.month-panel-container button,.aui-picker-panel__container.year-panel-container button{width:56px;height:28px!important}.aui-picker-panel__container.day-panel-container{height:min-content;padding:0;margin:0}.aui-picker-panel__container.day-panel-container button{height:24px!important;width:24px!important}.aui-picker-panel__container.day-panel-container .aui-picker-panel__row+.aui-picker-panel__row{margin-top:8px}.aui-picker-panel__row+.aui-picker-panel__row{margin-top:20px}.aui-picker-panel__row{flex:1;display:flex;align-items:center;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);width:100%}.aui-picker-panel__row.week-header{color:rgb(var(--aui-color-help-text));margin-bottom:8px}.aui-picker-panel__row.week-header span{display:inline-block;margin:0;width:36px;text-align:center}.aui-picker-panel__cell{display:inline-flex;position:relative;align-items:center;justify-content:center;margin-inline:6px}.aui-picker-panel__cell button{box-sizing:content-box;transition:color .3s ease,background-color .3s ease}.aui-picker-panel__cell.inRange{background-color:rgb(var(--aui-color-p-6));box-shadow:-6px 0 0 0 rgb(var(--aui-color-p-6)),6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isRangeEnd{box-shadow:-6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isRangeStart{box-shadow:6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell.isDisabled{background-color:rgb(var(--aui-color-n-8));box-shadow:-6px 0 0 0 rgb(var(--aui-color-n-8)),6px 0 0 0 rgb(var(--aui-color-n-8))}.aui-picker-panel__cell.isDisabled button{color:rgb(var(--aui-color-disabled-text))!important;border-color:rgb(var(--aui-color-disabled-text))!important}.aui-picker-panel__cell.isDisabled.isActive button,.aui-picker-panel__cell.isDisabled.isToday button{color:#fff!important;border-color:rgb(var(--aui-color-p-4))!important;background-color:rgb(var(--aui-color-p-4))!important}.aui-picker-panel__cell.isDisabled+.aui-picker-panel__cell:not(.isDisabled):not(.isRangeStart){box-shadow:-12px 0 0 0 rgb(var(--aui-color-popper-bg))}.aui-picker-panel__cell.isDisabled+.aui-picker-panel__cell:not(.isDisabled).isRangeStart{box-shadow:-12px 0 0 0 rgb(var(--aui-color-popper-bg)),6px 0 0 0 rgb(var(--aui-color-p-6))}.aui-picker-panel__cell:not(.isDisabled)+.aui-picker-panel__cell.isDisabled{box-shadow:6px 0 0 0 rgb(var(--aui-color-n-8))}.aui-picker-panel__cell.isToday button{border:rgb(var(--aui-color-primary)) 1px solid;color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-7))}.aui-picker-panel__cell.isActive button{color:#fff;background-color:rgb(var(--aui-color-primary))}.aui-picker-panel__cell.isBackground button{background-color:initial!important;color:rgb(var(--aui-color-disabled-text))}\n"] }]
|
|
134
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { navRange: [{
|
|
135
|
+
type: Input
|
|
136
|
+
}], type: [{
|
|
137
|
+
type: Input
|
|
138
|
+
}], anchor: [{
|
|
139
|
+
type: Input
|
|
140
|
+
}], matchDates: [{
|
|
141
|
+
type: Input
|
|
142
|
+
}], disabledDate: [{
|
|
143
|
+
type: Input
|
|
144
|
+
}], weekStartDay: [{
|
|
145
|
+
type: Input
|
|
146
|
+
}], minDate: [{
|
|
147
|
+
type: Input
|
|
148
|
+
}], maxDate: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], select: [{
|
|
151
|
+
type: Output
|
|
152
|
+
}], hovered: [{
|
|
153
|
+
type: Output
|
|
154
|
+
}] } });
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2VyLXBhbmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL3BhbmVsL3BpY2tlci1wYW5lbC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9jYWxlbmRhci9wYW5lbC9waWNrZXItcGFuZWwudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLFNBQVMsTUFBTSx3QkFBd0IsQ0FBQztBQUUvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFDTCxHQUFHLEVBQ0gsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUVuQixLQUFLLEVBQ0wsd0JBQXdCLEVBQ3hCLHFCQUFxQixFQUNyQixJQUFJLEVBQ0osdUJBQXVCLEVBQ3ZCLG9CQUFvQixHQUNyQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBRUwsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixVQUFVLEVBQ1Ysb0JBQW9CLEVBQ3BCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsU0FBUyxHQUNWLE1BQU0sU0FBUyxDQUFDOzs7OztBQUVqQixLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBRXhCLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBU3pDLE1BQU0sT0FBTyxvQkFBb0I7SUFtRS9CLFlBQTZCLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBM0RuRCxXQUFN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QUFDLENBQ2pDLENBQUM7SUFDSixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVk7UUFDckIsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBWTtRQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOztpSEFsS1Usb0JBQW9CO3FHQUFwQixvQkFBb0IsZ1VDakRqQywyakRBbURBOzJGREZhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDRSxrQkFBa0IsaUJBR2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTt3R0FJL0MsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJRixZQUFZO3NCQURmLEtBQUs7Z0JBZU4sT0FBTztzQkFETixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFnQk4sTUFBTTtzQkFETCxNQUFNO2dCQUlQLE9BQU87c0JBRE4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IGlzQmV0d2VlbiBmcm9tICdkYXlqcy9wbHVnaW4vaXNCZXR3ZWVuJztcblxuaW1wb3J0IHsgYnVpbGRCZW0gfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgeyBEYXRlTmF2UmFuZ2UgfSBmcm9tICcuLi8uLi9kYXRlLXBpY2tlci50eXBlJztcbmltcG9ydCB7XG4gIERBWSxcbiAgREFZX1BBTkVMX0NPTFVNTl9DT1VOVCxcbiAgREFZX1BBTkVMX1JPV19DT1VOVCxcbiAgRGF0ZVBpY2tlclR5cGUsXG4gIE1PTlRILFxuICBNT05USF9QQU5FTF9DT0xVTU5fQ09VTlQsXG4gIE1PTlRIX1BBTkVMX1JPV19DT1VOVCxcbiAgWUVBUixcbiAgWUVBUl9QQU5FTF9DT0xVTU5fQ09VTlQsXG4gIFlFQVJfUEFORUxfUk9XX0NPVU5ULFxufSBmcm9tICcuLi9jb25zdGFudCc7XG5pbXBvcnQge1xuICBEYXRlQ2VsbCxcbiAgY2FsY1JhbmdlVmFsdWUsXG4gIGNvbXBvc2VEaXNhYmxlZERhdGVGbixcbiAgZm9ybWF0RGF0ZSxcbiAgZ2V0RGF0ZVBhbmVsSXRlcmFibGUsXG4gIGdldE5hdlJhbmdlQnlUeXBlLFxuICBnZXRUeXBlQnlOYXZSYW5nZSxcbiAgc29ydERhdGVzLFxufSBmcm9tICcuLi91dGlsJztcblxuZGF5anMuZXh0ZW5kKGlzQmV0d2Vlbik7XG5cbmNvbnN0IGJlbSA9IGJ1aWxkQmVtKCdhdWktcGlja2VyLXBhbmVsJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1waWNrZXItcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGlja2VyLXBhbmVsLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9waWNrZXItcGFuZWwuc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUGlja2VyUGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBuYXZSYW5nZTogRGF0ZU5hdlJhbmdlO1xuXG4gIEBJbnB1dCgpXG4gIHR5cGU6IERhdGVQaWNrZXJUeXBlO1xuXG4gIEBJbnB1dCgpXG4gIGFuY2hvciA9IGRheWpzKCk7XG5cbiAgQElucHV0KClcbiAgbWF0Y2hEYXRlczogRGF5anNbXTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZERhdGU6IChkYXRlOiBEYXlqcywgbmF2UmFuZ2U6IERhdGVOYXZSYW5nZSkgPT4gYm9vbGVhbiA9ICgpID0+IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCB3ZWVrU3RhcnREYXkoZGF5OiBudW1iZXIpIHtcbiAgICBjb25zdCBub3JtYWxpemVkID0gTWF0aC5tYXgoTWF0aC5taW4oTWF0aC5yb3VuZChkYXkpLCA2KSwgMCk7XG4gICAgdGhpcy53ZWVrRGVmcyA9IFtcbiAgICAgIC4uLnRoaXMud2Vla0RlZnMuc2xpY2Uobm9ybWFsaXplZCksXG4gICAgICAuLi50aGlzLndlZWtEZWZzLnNsaWNlKDAsIG5vcm1hbGl6ZWQpLFxuICAgIF07XG4gICAgdGhpcy5fd2Vla1N0YXJ0RGF5ID0gbm9ybWFsaXplZDtcbiAgfVxuXG4gIGdldCB3ZWVrU3RhcnREYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3dlZWtTdGFydERheTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIG1pbkRhdGU6IERheWpzO1xuXG4gIEBJbnB1dCgpXG4gIG1heERhdGU6IERheWpzO1xuXG4gIGdldCBkaXNhYmxlZERhdGVGbigpIHtcbiAgICByZXR1cm4gY29tcG9zZURpc2FibGVkRGF0ZUZuKFxuICAgICAgZGF0ZSA9PiB0aGlzLm1pbkRhdGUgJiYgZGF0ZS5pc0JlZm9yZSh0aGlzLm1pbkRhdGUpLFxuICAgICAgZGF0ZSA9PiB0aGlzLm1heERhdGUgJiYgZGF0ZS5pc0FmdGVyKHRoaXMubWF4RGF0ZSksXG4gICAgICB0aGlzLmRpc2FibGVkRGF0ZSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfd2Vla1N0YXJ0RGF5ID0gMDtcblxuICBwYW5lbERhdGE6IERhdGVDZWxsW11bXTtcblxuICBAT3V0cHV0KClcbiAgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXlqcz4oKTtcblxuICBAT3V0cHV0KClcbiAgaG92ZXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8RGF5anM+KCk7XG5cbiAgYmVtID0gYmVtO1xuICBEYXRlTmF2UmFuZ2UgPSBEYXRlTmF2UmFuZ2U7XG5cbiAgd2Vla0RlZnMgPSBbXG4gICAgJ3N1bmRheScsXG4gICAgJ21vbmRheScsXG4gICAgJ3R1ZXNkYXknLFxuICAgICd3ZWRuZXNkYXknLFxuICAgICd0aHVyc2RheScsXG4gICAgJ2ZyaWRheScsXG4gICAgJ3NhdHVyZGF5JyxcbiAgXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgLy8g5aaC5p6cIGRhdGVWYWx1ZSDmmK/kuIDkuKrmlbDnu4TvvIzlv4XnhLbmmK/lkIzkuIDkuKrpnaLmnb/kuIrvvIzlkKbliJnlupTlvZPnu5nkuI7kuI3lkIznmoTpnaLmnb/kuI3lkIznmoRkYXRlVmFsdWXlgLxcbiAgICBjb25zdCBoZWFkZXJSYW5nZSA9IGNhbGNSYW5nZVZhbHVlKHRoaXMubmF2UmFuZ2UsIHRoaXMuYW5jaG9yKTtcbiAgICB0aGlzLnJlbmRlclBhbmVsRGF0YShoZWFkZXJSYW5nZS5zdGFydCwgdGhpcy5uYXZSYW5nZSk7XG4gIH1cblxuICAvLyDmoLnmja7lvZPliY3mlbDmja7vvIzorqHnrpfmuLLmn5PooajmoLxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNvbmFyanMvY29nbml0aXZlLWNvbXBsZXhpdHlcbiAgcmVuZGVyUGFuZWxEYXRhKGRhdGU6IERheWpzLCBuYXZSYW5nZTogRGF0ZU5hdlJhbmdlKSB7XG4gICAgY29uc3QgdmFsdWUgPSBbXTtcbiAgICBsZXQgY29sQ291bnRzID0gMDtcbiAgICBsZXQgcm93Q291bnRzID0gMDtcbiAgICBpZiAoIXRoaXMucGFuZWxEYXRhKSB7XG4gICAgICB0aGlzLnBhbmVsRGF0YSA9IFtbXV07XG4gICAgfVxuICAgIGNvbnN0IFsuLi52YWx1ZXNdID0gZ2V0RGF0ZVBhbmVsSXRlcmFibGUoZGF0ZSwgbmF2UmFuZ2UsIHRoaXMud2Vla1N0YXJ0RGF5KTtcbiAgICBzd2l0Y2ggKG5hdlJhbmdlKSB7XG4gICAgICBjYXNlIERhdGVOYXZSYW5nZS5Nb250aDoge1xuICAgICAgICBjb2xDb3VudHMgPSBEQVlfUEFORUxfQ09MVU1OX0NPVU5UO1xuICAgICAgICByb3dDb3VudHMgPSBEQVlfUEFORUxfUk9XX0NPVU5UO1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBEYXRlTmF2UmFuZ2UuRGVjYWRlOiB7XG4gICAgICAgIGNvbENvdW50cyA9IFlFQVJfUEFORUxfQ09MVU1OX0NPVU5UO1xuICAgICAgICByb3dDb3VudHMgPSBZRUFSX1BBTkVMX1JPV19DT1VOVDtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgRGF0ZU5hdlJhbmdlLlllYXI6IHtcbiAgICAgICAgY29sQ291bnRzID0gTU9OVEhfUEFORUxfQ09MVU1OX0NPVU5UO1xuICAgICAgICByb3dDb3VudHMgPSBNT05USF9QQU5FTF9ST1dfQ09VTlQ7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICAvLyBObyBkZWZhdWx0XG4gICAgfVxuICAgIGZvciAobGV0IGsgPSAwOyBrIDwgcm93Q291bnRzOyBrKyspIHtcbiAgICAgIGNvbnN0IHJvdyA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xDb3VudHM7IGkrKykge1xuICAgICAgICBjb25zdCBjZWxsID0gZm9ybWF0RGF0ZShuYXZSYW5nZSwgdmFsdWVzW2sgKiBjb2xDb3VudHMgKyBpXSwgZGF0ZSk7XG4gICAgICAgIGNlbGwuaXNEaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWREYXRlRm4oY2VsbC52YWx1ZSwgbmF2UmFuZ2UpO1xuICAgICAgICBjb25zdCBzb3J0ZWREYXRlcyA9IHNvcnREYXRlcyh0aGlzLm1hdGNoRGF0ZXMpO1xuICAgICAgICBpZiAoc29ydGVkRGF0ZXM/Lmxlbmd0aCA9PT0gMiAmJiBuYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgY2VsbC52YWx1ZS5pc0JldHdlZW4oc29ydGVkRGF0ZXNbMF0sIHNvcnRlZERhdGVzWzFdKSAmJlxuICAgICAgICAgICAgIWNlbGwuaXNCYWNrZ3JvdW5kXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBjZWxsLmluUmFuZ2UgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjZWxsLmlzUmFuZ2VTdGFydCA9XG4gICAgICAgICAgICBjZWxsLnZhbHVlLmlzU2FtZShzb3J0ZWREYXRlc1swXSwgREFZKSAmJiAhY2VsbC5pc0JhY2tncm91bmQ7XG4gICAgICAgICAgY2VsbC5pc1JhbmdlRW5kID1cbiAgICAgICAgICAgIGNlbGwudmFsdWUuaXNTYW1lKHNvcnRlZERhdGVzWzFdLCBEQVkpICYmICFjZWxsLmlzQmFja2dyb3VuZDtcbiAgICAgICAgICBpZiAoY2VsbC5pc1JhbmdlU3RhcnQgJiYgY2VsbC5pc1JhbmdlRW5kKSB7XG4gICAgICAgICAgICBjZWxsLmlzUmFuZ2VTdGFydCA9IGZhbHNlO1xuICAgICAgICAgICAgY2VsbC5pc1JhbmdlRW5kID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJvdy5wdXNoKGNlbGwpO1xuICAgICAgfVxuICAgICAgdmFsdWUucHVzaChyb3cpO1xuICAgIH1cbiAgICB0aGlzLnBhbmVsRGF0YSA9IHZhbHVlLnNsaWNlKCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBtYXRjaCh2YWx1ZTogRGF5anMpIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5tYXRjaERhdGVzPy5maWx0ZXIodiA9PiAhIXYpPy5sZW5ndGggfHxcbiAgICAgIGdldE5hdlJhbmdlQnlUeXBlKHRoaXMudHlwZSkgIT09IHRoaXMubmF2UmFuZ2VcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubWF0Y2hEYXRlcz8uc29tZShkYXRlVmFsdWUgPT5cbiAgICAgIHRoaXMubmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcbiAgICAgICAgPyB2YWx1ZS5pc1NhbWUoZGF0ZVZhbHVlLCBZRUFSKVxuICAgICAgICA6IHRoaXMubmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5ZZWFyXG4gICAgICAgID8gdmFsdWUuaXNTYW1lKGRhdGVWYWx1ZSwgTU9OVEgpXG4gICAgICAgIDogdmFsdWUuaXNTYW1lKGRhdGVWYWx1ZSwgREFZKSxcbiAgICApO1xuICB9XG5cbiAgbWF0Y2hUb2RheSh2YWx1ZTogRGF5anMpIHtcbiAgICByZXR1cm4gdmFsdWUuaXNTYW1lKGRheWpzKCksIGdldFR5cGVCeU5hdlJhbmdlKHRoaXMubmF2UmFuZ2UpKTtcbiAgfVxuXG4gIHNlbGVjdFZhbHVlKHZhbHVlOiBEYXlqcykge1xuICAgIHRoaXMuc2VsZWN0Lm5leHQodmFsdWUpO1xuICB9XG5cbiAgdHJhY2tCeUZuKCkge1xuICAgIHJldHVybiB0aGlzLm5hdlJhbmdlO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29udGFpbmVyJylcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ2RheS1wYW5lbC1jb250YWluZXInOiBuYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoLFxuICAgICdtb250aC1wYW5lbC1jb250YWluZXInOiBuYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLlllYXIsXG4gICAgJ3llYXItcGFuZWwtY29udGFpbmVyJzogbmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcbiAgfVwiXG4+XG4gIDxkaXZcbiAgICBbY2xhc3NdPVwiW2JlbS5lbGVtZW50KCdyb3cnKSwgJ3dlZWstaGVhZGVyJ10uam9pbignICcpXCJcbiAgICAqbmdJZj1cIm5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuTW9udGhcIlxuICA+XG4gICAgPHNwYW5cbiAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIHdlZWtEZWZzXCJcbiAgICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnY2VsbCcpXCJcbiAgICA+XG4gICAgICB7eyBpdGVtIHwgYXVpSTE4biB9fVxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ3JvdycpXCJcbiAgICAqbmdGb3I9XCJsZXQgcm93IG9mIHBhbmVsRGF0YTsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgPlxuICAgIDxzcGFuXG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiByb3c7IHRyYWNrQnk6IHRyYWNrQnlGblwiXG4gICAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ2NlbGwnKVwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgIGluUmFuZ2U6IGl0ZW0uaW5SYW5nZSAmJiAhaXRlbS5pc0Rpc2FibGVkLFxuICAgICAgICBpc0FjdGl2ZTogbWF0Y2goaXRlbS52YWx1ZSksXG4gICAgICAgIGlzQmFja2dyb3VuZDogaXRlbS5pc0JhY2tncm91bmQgJiYgIWl0ZW0uaXNEaXNhYmxlZCxcbiAgICAgICAgaXNSYW5nZVN0YXJ0OiBpdGVtLmlzUmFuZ2VTdGFydCxcbiAgICAgICAgaXNSYW5nZUVuZDogaXRlbS5pc1JhbmdlRW5kLFxuICAgICAgICBpc1RvZGF5OiBtYXRjaFRvZGF5KGl0ZW0udmFsdWUpICYmICFpdGVtLmlzQmFja2dyb3VuZCxcbiAgICAgICAgaXNEaXNhYmxlZDogaXRlbS5pc0Rpc2FibGVkXG4gICAgICB9XCJcbiAgICAgID48YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgW3BsYWluXT1cInRydWVcIlxuICAgICAgICBbc2l6ZV09XCJuYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoID8gJ21pbmknIDogJ3NtYWxsJ1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmlzRGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0VmFsdWUoaXRlbS52YWx1ZSlcIlxuICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlcmVkLm5leHQoaXRlbS52YWx1ZSlcIlxuICAgICAgPlxuICAgICAgICB7eyBpdGVtLmxhYmVsXG4gICAgICAgIH19PG5nLWNvbnRhaW5lciAqbmdJZj1cIm5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuWWVhclwiPnt7XG4gICAgICAgICAgJ21vbnRoX3N1ZmZpeCcgfCBhdWlJMThuXG4gICAgICAgIH19PC9uZy1jb250YWluZXI+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|