@acorex/components 21.0.2-next.33 → 21.0.2-next.35
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/{types/acorex-components-accordion.d.ts → accordion/index.d.ts} +1 -0
- package/{types/acorex-components-button.d.ts → button/index.d.ts} +5 -11
- package/{types/acorex-components-button-group.d.ts → button-group/index.d.ts} +12 -20
- package/{types/acorex-components-calendar.d.ts → calendar/index.d.ts} +11 -4
- package/{types/acorex-components-check-box.d.ts → check-box/index.d.ts} +1 -1
- package/{types/acorex-components-chips.d.ts → chips/index.d.ts} +8 -3
- package/collapse/README.md +3 -0
- package/collapse/index.d.ts +174 -0
- package/{types/acorex-components-color-palette.d.ts → color-palette/index.d.ts} +0 -2
- package/{types/acorex-components-conversation2.d.ts → conversation2/index.d.ts} +667 -667
- package/{types/acorex-components-data-pager.d.ts → data-pager/index.d.ts} +6 -25
- package/{types/acorex-components-data-table.d.ts → data-table/index.d.ts} +270 -12
- package/{types/acorex-components-datetime-box.d.ts → datetime-box/index.d.ts} +65 -4
- package/drawer-legacy/README.md +3 -0
- package/drawer-legacy/index.d.ts +86 -0
- package/{types/acorex-components-dropdown-button.d.ts → dropdown-button/index.d.ts} +2 -4
- package/fesm2022/acorex-components-accordion.mjs +37 -32
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +32 -32
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +21 -21
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-aspect-ratio.mjs +6 -6
- package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +14 -15
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-autocomplete.mjs +16 -16
- package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +17 -17
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +11 -11
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +15 -15
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +14 -14
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +28 -63
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +40 -41
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +59 -41
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +12 -12
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +15 -13
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +16 -18
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-code-editor.mjs +30 -30
- package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +366 -0
- package/fesm2022/acorex-components-collapse.mjs.map +1 -0
- package/fesm2022/acorex-components-color-box.mjs +16 -16
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +44 -85
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-command.mjs +20 -20
- package/fesm2022/acorex-components-command.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +37 -37
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +119 -119
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation2.mjs +708 -720
- package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
- package/fesm2022/acorex-components-cron-job.mjs +60 -60
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-list.mjs +34 -34
- package/fesm2022/acorex-components-data-list.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +85 -94
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +522 -75
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +162 -27
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +24 -24
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +30 -30
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +49 -56
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +20 -27
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
- package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-drawer.mjs +26 -25
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +11 -19
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +22 -22
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-editor.mjs +15 -15
- package/fesm2022/acorex-components-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-fab.mjs +18 -18
- package/fesm2022/acorex-components-fab.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +307 -0
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -0
- package/fesm2022/acorex-components-flow-chart.mjs +63 -80
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +39 -47
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +19 -18
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +93 -93
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +12 -12
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +13 -13
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kanban.mjs +26 -28
- package/fesm2022/acorex-components-kanban.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +17 -17
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +9 -9
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +16 -16
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +20 -20
- package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +23 -23
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +47 -47
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +85 -85
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +49 -49
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/{acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs → acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs} +29 -29
- package/fesm2022/acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs.map +1 -0
- package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs +212 -0
- package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs.map +1 -0
- package/fesm2022/acorex-components-modal.mjs +1 -1
- package/fesm2022/acorex-components-navbar.mjs +9 -9
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +29 -29
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box-legacy.mjs +430 -0
- package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-number-box.mjs +21 -21
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +13 -13
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-page.mjs.map +1 -1
- package/fesm2022/acorex-components-paint.mjs +65 -60
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +39 -31
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +10 -10
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +20 -20
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +33 -33
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +11 -11
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +25 -25
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +9 -11
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +21 -38
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +15 -16
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +9 -10
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +51 -53
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +36 -36
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +42 -27
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +39 -39
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +8 -8
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +8 -8
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-rrule.mjs +38 -38
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +235 -229
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +406 -334
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +22 -0
- package/fesm2022/acorex-components-scss.mjs.map +1 -0
- package/fesm2022/acorex-components-search-box.mjs +13 -19
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +27 -29
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +15 -15
- package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +12 -12
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +44 -44
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +8 -8
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +13 -13
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +28 -28
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +41 -41
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +14 -14
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +22 -22
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +20 -20
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +10 -10
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +9 -9
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +14 -14
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +31 -29
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +21 -21
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +27 -27
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +14 -14
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +17 -17
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view-legacy.mjs +511 -0
- package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-tree-view.mjs +57 -57
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +18 -18
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +10 -10
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +58 -58
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/file-explorer/README.md +3 -0
- package/file-explorer/index.d.ts +103 -0
- package/{types/acorex-components-flow-chart.d.ts → flow-chart/index.d.ts} +0 -4
- package/{types/acorex-components-form.d.ts → form/index.d.ts} +24 -24
- package/{types/acorex-components-grid-layout-builder.d.ts → grid-layout-builder/index.d.ts} +1 -0
- package/{types/acorex-components-loading.d.ts → loading/index.d.ts} +1 -1
- package/{types/acorex-components-menu.d.ts → menu/index.d.ts} +6 -6
- package/number-box-legacy/README.md +3 -0
- package/number-box-legacy/index.d.ts +191 -0
- package/package.json +138 -115
- package/{types/acorex-components-paint.d.ts → paint/index.d.ts} +6 -1
- package/{types/acorex-components-qrcode.d.ts → qrcode/index.d.ts} +0 -1
- package/{types/acorex-components-radio.d.ts → radio/index.d.ts} +1 -1
- package/{types/acorex-components-rate-picker.d.ts → rate-picker/index.d.ts} +15 -5
- package/{types/acorex-components-scheduler.d.ts → scheduler/index.d.ts} +20 -2
- package/{types/acorex-components-scheduler-picker.d.ts → scheduler-picker/index.d.ts} +81 -82
- package/scss/README.md +3 -0
- package/scss/index.d.ts +10 -0
- package/{types/acorex-components-select-box.d.ts → select-box/index.d.ts} +1 -2
- package/{types/acorex-components-slider.d.ts → slider/index.d.ts} +2 -2
- package/{types/acorex-components-tabs.d.ts → tabs/index.d.ts} +1 -1
- package/{types/acorex-components-tag.d.ts → tag/index.d.ts} +3 -3
- package/tree-view-legacy/README.md +3 -0
- package/tree-view-legacy/index.d.ts +184 -0
- package/fesm2022/acorex-components-modal-acorex-components-modal-BGSCJ1Ux.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs +0 -214
- package/fesm2022/acorex-components-modal-modal-content.component-CEdB5dcg.mjs.map +0 -1
- package/{types/acorex-components-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
- package/{types/acorex-components-alert.d.ts → alert/index.d.ts} +0 -0
- package/{types/acorex-components-aspect-ratio.d.ts → aspect-ratio/index.d.ts} +0 -0
- package/{types/acorex-components-audio-wave.d.ts → audio-wave/index.d.ts} +0 -0
- package/{types/acorex-components-autocomplete.d.ts → autocomplete/index.d.ts} +0 -0
- package/{types/acorex-components-avatar.d.ts → avatar/index.d.ts} +0 -0
- package/{types/acorex-components-badge.d.ts → badge/index.d.ts} +0 -0
- package/{types/acorex-components-bottom-navigation.d.ts → bottom-navigation/index.d.ts} +0 -0
- package/{types/acorex-components-breadcrumbs.d.ts → breadcrumbs/index.d.ts} +0 -0
- package/{types/acorex-components-circular-progress.d.ts → circular-progress/index.d.ts} +0 -0
- package/{types/acorex-components-code-editor.d.ts → code-editor/index.d.ts} +0 -0
- package/{types/acorex-components-color-box.d.ts → color-box/index.d.ts} +0 -0
- package/{types/acorex-components-command.d.ts → command/index.d.ts} +0 -0
- package/{types/acorex-components-comment.d.ts → comment/index.d.ts} +0 -0
- package/{types/acorex-components-conversation.d.ts → conversation/index.d.ts} +0 -0
- package/{types/acorex-components-cron-job.d.ts → cron-job/index.d.ts} +0 -0
- package/{types/acorex-components-data-list.d.ts → data-list/index.d.ts} +0 -0
- package/{types/acorex-components-datetime-input.d.ts → datetime-input/index.d.ts} +0 -0
- package/{types/acorex-components-datetime-picker.d.ts → datetime-picker/index.d.ts} +0 -0
- package/{types/acorex-components-decorators.d.ts → decorators/index.d.ts} +0 -0
- package/{types/acorex-components-dialog.d.ts → dialog/index.d.ts} +0 -0
- package/{types/acorex-components-drawer.d.ts → drawer/index.d.ts} +0 -0
- package/{types/acorex-components-dropdown.d.ts → dropdown/index.d.ts} +0 -0
- package/{types/acorex-components-editor.d.ts → editor/index.d.ts} +0 -0
- package/{types/acorex-components-fab.d.ts → fab/index.d.ts} +0 -0
- package/{types/acorex-components-image.d.ts → image/index.d.ts} +0 -0
- package/{types/acorex-components-image-editor.d.ts → image-editor/index.d.ts} +0 -0
- package/{types/acorex-components.d.ts → index.d.ts} +0 -0
- package/{types/acorex-components-json-viewer.d.ts → json-viewer/index.d.ts} +0 -0
- package/{types/acorex-components-kanban.d.ts → kanban/index.d.ts} +0 -0
- package/{types/acorex-components-kbd.d.ts → kbd/index.d.ts} +0 -0
- package/{types/acorex-components-label.d.ts → label/index.d.ts} +0 -0
- package/{types/acorex-components-list.d.ts → list/index.d.ts} +0 -0
- package/{types/acorex-components-loading-dialog.d.ts → loading-dialog/index.d.ts} +0 -0
- package/{types/acorex-components-map.d.ts → map/index.d.ts} +0 -0
- package/{types/acorex-components-media-viewer.d.ts → media-viewer/index.d.ts} +0 -0
- package/{types/acorex-components-modal.d.ts → modal/index.d.ts} +0 -0
- package/{types/acorex-components-navbar.d.ts → navbar/index.d.ts} +0 -0
- package/{types/acorex-components-notification.d.ts → notification/index.d.ts} +0 -0
- package/{types/acorex-components-number-box.d.ts → number-box/index.d.ts} +0 -0
- package/{types/acorex-components-otp.d.ts → otp/index.d.ts} +0 -0
- package/{types/acorex-components-page.d.ts → page/index.d.ts} +0 -0
- package/{types/acorex-components-password-box.d.ts → password-box/index.d.ts} +0 -0
- package/{types/acorex-components-pdf-reader.d.ts → pdf-reader/index.d.ts} +0 -0
- package/{types/acorex-components-phone-box.d.ts → phone-box/index.d.ts} +0 -0
- package/{types/acorex-components-picker.d.ts → picker/index.d.ts} +0 -0
- package/{types/acorex-components-popover.d.ts → popover/index.d.ts} +0 -0
- package/{types/acorex-components-popup.d.ts → popup/index.d.ts} +0 -0
- package/{types/acorex-components-progress-bar.d.ts → progress-bar/index.d.ts} +0 -0
- package/{types/acorex-components-query-builder.d.ts → query-builder/index.d.ts} +1 -1
- /package/{types/acorex-components-rail-navigation.d.ts → rail-navigation/index.d.ts} +0 -0
- /package/{types/acorex-components-range-slider.d.ts → range-slider/index.d.ts} +0 -0
- /package/{types/acorex-components-rest-api-generator.d.ts → rest-api-generator/index.d.ts} +0 -0
- /package/{types/acorex-components-result.d.ts → result/index.d.ts} +0 -0
- /package/{types/acorex-components-routing-progress.d.ts → routing-progress/index.d.ts} +0 -0
- /package/{types/acorex-components-rrule.d.ts → rrule/index.d.ts} +0 -0
- /package/{types/acorex-components-search-box.d.ts → search-box/index.d.ts} +0 -0
- /package/{types/acorex-components-selection-list.d.ts → selection-list/index.d.ts} +0 -0
- /package/{types/acorex-components-selection-list-2.d.ts → selection-list-2/index.d.ts} +0 -0
- /package/{types/acorex-components-side-menu.d.ts → side-menu/index.d.ts} +0 -0
- /package/{types/acorex-components-skeleton.d.ts → skeleton/index.d.ts} +0 -0
- /package/{types/acorex-components-sliding-item.d.ts → sliding-item/index.d.ts} +0 -0
- /package/{types/acorex-components-step-wizard.d.ts → step-wizard/index.d.ts} +0 -0
- /package/{types/acorex-components-switch.d.ts → switch/index.d.ts} +0 -0
- /package/{types/acorex-components-tag-box.d.ts → tag-box/index.d.ts} +0 -0
- /package/{types/acorex-components-text-area.d.ts → text-area/index.d.ts} +0 -0
- /package/{types/acorex-components-text-box.d.ts → text-box/index.d.ts} +0 -0
- /package/{types/acorex-components-time-duration.d.ts → time-duration/index.d.ts} +0 -0
- /package/{types/acorex-components-time-line.d.ts → time-line/index.d.ts} +0 -0
- /package/{types/acorex-components-toast.d.ts → toast/index.d.ts} +0 -0
- /package/{types/acorex-components-toolbar.d.ts → toolbar/index.d.ts} +0 -0
- /package/{types/acorex-components-tooltip.d.ts → tooltip/index.d.ts} +0 -0
- /package/{types/acorex-components-tree-view.d.ts → tree-view/index.d.ts} +0 -0
- /package/{types/acorex-components-uploader.d.ts → uploader/index.d.ts} +0 -0
- /package/{types/acorex-components-video-player.d.ts → video-player/index.d.ts} +0 -0
- /package/{types/acorex-components-wysiwyg.d.ts → wysiwyg/index.d.ts} +0 -0
|
@@ -18,6 +18,62 @@ import { AXChipsModule } from '@acorex/components/chips';
|
|
|
18
18
|
import * as i1$1 from '@acorex/components/decorators';
|
|
19
19
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
20
20
|
|
|
21
|
+
/**
|
|
22
|
+
* Interval selector component
|
|
23
|
+
* Allows user to select "Every X [units]"
|
|
24
|
+
*/
|
|
25
|
+
class AXSchedulerPickerIntervalSelectorComponent {
|
|
26
|
+
constructor() {
|
|
27
|
+
/**
|
|
28
|
+
* Current interval value
|
|
29
|
+
*/
|
|
30
|
+
this.interval = input.required(...(ngDevMode ? [{ debugName: "interval" }] : []));
|
|
31
|
+
/**
|
|
32
|
+
* Configuration
|
|
33
|
+
*/
|
|
34
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
35
|
+
/**
|
|
36
|
+
* Emits when interval changes
|
|
37
|
+
*/
|
|
38
|
+
this.intervalChange = output();
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Handle interval value change
|
|
42
|
+
*/
|
|
43
|
+
onIntervalChange(value) {
|
|
44
|
+
if (value && value > 0) {
|
|
45
|
+
this.intervalChange.emit(value);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Get unit translation key based on mode
|
|
50
|
+
*/
|
|
51
|
+
getUnitKey() {
|
|
52
|
+
const mode = this.config().mode;
|
|
53
|
+
const pluralKey = this.interval() === 1 ? 'singular' : 'plural';
|
|
54
|
+
switch (mode) {
|
|
55
|
+
case 'hourly':
|
|
56
|
+
return `@acorex:schedulerPicker.units.hour.${pluralKey}`;
|
|
57
|
+
case 'daily':
|
|
58
|
+
return `@acorex:schedulerPicker.units.day.${pluralKey}`;
|
|
59
|
+
case 'weekly':
|
|
60
|
+
return `@acorex:schedulerPicker.units.week.${pluralKey}`;
|
|
61
|
+
case 'monthly':
|
|
62
|
+
return `@acorex:schedulerPicker.units.month.${pluralKey}`;
|
|
63
|
+
case 'yearly':
|
|
64
|
+
return `@acorex:schedulerPicker.units.year.${pluralKey}`;
|
|
65
|
+
default:
|
|
66
|
+
return '@acorex:schedulerPicker.units.day.plural';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerIntervalSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
70
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerIntervalSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-interval-selector", inputs: { interval: { classPropertyName: "interval", publicName: "interval", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { intervalChange: "intervalChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-interval-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.repeatEvery' | translate | async }}\n </label>\n <div class=\"ax-scheduler-picker-interval-input-group\">\n <ax-number-box\n [value]=\"interval()\"\n [minValue]=\"config().minInterval || 1\"\n [maxValue]=\"config().maxInterval || 999\"\n [disabled]=\"false\"\n (valueChange)=\"onIntervalChange($event)\"\n />\n <span class=\"ax-scheduler-picker-interval-unit\">\n {{ getUnitKey() | translate | async }}\n </span>\n </div>\n</div>\n", styles: [".ax-scheduler-picker-interval-selector{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}.ax-scheduler-picker-interval-input-group{display:flex;align-items:center;gap:.375rem}.ax-scheduler-picker-interval-input-group ax-number-box{width:80px}.ax-scheduler-picker-interval-input-group .ax-scheduler-picker-interval-unit{color:var(--ax-comp-scheduler-picker-label-color);font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
71
|
+
}
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerIntervalSelectorComponent, decorators: [{
|
|
73
|
+
type: Component,
|
|
74
|
+
args: [{ selector: 'ax-scheduler-picker-interval-selector', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXNumberBoxComponent, AXTranslatorPipe, AsyncPipe], template: "<div class=\"ax-scheduler-picker-interval-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.repeatEvery' | translate | async }}\n </label>\n <div class=\"ax-scheduler-picker-interval-input-group\">\n <ax-number-box\n [value]=\"interval()\"\n [minValue]=\"config().minInterval || 1\"\n [maxValue]=\"config().maxInterval || 999\"\n [disabled]=\"false\"\n (valueChange)=\"onIntervalChange($event)\"\n />\n <span class=\"ax-scheduler-picker-interval-unit\">\n {{ getUnitKey() | translate | async }}\n </span>\n </div>\n</div>\n", styles: [".ax-scheduler-picker-interval-selector{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}.ax-scheduler-picker-interval-input-group{display:flex;align-items:center;gap:.375rem}.ax-scheduler-picker-interval-input-group ax-number-box{width:80px}.ax-scheduler-picker-interval-input-group .ax-scheduler-picker-interval-unit{color:var(--ax-comp-scheduler-picker-label-color);font-size:.875rem}\n"] }]
|
|
75
|
+
}] });
|
|
76
|
+
|
|
21
77
|
/**
|
|
22
78
|
* Constants for scheduler picker module
|
|
23
79
|
*/
|
|
@@ -98,68 +154,12 @@ const AX_SCHEDULER_PICKER_WEEKDAY_END = 5; // Friday
|
|
|
98
154
|
*/
|
|
99
155
|
const AX_SCHEDULER_PICKER_DEFAULT_OCCURRENCES = 10;
|
|
100
156
|
|
|
101
|
-
/**
|
|
102
|
-
* Interval selector component
|
|
103
|
-
* Allows user to select "Every X [units]"
|
|
104
|
-
*/
|
|
105
|
-
class AXSchedulerPickerIntervalSelectorComponent {
|
|
106
|
-
constructor() {
|
|
107
|
-
/**
|
|
108
|
-
* Current interval value
|
|
109
|
-
*/
|
|
110
|
-
this.interval = input.required(...(ngDevMode ? [{ debugName: "interval" }] : /* istanbul ignore next */ []));
|
|
111
|
-
/**
|
|
112
|
-
* Configuration
|
|
113
|
-
*/
|
|
114
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []));
|
|
115
|
-
/**
|
|
116
|
-
* Emits when interval changes
|
|
117
|
-
*/
|
|
118
|
-
this.intervalChange = output();
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Handle interval value change
|
|
122
|
-
*/
|
|
123
|
-
onIntervalChange(value) {
|
|
124
|
-
if (value && value > 0) {
|
|
125
|
-
this.intervalChange.emit(value);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Get unit translation key based on mode
|
|
130
|
-
*/
|
|
131
|
-
getUnitKey() {
|
|
132
|
-
const mode = this.config().mode;
|
|
133
|
-
const pluralKey = this.interval() === 1 ? 'singular' : 'plural';
|
|
134
|
-
switch (mode) {
|
|
135
|
-
case 'hourly':
|
|
136
|
-
return `@acorex:schedulerPicker.units.hour.${pluralKey}`;
|
|
137
|
-
case 'daily':
|
|
138
|
-
return `@acorex:schedulerPicker.units.day.${pluralKey}`;
|
|
139
|
-
case 'weekly':
|
|
140
|
-
return `@acorex:schedulerPicker.units.week.${pluralKey}`;
|
|
141
|
-
case 'monthly':
|
|
142
|
-
return `@acorex:schedulerPicker.units.month.${pluralKey}`;
|
|
143
|
-
case 'yearly':
|
|
144
|
-
return `@acorex:schedulerPicker.units.year.${pluralKey}`;
|
|
145
|
-
default:
|
|
146
|
-
return '@acorex:schedulerPicker.units.day.plural';
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSchedulerPickerIntervalSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
150
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXSchedulerPickerIntervalSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-interval-selector", inputs: { interval: { classPropertyName: "interval", publicName: "interval", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { intervalChange: "intervalChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-interval-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.repeatEvery' | translate | async }}\n </label>\n <div class=\"ax-scheduler-picker-interval-input-group\">\n <ax-number-box\n [value]=\"interval()\"\n [minValue]=\"config().minInterval || 1\"\n [maxValue]=\"config().maxInterval || 999\"\n [disabled]=\"false\"\n (valueChange)=\"onIntervalChange($event)\"\n />\n <span class=\"ax-scheduler-picker-interval-unit\">\n {{ getUnitKey() | translate | async }}\n </span>\n </div>\n</div>\n", styles: [".ax-scheduler-picker-interval-selector{flex-direction:column;gap:.375rem;display:flex}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}.ax-scheduler-picker-interval-input-group{align-items:center;gap:.375rem;display:flex}.ax-scheduler-picker-interval-input-group ax-number-box{width:80px}.ax-scheduler-picker-interval-input-group .ax-scheduler-picker-interval-unit{color:var(--ax-comp-scheduler-picker-label-color);font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
151
|
-
}
|
|
152
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSchedulerPickerIntervalSelectorComponent, decorators: [{
|
|
153
|
-
type: Component,
|
|
154
|
-
args: [{ selector: 'ax-scheduler-picker-interval-selector', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXNumberBoxComponent, AXTranslatorPipe, AsyncPipe], template: "<div class=\"ax-scheduler-picker-interval-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.repeatEvery' | translate | async }}\n </label>\n <div class=\"ax-scheduler-picker-interval-input-group\">\n <ax-number-box\n [value]=\"interval()\"\n [minValue]=\"config().minInterval || 1\"\n [maxValue]=\"config().maxInterval || 999\"\n [disabled]=\"false\"\n (valueChange)=\"onIntervalChange($event)\"\n />\n <span class=\"ax-scheduler-picker-interval-unit\">\n {{ getUnitKey() | translate | async }}\n </span>\n </div>\n</div>\n", styles: [".ax-scheduler-picker-interval-selector{flex-direction:column;gap:.375rem;display:flex}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}.ax-scheduler-picker-interval-input-group{align-items:center;gap:.375rem;display:flex}.ax-scheduler-picker-interval-input-group ax-number-box{width:80px}.ax-scheduler-picker-interval-input-group .ax-scheduler-picker-interval-unit{color:var(--ax-comp-scheduler-picker-label-color);font-size:.875rem}\n"] }]
|
|
155
|
-
}], propDecorators: { interval: [{ type: i0.Input, args: [{ isSignal: true, alias: "interval", required: true }] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: true }] }], intervalChange: [{ type: i0.Output, args: ["intervalChange"] }] } });
|
|
156
|
-
|
|
157
157
|
class AXSchedulerPickerDailyPanelComponent {
|
|
158
158
|
constructor() {
|
|
159
|
-
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
160
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
159
|
+
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
160
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
161
161
|
this.patternChange = output();
|
|
162
|
-
this.weekdayOnly = signal(false, ...(ngDevMode ? [{ debugName: "weekdayOnly" }] :
|
|
162
|
+
this.weekdayOnly = signal(false, ...(ngDevMode ? [{ debugName: "weekdayOnly" }] : []));
|
|
163
163
|
// Initialize weekdayOnly from pattern
|
|
164
164
|
effect(() => {
|
|
165
165
|
const pattern = this.pattern();
|
|
@@ -184,25 +184,31 @@ class AXSchedulerPickerDailyPanelComponent {
|
|
|
184
184
|
},
|
|
185
185
|
});
|
|
186
186
|
}
|
|
187
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
188
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
187
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerDailyPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
188
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerDailyPanelComponent, isStandalone: true, selector: "ax-scheduler-picker-daily-panel", inputs: { pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { patternChange: "patternChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-daily-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Weekdays only switch -->\n @if (config().options?.showWeekdaysOnly) {\n <div class=\"ax-scheduler-picker-weekdays-only\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.weekdaysOnly' | translate | async }}\n </label>\n <ax-switch [value]=\"weekdayOnly()\" (valueChange)=\"onWeekdayOnlyChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-daily-panel{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-weekday-option{display:flex;align-items:center;justify-content:space-between;padding:.25rem 0}.ax-scheduler-picker-time-selection{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "component", type: AXSchedulerPickerIntervalSelectorComponent, selector: "ax-scheduler-picker-interval-selector", inputs: ["interval", "config"], outputs: ["intervalChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
189
189
|
}
|
|
190
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerDailyPanelComponent, decorators: [{
|
|
191
191
|
type: Component,
|
|
192
|
-
args: [{ selector: 'ax-scheduler-picker-daily-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
193
|
-
|
|
192
|
+
args: [{ selector: 'ax-scheduler-picker-daily-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
193
|
+
FormsModule,
|
|
194
|
+
AXSwitchComponent,
|
|
195
|
+
AXTranslatorPipe,
|
|
196
|
+
AsyncPipe,
|
|
197
|
+
AXSchedulerPickerIntervalSelectorComponent,
|
|
198
|
+
], template: "<div class=\"ax-scheduler-picker-daily-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Weekdays only switch -->\n @if (config().options?.showWeekdaysOnly) {\n <div class=\"ax-scheduler-picker-weekdays-only\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.weekdaysOnly' | translate | async }}\n </label>\n <ax-switch [value]=\"weekdayOnly()\" (valueChange)=\"onWeekdayOnlyChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-daily-panel{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-weekday-option{display:flex;align-items:center;justify-content:space-between;padding:.25rem 0}.ax-scheduler-picker-time-selection{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"] }]
|
|
199
|
+
}], ctorParameters: () => [] });
|
|
194
200
|
|
|
195
201
|
class AXSchedulerPickerHourlyPanelComponent {
|
|
196
202
|
constructor() {
|
|
197
|
-
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
198
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
203
|
+
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
204
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
199
205
|
this.patternChange = output();
|
|
200
206
|
}
|
|
201
207
|
onIntervalChange(interval) {
|
|
202
208
|
this.patternChange.emit({ interval });
|
|
203
209
|
}
|
|
204
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
205
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
210
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerHourlyPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
211
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerHourlyPanelComponent, isStandalone: true, selector: "ax-scheduler-picker-hourly-panel", inputs: { pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { patternChange: "patternChange" }, ngImport: i0, template: `
|
|
206
212
|
<div class="ax-scheduler-picker-hourly-panel">
|
|
207
213
|
@if (config().options?.showInterval) {
|
|
208
214
|
<ax-scheduler-picker-interval-selector
|
|
@@ -214,7 +220,7 @@ class AXSchedulerPickerHourlyPanelComponent {
|
|
|
214
220
|
</div>
|
|
215
221
|
`, isInline: true, styles: [".ax-scheduler-picker-hourly-panel{display:flex;flex-direction:column;gap:.75rem}\n"], dependencies: [{ kind: "component", type: AXSchedulerPickerIntervalSelectorComponent, selector: "ax-scheduler-picker-interval-selector", inputs: ["interval", "config"], outputs: ["intervalChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
216
222
|
}
|
|
217
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerHourlyPanelComponent, decorators: [{
|
|
218
224
|
type: Component,
|
|
219
225
|
args: [{ selector: 'ax-scheduler-picker-hourly-panel', template: `
|
|
220
226
|
<div class="ax-scheduler-picker-hourly-panel">
|
|
@@ -227,14 +233,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
227
233
|
}
|
|
228
234
|
</div>
|
|
229
235
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXSchedulerPickerIntervalSelectorComponent], styles: [".ax-scheduler-picker-hourly-panel{display:flex;flex-direction:column;gap:.75rem}\n"] }]
|
|
230
|
-
}]
|
|
236
|
+
}] });
|
|
231
237
|
|
|
232
238
|
class AXSchedulerPickerDaySelectorComponent {
|
|
233
239
|
constructor() {
|
|
234
240
|
/**
|
|
235
241
|
* Selected day numbers (1-31)
|
|
236
242
|
*/
|
|
237
|
-
this.days = input(...(ngDevMode ? [undefined, { debugName: "days" }] :
|
|
243
|
+
this.days = input(...(ngDevMode ? [undefined, { debugName: "days" }] : []));
|
|
238
244
|
/**
|
|
239
245
|
* Emits when day selection changes
|
|
240
246
|
*/
|
|
@@ -251,8 +257,8 @@ class AXSchedulerPickerDaySelectorComponent {
|
|
|
251
257
|
const selectedDays = Array.isArray(event.value) ? event.value : [event.value];
|
|
252
258
|
this.daysChange.emit(selectedDays.sort((a, b) => a - b));
|
|
253
259
|
}
|
|
254
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
255
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
260
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerDaySelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
261
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerDaySelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-day-selector", inputs: { days: { classPropertyName: "days", publicName: "days", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { daysChange: "daysChange" }, ngImport: i0, template: `
|
|
256
262
|
<div class="ax-scheduler-picker-day-selector">
|
|
257
263
|
<label class="ax-scheduler-picker-label">
|
|
258
264
|
{{ '@acorex:schedulerPicker.labels.selectDays' | translate | async }}
|
|
@@ -268,7 +274,7 @@ class AXSchedulerPickerDaySelectorComponent {
|
|
|
268
274
|
</div>
|
|
269
275
|
`, isInline: true, styles: [".ax-scheduler-picker-day-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-select-box{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
270
276
|
}
|
|
271
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
277
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerDaySelectorComponent, decorators: [{
|
|
272
278
|
type: Component,
|
|
273
279
|
args: [{ selector: 'ax-scheduler-picker-day-selector', template: `
|
|
274
280
|
<div class="ax-scheduler-picker-day-selector">
|
|
@@ -285,20 +291,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
285
291
|
/>
|
|
286
292
|
</div>
|
|
287
293
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectBoxComponent, AXTranslatorPipe, AsyncPipe], styles: [".ax-scheduler-picker-day-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-select-box{width:100%}\n"] }]
|
|
288
|
-
}]
|
|
294
|
+
}] });
|
|
289
295
|
|
|
290
296
|
class AXSchedulerPickerOccurrenceSelectorComponent {
|
|
291
297
|
constructor() {
|
|
292
298
|
/**
|
|
293
299
|
* Current occurrence selection (position + day)
|
|
294
300
|
*/
|
|
295
|
-
this.occurrence = input(...(ngDevMode ? [undefined, { debugName: "occurrence" }] :
|
|
301
|
+
this.occurrence = input(...(ngDevMode ? [undefined, { debugName: "occurrence" }] : []));
|
|
296
302
|
/**
|
|
297
303
|
* Emits when occurrence selection changes
|
|
298
304
|
*/
|
|
299
305
|
this.occurrenceChange = output();
|
|
300
|
-
this.selectedPosition = signal(1, ...(ngDevMode ? [{ debugName: "selectedPosition" }] :
|
|
301
|
-
this.selectedDay = signal(1, ...(ngDevMode ? [{ debugName: "selectedDay" }] :
|
|
306
|
+
this.selectedPosition = signal(1, ...(ngDevMode ? [{ debugName: "selectedPosition" }] : []));
|
|
307
|
+
this.selectedDay = signal(1, ...(ngDevMode ? [{ debugName: "selectedDay" }] : []));
|
|
302
308
|
this.positions = AX_SCHEDULER_PICKER_OCCURRENCE_POSITIONS.map((pos) => ({
|
|
303
309
|
...pos,
|
|
304
310
|
text: `@acorex:schedulerPicker.positions.${pos.key}`,
|
|
@@ -337,8 +343,8 @@ class AXSchedulerPickerOccurrenceSelectorComponent {
|
|
|
337
343
|
day: this.selectedDay(),
|
|
338
344
|
});
|
|
339
345
|
}
|
|
340
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
341
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
346
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerOccurrenceSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
347
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerOccurrenceSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-occurrence-selector", inputs: { occurrence: { classPropertyName: "occurrence", publicName: "occurrence", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { occurrenceChange: "occurrenceChange" }, ngImport: i0, template: `
|
|
342
348
|
<div class="ax-scheduler-picker-occurrence-selector">
|
|
343
349
|
<label class="ax-scheduler-picker-label">
|
|
344
350
|
{{ '@acorex:schedulerPicker.labels.occurrence' | translate | async }}
|
|
@@ -363,7 +369,7 @@ class AXSchedulerPickerOccurrenceSelectorComponent {
|
|
|
363
369
|
</div>
|
|
364
370
|
`, isInline: true, styles: [".ax-scheduler-picker-occurrence-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-row{display:flex;gap:.5rem}.ax-scheduler-picker-row>*{flex:1}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
365
371
|
}
|
|
366
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
372
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerOccurrenceSelectorComponent, decorators: [{
|
|
367
373
|
type: Component,
|
|
368
374
|
args: [{ selector: 'ax-scheduler-picker-occurrence-selector', template: `
|
|
369
375
|
<div class="ax-scheduler-picker-occurrence-selector">
|
|
@@ -389,15 +395,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
389
395
|
</div>
|
|
390
396
|
</div>
|
|
391
397
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectBoxComponent, AXTranslatorPipe, AsyncPipe], styles: [".ax-scheduler-picker-occurrence-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-row{display:flex;gap:.5rem}.ax-scheduler-picker-row>*{flex:1}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"] }]
|
|
392
|
-
}], ctorParameters: () => []
|
|
398
|
+
}], ctorParameters: () => [] });
|
|
393
399
|
|
|
394
400
|
class AXSchedulerPickerMonthlyPanelComponent {
|
|
395
401
|
constructor() {
|
|
396
|
-
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
397
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
402
|
+
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
403
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
398
404
|
this.patternChange = output();
|
|
399
|
-
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] :
|
|
400
|
-
this.occurrence = signal(null, ...(ngDevMode ? [{ debugName: "occurrence" }] :
|
|
405
|
+
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] : []));
|
|
406
|
+
this.occurrence = signal(null, ...(ngDevMode ? [{ debugName: "occurrence" }] : []));
|
|
401
407
|
// Initialize state from pattern
|
|
402
408
|
effect(() => {
|
|
403
409
|
const pattern = this.pattern();
|
|
@@ -435,17 +441,17 @@ class AXSchedulerPickerMonthlyPanelComponent {
|
|
|
435
441
|
},
|
|
436
442
|
});
|
|
437
443
|
}
|
|
438
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
439
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
444
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerMonthlyPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
445
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerMonthlyPanelComponent, isStandalone: true, selector: "ax-scheduler-picker-monthly-panel", inputs: { pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { patternChange: "patternChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-monthly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Specific Days Mode: Calendar day picker -->\n @if (config().options?.recurrenceMode === 'specificDays') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-monthly-panel{display:flex;flex-direction:column;gap:.5rem}\n"], dependencies: [{ kind: "component", type: AXSchedulerPickerIntervalSelectorComponent, selector: "ax-scheduler-picker-interval-selector", inputs: ["interval", "config"], outputs: ["intervalChange"] }, { kind: "component", type: AXSchedulerPickerDaySelectorComponent, selector: "ax-scheduler-picker-day-selector", inputs: ["days"], outputs: ["daysChange"] }, { kind: "component", type: AXSchedulerPickerOccurrenceSelectorComponent, selector: "ax-scheduler-picker-occurrence-selector", inputs: ["occurrence"], outputs: ["occurrenceChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
440
446
|
}
|
|
441
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
447
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerMonthlyPanelComponent, decorators: [{
|
|
442
448
|
type: Component,
|
|
443
449
|
args: [{ selector: 'ax-scheduler-picker-monthly-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
444
450
|
AXSchedulerPickerIntervalSelectorComponent,
|
|
445
451
|
AXSchedulerPickerDaySelectorComponent,
|
|
446
452
|
AXSchedulerPickerOccurrenceSelectorComponent,
|
|
447
|
-
], template: "<div class=\"ax-scheduler-picker-monthly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Specific Days Mode: Calendar day picker -->\n @if (config().options?.recurrenceMode === 'specificDays') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-monthly-panel{flex-direction:column;gap:.5rem
|
|
448
|
-
}], ctorParameters: () => []
|
|
453
|
+
], template: "<div class=\"ax-scheduler-picker-monthly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Specific Days Mode: Calendar day picker -->\n @if (config().options?.recurrenceMode === 'specificDays') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-monthly-panel{display:flex;flex-direction:column;gap:.5rem}\n"] }]
|
|
454
|
+
}], ctorParameters: () => [] });
|
|
449
455
|
|
|
450
456
|
/**
|
|
451
457
|
* Helper function to reorder days based on first day of week
|
|
@@ -498,10 +504,10 @@ function dateExistsInArray(date, dates) {
|
|
|
498
504
|
*/
|
|
499
505
|
class AXSchedulerPickerWeeklyPanelComponent {
|
|
500
506
|
constructor() {
|
|
501
|
-
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
502
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
507
|
+
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
508
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
503
509
|
this.patternChange = output();
|
|
504
|
-
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] :
|
|
510
|
+
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] : []));
|
|
505
511
|
this.dayItems = computed(() => {
|
|
506
512
|
const firstDay = this.config().firstDayOfWeek || 0;
|
|
507
513
|
const days = reorderDaysByFirstDay(firstDay);
|
|
@@ -509,7 +515,7 @@ class AXSchedulerPickerWeeklyPanelComponent {
|
|
|
509
515
|
...day,
|
|
510
516
|
text: `@acorex:schedulerPicker.days.${day.key}`,
|
|
511
517
|
}));
|
|
512
|
-
}, ...(ngDevMode ? [{ debugName: "dayItems" }] :
|
|
518
|
+
}, ...(ngDevMode ? [{ debugName: "dayItems" }] : []));
|
|
513
519
|
// Initialize selectedDays from pattern
|
|
514
520
|
effect(() => {
|
|
515
521
|
const pattern = this.pattern();
|
|
@@ -531,10 +537,10 @@ class AXSchedulerPickerWeeklyPanelComponent {
|
|
|
531
537
|
},
|
|
532
538
|
});
|
|
533
539
|
}
|
|
534
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
535
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
540
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerWeeklyPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
541
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerWeeklyPanelComponent, isStandalone: true, selector: "ax-scheduler-picker-weekly-panel", inputs: { pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { patternChange: "patternChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-weekly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Day selection -->\n @if (config().options?.showWeekdaySelection) {\n <div class=\"ax-scheduler-picker-day-selection\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.onDays' | translate | async }}\n </label>\n <ax-selection-list\n [items]=\"dayItems()\"\n [multiple]=\"true\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedDays()\"\n (onValueChanged)=\"onDaysChange($event)\"\n />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-weekly-panel{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-day-selection,.ax-scheduler-picker-time-selection{display:flex;flex-direction:column;gap:.375rem}ax-selection-list{width:100%}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i1.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXSchedulerPickerIntervalSelectorComponent, selector: "ax-scheduler-picker-interval-selector", inputs: ["interval", "config"], outputs: ["intervalChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
536
542
|
}
|
|
537
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
543
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerWeeklyPanelComponent, decorators: [{
|
|
538
544
|
type: Component,
|
|
539
545
|
args: [{ selector: 'ax-scheduler-picker-weekly-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
540
546
|
FormsModule,
|
|
@@ -542,15 +548,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
542
548
|
AXTranslatorPipe,
|
|
543
549
|
AsyncPipe,
|
|
544
550
|
AXSchedulerPickerIntervalSelectorComponent,
|
|
545
|
-
], template: "<div class=\"ax-scheduler-picker-weekly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Day selection -->\n @if (config().options?.showWeekdaySelection) {\n <div class=\"ax-scheduler-picker-day-selection\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.onDays' | translate | async }}\n </label>\n <ax-selection-list\n [items]=\"dayItems()\"\n [multiple]=\"true\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedDays()\"\n (onValueChanged)=\"onDaysChange($event)\"\n />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-weekly-panel{flex-direction:column;gap:.5rem
|
|
546
|
-
}], ctorParameters: () => []
|
|
551
|
+
], template: "<div class=\"ax-scheduler-picker-weekly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Day selection -->\n @if (config().options?.showWeekdaySelection) {\n <div class=\"ax-scheduler-picker-day-selection\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.onDays' | translate | async }}\n </label>\n <ax-selection-list\n [items]=\"dayItems()\"\n [multiple]=\"true\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedDays()\"\n (onValueChanged)=\"onDaysChange($event)\"\n />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-weekly-panel{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-day-selection,.ax-scheduler-picker-time-selection{display:flex;flex-direction:column;gap:.375rem}ax-selection-list{width:100%}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"] }]
|
|
552
|
+
}], ctorParameters: () => [] });
|
|
547
553
|
|
|
548
554
|
class AXSchedulerPickerMonthSelectorComponent {
|
|
549
555
|
constructor() {
|
|
550
556
|
/**
|
|
551
557
|
* Selected month indices (0-11)
|
|
552
558
|
*/
|
|
553
|
-
this.months = input(...(ngDevMode ? [undefined, { debugName: "months" }] :
|
|
559
|
+
this.months = input(...(ngDevMode ? [undefined, { debugName: "months" }] : []));
|
|
554
560
|
/**
|
|
555
561
|
* Emits when month selection changes
|
|
556
562
|
*/
|
|
@@ -567,8 +573,8 @@ class AXSchedulerPickerMonthSelectorComponent {
|
|
|
567
573
|
const selectedMonths = Array.isArray(event.value) ? event.value : [event.value];
|
|
568
574
|
this.monthsChange.emit(selectedMonths.sort((a, b) => a - b));
|
|
569
575
|
}
|
|
570
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
571
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
576
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerMonthSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
577
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerMonthSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-month-selector", inputs: { months: { classPropertyName: "months", publicName: "months", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { monthsChange: "monthsChange" }, ngImport: i0, template: `
|
|
572
578
|
<div class="ax-scheduler-picker-month-selector">
|
|
573
579
|
<label class="ax-scheduler-picker-label">
|
|
574
580
|
{{ '@acorex:schedulerPicker.labels.selectMonths' | translate | async }}
|
|
@@ -584,7 +590,7 @@ class AXSchedulerPickerMonthSelectorComponent {
|
|
|
584
590
|
</div>
|
|
585
591
|
`, isInline: true, styles: [".ax-scheduler-picker-month-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-select-box{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
586
592
|
}
|
|
587
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
593
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerMonthSelectorComponent, decorators: [{
|
|
588
594
|
type: Component,
|
|
589
595
|
args: [{ selector: 'ax-scheduler-picker-month-selector', template: `
|
|
590
596
|
<div class="ax-scheduler-picker-month-selector">
|
|
@@ -601,16 +607,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
601
607
|
/>
|
|
602
608
|
</div>
|
|
603
609
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectBoxComponent, AXTranslatorPipe, AsyncPipe], styles: [".ax-scheduler-picker-month-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-select-box{width:100%}\n"] }]
|
|
604
|
-
}]
|
|
610
|
+
}] });
|
|
605
611
|
|
|
606
612
|
class AXSchedulerPickerYearlyPanelComponent {
|
|
607
613
|
constructor() {
|
|
608
|
-
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
609
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
614
|
+
this.pattern = input.required(...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
615
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
610
616
|
this.patternChange = output();
|
|
611
|
-
this.selectedMonths = signal([], ...(ngDevMode ? [{ debugName: "selectedMonths" }] :
|
|
612
|
-
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] :
|
|
613
|
-
this.occurrence = signal(null, ...(ngDevMode ? [{ debugName: "occurrence" }] :
|
|
617
|
+
this.selectedMonths = signal([], ...(ngDevMode ? [{ debugName: "selectedMonths" }] : []));
|
|
618
|
+
this.selectedDays = signal([], ...(ngDevMode ? [{ debugName: "selectedDays" }] : []));
|
|
619
|
+
this.occurrence = signal(null, ...(ngDevMode ? [{ debugName: "occurrence" }] : []));
|
|
614
620
|
// Initialize state from pattern
|
|
615
621
|
effect(() => {
|
|
616
622
|
const pattern = this.pattern();
|
|
@@ -660,18 +666,18 @@ class AXSchedulerPickerYearlyPanelComponent {
|
|
|
660
666
|
},
|
|
661
667
|
});
|
|
662
668
|
}
|
|
663
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
664
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
669
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerYearlyPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
670
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerYearlyPanelComponent, isStandalone: true, selector: "ax-scheduler-picker-yearly-panel", inputs: { pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { patternChange: "patternChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-yearly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Month selector (independent of recurrence mode) -->\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n\n <!-- Specific Date Mode: Day picker -->\n @if (config().options?.recurrenceMode === 'specificDate') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Month + Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-yearly-panel{display:flex;flex-direction:column;gap:.5rem}\n"], dependencies: [{ kind: "component", type: AXSchedulerPickerIntervalSelectorComponent, selector: "ax-scheduler-picker-interval-selector", inputs: ["interval", "config"], outputs: ["intervalChange"] }, { kind: "component", type: AXSchedulerPickerMonthSelectorComponent, selector: "ax-scheduler-picker-month-selector", inputs: ["months"], outputs: ["monthsChange"] }, { kind: "component", type: AXSchedulerPickerDaySelectorComponent, selector: "ax-scheduler-picker-day-selector", inputs: ["days"], outputs: ["daysChange"] }, { kind: "component", type: AXSchedulerPickerOccurrenceSelectorComponent, selector: "ax-scheduler-picker-occurrence-selector", inputs: ["occurrence"], outputs: ["occurrenceChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
665
671
|
}
|
|
666
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
672
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerYearlyPanelComponent, decorators: [{
|
|
667
673
|
type: Component,
|
|
668
674
|
args: [{ selector: 'ax-scheduler-picker-yearly-panel', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
669
675
|
AXSchedulerPickerIntervalSelectorComponent,
|
|
670
676
|
AXSchedulerPickerMonthSelectorComponent,
|
|
671
677
|
AXSchedulerPickerDaySelectorComponent,
|
|
672
678
|
AXSchedulerPickerOccurrenceSelectorComponent,
|
|
673
|
-
], template: "<div class=\"ax-scheduler-picker-yearly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Month selector (independent of recurrence mode) -->\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n\n <!-- Specific Date Mode: Day picker -->\n @if (config().options?.recurrenceMode === 'specificDate') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Month + Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-yearly-panel{flex-direction:column;gap:.5rem
|
|
674
|
-
}], ctorParameters: () => []
|
|
679
|
+
], template: "<div class=\"ax-scheduler-picker-yearly-panel\">\n <!-- Interval selector -->\n @if (config().options?.showInterval) {\n <ax-scheduler-picker-interval-selector\n [interval]=\"pattern()?.interval || 1\"\n [config]=\"config()\"\n (intervalChange)=\"onIntervalChange($event)\"\n />\n }\n\n <!-- Month selector (independent of recurrence mode) -->\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n\n <!-- Specific Date Mode: Day picker -->\n @if (config().options?.recurrenceMode === 'specificDate') {\n <ax-scheduler-picker-day-selector\n [days]=\"selectedDays()\"\n (daysChange)=\"onDaysChange($event)\"\n />\n }\n\n <!-- Occurrence Mode: Month + Position + Weekday selectors -->\n @if (config().options?.recurrenceMode === 'occurrence') {\n @if (config().options?.showMonthSelection !== false) {\n <ax-scheduler-picker-month-selector\n [months]=\"selectedMonths()\"\n (monthsChange)=\"onMonthsChange($event)\"\n />\n }\n <ax-scheduler-picker-occurrence-selector\n [occurrence]=\"occurrence()\"\n (occurrenceChange)=\"onOccurrenceChange($event)\"\n />\n }\n</div>\n", styles: [".ax-scheduler-picker-yearly-panel{display:flex;flex-direction:column;gap:.5rem}\n"] }]
|
|
680
|
+
}], ctorParameters: () => [] });
|
|
675
681
|
|
|
676
682
|
/**
|
|
677
683
|
* Hourly mode default configuration
|
|
@@ -1364,24 +1370,68 @@ class AXSchedulerPickerService {
|
|
|
1364
1370
|
const key = ordinalKeys[position] || '1st';
|
|
1365
1371
|
return this.translationService.translateAsync(`@acorex:schedulerPicker.ordinals.${key}`);
|
|
1366
1372
|
}
|
|
1367
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1368
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1373
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1374
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerService, providedIn: 'root' }); }
|
|
1369
1375
|
}
|
|
1370
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerService, decorators: [{
|
|
1371
1377
|
type: Injectable,
|
|
1372
1378
|
args: [{
|
|
1373
1379
|
providedIn: 'root',
|
|
1374
1380
|
}]
|
|
1375
1381
|
}] });
|
|
1376
1382
|
|
|
1383
|
+
class AXSchedulerPickerStartConditionSelectorComponent {
|
|
1384
|
+
constructor() {
|
|
1385
|
+
this.startCondition = input(...(ngDevMode ? [undefined, { debugName: "startCondition" }] : []));
|
|
1386
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
1387
|
+
this.startConditionChange = output();
|
|
1388
|
+
this.selectedType = signal('now', ...(ngDevMode ? [{ debugName: "selectedType" }] : []));
|
|
1389
|
+
this.startDate = signal(null, ...(ngDevMode ? [{ debugName: "startDate" }] : []));
|
|
1390
|
+
this.startTypeItems = [
|
|
1391
|
+
{ id: 'now', text: '@acorex:schedulerPicker.startCondition.now' },
|
|
1392
|
+
{ id: 'byDate', text: '@acorex:schedulerPicker.startCondition.byDate' },
|
|
1393
|
+
];
|
|
1394
|
+
// Initialize from input
|
|
1395
|
+
effect(() => {
|
|
1396
|
+
const condition = this.startCondition();
|
|
1397
|
+
if (condition) {
|
|
1398
|
+
this.selectedType.set(condition.type);
|
|
1399
|
+
this.startDate.set(condition.startDate);
|
|
1400
|
+
}
|
|
1401
|
+
});
|
|
1402
|
+
}
|
|
1403
|
+
onTypeChange(event) {
|
|
1404
|
+
this.selectedType.set(event.value);
|
|
1405
|
+
this.emitChange();
|
|
1406
|
+
}
|
|
1407
|
+
onDateChange(value) {
|
|
1408
|
+
this.startDate.set(value);
|
|
1409
|
+
this.emitChange();
|
|
1410
|
+
}
|
|
1411
|
+
emitChange() {
|
|
1412
|
+
const type = this.selectedType();
|
|
1413
|
+
const condition = {
|
|
1414
|
+
type,
|
|
1415
|
+
startDate: type === 'byDate' ? this.startDate() || new Date() : new Date(),
|
|
1416
|
+
};
|
|
1417
|
+
this.startConditionChange.emit(condition);
|
|
1418
|
+
}
|
|
1419
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerStartConditionSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1420
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerStartConditionSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-start-condition-selector", inputs: { startCondition: { classPropertyName: "startCondition", publicName: "startCondition", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { startConditionChange: "startConditionChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-start-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.startCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"startTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.startDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"startDate()\" [picker]=\"'datetime'\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-start-condition-selector{display:flex;flex-direction:column;gap:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i1.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1421
|
+
}
|
|
1422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerStartConditionSelectorComponent, decorators: [{
|
|
1423
|
+
type: Component,
|
|
1424
|
+
args: [{ selector: 'ax-scheduler-picker-start-condition-selector', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectionListModule, AXDateTimeBoxComponent, AXTranslatorPipe, AsyncPipe], template: "<div class=\"ax-scheduler-picker-start-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.startCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"startTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.startDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"startDate()\" [picker]=\"'datetime'\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-start-condition-selector{display:flex;flex-direction:column;gap:.5rem}\n"] }]
|
|
1425
|
+
}], ctorParameters: () => [] });
|
|
1426
|
+
|
|
1377
1427
|
class AXSchedulerPickerEndConditionSelectorComponent {
|
|
1378
1428
|
constructor() {
|
|
1379
|
-
this.endCondition = input(...(ngDevMode ? [undefined, { debugName: "endCondition" }] :
|
|
1380
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
1429
|
+
this.endCondition = input(...(ngDevMode ? [undefined, { debugName: "endCondition" }] : []));
|
|
1430
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
1381
1431
|
this.endConditionChange = output();
|
|
1382
|
-
this.selectedType = signal('never', ...(ngDevMode ? [{ debugName: "selectedType" }] :
|
|
1383
|
-
this.occurrences = signal(AX_SCHEDULER_PICKER_DEFAULT_OCCURRENCES, ...(ngDevMode ? [{ debugName: "occurrences" }] :
|
|
1384
|
-
this.endDate = signal(null, ...(ngDevMode ? [{ debugName: "endDate" }] :
|
|
1432
|
+
this.selectedType = signal('never', ...(ngDevMode ? [{ debugName: "selectedType" }] : []));
|
|
1433
|
+
this.occurrences = signal(AX_SCHEDULER_PICKER_DEFAULT_OCCURRENCES, ...(ngDevMode ? [{ debugName: "occurrences" }] : []));
|
|
1434
|
+
this.endDate = signal(null, ...(ngDevMode ? [{ debugName: "endDate" }] : []));
|
|
1385
1435
|
this.endTypeItems = [
|
|
1386
1436
|
{ id: 'never', text: '@acorex:schedulerPicker.endCondition.never' },
|
|
1387
1437
|
{ id: 'afterOccurrences', text: '@acorex:schedulerPicker.endCondition.afterOccurrences' },
|
|
@@ -1428,10 +1478,10 @@ class AXSchedulerPickerEndConditionSelectorComponent {
|
|
|
1428
1478
|
}
|
|
1429
1479
|
this.endConditionChange.emit(condition);
|
|
1430
1480
|
}
|
|
1431
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1432
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1481
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerEndConditionSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1482
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerEndConditionSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-end-condition-selector", inputs: { endCondition: { classPropertyName: "endCondition", publicName: "endCondition", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { endConditionChange: "endConditionChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-end-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.endCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"endTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'afterOccurrences') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.numberOfOccurrences' | translate | async }}\n </label>\n <ax-number-box [value]=\"occurrences()\" (valueChange)=\"onOccurrencesChange($event)\" />\n </div>\n }\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.endDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"endDate()\" mode=\"date\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-end-condition-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-input-group{display:flex;flex-direction:column;gap:.375rem;padding-left:.5rem}.ax-scheduler-picker-label,.ax-scheduler-picker-sublabel{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-selection-list{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i1.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1433
1483
|
}
|
|
1434
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1484
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerEndConditionSelectorComponent, decorators: [{
|
|
1435
1485
|
type: Component,
|
|
1436
1486
|
args: [{ selector: 'ax-scheduler-picker-end-condition-selector', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
1437
1487
|
FormsModule,
|
|
@@ -1440,16 +1490,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
1440
1490
|
AXDateTimeBoxComponent,
|
|
1441
1491
|
AXTranslatorPipe,
|
|
1442
1492
|
AsyncPipe,
|
|
1443
|
-
], template: "<div class=\"ax-scheduler-picker-end-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.endCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"endTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'afterOccurrences') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.numberOfOccurrences' | translate | async }}\n </label>\n <ax-number-box [value]=\"occurrences()\" (valueChange)=\"onOccurrencesChange($event)\" />\n </div>\n }\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.endDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"endDate()\" mode=\"date\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-end-condition-selector{flex-direction:column;gap:.5rem
|
|
1444
|
-
}], ctorParameters: () => []
|
|
1493
|
+
], template: "<div class=\"ax-scheduler-picker-end-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.endCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"endTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'afterOccurrences') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.numberOfOccurrences' | translate | async }}\n </label>\n <ax-number-box [value]=\"occurrences()\" (valueChange)=\"onOccurrencesChange($event)\" />\n </div>\n }\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.endDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"endDate()\" mode=\"date\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-end-condition-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-input-group{display:flex;flex-direction:column;gap:.375rem;padding-left:.5rem}.ax-scheduler-picker-label,.ax-scheduler-picker-sublabel{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}ax-selection-list{width:100%}\n"] }]
|
|
1494
|
+
}], ctorParameters: () => [] });
|
|
1445
1495
|
|
|
1446
1496
|
class AXSchedulerPickerExclusionManagerComponent {
|
|
1447
1497
|
constructor() {
|
|
1448
|
-
this.exclusions = input(...(ngDevMode ? [undefined, { debugName: "exclusions" }] :
|
|
1449
|
-
this.config = input(...(ngDevMode ? [undefined, { debugName: "config" }] :
|
|
1498
|
+
this.exclusions = input(...(ngDevMode ? [undefined, { debugName: "exclusions" }] : []));
|
|
1499
|
+
this.config = input(...(ngDevMode ? [undefined, { debugName: "config" }] : []));
|
|
1450
1500
|
this.exclusionsChange = output();
|
|
1451
|
-
this.newExclusionDate = signal(null, ...(ngDevMode ? [{ debugName: "newExclusionDate" }] :
|
|
1452
|
-
this.exclusionList = signal([], ...(ngDevMode ? [{ debugName: "exclusionList" }] :
|
|
1501
|
+
this.newExclusionDate = signal(null, ...(ngDevMode ? [{ debugName: "newExclusionDate" }] : []));
|
|
1502
|
+
this.exclusionList = signal([], ...(ngDevMode ? [{ debugName: "exclusionList" }] : []));
|
|
1453
1503
|
// Sync input with internal list
|
|
1454
1504
|
effect(() => {
|
|
1455
1505
|
const exclusions = this.exclusions();
|
|
@@ -1476,8 +1526,8 @@ class AXSchedulerPickerExclusionManagerComponent {
|
|
|
1476
1526
|
this.exclusionList.set(updated);
|
|
1477
1527
|
this.exclusionsChange.emit(updated);
|
|
1478
1528
|
}
|
|
1479
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1480
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1529
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerExclusionManagerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1530
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerExclusionManagerComponent, isStandalone: true, selector: "ax-scheduler-picker-exclusion-manager", inputs: { exclusions: { classPropertyName: "exclusions", publicName: "exclusions", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { exclusionsChange: "exclusionsChange" }, host: { classAttribute: "ax-scheduler-picker-exclusion-manager-host" }, ngImport: i0, template: `
|
|
1481
1531
|
<div class="ax-scheduler-picker-exclusion-manager">
|
|
1482
1532
|
<div class="ax-scheduler-picker-section-header">
|
|
1483
1533
|
<label class="ax-scheduler-picker-label">
|
|
@@ -1529,9 +1579,9 @@ class AXSchedulerPickerExclusionManagerComponent {
|
|
|
1529
1579
|
</div>
|
|
1530
1580
|
}
|
|
1531
1581
|
</div>
|
|
1532
|
-
`, isInline: true, styles: [".ax-scheduler-picker-exclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-danger-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: i3.AXChipsComponent, selector: "ax-chips", inputs: ["tabIndex", "color", "look", "
|
|
1582
|
+
`, isInline: true, styles: [".ax-scheduler-picker-exclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-danger-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: i3.AXChipsComponent, selector: "ax-chips", inputs: ["tabIndex", "color", "text", "look", "size"], outputs: ["textChange", "lookChange", "sizeChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1533
1583
|
}
|
|
1534
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerExclusionManagerComponent, decorators: [{
|
|
1535
1585
|
type: Component,
|
|
1536
1586
|
args: [{ selector: 'ax-scheduler-picker-exclusion-manager', template: `
|
|
1537
1587
|
<div class="ax-scheduler-picker-exclusion-manager">
|
|
@@ -1598,14 +1648,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
1598
1648
|
], host: {
|
|
1599
1649
|
class: 'ax-scheduler-picker-exclusion-manager-host',
|
|
1600
1650
|
}, styles: [".ax-scheduler-picker-exclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-danger-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"] }]
|
|
1601
|
-
}], ctorParameters: () => []
|
|
1651
|
+
}], ctorParameters: () => [] });
|
|
1602
1652
|
|
|
1603
1653
|
class AXSchedulerPickerInclusionManagerComponent {
|
|
1604
1654
|
constructor() {
|
|
1605
|
-
this.inclusions = input(...(ngDevMode ? [undefined, { debugName: "inclusions" }] :
|
|
1655
|
+
this.inclusions = input(...(ngDevMode ? [undefined, { debugName: "inclusions" }] : []));
|
|
1606
1656
|
this.inclusionsChange = output();
|
|
1607
|
-
this.newInclusionDate = signal(null, ...(ngDevMode ? [{ debugName: "newInclusionDate" }] :
|
|
1608
|
-
this.inclusionList = signal([], ...(ngDevMode ? [{ debugName: "inclusionList" }] :
|
|
1657
|
+
this.newInclusionDate = signal(null, ...(ngDevMode ? [{ debugName: "newInclusionDate" }] : []));
|
|
1658
|
+
this.inclusionList = signal([], ...(ngDevMode ? [{ debugName: "inclusionList" }] : []));
|
|
1609
1659
|
// Sync input with internal list
|
|
1610
1660
|
effect(() => {
|
|
1611
1661
|
const inclusions = this.inclusions();
|
|
@@ -1632,8 +1682,8 @@ class AXSchedulerPickerInclusionManagerComponent {
|
|
|
1632
1682
|
this.inclusionList.set(updated);
|
|
1633
1683
|
this.inclusionsChange.emit(updated);
|
|
1634
1684
|
}
|
|
1635
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1636
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
1685
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerInclusionManagerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1686
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerInclusionManagerComponent, isStandalone: true, selector: "ax-scheduler-picker-inclusion-manager", inputs: { inclusions: { classPropertyName: "inclusions", publicName: "inclusions", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { inclusionsChange: "inclusionsChange" }, host: { classAttribute: "ax-scheduler-picker-inclusion-manager-host" }, ngImport: i0, template: `
|
|
1637
1687
|
<div class="ax-scheduler-picker-inclusion-manager">
|
|
1638
1688
|
<div class="ax-scheduler-picker-section-header">
|
|
1639
1689
|
<label class="ax-scheduler-picker-label">
|
|
@@ -1685,9 +1735,9 @@ class AXSchedulerPickerInclusionManagerComponent {
|
|
|
1685
1735
|
</div>
|
|
1686
1736
|
}
|
|
1687
1737
|
</div>
|
|
1688
|
-
`, isInline: true, styles: [".ax-scheduler-picker-inclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-success-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: i3.AXChipsComponent, selector: "ax-chips", inputs: ["tabIndex", "color", "look", "
|
|
1738
|
+
`, isInline: true, styles: [".ax-scheduler-picker-inclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-success-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"], dependencies: [{ kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: i3.AXChipsComponent, selector: "ax-chips", inputs: ["tabIndex", "color", "text", "look", "size"], outputs: ["textChange", "lookChange", "sizeChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DatePipe, name: "date" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1689
1739
|
}
|
|
1690
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1740
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerInclusionManagerComponent, decorators: [{
|
|
1691
1741
|
type: Component,
|
|
1692
1742
|
args: [{ selector: 'ax-scheduler-picker-inclusion-manager', template: `
|
|
1693
1743
|
<div class="ax-scheduler-picker-inclusion-manager">
|
|
@@ -1754,51 +1804,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
1754
1804
|
], host: {
|
|
1755
1805
|
class: 'ax-scheduler-picker-inclusion-manager-host',
|
|
1756
1806
|
}, styles: [".ax-scheduler-picker-inclusion-manager{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-section-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.375rem}.ax-scheduler-picker-label{display:flex;align-items:center;gap:.375rem;color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-label .ax-icon{font-size:1.125rem;color:rgb(var(--ax-sys-color-success-500))}.ax-scheduler-picker-add-section{display:flex;gap:.5rem;align-items:stretch}.ax-scheduler-picker-date-input{flex:1}.ax-scheduler-picker-chips-container{display:flex;flex-wrap:wrap;gap:.375rem}.ax-scheduler-picker-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:.75rem .5rem;border:1px dashed rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius-md);color:rgb(var(--ax-sys-color-on-darker-surface));font-size:.875rem}.ax-scheduler-picker-empty-state .ax-icon{font-size:1.5rem;opacity:.4}\n"] }]
|
|
1757
|
-
}], ctorParameters: () => []
|
|
1758
|
-
|
|
1759
|
-
class AXSchedulerPickerStartConditionSelectorComponent {
|
|
1760
|
-
constructor() {
|
|
1761
|
-
this.startCondition = input(...(ngDevMode ? [undefined, { debugName: "startCondition" }] : /* istanbul ignore next */ []));
|
|
1762
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : /* istanbul ignore next */ []));
|
|
1763
|
-
this.startConditionChange = output();
|
|
1764
|
-
this.selectedType = signal('now', ...(ngDevMode ? [{ debugName: "selectedType" }] : /* istanbul ignore next */ []));
|
|
1765
|
-
this.startDate = signal(null, ...(ngDevMode ? [{ debugName: "startDate" }] : /* istanbul ignore next */ []));
|
|
1766
|
-
this.startTypeItems = [
|
|
1767
|
-
{ id: 'now', text: '@acorex:schedulerPicker.startCondition.now' },
|
|
1768
|
-
{ id: 'byDate', text: '@acorex:schedulerPicker.startCondition.byDate' },
|
|
1769
|
-
];
|
|
1770
|
-
// Initialize from input
|
|
1771
|
-
effect(() => {
|
|
1772
|
-
const condition = this.startCondition();
|
|
1773
|
-
if (condition) {
|
|
1774
|
-
this.selectedType.set(condition.type);
|
|
1775
|
-
this.startDate.set(condition.startDate);
|
|
1776
|
-
}
|
|
1777
|
-
});
|
|
1778
|
-
}
|
|
1779
|
-
onTypeChange(event) {
|
|
1780
|
-
this.selectedType.set(event.value);
|
|
1781
|
-
this.emitChange();
|
|
1782
|
-
}
|
|
1783
|
-
onDateChange(value) {
|
|
1784
|
-
this.startDate.set(value);
|
|
1785
|
-
this.emitChange();
|
|
1786
|
-
}
|
|
1787
|
-
emitChange() {
|
|
1788
|
-
const type = this.selectedType();
|
|
1789
|
-
const condition = {
|
|
1790
|
-
type,
|
|
1791
|
-
startDate: type === 'byDate' ? this.startDate() || new Date() : new Date(),
|
|
1792
|
-
};
|
|
1793
|
-
this.startConditionChange.emit(condition);
|
|
1794
|
-
}
|
|
1795
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSchedulerPickerStartConditionSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1796
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXSchedulerPickerStartConditionSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-start-condition-selector", inputs: { startCondition: { classPropertyName: "startCondition", publicName: "startCondition", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { startConditionChange: "startConditionChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-start-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.startCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"startTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.startDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"startDate()\" [picker]=\"'datetime'\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-start-condition-selector{flex-direction:column;gap:.5rem;display:flex}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i1.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1797
|
-
}
|
|
1798
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSchedulerPickerStartConditionSelectorComponent, decorators: [{
|
|
1799
|
-
type: Component,
|
|
1800
|
-
args: [{ selector: 'ax-scheduler-picker-start-condition-selector', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectionListModule, AXDateTimeBoxComponent, AXTranslatorPipe, AsyncPipe], template: "<div class=\"ax-scheduler-picker-start-condition-selector\">\n <label class=\"ax-scheduler-picker-label\">\n {{ '@acorex:schedulerPicker.labels.startCondition' | translate | async }}\n </label>\n\n <ax-selection-list\n [items]=\"startTypeItems\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n [look]=\"'solid'\"\n [direction]=\"'horizontal'\"\n [value]=\"selectedType()\"\n (onValueChanged)=\"onTypeChange($event)\"\n />\n\n @if (selectedType() === 'byDate') {\n <div class=\"ax-scheduler-picker-input-group\">\n <label class=\"ax-scheduler-picker-sublabel\">\n {{ '@acorex:schedulerPicker.labels.startDate' | translate | async }}\n </label>\n <ax-datetime-box [value]=\"startDate()\" [picker]=\"'datetime'\" (valueChange)=\"onDateChange($event)\" />\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-start-condition-selector{flex-direction:column;gap:.5rem;display:flex}\n"] }]
|
|
1801
|
-
}], ctorParameters: () => [], propDecorators: { startCondition: [{ type: i0.Input, args: [{ isSignal: true, alias: "startCondition", required: false }] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: true }] }], startConditionChange: [{ type: i0.Output, args: ["startConditionChange"] }] } });
|
|
1807
|
+
}], ctorParameters: () => [] });
|
|
1802
1808
|
|
|
1803
1809
|
/**
|
|
1804
1810
|
* A powerful, fully customizable scheduler picker component for creating recurrence patterns
|
|
@@ -1847,7 +1853,7 @@ class AXSchedulerPickerComponent extends MXValueComponent {
|
|
|
1847
1853
|
* Settings for the scheduler picker
|
|
1848
1854
|
* Controls which options are visible and behavior
|
|
1849
1855
|
*/
|
|
1850
|
-
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] :
|
|
1856
|
+
this.config = input.required(...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
1851
1857
|
/**
|
|
1852
1858
|
* Emits when the human-readable summary changes
|
|
1853
1859
|
*/
|
|
@@ -1856,11 +1862,11 @@ class AXSchedulerPickerComponent extends MXValueComponent {
|
|
|
1856
1862
|
/**
|
|
1857
1863
|
* Internal pattern value
|
|
1858
1864
|
*/
|
|
1859
|
-
this.pattern = signal(null, ...(ngDevMode ? [{ debugName: "pattern" }] :
|
|
1865
|
+
this.pattern = signal(null, ...(ngDevMode ? [{ debugName: "pattern" }] : []));
|
|
1860
1866
|
/**
|
|
1861
1867
|
* Current mode derived from config
|
|
1862
1868
|
*/
|
|
1863
|
-
this.mode = computed(() => this.config().mode, ...(ngDevMode ? [{ debugName: "mode" }] :
|
|
1869
|
+
this.mode = computed(() => this.config().mode, ...(ngDevMode ? [{ debugName: "mode" }] : []));
|
|
1864
1870
|
/**
|
|
1865
1871
|
* Effect run counter to prevent stale async updates
|
|
1866
1872
|
*/
|
|
@@ -1878,15 +1884,15 @@ class AXSchedulerPickerComponent extends MXValueComponent {
|
|
|
1878
1884
|
...this.config().options,
|
|
1879
1885
|
},
|
|
1880
1886
|
};
|
|
1881
|
-
}, ...(ngDevMode ? [{ debugName: "mergedConfig" }] :
|
|
1887
|
+
}, ...(ngDevMode ? [{ debugName: "mergedConfig" }] : []));
|
|
1882
1888
|
/**
|
|
1883
1889
|
* Validation errors (public for external access)
|
|
1884
1890
|
*/
|
|
1885
|
-
this.validationErrors = signal([], ...(ngDevMode ? [{ debugName: "validationErrors" }] :
|
|
1891
|
+
this.validationErrors = signal([], ...(ngDevMode ? [{ debugName: "validationErrors" }] : []));
|
|
1886
1892
|
/**
|
|
1887
1893
|
* Human-readable summary of the pattern
|
|
1888
1894
|
*/
|
|
1889
|
-
this.summary = signal('', ...(ngDevMode ? [{ debugName: "summary" }] :
|
|
1895
|
+
this.summary = signal('', ...(ngDevMode ? [{ debugName: "summary" }] : []));
|
|
1890
1896
|
// Effect to update summary when pattern changes
|
|
1891
1897
|
effect(() => {
|
|
1892
1898
|
const currentPattern = this.pattern();
|
|
@@ -2096,8 +2102,8 @@ class AXSchedulerPickerComponent extends MXValueComponent {
|
|
|
2096
2102
|
this.validationErrors.set([]);
|
|
2097
2103
|
this.setState('clear');
|
|
2098
2104
|
}
|
|
2099
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2100
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerComponent, isStandalone: true, selector: "ax-scheduler-picker", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", summaryChange: "summaryChange" }, providers: [
|
|
2101
2107
|
{ provide: AXComponent, useExisting: AXSchedulerPickerComponent },
|
|
2102
2108
|
{ provide: AXFocusableComponent, useExisting: AXSchedulerPickerComponent },
|
|
2103
2109
|
{ provide: AXValuableComponent, useExisting: AXSchedulerPickerComponent },
|
|
@@ -2106,9 +2112,9 @@ class AXSchedulerPickerComponent extends MXValueComponent {
|
|
|
2106
2112
|
useExisting: forwardRef(() => AXSchedulerPickerComponent),
|
|
2107
2113
|
multi: true,
|
|
2108
2114
|
},
|
|
2109
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-scheduler-picker\" [class.ax-disabled]=\"disabled\" [class.ax-readonly]=\"readonly\">\n <!-- Mode-specific panel -->\n <div class=\"ax-scheduler-picker-panel\">\n @switch (mode()) {\n @case ('hourly') {\n <ax-scheduler-picker-hourly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('daily') {\n <ax-scheduler-picker-daily-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('weekly') {\n <ax-scheduler-picker-weekly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('monthly') {\n <ax-scheduler-picker-monthly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('yearly') {\n <ax-scheduler-picker-yearly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n }\n </div>\n\n <!-- Start condition -->\n @if (mergedConfig().showStartCondition && pattern()) {\n <div class=\"ax-scheduler-picker-start-conditions\">\n <ax-scheduler-picker-start-condition-selector\n [startCondition]=\"pattern()!.startCondition\"\n [config]=\"mergedConfig()\"\n (startConditionChange)=\"updatePattern({ startCondition: $event })\"\n />\n </div>\n }\n\n <!-- End conditions -->\n @if (mergedConfig().showEndConditions && pattern()) {\n <div class=\"ax-scheduler-picker-end-conditions\">\n <ax-scheduler-picker-end-condition-selector\n [endCondition]=\"pattern()!.endCondition\"\n [config]=\"mergedConfig()\"\n (endConditionChange)=\"updatePattern({ endCondition: $event })\"\n />\n </div>\n }\n\n <!-- Exclusions -->\n @if (mergedConfig().showExclusions && pattern()) {\n <div class=\"ax-scheduler-picker-exclusions\">\n <ax-scheduler-picker-exclusion-manager\n [exclusions]=\"pattern()!.exclusions || []\"\n [config]=\"mergedConfig()\"\n (exclusionsChange)=\"updatePattern({ exclusions: $event })\"\n />\n </div>\n }\n\n <!-- Inclusions -->\n @if (mergedConfig().showInclusions && pattern()) {\n <div class=\"ax-scheduler-picker-inclusions\">\n <ax-scheduler-picker-inclusion-manager\n [inclusions]=\"pattern()!.inclusions || []\"\n (inclusionsChange)=\"updatePattern({ inclusions: $event })\"\n />\n </div>\n }\n</div>\n", styles: [":root{--ax-comp-scheduler-picker-border:1px solid rgb(var(--ax-sys-color-border-lighter-surface));--ax-comp-scheduler-picker-border-radius:var(--ax-sys-border-radius-md);--ax-comp-scheduler-picker-padding
|
|
2115
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-scheduler-picker\" [class.ax-disabled]=\"disabled\" [class.ax-readonly]=\"readonly\">\n <!-- Mode-specific panel -->\n <div class=\"ax-scheduler-picker-panel\">\n @switch (mode()) {\n @case ('hourly') {\n <ax-scheduler-picker-hourly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('daily') {\n <ax-scheduler-picker-daily-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('weekly') {\n <ax-scheduler-picker-weekly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('monthly') {\n <ax-scheduler-picker-monthly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('yearly') {\n <ax-scheduler-picker-yearly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n }\n </div>\n\n <!-- Start condition -->\n @if (mergedConfig().showStartCondition && pattern()) {\n <div class=\"ax-scheduler-picker-start-conditions\">\n <ax-scheduler-picker-start-condition-selector\n [startCondition]=\"pattern()!.startCondition\"\n [config]=\"mergedConfig()\"\n (startConditionChange)=\"updatePattern({ startCondition: $event })\"\n />\n </div>\n }\n\n <!-- End conditions -->\n @if (mergedConfig().showEndConditions && pattern()) {\n <div class=\"ax-scheduler-picker-end-conditions\">\n <ax-scheduler-picker-end-condition-selector\n [endCondition]=\"pattern()!.endCondition\"\n [config]=\"mergedConfig()\"\n (endConditionChange)=\"updatePattern({ endCondition: $event })\"\n />\n </div>\n }\n\n <!-- Exclusions -->\n @if (mergedConfig().showExclusions && pattern()) {\n <div class=\"ax-scheduler-picker-exclusions\">\n <ax-scheduler-picker-exclusion-manager\n [exclusions]=\"pattern()!.exclusions || []\"\n [config]=\"mergedConfig()\"\n (exclusionsChange)=\"updatePattern({ exclusions: $event })\"\n />\n </div>\n }\n\n <!-- Inclusions -->\n @if (mergedConfig().showInclusions && pattern()) {\n <div class=\"ax-scheduler-picker-inclusions\">\n <ax-scheduler-picker-inclusion-manager\n [inclusions]=\"pattern()!.inclusions || []\"\n (inclusionsChange)=\"updatePattern({ inclusions: $event })\"\n />\n </div>\n }\n</div>\n", styles: [":root{--ax-comp-scheduler-picker-border: 1px solid rgb(var(--ax-sys-color-border-lighter-surface));--ax-comp-scheduler-picker-border-radius: var(--ax-sys-border-radius-md);--ax-comp-scheduler-picker-padding: .5rem;--ax-comp-scheduler-picker-gap: .5rem;--ax-comp-scheduler-picker-label-color: rgb(var(--ax-sys-color-on-lighter-surface));--ax-comp-scheduler-picker-label-font-size: .875rem;--ax-comp-scheduler-picker-label-font-weight: 500;--ax-comp-scheduler-picker-summary-color: rgb(var(--ax-sys-color-on-darker-surface));--ax-comp-scheduler-picker-summary-padding: .375rem .5rem;--ax-comp-scheduler-picker-error-color: rgb(var(--ax-sys-color-danger-500));--ax-comp-scheduler-picker-error-padding: .375rem .5rem}.ax-scheduler-picker{display:flex;flex-direction:column;gap:var(--ax-comp-scheduler-picker-gap);padding:var(--ax-comp-scheduler-picker-padding)}.ax-scheduler-picker.ax-disabled{opacity:.6;pointer-events:none}.ax-scheduler-picker.ax-readonly{pointer-events:none}.ax-scheduler-picker-summary{display:flex;align-items:center;gap:.375rem;padding:var(--ax-comp-scheduler-picker-summary-padding);color:var(--ax-comp-scheduler-picker-summary-color);font-size:.875rem}.ax-scheduler-picker-summary .ax-scheduler-picker-summary-label{font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-errors{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-error{padding:var(--ax-comp-scheduler-picker-error-padding);color:var(--ax-comp-scheduler-picker-error-color);font-size:.875rem}\n"], dependencies: [{ kind: "component", type: AXSchedulerPickerHourlyPanelComponent, selector: "ax-scheduler-picker-hourly-panel", inputs: ["pattern", "config"], outputs: ["patternChange"] }, { kind: "component", type: AXSchedulerPickerDailyPanelComponent, selector: "ax-scheduler-picker-daily-panel", inputs: ["pattern", "config"], outputs: ["patternChange"] }, { kind: "component", type: AXSchedulerPickerWeeklyPanelComponent, selector: "ax-scheduler-picker-weekly-panel", inputs: ["pattern", "config"], outputs: ["patternChange"] }, { kind: "component", type: AXSchedulerPickerMonthlyPanelComponent, selector: "ax-scheduler-picker-monthly-panel", inputs: ["pattern", "config"], outputs: ["patternChange"] }, { kind: "component", type: AXSchedulerPickerYearlyPanelComponent, selector: "ax-scheduler-picker-yearly-panel", inputs: ["pattern", "config"], outputs: ["patternChange"] }, { kind: "component", type: AXSchedulerPickerStartConditionSelectorComponent, selector: "ax-scheduler-picker-start-condition-selector", inputs: ["startCondition", "config"], outputs: ["startConditionChange"] }, { kind: "component", type: AXSchedulerPickerEndConditionSelectorComponent, selector: "ax-scheduler-picker-end-condition-selector", inputs: ["endCondition", "config"], outputs: ["endConditionChange"] }, { kind: "component", type: AXSchedulerPickerExclusionManagerComponent, selector: "ax-scheduler-picker-exclusion-manager", inputs: ["exclusions", "config"], outputs: ["exclusionsChange"] }, { kind: "component", type: AXSchedulerPickerInclusionManagerComponent, selector: "ax-scheduler-picker-inclusion-manager", inputs: ["inclusions"], outputs: ["inclusionsChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2110
2116
|
}
|
|
2111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerComponent, decorators: [{
|
|
2112
2118
|
type: Component,
|
|
2113
2119
|
args: [{ selector: 'ax-scheduler-picker', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['disabled', 'readonly', 'tabIndex', 'value', 'state', 'name', 'id'], outputs: ['valueChange', 'stateChange', 'onValueChanged', 'onBlur', 'onFocus'], providers: [
|
|
2114
2120
|
{ provide: AXComponent, useExisting: AXSchedulerPickerComponent },
|
|
@@ -2129,16 +2135,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
2129
2135
|
AXSchedulerPickerEndConditionSelectorComponent,
|
|
2130
2136
|
AXSchedulerPickerExclusionManagerComponent,
|
|
2131
2137
|
AXSchedulerPickerInclusionManagerComponent,
|
|
2132
|
-
], template: "<div class=\"ax-scheduler-picker\" [class.ax-disabled]=\"disabled\" [class.ax-readonly]=\"readonly\">\n <!-- Mode-specific panel -->\n <div class=\"ax-scheduler-picker-panel\">\n @switch (mode()) {\n @case ('hourly') {\n <ax-scheduler-picker-hourly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('daily') {\n <ax-scheduler-picker-daily-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('weekly') {\n <ax-scheduler-picker-weekly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('monthly') {\n <ax-scheduler-picker-monthly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('yearly') {\n <ax-scheduler-picker-yearly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n }\n </div>\n\n <!-- Start condition -->\n @if (mergedConfig().showStartCondition && pattern()) {\n <div class=\"ax-scheduler-picker-start-conditions\">\n <ax-scheduler-picker-start-condition-selector\n [startCondition]=\"pattern()!.startCondition\"\n [config]=\"mergedConfig()\"\n (startConditionChange)=\"updatePattern({ startCondition: $event })\"\n />\n </div>\n }\n\n <!-- End conditions -->\n @if (mergedConfig().showEndConditions && pattern()) {\n <div class=\"ax-scheduler-picker-end-conditions\">\n <ax-scheduler-picker-end-condition-selector\n [endCondition]=\"pattern()!.endCondition\"\n [config]=\"mergedConfig()\"\n (endConditionChange)=\"updatePattern({ endCondition: $event })\"\n />\n </div>\n }\n\n <!-- Exclusions -->\n @if (mergedConfig().showExclusions && pattern()) {\n <div class=\"ax-scheduler-picker-exclusions\">\n <ax-scheduler-picker-exclusion-manager\n [exclusions]=\"pattern()!.exclusions || []\"\n [config]=\"mergedConfig()\"\n (exclusionsChange)=\"updatePattern({ exclusions: $event })\"\n />\n </div>\n }\n\n <!-- Inclusions -->\n @if (mergedConfig().showInclusions && pattern()) {\n <div class=\"ax-scheduler-picker-inclusions\">\n <ax-scheduler-picker-inclusion-manager\n [inclusions]=\"pattern()!.inclusions || []\"\n (inclusionsChange)=\"updatePattern({ inclusions: $event })\"\n />\n </div>\n }\n</div>\n", styles: [":root{--ax-comp-scheduler-picker-border:1px solid rgb(var(--ax-sys-color-border-lighter-surface));--ax-comp-scheduler-picker-border-radius:var(--ax-sys-border-radius-md);--ax-comp-scheduler-picker-padding
|
|
2133
|
-
}], ctorParameters: () => []
|
|
2138
|
+
], template: "<div class=\"ax-scheduler-picker\" [class.ax-disabled]=\"disabled\" [class.ax-readonly]=\"readonly\">\n <!-- Mode-specific panel -->\n <div class=\"ax-scheduler-picker-panel\">\n @switch (mode()) {\n @case ('hourly') {\n <ax-scheduler-picker-hourly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('daily') {\n <ax-scheduler-picker-daily-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('weekly') {\n <ax-scheduler-picker-weekly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('monthly') {\n <ax-scheduler-picker-monthly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n @case ('yearly') {\n <ax-scheduler-picker-yearly-panel\n [pattern]=\"pattern()\"\n [config]=\"$any(mergedConfig())\"\n (patternChange)=\"updatePattern($event)\"\n />\n }\n }\n </div>\n\n <!-- Start condition -->\n @if (mergedConfig().showStartCondition && pattern()) {\n <div class=\"ax-scheduler-picker-start-conditions\">\n <ax-scheduler-picker-start-condition-selector\n [startCondition]=\"pattern()!.startCondition\"\n [config]=\"mergedConfig()\"\n (startConditionChange)=\"updatePattern({ startCondition: $event })\"\n />\n </div>\n }\n\n <!-- End conditions -->\n @if (mergedConfig().showEndConditions && pattern()) {\n <div class=\"ax-scheduler-picker-end-conditions\">\n <ax-scheduler-picker-end-condition-selector\n [endCondition]=\"pattern()!.endCondition\"\n [config]=\"mergedConfig()\"\n (endConditionChange)=\"updatePattern({ endCondition: $event })\"\n />\n </div>\n }\n\n <!-- Exclusions -->\n @if (mergedConfig().showExclusions && pattern()) {\n <div class=\"ax-scheduler-picker-exclusions\">\n <ax-scheduler-picker-exclusion-manager\n [exclusions]=\"pattern()!.exclusions || []\"\n [config]=\"mergedConfig()\"\n (exclusionsChange)=\"updatePattern({ exclusions: $event })\"\n />\n </div>\n }\n\n <!-- Inclusions -->\n @if (mergedConfig().showInclusions && pattern()) {\n <div class=\"ax-scheduler-picker-inclusions\">\n <ax-scheduler-picker-inclusion-manager\n [inclusions]=\"pattern()!.inclusions || []\"\n (inclusionsChange)=\"updatePattern({ inclusions: $event })\"\n />\n </div>\n }\n</div>\n", styles: [":root{--ax-comp-scheduler-picker-border: 1px solid rgb(var(--ax-sys-color-border-lighter-surface));--ax-comp-scheduler-picker-border-radius: var(--ax-sys-border-radius-md);--ax-comp-scheduler-picker-padding: .5rem;--ax-comp-scheduler-picker-gap: .5rem;--ax-comp-scheduler-picker-label-color: rgb(var(--ax-sys-color-on-lighter-surface));--ax-comp-scheduler-picker-label-font-size: .875rem;--ax-comp-scheduler-picker-label-font-weight: 500;--ax-comp-scheduler-picker-summary-color: rgb(var(--ax-sys-color-on-darker-surface));--ax-comp-scheduler-picker-summary-padding: .375rem .5rem;--ax-comp-scheduler-picker-error-color: rgb(var(--ax-sys-color-danger-500));--ax-comp-scheduler-picker-error-padding: .375rem .5rem}.ax-scheduler-picker{display:flex;flex-direction:column;gap:var(--ax-comp-scheduler-picker-gap);padding:var(--ax-comp-scheduler-picker-padding)}.ax-scheduler-picker.ax-disabled{opacity:.6;pointer-events:none}.ax-scheduler-picker.ax-readonly{pointer-events:none}.ax-scheduler-picker-summary{display:flex;align-items:center;gap:.375rem;padding:var(--ax-comp-scheduler-picker-summary-padding);color:var(--ax-comp-scheduler-picker-summary-color);font-size:.875rem}.ax-scheduler-picker-summary .ax-scheduler-picker-summary-label{font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}.ax-scheduler-picker-errors{display:flex;flex-direction:column;gap:.375rem}.ax-scheduler-picker-error{padding:var(--ax-comp-scheduler-picker-error-padding);color:var(--ax-comp-scheduler-picker-error-color);font-size:.875rem}\n"] }]
|
|
2139
|
+
}], ctorParameters: () => [] });
|
|
2134
2140
|
|
|
2135
2141
|
class AXSchedulerPickerTimeSelectorComponent {
|
|
2136
2142
|
constructor() {
|
|
2137
|
-
this.time = input(...(ngDevMode ? [undefined, { debugName: "time" }] :
|
|
2143
|
+
this.time = input(...(ngDevMode ? [undefined, { debugName: "time" }] : []));
|
|
2138
2144
|
this.timeChange = output();
|
|
2139
2145
|
}
|
|
2140
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2141
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
2146
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerTimeSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2147
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerTimeSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-time-selector", inputs: { time: { classPropertyName: "time", publicName: "time", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { timeChange: "timeChange" }, ngImport: i0, template: `
|
|
2142
2148
|
<div class="ax-scheduler-picker-time-selector">
|
|
2143
2149
|
<label class="ax-scheduler-picker-label">
|
|
2144
2150
|
{{ '@acorex:schedulerPicker.labels.time' | translate | async }}
|
|
@@ -2149,9 +2155,9 @@ class AXSchedulerPickerTimeSelectorComponent {
|
|
|
2149
2155
|
(valueChange)="timeChange.emit($event)"
|
|
2150
2156
|
/>
|
|
2151
2157
|
</div>
|
|
2152
|
-
`, isInline: true, styles: [".ax-scheduler-picker-time-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2158
|
+
`, isInline: true, styles: [".ax-scheduler-picker-time-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXDateTimeBoxComponent, selector: "ax-datetime-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "depth", "id", "type", "look", "holidayDates", "allowTyping", "picker", "calendar", "weekend", "weekdays", "calendarLook", "boxLook", "format"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "onOpened", "onClosed", "readonlyChange", "disabledChange", "formatChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2153
2159
|
}
|
|
2154
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2160
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerTimeSelectorComponent, decorators: [{
|
|
2155
2161
|
type: Component,
|
|
2156
2162
|
args: [{ selector: 'ax-scheduler-picker-time-selector', template: `
|
|
2157
2163
|
<div class="ax-scheduler-picker-time-selector">
|
|
@@ -2165,14 +2171,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
2165
2171
|
/>
|
|
2166
2172
|
</div>
|
|
2167
2173
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXDateTimeBoxComponent, AXTranslatorPipe, AsyncPipe], styles: [".ax-scheduler-picker-time-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight);margin:0}\n"] }]
|
|
2168
|
-
}]
|
|
2174
|
+
}] });
|
|
2169
2175
|
|
|
2170
2176
|
class AXSchedulerPickerTimezoneSelectorComponent {
|
|
2171
2177
|
constructor() {
|
|
2172
2178
|
/**
|
|
2173
2179
|
* Current timezone value
|
|
2174
2180
|
*/
|
|
2175
|
-
this.timezone = input(...(ngDevMode ? [undefined, { debugName: "timezone" }] :
|
|
2181
|
+
this.timezone = input(...(ngDevMode ? [undefined, { debugName: "timezone" }] : []));
|
|
2176
2182
|
/**
|
|
2177
2183
|
* Emits when timezone selection changes
|
|
2178
2184
|
*/
|
|
@@ -2197,8 +2203,8 @@ class AXSchedulerPickerTimezoneSelectorComponent {
|
|
|
2197
2203
|
onTimezoneChange(event) {
|
|
2198
2204
|
this.timezoneChange.emit(event.value);
|
|
2199
2205
|
}
|
|
2200
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2201
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
2206
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerTimezoneSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2207
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.3", type: AXSchedulerPickerTimezoneSelectorComponent, isStandalone: true, selector: "ax-scheduler-picker-timezone-selector", inputs: { timezone: { classPropertyName: "timezone", publicName: "timezone", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { timezoneChange: "timezoneChange" }, ngImport: i0, template: `
|
|
2202
2208
|
<div class="ax-scheduler-picker-timezone-selector">
|
|
2203
2209
|
<label class="ax-scheduler-picker-label">
|
|
2204
2210
|
{{ '@acorex:schedulerPicker.labels.timezone' | translate | async }}
|
|
@@ -2213,7 +2219,7 @@ class AXSchedulerPickerTimezoneSelectorComponent {
|
|
|
2213
2219
|
</div>
|
|
2214
2220
|
`, isInline: true, styles: [".ax-scheduler-picker-timezone-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2215
2221
|
}
|
|
2216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2222
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerTimezoneSelectorComponent, decorators: [{
|
|
2217
2223
|
type: Component,
|
|
2218
2224
|
args: [{ selector: 'ax-scheduler-picker-timezone-selector', template: `
|
|
2219
2225
|
<div class="ax-scheduler-picker-timezone-selector">
|
|
@@ -2229,7 +2235,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
2229
2235
|
/>
|
|
2230
2236
|
</div>
|
|
2231
2237
|
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [FormsModule, AXSelectBoxComponent, AXTranslatorPipe, AsyncPipe], styles: [".ax-scheduler-picker-timezone-selector{display:flex;flex-direction:column;gap:.5rem}.ax-scheduler-picker-label{color:var(--ax-comp-scheduler-picker-label-color);font-size:var(--ax-comp-scheduler-picker-label-font-size);font-weight:var(--ax-comp-scheduler-picker-label-font-weight)}\n"] }]
|
|
2232
|
-
}]
|
|
2238
|
+
}] });
|
|
2233
2239
|
|
|
2234
2240
|
/**
|
|
2235
2241
|
* Demo configuration panel for scheduler picker
|
|
@@ -2241,7 +2247,7 @@ class AXSchedulerPickerConfigComponent {
|
|
|
2241
2247
|
this.configChange = output();
|
|
2242
2248
|
this.modeChange = output();
|
|
2243
2249
|
// Mode selection
|
|
2244
|
-
this.selectedMode = signal('daily', ...(ngDevMode ? [{ debugName: "selectedMode" }] :
|
|
2250
|
+
this.selectedMode = signal('daily', ...(ngDevMode ? [{ debugName: "selectedMode" }] : []));
|
|
2245
2251
|
this.modeOptions = [
|
|
2246
2252
|
{ value: 'hourly', text: 'Hourly' },
|
|
2247
2253
|
{ value: 'daily', text: 'Daily' },
|
|
@@ -2250,17 +2256,17 @@ class AXSchedulerPickerConfigComponent {
|
|
|
2250
2256
|
{ value: 'yearly', text: 'Yearly' },
|
|
2251
2257
|
];
|
|
2252
2258
|
// Configuration controls - Global
|
|
2253
|
-
this.showInterval = signal(true, ...(ngDevMode ? [{ debugName: "showInterval" }] :
|
|
2254
|
-
this.showStartCondition = signal(true, ...(ngDevMode ? [{ debugName: "showStartCondition" }] :
|
|
2255
|
-
this.showEndConditions = signal(true, ...(ngDevMode ? [{ debugName: "showEndConditions" }] :
|
|
2256
|
-
this.showExclusions = signal(false, ...(ngDevMode ? [{ debugName: "showExclusions" }] :
|
|
2257
|
-
this.showInclusions = signal(false, ...(ngDevMode ? [{ debugName: "showInclusions" }] :
|
|
2259
|
+
this.showInterval = signal(true, ...(ngDevMode ? [{ debugName: "showInterval" }] : []));
|
|
2260
|
+
this.showStartCondition = signal(true, ...(ngDevMode ? [{ debugName: "showStartCondition" }] : []));
|
|
2261
|
+
this.showEndConditions = signal(true, ...(ngDevMode ? [{ debugName: "showEndConditions" }] : []));
|
|
2262
|
+
this.showExclusions = signal(false, ...(ngDevMode ? [{ debugName: "showExclusions" }] : []));
|
|
2263
|
+
this.showInclusions = signal(false, ...(ngDevMode ? [{ debugName: "showInclusions" }] : []));
|
|
2258
2264
|
// Configuration controls - Mode specific
|
|
2259
|
-
this.showWeekdaysOnly = signal(false, ...(ngDevMode ? [{ debugName: "showWeekdaysOnly" }] :
|
|
2260
|
-
this.showWeekdaySelection = signal(true, ...(ngDevMode ? [{ debugName: "showWeekdaySelection" }] :
|
|
2261
|
-
this.monthlyRecurrenceMode = signal('specificDays', ...(ngDevMode ? [{ debugName: "monthlyRecurrenceMode" }] :
|
|
2262
|
-
this.yearlyRecurrenceMode = signal('specificDate', ...(ngDevMode ? [{ debugName: "yearlyRecurrenceMode" }] :
|
|
2263
|
-
this.showMonthSelection = signal(true, ...(ngDevMode ? [{ debugName: "showMonthSelection" }] :
|
|
2265
|
+
this.showWeekdaysOnly = signal(false, ...(ngDevMode ? [{ debugName: "showWeekdaysOnly" }] : []));
|
|
2266
|
+
this.showWeekdaySelection = signal(true, ...(ngDevMode ? [{ debugName: "showWeekdaySelection" }] : []));
|
|
2267
|
+
this.monthlyRecurrenceMode = signal('specificDays', ...(ngDevMode ? [{ debugName: "monthlyRecurrenceMode" }] : []));
|
|
2268
|
+
this.yearlyRecurrenceMode = signal('specificDate', ...(ngDevMode ? [{ debugName: "yearlyRecurrenceMode" }] : []));
|
|
2269
|
+
this.showMonthSelection = signal(true, ...(ngDevMode ? [{ debugName: "showMonthSelection" }] : []));
|
|
2264
2270
|
// Dynamic configuration based on selected mode
|
|
2265
2271
|
this.config = computed(() => {
|
|
2266
2272
|
const mode = this.selectedMode();
|
|
@@ -2304,7 +2310,7 @@ class AXSchedulerPickerConfigComponent {
|
|
|
2304
2310
|
break;
|
|
2305
2311
|
}
|
|
2306
2312
|
return baseConfig;
|
|
2307
|
-
}, ...(ngDevMode ? [{ debugName: "config" }] :
|
|
2313
|
+
}, ...(ngDevMode ? [{ debugName: "config" }] : []));
|
|
2308
2314
|
// Emit config changes whenever any signal changes
|
|
2309
2315
|
effect(() => {
|
|
2310
2316
|
const currentConfig = this.config();
|
|
@@ -2315,13 +2321,13 @@ class AXSchedulerPickerConfigComponent {
|
|
|
2315
2321
|
this.selectedMode.set(mode);
|
|
2316
2322
|
this.modeChange.emit(mode);
|
|
2317
2323
|
}
|
|
2318
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2319
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2324
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerConfigComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2325
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXSchedulerPickerConfigComponent, isStandalone: true, selector: "ax-scheduler-picker-config", outputs: { configChange: "configChange", modeChange: "modeChange" }, ngImport: i0, template: "<div class=\"ax-scheduler-picker-config\">\n <h3>Configuration</h3>\n\n <!-- Mode Selector -->\n <div class=\"control-group\">\n <label>Mode</label>\n <ax-select-box\n [dataSource]=\"modeOptions\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"selectedMode()\"\n (onValueChanged)=\"onModeChange($event.value)\"\n />\n </div>\n\n <!-- Global Options -->\n <div class=\"control-group\">\n <label>Global Options</label>\n <div class=\"switch-group\">\n <span>Show Interval</span>\n <ax-switch [(value)]=\"showInterval\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Start Condition</span>\n <ax-switch [(value)]=\"showStartCondition\" />\n </div>\n <div class=\"switch-group\">\n <span>Show End Conditions</span>\n <ax-switch [(value)]=\"showEndConditions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Exclusions</span>\n <ax-switch [(value)]=\"showExclusions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Inclusions</span>\n <ax-switch [(value)]=\"showInclusions\" />\n </div>\n </div>\n\n <!-- Mode-Specific Options -->\n @if (selectedMode() === 'daily') {\n <div class=\"control-group\">\n <label>Daily Options</label>\n <div class=\"switch-group\">\n <span>Show Weekdays Only</span>\n <ax-switch [(value)]=\"showWeekdaysOnly\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'weekly') {\n <div class=\"control-group\">\n <label>Weekly Options</label>\n <div class=\"switch-group\">\n <span>Show Weekday Selection</span>\n <ax-switch [(value)]=\"showWeekdaySelection\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'monthly') {\n <div class=\"control-group\">\n <label>Monthly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDays', text: 'Specific Days' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"monthlyRecurrenceMode()\"\n (onValueChanged)=\"monthlyRecurrenceMode.set($event.value)\"\n />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'yearly') {\n <div class=\"control-group\">\n <label>Yearly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDate', text: 'Specific Date' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"yearlyRecurrenceMode()\"\n (onValueChanged)=\"yearlyRecurrenceMode.set($event.value)\"\n />\n </div>\n <div class=\"switch-group\">\n <span>Show Month Selection</span>\n <ax-switch [(value)]=\"showMonthSelection\" />\n </div>\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-config{background:var(--ax-sys-color-surface-container);padding:1.25rem;border-radius:var(--ax-sys-border-radius-md)}.ax-scheduler-picker-config h3{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:var(--ax-sys-color-on-surface)}.ax-scheduler-picker-config .control-group{margin-bottom:1.25rem}.ax-scheduler-picker-config .control-group:last-child{margin-bottom:0}.ax-scheduler-picker-config .control-group>label{display:block;font-size:.875rem;font-weight:500;color:var(--ax-sys-color-on-surface-variant);margin-bottom:.5rem}.ax-scheduler-picker-config .control-group ax-select-box{width:100%}.ax-scheduler-picker-config .control-subgroup{margin-bottom:.75rem}.ax-scheduler-picker-config .control-subgroup label{display:block;font-size:.8125rem;font-weight:500;color:var(--ax-sys-color-on-surface-variant);margin-bottom:.375rem}.ax-scheduler-picker-config .control-subgroup ax-select-box{width:100%}.ax-scheduler-picker-config .switch-group{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;gap:.75rem}.ax-scheduler-picker-config .switch-group span{font-size:.875rem;color:var(--ax-sys-color-on-surface)}.ax-scheduler-picker-config .switch-group ax-switch{flex-shrink:0}\n"], dependencies: [{ kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "component", type: AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2320
2326
|
}
|
|
2321
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2327
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXSchedulerPickerConfigComponent, decorators: [{
|
|
2322
2328
|
type: Component,
|
|
2323
|
-
args: [{ selector: 'ax-scheduler-picker-config', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXSelectBoxComponent, AXSwitchComponent, FormsModule], template: "<div class=\"ax-scheduler-picker-config\">\n <h3>Configuration</h3>\n\n <!-- Mode Selector -->\n <div class=\"control-group\">\n <label>Mode</label>\n <ax-select-box\n [dataSource]=\"modeOptions\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"selectedMode()\"\n (onValueChanged)=\"onModeChange($event.value)\"\n />\n </div>\n\n <!-- Global Options -->\n <div class=\"control-group\">\n <label>Global Options</label>\n <div class=\"switch-group\">\n <span>Show Interval</span>\n <ax-switch [(value)]=\"showInterval\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Start Condition</span>\n <ax-switch [(value)]=\"showStartCondition\" />\n </div>\n <div class=\"switch-group\">\n <span>Show End Conditions</span>\n <ax-switch [(value)]=\"showEndConditions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Exclusions</span>\n <ax-switch [(value)]=\"showExclusions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Inclusions</span>\n <ax-switch [(value)]=\"showInclusions\" />\n </div>\n </div>\n\n <!-- Mode-Specific Options -->\n @if (selectedMode() === 'daily') {\n <div class=\"control-group\">\n <label>Daily Options</label>\n <div class=\"switch-group\">\n <span>Show Weekdays Only</span>\n <ax-switch [(value)]=\"showWeekdaysOnly\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'weekly') {\n <div class=\"control-group\">\n <label>Weekly Options</label>\n <div class=\"switch-group\">\n <span>Show Weekday Selection</span>\n <ax-switch [(value)]=\"showWeekdaySelection\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'monthly') {\n <div class=\"control-group\">\n <label>Monthly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDays', text: 'Specific Days' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"monthlyRecurrenceMode()\"\n (onValueChanged)=\"monthlyRecurrenceMode.set($event.value)\"\n />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'yearly') {\n <div class=\"control-group\">\n <label>Yearly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDate', text: 'Specific Date' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"yearlyRecurrenceMode()\"\n (onValueChanged)=\"yearlyRecurrenceMode.set($event.value)\"\n />\n </div>\n <div class=\"switch-group\">\n <span>Show Month Selection</span>\n <ax-switch [(value)]=\"showMonthSelection\" />\n </div>\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-config{background:var(--ax-sys-color-surface-container);border-radius:var(--ax-sys-border-radius-md)
|
|
2324
|
-
}], ctorParameters: () => []
|
|
2329
|
+
args: [{ selector: 'ax-scheduler-picker-config', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXSelectBoxComponent, AXSwitchComponent, FormsModule], template: "<div class=\"ax-scheduler-picker-config\">\n <h3>Configuration</h3>\n\n <!-- Mode Selector -->\n <div class=\"control-group\">\n <label>Mode</label>\n <ax-select-box\n [dataSource]=\"modeOptions\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"selectedMode()\"\n (onValueChanged)=\"onModeChange($event.value)\"\n />\n </div>\n\n <!-- Global Options -->\n <div class=\"control-group\">\n <label>Global Options</label>\n <div class=\"switch-group\">\n <span>Show Interval</span>\n <ax-switch [(value)]=\"showInterval\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Start Condition</span>\n <ax-switch [(value)]=\"showStartCondition\" />\n </div>\n <div class=\"switch-group\">\n <span>Show End Conditions</span>\n <ax-switch [(value)]=\"showEndConditions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Exclusions</span>\n <ax-switch [(value)]=\"showExclusions\" />\n </div>\n <div class=\"switch-group\">\n <span>Show Inclusions</span>\n <ax-switch [(value)]=\"showInclusions\" />\n </div>\n </div>\n\n <!-- Mode-Specific Options -->\n @if (selectedMode() === 'daily') {\n <div class=\"control-group\">\n <label>Daily Options</label>\n <div class=\"switch-group\">\n <span>Show Weekdays Only</span>\n <ax-switch [(value)]=\"showWeekdaysOnly\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'weekly') {\n <div class=\"control-group\">\n <label>Weekly Options</label>\n <div class=\"switch-group\">\n <span>Show Weekday Selection</span>\n <ax-switch [(value)]=\"showWeekdaySelection\" />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'monthly') {\n <div class=\"control-group\">\n <label>Monthly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDays', text: 'Specific Days' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"monthlyRecurrenceMode()\"\n (onValueChanged)=\"monthlyRecurrenceMode.set($event.value)\"\n />\n </div>\n </div>\n }\n \n @if (selectedMode() === 'yearly') {\n <div class=\"control-group\">\n <label>Yearly Options</label>\n <div class=\"control-subgroup\">\n <label>Recurrence Mode</label>\n <ax-select-box\n [dataSource]=\"[\n { value: 'none', text: 'None' },\n { value: 'specificDate', text: 'Specific Date' },\n { value: 'occurrence', text: 'Occurrence' }\n ]\"\n [textField]=\"'text'\"\n [valueField]=\"'value'\"\n [value]=\"yearlyRecurrenceMode()\"\n (onValueChanged)=\"yearlyRecurrenceMode.set($event.value)\"\n />\n </div>\n <div class=\"switch-group\">\n <span>Show Month Selection</span>\n <ax-switch [(value)]=\"showMonthSelection\" />\n </div>\n </div>\n }\n</div>\n", styles: [".ax-scheduler-picker-config{background:var(--ax-sys-color-surface-container);padding:1.25rem;border-radius:var(--ax-sys-border-radius-md)}.ax-scheduler-picker-config h3{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:var(--ax-sys-color-on-surface)}.ax-scheduler-picker-config .control-group{margin-bottom:1.25rem}.ax-scheduler-picker-config .control-group:last-child{margin-bottom:0}.ax-scheduler-picker-config .control-group>label{display:block;font-size:.875rem;font-weight:500;color:var(--ax-sys-color-on-surface-variant);margin-bottom:.5rem}.ax-scheduler-picker-config .control-group ax-select-box{width:100%}.ax-scheduler-picker-config .control-subgroup{margin-bottom:.75rem}.ax-scheduler-picker-config .control-subgroup label{display:block;font-size:.8125rem;font-weight:500;color:var(--ax-sys-color-on-surface-variant);margin-bottom:.375rem}.ax-scheduler-picker-config .control-subgroup ax-select-box{width:100%}.ax-scheduler-picker-config .switch-group{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;gap:.75rem}.ax-scheduler-picker-config .switch-group span{font-size:.875rem;color:var(--ax-sys-color-on-surface)}.ax-scheduler-picker-config .switch-group ax-switch{flex-shrink:0}\n"] }]
|
|
2330
|
+
}], ctorParameters: () => [] });
|
|
2325
2331
|
|
|
2326
2332
|
// Main component
|
|
2327
2333
|
|