@acorex/components 7.2.7 → 7.3.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/action-sheet/index.d.ts +1 -1
- package/action-sheet/lib/action-sheet.class.d.ts +31 -0
- package/action-sheet/lib/action-sheet.component.d.ts +12 -13
- package/action-sheet/lib/action-sheet.module.d.ts +2 -1
- package/action-sheet/lib/action-sheet.service.d.ts +4 -8
- package/alert/lib/alert.component.d.ts +12 -11
- package/button/lib/button-group.component.d.ts +6 -6
- package/button/lib/button-item.class.d.ts +6 -2
- package/button/lib/button-item.component.d.ts +6 -6
- package/button/lib/button.component.d.ts +5 -3
- package/calendar/lib/calendar.component.d.ts +2 -1
- package/check-box/README.md +3 -0
- package/check-box/index.d.ts +2 -0
- package/check-box/lib/check-box.component.d.ts +14 -0
- package/{checkbox/lib/checkbox.module.d.ts → check-box/lib/check-box.module.d.ts} +1 -1
- package/chips/lib/chips.component.d.ts +2 -2
- package/color-palette/lib/color-palette-input.component.d.ts +10 -7
- package/color-palette/lib/color-palette-picker.component.d.ts +10 -5
- package/color-palette/lib/color-palette-preview.component.d.ts +8 -4
- package/color-palette/lib/color-palette-swatches.component.d.ts +9 -6
- package/color-palette/lib/color-palette.class.d.ts +12 -6
- package/color-palette/lib/color-palette.component.d.ts +3 -15
- package/color-palette/lib/color-palette.module.d.ts +9 -8
- package/color-picker/lib/color-picker.component.d.ts +17 -24
- package/color-picker/lib/color-picker.module.d.ts +1 -1
- package/common/index.d.ts +3 -1
- package/common/lib/classes/components.class.d.ts +12 -2
- package/common/lib/classes/datalist.class.d.ts +11 -0
- package/common/lib/common.module.d.ts +3 -4
- package/common/lib/components/base-component.class.d.ts +13 -5
- package/common/lib/components/input-base-value-component.class.d.ts +27 -0
- package/common/lib/components/interactive-component.class.d.ts +7 -0
- package/common/lib/components/value-component.class.d.ts +22 -8
- package/common/lib/directives/auto-focus.directive.d.ts +6 -5
- package/common/lib/directives/delayed-value-changed.directive.d.ts +17 -0
- package/common/lib/services/dom.service.d.ts +6 -0
- package/data-pager/lib/data-pager-base.component.d.ts +18 -13
- package/data-pager/lib/data-pager-info.component.d.ts +3 -9
- package/data-pager/lib/data-pager-input-selector.component.d.ts +5 -9
- package/data-pager/lib/data-pager-next-buttons.components.d.ts +2 -8
- package/data-pager/lib/data-pager-numeric-selector.component.d.ts +2 -7
- package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +2 -6
- package/data-pager/lib/data-pager-prev-buttons.component.d.ts +2 -7
- package/data-pager/lib/data-pager.component.d.ts +17 -18
- package/data-pager/lib/data-pager.module.d.ts +6 -5
- package/data-table/index.d.ts +0 -1
- package/data-table/lib/data-column.directive.d.ts +3 -8
- package/data-table/lib/data-table.component.d.ts +6 -7
- package/data-table/lib/data-table.module.d.ts +6 -7
- package/date-picker/lib/datepicker.component.d.ts +7 -6
- package/date-picker/lib/datepicker.module.d.ts +1 -1
- package/decorators/index.d.ts +2 -12
- package/decorators/lib/clear-button.component.d.ts +13 -0
- package/decorators/lib/close-button.component.d.ts +5 -8
- package/decorators/lib/decorators.module.d.ts +6 -15
- package/decorators/lib/generic-content.component.d.ts +6 -0
- package/decorators/lib/icon.component.d.ts +2 -4
- package/dialog/lib/dialog.class.d.ts +11 -3
- package/dialog/lib/dialog.component.d.ts +15 -11
- package/dialog/lib/dialog.module.d.ts +4 -3
- package/dialog/lib/dialog.service.d.ts +4 -12
- package/drawer/lib/drawer-container.component.d.ts +2 -5
- package/drawer/lib/drawer.component.d.ts +6 -7
- package/esm2022/acorex-components.mjs +1 -1
- package/esm2022/action-sheet/index.mjs +2 -2
- package/esm2022/action-sheet/lib/action-sheet.class.mjs +2 -0
- package/esm2022/action-sheet/lib/action-sheet.component.mjs +50 -38
- package/esm2022/action-sheet/lib/action-sheet.module.mjs +11 -7
- package/esm2022/action-sheet/lib/action-sheet.service.mjs +32 -72
- package/esm2022/alert/lib/alert.component.mjs +19 -20
- package/esm2022/alert/lib/alert.module.mjs +7 -7
- 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 +7 -7
- 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 +3 -3
- package/esm2022/button/lib/button-item.class.mjs +1 -1
- package/esm2022/button/lib/button-item.component.mjs +3 -3
- package/esm2022/button/lib/button.component.mjs +34 -17
- package/esm2022/button/lib/button.module.mjs +4 -4
- package/esm2022/calendar/lib/calendar-range.component.mjs +5 -5
- package/esm2022/calendar/lib/calendar.class.mjs +3 -3
- package/esm2022/calendar/lib/calendar.component.mjs +18 -15
- package/esm2022/calendar/lib/calendar.module.mjs +4 -4
- package/esm2022/check-box/acorex-components-check-box.mjs +5 -0
- package/esm2022/check-box/index.mjs +3 -0
- package/esm2022/check-box/lib/check-box.component.mjs +76 -0
- package/esm2022/check-box/lib/check-box.module.mjs +21 -0
- package/esm2022/chips/lib/chips.component.mjs +7 -6
- 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-palette/lib/color-palette-input.component.mjs +64 -73
- package/esm2022/color-palette/lib/color-palette-picker.component.mjs +63 -58
- package/esm2022/color-palette/lib/color-palette-preview.component.mjs +30 -25
- package/esm2022/color-palette/lib/color-palette-swatches.component.mjs +32 -246
- package/esm2022/color-palette/lib/color-palette.class.mjs +229 -8
- package/esm2022/color-palette/lib/color-palette.component.mjs +32 -47
- package/esm2022/color-palette/lib/color-palette.module.mjs +10 -7
- package/esm2022/color-picker/lib/color-picker.component.mjs +12 -6
- package/esm2022/color-picker/lib/color-picker.module.mjs +6 -6
- package/esm2022/common/index.mjs +4 -2
- package/esm2022/common/lib/classes/components.class.mjs +26 -19
- package/esm2022/common/lib/classes/datalist.class.mjs +3 -0
- package/esm2022/common/lib/common.module.mjs +5 -10
- package/esm2022/common/lib/components/base-component.class.mjs +26 -13
- package/esm2022/common/lib/components/input-base-value-component.class.mjs +47 -0
- package/esm2022/common/lib/components/interactive-component.class.mjs +31 -4
- package/esm2022/common/lib/components/value-component.class.mjs +57 -33
- package/esm2022/common/lib/directives/auto-focus.directive.mjs +18 -11
- package/esm2022/common/lib/directives/delayed-value-changed.directive.mjs +49 -0
- 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/custom-cdk-overlay.service.mjs +6 -6
- package/esm2022/common/lib/services/dom.service.mjs +16 -0
- package/esm2022/common/lib/services/hotkey.service.mjs +3 -3
- package/esm2022/common/lib/services/overlay.service.mjs +3 -3
- package/esm2022/context-menu/lib/context-menu.component.mjs +5 -5
- package/esm2022/context-menu/lib/context-menu.module.mjs +4 -4
- package/esm2022/data-pager/lib/data-pager-base.component.mjs +35 -21
- package/esm2022/data-pager/lib/data-pager-info.component.mjs +13 -26
- package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +27 -31
- package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +19 -33
- package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +31 -38
- package/esm2022/data-pager/lib/data-pager-pagesize-dropdown.component.mjs +22 -31
- package/esm2022/data-pager/lib/data-pager-prev-buttons.component.mjs +19 -29
- package/esm2022/data-pager/lib/data-pager.component.mjs +66 -38
- package/esm2022/data-pager/lib/data-pager.module.mjs +8 -7
- package/esm2022/data-table/index.mjs +1 -2
- package/esm2022/data-table/lib/data-column.directive.mjs +7 -22
- package/esm2022/data-table/lib/data-table.component.mjs +30 -30
- package/esm2022/data-table/lib/data-table.module.mjs +6 -7
- package/esm2022/date-picker/lib/datepicker.component.mjs +19 -16
- package/esm2022/date-picker/lib/datepicker.module.mjs +6 -6
- package/esm2022/decorators/index.mjs +3 -13
- package/esm2022/decorators/lib/clear-button.component.mjs +58 -0
- package/esm2022/decorators/lib/close-button.component.mjs +16 -20
- package/esm2022/decorators/lib/decorators.module.mjs +13 -49
- package/esm2022/decorators/lib/generic-content.component.mjs +17 -0
- package/esm2022/decorators/lib/icon.component.mjs +8 -11
- package/esm2022/dialog/lib/dialog.class.mjs +1 -1
- package/esm2022/dialog/lib/dialog.component.mjs +41 -23
- package/esm2022/dialog/lib/dialog.module.mjs +10 -8
- package/esm2022/dialog/lib/dialog.service.mjs +41 -49
- package/esm2022/drawer/lib/drawer-container.component.mjs +9 -13
- package/esm2022/drawer/lib/drawer.component.mjs +23 -27
- package/esm2022/drawer/lib/drawer.module.mjs +4 -4
- package/esm2022/dropdown/lib/dropdown-panel.component.mjs +4 -4
- package/esm2022/dropdown/lib/dropdown.module.mjs +4 -4
- package/esm2022/form/lib/form-field.component.mjs +9 -12
- package/esm2022/form/lib/form.component.mjs +38 -42
- package/esm2022/form/lib/form.module.mjs +4 -4
- package/esm2022/form/lib/validation-rule.widget.mjs +24 -15
- package/esm2022/form/lib/validation-summary.component.mjs +15 -14
- package/esm2022/image/lib/image.component.mjs +13 -17
- package/esm2022/image/lib/image.module.mjs +4 -4
- package/esm2022/index.mjs +1 -1
- package/esm2022/label/lib/label.component.mjs +18 -18
- package/esm2022/label/lib/label.module.mjs +4 -4
- package/esm2022/loading/index.mjs +2 -1
- package/esm2022/loading/lib/loading-spinner.component.mjs +4 -5
- package/esm2022/loading/lib/loading.component.mjs +22 -25
- package/esm2022/loading/lib/loading.config.mjs +17 -0
- package/esm2022/loading/lib/loading.directive.mjs +4 -4
- package/esm2022/loading/lib/loading.module.mjs +6 -17
- package/esm2022/loading/lib/loading.service.mjs +4 -36
- package/esm2022/menu/lib/menu.component.mjs +26 -19
- package/esm2022/menu/lib/menu.module.mjs +4 -4
- package/esm2022/mixin/lib/base-components.class.mjs +3 -3
- package/esm2022/mixin/lib/base-menu-mixin.class.mjs +3 -3
- package/esm2022/mixin/lib/color-look-mixing.class.mjs +1 -1
- package/esm2022/notification/index.mjs +2 -1
- package/esm2022/notification/lib/notification.class.mjs +1 -1
- package/esm2022/notification/lib/notification.component.mjs +51 -35
- package/esm2022/notification/lib/notification.config.mjs +20 -0
- package/esm2022/notification/lib/notification.module.mjs +11 -7
- package/esm2022/notification/lib/notification.service.mjs +46 -59
- package/esm2022/number-box/lib/number-box.component.mjs +101 -90
- package/esm2022/number-box/lib/number-box.module.mjs +4 -4
- package/esm2022/otp/lib/otp.component.mjs +38 -48
- package/esm2022/otp/lib/otp.module.mjs +4 -4
- package/esm2022/page/lib/base-page.class.mjs +6 -6
- 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 +37 -25
- package/esm2022/password-box/lib/password-box.module.mjs +4 -4
- package/esm2022/popover/lib/dropdown-component.class.mjs +3 -3
- package/esm2022/popover/lib/popover.component.mjs +3 -3
- package/esm2022/popover/lib/popover.module.mjs +4 -4
- package/esm2022/popup/index.mjs +2 -1
- package/esm2022/popup/lib/popup.component.mjs +49 -69
- package/esm2022/popup/lib/popup.interface.mjs +2 -0
- package/esm2022/popup/lib/popup.module.mjs +27 -12
- package/esm2022/popup/lib/popup.service.mjs +31 -86
- package/esm2022/progress-bar/lib/progress-bar.component.mjs +3 -3
- package/esm2022/progress-bar/lib/progress-bar.module.mjs +4 -4
- package/esm2022/radio/lib/radio.component.mjs +4 -4
- package/esm2022/radio/lib/radio.module.mjs +4 -4
- package/esm2022/range-slider/lib/range-slider.component.mjs +27 -22
- package/esm2022/range-slider/lib/range-slider.module.mjs +7 -6
- package/esm2022/result/lib/result.component.mjs +3 -3
- package/esm2022/result/lib/result.module.mjs +4 -4
- package/esm2022/scheduler/acorex-components-scheduler.mjs +5 -0
- package/esm2022/scheduler/index.mjs +4 -0
- package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +45 -0
- package/esm2022/scheduler/lib/scheduler.component.mjs +30 -0
- package/esm2022/scheduler/lib/scheduler.module.mjs +26 -0
- package/esm2022/search-box/lib/search-box.component.mjs +35 -44
- package/esm2022/search-box/lib/search-box.module.mjs +28 -7
- package/esm2022/select-box/lib/select-box.component.mjs +11 -9
- package/esm2022/select-box/lib/select-box.module.mjs +7 -7
- package/esm2022/selection-list/lib/selection-list.component.mjs +3 -3
- package/esm2022/selection-list/lib/selection-list.module.mjs +6 -6
- package/esm2022/switch/lib/switch-content.component.mjs +3 -3
- package/esm2022/switch/lib/switch.component.mjs +27 -24
- 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 +3 -3
- package/esm2022/tabs/lib/tabs.component.mjs +3 -3
- package/esm2022/tabs/lib/tabs.module.mjs +4 -4
- package/esm2022/tag/lib/tag.component.mjs +3 -3
- package/esm2022/tag/lib/tag.module.mjs +4 -4
- package/esm2022/text-area/acorex-components-text-area.mjs +5 -0
- package/esm2022/text-area/index.mjs +3 -0
- package/esm2022/text-area/lib/text-area.component.mjs +36 -0
- package/esm2022/text-area/lib/text-area.module.mjs +19 -0
- package/esm2022/{checkbox/acorex-components-checkbox.mjs → text-box/acorex-components-text-box.mjs} +1 -1
- package/esm2022/text-box/index.mjs +4 -0
- package/esm2022/text-box/lib/mask-options.directive.mjs +17 -0
- package/esm2022/text-box/lib/text-box.component.mjs +111 -0
- package/esm2022/text-box/lib/text-box.module.mjs +38 -0
- package/esm2022/time-box/lib/time-box.component.mjs +5 -5
- package/esm2022/time-box/lib/time-box.module.mjs +4 -4
- package/esm2022/toast/index.mjs +2 -1
- package/esm2022/toast/lib/toast.class.mjs +1 -1
- package/esm2022/toast/lib/toast.component.mjs +37 -25
- package/esm2022/toast/lib/toast.config.mjs +19 -0
- package/esm2022/toast/lib/toast.module.mjs +12 -8
- package/esm2022/toast/lib/toast.service.mjs +46 -55
- package/esm2022/tooltip/lib/tooltip.component.mjs +3 -3
- package/esm2022/tooltip/lib/tooltip.directive.mjs +3 -3
- package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
- package/esm2022/uploader/lib/uploader.component.mjs +3 -3
- package/esm2022/uploader/lib/uploader.module.mjs +4 -4
- package/fesm2022/acorex-components-action-sheet.mjs +99 -125
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +21 -22
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +10 -10
- package/fesm2022/acorex-components-badge.mjs +9 -9
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
- package/fesm2022/acorex-components-button.mjs +41 -24
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +28 -25
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +100 -0
- package/fesm2022/acorex-components-check-box.mjs.map +1 -0
- package/fesm2022/acorex-components-chips.mjs +10 -9
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +10 -10
- package/fesm2022/acorex-components-color-palette.mjs +432 -437
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-color-picker.mjs +16 -10
- package/fesm2022/acorex-components-color-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +282 -150
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-context-menu.mjs +8 -8
- package/fesm2022/acorex-components-context-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +214 -228
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +41 -71
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-date-picker.mjs +25 -22
- package/fesm2022/acorex-components-date-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +80 -283
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +97 -88
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +31 -39
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +7 -7
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +80 -77
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +15 -19
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +21 -21
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +51 -83
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +29 -22
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-mixin.mjs +4 -5
- package/fesm2022/acorex-components-mixin.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +131 -107
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +106 -96
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +40 -50
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +12 -12
- package/fesm2022/acorex-components-page.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +41 -30
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +10 -10
- package/fesm2022/acorex-components-popup.mjs +107 -170
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +7 -7
- package/fesm2022/acorex-components-radio.mjs +8 -8
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +31 -27
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +7 -7
- package/fesm2022/acorex-components-scheduler.mjs +98 -0
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -0
- package/fesm2022/acorex-components-search-box.mjs +61 -49
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +16 -14
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +8 -8
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +33 -31
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +13 -13
- package/fesm2022/acorex-components-tag.mjs +7 -7
- package/fesm2022/acorex-components-text-area.mjs +59 -0
- package/fesm2022/acorex-components-text-area.mjs.map +1 -0
- package/fesm2022/{acorex-components-textbox.mjs → acorex-components-text-box.mjs} +49 -32
- package/fesm2022/acorex-components-text-box.mjs.map +1 -0
- package/fesm2022/acorex-components-time-box.mjs +8 -8
- package/fesm2022/acorex-components-time-box.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +116 -94
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +10 -10
- package/fesm2022/acorex-components-uploader.mjs +7 -7
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/form/lib/form-field.component.d.ts +2 -4
- package/form/lib/form.component.d.ts +12 -17
- package/form/lib/validation-rule.widget.d.ts +9 -6
- package/form/lib/validation-summary.component.d.ts +7 -9
- package/image/lib/image.component.d.ts +7 -13
- package/label/lib/label.component.d.ts +4 -7
- package/loading/index.d.ts +1 -0
- package/loading/lib/loading.component.d.ts +9 -12
- package/loading/lib/loading.config.d.ts +8 -0
- package/loading/lib/loading.directive.d.ts +5 -5
- package/loading/lib/loading.module.d.ts +0 -1
- package/loading/lib/loading.service.d.ts +0 -18
- package/menu/lib/menu.component.d.ts +4 -2
- 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 +3 -3
- 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/loading-mixin.class.d.ts +2 -2
- 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/notification/index.d.ts +1 -0
- package/notification/lib/notification.class.d.ts +29 -7
- package/notification/lib/notification.component.d.ts +13 -14
- package/notification/lib/notification.config.d.ts +13 -0
- package/notification/lib/notification.module.d.ts +4 -1
- package/notification/lib/notification.service.d.ts +5 -9
- package/number-box/lib/number-box.component.d.ts +12 -17
- package/otp/lib/otp.component.d.ts +7 -14
- package/package.json +36 -30
- package/page/lib/base-page.class.d.ts +2 -2
- package/password-box/lib/password-box.component.d.ts +8 -11
- package/popup/index.d.ts +1 -0
- package/popup/lib/popup.component.d.ts +14 -19
- package/popup/lib/popup.interface.d.ts +26 -0
- package/popup/lib/popup.module.d.ts +4 -4
- package/popup/lib/popup.service.d.ts +4 -25
- package/range-slider/lib/range-slider.component.d.ts +6 -14
- package/range-slider/lib/range-slider.module.d.ts +3 -2
- package/scheduler/README.md +3 -0
- package/scheduler/index.d.ts +3 -0
- package/scheduler/lib/scheduler-month-view.component.d.ts +20 -0
- package/scheduler/lib/scheduler.component.d.ts +11 -0
- package/scheduler/lib/scheduler.module.d.ts +13 -0
- package/search-box/lib/search-box.component.d.ts +8 -16
- package/search-box/lib/search-box.module.d.ts +7 -5
- package/select-box/lib/select-box.module.d.ts +2 -2
- package/selection-list/lib/selection-list.module.d.ts +1 -1
- package/switch/lib/switch.component.d.ts +10 -8
- package/tabs/lib/tab-item.component.d.ts +2 -2
- package/text-area/README.md +3 -0
- package/text-area/index.d.ts +2 -0
- package/text-area/lib/text-area.component.d.ts +11 -0
- package/text-area/lib/text-area.module.d.ts +9 -0
- package/text-box/README.md +3 -0
- package/text-box/index.d.ts +3 -0
- package/text-box/lib/text-box.component.d.ts +25 -0
- package/{textbox/lib/textbox.module.d.ts → text-box/lib/text-box.module.d.ts} +1 -1
- package/time-box/lib/time-box.component.d.ts +1 -1
- package/toast/index.d.ts +1 -0
- package/toast/lib/toast.class.d.ts +14 -5
- package/toast/lib/toast.component.d.ts +13 -12
- package/toast/lib/toast.config.d.ts +12 -0
- package/toast/lib/toast.module.d.ts +4 -1
- package/toast/lib/toast.service.d.ts +5 -9
- package/action-sheet/lib/action-sheet.interface.d.ts +0 -21
- package/checkbox/README.md +0 -3
- package/checkbox/index.d.ts +0 -2
- package/checkbox/lib/checkbox.component.d.ts +0 -17
- package/common/lib/directives/debounce-time.directive.d.ts +0 -17
- package/data-table/lib/data-column-cell-template.directive.d.ts +0 -8
- package/decorators/lib/content.component.d.ts +0 -9
- package/decorators/lib/divider.component.d.ts +0 -5
- package/decorators/lib/footer.component.d.ts +0 -9
- package/decorators/lib/form-hint.component.d.ts +0 -8
- package/decorators/lib/header.component.d.ts +0 -9
- package/decorators/lib/overlay.component.d.ts +0 -6
- package/decorators/lib/placeholder.component.d.ts +0 -5
- package/decorators/lib/prefix.component.d.ts +0 -9
- package/decorators/lib/sub-title.component.d.ts +0 -9
- package/decorators/lib/suffix.component.d.ts +0 -9
- package/decorators/lib/text.component.d.ts +0 -9
- package/decorators/lib/title.component.d.ts +0 -8
- package/esm2022/action-sheet/lib/action-sheet.interface.mjs +0 -2
- package/esm2022/checkbox/index.mjs +0 -3
- package/esm2022/checkbox/lib/checkbox.component.mjs +0 -49
- package/esm2022/checkbox/lib/checkbox.module.mjs +0 -21
- package/esm2022/common/lib/directives/debounce-time.directive.mjs +0 -48
- package/esm2022/data-table/lib/data-column-cell-template.directive.mjs +0 -17
- package/esm2022/decorators/lib/content.component.mjs +0 -26
- package/esm2022/decorators/lib/divider.component.mjs +0 -17
- package/esm2022/decorators/lib/footer.component.mjs +0 -26
- package/esm2022/decorators/lib/form-hint.component.mjs +0 -20
- package/esm2022/decorators/lib/header.component.mjs +0 -26
- package/esm2022/decorators/lib/overlay.component.mjs +0 -22
- package/esm2022/decorators/lib/placeholder.component.mjs +0 -14
- package/esm2022/decorators/lib/prefix.component.mjs +0 -26
- package/esm2022/decorators/lib/sub-title.component.mjs +0 -26
- package/esm2022/decorators/lib/suffix.component.mjs +0 -26
- package/esm2022/decorators/lib/text.component.mjs +0 -21
- package/esm2022/decorators/lib/title.component.mjs +0 -20
- package/esm2022/textarea/acorex-components-textarea.mjs +0 -5
- package/esm2022/textarea/index.mjs +0 -3
- package/esm2022/textarea/lib/textarea.component.mjs +0 -37
- package/esm2022/textarea/lib/textarea.module.mjs +0 -19
- package/esm2022/textbox/acorex-components-textbox.mjs +0 -5
- package/esm2022/textbox/index.mjs +0 -4
- package/esm2022/textbox/lib/mask-options.directive.mjs +0 -17
- package/esm2022/textbox/lib/textbox.component.mjs +0 -93
- package/esm2022/textbox/lib/textbox.module.mjs +0 -38
- package/fesm2022/acorex-components-checkbox.mjs +0 -74
- package/fesm2022/acorex-components-checkbox.mjs.map +0 -1
- package/fesm2022/acorex-components-textarea.mjs +0 -60
- package/fesm2022/acorex-components-textarea.mjs.map +0 -1
- package/fesm2022/acorex-components-textbox.mjs.map +0 -1
- package/textarea/README.md +0 -3
- package/textarea/index.d.ts +0 -2
- package/textarea/lib/textarea.component.d.ts +0 -14
- package/textarea/lib/textarea.module.d.ts +0 -9
- package/textbox/README.md +0 -3
- package/textbox/index.d.ts +0 -3
- package/textbox/lib/textbox.component.d.ts +0 -27
- /package/{textbox → text-box}/lib/mask-options.directive.d.ts +0 -0
@@ -1,127 +1,141 @@
|
|
1
|
-
import { AXClosbaleComponent } from '@acorex/components/common';
|
2
1
|
import * as i0 from '@angular/core';
|
3
|
-
import { TemplateRef, Component, ChangeDetectionStrategy, ViewEncapsulation, HostBinding,
|
4
|
-
import {
|
5
|
-
import * as
|
2
|
+
import { InjectionToken, TemplateRef, Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, HostBinding, inject, Injectable, NgModule } from '@angular/core';
|
3
|
+
import { MXBaseComponent, AXClosbaleComponent } from '@acorex/components/common';
|
4
|
+
import * as i3 from '@angular/cdk/portal';
|
6
5
|
import { TemplatePortal, ComponentPortal, PortalModule } from '@angular/cdk/portal';
|
7
|
-
import * as i1 from '@angular/
|
6
|
+
import * as i1 from '@angular/cdk/dialog';
|
7
|
+
import { DIALOG_DATA, Dialog, DialogModule } from '@angular/cdk/dialog';
|
8
|
+
import * as i2 from '@angular/common';
|
8
9
|
import { CommonModule } from '@angular/common';
|
9
|
-
import * as
|
10
|
+
import * as i4 from '@acorex/components/button';
|
10
11
|
import { AXButtonModule } from '@acorex/components/button';
|
11
|
-
import
|
12
|
-
import
|
12
|
+
import * as i5 from '@acorex/components/loading';
|
13
|
+
import { AXLoadingModule } from '@acorex/components/loading';
|
14
|
+
import * as i6 from '@acorex/components/decorators';
|
15
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
16
|
+
import { GlobalPositionStrategy } from '@angular/cdk/overlay';
|
17
|
+
|
18
|
+
const AX_NOTIFICATION_CONFIG = new InjectionToken('AX_NOTIFICATION_CONFIG', {
|
19
|
+
providedIn: 'root',
|
20
|
+
factory: () => AXNotificationDefaultConfig,
|
21
|
+
});
|
22
|
+
const AXNotificationDefaultConfig = {
|
23
|
+
gap: 5,
|
24
|
+
timeOut: 2500,
|
25
|
+
timeOutProgress: true,
|
26
|
+
closeButton: true,
|
27
|
+
location: 'top-end',
|
28
|
+
};
|
29
|
+
function notificationConfig(config = {}) {
|
30
|
+
const result = {
|
31
|
+
...AXNotificationDefaultConfig,
|
32
|
+
...config,
|
33
|
+
};
|
34
|
+
return result;
|
35
|
+
}
|
13
36
|
|
14
37
|
/**
|
15
38
|
* The Button is a component which detects user interaction and triggers a corresponding event
|
16
39
|
*
|
17
40
|
* @category Components
|
18
41
|
*/
|
19
|
-
class AXNotificationComponent extends
|
42
|
+
class AXNotificationComponent extends MXBaseComponent {
|
20
43
|
/**
|
21
|
-
|
22
|
-
|
23
|
-
constructor(
|
24
|
-
super(
|
25
|
-
this.
|
44
|
+
* @ignore
|
45
|
+
*/
|
46
|
+
constructor(config, dialogRef) {
|
47
|
+
super();
|
48
|
+
this.config = config;
|
49
|
+
this.dialogRef = dialogRef;
|
26
50
|
}
|
27
|
-
|
51
|
+
ngOnInit() {
|
28
52
|
this._initContent();
|
29
53
|
this._initIcon();
|
30
54
|
this._handleTimeOut();
|
31
55
|
}
|
32
56
|
_handleTimeOut() {
|
33
|
-
if (this.
|
57
|
+
if (this.config.timeOut) {
|
34
58
|
setTimeout(() => {
|
35
59
|
this.close();
|
36
|
-
}, this.
|
60
|
+
}, this.config.timeOut);
|
37
61
|
}
|
38
62
|
}
|
39
63
|
_initContent() {
|
40
|
-
if (this.
|
41
|
-
this._selectedPortal = new TemplatePortal(this.
|
42
|
-
this.
|
64
|
+
if (this.config.content instanceof TemplateRef) {
|
65
|
+
this._selectedPortal = new TemplatePortal(this.config.content, this.getViewContainer());
|
66
|
+
this.cdr.markForCheck();
|
43
67
|
}
|
44
|
-
else if (typeof this.
|
45
|
-
this._selectedPortal = new ComponentPortal(this.
|
46
|
-
this.
|
68
|
+
else if (typeof this.config.content === 'function') {
|
69
|
+
this._selectedPortal = new ComponentPortal(this.config.content);
|
70
|
+
this.cdr.markForCheck();
|
47
71
|
}
|
48
72
|
}
|
49
73
|
_initIcon() {
|
50
|
-
if (!this.
|
51
|
-
switch (this.
|
74
|
+
if (!this.config.icon) {
|
75
|
+
switch (this.config.color) {
|
52
76
|
case 'success':
|
53
77
|
this._icon = 'ax-icon ax-icon-check-circle-fill';
|
54
78
|
break;
|
79
|
+
case 'danger':
|
80
|
+
this._icon = 'ax-icon ax-icon-error-fill';
|
81
|
+
break;
|
55
82
|
case 'warning':
|
56
83
|
this._icon = 'ax-icon ax-icon-warning-fill';
|
57
84
|
break;
|
58
|
-
case '
|
59
|
-
this._icon = 'ax-icon ax-icon-
|
85
|
+
case 'info':
|
86
|
+
this._icon = 'ax-icon ax-icon-info-fill';
|
60
87
|
break;
|
61
88
|
default:
|
62
|
-
this._icon = this.
|
89
|
+
this._icon = this.config.icon || 'ax-icon ax-icon-check-circle-fill';
|
63
90
|
break;
|
64
91
|
}
|
65
92
|
}
|
66
93
|
else {
|
67
|
-
this._icon = this.
|
94
|
+
this._icon = this.config.icon;
|
68
95
|
}
|
69
96
|
}
|
70
97
|
_handleButtonClick(button) {
|
71
98
|
if (button.onClick) {
|
72
|
-
button.onClick(
|
99
|
+
button.onClick({ source: button });
|
73
100
|
}
|
74
101
|
}
|
75
102
|
get __hostClass() {
|
76
|
-
return `ax-${this.
|
103
|
+
return `ax-${this.config.color}`;
|
77
104
|
}
|
78
|
-
|
79
|
-
|
105
|
+
close() {
|
106
|
+
this.dialogRef.close({
|
107
|
+
component: this,
|
108
|
+
htmlElement: this.getHostElement(),
|
109
|
+
});
|
110
|
+
}
|
111
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationComponent, deps: [{ token: DIALOG_DATA }, { token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
112
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: AXNotificationComponent, selector: "ax-notification", host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXNotificationComponent }], usesInheritance: true, ngImport: i0, template: "<span class=\"ax-notification-icon {{_icon}}\"></span>\n<div class=\"ax-notification-content\">\n <div class=\"ax-notification-title\">{{ config.title }}</div>\n <ng-template *ngIf=\"_selectedPortal\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\n </ng-template>\n <div *ngIf=\"!_selectedPortal\">{{ config.content }}</div>\n <div class=\"ax-notification-buttons\" *ngIf=\"config.buttons?.length\">\n <ng-container *ngFor=\"let button of config.buttons\">\n <ax-button class=\"ax-xs\" [text]=\"button.text\" [color]=\"button.color\" [look]=\"button.look\"\n [disabled]=\"button.disabled\" (onClick)=\"_handleButtonClick(button)\">\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n\n </div>\n</div>\n<ax-close-button *ngIf=\"config.closeButton\"></ax-close-button>\n<div class=\"ax-notification-progress\" [style.animation-duration.ms]=\"config.timeOut\"\n *ngIf=\"config.timeOutProgress && config.timeOut\"></div>", styles: [".ax-dark ax-notification{background-color:rgba(var(--ax-color-default))}ax-notification{width:max(20vw,380px);display:flex;padding:1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgba(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-notification.ax-primary .ax-notification-icon{color:rgba(var(--ax-color-primary-500))}ax-notification.ax-primary .ax-notification-progress{background-color:rgba(var(--ax-color-primary-500))}ax-notification.ax-secondary .ax-notification-icon{color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-secondary .ax-notification-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-success .ax-notification-icon{color:rgba(var(--ax-color-success-500))}ax-notification.ax-success .ax-notification-progress{background-color:rgba(var(--ax-color-success-500))}ax-notification.ax-warning .ax-notification-icon{color:rgba(var(--ax-color-warning-500))}ax-notification.ax-warning .ax-notification-progress{background-color:rgba(var(--ax-color-warning-500))}ax-notification.ax-danger .ax-notification-icon{color:rgba(var(--ax-color-danger-500))}ax-notification.ax-danger .ax-notification-progress{background-color:rgba(var(--ax-color-danger-500))}ax-notification.ax-info .ax-notification-icon{color:rgba(var(--ax-color-info-500))}ax-notification.ax-info .ax-notification-progress{background-color:rgba(var(--ax-color-info-500))}@media (max-width: 599px){ax-notification{width:98vw}}ax-notification .ax-notification-icon,ax-notification .ax-icon-close{font-size:1.25rem}ax-notification .ax-notification-icon{padding-inline-end:.75rem}ax-notification .ax-notification-content{display:flex;flex-direction:column;flex:1;color:rgba(var(--ax-color-default-fore));font-weight:400}ax-notification .ax-notification-content .ax-notification-title{font-weight:500;margin-bottom:.25rem;color:rgba(var(--ax-color-default-fore))}ax-notification .ax-notification-content .ax-notification-buttons{margin-top:.75rem;display:flex;gap:.75rem}ax-notification .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content;color:rgba(var(--ax-color-default-fore))}ax-notification .ax-icon-close:hover{opacity:.6}ax-notification .ax-notification-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange"] }, { kind: "component", type: i5.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "component", type: i6.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
80
113
|
}
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.
|
114
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationComponent, decorators: [{
|
82
115
|
type: Component,
|
83
|
-
args: [{ selector: 'ax-notification', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXNotificationComponent }], template: "<span
|
84
|
-
}], ctorParameters: function () { return [{ type:
|
116
|
+
args: [{ selector: 'ax-notification', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXNotificationComponent }], template: "<span class=\"ax-notification-icon {{_icon}}\"></span>\n<div class=\"ax-notification-content\">\n <div class=\"ax-notification-title\">{{ config.title }}</div>\n <ng-template *ngIf=\"_selectedPortal\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\n </ng-template>\n <div *ngIf=\"!_selectedPortal\">{{ config.content }}</div>\n <div class=\"ax-notification-buttons\" *ngIf=\"config.buttons?.length\">\n <ng-container *ngFor=\"let button of config.buttons\">\n <ax-button class=\"ax-xs\" [text]=\"button.text\" [color]=\"button.color\" [look]=\"button.look\"\n [disabled]=\"button.disabled\" (onClick)=\"_handleButtonClick(button)\">\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n\n </div>\n</div>\n<ax-close-button *ngIf=\"config.closeButton\"></ax-close-button>\n<div class=\"ax-notification-progress\" [style.animation-duration.ms]=\"config.timeOut\"\n *ngIf=\"config.timeOutProgress && config.timeOut\"></div>", styles: [".ax-dark ax-notification{background-color:rgba(var(--ax-color-default))}ax-notification{width:max(20vw,380px);display:flex;padding:1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgba(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}ax-notification.ax-primary .ax-notification-icon{color:rgba(var(--ax-color-primary-500))}ax-notification.ax-primary .ax-notification-progress{background-color:rgba(var(--ax-color-primary-500))}ax-notification.ax-secondary .ax-notification-icon{color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-secondary .ax-notification-progress{background-color:rgba(var(--ax-color-secondary-500))}ax-notification.ax-success .ax-notification-icon{color:rgba(var(--ax-color-success-500))}ax-notification.ax-success .ax-notification-progress{background-color:rgba(var(--ax-color-success-500))}ax-notification.ax-warning .ax-notification-icon{color:rgba(var(--ax-color-warning-500))}ax-notification.ax-warning .ax-notification-progress{background-color:rgba(var(--ax-color-warning-500))}ax-notification.ax-danger .ax-notification-icon{color:rgba(var(--ax-color-danger-500))}ax-notification.ax-danger .ax-notification-progress{background-color:rgba(var(--ax-color-danger-500))}ax-notification.ax-info .ax-notification-icon{color:rgba(var(--ax-color-info-500))}ax-notification.ax-info .ax-notification-progress{background-color:rgba(var(--ax-color-info-500))}@media (max-width: 599px){ax-notification{width:98vw}}ax-notification .ax-notification-icon,ax-notification .ax-icon-close{font-size:1.25rem}ax-notification .ax-notification-icon{padding-inline-end:.75rem}ax-notification .ax-notification-content{display:flex;flex-direction:column;flex:1;color:rgba(var(--ax-color-default-fore));font-weight:400}ax-notification .ax-notification-content .ax-notification-title{font-weight:500;margin-bottom:.25rem;color:rgba(var(--ax-color-default-fore))}ax-notification .ax-notification-content .ax-notification-buttons{margin-top:.75rem;display:flex;gap:.75rem}ax-notification .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content;color:rgba(var(--ax-color-default-fore))}ax-notification .ax-icon-close:hover{opacity:.6}ax-notification .ax-notification-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
|
117
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
118
|
+
type: Inject,
|
119
|
+
args: [DIALOG_DATA]
|
120
|
+
}] }, { type: i1.DialogRef }]; }, propDecorators: { __hostClass: [{
|
85
121
|
type: HostBinding,
|
86
122
|
args: ['class']
|
87
123
|
}] } });
|
88
124
|
|
89
|
-
const COMPONENT = [AXNotificationComponent];
|
90
|
-
const MODULES = [CommonModule, PortalModule, AXButtonModule];
|
91
|
-
class AXNotificationModule {
|
92
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: AXNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
93
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.5", ngImport: i0, type: AXNotificationModule, declarations: [AXNotificationComponent], imports: [CommonModule, PortalModule, AXButtonModule], exports: [AXNotificationComponent] }); }
|
94
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: AXNotificationModule, imports: [MODULES] }); }
|
95
|
-
}
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.5", ngImport: i0, type: AXNotificationModule, decorators: [{
|
97
|
-
type: NgModule,
|
98
|
-
args: [{
|
99
|
-
declarations: [...COMPONENT],
|
100
|
-
imports: [...MODULES],
|
101
|
-
exports: [...COMPONENT],
|
102
|
-
providers: [],
|
103
|
-
}]
|
104
|
-
}] });
|
105
|
-
|
106
125
|
class AXNotificationService {
|
107
|
-
constructor(
|
108
|
-
this.
|
109
|
-
this.
|
110
|
-
this._defaults = {
|
111
|
-
gap: 5,
|
112
|
-
location: 'top-end',
|
113
|
-
};
|
114
|
-
this._activeList = [];
|
126
|
+
constructor() {
|
127
|
+
this.dialog = inject(Dialog);
|
128
|
+
this.defaultConfig = inject(AX_NOTIFICATION_CONFIG);
|
115
129
|
}
|
116
|
-
show(
|
117
|
-
|
118
|
-
|
119
|
-
location:
|
120
|
-
},
|
121
|
-
const gap =
|
122
|
-
let positionStrategy =
|
123
|
-
const pos = this.getPosition(
|
124
|
-
switch (
|
130
|
+
show(config) {
|
131
|
+
config = Object.assign({
|
132
|
+
closeButton: true,
|
133
|
+
location: this.defaultConfig.location,
|
134
|
+
}, config);
|
135
|
+
const gap = this.defaultConfig.gap;
|
136
|
+
let positionStrategy = new GlobalPositionStrategy();
|
137
|
+
const pos = this.getPosition(config.location) + gap + 'px';
|
138
|
+
switch (config.location) {
|
125
139
|
case 'bottom-center':
|
126
140
|
positionStrategy = positionStrategy.bottom(pos).centerHorizontally();
|
127
141
|
break;
|
@@ -151,62 +165,72 @@ class AXNotificationService {
|
|
151
165
|
default:
|
152
166
|
break;
|
153
167
|
}
|
154
|
-
const
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
168
|
+
const dialogRef = this.dialog.open(AXNotificationComponent, {
|
169
|
+
data: config,
|
170
|
+
autoFocus: "__no_element__",
|
171
|
+
restoreFocus: false,
|
172
|
+
role: 'dialog',
|
173
|
+
ariaModal: true,
|
174
|
+
closeOnNavigation: true,
|
175
|
+
closeOnDestroy: true,
|
176
|
+
hasBackdrop: false,
|
177
|
+
panelClass: ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster'],
|
178
|
+
positionStrategy: positionStrategy
|
179
|
+
});
|
180
|
+
const toastRef = dialogRef.componentInstance;
|
181
|
+
dialogRef.closed.subscribe(() => {
|
182
|
+
this.reposition();
|
161
183
|
});
|
162
|
-
const notificationPortal = new ComponentPortal(AXNotificationComponent, null, this.parentInjector);
|
163
|
-
const host = overlayRef.attach(notificationPortal);
|
164
|
-
host.instance.visibleIndex = this._activeList.length;
|
165
|
-
this._activeList.push(host.instance);
|
166
|
-
if (host.instance) {
|
167
|
-
Object.assign(host.instance, {
|
168
|
-
options: opt,
|
169
|
-
close: () => {
|
170
|
-
this._activeList = this._activeList.filter(c => c != host.instance);
|
171
|
-
overlayRef.dispose();
|
172
|
-
},
|
173
|
-
});
|
174
|
-
setTimeout(() => {
|
175
|
-
host.changeDetectorRef.detectChanges();
|
176
|
-
}, 0);
|
177
|
-
}
|
178
184
|
return {
|
179
185
|
close: () => {
|
180
|
-
|
181
|
-
}
|
186
|
+
toastRef.close();
|
187
|
+
}
|
182
188
|
};
|
183
189
|
}
|
184
190
|
hideAll() {
|
185
|
-
this.
|
191
|
+
this.dialog.closeAll();
|
192
|
+
}
|
193
|
+
reposition() {
|
194
|
+
//TODO: reposition vertically afer close toast
|
186
195
|
}
|
187
196
|
getPosition(location) {
|
188
|
-
const list = this.
|
197
|
+
const list = this.dialog.openDialogs.map(c => c.componentInstance).filter(c => c.config.location == location);
|
189
198
|
if (list.length == 0)
|
190
199
|
return 0;
|
191
200
|
if (location.split('-')[0] == 'bottom') {
|
192
|
-
return
|
201
|
+
return window.innerHeight - list[list.length - 1].getHostElement().offsetTop;
|
193
202
|
}
|
194
203
|
else {
|
195
|
-
return
|
196
|
-
list[list.length - 1]._getHostElement().offsetHeight);
|
204
|
+
return list[list.length - 1].getHostElement().offsetTop + list[list.length - 1].getHostElement().offsetHeight;
|
197
205
|
}
|
198
206
|
}
|
199
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.
|
200
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.
|
207
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
208
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationService }); }
|
201
209
|
}
|
202
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.
|
203
|
-
type: Injectable
|
204
|
-
|
205
|
-
|
210
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationService, decorators: [{
|
211
|
+
type: Injectable
|
212
|
+
}] });
|
213
|
+
|
214
|
+
const COMPONENT = [AXNotificationComponent];
|
215
|
+
const MODULES = [CommonModule, PortalModule, AXButtonModule, DialogModule, AXLoadingModule, AXDecoratorModule];
|
216
|
+
class AXNotificationModule {
|
217
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
218
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationModule, declarations: [AXNotificationComponent], imports: [CommonModule, PortalModule, AXButtonModule, DialogModule, AXLoadingModule, AXDecoratorModule], exports: [AXNotificationComponent] }); }
|
219
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationModule, providers: [AXNotificationService], imports: [MODULES] }); }
|
220
|
+
}
|
221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: AXNotificationModule, decorators: [{
|
222
|
+
type: NgModule,
|
223
|
+
args: [{
|
224
|
+
declarations: [...COMPONENT],
|
225
|
+
imports: [...MODULES],
|
226
|
+
exports: [...COMPONENT],
|
227
|
+
providers: [AXNotificationService],
|
228
|
+
}]
|
229
|
+
}] });
|
206
230
|
|
207
231
|
/**
|
208
232
|
* Generated bundle index. Do not edit.
|
209
233
|
*/
|
210
234
|
|
211
|
-
export { AXNotificationComponent, AXNotificationModule, AXNotificationService };
|
235
|
+
export { AXNotificationComponent, AXNotificationDefaultConfig, AXNotificationModule, AXNotificationService, AX_NOTIFICATION_CONFIG, notificationConfig };
|
212
236
|
//# sourceMappingURL=acorex-components-notification.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-notification.mjs","sources":["../../../../libs/components/notification/src/lib/notification.component.ts","../../../../libs/components/notification/src/lib/notification.component.html","../../../../libs/components/notification/src/lib/notification.module.ts","../../../../libs/components/notification/src/lib/notification.service.ts","../../../../libs/components/notification/src/acorex-components-notification.ts"],"sourcesContent":["import { AXClosbaleComponent } from '@acorex/components/common';\nimport { AXButtonItem } from '@acorex/components/button';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n ChangeDetectorRef,\n HostBinding,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\nimport { AXNotificationOptions } from './notification.class';\nimport { ComponentPortal, Portal, TemplatePortal } from '@angular/cdk/portal';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-notification',\n templateUrl: './notification.component.html',\n styleUrls: ['./notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXClosbaleComponent, useExisting: AXNotificationComponent }],\n})\nexport class AXNotificationComponent extends AXBaseComponentMixin {\n options: AXNotificationOptions;\n _selectedPortal: Portal<any>;\n _icon: string;\n\n close: () => void;\n /**\n * @ignore\n */\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef, private viewRef: ViewContainerRef) {\n super(elementRef, cdr);\n }\n\n override onInit() {\n this._initContent();\n this._initIcon();\n this._handleTimeOut();\n }\n\n private _handleTimeOut() {\n if (this.options.timeOut) {\n setTimeout(() => {\n this.close();\n }, this.options.timeOut);\n }\n }\n private _initContent() {\n if (this.options.content instanceof TemplateRef) {\n this._selectedPortal = new TemplatePortal(\n this.options.content as TemplateRef<any>,\n this.viewRef\n );\n this._cdr.markForCheck();\n } else if (typeof this.options.content === 'function') {\n this._selectedPortal = new ComponentPortal(this.options.content as any);\n this._cdr.markForCheck();\n }\n }\n\n private _initIcon() {\n if (!this.options.icon) {\n switch (this.options.color) {\n case 'success':\n this._icon = 'ax-icon ax-icon-check-circle-fill';\n break;\n case 'warning':\n this._icon = 'ax-icon ax-icon-warning-fill';\n break;\n case 'danger':\n this._icon = 'ax-icon ax-icon-error-fill';\n break;\n default:\n this._icon = this.options.icon || 'ax-icon ax-icon-check-circle-fill';\n break;\n }\n } else {\n this._icon = this.options.icon;\n }\n }\n\n _handleButtonClick(button: AXButtonItem) {\n if (button.onClick) {\n button.onClick(this);\n }\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-${this.options.color}`;\n }\n}\n","<span [class]=\"'ax-notification-icon' + ' ' + _icon\"></span>\n<div class=\"ax-notification-content\">\n <div class=\"ax-notification-title\">{{ options.title }}</div>\n <ng-template *ngIf=\"_selectedPortal\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\n </ng-template>\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\n <div *ngIf=\"!_selectedPortal\">{{ options.content }}</div>\n <div class=\"ax-notification-buttons\" *ngIf=\"options?.buttons?.length\">\n <ax-button\n *ngFor=\"let button of options.buttons\"\n class=\"ax-xs\"\n [text]=\"button.text\"\n [color]=\"button.color\"\n [look]=\"button.look\"\n (onClick)=\"_handleButtonClick(button)\">\n {{ button.text }}\n </ax-button>\n </div>\n</div>\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\n<div\n class=\"ax-notification-progress\"\n [style.animation-duration.ms]=\"options.timeOut\"\n *ngIf=\"options.timeOut\"></div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXNotificationComponent } from './notification.component';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { AXButtonModule } from '@acorex/components/button';\n\nconst COMPONENT = [AXNotificationComponent];\nconst MODULES = [CommonModule, PortalModule, AXButtonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXNotificationModule {}\n","import { AXConfig } from '@acorex/core/config';\nimport { Overlay } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { Injectable, Injector, TemplateRef } from '@angular/core';\nimport { AXNotificationOptions, AXNotificationRef } from './notification.class';\nimport { AXNotificationComponent } from './notification.component';\n\n@Injectable({ providedIn: 'root' })\nexport class AXNotificationService {\n private readonly _defaults = {\n gap: 5,\n location: 'top-end',\n };\n\n constructor(\n private overlayService: Overlay,\n private parentInjector: Injector\n ) {}\n\n private _activeList: AXNotificationComponent[] = [];\n\n show(options: AXNotificationOptions): AXNotificationRef {\n const opt = Object.assign(\n {\n closeable: true,\n location:\n AXConfig.get('notification.location') || this._defaults.location,\n },\n options\n );\n const gap = AXConfig.get('notification.gap') || this._defaults.gap;\n\n let positionStrategy = this.overlayService.position().global();\n const pos = this.getPosition(opt.location) + gap + 'px';\n switch (opt.location) {\n case 'bottom-center':\n positionStrategy = positionStrategy.bottom(pos).centerHorizontally();\n break;\n case 'bottom-end':\n positionStrategy = positionStrategy.bottom(pos).right(gap + 'px');\n break;\n case 'bottom-start':\n positionStrategy = positionStrategy.bottom(pos).left(gap + 'px');\n break;\n case 'top-center':\n positionStrategy = positionStrategy.top(pos).centerHorizontally();\n break;\n case 'top-end':\n positionStrategy = positionStrategy.top(pos).right(gap + 'px');\n break;\n case 'top-start':\n positionStrategy = positionStrategy.top(pos).left(gap + 'px');\n break;\n case 'center-start':\n positionStrategy = positionStrategy.centerVertically().left(gap + 'px');\n break;\n case 'center-end':\n positionStrategy = positionStrategy\n .centerVertically()\n .right(gap + 'px');\n break;\n default:\n break;\n }\n const overlayRef = this.overlayService.create({\n positionStrategy,\n panelClass: [\n 'ax-animate-animated',\n 'ax-animate-fadeIn',\n 'ax-animate-faster',\n ],\n });\n const notificationPortal = new ComponentPortal(\n AXNotificationComponent,\n null,\n this.parentInjector\n );\n\n const host = overlayRef.attach(notificationPortal);\n (host.instance as any).visibleIndex = this._activeList.length;\n this._activeList.push(host.instance);\n if (host.instance) {\n Object.assign(host.instance, {\n options: opt,\n close: () => {\n this._activeList = this._activeList.filter(c => c != host.instance);\n overlayRef.dispose();\n },\n });\n setTimeout(() => {\n host.changeDetectorRef.detectChanges();\n }, 0);\n }\n\n return {\n close: () => {\n host.instance.close();\n },\n };\n }\n\n public hideAll() {\n this._activeList.forEach(c => c.close());\n }\n\n private getPosition(location: string) {\n const list = this._activeList.filter(c => c.options.location == location);\n if (list.length == 0) return 0;\n if (location.split('-')[0] == 'bottom') {\n return (\n window.innerHeight - list[list.length - 1]._getHostElement().offsetTop\n );\n } else {\n return (\n list[list.length - 1]._getHostElement().offsetTop +\n list[list.length - 1]._getHostElement().offsetHeight\n );\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-notification.mjs","sources":["../../../../libs/components/notification/src/lib/notification.config.ts","../../../../libs/components/notification/src/lib/notification.component.ts","../../../../libs/components/notification/src/lib/notification.component.html","../../../../libs/components/notification/src/lib/notification.service.ts","../../../../libs/components/notification/src/lib/notification.module.ts","../../../../libs/components/notification/src/acorex-components-notification.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { AXLocation } from '@acorex/components/common';\n\n\nexport interface AXNotificationConfig {\n gap: number,\n timeOut: number,\n timeOutProgress: boolean,\n location: AXLocation,\n closeButton: boolean\n}\n\nexport const AX_NOTIFICATION_CONFIG = new InjectionToken<AXNotificationConfig>(\n 'AX_NOTIFICATION_CONFIG',\n {\n providedIn: 'root',\n factory: () => AXNotificationDefaultConfig,\n }\n);\n\n\nexport const AXNotificationDefaultConfig: AXNotificationConfig = {\n gap: 5,\n timeOut: 2500,\n timeOutProgress: true,\n closeButton: true,\n location: 'top-end',\n};\n\n\nexport type PartialNotificationConfig = Partial<AXNotificationConfig>;\n\nexport function notificationConfig(config: PartialNotificationConfig = {}): AXNotificationConfig {\n const result = {\n ...AXNotificationDefaultConfig,\n ...config,\n };\n return result\n}","import { AXClosbaleComponent, AXComponentCloseEvent, MXBaseComponent } from '@acorex/components/common';\nimport { ComponentPortal, ComponentType, Portal, TemplatePortal } from '@angular/cdk/portal';\nimport {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n Inject,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXNotificationButtonItem, AXNotificationData } from './notification.class';\nimport { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-notification',\n templateUrl: './notification.component.html',\n styleUrls: ['./notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXClosbaleComponent, useExisting: AXNotificationComponent }],\n})\nexport class AXNotificationComponent extends MXBaseComponent {\n\n _selectedPortal: Portal<unknown>;\n _icon: string;\n\n /**\n * @ignore\n */\n constructor(\n @Inject(DIALOG_DATA)\n public config: AXNotificationData,\n private dialogRef: DialogRef<AXComponentCloseEvent>,\n ) {\n super();\n }\n\n\n ngOnInit() {\n this._initContent();\n this._initIcon();\n this._handleTimeOut();\n }\n\n private _handleTimeOut() {\n if (this.config.timeOut) {\n setTimeout(() => {\n this.close();\n }, this.config.timeOut);\n }\n }\n\n private _initContent() {\n if (this.config.content instanceof TemplateRef) {\n this._selectedPortal = new TemplatePortal(\n this.config.content as TemplateRef<unknown>,\n this.getViewContainer(),\n );\n this.cdr.markForCheck();\n } else if (typeof this.config.content === 'function') {\n this._selectedPortal = new ComponentPortal(this.config.content as ComponentType<unknown>);\n this.cdr.markForCheck();\n }\n }\n\n private _initIcon() {\n if (!this.config.icon) {\n switch (this.config.color) {\n case 'success':\n this._icon = 'ax-icon ax-icon-check-circle-fill';\n break;\n case 'danger':\n this._icon = 'ax-icon ax-icon-error-fill';\n break;\n case 'warning':\n this._icon = 'ax-icon ax-icon-warning-fill';\n break;\n case 'info':\n this._icon = 'ax-icon ax-icon-info-fill';\n break;\n default:\n this._icon = this.config.icon || 'ax-icon ax-icon-check-circle-fill';\n break;\n }\n } else {\n this._icon = this.config.icon;\n }\n }\n\n protected _handleButtonClick(button: AXNotificationButtonItem) {\n if (button.onClick) {\n button.onClick({ source: button });\n }\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-${this.config.color}`;\n }\n\n close() {\n this.dialogRef.close({\n component: this,\n htmlElement: this.getHostElement(),\n });\n }\n}\n","<span class=\"ax-notification-icon {{_icon}}\"></span>\n<div class=\"ax-notification-content\">\n <div class=\"ax-notification-title\">{{ config.title }}</div>\n <ng-template *ngIf=\"_selectedPortal\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\"></ng-template>\n </ng-template>\n <div *ngIf=\"!_selectedPortal\">{{ config.content }}</div>\n <div class=\"ax-notification-buttons\" *ngIf=\"config.buttons?.length\">\n <ng-container *ngFor=\"let button of config.buttons\">\n <ax-button class=\"ax-xs\" [text]=\"button.text\" [color]=\"button.color\" [look]=\"button.look\"\n [disabled]=\"button.disabled\" (onClick)=\"_handleButtonClick(button)\">\n <ax-loading *ngIf=\"button.loading\"></ax-loading>\n </ax-button>\n </ng-container>\n\n </div>\n</div>\n<ax-close-button *ngIf=\"config.closeButton\"></ax-close-button>\n<div class=\"ax-notification-progress\" [style.animation-duration.ms]=\"config.timeOut\"\n *ngIf=\"config.timeOutProgress && config.timeOut\"></div>","import { Injectable, inject } from '@angular/core';\nimport { AXNotificationOptions as AXNotificationDisplayConfig, AXNotificationRef } from './notification.class';\nimport { AXNotificationComponent } from './notification.component';\nimport { Dialog } from '@angular/cdk/dialog';\nimport { GlobalPositionStrategy } from '@angular/cdk/overlay';\nimport { AXComponentCloseEvent } from '@acorex/components/common';\nimport { AXNotificationConfig, AX_NOTIFICATION_CONFIG } from './notification.config';\n\n@Injectable()\nexport class AXNotificationService {\n\n private dialog: Dialog = inject(Dialog);\n private defaultConfig: AXNotificationConfig = inject(AX_NOTIFICATION_CONFIG);\n\n\n show(config: AXNotificationDisplayConfig): AXNotificationRef {\n config = Object.assign(\n {\n closeButton: true,\n location: this.defaultConfig.location,\n },\n config\n );\n const gap = this.defaultConfig.gap;\n\n let positionStrategy = new GlobalPositionStrategy();\n const pos = this.getPosition(config.location) + gap + 'px';\n switch (config.location) {\n case 'bottom-center':\n positionStrategy = positionStrategy.bottom(pos).centerHorizontally();\n break;\n case 'bottom-end':\n positionStrategy = positionStrategy.bottom(pos).right(gap + 'px');\n break;\n case 'bottom-start':\n positionStrategy = positionStrategy.bottom(pos).left(gap + 'px');\n break;\n case 'top-center':\n positionStrategy = positionStrategy.top(pos).centerHorizontally();\n break;\n case 'top-end':\n positionStrategy = positionStrategy.top(pos).right(gap + 'px');\n break;\n case 'top-start':\n positionStrategy = positionStrategy.top(pos).left(gap + 'px');\n break;\n case 'center-start':\n positionStrategy = positionStrategy.centerVertically().left(gap + 'px');\n break;\n case 'center-end':\n positionStrategy = positionStrategy\n .centerVertically()\n .right(gap + 'px');\n break;\n default:\n break;\n }\n\n const dialogRef = this.dialog.open(AXNotificationComponent, {\n data: config,\n autoFocus: \"__no_element__\",\n restoreFocus: false,\n role: 'dialog',\n ariaModal: true,\n closeOnNavigation: true,\n closeOnDestroy: true,\n hasBackdrop: false,\n panelClass: ['ax-animate-animated', 'ax-animate-fadeIn', 'ax-animate-faster'],\n positionStrategy: positionStrategy\n });\n\n const toastRef = dialogRef.componentInstance as AXNotificationComponent;\n dialogRef.closed.subscribe(() => {\n this.reposition();\n })\n\n return {\n close: () => {\n toastRef.close();\n }\n }\n }\n\n public hideAll() {\n this.dialog.closeAll();\n }\n\n private reposition(): void {\n //TODO: reposition vertically afer close toast\n\n }\n\n private getPosition(location: string) {\n const list = this.dialog.openDialogs.map(c => c.componentInstance as AXNotificationComponent).filter(c => c.config.location == location);\n if (list.length == 0) return 0;\n if (location.split('-')[0] == 'bottom') {\n return window.innerHeight - list[list.length - 1].getHostElement().offsetTop;\n }\n else {\n return list[list.length - 1].getHostElement().offsetTop + list[list.length - 1].getHostElement().offsetHeight;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXNotificationComponent } from './notification.component';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXNotificationService } from './notification.service';\nimport { DialogModule } from '@angular/cdk/dialog';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\n\nconst COMPONENT = [AXNotificationComponent];\nconst MODULES = [CommonModule, PortalModule, AXButtonModule, DialogModule, AXLoadingModule, AXDecoratorModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [AXNotificationService],\n})\nexport class AXNotificationModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|