@acorex/components 7.3.2 → 7.4.1
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/button/lib/button-group.component.d.ts +10 -73
- package/button/lib/button-item.class.d.ts +1 -3
- package/button/lib/button-item.component.d.ts +12 -75
- package/button/lib/button.component.d.ts +1 -1
- package/button-group/README.md +3 -0
- package/button-group/index.d.ts +2 -0
- package/button-group/lib/button-group.component.d.ts +21 -0
- package/button-group/lib/button-group.module.d.ts +8 -0
- package/calendar/lib/calendar-range.component.d.ts +2 -1
- package/calendar/lib/calendar.class.d.ts +9 -8
- package/calendar/lib/calendar.component.d.ts +2 -1
- package/check-box/lib/check-box.component.d.ts +3 -2
- package/color-box/README.md +3 -0
- package/color-box/index.d.ts +2 -0
- package/color-box/lib/color-box.component.d.ts +27 -0
- package/color-box/lib/color-box.module.d.ts +11 -0
- package/common/index.d.ts +5 -3
- package/common/lib/classes/styles.class.d.ts +0 -9
- package/common/lib/components/button-base-component.class.d.ts +0 -2
- package/common/lib/components/interactive-component.class.d.ts +7 -1
- package/common/lib/types/direction.d.ts +4 -0
- package/common/lib/types/orientation.d.ts +4 -0
- package/common/lib/types/placement.d.ts +30 -0
- package/common/lib/types/selection-mode.d.ts +4 -0
- package/data-pager/lib/data-pager.module.d.ts +5 -4
- package/data-table/lib/data-column.directive.d.ts +2 -2
- package/datetime-box/README.md +3 -0
- package/datetime-box/index.d.ts +2 -0
- package/datetime-box/lib/datetime-box.component.d.ts +34 -0
- package/datetime-box/lib/datetime-box.module.d.ts +13 -0
- package/datetime-input/README.md +3 -0
- package/datetime-input/index.d.ts +2 -0
- package/datetime-input/lib/datetime-input.component.d.ts +44 -0
- package/datetime-input/lib/datetime-input.module.d.ts +10 -0
- package/datetime-picker/README.md +3 -0
- package/datetime-picker/index.d.ts +2 -0
- package/datetime-picker/lib/datetime-picker.component.d.ts +42 -0
- package/datetime-picker/lib/datetime-picker.module.d.ts +14 -0
- package/decorators/index.d.ts +4 -4
- package/decorators/lib/decorators.module.d.ts +4 -4
- package/dropdown/index.d.ts +2 -0
- package/dropdown/lib/dropdown-box.class.d.ts +15 -0
- package/dropdown/lib/dropdown-box.component.d.ts +25 -0
- package/dropdown/lib/dropdown-panel.component.d.ts +31 -20
- package/dropdown/lib/dropdown.module.d.ts +9 -8
- package/esm2022/action-sheet/lib/action-sheet.class.mjs +1 -1
- package/esm2022/action-sheet/lib/action-sheet.component.mjs +3 -3
- package/esm2022/action-sheet/lib/action-sheet.module.mjs +4 -4
- package/esm2022/action-sheet/lib/action-sheet.service.mjs +3 -3
- package/esm2022/alert/lib/alert.component.mjs +3 -3
- package/esm2022/alert/lib/alert.module.mjs +4 -4
- package/esm2022/avatar/lib/avatar-group.component.mjs +3 -3
- package/esm2022/avatar/lib/avatar.component.mjs +3 -3
- package/esm2022/avatar/lib/avatar.module.mjs +4 -4
- package/esm2022/badge/lib/badge.component.mjs +3 -3
- package/esm2022/badge/lib/badge.module.mjs +4 -4
- package/esm2022/breadcrumbs/lib/breadcrumbs-item.component.mjs +3 -3
- package/esm2022/breadcrumbs/lib/breadcrumbs.component.mjs +3 -3
- package/esm2022/breadcrumbs/lib/breadcrumbs.module.mjs +4 -4
- package/esm2022/button/lib/button-group.component.mjs +36 -29
- package/esm2022/button/lib/button-item.class.mjs +1 -1
- package/esm2022/button/lib/button-item.component.mjs +46 -32
- package/esm2022/button/lib/button.component.mjs +10 -7
- package/esm2022/button/lib/button.module.mjs +4 -4
- package/esm2022/{color-picker/acorex-components-color-picker.mjs → button-group/acorex-components-button-group.mjs} +1 -1
- package/esm2022/button-group/index.mjs +3 -0
- package/esm2022/button-group/lib/button-group.component.mjs +97 -0
- package/esm2022/button-group/lib/button-group.module.mjs +21 -0
- package/esm2022/calendar/lib/calendar-range.component.mjs +14 -13
- package/esm2022/calendar/lib/calendar.class.mjs +19 -18
- package/esm2022/calendar/lib/calendar.component.mjs +80 -40
- package/esm2022/calendar/lib/calendar.module.mjs +4 -4
- package/esm2022/check-box/lib/check-box.component.mjs +9 -5
- package/esm2022/check-box/lib/check-box.module.mjs +4 -4
- package/esm2022/chips/lib/chips.component.mjs +3 -3
- package/esm2022/chips/lib/chips.module.mjs +4 -4
- package/esm2022/collapse/lib/collapse-group.component.mjs +3 -3
- package/esm2022/collapse/lib/collapse.component.mjs +3 -3
- package/esm2022/collapse/lib/collapse.module.mjs +4 -4
- package/esm2022/color-box/acorex-components-color-box.mjs +5 -0
- package/esm2022/color-box/index.mjs +3 -0
- package/esm2022/color-box/lib/color-box.component.mjs +91 -0
- package/esm2022/color-box/lib/color-box.module.mjs +24 -0
- package/esm2022/color-palette/lib/color-palette-input.component.mjs +3 -3
- package/esm2022/color-palette/lib/color-palette-picker.component.mjs +13 -13
- package/esm2022/color-palette/lib/color-palette-preview.component.mjs +3 -3
- package/esm2022/color-palette/lib/color-palette-swatches.component.mjs +3 -3
- package/esm2022/color-palette/lib/color-palette.class.mjs +6 -6
- package/esm2022/color-palette/lib/color-palette.component.mjs +5 -5
- package/esm2022/color-palette/lib/color-palette.module.mjs +4 -4
- package/esm2022/common/index.mjs +6 -4
- package/esm2022/common/lib/classes/components.class.mjs +22 -22
- package/esm2022/common/lib/classes/styles.class.mjs +1 -2
- package/esm2022/common/lib/common.module.mjs +4 -4
- package/esm2022/common/lib/components/base-component.class.mjs +3 -3
- package/esm2022/common/lib/components/button-base-component.class.mjs +4 -18
- package/esm2022/common/lib/components/input-base-value-component.class.mjs +3 -3
- package/esm2022/common/lib/components/interactive-component.class.mjs +14 -1
- package/esm2022/common/lib/components/value-component.class.mjs +6 -6
- package/esm2022/common/lib/directives/auto-focus.directive.mjs +3 -3
- package/esm2022/common/lib/directives/delayed-value-changed.directive.mjs +3 -3
- package/esm2022/common/lib/directives/hotkey.directive.mjs +3 -3
- package/esm2022/common/lib/directives/infinite-scroll.directive.mjs +3 -3
- package/esm2022/common/lib/directives/responsive.directive.mjs +3 -3
- package/esm2022/common/lib/services/dom.service.mjs +3 -3
- package/esm2022/common/lib/services/hotkey.service.mjs +3 -3
- package/esm2022/common/lib/types/direction.mjs +2 -0
- package/esm2022/common/lib/types/orientation.mjs +2 -0
- package/esm2022/common/lib/types/placement.mjs +160 -0
- package/esm2022/common/lib/types/range.mjs +2 -0
- package/esm2022/common/lib/types/selection-mode.mjs +5 -0
- package/esm2022/context-menu/lib/context-menu.component.mjs +3 -3
- package/esm2022/context-menu/lib/context-menu.module.mjs +4 -4
- package/esm2022/data-pager/lib/data-pager-base.component.mjs +6 -6
- package/esm2022/data-pager/lib/data-pager-info.component.mjs +3 -3
- package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +3 -3
- package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +4 -4
- package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +15 -18
- package/esm2022/data-pager/lib/data-pager-pagesize-dropdown.component.mjs +7 -7
- package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +4 -4
- package/esm2022/data-pager/lib/data-pager.component.mjs +5 -5
- package/esm2022/data-pager/lib/data-pager.module.mjs +8 -7
- package/esm2022/data-table/lib/data-column.directive.mjs +6 -8
- package/esm2022/data-table/lib/data-table.component.mjs +3 -3
- package/esm2022/data-table/lib/data-table.module.mjs +4 -4
- package/esm2022/datetime-box/acorex-components-datetime-box.mjs +5 -0
- package/esm2022/datetime-box/index.mjs +3 -0
- package/esm2022/datetime-box/lib/datetime-box.component.mjs +109 -0
- package/esm2022/datetime-box/lib/datetime-box.module.mjs +38 -0
- package/esm2022/datetime-input/acorex-components-datetime-input.mjs +5 -0
- package/esm2022/datetime-input/index.mjs +3 -0
- package/esm2022/datetime-input/lib/datetime-input.component.mjs +522 -0
- package/esm2022/datetime-input/lib/datetime-input.module.mjs +23 -0
- package/esm2022/datetime-picker/acorex-components-datetime-picker.mjs +5 -0
- package/esm2022/datetime-picker/index.mjs +3 -0
- package/esm2022/datetime-picker/lib/datetime-picker.component.mjs +232 -0
- package/esm2022/datetime-picker/lib/datetime-picker.module.mjs +41 -0
- package/esm2022/decorators/index.mjs +5 -5
- package/esm2022/decorators/lib/components/clear-button.component.mjs +58 -0
- package/esm2022/decorators/lib/components/close-button.component.mjs +43 -0
- package/esm2022/decorators/lib/components/generic-content.component.mjs +17 -0
- package/esm2022/decorators/lib/components/icon.component.mjs +26 -0
- package/esm2022/decorators/lib/decorators.module.mjs +10 -10
- package/esm2022/dialog/lib/dialog.component.mjs +4 -4
- package/esm2022/dialog/lib/dialog.module.mjs +4 -4
- package/esm2022/dialog/lib/dialog.service.mjs +3 -3
- package/esm2022/drawer/lib/drawer-container.component.mjs +3 -3
- package/esm2022/drawer/lib/drawer.component.mjs +3 -3
- package/esm2022/drawer/lib/drawer.module.mjs +4 -4
- package/esm2022/dropdown/index.mjs +3 -1
- package/esm2022/dropdown/lib/dropdown-box.class.mjs +38 -0
- package/esm2022/dropdown/lib/dropdown-box.component.mjs +94 -0
- package/esm2022/dropdown/lib/dropdown-panel.component.mjs +88 -37
- package/esm2022/dropdown/lib/dropdown.module.mjs +8 -7
- package/esm2022/form/index.mjs +2 -1
- package/esm2022/form/lib/form-field.component.mjs +3 -3
- package/esm2022/form/lib/form.component.mjs +3 -3
- package/esm2022/form/lib/form.config.mjs +36 -0
- package/esm2022/form/lib/form.module.mjs +6 -28
- package/esm2022/form/lib/validation-rule.widget.mjs +8 -7
- package/esm2022/form/lib/validation-summary.component.mjs +4 -4
- package/esm2022/image/lib/image.component.mjs +3 -3
- package/esm2022/image/lib/image.module.mjs +4 -4
- package/esm2022/label/lib/label.component.mjs +3 -3
- package/esm2022/label/lib/label.module.mjs +4 -4
- package/esm2022/loading/lib/loading-spinner.component.mjs +3 -3
- package/esm2022/loading/lib/loading.component.mjs +3 -3
- package/esm2022/loading/lib/loading.directive.mjs +3 -3
- package/esm2022/loading/lib/loading.module.mjs +4 -4
- package/esm2022/loading/lib/loading.service.mjs +3 -3
- package/esm2022/menu/lib/menu.component.mjs +3 -3
- package/esm2022/menu/lib/menu.module.mjs +4 -4
- package/esm2022/mixin/lib/base-components.class.mjs +3 -3
- package/esm2022/mixin/lib/selection-component.class.mjs +3 -3
- package/esm2022/mixin/lib/value-mixin.class.mjs +3 -3
- package/esm2022/notification/lib/notification.component.mjs +3 -3
- package/esm2022/notification/lib/notification.module.mjs +4 -4
- package/esm2022/notification/lib/notification.service.mjs +3 -3
- package/esm2022/number-box/lib/number-box.component.mjs +3 -3
- package/esm2022/number-box/lib/number-box.module.mjs +4 -4
- package/esm2022/otp/lib/otp.component.mjs +23 -11
- package/esm2022/otp/lib/otp.module.mjs +4 -4
- package/esm2022/page/lib/base-page.class.mjs +3 -3
- package/esm2022/page/lib/page.component.mjs +3 -3
- package/esm2022/page/lib/page.module.mjs +4 -4
- package/esm2022/password-box/lib/password-box.component.mjs +3 -3
- package/esm2022/password-box/lib/password-box.module.mjs +4 -4
- package/esm2022/picker/acorex-components-picker.mjs +5 -0
- package/esm2022/picker/index.mjs +4 -0
- package/esm2022/picker/lib/picker-column.directive.mjs +73 -0
- package/esm2022/picker/lib/picker.component.mjs +148 -0
- package/esm2022/picker/lib/picker.module.mjs +22 -0
- package/esm2022/popover/index.mjs +1 -2
- package/esm2022/popover/lib/popover.component.mjs +241 -176
- package/esm2022/popover/lib/popover.module.mjs +4 -4
- package/esm2022/popup/lib/popup.component.mjs +37 -12
- package/esm2022/popup/lib/popup.module.mjs +4 -4
- package/esm2022/popup/lib/popup.service.mjs +9 -6
- package/esm2022/progress-bar/lib/progress-bar.component.mjs +4 -4
- package/esm2022/progress-bar/lib/progress-bar.module.mjs +4 -4
- package/esm2022/radio/lib/radio.component.mjs +36 -21
- package/esm2022/radio/lib/radio.module.mjs +4 -4
- package/esm2022/range-slider/lib/range-slider.component.mjs +21 -34
- package/esm2022/range-slider/lib/range-slider.module.mjs +4 -4
- package/esm2022/result/lib/result.component.mjs +6 -6
- package/esm2022/result/lib/result.module.mjs +4 -4
- package/esm2022/scheduler/index.mjs +2 -1
- package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +16 -9
- package/esm2022/scheduler/lib/scheduler-week-view.component.mjs +12 -0
- package/esm2022/scheduler/lib/scheduler.component.mjs +27 -14
- package/esm2022/scheduler/lib/scheduler.module.mjs +10 -9
- package/esm2022/search-box/lib/search-box.component.mjs +3 -3
- package/esm2022/search-box/lib/search-box.module.mjs +4 -4
- package/esm2022/select-box/lib/select-box.component.mjs +7 -7
- package/esm2022/select-box/lib/select-box.module.mjs +4 -4
- package/esm2022/selection-list/lib/selection-list.component.mjs +3 -3
- package/esm2022/selection-list/lib/selection-list.module.mjs +4 -4
- package/esm2022/switch/lib/switch-content.component.mjs +3 -3
- package/esm2022/switch/lib/switch.component.mjs +3 -3
- package/esm2022/switch/lib/switch.module.mjs +4 -4
- package/esm2022/tabs/lib/tab-content.directive.mjs +3 -3
- package/esm2022/tabs/lib/tab-item.component.mjs +23 -53
- package/esm2022/tabs/lib/tabs.class.mjs +1 -1
- package/esm2022/tabs/lib/tabs.component.mjs +19 -28
- package/esm2022/tabs/lib/tabs.module.mjs +4 -4
- package/esm2022/tag/lib/tag.component.mjs +8 -10
- package/esm2022/tag/lib/tag.module.mjs +4 -4
- package/esm2022/text-area/lib/text-area.component.mjs +3 -3
- package/esm2022/text-area/lib/text-area.module.mjs +4 -4
- package/esm2022/text-box/lib/mask-options.directive.mjs +3 -3
- package/esm2022/text-box/lib/text-box.component.mjs +3 -3
- package/esm2022/text-box/lib/text-box.module.mjs +4 -4
- package/esm2022/toast/lib/toast.component.mjs +3 -3
- package/esm2022/toast/lib/toast.module.mjs +4 -4
- package/esm2022/toast/lib/toast.service.mjs +3 -3
- package/esm2022/tooltip/lib/tooltip.component.mjs +9 -13
- package/esm2022/tooltip/lib/tooltip.directive.mjs +35 -143
- package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
- package/esm2022/uploader/index.mjs +4 -2
- package/esm2022/uploader/lib/uploader-drop-zone.component.mjs +13 -0
- package/esm2022/uploader/lib/uploader-list.component.mjs +14 -0
- package/esm2022/uploader/lib/uploader-overlay.component.mjs +12 -0
- package/esm2022/uploader/lib/uploader.module.mjs +14 -11
- package/fesm2022/acorex-components-action-sheet.mjs +10 -10
- package/fesm2022/acorex-components-alert.mjs +7 -7
- package/fesm2022/acorex-components-avatar.mjs +10 -10
- package/fesm2022/acorex-components-badge.mjs +7 -7
- package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
- package/fesm2022/acorex-components-button-group.mjs +122 -0
- package/fesm2022/acorex-components-button-group.mjs.map +1 -0
- package/fesm2022/acorex-components-button.mjs +134 -113
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +110 -68
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +12 -8
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +7 -7
- package/fesm2022/acorex-components-collapse.mjs +10 -10
- package/fesm2022/acorex-components-color-box.mjs +116 -0
- package/fesm2022/acorex-components-color-box.mjs.map +1 -0
- package/fesm2022/acorex-components-color-palette.mjs +36 -36
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +236 -149
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-context-menu.mjs +7 -7
- package/fesm2022/acorex-components-data-pager.mjs +52 -54
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +12 -14
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +146 -0
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -0
- package/fesm2022/acorex-components-datetime-input.mjs +547 -0
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -0
- package/fesm2022/acorex-components-datetime-picker.mjs +273 -0
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -0
- package/fesm2022/acorex-components-decorators.mjs +50 -50
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +11 -11
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +10 -10
- package/fesm2022/acorex-components-dropdown.mjs +217 -44
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +58 -44
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +7 -7
- package/fesm2022/acorex-components-label.mjs +7 -7
- package/fesm2022/acorex-components-loading.mjs +16 -16
- package/fesm2022/acorex-components-menu.mjs +7 -7
- package/fesm2022/acorex-components-mixin.mjs +6 -7
- package/fesm2022/acorex-components-mixin.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +10 -10
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +7 -7
- package/fesm2022/acorex-components-otp.mjs +27 -15
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-password-box.mjs +7 -7
- package/fesm2022/acorex-components-picker.mjs +242 -0
- package/fesm2022/acorex-components-picker.mjs.map +1 -0
- package/fesm2022/acorex-components-popover.mjs +246 -251
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +48 -20
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +8 -8
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +39 -25
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +24 -37
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +9 -9
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +50 -25
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +7 -7
- package/fesm2022/acorex-components-select-box.mjs +10 -10
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +7 -7
- package/fesm2022/acorex-components-switch.mjs +10 -10
- package/fesm2022/acorex-components-tabs.mjs +45 -85
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +11 -13
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +7 -7
- package/fesm2022/acorex-components-text-box.mjs +10 -10
- package/fesm2022/acorex-components-toast.mjs +10 -10
- package/fesm2022/acorex-components-tooltip.mjs +45 -157
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +38 -103
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/form/index.d.ts +1 -0
- package/form/lib/form.config.d.ts +17 -0
- package/form/lib/form.module.d.ts +0 -1
- package/form/lib/validation-rule.widget.d.ts +1 -0
- package/mixin/lib/base-components.class.d.ts +2 -2
- package/mixin/lib/base-menu-mixin.class.d.ts +5 -5
- package/mixin/lib/button-mixin.class.d.ts +2 -2
- package/mixin/lib/clickable-mixin.class.d.ts +2 -2
- package/mixin/lib/color-look-mixing.class.d.ts +2 -2
- package/mixin/lib/datalist-component.class.d.ts +10 -10
- package/mixin/lib/dropdown-mixin.class.d.ts +2 -2
- package/mixin/lib/interactive-mixin.class.d.ts +4 -4
- package/mixin/lib/mixin.class.d.ts +61 -61
- package/mixin/lib/page-component.class.d.ts +2 -2
- package/mixin/lib/selection-component.class.d.ts +2 -2
- package/mixin/lib/sizable-mixin.class.d.ts +2 -2
- package/mixin/lib/textbox-mixin.class.d.ts +2 -2
- package/mixin/lib/value-mixin.class.d.ts +8 -8
- package/otp/lib/otp.component.d.ts +10 -6
- package/package.json +42 -24
- package/picker/README.md +3 -0
- package/picker/index.d.ts +3 -0
- package/picker/lib/picker-column.directive.d.ts +16 -0
- package/picker/lib/picker.component.d.ts +30 -0
- package/picker/lib/picker.module.d.ts +9 -0
- package/popover/index.d.ts +0 -1
- package/popover/lib/popover.component.d.ts +43 -27
- package/popup/lib/popup.component.d.ts +6 -6
- package/radio/lib/radio.component.d.ts +8 -10
- package/range-slider/lib/range-slider.component.d.ts +12 -12
- package/result/lib/result.component.d.ts +2 -2
- package/scheduler/index.d.ts +1 -0
- package/scheduler/lib/scheduler-month-view.component.d.ts +2 -1
- package/scheduler/lib/scheduler-week-view.component.d.ts +6 -0
- package/scheduler/lib/scheduler.component.d.ts +6 -0
- package/scheduler/lib/scheduler.module.d.ts +7 -6
- package/tabs/lib/tab-item.component.d.ts +7 -38
- package/tabs/lib/tabs.class.d.ts +2 -1
- package/tabs/lib/tabs.component.d.ts +7 -9
- package/tag/lib/tag.component.d.ts +2 -4
- package/tooltip/lib/tooltip.component.d.ts +3 -6
- package/tooltip/lib/tooltip.directive.d.ts +11 -17
- package/uploader/index.d.ts +3 -1
- package/uploader/lib/uploader-drop-zone.component.d.ts +6 -0
- package/uploader/lib/uploader-list.component.d.ts +6 -0
- package/uploader/lib/uploader-overlay.component.d.ts +6 -0
- package/uploader/lib/uploader.module.d.ts +7 -4
- package/color-picker/README.md +0 -3
- package/color-picker/index.d.ts +0 -2
- package/color-picker/lib/color-picker.component.d.ts +0 -191
- package/color-picker/lib/color-picker.module.d.ts +0 -18
- package/common/lib/classes/drawing.class.d.ts +0 -9
- package/common/lib/constant/positions.d.ts +0 -75
- package/date-picker/README.md +0 -3
- package/date-picker/index.d.ts +0 -2
- package/date-picker/lib/datepicker.component.d.ts +0 -40
- package/date-picker/lib/datepicker.module.d.ts +0 -15
- package/esm2022/color-picker/index.mjs +0 -3
- package/esm2022/color-picker/lib/color-picker.component.mjs +0 -116
- package/esm2022/color-picker/lib/color-picker.module.mjs +0 -61
- package/esm2022/common/lib/classes/data.class.mjs +0 -2
- package/esm2022/common/lib/classes/drawing.class.mjs +0 -2
- package/esm2022/common/lib/constant/positions.mjs +0 -75
- package/esm2022/date-picker/acorex-components-date-picker.mjs +0 -5
- package/esm2022/date-picker/index.mjs +0 -3
- package/esm2022/date-picker/lib/datepicker.component.mjs +0 -128
- package/esm2022/date-picker/lib/datepicker.module.mjs +0 -44
- package/esm2022/decorators/lib/clear-button.component.mjs +0 -58
- package/esm2022/decorators/lib/close-button.component.mjs +0 -43
- package/esm2022/decorators/lib/generic-content.component.mjs +0 -17
- package/esm2022/decorators/lib/icon.component.mjs +0 -26
- package/esm2022/popover/lib/dropdown-component.class.mjs +0 -73
- package/esm2022/time-box/acorex-components-time-box.mjs +0 -5
- package/esm2022/time-box/index.mjs +0 -3
- package/esm2022/time-box/lib/time-box.component.mjs +0 -294
- package/esm2022/time-box/lib/time-box.module.mjs +0 -32
- package/esm2022/uploader/lib/uploader.component.mjs +0 -99
- package/fesm2022/acorex-components-color-picker.mjs +0 -178
- package/fesm2022/acorex-components-color-picker.mjs.map +0 -1
- package/fesm2022/acorex-components-date-picker.mjs +0 -173
- package/fesm2022/acorex-components-date-picker.mjs.map +0 -1
- package/fesm2022/acorex-components-time-box.mjs +0 -329
- package/fesm2022/acorex-components-time-box.mjs.map +0 -1
- package/popover/lib/dropdown-component.class.d.ts +0 -17
- package/time-box/README.md +0 -3
- package/time-box/index.d.ts +0 -2
- package/time-box/lib/time-box.component.d.ts +0 -50
- package/time-box/lib/time-box.module.d.ts +0 -11
- package/uploader/lib/uploader.component.d.ts +0 -28
- /package/common/lib/{classes/data.class.d.ts → types/range.d.ts} +0 -0
- /package/decorators/lib/{clear-button.component.d.ts → components/clear-button.component.d.ts} +0 -0
- /package/decorators/lib/{close-button.component.d.ts → components/close-button.component.d.ts} +0 -0
- /package/decorators/lib/{generic-content.component.d.ts → components/generic-content.component.d.ts} +0 -0
- /package/decorators/lib/{icon.component.d.ts → components/icon.component.d.ts} +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-components-picker.mjs","sources":["../../../../libs/components/picker/src/lib/picker-column.directive.ts","../../../../libs/components/picker/src/lib/picker.component.ts","../../../../libs/components/picker/src/lib/picker.component.html","../../../../libs/components/picker/src/lib/picker.module.ts","../../../../libs/components/picker/src/acorex-components-picker.ts"],"sourcesContent":["import { MXValueComponent } from '@acorex/components/common';\nimport { Directive, EventEmitter, Input, Output, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Directive({\n selector: 'ax-picker-column',\n inputs: [\n 'disabled',\n 'readonly',\n 'readonlyChange',\n 'disabledChange'\n ],\n outputs: [\n 'onValueChanged'\n ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXPickerColumnDirective),\n multi: true\n }\n ],\n})\nexport class AXPickerColumnDirective extends MXValueComponent {\n\n @Input()\n valueField = 'id';\n\n @Input()\n textField = 'text';\n\n @Input()\n public title: string;\n @Input()\n public step = 1;\n\n\n @Output()\n itemsChange: EventEmitter<unknown[]> = new EventEmitter<unknown[]>();\n\n private _items: unknown[];\n @Input()\n public get items(): unknown[] {\n return this._items;\n }\n public set items(v: unknown[]) {\n this._items = v;\n this.itemsChange.emit(v);\n }\n\n override internalSetValue(v) {\n if (v == null)\n return v;\n else if (typeof v == 'object') {\n return this.items.find(c => c[this.valueField] == v[this.valueField])\n }\n else {\n return this.items.find(c => c[this.valueField] == v)\n }\n }\n}","import { Component, ViewEncapsulation, ChangeDetectionStrategy, QueryList, ContentChildren, AfterViewInit, OnDestroy, inject, NgZone, AfterContentInit } from '@angular/core';\nimport { MXBaseComponent } from '@acorex/components/common';\nimport { AXPickerColumnDirective } from './picker-column.directive';\nimport { AXDrawingUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-picker',\n templateUrl: './picker.component.html',\n styleUrls: ['./picker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AXUnsubscriber]\n})\nexport class AXPickerComponent extends MXBaseComponent implements AfterContentInit, OnDestroy {\n\n @ContentChildren(AXPickerColumnDirective, { emitDistinctChangesOnly: true })\n protected _columns: QueryList<AXPickerColumnDirective> = {} as QueryList<AXPickerColumnDirective>;\n\n private _itemHeight = this._calcItemheight();\n private _htmlColumns: HTMLDivElement[];\n private _dragging = false;\n private _previousY: number;\n private _currentList: HTMLDivElement;\n\n protected _unsubscriber: AXUnsubscriber = inject(AXUnsubscriber);\n protected _zone: NgZone = inject(NgZone);\n\n\n ngAfterContentInit() {\n this._itemHeight = this._calcItemheight();\n this._columns.changes\n .pipe(this._unsubscriber.takeUntilDestroy)\n .pipe(startWith(undefined))\n .subscribe(c => {\n this.cdr.detectChanges();\n this._bindEvents();\n });\n }\n\n ngOnDestroy() {\n this._removeEvents();\n }\n\n private _calcItemheight(): number {\n const rem = window.getComputedStyle(document.documentElement, null).getPropertyValue('--ax-size-default');\n return AXDrawingUtil.convertRemToPixels(Number(rem?.replace('rem', '') ?? 0));\n }\n\n private _bindEvents(): void {\n this._removeEvents();\n //\n this._htmlColumns = Array.from(this.getHostElement().querySelectorAll<HTMLDivElement>(\".ax-picker-col .ax-content\"));\n this._columns.forEach(c => {\n c.onValueChanged\n .pipe(this._unsubscriber.takeUntilDestroy)\n .subscribe(() => {\n this._detectSelectedItemsByValue();\n });\n });\n\n this._htmlColumns.forEach((col, index) => {\n col['column'] = this._columns.get(index);\n col.addEventListener(\"wheel\", this._handleMouseWeel.bind(this), { passive: false });\n //\n col.addEventListener(\"touchstart\", this._handleTouchStart.bind(this), { passive: false });\n //col.addEventListener(\"mousedown\", this._handleTouchStart.bind(this), { passive: false });\n //\n col.addEventListener('touchmove', this._handleTouchMove.bind(this), { passive: false })\n //col.addEventListener('mousemove', this._handleTouchMove.bind(this), { passive: false })\n //\n col.addEventListener('touchend', this._handleTouchEnd.bind(this), { passive: false })\n //col.addEventListener('mouseup', this._handleTouchMove.bind(this), { passive: false })\n });\n }\n\n private _removeEvents(): void {\n this._htmlColumns?.forEach((col) => {\n col.removeEventListener(\"wheel\", this._handleMouseWeel.bind(this));\n //\n col.removeEventListener(\"touchstart\", this._handleTouchStart.bind(this));\n //col.removeEventListener(\"mousedown\", this._handleTouchStart.bind(this));\n col.removeEventListener('touchmove', this._handleTouchMove.bind(this));\n //col.removeEventListener('mousemove', this._handleTouchMove.bind(this));\n //\n col.removeEventListener('touchend', this._handleTouchEnd.bind(this));\n //col.removeEventListener('mouseup', this._handleTouchEnd.bind(this));\n });\n }\n\n _handleTouchStart(e: MouseEvent | TouchEvent) {\n e.preventDefault();\n e.stopPropagation();\n this._currentList = e.currentTarget as HTMLDivElement;\n this._previousY = e instanceof TouchEvent ? e.touches[0].clientY : e.clientY;\n }\n\n private _handleTouchMove(e: MouseEvent | TouchEvent): void {\n //console.log(\"touchmove\");\n this._dragging = true;\n e.preventDefault();\n e.stopPropagation();\n this._zone.runOutsideAngular(() => {\n if (this._currentList && this._dragging) {\n const clientY = e instanceof TouchEvent ? e.touches[0].clientY : e.clientY;\n const delta = clientY - this._previousY;\n this._previousY = clientY;\n //console.log(delta);\n if (Math.abs(delta) > 1)\n this._moveByDelta(this._currentList, -delta);\n }\n });\n }\n\n private _handleTouchEnd(e: MouseEvent | TouchEvent): void {\n // simulate click\n const targetelement = (e.target as HTMLElement);\n if (!this._dragging && targetelement.tagName == \"LI\") {\n targetelement.click();\n }\n this._dragging = false;\n }\n\n private _handleMouseWeel(e: WheelEvent): void {\n e.preventDefault();\n e.stopPropagation();\n this._moveByDelta(e.currentTarget as HTMLDivElement, e.deltaY);\n }\n\n private _moveByDelta(col: HTMLDivElement, deltaY: number) {\n const column = col['column'] as AXPickerColumnDirective;\n if (column.readonly || column.disabled)\n return;\n let index = column.items.indexOf(column.value);\n console.log(deltaY)\n index = (deltaY < 0) ? (index - column.step) : (index + column.step);\n if (index < 0)\n index = 0;\n if (index >= column.items.length)\n index = column.items.length - 1;\n column.commitValue(column.items[index], true);\n }\n\n protected _handleItemClick(column: AXPickerColumnDirective, item: any) {\n if (column.readonly || column.disabled)\n return;\n column.commitValue(item, true);\n }\n\n private _detectSelectedItemsByValue(): void {\n this._zone.runOutsideAngular(() => {\n this._htmlColumns.forEach(col => {\n const column = col['column'] as AXPickerColumnDirective;\n const index = column.items.indexOf(column.value);\n col.querySelector(\"ul\").style.transform = `translateY(${-index * this._itemHeight}px)`\n this.cdr.markForCheck();\n });\n });\n }\n\n public refresh() {\n this._detectSelectedItemsByValue();\n }\n}\n","<div class=\"ax-header\">\n <div class=\"ax-picker-col\" *ngFor=\"let col of _columns\">\n <div class=\"ax-header\">\n {{col.title}}\n </div>\n </div>\n</div>\n<div class=\"ax-content\">\n <div class=\"ax-picker-window\"></div>\n <div class=\"ax-picker-col\" *ngFor=\"let col of _columns\" [class.ax-state-disabled]=\"col.disabled\"\n [class.ax-state-readonly]=\"col.readonly\">\n <div class=\"ax-content\">\n <ul>\n <li *ngFor=\"let item of col.items\" (click)=\"_handleItemClick(col,item)\"\n [class.ax-state-active]=\"col.value && col.value[col.valueField]===item[col.valueField]\"\n [class.ax-state-disabled]=\"col.disabled\" [class.ax-state-readonly]=\"col.readonly\">\n {{item[col.textField]}}\n </li>\n </ul>\n </div>\n </div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXPickerComponent } from './picker.component';\nimport { AXPickerColumnDirective } from './picker-column.directive';\n\nconst COMPONENT = [AXPickerComponent, AXPickerColumnDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXPickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -1,121 +1,25 @@
|
|
1
|
-
import {
|
2
|
-
import * as i0 from '@angular/core';
|
3
|
-
import { EventEmitter, Injectable, inject, ElementRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ViewChild, Output, NgModule } from '@angular/core';
|
4
|
-
import { Overlay } from '@angular/cdk/overlay';
|
5
|
-
import { TemplatePortal } from '@angular/cdk/portal';
|
6
|
-
import { some, includes } from 'lodash-es';
|
7
|
-
import { fromEvent, throttleTime } from 'rxjs';
|
1
|
+
import { MXBaseComponent, convertToPlacement, AXFocusableComponent } from '@acorex/components/common';
|
8
2
|
import { AXPlatform } from '@acorex/core/platform';
|
9
|
-
import {
|
3
|
+
import { Overlay } from '@angular/cdk/overlay';
|
4
|
+
import { TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
|
5
|
+
import * as i0 from '@angular/core';
|
6
|
+
import { inject, EventEmitter, ElementRef, TemplateRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ViewChild, Output, NgModule } from '@angular/core';
|
7
|
+
import { fromEvent, delay } from 'rxjs';
|
10
8
|
import { CommonModule } from '@angular/common';
|
11
9
|
|
12
|
-
class MXDropDownComponent extends MXInteractiveComponent {
|
13
|
-
constructor() {
|
14
|
-
super(...arguments);
|
15
|
-
this.onOpened = new EventEmitter();
|
16
|
-
this.onClosed = new EventEmitter();
|
17
|
-
this.popOverPositions = [];
|
18
|
-
}
|
19
|
-
initPopOverPositions() {
|
20
|
-
const offset = Number(getComputedStyle(document.documentElement).getPropertyValue('--ax-base-size').replace('px', ''));
|
21
|
-
const list = [
|
22
|
-
{
|
23
|
-
originX: 'start',
|
24
|
-
originY: 'bottom',
|
25
|
-
overlayX: 'start',
|
26
|
-
overlayY: 'top',
|
27
|
-
offsetY: offset,
|
28
|
-
},
|
29
|
-
{
|
30
|
-
originX: 'start',
|
31
|
-
originY: 'top',
|
32
|
-
overlayX: 'start',
|
33
|
-
overlayY: 'bottom',
|
34
|
-
offsetY: -offset,
|
35
|
-
},
|
36
|
-
{
|
37
|
-
originX: 'end',
|
38
|
-
originY: 'bottom',
|
39
|
-
overlayX: 'end',
|
40
|
-
overlayY: 'top',
|
41
|
-
offsetY: offset,
|
42
|
-
},
|
43
|
-
{
|
44
|
-
originX: 'end',
|
45
|
-
originY: 'top',
|
46
|
-
overlayX: 'end',
|
47
|
-
overlayY: 'bottom',
|
48
|
-
offsetY: -offset,
|
49
|
-
},
|
50
|
-
];
|
51
|
-
this.popOverPositions.push(...list);
|
52
|
-
}
|
53
|
-
toggle() {
|
54
|
-
if (this.disabled !== true) {
|
55
|
-
this.popover.toggle();
|
56
|
-
}
|
57
|
-
}
|
58
|
-
close() {
|
59
|
-
if (!this.isOpen || this.disabled) {
|
60
|
-
return;
|
61
|
-
}
|
62
|
-
this.popover.close();
|
63
|
-
this?.focus();
|
64
|
-
}
|
65
|
-
open() {
|
66
|
-
if (this.isOpen || this.disabled) {
|
67
|
-
return;
|
68
|
-
}
|
69
|
-
this.popover.open();
|
70
|
-
this.popover.focus();
|
71
|
-
}
|
72
|
-
get isOpen() {
|
73
|
-
return this.popover?.isOpen;
|
74
|
-
}
|
75
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MXDropDownComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
76
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MXDropDownComponent }); }
|
77
|
-
}
|
78
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImport: i0, type: MXDropDownComponent, decorators: [{
|
79
|
-
type: Injectable
|
80
|
-
}] });
|
81
|
-
|
82
10
|
class AXPopoverComponent extends MXBaseComponent {
|
83
11
|
constructor() {
|
84
12
|
super(...arguments);
|
85
13
|
this._platform = inject(AXPlatform);
|
86
14
|
this._overlay = inject(Overlay);
|
87
|
-
this.
|
88
|
-
this.
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
},
|
96
|
-
{
|
97
|
-
originX: 'start',
|
98
|
-
originY: 'top',
|
99
|
-
overlayX: 'start',
|
100
|
-
overlayY: 'bottom',
|
101
|
-
offsetY: -this.offset,
|
102
|
-
},
|
103
|
-
{
|
104
|
-
originX: 'end',
|
105
|
-
originY: 'bottom',
|
106
|
-
overlayX: 'end',
|
107
|
-
overlayY: 'top',
|
108
|
-
offsetY: this.offset,
|
109
|
-
},
|
110
|
-
{
|
111
|
-
originX: 'end',
|
112
|
-
originY: 'top',
|
113
|
-
overlayX: 'end',
|
114
|
-
overlayY: 'bottom',
|
115
|
-
offsetY: -this.offset,
|
116
|
-
},
|
117
|
-
];
|
118
|
-
this._subs = [];
|
15
|
+
this._isMouseOverButton = false;
|
16
|
+
this._isMouseOverTooltip = false;
|
17
|
+
this._targetEvents = {};
|
18
|
+
this._overlayEvents = {};
|
19
|
+
//
|
20
|
+
this._defautPlacements = convertToPlacement('bottom-start');
|
21
|
+
this._placements = [...this._defautPlacements];
|
22
|
+
this._placement = this._placements;
|
119
23
|
//
|
120
24
|
this._openOn = 'toggle';
|
121
25
|
//
|
@@ -124,34 +28,75 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
124
28
|
this.hasBackdrop = false;
|
125
29
|
this.adaptivityEnabled = false;
|
126
30
|
//
|
127
|
-
this._mousePos = { x: 0, y: 0 };
|
128
|
-
this._isScrollAttached = false;
|
129
|
-
//
|
130
31
|
this.onOpened = new EventEmitter();
|
131
32
|
this.onClosed = new EventEmitter();
|
132
33
|
}
|
34
|
+
get offsetX() {
|
35
|
+
return this._offsetX;
|
36
|
+
}
|
37
|
+
set offsetX(v) {
|
38
|
+
this.setOption({
|
39
|
+
name: 'offsetX',
|
40
|
+
value: v,
|
41
|
+
afterCallback: () => {
|
42
|
+
this.updateOffset();
|
43
|
+
},
|
44
|
+
});
|
45
|
+
}
|
46
|
+
get offsetY() {
|
47
|
+
return this._offsetY;
|
48
|
+
}
|
49
|
+
set offsetY(v) {
|
50
|
+
this.setOption({
|
51
|
+
name: 'offsetY',
|
52
|
+
value: v,
|
53
|
+
afterCallback: () => {
|
54
|
+
this.updateOffset();
|
55
|
+
},
|
56
|
+
});
|
57
|
+
}
|
133
58
|
get target() {
|
134
59
|
return this._target;
|
135
60
|
}
|
136
61
|
set target(v) {
|
62
|
+
this.removeTargetEvents();
|
137
63
|
if (v instanceof HTMLElement)
|
138
64
|
this._target = v;
|
139
65
|
else if (v instanceof ElementRef)
|
140
66
|
this._target = v.nativeElement;
|
141
67
|
else if (typeof v.getHostElement == 'function')
|
142
68
|
this._target = v.getHostElement();
|
69
|
+
//
|
70
|
+
this.bindTargetEvents();
|
71
|
+
}
|
72
|
+
get placement() {
|
73
|
+
return this._placement;
|
74
|
+
}
|
75
|
+
set placement(v) {
|
76
|
+
this.setOption({
|
77
|
+
name: 'placement',
|
78
|
+
value: v,
|
79
|
+
afterCallback: (o, n) => {
|
80
|
+
const converted = convertToPlacement(n);
|
81
|
+
this._placements = converted.length ? converted : this._defautPlacements;
|
82
|
+
this.updateOffset();
|
83
|
+
this.updatePositionStrategy();
|
84
|
+
},
|
85
|
+
});
|
86
|
+
}
|
87
|
+
get componentRef() {
|
88
|
+
return this._componentRef;
|
143
89
|
}
|
144
90
|
get openOn() {
|
145
91
|
return this._openOn;
|
146
92
|
}
|
147
93
|
set openOn(v) {
|
148
|
-
debugger;
|
149
94
|
this.setOption({
|
150
95
|
name: 'openOn',
|
151
96
|
value: v,
|
152
97
|
afterCallback: () => {
|
153
|
-
this.
|
154
|
-
}
|
98
|
+
this.bindTargetEvents();
|
99
|
+
},
|
155
100
|
});
|
156
101
|
}
|
157
102
|
get closeOn() {
|
@@ -162,8 +107,8 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
162
107
|
name: 'closeOn',
|
163
108
|
value: v,
|
164
109
|
afterCallback: () => {
|
165
|
-
this.
|
166
|
-
}
|
110
|
+
this.bindTargetEvents();
|
111
|
+
},
|
167
112
|
});
|
168
113
|
}
|
169
114
|
_emitOnOpenedEvent() {
|
@@ -179,49 +124,90 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
179
124
|
});
|
180
125
|
}
|
181
126
|
//
|
182
|
-
|
183
|
-
this.
|
127
|
+
_handleMouseEnter(e) {
|
128
|
+
this._isMouseOverTooltip = true;
|
129
|
+
}
|
130
|
+
_handleMouseLeave(e) {
|
131
|
+
this._isMouseOverTooltip = false;
|
132
|
+
setTimeout(() => {
|
133
|
+
if (!this._isMouseOverButton && this.closeOn == 'leave') {
|
134
|
+
this.close();
|
135
|
+
}
|
136
|
+
}, 250);
|
137
|
+
}
|
138
|
+
removeTargetEvents() {
|
139
|
+
Object.entries(this._targetEvents).forEach((e) => {
|
140
|
+
e[1].unsubscribe();
|
141
|
+
});
|
142
|
+
}
|
143
|
+
bindTargetEvents() {
|
144
|
+
this.removeTargetEvents();
|
145
|
+
if (!this._target)
|
146
|
+
return;
|
147
|
+
const targetMouseEnter$ = fromEvent(this._target, 'mouseenter');
|
148
|
+
const targetMouseLeave$ = fromEvent(this._target, 'mouseleave');
|
149
|
+
if (this.openOn == 'hover') {
|
150
|
+
this._targetEvents.mouseenter = targetMouseEnter$.pipe(delay(200)).subscribe(() => {
|
151
|
+
this._isMouseOverButton = true;
|
152
|
+
this.open();
|
153
|
+
});
|
154
|
+
}
|
155
|
+
if (this.closeOn == 'leave') {
|
156
|
+
this._targetEvents.mouseleave = targetMouseLeave$.pipe(delay(200)).subscribe(() => {
|
157
|
+
this._isMouseOverButton = false;
|
158
|
+
if (!this._isMouseOverTooltip) {
|
159
|
+
this.close();
|
160
|
+
}
|
161
|
+
});
|
162
|
+
}
|
163
|
+
if (this.openOn === 'click' || this.openOn === 'toggle') {
|
164
|
+
const click$ = fromEvent(this._target, 'click');
|
165
|
+
this._targetEvents.click = click$.subscribe((e) => {
|
166
|
+
this.openOn == 'toggle' ? this.toggle() : this.open();
|
167
|
+
});
|
168
|
+
}
|
184
169
|
}
|
185
170
|
//
|
186
|
-
|
187
|
-
this.
|
188
|
-
|
189
|
-
if (this.openOn
|
190
|
-
|
191
|
-
this._addSub(mouseEnter$.subscribe(e => {
|
192
|
-
const point = { x: e.clientX, y: e.clientY };
|
193
|
-
if (AXDrawingUtil.isInElementBound(point, this._target))
|
194
|
-
this.open();
|
195
|
-
}));
|
171
|
+
bindOverlayEvents() {
|
172
|
+
this.removeOverlayEvents();
|
173
|
+
this._overlayEvents.attach = this._overlayRef.attachments().subscribe(() => {
|
174
|
+
if (this.openOn == 'hover') {
|
175
|
+
this._overlayRef.overlayElement.addEventListener('mouseenter', this._handleMouseEnter.bind(this));
|
196
176
|
}
|
197
|
-
if (this.closeOn
|
198
|
-
|
199
|
-
this._addSub(mouseMove$.pipe(throttleTime(50)).subscribe(e => {
|
200
|
-
debugger;
|
201
|
-
this._mousePos.x = e.clientX;
|
202
|
-
this._mousePos.y = e.clientY;
|
203
|
-
if (this.isOpen) {
|
204
|
-
setTimeout(() => {
|
205
|
-
if (some([this._target, this._overlayRef.overlayElement], el => includes(document.elementsFromPoint(this._mousePos.x, this._mousePos.y), el)))
|
206
|
-
this.close();
|
207
|
-
}, 100);
|
208
|
-
}
|
209
|
-
}));
|
177
|
+
if (this.closeOn == 'leave') {
|
178
|
+
this._overlayRef.overlayElement.addEventListener('mouseleave', this._handleMouseLeave.bind(this));
|
210
179
|
}
|
211
180
|
//
|
212
|
-
|
213
|
-
const
|
214
|
-
this.
|
215
|
-
this.
|
216
|
-
|
217
|
-
|
218
|
-
|
181
|
+
this._overlayEvents.outside = this._overlayRef._outsidePointerEvents.subscribe((e) => {
|
182
|
+
const el = e.target;
|
183
|
+
if (this.closeOn == 'clickout' &&
|
184
|
+
this.isOpen &&
|
185
|
+
!this._target.contains(el) &&
|
186
|
+
!this._overlayRef?.overlayElement?.contains(el)) {
|
187
|
+
this.close();
|
188
|
+
}
|
189
|
+
});
|
190
|
+
//
|
191
|
+
this._overlayEvents.scroll = this._platform.scroll.subscribe((c) => {
|
192
|
+
const el = c.nativeEvent.target;
|
193
|
+
if (this.isOpen &&
|
194
|
+
el?.closest &&
|
195
|
+
!el.closest('.ax-overlay-pane') &&
|
196
|
+
!this._target.contains(el) &&
|
197
|
+
!this._overlayRef?.overlayElement?.contains(el)) {
|
198
|
+
this.close();
|
199
|
+
}
|
200
|
+
});
|
201
|
+
});
|
219
202
|
}
|
220
|
-
|
221
|
-
|
222
|
-
this.
|
223
|
-
this.
|
203
|
+
removeOverlayEvents() {
|
204
|
+
this._overlayRef?.overlayElement.removeEventListener('mouseenter', this._handleMouseEnter.bind(this));
|
205
|
+
this._overlayRef?.overlayElement.addEventListener('mouseleave', this._handleMouseLeave.bind(this));
|
206
|
+
Object.entries(this._overlayEvents).forEach((e) => {
|
207
|
+
e[1].unsubscribe();
|
208
|
+
});
|
224
209
|
}
|
210
|
+
//
|
225
211
|
toggle() {
|
226
212
|
this.isOpen ? this.close() : this.open();
|
227
213
|
}
|
@@ -231,108 +217,108 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
231
217
|
return;
|
232
218
|
}
|
233
219
|
this._overlayRef?.detach();
|
220
|
+
this.restoreFocus();
|
234
221
|
this._emitOnClosedEvent();
|
235
|
-
//
|
236
|
-
if (this._lastActiveElement?.focus) {
|
237
|
-
this._lastActiveElement.focus();
|
238
|
-
}
|
239
|
-
}
|
240
|
-
dispose() {
|
241
|
-
this._overlayRef?.detach();
|
242
|
-
//this._overlayRef?.dispose();
|
243
|
-
this._subs.forEach(s => {
|
244
|
-
s?.unsubscribe();
|
245
|
-
});
|
246
222
|
}
|
247
223
|
//
|
248
224
|
open() {
|
249
225
|
if (this.isOpen) {
|
250
226
|
return;
|
251
227
|
}
|
252
|
-
this.
|
253
|
-
this.
|
254
|
-
this._overlayRef?.attach(this._templatePortal);
|
228
|
+
this.saveFocus();
|
229
|
+
this.openOverlayInternal();
|
255
230
|
this._emitOnOpenedEvent();
|
256
231
|
}
|
257
|
-
|
232
|
+
saveFocus() {
|
233
|
+
this._lastActiveElement = document.activeElement;
|
234
|
+
}
|
235
|
+
restoreFocus() {
|
236
|
+
if (this._lastActiveElement?.focus) {
|
237
|
+
this._lastActiveElement.focus();
|
238
|
+
}
|
239
|
+
}
|
240
|
+
openOverlayInternal() {
|
258
241
|
const targetRef = this._target;
|
259
242
|
if (!targetRef)
|
260
243
|
return;
|
261
|
-
if (!this._overlayRef) {
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
this.
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
244
|
+
//if (!this._overlayRef) {
|
245
|
+
if (this._platform.is('SM') && this.adaptivityEnabled) {
|
246
|
+
this._overlayRef = this._overlay.create({
|
247
|
+
positionStrategy: this._overlay.position().global().bottom().centerHorizontally(),
|
248
|
+
disposeOnNavigation: true,
|
249
|
+
scrollStrategy: this._overlay.scrollStrategies.block(),
|
250
|
+
panelClass: ['ax-actionsheet-base', 'ax-animate-slideInUp', 'ax-animate-faster'],
|
251
|
+
hasBackdrop: true,
|
252
|
+
width: '100%',
|
253
|
+
});
|
254
|
+
}
|
255
|
+
else {
|
256
|
+
this._overlayRef = this._overlay.create({
|
257
|
+
positionStrategy: this._overlay
|
258
|
+
.position()
|
259
|
+
.flexibleConnectedTo(targetRef)
|
260
|
+
.withPositions(this._placements)
|
261
|
+
.withPush(false),
|
262
|
+
scrollStrategy: this._overlay.scrollStrategies.close(),
|
263
|
+
disposeOnNavigation: true,
|
264
|
+
panelClass: ['ax-animate-fadeIn', 'ax-animate-faster'],
|
265
|
+
maxHeight: 'unset',
|
266
|
+
hasBackdrop: this.hasBackdrop,
|
267
|
+
backdropClass: [this.backdropClass || 'cdk-overlay-transparent-backdrop'],
|
268
|
+
});
|
269
|
+
}
|
270
|
+
//
|
271
|
+
this.bindOverlayEvents();
|
272
|
+
//}
|
273
|
+
//
|
274
|
+
if (this.content instanceof TemplateRef) {
|
275
|
+
this._portal = new TemplatePortal(this.content, this.getViewContainer(), {
|
276
|
+
$implicit: this.context,
|
277
|
+
ref: this,
|
278
|
+
});
|
279
|
+
this._overlayRef?.attach(this._portal);
|
291
280
|
}
|
292
|
-
if (
|
293
|
-
this.
|
281
|
+
else if (typeof this.content === 'function') {
|
282
|
+
this._portal = new ComponentPortal(this.content);
|
283
|
+
this._componentRef = this._overlayRef?.attach(this._portal);
|
284
|
+
Object.assign(this._componentRef.instance, this.context);
|
294
285
|
}
|
286
|
+
else {
|
287
|
+
this._portal = new TemplatePortal(this._baseTemplate, this.getViewContainer(), {
|
288
|
+
$implicit: this.context,
|
289
|
+
ref: this,
|
290
|
+
});
|
291
|
+
this._overlayRef?.attach(this._portal);
|
292
|
+
}
|
293
|
+
}
|
294
|
+
get isOpen() {
|
295
|
+
return this._overlayRef ? this._overlayRef.hasAttached() : false;
|
295
296
|
}
|
296
|
-
|
297
|
-
|
298
|
-
|
297
|
+
updatePositionStrategy() {
|
298
|
+
const targetRef = this._target;
|
299
|
+
if (!targetRef)
|
300
|
+
return;
|
301
|
+
let strategy;
|
302
|
+
if (this._platform.is('SM') && this.adaptivityEnabled) {
|
303
|
+
strategy = this._overlay.position().global().bottom().centerHorizontally();
|
304
|
+
}
|
305
|
+
else {
|
306
|
+
strategy = this._overlay
|
299
307
|
.position()
|
300
308
|
.flexibleConnectedTo(targetRef)
|
301
|
-
.withPositions(
|
302
|
-
.withPush(false)
|
303
|
-
|
304
|
-
|
305
|
-
panelClass: ['ax-animate-fadeIn', 'ax-animate-faster'],
|
306
|
-
maxHeight: 'unset',
|
307
|
-
hasBackdrop: this.hasBackdrop,
|
308
|
-
backdropClass: [this.backdropClass || 'cdk-overlay-transparent-backdrop'],
|
309
|
-
});
|
309
|
+
.withPositions(this._placements)
|
310
|
+
.withPush(false);
|
311
|
+
}
|
312
|
+
this._overlayRef?.updatePositionStrategy(strategy);
|
310
313
|
}
|
311
|
-
|
312
|
-
this.
|
313
|
-
|
314
|
-
.
|
315
|
-
|
316
|
-
.
|
317
|
-
{
|
318
|
-
originX: 'center',
|
319
|
-
originY: 'bottom',
|
320
|
-
overlayX: 'center',
|
321
|
-
overlayY: 'bottom',
|
322
|
-
},
|
323
|
-
]),
|
324
|
-
disposeOnNavigation: true,
|
325
|
-
panelClass: ['ax-animate-slideInUp', 'ax-animate-faster'],
|
326
|
-
hasBackdrop: true,
|
327
|
-
width: '100%',
|
314
|
+
updateOffset() {
|
315
|
+
this._placements?.forEach((p) => {
|
316
|
+
if (this.offsetY != null)
|
317
|
+
p.offsetY = this.offsetY;
|
318
|
+
if (this.offsetX != null)
|
319
|
+
p.offsetX = this.offsetX;
|
328
320
|
});
|
329
321
|
}
|
330
|
-
get isOpen() {
|
331
|
-
return this._overlayRef ? this._overlayRef.hasAttached() : false;
|
332
|
-
}
|
333
|
-
_addSub(sub) {
|
334
|
-
this._subs.push(sub);
|
335
|
-
}
|
336
322
|
updatePosition() {
|
337
323
|
this._overlayRef?.updatePosition();
|
338
324
|
this.focus();
|
@@ -340,23 +326,32 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
340
326
|
focus() {
|
341
327
|
//TODO: need this??
|
342
328
|
}
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
329
|
+
//
|
330
|
+
ngOnDestroy() {
|
331
|
+
this.removeTargetEvents();
|
332
|
+
this.removeOverlayEvents();
|
333
|
+
this._overlayRef?.detach();
|
334
|
+
this._overlayRef?.dispose();
|
335
|
+
}
|
336
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
337
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXPopoverComponent, selector: "ax-popover", inputs: { offsetX: "offsetX", offsetY: "offsetY", target: "target", placement: "placement", content: "content", openOn: "openOn", closeOn: "closeOn", hasBackdrop: "hasBackdrop", backdropClass: "backdropClass", adaptivityEnabled: "adaptivityEnabled" }, outputs: { onOpened: "onOpened", onClosed: "onClosed" }, providers: [{ provide: AXFocusableComponent, useExisting: AXPopoverComponent }], viewQueries: [{ propertyName: "_baseTemplate", first: true, predicate: ["baseTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #baseTemplate>\n <ng-content></ng-content>\n</ng-template>", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
347
338
|
}
|
348
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.
|
339
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverComponent, decorators: [{
|
349
340
|
type: Component,
|
350
|
-
args: [{ selector: 'ax-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
351
|
-
|
352
|
-
], template: "<ng-template #baseTemplate>\n <ng-content></ng-content>\n</ng-template>" }]
|
353
|
-
}], propDecorators: { target: [{
|
341
|
+
args: [{ selector: 'ax-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: AXFocusableComponent, useExisting: AXPopoverComponent }], template: "<ng-template #baseTemplate>\n <ng-content></ng-content>\n</ng-template>" }]
|
342
|
+
}], propDecorators: { offsetX: [{
|
354
343
|
type: Input
|
355
|
-
}],
|
344
|
+
}], offsetY: [{
|
345
|
+
type: Input
|
346
|
+
}], target: [{
|
347
|
+
type: Input
|
348
|
+
}], placement: [{
|
356
349
|
type: Input
|
357
350
|
}], _baseTemplate: [{
|
358
351
|
type: ViewChild,
|
359
352
|
args: ['baseTemplate']
|
353
|
+
}], content: [{
|
354
|
+
type: Input
|
360
355
|
}], openOn: [{
|
361
356
|
type: Input
|
362
357
|
}], closeOn: [{
|
@@ -374,11 +369,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
|
|
374
369
|
}] } });
|
375
370
|
|
376
371
|
class AXPopoverModule {
|
377
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.
|
378
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.
|
379
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.
|
372
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
373
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverModule, declarations: [AXPopoverComponent], imports: [CommonModule], exports: [AXPopoverComponent] }); }
|
374
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverModule, imports: [CommonModule] }); }
|
380
375
|
}
|
381
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.
|
376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXPopoverModule, decorators: [{
|
382
377
|
type: NgModule,
|
383
378
|
args: [{
|
384
379
|
declarations: [AXPopoverComponent],
|
@@ -392,5 +387,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.8", ngImpor
|
|
392
387
|
* Generated bundle index. Do not edit.
|
393
388
|
*/
|
394
389
|
|
395
|
-
export { AXPopoverComponent, AXPopoverModule
|
390
|
+
export { AXPopoverComponent, AXPopoverModule };
|
396
391
|
//# sourceMappingURL=acorex-components-popover.mjs.map
|