@acorex/components 7.1.1 → 7.1.3
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/README.md +24 -24
- package/breadcrumbs/src/breadcrumbs-item.component.d.ts +3 -1
- package/button/src/button-item.component.d.ts +1 -3
- package/color-picker/src/color-picker.component.d.ts +5 -0
- package/esm2022/action-sheet/public-api.mjs +1 -1
- package/esm2022/action-sheet/src/action-sheet.component.mjs +3 -3
- package/esm2022/action-sheet/src/action-sheet.interface.mjs +1 -1
- package/esm2022/action-sheet/src/action-sheet.module.mjs +1 -1
- package/esm2022/action-sheet/src/action-sheet.service.mjs +1 -1
- package/esm2022/alert/public-api.mjs +1 -1
- package/esm2022/alert/src/alert.component.mjs +3 -3
- package/esm2022/alert/src/alert.module.mjs +1 -1
- package/esm2022/avatar/public-api.mjs +1 -1
- package/esm2022/avatar/src/avatar-group.component.mjs +1 -1
- package/esm2022/avatar/src/avatar.component.mjs +3 -3
- package/esm2022/avatar/src/avatar.module.mjs +1 -1
- package/esm2022/badge/public-api.mjs +1 -1
- package/esm2022/badge/src/badge.component.mjs +3 -3
- package/esm2022/badge/src/badge.module.mjs +1 -1
- package/esm2022/breadcrumbs/public-api.mjs +1 -1
- package/esm2022/breadcrumbs/src/breadcrumbs-item.class.mjs +1 -1
- package/esm2022/breadcrumbs/src/breadcrumbs-item.component.mjs +3 -3
- package/esm2022/breadcrumbs/src/breadcrumbs.component.mjs +3 -3
- package/esm2022/breadcrumbs/src/breadcrumbs.module.mjs +1 -1
- package/esm2022/button/public-api.mjs +1 -1
- package/esm2022/button/src/button-group.component.mjs +1 -1
- package/esm2022/button/src/button-item.class.mjs +1 -1
- package/esm2022/button/src/button-item.component.mjs +11 -11
- package/esm2022/button/src/button.component.mjs +3 -3
- package/esm2022/button/src/button.module.mjs +1 -1
- package/esm2022/calendar/public-api.mjs +1 -1
- package/esm2022/calendar/src/calendar-range.component.mjs +3 -3
- package/esm2022/calendar/src/calendar.class.mjs +1 -1
- package/esm2022/calendar/src/calendar.component.mjs +3 -3
- package/esm2022/calendar/src/calendar.module.mjs +1 -1
- package/esm2022/card/public-api.mjs +1 -1
- package/esm2022/card/src/card.component.mjs +3 -3
- package/esm2022/card/src/card.module.mjs +1 -1
- package/esm2022/checkbox/public-api.mjs +1 -1
- package/esm2022/checkbox/src/checkbox.component.mjs +3 -3
- package/esm2022/checkbox/src/checkbox.module.mjs +1 -1
- package/esm2022/chips/public-api.mjs +1 -1
- package/esm2022/chips/src/chips.component.mjs +3 -3
- package/esm2022/chips/src/chips.module.mjs +1 -1
- package/esm2022/collapse/public-api.mjs +1 -1
- package/esm2022/collapse/src/collapse-group.component.mjs +1 -1
- package/esm2022/collapse/src/collapse.component.mjs +3 -3
- package/esm2022/collapse/src/collapse.module.mjs +1 -1
- package/esm2022/color-palette/public-api.mjs +1 -1
- package/esm2022/color-palette/src/color-palette-input.component.mjs +3 -3
- package/esm2022/color-palette/src/color-palette-picker.component.mjs +3 -3
- package/esm2022/color-palette/src/color-palette-preview.component.mjs +7 -7
- package/esm2022/color-palette/src/color-palette-swatches.component.mjs +11 -11
- package/esm2022/color-palette/src/color-palette.class.mjs +1 -1
- package/esm2022/color-palette/src/color-palette.component.mjs +3 -3
- package/esm2022/color-palette/src/color-palette.module.mjs +1 -1
- package/esm2022/color-picker/public-api.mjs +1 -1
- package/esm2022/color-picker/src/color-picker.component.mjs +3 -3
- package/esm2022/color-picker/src/color-picker.module.mjs +1 -1
- package/esm2022/common/public-api.mjs +1 -1
- package/esm2022/common/src/classes/components.class.mjs +1 -1
- package/esm2022/common/src/classes/data.class.mjs +1 -1
- package/esm2022/common/src/classes/drawing.class.mjs +1 -1
- package/esm2022/common/src/classes/events.class.mjs +1 -1
- package/esm2022/common/src/classes/styles.class.mjs +1 -1
- package/esm2022/common/src/common.module.mjs +1 -1
- package/esm2022/common/src/components/base-component.class.mjs +1 -1
- package/esm2022/common/src/components/button-base-component.class.mjs +1 -1
- package/esm2022/common/src/components/color-component.class.mjs +1 -1
- package/esm2022/common/src/components/colorlook-component.class.mjs +1 -1
- package/esm2022/common/src/components/index.mjs +1 -1
- package/esm2022/common/src/components/interactive-component.class.mjs +1 -1
- package/esm2022/common/src/components/look-component.class.mjs +1 -1
- package/esm2022/common/src/components/value-component.class.mjs +1 -1
- package/esm2022/common/src/constant/positions.mjs +1 -1
- package/esm2022/common/src/directives/auto-focus.directive.mjs +1 -1
- package/esm2022/common/src/directives/debounce-time.directive.mjs +1 -1
- package/esm2022/common/src/directives/hotkey.directive.mjs +1 -1
- package/esm2022/common/src/directives/infinite-scroll.directive.mjs +1 -1
- package/esm2022/common/src/directives/responsive.directive.mjs +1 -1
- package/esm2022/common/src/services/custom-cdk-overlay.service.mjs +1 -1
- package/esm2022/common/src/services/hotkey.service.mjs +1 -1
- package/esm2022/common/src/services/overlay.service.mjs +1 -1
- package/esm2022/context-menu/public-api.mjs +1 -1
- package/esm2022/context-menu/src/context-menu.component.mjs +3 -3
- package/esm2022/context-menu/src/context-menu.module.mjs +1 -1
- package/esm2022/data-pager/public-api.mjs +1 -1
- package/esm2022/data-pager/src/data-pager-base.component.mjs +1 -1
- package/esm2022/data-pager/src/data-pager-info.component.mjs +1 -1
- package/esm2022/data-pager/src/data-pager-input-selector.component.mjs +9 -9
- package/esm2022/data-pager/src/data-pager-next-buttons.components.mjs +17 -17
- package/esm2022/data-pager/src/data-pager-numeric-selector.component.mjs +27 -27
- package/esm2022/data-pager/src/data-pager-pagesize-dropdown.component.mjs +23 -23
- package/esm2022/data-pager/src/data-pager-prev-buttons.component.mjs +15 -15
- package/esm2022/data-pager/src/data-pager.component.mjs +3 -3
- package/esm2022/data-pager/src/data-pager.module.mjs +1 -1
- package/esm2022/data-table/public-api.mjs +1 -1
- package/esm2022/data-table/src/data-column-cell-template.directive.mjs +1 -1
- package/esm2022/data-table/src/data-column.directive.mjs +1 -1
- package/esm2022/data-table/src/data-table.component.mjs +3 -3
- package/esm2022/data-table/src/data-table.module.mjs +1 -1
- package/esm2022/date-picker/public-api.mjs +1 -1
- package/esm2022/date-picker/src/datepicker.component.mjs +3 -3
- package/esm2022/date-picker/src/datepicker.module.mjs +1 -1
- package/esm2022/decorators/public-api.mjs +1 -1
- package/esm2022/decorators/src/close-button.component.mjs +9 -9
- package/esm2022/decorators/src/content.component.mjs +1 -1
- package/esm2022/decorators/src/decorators.module.mjs +1 -1
- package/esm2022/decorators/src/footer.component.mjs +9 -9
- package/esm2022/decorators/src/form-hint.component.mjs +1 -1
- package/esm2022/decorators/src/header.component.mjs +9 -9
- package/esm2022/decorators/src/icon.component.mjs +1 -1
- package/esm2022/decorators/src/overlay.component.mjs +1 -1
- package/esm2022/decorators/src/placeholder.component.mjs +1 -1
- package/esm2022/decorators/src/prefix.component.mjs +1 -1
- package/esm2022/decorators/src/sub-title.component.mjs +3 -3
- package/esm2022/decorators/src/suffix.component.mjs +1 -1
- package/esm2022/decorators/src/text.component.mjs +1 -1
- package/esm2022/decorators/src/title.component.mjs +1 -1
- package/esm2022/dialog/public-api.mjs +1 -1
- package/esm2022/dialog/src/dialog.class.mjs +1 -1
- package/esm2022/dialog/src/dialog.component.mjs +3 -3
- package/esm2022/dialog/src/dialog.module.mjs +1 -1
- package/esm2022/dialog/src/dialog.service.mjs +1 -1
- package/esm2022/drawer/public-api.mjs +1 -1
- package/esm2022/drawer/src/drawer-container.component.mjs +9 -9
- package/esm2022/drawer/src/drawer.component.mjs +7 -7
- package/esm2022/drawer/src/drawer.module.mjs +1 -1
- package/esm2022/dropdown/public-api.mjs +1 -1
- package/esm2022/dropdown/src/dropdown-panel.component.mjs +3 -3
- package/esm2022/dropdown/src/dropdown.module.mjs +1 -1
- package/esm2022/form/public-api.mjs +1 -1
- package/esm2022/form/src/form-field.component.mjs +1 -1
- package/esm2022/form/src/form.component.mjs +1 -1
- package/esm2022/form/src/form.module.mjs +1 -1
- package/esm2022/form/src/validation-rule.widget.mjs +1 -1
- package/esm2022/form/src/validation-summary.component.mjs +29 -29
- package/esm2022/form/src/validation.class.mjs +1 -1
- package/esm2022/image/public-api.mjs +1 -1
- package/esm2022/image/src/image.component.mjs +3 -3
- package/esm2022/image/src/image.module.mjs +1 -1
- package/esm2022/label/public-api.mjs +1 -1
- package/esm2022/label/src/label.component.mjs +3 -3
- package/esm2022/label/src/label.module.mjs +1 -1
- package/esm2022/loading/public-api.mjs +1 -1
- package/esm2022/loading/src/loading-spinner.component.mjs +53 -53
- package/esm2022/loading/src/loading.component.mjs +11 -11
- package/esm2022/loading/src/loading.directive.mjs +1 -1
- package/esm2022/loading/src/loading.module.mjs +1 -1
- package/esm2022/loading/src/loading.service.mjs +1 -1
- package/esm2022/menu/public-api.mjs +1 -1
- package/esm2022/menu/src/menu.component.mjs +3 -3
- package/esm2022/menu/src/menu.module.mjs +1 -1
- package/esm2022/mixin/public-api.mjs +1 -1
- package/esm2022/mixin/src/base-components.class.mjs +1 -1
- package/esm2022/mixin/src/base-menu-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/button-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/clickable-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/color-look-mixing.class.mjs +1 -1
- package/esm2022/mixin/src/constratctor.mjs +1 -1
- package/esm2022/mixin/src/datalist-component.class.mjs +1 -1
- package/esm2022/mixin/src/datalist.class.mjs +1 -1
- package/esm2022/mixin/src/dropdown-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/interactive-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/loading-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/mixin.class.mjs +1 -1
- package/esm2022/mixin/src/page-component.class.mjs +1 -1
- package/esm2022/mixin/src/selection-component.class.mjs +1 -1
- package/esm2022/mixin/src/sizable-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/textbox-mixin.class.mjs +1 -1
- package/esm2022/mixin/src/value-mixin.class.mjs +1 -1
- package/esm2022/notification/public-api.mjs +1 -1
- package/esm2022/notification/src/notification.class.mjs +1 -1
- package/esm2022/notification/src/notification.component.mjs +3 -3
- package/esm2022/notification/src/notification.module.mjs +1 -1
- package/esm2022/notification/src/notification.service.mjs +1 -1
- package/esm2022/number-box/public-api.mjs +1 -1
- package/esm2022/number-box/src/number-box.component.mjs +3 -3
- package/esm2022/number-box/src/number-box.module.mjs +1 -1
- package/esm2022/page/public-api.mjs +1 -1
- package/esm2022/page/src/base-page.class.mjs +1 -1
- package/esm2022/page/src/page.component.mjs +1 -1
- package/esm2022/page/src/page.module.mjs +1 -1
- package/esm2022/password-box/public-api.mjs +1 -1
- package/esm2022/password-box/src/password-box.component.mjs +3 -3
- package/esm2022/password-box/src/password-box.module.mjs +1 -1
- package/esm2022/picker/public-api.mjs +1 -1
- package/esm2022/picker/src/picker-column.component.mjs +3 -3
- package/esm2022/picker/src/picker.component.mjs +3 -3
- package/esm2022/picker/src/picker.module.mjs +1 -1
- package/esm2022/popover/public-api.mjs +1 -1
- package/esm2022/popover/src/popover.component.mjs +3 -3
- package/esm2022/popover/src/popover.module.mjs +1 -1
- package/esm2022/popup/public-api.mjs +1 -1
- package/esm2022/popup/src/popup.component.mjs +3 -3
- package/esm2022/popup/src/popup.module.mjs +1 -1
- package/esm2022/popup/src/popup.service.mjs +1 -1
- package/esm2022/progress-bar/public-api.mjs +1 -1
- package/esm2022/progress-bar/src/progress-bar.component.mjs +3 -3
- package/esm2022/progress-bar/src/progress-bar.module.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/esm2022/radio/public-api.mjs +1 -1
- package/esm2022/radio/src/radio.component.mjs +3 -3
- package/esm2022/radio/src/radio.module.mjs +1 -1
- package/esm2022/range-slider/public-api.mjs +1 -1
- package/esm2022/range-slider/src/range-slider.component.mjs +1 -1
- package/esm2022/range-slider/src/range-slider.module.mjs +1 -1
- package/esm2022/rating/public-api.mjs +1 -1
- package/esm2022/rating/src/rating.component.mjs +3 -3
- package/esm2022/rating/src/rating.component.module.mjs +1 -1
- package/esm2022/result/public-api.mjs +1 -1
- package/esm2022/result/src/result.component.mjs +3 -3
- package/esm2022/result/src/result.module.mjs +1 -1
- package/esm2022/search-box/public-api.mjs +1 -1
- package/esm2022/search-box/src/search-box.component.mjs +3 -3
- package/esm2022/search-box/src/search-box.module.mjs +1 -1
- package/esm2022/select-box/public-api.mjs +1 -1
- package/esm2022/select-box/src/selectbox.component.mjs +3 -3
- package/esm2022/select-box/src/selectbox.module.mjs +1 -1
- package/esm2022/selection-list/public-api.mjs +1 -1
- package/esm2022/selection-list/src/selection-list.component.mjs +3 -3
- package/esm2022/selection-list/src/selection-list.module.mjs +1 -1
- package/esm2022/switch/public-api.mjs +1 -1
- package/esm2022/switch/src/switch-content.component.mjs +1 -1
- package/esm2022/switch/src/switch.component.mjs +3 -3
- package/esm2022/switch/src/switch.module.mjs +1 -1
- package/esm2022/tabs/public-api.mjs +1 -1
- package/esm2022/tabs/src/tab-content.directive.mjs +1 -1
- package/esm2022/tabs/src/tab-item.component.mjs +51 -51
- package/esm2022/tabs/src/tabs.class.mjs +1 -1
- package/esm2022/tabs/src/tabs.component.mjs +9 -9
- package/esm2022/tabs/src/tabs.module.mjs +1 -1
- package/esm2022/tag/public-api.mjs +1 -1
- package/esm2022/tag/src/tag.component.mjs +3 -3
- package/esm2022/tag/src/tag.module.mjs +1 -1
- package/esm2022/textarea/public-api.mjs +1 -1
- package/esm2022/textarea/src/textarea.component.mjs +3 -3
- package/esm2022/textarea/src/textarea.module.mjs +1 -1
- package/esm2022/textbox/public-api.mjs +1 -1
- package/esm2022/textbox/src/mask-options.directive.mjs +1 -1
- package/esm2022/textbox/src/textbox.component.mjs +3 -3
- package/esm2022/textbox/src/textbox.module.mjs +1 -1
- package/esm2022/time-box/public-api.mjs +1 -1
- package/esm2022/time-box/src/time-box.component.mjs +3 -3
- package/esm2022/time-box/src/time-box.module.mjs +1 -1
- package/esm2022/toast/public-api.mjs +1 -1
- package/esm2022/toast/src/toast.class.mjs +1 -1
- package/esm2022/toast/src/toast.component.mjs +3 -3
- package/esm2022/toast/src/toast.module.mjs +1 -1
- package/esm2022/toast/src/toast.service.mjs +1 -1
- package/esm2022/tooltip/public-api.mjs +1 -1
- package/esm2022/tooltip/src/tooltip.component.mjs +3 -3
- package/esm2022/tooltip/src/tooltip.directive.mjs +1 -1
- package/esm2022/tooltip/src/tooltip.module.mjs +1 -1
- package/esm2022/tree-view/public-api.mjs +1 -1
- package/esm2022/tree-view/src/tree-view.component.mjs +3 -3
- package/esm2022/tree-view/src/tree-view.module.mjs +1 -1
- package/esm2022/uploader/public-api.mjs +1 -1
- package/esm2022/uploader/src/uploader.component.mjs +3 -3
- package/esm2022/uploader/src/uploader.module.mjs +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +2 -2
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +2 -2
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +2 -2
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +2 -2
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +4 -4
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +12 -12
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +4 -4
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-card.mjs +2 -2
- package/fesm2022/acorex-components-card.mjs.map +1 -1
- package/fesm2022/acorex-components-checkbox.mjs +2 -2
- package/fesm2022/acorex-components-checkbox.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +2 -2
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +2 -2
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +22 -22
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-color-picker.mjs +2 -2
- package/fesm2022/acorex-components-color-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-context-menu.mjs +2 -2
- package/fesm2022/acorex-components-context-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +88 -88
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +2 -2
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-date-picker.mjs +2 -2
- package/fesm2022/acorex-components-date-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +26 -26
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +2 -2
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +14 -14
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +2 -2
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +28 -28
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +2 -2
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +2 -2
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +62 -62
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +2 -2
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-mixin.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +2 -2
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +2 -2
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +2 -2
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +4 -4
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +2 -2
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +2 -2
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +2 -2
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +2 -2
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rating.mjs +2 -2
- package/fesm2022/acorex-components-rating.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +2 -2
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +2 -2
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +2 -2
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +2 -2
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +2 -2
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +58 -58
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +2 -2
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-textarea.mjs +2 -2
- package/fesm2022/acorex-components-textarea.mjs.map +1 -1
- package/fesm2022/acorex-components-textbox.mjs +2 -2
- package/fesm2022/acorex-components-textbox.mjs.map +1 -1
- package/fesm2022/acorex-components-time-box.mjs +2 -2
- package/fesm2022/acorex-components-time-box.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +2 -2
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +2 -2
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +2 -2
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +2 -2
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/mixin/src/interactive-mixin.class.d.ts +2 -2
- package/mixin/src/textbox-mixin.class.d.ts +3 -5
- package/package.json +14 -14
- package/scss/index.scss +1 -1
@@ -607,7 +607,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
|
|
607
607
|
return weekend.includes(date.dayOfWeek);
|
608
608
|
}
|
609
609
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
610
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCalendarComponent, selector: "ax-calendar", inputs: { rtl: "rtl", readonly: "readonly", value: "value", name: "name", disabled: "disabled", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", type: "type", cellTemplate: "cellTemplate", cellClass: "cellClass", showNavigation: "showNavigation" }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick" }, host: { properties: { "class": "this.__hostClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <ng-container *ngIf=\"showNavigation\">\r\n <ng-content select=\"ax-header\"></ng-content>\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #yearTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\r\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #monthTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <ng-container *ngFor=\"let slot of _slots\">\r\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #dayTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <ng-content select=\"ax-footer\"></ng-content>\r\n <!-- <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
610
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCalendarComponent, selector: "ax-calendar", inputs: { rtl: "rtl", readonly: "readonly", value: "value", name: "name", disabled: "disabled", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", type: "type", cellTemplate: "cellTemplate", cellClass: "cellClass", showNavigation: "showNavigation" }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick" }, host: { properties: { "class": "this.__hostClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\n <ng-container *ngIf=\"showNavigation\">\n <ng-content select=\"ax-header\"></ng-content>\n <div class=\"ax-calendar-header\">\n <div class=\"ax-calendar-header-info\">\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[1] }}\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[0] }}\n </button>\n </ng-container>\n <ng-template #elseTemplate>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText }}\n </button>\n </ng-template>\n </div>\n <div class=\"ax-calendar-header-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"ax-calendar-body\">\n <div [ngSwitch]=\"activeView\">\n <ng-container *ngSwitchCase=\"'years'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #yearTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'months'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #monthTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div class=\"ax-calendar-week\">\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\n </div>\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <ng-container *ngFor=\"let slot of _slots\">\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #dayTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n <ng-content select=\"ax-footer\"></ng-content>\n <!-- <div class=\"ax-calendar-footer\">\n <button\n class=\"ax-today-button\"\n tabindex=\"-1\"\n [class.ax-state-disabled]=\"disabled\"\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\n (click)=\"_handleGoToday()\"\n *ngIf=\"activeView == 'days'\">\n {{ _todayText }}\n </button>\n </div> -->\n</ng-container>\n<ng-template #pickerTemplate>\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
611
611
|
}
|
612
612
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarComponent, decorators: [{
|
613
613
|
type: Component,
|
@@ -640,7 +640,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
640
640
|
'holidayDatesChange',
|
641
641
|
'onNavigate',
|
642
642
|
'onSlotClick'
|
643
|
-
], template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <ng-container *ngIf=\"showNavigation\">\r\n <ng-content select=\"ax-header\"></ng-content>\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #yearTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\r\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #monthTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <ng-container *ngFor=\"let slot of _slots\">\r\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #dayTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <ng-content select=\"ax-footer\"></ng-content>\r\n <!-- <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"] }]
|
643
|
+
], template: "<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\n <ng-container *ngIf=\"showNavigation\">\n <ng-content select=\"ax-header\"></ng-content>\n <div class=\"ax-calendar-header\">\n <div class=\"ax-calendar-header-info\">\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[1] }}\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[0] }}\n </button>\n </ng-container>\n <ng-template #elseTemplate>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText }}\n </button>\n </ng-template>\n </div>\n <div class=\"ax-calendar-header-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"ax-calendar-body\">\n <div [ngSwitch]=\"activeView\">\n <ng-container *ngSwitchCase=\"'years'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #yearTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'months'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #monthTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div class=\"ax-calendar-week\">\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\n </div>\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <ng-container *ngFor=\"let slot of _slots\">\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #dayTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n <ng-content select=\"ax-footer\"></ng-content>\n <!-- <div class=\"ax-calendar-footer\">\n <button\n class=\"ax-today-button\"\n tabindex=\"-1\"\n [class.ax-state-disabled]=\"disabled\"\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\n (click)=\"_handleGoToday()\"\n *ngIf=\"activeView == 'days'\">\n {{ _todayText }}\n </button>\n </div> -->\n</ng-container>\n<ng-template #pickerTemplate>\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\n</ng-template>", styles: [".ax-dark ax-calendar{background:rgba(var(--ax-color-on-surface))}ax-calendar{display:block;background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem;width:18rem}@media (max-width: 599px){ax-calendar{width:100%}}@media (min-width: 600px){ax-calendar{width:20rem}}@media (min-width: 1200px){ax-calendar{width:18rem}}ax-calendar.ax-state-disabled .ax-calendar-slots{opacity:.5;cursor:default}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar .ax-calendar-header .ax-calendar-header-info{font-weight:500}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex}ax-calendar .ax-calendar-body{margin:.5rem}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:.25rem}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.875rem;color:rgba(var(--ax-color-text-default));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";padding-top:100%;float:left}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";display:block;clear:both}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-today){background-color:rgba(var(--ax-color-primary-300));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-today){outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{outline-width:2px;outline-style:dashed}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-col-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:.5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{border-width:2px;border-style:solid;border-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-500))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today:focus-visible{border-style:dashed;outline-color:transparent}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday{color:rgba(var(--ax-color-danger-500))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:.5rem;margin-bottom:.5rem}ax-calendar .ax-calendar-body .ax-calendar-week>div{font-size:.875rem;text-align:center;position:relative;display:flex;align-items:center;justify-content:center;cursor:text;margin:.125rem}ax-calendar .ax-calendar-footer{display:flex;justify-content:center;align-items:center;margin-top:1.125rem}ax-calendar .ax-calendar-footer .ax-today-button{width:100%;height:var(--ax-size-default);padding:0 1rem;font-size:.875rem;text-align:center;display:block;background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore));border-radius:var(--ax-rounded-border-default);cursor:pointer}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-color-primary-400))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-color-primary-600))}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1 1 0%}.ax-overlay-pane ax-calendar{border-style:none}\n"] }]
|
644
644
|
}], propDecorators: { __hostClass: [{
|
645
645
|
type: HostBinding,
|
646
646
|
args: ['class']
|
@@ -770,7 +770,7 @@ class AXCalendarRangeComponent extends classes((MXValueComponent), MXInteractive
|
|
770
770
|
}
|
771
771
|
}
|
772
772
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
773
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCalendarRangeComponent, selector: "ax-calendar-range", inputs: { rtl: "rtl", readonly: "readonly", value: "value", name: "name", disabled: "disabled", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", type: "type", cellTemplate: "cellTemplate", cellClass: "cellClass", showNavigation: "showNavigation" }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick" }, viewQueries: [{ propertyName: "_c1", first: true, predicate: ["c1"], descendants: true, static: true }, { propertyName: "_c2", first: true, predicate: ["c2"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-calendar-range-header\">\
|
773
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCalendarRangeComponent, selector: "ax-calendar-range", inputs: { rtl: "rtl", readonly: "readonly", value: "value", name: "name", disabled: "disabled", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", type: "type", cellTemplate: "cellTemplate", cellClass: "cellClass", showNavigation: "showNavigation" }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick" }, viewQueries: [{ propertyName: "_c1", first: true, predicate: ["c1"], descendants: true, static: true }, { propertyName: "_c2", first: true, predicate: ["c2"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-calendar-range-header\">\n <ng-content></ng-content>\n <div class=\"ax-calendar-header-range-info\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"handleNavClick()\">\n {{ _navText }}\n </button>\n </div>\n <div class=\"ax-calendar-header-range-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n</div>\n<div class=\"ax-calendar-range-body\">\n <ax-calendar #c1 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (onNavigate)=\"handleNavigate()\" (activeViewChange)=\"handleActiveViewChange1()\">\n </ax-calendar>\n <ax-calendar #c2 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (activeViewChange)=\"handleActiveViewChange2()\">\n </ax-calendar>\n</div>", styles: [".ax-dark ax-calendar-range{background:rgba(var(--ax-color-on-surface))}.ax-dark ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-between{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}ax-calendar-range{background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem}ax-calendar-range .ax-calendar-range-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar-range .ax-calendar-range-header .ax-calendar-header-range-info{font-weight:500}ax-calendar-range .ax-calendar-range-header .ax-calendar-header-range-buttons{display:flex}ax-calendar-range .ax-calendar-range-body{display:flex;flex-direction:row}ax-calendar-range ax-calendar{margin:0;padding:0}ax-calendar-range ax-calendar .ax-calendar-body{margin-top:0;padding-top:0}ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-between{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-start,ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-end{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: AXCalendarComponent, selector: "ax-calendar", inputs: ["rtl", "readonly", "value", "name", "disabled", "depth", "activeView", "min", "max", "disabledDates", "holidayDates", "type", "cellTemplate", "cellClass", "showNavigation"], outputs: ["onOptionChanged", "valueChange", "onValueChanged", "onBlur", "onFocus", "depthChange", "typeChange", "activeViewChange", "disabledDatesChange", "holidayDatesChange", "onNavigate", "onSlotClick"] }], encapsulation: i0.ViewEncapsulation.None });
|
774
774
|
}
|
775
775
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCalendarRangeComponent, decorators: [{
|
776
776
|
type: Component,
|
@@ -803,7 +803,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
803
803
|
'holidayDatesChange',
|
804
804
|
'onNavigate',
|
805
805
|
'onSlotClick'
|
806
|
-
], template: "<div class=\"ax-calendar-range-header\">\
|
806
|
+
], template: "<div class=\"ax-calendar-range-header\">\n <ng-content></ng-content>\n <div class=\"ax-calendar-header-range-info\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"handleNavClick()\">\n {{ _navText }}\n </button>\n </div>\n <div class=\"ax-calendar-header-range-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n</div>\n<div class=\"ax-calendar-range-body\">\n <ax-calendar #c1 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (onNavigate)=\"handleNavigate()\" (activeViewChange)=\"handleActiveViewChange1()\">\n </ax-calendar>\n <ax-calendar #c2 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (activeViewChange)=\"handleActiveViewChange2()\">\n </ax-calendar>\n</div>", styles: [".ax-dark ax-calendar-range{background:rgba(var(--ax-color-on-surface))}.ax-dark ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-between{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}ax-calendar-range{background:rgba(var(--ax-color-surface));color:rgba(var(--ax-color-text-default));padding:.5rem}ax-calendar-range .ax-calendar-range-header{display:flex;justify-content:space-between;padding-top:.25rem;padding-left:.25rem;padding-right:.25rem}ax-calendar-range .ax-calendar-range-header .ax-calendar-header-range-info{font-weight:500}ax-calendar-range .ax-calendar-range-header .ax-calendar-header-range-buttons{display:flex}ax-calendar-range .ax-calendar-range-body{display:flex;flex-direction:row}ax-calendar-range ax-calendar{margin:0;padding:0}ax-calendar-range ax-calendar .ax-calendar-body{margin-top:0;padding-top:0}ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-between{background-color:rgba(var(--ax-color-primary-100));color:rgba(var(--ax-color-primary-500))}ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-start,ax-calendar-range ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-range-end{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}\n"] }]
|
807
807
|
}], ctorParameters: function () { return []; }, propDecorators: { _c1: [{
|
808
808
|
type: ViewChild,
|
809
809
|
args: ["c1", { static: true }]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-calendar.mjs","sources":["../../../../projects/acorex/components/calendar/src/calendar.class.ts","../../../../projects/acorex/components/calendar/src/calendar.component.ts","../../../../projects/acorex/components/calendar/src/calendar.component.html","../../../../projects/acorex/components/calendar/src/calendar-range.component.ts","../../../../projects/acorex/components/calendar/src/calendar-range.component.html","../../../../projects/acorex/components/calendar/src/calendar.module.ts","../../../../projects/acorex/components/calendar/acorex-components-calendar.ts"],"sourcesContent":["import { AXConfig } from \"@acorex/core/config\";\r\nimport { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, Input, Output, TemplateRef } from \"@angular/core\";\r\nimport { AXItemClickEvent, AXRangeChangedEvent, MXBaseComponent } from \"@acorex/components/common\";\r\nimport { AXBaseComponent } from \"@acorex/components/mixin\";\r\nimport { classes } from \"polytype\";\r\n\r\nexport type AXCalendarViewType = 'years' | 'months' | 'days';\r\nexport type AXCalendarViewDepth = AXCalendarViewType;\r\nexport type AXCalendarDisabledDates = Date[] | ((date: Date) => boolean);\r\nexport type AXCalendarHolidayDates = Date[] | ((date: Date) => boolean);\r\nexport type AXCalendarCellCssClass = string | { [key: string]: boolean } | ((date: Date) => string);\r\n\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport class AXCalendarNavigateEvent extends AXRangeChangedEvent<Date> {\r\n\r\n}\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport class AXCalendarSlotClick extends AXItemClickEvent<Date> {\r\n\r\n}\r\n\r\n@Injectable()\r\nexport class MXCalendarBaseComponent extends classes(MXBaseComponent) {\r\n\r\n @Input()\r\n interface: 'calendar' | 'picker' = 'calendar';\r\n\r\n @Input()\r\n cellTemplate?: TemplateRef<any>;\r\n\r\n @Input()\r\n cellClass?: AXCalendarCellCssClass;\r\n\r\n @Input()\r\n showNavigation: boolean = true;\r\n\r\n\r\n @Output()\r\n onSlotClick: EventEmitter<AXCalendarSlotClick> = new EventEmitter<AXCalendarSlotClick>();\r\n\r\n @Output()\r\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\r\n\r\n @Output()\r\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\r\n\r\n private _activeView: AXCalendarViewType = 'days';\r\n @Input()\r\n public get activeView(): AXCalendarViewType {\r\n return this._activeView;\r\n }\r\n public set activeView(v: AXCalendarViewType) {\r\n this.setOption({\r\n name: 'activeView',\r\n value: v,\r\n afterCallback: () => {\r\n this.cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n\r\n @Output()\r\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n private _type: string = AXConfig.get(`dateTime.calendar`);\r\n\r\n @Input()\r\n public get type(): string {\r\n return this._type || AXConfig.get(`dateTime.calendar`);\r\n }\r\n public set type(v: string) {\r\n this.setOption({\r\n name: 'type',\r\n value: v,\r\n afterCallback: () => {\r\n this.cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n\r\n @Output()\r\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\r\n\r\n private _depth: AXCalendarViewDepth = 'days';\r\n @Input()\r\n public get depth(): AXCalendarViewDepth {\r\n return this._depth;\r\n }\r\n public set depth(v: AXCalendarViewDepth) {\r\n this.setOption({\r\n name: 'depth',\r\n value: v,\r\n beforeCallback: () => {\r\n this.activeView = v;\r\n },\r\n afterCallback: () => {\r\n this.cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n @Output()\r\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _min: Date;\r\n @Input()\r\n public get min(): Date {\r\n return this._min;\r\n }\r\n public set min(v: Date) {\r\n this.setOption({\r\n name: 'min',\r\n value: v,\r\n afterCallback: () => {\r\n this.cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n\r\n @Output()\r\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _max: Date;\r\n @Input()\r\n public get max(): Date {\r\n return this._max;\r\n }\r\n public set max(v: Date) {\r\n this.setOption({\r\n name: 'max',\r\n value: v,\r\n afterCallback: () => {\r\n this.cdr.markForCheck();\r\n }\r\n });\r\n }\r\n\r\n @Output()\r\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\r\n\r\n private _disabledDates: AXCalendarDisabledDates;\r\n @Input()\r\n public get disabledDates(): AXCalendarDisabledDates {\r\n return this._disabledDates;\r\n }\r\n public set disabledDates(v: AXCalendarDisabledDates) {\r\n this.setOption({ name: 'disabledDates', value: v });\r\n }\r\n\r\n @Output()\r\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\r\n\r\n private _holidayDates: AXCalendarHolidayDates;\r\n @Input()\r\n public get holidayDates(): AXCalendarHolidayDates {\r\n return this._holidayDates;\r\n }\r\n public set holidayDates(v: AXCalendarHolidayDates) {\r\n this.setOption({ name: 'holidayDates', value: v });\r\n }\r\n}\r\n\r\n\r\n\r\n@Injectable()\r\nexport class AXCalendarBaseComponent extends AXBaseComponent {\r\n\r\n\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Output()\r\n onSlotClick: EventEmitter<AXItemClickEvent<Date>> = new EventEmitter<AXItemClickEvent<Date>>();\r\n\r\n @Output()\r\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\r\n\r\n @Output()\r\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\r\n\r\n private _activeView: AXCalendarViewType = 'days';\r\n @Input()\r\n public get activeView(): AXCalendarViewType {\r\n return this._activeView;\r\n }\r\n public set activeView(v: AXCalendarViewType) {\r\n this._setOption({ name: 'activeView', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n private _type: string = AXConfig.get(`dateTime.calendar`);\r\n\r\n @Input()\r\n public get type(): string {\r\n return this._type || AXConfig.get(`dateTime.calendar`);\r\n }\r\n public set type(v: string) {\r\n this._setOption({\r\n name: 'type',\r\n value: v\r\n })\r\n }\r\n\r\n\r\n @Output()\r\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\r\n\r\n private _depth: AXCalendarViewDepth = 'days';\r\n @Input()\r\n public get depth(): AXCalendarViewDepth {\r\n return this._depth;\r\n }\r\n public set depth(v: AXCalendarViewDepth) {\r\n this._setOption({\r\n name: 'depth',\r\n value: v,\r\n beforeCallback: () => {\r\n this._activeView = v;\r\n }\r\n });\r\n }\r\n\r\n @Output()\r\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _min: Date;\r\n @Input()\r\n public get min(): Date {\r\n return this._min;\r\n }\r\n public set min(v: Date) {\r\n this._setOption({ name: 'min', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _max: Date;\r\n @Input()\r\n public get max(): Date {\r\n return this._max;\r\n }\r\n public set max(v: Date) {\r\n this._setOption({ name: 'max', value: v });\r\n }\r\n\r\n @Output()\r\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\r\n\r\n private _disabledDates: AXCalendarDisabledDates;\r\n @Input()\r\n public get disabledDates(): AXCalendarDisabledDates {\r\n return this._disabledDates;\r\n }\r\n public set disabledDates(v: AXCalendarDisabledDates) {\r\n this._setOption({ name: 'disabledDates', value: v });\r\n }\r\n\r\n @Output()\r\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\r\n\r\n private _holidayDates: AXCalendarHolidayDates;\r\n @Input()\r\n public get holidayDates(): AXCalendarHolidayDates {\r\n return this._holidayDates;\r\n }\r\n public set holidayDates(v: AXCalendarHolidayDates) {\r\n this._setOption({ name: 'holidayDates', value: v });\r\n }\r\n}\r\n\r\n\r\n\r\nexport const CALENDAR_INPUTS = [\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'type',\r\n 'holidayDates',\r\n];\r\nexport const CALENDAR_OUTPUTS = ['depthChange', 'typeChange', 'disabledDatesChange', 'holidayDatesChange', 'onNavigate'];\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n HostBinding,\r\n Input,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport { AXDateTime, AXDateTimeRange } from '@acorex/core/dateTime';\r\nimport {\r\n AXClickEvent,\r\n AXOptionChangedEvent,\r\n AXValueChangedEvent,\r\n MXInteractiveComponent,\r\n MXValueComponent\r\n} from '@acorex/components/common';\r\n\r\n\r\nimport { AXConfig } from '@acorex/core/config';\r\n\r\nimport { classes } from 'polytype';\r\nimport { MXCalendarBaseComponent } from './calendar.class';\r\n\r\n@Component({\r\n selector: 'ax-calendar',\r\n templateUrl: './calendar.component.html',\r\n styleUrls: ['./calendar.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n inputs: [\r\n 'rtl',\r\n 'readonly',\r\n 'value',\r\n 'name',\r\n 'disabled',\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'holidayDates',\r\n 'type',\r\n 'cellTemplate',\r\n 'cellClass',\r\n 'showNavigation'\r\n ],\r\n outputs: [\r\n 'onOptionChanged',\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus',\r\n 'depthChange',\r\n 'typeChange',\r\n 'activeViewChange',\r\n 'disabledDatesChange',\r\n 'holidayDatesChange',\r\n 'onNavigate',\r\n 'onSlotClick'\r\n ]\r\n})\r\nexport class AXCalendarComponent\r\n extends\r\n classes(MXValueComponent<Date>, MXInteractiveComponent, MXCalendarBaseComponent)\r\n{\r\n public get displayRange(): AXDateTimeRange {\r\n const current = this._viewStartDate || this._today;\r\n switch (this.activeView) {\r\n case 'years':\r\n // let y = current.startOf('year').year;\r\n // let min = y - 3;\r\n // let max = min + 11;\r\n let y = current.startOf('year').year;\r\n let min = y - (y % 10);\r\n let max = min + 9;\r\n return new AXDateTimeRange(\r\n AXDateTime.from({\r\n year: min,\r\n month: 1,\r\n date: 1,\r\n calendar: this._viewStartDate.calendar.name(),\r\n }),\r\n AXDateTime.from({\r\n year: max,\r\n month: 12,\r\n date: 28,\r\n calendar: this._viewStartDate.calendar.name(),\r\n })\r\n );\r\n case 'months':\r\n return new AXDateTimeRange(\r\n current.startOf('year'),\r\n current.endOf('year').add('day', -1)\r\n );\r\n default:\r\n return new AXDateTimeRange(\r\n current.startOf('month'),\r\n current.endOf('month')\r\n );\r\n }\r\n }\r\n\r\n protected _today = new AXDateTime(new Date(), this.type);\r\n private _viewStartDate!: AXDateTime;\r\n\r\n protected _navText: string = '';\r\n protected _todayText: string = '';\r\n\r\n protected _slots: any[] = [];\r\n protected _dayNames: string[] = [];\r\n\r\n\r\n private _initValues() {\r\n this._today = new AXDateTime(new Date(), this.type);\r\n this._dayNames = this._today.calendar.dayShortNames;\r\n }\r\n\r\n private _refresh() {\r\n this._initValues();\r\n this.navTo(this.value || this._today);\r\n }\r\n\r\n protected ngOnInit() {\r\n super.ngOnInit();\r\n this.onValueChanged.subscribe(this._handleOnValueChanged.bind(this));\r\n this.onOptionChanged.subscribe(this._handleOnOptionChanged.bind(this));\r\n this._initValues();\r\n if (!this.value) this.goToday();\r\n }\r\n\r\n\r\n render() {\r\n if (!this._viewStartDate) return;\r\n const vr = this.displayRange;\r\n const applyCellClass = (slot: any, cellClass: any = this.cellClass) => {\r\n switch (typeof cellClass) {\r\n case 'string':\r\n cellClass.split(' ').forEach(c => slot.cssClass[c] = true);\r\n break;\r\n case 'object':\r\n Object.assign(slot.cssClass, cellClass);\r\n break;\r\n case 'function':\r\n applyCellClass(slot, cellClass(slot.date));\r\n break;\r\n }\r\n }\r\n // year view\r\n if (this.activeView == 'years') {\r\n const a = vr.enumurate('year');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n //\r\n r.text = d.format('YYYY');\r\n r.tooltip = d.format('YYYY');\r\n //\r\n r.today = d.equal(this._today, 'year');\r\n //\r\n r.selected =\r\n this.value &&\r\n this.depth == 'years' &&\r\n d.equal(this.value, 'year')\r\n //\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'year') == -1) ||\r\n (this.max && d.compare(this.max, 'year') == 1);\r\n //\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': r.today,\r\n 'ax-state-selected': r.selected,\r\n };\r\n }\r\n applyCellClass(r);\r\n return r;\r\n });\r\n this._navText = `${vr.startTime.year} - ${vr.endTime.year}`;\r\n this._todayText = this._today.format('YYYY');\r\n }\r\n // month view\r\n else if (this.activeView == 'months') {\r\n const a = vr.enumurate('month');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.format('MMM');\r\n r.tooltip = d.format('MMMM YYYY');\r\n r.today = d.equal(this._today, 'month');\r\n //\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'month') == -1) ||\r\n (this.max && d.compare(this.max, 'month') == 1);\r\n //\r\n r.selected =\r\n this.value &&\r\n this.depth == 'months' &&\r\n d.equal(this.value, 'month');\r\n //\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': r.today,\r\n 'ax-state-selected': r.selected,\r\n 'ax-state-other': d.year != this._viewStartDate.year,\r\n };\r\n }\r\n applyCellClass(r);\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('YYYY');\r\n this._todayText = this._today.format('MMMM YYYY');\r\n }\r\n // day view\r\n else {\r\n const a = vr.enumurate('day');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.dayOfMonth;\r\n r.tooltip = d.format();\r\n r.today = d.equal(this._today, 'day');\r\n r.selected = this.value && d.equal(this.value, 'day');\r\n r.holiday = this.isHoliday(d) || this.isWeekend(d);\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'day') == -1) ||\r\n (this.max && d.compare(this.max, 'day') == 1) ||\r\n this.isDisabled(d);\r\n //\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': true,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': r.today,\r\n 'ax-state-selected': r.selected,\r\n 'ax-state-holiday': r.holiday\r\n };\r\n }\r\n r.cssClass[`ax-col-start-${vr.startTime.dayOfWeek}`] = i == 0;\r\n if (this.cellClass)\r\n applyCellClass(r);\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('MMMM YYYY');\r\n this._todayText = this._today.format();\r\n }\r\n this.cdr.markForCheck();\r\n }\r\n\r\n protected _handlePrevClick() {\r\n this.isUserInteraction = true;\r\n this.prev();\r\n this.isUserInteraction = false;\r\n }\r\n\r\n protected _handleNextClick() {\r\n this.isUserInteraction = true;\r\n this.next();\r\n this.isUserInteraction = false;\r\n }\r\n\r\n protected _handleSlotClick(e: MouseEvent, slot) {\r\n if (slot.disabled || this.disabled) return;\r\n //\r\n this.onSlotClick.emit({\r\n component: this,\r\n item: slot.date,\r\n isUserInteraction: true,\r\n nativeEvent: e,\r\n });\r\n //\r\n if (this.activeView == 'days') {\r\n this._setDate(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'days') {\r\n this.activeView = 'days';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'months') {\r\n this._setDate(slot.date);\r\n } else if (\r\n this.activeView == 'years' &&\r\n (this.depth == 'days' || this.depth == 'months')\r\n ) {\r\n this.activeView = 'months';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'years' && this.depth == 'years') {\r\n this._setDate(slot.date);\r\n }\r\n }\r\n\r\n protected _handleNavClick(e: AXClickEvent | any) {\r\n this.isUserInteraction = true;\r\n this.toggleView();\r\n this.isUserInteraction = false;\r\n }\r\n\r\n public toggleView() {\r\n if (this.activeView == 'days')\r\n this.activeView = 'months';\r\n else if (this.activeView == 'months')\r\n this.activeView = 'years';\r\n }\r\n\r\n protected _handleOnOptionChanged(e: AXOptionChangedEvent) {\r\n if (\r\n e.name == 'depth' ||\r\n e.name == 'activeView' ||\r\n e.name == 'disabledDates' ||\r\n e.name == 'holidayDates'\r\n ) {\r\n this.render();\r\n }\r\n if (e.name == 'type') {\r\n this._refresh();\r\n }\r\n }\r\n\r\n private _handleOnValueChanged(e: AXValueChangedEvent) {\r\n this._viewStartDate = new AXDateTime(e.value, this.type);\r\n this.render();\r\n }\r\n\r\n protected _handleGoToday() {\r\n this.isUserInteraction = true;\r\n this._setDate(this._today.date);\r\n this.goToday();\r\n this.isUserInteraction = false;\r\n }\r\n\r\n next() {\r\n this._navNextPrev(false);\r\n }\r\n\r\n prev() {\r\n this._navNextPrev(true);\r\n }\r\n\r\n focus() {\r\n const func = (s: string) => this.getHostElement().querySelector<HTMLDivElement>(s);\r\n const div =\r\n func('.ax-calendar-slots>div.ax-state-selected') ||\r\n func('.ax-calendar-slots>div');\r\n div?.focus();\r\n }\r\n\r\n private _navNextPrev(prev: boolean) {\r\n const sign = prev ? -1 : 1;\r\n if (this.activeView == 'days')\r\n this.navTo(this._viewStartDate.add('month', sign * 1));\r\n else if (this.activeView == 'months')\r\n this.navTo(this._viewStartDate.add('year', sign * 1));\r\n else this.navTo(this._viewStartDate.add('year', sign * 10));\r\n }\r\n\r\n goToday() {\r\n this.navTo(this._today);\r\n }\r\n\r\n navTo(date: Date | AXDateTime) {\r\n this._viewStartDate = AXDateTime.convert(\r\n date,\r\n this._today.calendar.name()\r\n ).startOf();\r\n const vr = this.displayRange;\r\n this.render();\r\n this.onNavigate.emit({\r\n component: this,\r\n isUserInteraction: this.isUserInteraction,\r\n start: vr.startTime?.date,\r\n end: vr.endTime?.date,\r\n htmlElement: this.getHostElement(),\r\n });\r\n }\r\n\r\n @HostBinding('class')\r\n private get __hostClass(): string {\r\n const _classes = {\r\n 'ax-state-disabled': this.disabled,\r\n };\r\n return Object.entries(_classes)\r\n .filter(c => c[1])\r\n .map(c => c[0])\r\n .join(' ');\r\n }\r\n\r\n private _setDate(value: Date) {\r\n if (this.readonly || this.disabled) return;\r\n this.value = AXDateTime.convert(\r\n value,\r\n this._today.calendar.name()\r\n ).startOf().date;\r\n }\r\n\r\n protected isDisabled(date: AXDateTime): boolean {\r\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\r\n return this.disabledDates.some(d => date.equal(d, 'day'));\r\n } else if (typeof this.disabledDates == 'function') {\r\n return this.disabledDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isHoliday(date: AXDateTime): boolean {\r\n if (Array.isArray(this.holidayDates) && this.holidayDates.length != 0) {\r\n return this.holidayDates.some(d => date.equal(d, 'day'));\r\n } else if (typeof this.holidayDates == 'function') {\r\n return this.holidayDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isWeekend(date: AXDateTime): boolean {\r\n const weekend = AXConfig.get(\r\n `dateTime.calendars.${this.type}.weekend`\r\n ) as number[];\r\n return weekend.includes(date.dayOfWeek);\r\n }\r\n\r\n // protected _pickerDays: number[] = [];\r\n // protected _pickerMonths: { text: string; value: number }[] = [];\r\n // protected _pickerYears: number[] = [];\r\n\r\n // private _generatePickerItems(view) {\r\n // switch (view) {\r\n // case 'year':\r\n // this._pickerYears = range(2000, 2050, 1);\r\n // break;\r\n // case 'month':\r\n // this._pickerMonths = new AXDateTimeRange(\r\n // this.displayRange.startTime.startOf('year'),\r\n // this.displayRange.startTime.endOf('year')\r\n // )\r\n // .enumurate('month')\r\n // .map(c => ({\r\n // text: c.format('MMM'),\r\n // value: c.monthOfYear,\r\n // }));\r\n // break;\r\n // default:\r\n // this._pickerDays = new AXDateTimeRange(\r\n // this.displayRange.startTime.startOf('month'),\r\n // this.displayRange.startTime.endOf('month')\r\n // )\r\n // .enumurate('day')\r\n // .map(c => c.dayOfMonth);\r\n // this.cdr.detectChanges();\r\n // break;\r\n // }\r\n // }\r\n\r\n // protected _handlePickerChange(item: any, view) {\r\n // if (!item) return;\r\n // const date = this.displayRange.startTime;\r\n // switch (view) {\r\n // case 'year':\r\n // this._setDate(date.set('year', item.value).date);\r\n // break;\r\n // case 'month':\r\n // this._setDate(date.set('month', item.value.value).date);\r\n // this._generatePickerItems('day');\r\n // break;\r\n // default:\r\n // this._setDate(date.set('day', item.value).date);\r\n // break;\r\n // }\r\n // }\r\n}\r\n","<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <ng-container *ngIf=\"showNavigation\">\r\n <ng-content select=\"ax-header\"></ng-content>\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #yearTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\r\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #monthTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\r\n <ng-container *ngFor=\"let slot of _slots\">\r\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \r\n (click)=\"_handleSlotClick($event, slot)\">\r\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\r\n <div >\r\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-template #dayTpl>\r\n <div [title]=\"slot.tooltip\" >\r\n {{ slot.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <ng-content select=\"ax-footer\"></ng-content>\r\n <!-- <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div> -->\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>","import { AXRange, MXInteractiveComponent, MXValueComponent } from '@acorex/components/common';\r\nimport { Component, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { classes } from 'polytype';\r\nimport { AXCalendarComponent } from './calendar.component';\r\nimport { AXCalendarSlotClick, MXCalendarBaseComponent } from './calendar.class';\r\nimport { AXDateTime } from '@acorex/core/dateTime';\r\n\r\n@Component({\r\n selector: 'ax-calendar-range',\r\n templateUrl: 'calendar-range.component.html',\r\n styleUrls: ['calendar-range.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n inputs: [\r\n 'rtl',\r\n 'readonly',\r\n 'value',\r\n 'name',\r\n 'disabled',\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'holidayDates',\r\n 'type',\r\n 'cellTemplate',\r\n 'cellClass',\r\n 'showNavigation'\r\n ],\r\n outputs: [\r\n 'onOptionChanged',\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus',\r\n 'depthChange',\r\n 'typeChange',\r\n 'activeViewChange',\r\n 'disabledDatesChange',\r\n 'holidayDatesChange',\r\n 'onNavigate',\r\n 'onSlotClick'\r\n ]\r\n})\r\nexport class AXCalendarRangeComponent\r\n extends\r\n classes(MXValueComponent<AXRange<Date>>, MXInteractiveComponent, MXCalendarBaseComponent)\r\n{\r\n\r\n @ViewChild(\"c1\", { static: true })\r\n private _c1: AXCalendarComponent;\r\n\r\n @ViewChild(\"c2\", { static: true })\r\n private _c2: AXCalendarComponent;\r\n\r\n\r\n _navText: string = \"\";\r\n\r\n constructor() {\r\n super();\r\n this.defaultValue = { from: null, end: null };\r\n }\r\n\r\n protected ngAfterViewInit(): void {\r\n super.ngAfterViewInit();\r\n this._syncNav1();\r\n }\r\n\r\n getCellClass = (date: Date) => {\r\n const d = new AXDateTime(date);\r\n const from = new AXDateTime(this.value.from);\r\n const end = new AXDateTime(this.value.end);\r\n if (this.value.from && d.equal(from, 'day')) {\r\n return 'ax-range-start';\r\n }\r\n if (this.value.end && d.equal(end, 'day'))\r\n return 'ax-range-end';\r\n if (this.value.from && this.value.end && (d.compare(from, 'day') > 0) && (d.compare(end, 'day') < 0))\r\n return 'ax-range-between';\r\n return null;\r\n }\r\n\r\n protected handleSlotClick(e: AXCalendarSlotClick) {\r\n debugger\r\n if (this._c1.activeView == this.depth) {\r\n if (!this.value.from || (this.value.from && this.value.end)) {\r\n this.value.from = e.item;\r\n this.value.end = null;\r\n }\r\n if (this.value.from && (e.item <= this.value.from)) {\r\n this.value.from = e.item;\r\n }\r\n else if (this.value.from && !this.value.end) {\r\n this.value.end = e.item;\r\n }\r\n }\r\n else {\r\n if (e.component == this._c1)\r\n this._syncNav1();\r\n if (e.component == this._c2) {\r\n this._syncNav2(new AXDateTime(e.item));\r\n }\r\n }\r\n this._c1.render();\r\n this._c2.render();\r\n }\r\n\r\n\r\n protected handlePrevClick() {\r\n const view = this._c1.activeView;\r\n const d1 = this._c1.displayRange.startTime;\r\n if (view == 'days' || view == 'months') {\r\n this._c1.prev();\r\n }\r\n else if (view == 'years') {\r\n this._c1.navTo(d1.add('year', -20));\r\n }\r\n }\r\n\r\n protected handleNextClick() {\r\n const view = this._c1.activeView;\r\n const d1 = this._c1.displayRange.startTime;\r\n if (view == 'days' || view == 'months') {\r\n this._c1.next();\r\n }\r\n else if (view == 'years') {\r\n this._c1.navTo(d1.add('year', 20));\r\n }\r\n }\r\n\r\n protected handleNavClick() {\r\n this._c1.toggleView();\r\n }\r\n\r\n private _syncNavText() {\r\n const view = this._c1.activeView;\r\n const d1 = this._c1.displayRange.startTime;\r\n if (view == 'days') {\r\n const d2 = this._c2.displayRange.endTime;\r\n this._navText = `${d1.format(\"MMM yyyy\")} - ${d2.format(\"MMM yyyy\")}`;\r\n }\r\n else if (view == 'months') {\r\n const d2 = this._c2.displayRange.endTime;\r\n this._navText = `${d1.format(\"yyyy\")} - ${d2.format(\"yyyy\")}`;\r\n }\r\n else if (view == 'years') {\r\n const d2 = this._c2.displayRange.endTime;\r\n this._navText = `${d1.format(\"yyyy\")} - ${d2.format(\"yyyy\")}`;\r\n }\r\n }\r\n\r\n protected handleNavigate() {\r\n this._syncNav1();\r\n }\r\n\r\n protected handleActiveViewChange1() {\r\n this._c2.activeView = this._c1.activeView;\r\n this._syncNav1();\r\n }\r\n\r\n protected handleActiveViewChange2() {\r\n if (this._c2.activeView != this._c1.activeView) {\r\n this._c1.activeView = this._c2.activeView;\r\n }\r\n }\r\n\r\n private _syncNav1() {\r\n const view = this._c2.activeView = this._c1.activeView;\r\n const range = this._c1.displayRange;\r\n if (view == 'days') {\r\n this._c2.navTo(range.startTime.add(\"month\", 1));\r\n }\r\n else\r\n if (view == 'months') {\r\n this._c2.navTo(range.startTime.add(\"year\", 1));\r\n }\r\n else if (view == 'years') {\r\n this._c2.navTo(range.endTime.add(\"year\", 4));\r\n }\r\n this._syncNavText();\r\n }\r\n\r\n private _syncNav2(e: AXDateTime) {\r\n const view = this._c2.activeView;\r\n if (view == 'months') {\r\n this._c1.navTo(e.add(\"month\", -1));\r\n }\r\n else if (view == 'years') {\r\n this._c1.navTo(e.startOf('year'));\r\n }\r\n }\r\n}","<div class=\"ax-calendar-range-header\">\r\n <ng-content></ng-content>\r\n <div class=\"ax-calendar-header-range-info\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"handleNavClick()\">\r\n {{ _navText }}\r\n </button>\r\n </div>\r\n <div class=\"ax-calendar-header-range-buttons\">\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"handlePrevClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\r\n (click)=\"handleNextClick()\">\r\n <i class=\"ax-icon\" [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n</div>\r\n<div class=\"ax-calendar-range-body\">\r\n <ax-calendar #c1 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\r\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\r\n (onNavigate)=\"handleNavigate()\" (activeViewChange)=\"handleActiveViewChange1()\">\r\n </ax-calendar>\r\n <ax-calendar #c2 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\r\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\r\n (activeViewChange)=\"handleActiveViewChange2()\">\r\n </ax-calendar>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\r\nimport { AXCalendarComponent } from './calendar.component';\r\nimport { AXCalendarRangeComponent } from './calendar-range.component';\r\n\r\nconst COMPONENT = [AXCalendarComponent, AXCalendarRangeComponent];\r\nconst MODULES = [CommonModule, AXDateTimeModule];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXCalendarModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.AXCalendarComponent"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-calendar.mjs","sources":["../../../../projects/acorex/components/calendar/src/calendar.class.ts","../../../../projects/acorex/components/calendar/src/calendar.component.ts","../../../../projects/acorex/components/calendar/src/calendar.component.html","../../../../projects/acorex/components/calendar/src/calendar-range.component.ts","../../../../projects/acorex/components/calendar/src/calendar-range.component.html","../../../../projects/acorex/components/calendar/src/calendar.module.ts","../../../../projects/acorex/components/calendar/acorex-components-calendar.ts"],"sourcesContent":["import { AXConfig } from \"@acorex/core/config\";\nimport { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, Input, Output, TemplateRef } from \"@angular/core\";\nimport { AXItemClickEvent, AXRangeChangedEvent, MXBaseComponent } from \"@acorex/components/common\";\nimport { AXBaseComponent } from \"@acorex/components/mixin\";\nimport { classes } from \"polytype\";\n\nexport type AXCalendarViewType = 'years' | 'months' | 'days';\nexport type AXCalendarViewDepth = AXCalendarViewType;\nexport type AXCalendarDisabledDates = Date[] | ((date: Date) => boolean);\nexport type AXCalendarHolidayDates = Date[] | ((date: Date) => boolean);\nexport type AXCalendarCellCssClass = string | { [key: string]: boolean } | ((date: Date) => string);\n\n\n/**\n* Contains native event\n* @category Events\n*/\nexport class AXCalendarNavigateEvent extends AXRangeChangedEvent<Date> {\n\n}\n\n/**\n* Contains native event\n* @category Events\n*/\nexport class AXCalendarSlotClick extends AXItemClickEvent<Date> {\n\n}\n\n@Injectable()\nexport class MXCalendarBaseComponent extends classes(MXBaseComponent) {\n\n @Input()\n interface: 'calendar' | 'picker' = 'calendar';\n\n @Input()\n cellTemplate?: TemplateRef<any>;\n\n @Input()\n cellClass?: AXCalendarCellCssClass;\n\n @Input()\n showNavigation: boolean = true;\n\n\n @Output()\n onSlotClick: EventEmitter<AXCalendarSlotClick> = new EventEmitter<AXCalendarSlotClick>();\n\n @Output()\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\n\n @Output()\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\n\n private _activeView: AXCalendarViewType = 'days';\n @Input()\n public get activeView(): AXCalendarViewType {\n return this._activeView;\n }\n public set activeView(v: AXCalendarViewType) {\n this.setOption({\n name: 'activeView',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n }\n });\n }\n\n\n @Output()\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\n\n private _type: string = AXConfig.get(`dateTime.calendar`);\n\n @Input()\n public get type(): string {\n return this._type || AXConfig.get(`dateTime.calendar`);\n }\n public set type(v: string) {\n this.setOption({\n name: 'type',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n }\n });\n }\n\n\n @Output()\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\n\n private _depth: AXCalendarViewDepth = 'days';\n @Input()\n public get depth(): AXCalendarViewDepth {\n return this._depth;\n }\n public set depth(v: AXCalendarViewDepth) {\n this.setOption({\n name: 'depth',\n value: v,\n beforeCallback: () => {\n this.activeView = v;\n },\n afterCallback: () => {\n this.cdr.markForCheck();\n }\n });\n }\n\n @Output()\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n private _min: Date;\n @Input()\n public get min(): Date {\n return this._min;\n }\n public set min(v: Date) {\n this.setOption({\n name: 'min',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n }\n });\n }\n\n\n @Output()\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n private _max: Date;\n @Input()\n public get max(): Date {\n return this._max;\n }\n public set max(v: Date) {\n this.setOption({\n name: 'max',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n }\n });\n }\n\n @Output()\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\n\n private _disabledDates: AXCalendarDisabledDates;\n @Input()\n public get disabledDates(): AXCalendarDisabledDates {\n return this._disabledDates;\n }\n public set disabledDates(v: AXCalendarDisabledDates) {\n this.setOption({ name: 'disabledDates', value: v });\n }\n\n @Output()\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\n\n private _holidayDates: AXCalendarHolidayDates;\n @Input()\n public get holidayDates(): AXCalendarHolidayDates {\n return this._holidayDates;\n }\n public set holidayDates(v: AXCalendarHolidayDates) {\n this.setOption({ name: 'holidayDates', value: v });\n }\n}\n\n\n\n@Injectable()\nexport class AXCalendarBaseComponent extends AXBaseComponent {\n\n\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n @Output()\n onSlotClick: EventEmitter<AXItemClickEvent<Date>> = new EventEmitter<AXItemClickEvent<Date>>();\n\n @Output()\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\n\n @Output()\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\n\n private _activeView: AXCalendarViewType = 'days';\n @Input()\n public get activeView(): AXCalendarViewType {\n return this._activeView;\n }\n public set activeView(v: AXCalendarViewType) {\n this._setOption({ name: 'activeView', value: v });\n }\n\n\n @Output()\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\n\n private _type: string = AXConfig.get(`dateTime.calendar`);\n\n @Input()\n public get type(): string {\n return this._type || AXConfig.get(`dateTime.calendar`);\n }\n public set type(v: string) {\n this._setOption({\n name: 'type',\n value: v\n })\n }\n\n\n @Output()\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\n\n private _depth: AXCalendarViewDepth = 'days';\n @Input()\n public get depth(): AXCalendarViewDepth {\n return this._depth;\n }\n public set depth(v: AXCalendarViewDepth) {\n this._setOption({\n name: 'depth',\n value: v,\n beforeCallback: () => {\n this._activeView = v;\n }\n });\n }\n\n @Output()\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n private _min: Date;\n @Input()\n public get min(): Date {\n return this._min;\n }\n public set min(v: Date) {\n this._setOption({ name: 'min', value: v });\n }\n\n\n @Output()\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\n\n private _max: Date;\n @Input()\n public get max(): Date {\n return this._max;\n }\n public set max(v: Date) {\n this._setOption({ name: 'max', value: v });\n }\n\n @Output()\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\n\n private _disabledDates: AXCalendarDisabledDates;\n @Input()\n public get disabledDates(): AXCalendarDisabledDates {\n return this._disabledDates;\n }\n public set disabledDates(v: AXCalendarDisabledDates) {\n this._setOption({ name: 'disabledDates', value: v });\n }\n\n @Output()\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\n\n private _holidayDates: AXCalendarHolidayDates;\n @Input()\n public get holidayDates(): AXCalendarHolidayDates {\n return this._holidayDates;\n }\n public set holidayDates(v: AXCalendarHolidayDates) {\n this._setOption({ name: 'holidayDates', value: v });\n }\n}\n\n\n\nexport const CALENDAR_INPUTS = [\n 'depth',\n 'activeView',\n 'min',\n 'max',\n 'disabledDates',\n 'type',\n 'holidayDates',\n];\nexport const CALENDAR_OUTPUTS = ['depthChange', 'typeChange', 'disabledDatesChange', 'holidayDatesChange', 'onNavigate'];\n","import {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n HostBinding,\n Input,\n TemplateRef,\n} from '@angular/core';\nimport { AXDateTime, AXDateTimeRange } from '@acorex/core/dateTime';\nimport {\n AXClickEvent,\n AXOptionChangedEvent,\n AXValueChangedEvent,\n MXInteractiveComponent,\n MXValueComponent\n} from '@acorex/components/common';\n\n\nimport { AXConfig } from '@acorex/core/config';\n\nimport { classes } from 'polytype';\nimport { MXCalendarBaseComponent } from './calendar.class';\n\n@Component({\n selector: 'ax-calendar',\n templateUrl: './calendar.component.html',\n styleUrls: ['./calendar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n inputs: [\n 'rtl',\n 'readonly',\n 'value',\n 'name',\n 'disabled',\n 'depth',\n 'activeView',\n 'min',\n 'max',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation'\n ],\n outputs: [\n 'onOptionChanged',\n 'valueChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick'\n ]\n})\nexport class AXCalendarComponent\n extends\n classes(MXValueComponent<Date>, MXInteractiveComponent, MXCalendarBaseComponent)\n{\n public get displayRange(): AXDateTimeRange {\n const current = this._viewStartDate || this._today;\n switch (this.activeView) {\n case 'years':\n // let y = current.startOf('year').year;\n // let min = y - 3;\n // let max = min + 11;\n let y = current.startOf('year').year;\n let min = y - (y % 10);\n let max = min + 9;\n return new AXDateTimeRange(\n AXDateTime.from({\n year: min,\n month: 1,\n date: 1,\n calendar: this._viewStartDate.calendar.name(),\n }),\n AXDateTime.from({\n year: max,\n month: 12,\n date: 28,\n calendar: this._viewStartDate.calendar.name(),\n })\n );\n case 'months':\n return new AXDateTimeRange(\n current.startOf('year'),\n current.endOf('year').add('day', -1)\n );\n default:\n return new AXDateTimeRange(\n current.startOf('month'),\n current.endOf('month')\n );\n }\n }\n\n protected _today = new AXDateTime(new Date(), this.type);\n private _viewStartDate!: AXDateTime;\n\n protected _navText: string = '';\n protected _todayText: string = '';\n\n protected _slots: any[] = [];\n protected _dayNames: string[] = [];\n\n\n private _initValues() {\n this._today = new AXDateTime(new Date(), this.type);\n this._dayNames = this._today.calendar.dayShortNames;\n }\n\n private _refresh() {\n this._initValues();\n this.navTo(this.value || this._today);\n }\n\n protected ngOnInit() {\n super.ngOnInit();\n this.onValueChanged.subscribe(this._handleOnValueChanged.bind(this));\n this.onOptionChanged.subscribe(this._handleOnOptionChanged.bind(this));\n this._initValues();\n if (!this.value) this.goToday();\n }\n\n\n render() {\n if (!this._viewStartDate) return;\n const vr = this.displayRange;\n const applyCellClass = (slot: any, cellClass: any = this.cellClass) => {\n switch (typeof cellClass) {\n case 'string':\n cellClass.split(' ').forEach(c => slot.cssClass[c] = true);\n break;\n case 'object':\n Object.assign(slot.cssClass, cellClass);\n break;\n case 'function':\n applyCellClass(slot, cellClass(slot.date));\n break;\n }\n }\n // year view\n if (this.activeView == 'years') {\n const a = vr.enumurate('year');\n this._slots = a.map((d, i) => {\n const r: any = {};\n r.date = d.date;\n //\n r.text = d.format('YYYY');\n r.tooltip = d.format('YYYY');\n //\n r.today = d.equal(this._today, 'year');\n //\n r.selected =\n this.value &&\n this.depth == 'years' &&\n d.equal(this.value, 'year')\n //\n r.disabled =\n (this.min && d.compare(this.min, 'year') == -1) ||\n (this.max && d.compare(this.max, 'year') == 1);\n //\n if (r.disabled) {\n r.cssClass = {\n 'ax-state-disabled': r.disabled,\n };\n } else {\n r.cssClass = {\n 'ax-state-today': r.today,\n 'ax-state-selected': r.selected,\n };\n }\n applyCellClass(r);\n return r;\n });\n this._navText = `${vr.startTime.year} - ${vr.endTime.year}`;\n this._todayText = this._today.format('YYYY');\n }\n // month view\n else if (this.activeView == 'months') {\n const a = vr.enumurate('month');\n this._slots = a.map((d, i) => {\n const r: any = {};\n r.date = d.date;\n r.text = d.format('MMM');\n r.tooltip = d.format('MMMM YYYY');\n r.today = d.equal(this._today, 'month');\n //\n r.disabled =\n (this.min && d.compare(this.min, 'month') == -1) ||\n (this.max && d.compare(this.max, 'month') == 1);\n //\n r.selected =\n this.value &&\n this.depth == 'months' &&\n d.equal(this.value, 'month');\n //\n if (r.disabled) {\n r.cssClass = {\n 'ax-state-disabled': r.disabled,\n };\n } else {\n r.cssClass = {\n 'ax-state-today': r.today,\n 'ax-state-selected': r.selected,\n 'ax-state-other': d.year != this._viewStartDate.year,\n };\n }\n applyCellClass(r);\n return r;\n });\n this._navText = this._viewStartDate.format('YYYY');\n this._todayText = this._today.format('MMMM YYYY');\n }\n // day view\n else {\n const a = vr.enumurate('day');\n this._slots = a.map((d, i) => {\n const r: any = {};\n r.date = d.date;\n r.text = d.dayOfMonth;\n r.tooltip = d.format();\n r.today = d.equal(this._today, 'day');\n r.selected = this.value && d.equal(this.value, 'day');\n r.holiday = this.isHoliday(d) || this.isWeekend(d);\n r.disabled =\n (this.min && d.compare(this.min, 'day') == -1) ||\n (this.max && d.compare(this.max, 'day') == 1) ||\n this.isDisabled(d);\n //\n if (r.disabled) {\n r.cssClass = {\n 'ax-state-disabled': true,\n };\n } else {\n r.cssClass = {\n 'ax-state-today': r.today,\n 'ax-state-selected': r.selected,\n 'ax-state-holiday': r.holiday\n };\n }\n r.cssClass[`ax-col-start-${vr.startTime.dayOfWeek}`] = i == 0;\n if (this.cellClass)\n applyCellClass(r);\n return r;\n });\n this._navText = this._viewStartDate.format('MMMM YYYY');\n this._todayText = this._today.format();\n }\n this.cdr.markForCheck();\n }\n\n protected _handlePrevClick() {\n this.isUserInteraction = true;\n this.prev();\n this.isUserInteraction = false;\n }\n\n protected _handleNextClick() {\n this.isUserInteraction = true;\n this.next();\n this.isUserInteraction = false;\n }\n\n protected _handleSlotClick(e: MouseEvent, slot) {\n if (slot.disabled || this.disabled) return;\n //\n this.onSlotClick.emit({\n component: this,\n item: slot.date,\n isUserInteraction: true,\n nativeEvent: e,\n });\n //\n if (this.activeView == 'days') {\n this._setDate(slot.date);\n } else if (this.activeView == 'months' && this.depth == 'days') {\n this.activeView = 'days';\n this.navTo(slot.date);\n } else if (this.activeView == 'months' && this.depth == 'months') {\n this._setDate(slot.date);\n } else if (\n this.activeView == 'years' &&\n (this.depth == 'days' || this.depth == 'months')\n ) {\n this.activeView = 'months';\n this.navTo(slot.date);\n } else if (this.activeView == 'years' && this.depth == 'years') {\n this._setDate(slot.date);\n }\n }\n\n protected _handleNavClick(e: AXClickEvent | any) {\n this.isUserInteraction = true;\n this.toggleView();\n this.isUserInteraction = false;\n }\n\n public toggleView() {\n if (this.activeView == 'days')\n this.activeView = 'months';\n else if (this.activeView == 'months')\n this.activeView = 'years';\n }\n\n protected _handleOnOptionChanged(e: AXOptionChangedEvent) {\n if (\n e.name == 'depth' ||\n e.name == 'activeView' ||\n e.name == 'disabledDates' ||\n e.name == 'holidayDates'\n ) {\n this.render();\n }\n if (e.name == 'type') {\n this._refresh();\n }\n }\n\n private _handleOnValueChanged(e: AXValueChangedEvent) {\n this._viewStartDate = new AXDateTime(e.value, this.type);\n this.render();\n }\n\n protected _handleGoToday() {\n this.isUserInteraction = true;\n this._setDate(this._today.date);\n this.goToday();\n this.isUserInteraction = false;\n }\n\n next() {\n this._navNextPrev(false);\n }\n\n prev() {\n this._navNextPrev(true);\n }\n\n focus() {\n const func = (s: string) => this.getHostElement().querySelector<HTMLDivElement>(s);\n const div =\n func('.ax-calendar-slots>div.ax-state-selected') ||\n func('.ax-calendar-slots>div');\n div?.focus();\n }\n\n private _navNextPrev(prev: boolean) {\n const sign = prev ? -1 : 1;\n if (this.activeView == 'days')\n this.navTo(this._viewStartDate.add('month', sign * 1));\n else if (this.activeView == 'months')\n this.navTo(this._viewStartDate.add('year', sign * 1));\n else this.navTo(this._viewStartDate.add('year', sign * 10));\n }\n\n goToday() {\n this.navTo(this._today);\n }\n\n navTo(date: Date | AXDateTime) {\n this._viewStartDate = AXDateTime.convert(\n date,\n this._today.calendar.name()\n ).startOf();\n const vr = this.displayRange;\n this.render();\n this.onNavigate.emit({\n component: this,\n isUserInteraction: this.isUserInteraction,\n start: vr.startTime?.date,\n end: vr.endTime?.date,\n htmlElement: this.getHostElement(),\n });\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n const _classes = {\n 'ax-state-disabled': this.disabled,\n };\n return Object.entries(_classes)\n .filter(c => c[1])\n .map(c => c[0])\n .join(' ');\n }\n\n private _setDate(value: Date) {\n if (this.readonly || this.disabled) return;\n this.value = AXDateTime.convert(\n value,\n this._today.calendar.name()\n ).startOf().date;\n }\n\n protected isDisabled(date: AXDateTime): boolean {\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\n return this.disabledDates.some(d => date.equal(d, 'day'));\n } else if (typeof this.disabledDates == 'function') {\n return this.disabledDates(date.date);\n }\n return false;\n }\n\n protected isHoliday(date: AXDateTime): boolean {\n if (Array.isArray(this.holidayDates) && this.holidayDates.length != 0) {\n return this.holidayDates.some(d => date.equal(d, 'day'));\n } else if (typeof this.holidayDates == 'function') {\n return this.holidayDates(date.date);\n }\n return false;\n }\n\n protected isWeekend(date: AXDateTime): boolean {\n const weekend = AXConfig.get(\n `dateTime.calendars.${this.type}.weekend`\n ) as number[];\n return weekend.includes(date.dayOfWeek);\n }\n\n // protected _pickerDays: number[] = [];\n // protected _pickerMonths: { text: string; value: number }[] = [];\n // protected _pickerYears: number[] = [];\n\n // private _generatePickerItems(view) {\n // switch (view) {\n // case 'year':\n // this._pickerYears = range(2000, 2050, 1);\n // break;\n // case 'month':\n // this._pickerMonths = new AXDateTimeRange(\n // this.displayRange.startTime.startOf('year'),\n // this.displayRange.startTime.endOf('year')\n // )\n // .enumurate('month')\n // .map(c => ({\n // text: c.format('MMM'),\n // value: c.monthOfYear,\n // }));\n // break;\n // default:\n // this._pickerDays = new AXDateTimeRange(\n // this.displayRange.startTime.startOf('month'),\n // this.displayRange.startTime.endOf('month')\n // )\n // .enumurate('day')\n // .map(c => c.dayOfMonth);\n // this.cdr.detectChanges();\n // break;\n // }\n // }\n\n // protected _handlePickerChange(item: any, view) {\n // if (!item) return;\n // const date = this.displayRange.startTime;\n // switch (view) {\n // case 'year':\n // this._setDate(date.set('year', item.value).date);\n // break;\n // case 'month':\n // this._setDate(date.set('month', item.value.value).date);\n // this._generatePickerItems('day');\n // break;\n // default:\n // this._setDate(date.set('day', item.value).date);\n // break;\n // }\n // }\n}\n","<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\n <ng-container *ngIf=\"showNavigation\">\n <ng-content select=\"ax-header\"></ng-content>\n <div class=\"ax-calendar-header\">\n <div class=\"ax-calendar-header-info\">\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[1] }}\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText.split(' ')[0] }}\n </button>\n </ng-container>\n <ng-template #elseTemplate>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"_handleNavClick($event)\">\n {{ _navText }}\n </button>\n </ng-template>\n </div>\n <div class=\"ax-calendar-header-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"_handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n </div>\n </ng-container>\n <div class=\"ax-calendar-body\">\n <div [ngSwitch]=\"activeView\">\n <ng-container *ngSwitchCase=\"'years'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else yearTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #yearTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'months'\">\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <div tabindex=\"0\" *ngFor=\"let slot of _slots\" class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\" (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else monthTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #monthTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <div class=\"ax-calendar-week\">\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\n </div>\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{'ax-default':!cellTemplate}\">\n <ng-container *ngFor=\"let slot of _slots\">\n <div tabindex=\"0\" class=\"ax-calendar-slot\" [ngClass]=\"slot.cssClass\" \n (click)=\"_handleSlotClick($event, slot)\">\n <ng-container *ngIf=\"cellTemplate; else dayTpl\">\n <div >\n <ng-container *ngTemplateOutlet=\"cellTemplate;context: { $implicit: {slot:slot} }\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #dayTpl>\n <div [title]=\"slot.tooltip\" >\n {{ slot.text }}\n </div>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n <ng-content select=\"ax-footer\"></ng-content>\n <!-- <div class=\"ax-calendar-footer\">\n <button\n class=\"ax-today-button\"\n tabindex=\"-1\"\n [class.ax-state-disabled]=\"disabled\"\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\n (click)=\"_handleGoToday()\"\n *ngIf=\"activeView == 'days'\">\n {{ _todayText }}\n </button>\n </div> -->\n</ng-container>\n<ng-template #pickerTemplate>\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\n</ng-template>","import { AXRange, MXInteractiveComponent, MXValueComponent } from '@acorex/components/common';\nimport { Component, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { classes } from 'polytype';\nimport { AXCalendarComponent } from './calendar.component';\nimport { AXCalendarSlotClick, MXCalendarBaseComponent } from './calendar.class';\nimport { AXDateTime } from '@acorex/core/dateTime';\n\n@Component({\n selector: 'ax-calendar-range',\n templateUrl: 'calendar-range.component.html',\n styleUrls: ['calendar-range.component.scss'],\n encapsulation: ViewEncapsulation.None,\n inputs: [\n 'rtl',\n 'readonly',\n 'value',\n 'name',\n 'disabled',\n 'depth',\n 'activeView',\n 'min',\n 'max',\n 'disabledDates',\n 'holidayDates',\n 'type',\n 'cellTemplate',\n 'cellClass',\n 'showNavigation'\n ],\n outputs: [\n 'onOptionChanged',\n 'valueChange',\n 'onValueChanged',\n 'onBlur',\n 'onFocus',\n 'depthChange',\n 'typeChange',\n 'activeViewChange',\n 'disabledDatesChange',\n 'holidayDatesChange',\n 'onNavigate',\n 'onSlotClick'\n ]\n})\nexport class AXCalendarRangeComponent\n extends\n classes(MXValueComponent<AXRange<Date>>, MXInteractiveComponent, MXCalendarBaseComponent)\n{\n\n @ViewChild(\"c1\", { static: true })\n private _c1: AXCalendarComponent;\n\n @ViewChild(\"c2\", { static: true })\n private _c2: AXCalendarComponent;\n\n\n _navText: string = \"\";\n\n constructor() {\n super();\n this.defaultValue = { from: null, end: null };\n }\n\n protected ngAfterViewInit(): void {\n super.ngAfterViewInit();\n this._syncNav1();\n }\n\n getCellClass = (date: Date) => {\n const d = new AXDateTime(date);\n const from = new AXDateTime(this.value.from);\n const end = new AXDateTime(this.value.end);\n if (this.value.from && d.equal(from, 'day')) {\n return 'ax-range-start';\n }\n if (this.value.end && d.equal(end, 'day'))\n return 'ax-range-end';\n if (this.value.from && this.value.end && (d.compare(from, 'day') > 0) && (d.compare(end, 'day') < 0))\n return 'ax-range-between';\n return null;\n }\n\n protected handleSlotClick(e: AXCalendarSlotClick) {\n debugger\n if (this._c1.activeView == this.depth) {\n if (!this.value.from || (this.value.from && this.value.end)) {\n this.value.from = e.item;\n this.value.end = null;\n }\n if (this.value.from && (e.item <= this.value.from)) {\n this.value.from = e.item;\n }\n else if (this.value.from && !this.value.end) {\n this.value.end = e.item;\n }\n }\n else {\n if (e.component == this._c1)\n this._syncNav1();\n if (e.component == this._c2) {\n this._syncNav2(new AXDateTime(e.item));\n }\n }\n this._c1.render();\n this._c2.render();\n }\n\n\n protected handlePrevClick() {\n const view = this._c1.activeView;\n const d1 = this._c1.displayRange.startTime;\n if (view == 'days' || view == 'months') {\n this._c1.prev();\n }\n else if (view == 'years') {\n this._c1.navTo(d1.add('year', -20));\n }\n }\n\n protected handleNextClick() {\n const view = this._c1.activeView;\n const d1 = this._c1.displayRange.startTime;\n if (view == 'days' || view == 'months') {\n this._c1.next();\n }\n else if (view == 'years') {\n this._c1.navTo(d1.add('year', 20));\n }\n }\n\n protected handleNavClick() {\n this._c1.toggleView();\n }\n\n private _syncNavText() {\n const view = this._c1.activeView;\n const d1 = this._c1.displayRange.startTime;\n if (view == 'days') {\n const d2 = this._c2.displayRange.endTime;\n this._navText = `${d1.format(\"MMM yyyy\")} - ${d2.format(\"MMM yyyy\")}`;\n }\n else if (view == 'months') {\n const d2 = this._c2.displayRange.endTime;\n this._navText = `${d1.format(\"yyyy\")} - ${d2.format(\"yyyy\")}`;\n }\n else if (view == 'years') {\n const d2 = this._c2.displayRange.endTime;\n this._navText = `${d1.format(\"yyyy\")} - ${d2.format(\"yyyy\")}`;\n }\n }\n\n protected handleNavigate() {\n this._syncNav1();\n }\n\n protected handleActiveViewChange1() {\n this._c2.activeView = this._c1.activeView;\n this._syncNav1();\n }\n\n protected handleActiveViewChange2() {\n if (this._c2.activeView != this._c1.activeView) {\n this._c1.activeView = this._c2.activeView;\n }\n }\n\n private _syncNav1() {\n const view = this._c2.activeView = this._c1.activeView;\n const range = this._c1.displayRange;\n if (view == 'days') {\n this._c2.navTo(range.startTime.add(\"month\", 1));\n }\n else\n if (view == 'months') {\n this._c2.navTo(range.startTime.add(\"year\", 1));\n }\n else if (view == 'years') {\n this._c2.navTo(range.endTime.add(\"year\", 4));\n }\n this._syncNavText();\n }\n\n private _syncNav2(e: AXDateTime) {\n const view = this._c2.activeView;\n if (view == 'months') {\n this._c1.navTo(e.add(\"month\", -1));\n }\n else if (view == 'years') {\n this._c1.navTo(e.startOf('year'));\n }\n }\n}","<div class=\"ax-calendar-range-header\">\n <ng-content></ng-content>\n <div class=\"ax-calendar-header-range-info\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button\" (click)=\"handleNavClick()\">\n {{ _navText }}\n </button>\n </div>\n <div class=\"ax-calendar-header-range-buttons\">\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handlePrevClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': !rtl,\n 'ax-icon-chevron-right': rtl\n }\"></i>\n </button>\n <button [attr.disabled]=\"disabled ? '' : null\" class=\"ax-general-button ax-button-icon\"\n (click)=\"handleNextClick()\">\n <i class=\"ax-icon\" [ngClass]=\"{\n 'ax-icon-chevron-left': rtl,\n 'ax-icon-chevron-right': !rtl\n }\"></i>\n </button>\n </div>\n</div>\n<div class=\"ax-calendar-range-body\">\n <ax-calendar #c1 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (onNavigate)=\"handleNavigate()\" (activeViewChange)=\"handleActiveViewChange1()\">\n </ax-calendar>\n <ax-calendar #c2 style=\"width: 50%;\" [showNavigation]=\"false\" [cellClass]=\"getCellClass\" [type]=\"type\"\n [cellTemplate]=\"cellTemplate\" [min]=\"min\" [max]=\"max\" [readonly]=\"true\" [depth]=\"depth\" (onSlotClick)=\"handleSlotClick($event)\"\n (activeViewChange)=\"handleActiveViewChange2()\">\n </ax-calendar>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\nimport { AXCalendarComponent } from './calendar.component';\nimport { AXCalendarRangeComponent } from './calendar-range.component';\n\nconst COMPONENT = [AXCalendarComponent, AXCalendarRangeComponent];\nconst MODULES = [CommonModule, AXDateTimeModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXCalendarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.AXCalendarComponent"],"mappings":"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"}
|
@@ -11,11 +11,11 @@ class AXCardComponent extends AXBaseComponent {
|
|
11
11
|
}
|
12
12
|
ngOnInit() { }
|
13
13
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
14
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCardComponent, selector: "ax-card", usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-image,img\"></ng-content>\
|
14
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: AXCardComponent, selector: "ax-card", usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-image,img\"></ng-content>\n<div class=\"ax-card-content\">\n <ng-content select=\"ax-title\"></ng-content>\n <ng-content select=\"ax-content\"></ng-content>\n</div>\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"], encapsulation: i0.ViewEncapsulation.None });
|
15
15
|
}
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: AXCardComponent, decorators: [{
|
17
17
|
type: Component,
|
18
|
-
args: [{ selector: 'ax-card', encapsulation: ViewEncapsulation.None, template: "<ng-content select=\"ax-image,img\"></ng-content>\
|
18
|
+
args: [{ selector: 'ax-card', encapsulation: ViewEncapsulation.None, template: "<ng-content select=\"ax-image,img\"></ng-content>\n<div class=\"ax-card-content\">\n <ng-content select=\"ax-title\"></ng-content>\n <ng-content select=\"ax-content\"></ng-content>\n</div>\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgba(var(--ax-color-surface));border:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"] }]
|
19
19
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
|
20
20
|
|
21
21
|
class AXCardModule {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-card.mjs","sources":["../../../../projects/acorex/components/card/src/card.component.ts","../../../../projects/acorex/components/card/src/card.component.html","../../../../projects/acorex/components/card/src/card.module.ts","../../../../projects/acorex/components/card/acorex-components-card.ts"],"sourcesContent":["import { AXBaseComponent } from '@acorex/components/mixin';\
|
1
|
+
{"version":3,"file":"acorex-components-card.mjs","sources":["../../../../projects/acorex/components/card/src/card.component.ts","../../../../projects/acorex/components/card/src/card.component.html","../../../../projects/acorex/components/card/src/card.module.ts","../../../../projects/acorex/components/card/acorex-components-card.ts"],"sourcesContent":["import { AXBaseComponent } from '@acorex/components/mixin';\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-card',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXCardComponent extends AXBaseComponent {\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n ngOnInit(): void {}\n}\n","<ng-content select=\"ax-image,img\"></ng-content>\n<div class=\"ax-card-content\">\n <ng-content select=\"ax-title\"></ng-content>\n <ng-content select=\"ax-content\"></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXCardComponent } from './card.component';\n\n@NgModule({\n declarations: [AXCardComponent],\n imports: [CommonModule],\n exports: [AXCardComponent],\n providers: [],\n})\nexport class AXCardModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AASA,MAMa,eAAgB,SAAQ,eAAe,CAAA;AACN,IAAA,GAAA,CAAA;IAA5C,WAAY,CAAA,UAAsB,EAAU,GAAsB,EAAA;AAChE,QAAA,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QADmB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;KAEjE;AAED,IAAA,QAAQ,MAAW;uGALR,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,sECf5B,kMAKA,EAAA,MAAA,EAAA,CAAA,6dAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDUa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;+BACE,SAAS,EAAA,aAAA,EAGJ,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,kMAAA,EAAA,MAAA,EAAA,CAAA,6dAAA,CAAA,EAAA,CAAA;;;AETvC,MAMa,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EALR,YAAA,EAAA,CAAA,eAAe,CACpB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,eAAe,CAAA,EAAA,CAAA,CAAA;AAGd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAJb,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAIX,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,eAAe,CAAC;AAC1B,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
|