@acorex/components 21.0.0-next.3 → 21.0.0-next.31
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/accordion/index.d.ts +0 -1
- package/autocomplete/index.d.ts +23 -9
- package/button/index.d.ts +38 -17
- package/chips/index.d.ts +3 -8
- package/code-editor/README.md +291 -1
- package/code-editor/index.d.ts +260 -12
- package/command/index.d.ts +1 -0
- package/conversation2/README.md +426 -0
- package/conversation2/index.d.ts +6139 -0
- package/data-table/index.d.ts +79 -7
- package/dialog/index.d.ts +1 -1
- package/drawer/README.md +2 -2
- package/drawer/index.d.ts +33 -57
- package/drawer-legacy/README.md +3 -0
- package/drawer-legacy/index.d.ts +86 -0
- package/editor/README.md +3 -0
- package/editor/index.d.ts +79 -0
- package/fesm2022/acorex-components-accordion.mjs +19 -24
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +12 -12
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +14 -14
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-aspect-ratio.mjs +4 -4
- package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +12 -11
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-autocomplete.mjs +30 -13
- package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +13 -13
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +10 -10
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +12 -12
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +12 -12
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +17 -19
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +78 -29
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +18 -18
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +11 -11
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +12 -14
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +13 -11
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-code-editor.mjs +494 -162
- package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +13 -28
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +11 -11
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +32 -32
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-command.mjs +18 -11
- package/fesm2022/acorex-components-command.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +34 -34
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +56 -65
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation2.mjs +17641 -0
- package/fesm2022/acorex-components-conversation2.mjs.map +1 -0
- package/fesm2022/acorex-components-cron-job.mjs +53 -53
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-list.mjs +5 -5
- package/fesm2022/acorex-components-data-list.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +53 -41
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +462 -105
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +10 -10
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +8 -8
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +11 -11
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +96 -54
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +26 -16
- 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 +66 -150
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +9 -9
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +18 -16
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-editor.mjs +195 -0
- package/fesm2022/acorex-components-editor.mjs.map +1 -0
- package/fesm2022/acorex-components-file-explorer.mjs +28 -28
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
- package/fesm2022/acorex-components-flow-chart.mjs +18 -18
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +52 -35
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +14 -15
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +166 -126
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +10 -10
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +9 -9
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kanban.mjs +9 -7
- package/fesm2022/acorex-components-kanban.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +8 -8
- 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 +10 -10
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +22 -13
- 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 +16 -15
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +78 -97
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +24 -24
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/{acorex-components-modal-acorex-components-modal-h5Y-qcbh.mjs → acorex-components-modal-acorex-components-modal-BmmAkCKJ.mjs} +24 -24
- package/fesm2022/acorex-components-modal-acorex-components-modal-BmmAkCKJ.mjs.map +1 -0
- package/fesm2022/acorex-components-modal-modal-content.component-5GqTzNOs.mjs +214 -0
- package/fesm2022/acorex-components-modal-modal-content.component-5GqTzNOs.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 +16 -23
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box-legacy.mjs +412 -0
- package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
- package/fesm2022/acorex-components-number-box.mjs +98 -331
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +10 -10
- 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 +35 -40
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +13 -13
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +8 -8
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +10 -10
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +17 -17
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +12 -12
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +13 -13
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +11 -9
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +8 -8
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +9 -9
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +7 -7
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +40 -38
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +11 -11
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +20 -35
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +23 -23
- 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 +111 -16
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +2339 -0
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -0
- package/fesm2022/acorex-components-scheduler.mjs +52 -52
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +4 -4
- package/fesm2022/acorex-components-scss.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +23 -12
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +36 -17
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +10 -10
- package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +10 -10
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +31 -38
- 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 +11 -11
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +17 -17
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +16 -16
- 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 +20 -16
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +51 -21
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +47 -11
- 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 +13 -13
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +54 -14
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +14 -29
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +14 -14
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +9 -9
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +12 -12
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +16 -45
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-tree2.mjs +689 -0
- package/fesm2022/acorex-components-tree2.mjs.map +1 -0
- package/fesm2022/acorex-components-uploader.mjs +28 -641
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +8 -8
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +213 -462
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/form/index.d.ts +3 -3
- package/grid-layout-builder/index.d.ts +1 -2
- package/image-editor/index.d.ts +8 -5
- package/loading/index.d.ts +1 -1
- package/media-viewer/index.d.ts +2 -3
- package/notification/index.d.ts +0 -2
- package/number-box/README.md +2 -2
- package/number-box/index.d.ts +31 -171
- package/number-box-legacy/README.md +3 -0
- package/number-box-legacy/index.d.ts +191 -0
- package/package.json +53 -26
- package/paint/index.d.ts +1 -6
- package/phone-box/index.d.ts +4 -4
- package/rate-picker/index.d.ts +5 -15
- package/rrule/index.d.ts +96 -1
- package/scheduler-picker/README.md +15 -0
- package/scheduler-picker/index.d.ts +1360 -0
- package/search-box/index.d.ts +6 -1
- package/select-box/index.d.ts +15 -10
- package/side-menu/index.d.ts +3 -2
- package/tag/index.d.ts +8 -2
- package/tag-box/index.d.ts +12 -3
- package/time-duration/index.d.ts +19 -3
- package/tree2/README.md +3 -0
- package/tree2/index.d.ts +337 -0
- package/uploader/index.d.ts +4 -331
- package/wysiwyg/index.d.ts +57 -159
- package/drawer-2/README.md +0 -3
- package/drawer-2/index.d.ts +0 -62
- package/fesm2022/acorex-components-drawer-2.mjs +0 -134
- package/fesm2022/acorex-components-drawer-2.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-acorex-components-modal-h5Y-qcbh.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-B6tyMLdU.mjs +0 -235
- package/fesm2022/acorex-components-modal-modal-content.component-B6tyMLdU.mjs.map +0 -1
- package/fesm2022/acorex-components-number-box-2.mjs +0 -183
- package/fesm2022/acorex-components-number-box-2.mjs.map +0 -1
- package/number-box-2/README.md +0 -3
- package/number-box-2/index.d.ts +0 -41
|
@@ -0,0 +1,1360 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { InjectionToken } from '@angular/core';
|
|
3
|
+
import { MXValueComponent, AXValueChangedEvent } from '@acorex/cdk/common';
|
|
4
|
+
|
|
5
|
+
type AXSchedulerPickerMode = 'hourly' | 'daily' | 'weekly' | 'monthly' | 'yearly';
|
|
6
|
+
/**
|
|
7
|
+
* Occurrence position and day of week
|
|
8
|
+
* Used for monthly and yearly recurrence patterns
|
|
9
|
+
*/
|
|
10
|
+
interface AXSchedulerPickerOccurrence {
|
|
11
|
+
position: 1 | 2 | 3 | 4 | -1;
|
|
12
|
+
day: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Main value structure for scheduler picker
|
|
16
|
+
* General pattern that works for all modes
|
|
17
|
+
*/
|
|
18
|
+
type AXSchedulerPickerValue = {
|
|
19
|
+
mode: AXSchedulerPickerMode;
|
|
20
|
+
interval: number;
|
|
21
|
+
startCondition: {
|
|
22
|
+
type: 'now' | 'byDate';
|
|
23
|
+
startDate: Date;
|
|
24
|
+
};
|
|
25
|
+
recurrence: {
|
|
26
|
+
byDay?: number[];
|
|
27
|
+
byOccurrence?: Array<{
|
|
28
|
+
position: 1 | 2 | 3 | 4 | -1;
|
|
29
|
+
dayOfWeek: number;
|
|
30
|
+
}>;
|
|
31
|
+
byMonth?: number[];
|
|
32
|
+
byMinute?: number[];
|
|
33
|
+
byHour?: number[];
|
|
34
|
+
};
|
|
35
|
+
endCondition: {
|
|
36
|
+
type: 'never' | 'afterOccurrences' | 'byDate';
|
|
37
|
+
occurrences?: number;
|
|
38
|
+
endDate?: Date;
|
|
39
|
+
};
|
|
40
|
+
exclusions?: Date[];
|
|
41
|
+
inclusions?: Date[];
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Recurrence selection mode for monthly scheduling
|
|
45
|
+
*/
|
|
46
|
+
type AXSchedulerPickerMonthlyRecurrenceMode = 'none' | 'specificDays' | 'occurrence';
|
|
47
|
+
/**
|
|
48
|
+
* Recurrence selection mode for yearly scheduling
|
|
49
|
+
*/
|
|
50
|
+
type AXSchedulerPickerYearlyRecurrenceMode = 'none' | 'specificDate' | 'occurrence';
|
|
51
|
+
/**
|
|
52
|
+
* Mode-specific feature options
|
|
53
|
+
*/
|
|
54
|
+
type AXSchedulerPickerHourlyOptions = {
|
|
55
|
+
showInterval?: boolean;
|
|
56
|
+
};
|
|
57
|
+
type AXSchedulerPickerDailyOptions = {
|
|
58
|
+
showInterval?: boolean;
|
|
59
|
+
showWeekdaysOnly?: boolean;
|
|
60
|
+
};
|
|
61
|
+
type AXSchedulerPickerWeeklyOptions = {
|
|
62
|
+
showInterval?: boolean;
|
|
63
|
+
showWeekdaySelection?: boolean;
|
|
64
|
+
};
|
|
65
|
+
type AXSchedulerPickerMonthlyOptions = {
|
|
66
|
+
showInterval?: boolean;
|
|
67
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
68
|
+
};
|
|
69
|
+
type AXSchedulerPickerYearlyOptions = {
|
|
70
|
+
showInterval?: boolean;
|
|
71
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
72
|
+
showMonthSelection?: boolean;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Type-safe union based on mode
|
|
76
|
+
*/
|
|
77
|
+
type AXSchedulerPickerOptions<T extends AXSchedulerPickerMode> = T extends 'hourly' ? AXSchedulerPickerHourlyOptions : T extends 'daily' ? AXSchedulerPickerDailyOptions : T extends 'weekly' ? AXSchedulerPickerWeeklyOptions : T extends 'monthly' ? AXSchedulerPickerMonthlyOptions : T extends 'yearly' ? AXSchedulerPickerYearlyOptions : never;
|
|
78
|
+
/**
|
|
79
|
+
* Custom validator function type
|
|
80
|
+
*/
|
|
81
|
+
type AXSchedulerPickerCustomValidator = (value: AXSchedulerPickerValue, settings: AXSchedulerPickerSettings) => AXSchedulerPickerValidationError | null;
|
|
82
|
+
/**
|
|
83
|
+
* Validation error codes
|
|
84
|
+
*/
|
|
85
|
+
type AXSchedulerPickerValidationErrorCode = 'required' | 'invalid' | 'outOfRange' | 'conflict' | 'empty' | 'invalidDate' | 'pastDate' | 'custom';
|
|
86
|
+
/**
|
|
87
|
+
* Validation error structure
|
|
88
|
+
*/
|
|
89
|
+
type AXSchedulerPickerValidationError = {
|
|
90
|
+
field: string;
|
|
91
|
+
code: AXSchedulerPickerValidationErrorCode;
|
|
92
|
+
message: string;
|
|
93
|
+
params?: Record<string, any>;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Type-safe settings based on mode
|
|
97
|
+
*/
|
|
98
|
+
type AXSchedulerPickerSettings<T extends AXSchedulerPickerMode = AXSchedulerPickerMode> = {
|
|
99
|
+
mode: T;
|
|
100
|
+
options?: AXSchedulerPickerOptions<T>;
|
|
101
|
+
showStartCondition?: boolean;
|
|
102
|
+
showEndConditions?: boolean;
|
|
103
|
+
showExclusions?: boolean;
|
|
104
|
+
showInclusions?: boolean;
|
|
105
|
+
minInterval?: number;
|
|
106
|
+
maxInterval?: number;
|
|
107
|
+
minDate?: Date;
|
|
108
|
+
maxDate?: Date;
|
|
109
|
+
defaultInterval?: number;
|
|
110
|
+
firstDayOfWeek?: number;
|
|
111
|
+
locale?: string;
|
|
112
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
113
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
114
|
+
};
|
|
115
|
+
type AXSchedulerPickerConfig<T extends AXSchedulerPickerMode = AXSchedulerPickerMode> = AXSchedulerPickerSettings<T>;
|
|
116
|
+
type AXSchedulerPickerHourlyConfig = AXSchedulerPickerSettings<'hourly'>;
|
|
117
|
+
type AXSchedulerPickerDailyConfig = AXSchedulerPickerSettings<'daily'>;
|
|
118
|
+
type AXSchedulerPickerWeeklyConfig = AXSchedulerPickerSettings<'weekly'>;
|
|
119
|
+
type AXSchedulerPickerMonthlyConfig = AXSchedulerPickerSettings<'monthly'>;
|
|
120
|
+
type AXSchedulerPickerYearlyConfig = AXSchedulerPickerSettings<'yearly'>;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* A powerful, fully customizable scheduler picker component for creating recurrence patterns
|
|
124
|
+
*
|
|
125
|
+
* ## Features
|
|
126
|
+
* - Supports 5 modes: hourly, daily, weekly, monthly, and yearly
|
|
127
|
+
* - Flexible start and end conditions
|
|
128
|
+
* - Date exclusions and inclusions
|
|
129
|
+
* - Natural language summary generation
|
|
130
|
+
* - Export to Cron and RRule (iCalendar) formats
|
|
131
|
+
* - Full i18n support
|
|
132
|
+
* - Type-safe configuration
|
|
133
|
+
*
|
|
134
|
+
* ## Basic Usage
|
|
135
|
+
* ```typescript
|
|
136
|
+
* <ax-scheduler-picker
|
|
137
|
+
* [config]="{ mode: 'daily', showEndConditions: true }"
|
|
138
|
+
* [(value)]="pattern"
|
|
139
|
+
* (summaryChange)="onSummaryChange($event)"
|
|
140
|
+
* />
|
|
141
|
+
* ```
|
|
142
|
+
*
|
|
143
|
+
* ## Public API
|
|
144
|
+
* - `validatePattern()` - Manually trigger validation
|
|
145
|
+
* - `getPreview(count)` - Get next N occurrences
|
|
146
|
+
* - `toCron()` - Convert to cron expression
|
|
147
|
+
* - `toRRule()` - Convert to RRule string
|
|
148
|
+
* - `reset()` - Reset to default pattern
|
|
149
|
+
* - `clear()` - Clear all data
|
|
150
|
+
* - `validationErrors` - Signal containing current validation errors
|
|
151
|
+
*
|
|
152
|
+
* @category Components
|
|
153
|
+
*/
|
|
154
|
+
declare class AXSchedulerPickerComponent extends MXValueComponent<AXSchedulerPickerValue> {
|
|
155
|
+
/**
|
|
156
|
+
* Settings for the scheduler picker
|
|
157
|
+
* Controls which options are visible and behavior
|
|
158
|
+
*/
|
|
159
|
+
config: _angular_core.InputSignal<AXSchedulerPickerSettings>;
|
|
160
|
+
/**
|
|
161
|
+
* Emits when the human-readable summary changes
|
|
162
|
+
*/
|
|
163
|
+
summaryChange: _angular_core.OutputEmitterRef<string>;
|
|
164
|
+
private service;
|
|
165
|
+
/**
|
|
166
|
+
* Internal pattern value
|
|
167
|
+
*/
|
|
168
|
+
protected pattern: _angular_core.WritableSignal<AXSchedulerPickerValue>;
|
|
169
|
+
/**
|
|
170
|
+
* Current mode derived from config
|
|
171
|
+
*/
|
|
172
|
+
protected mode: _angular_core.Signal<AXSchedulerPickerMode>;
|
|
173
|
+
/**
|
|
174
|
+
* Effect run counter to prevent stale async updates
|
|
175
|
+
*/
|
|
176
|
+
private effectRunId;
|
|
177
|
+
/**
|
|
178
|
+
* Merged configuration with defaults
|
|
179
|
+
*/
|
|
180
|
+
protected mergedConfig: _angular_core.Signal<{
|
|
181
|
+
options: {
|
|
182
|
+
showInterval?: boolean;
|
|
183
|
+
} | {
|
|
184
|
+
showInterval?: boolean;
|
|
185
|
+
showWeekdaysOnly?: boolean;
|
|
186
|
+
} | {
|
|
187
|
+
showInterval?: boolean;
|
|
188
|
+
showWeekdaySelection?: boolean;
|
|
189
|
+
} | {
|
|
190
|
+
showInterval?: boolean;
|
|
191
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
192
|
+
} | {
|
|
193
|
+
showInterval?: boolean;
|
|
194
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
195
|
+
showMonthSelection?: boolean;
|
|
196
|
+
} | {
|
|
197
|
+
showInterval?: boolean;
|
|
198
|
+
showWeekdaysOnly?: boolean;
|
|
199
|
+
} | {
|
|
200
|
+
showInterval?: boolean;
|
|
201
|
+
showWeekdaysOnly?: boolean;
|
|
202
|
+
} | {
|
|
203
|
+
showInterval?: boolean;
|
|
204
|
+
showWeekdaySelection?: boolean;
|
|
205
|
+
showWeekdaysOnly?: boolean;
|
|
206
|
+
} | {
|
|
207
|
+
showInterval?: boolean;
|
|
208
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
209
|
+
showWeekdaysOnly?: boolean;
|
|
210
|
+
} | {
|
|
211
|
+
showInterval?: boolean;
|
|
212
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
213
|
+
showMonthSelection?: boolean;
|
|
214
|
+
showWeekdaysOnly?: boolean;
|
|
215
|
+
} | {
|
|
216
|
+
showInterval?: boolean;
|
|
217
|
+
showWeekdaySelection?: boolean;
|
|
218
|
+
} | {
|
|
219
|
+
showInterval?: boolean;
|
|
220
|
+
showWeekdaysOnly?: boolean;
|
|
221
|
+
showWeekdaySelection?: boolean;
|
|
222
|
+
} | {
|
|
223
|
+
showInterval?: boolean;
|
|
224
|
+
showWeekdaySelection?: boolean;
|
|
225
|
+
} | {
|
|
226
|
+
showInterval?: boolean;
|
|
227
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
228
|
+
showWeekdaySelection?: boolean;
|
|
229
|
+
} | {
|
|
230
|
+
showInterval?: boolean;
|
|
231
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
232
|
+
showMonthSelection?: boolean;
|
|
233
|
+
showWeekdaySelection?: boolean;
|
|
234
|
+
} | {
|
|
235
|
+
showInterval?: boolean;
|
|
236
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
237
|
+
} | {
|
|
238
|
+
showInterval?: boolean;
|
|
239
|
+
showWeekdaysOnly?: boolean;
|
|
240
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
241
|
+
} | {
|
|
242
|
+
showInterval?: boolean;
|
|
243
|
+
showWeekdaySelection?: boolean;
|
|
244
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
245
|
+
} | {
|
|
246
|
+
showInterval?: boolean;
|
|
247
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
248
|
+
} | {
|
|
249
|
+
showInterval?: boolean;
|
|
250
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
251
|
+
showMonthSelection?: boolean;
|
|
252
|
+
} | {
|
|
253
|
+
showInterval?: boolean;
|
|
254
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
255
|
+
showMonthSelection?: boolean;
|
|
256
|
+
} | {
|
|
257
|
+
showInterval?: boolean;
|
|
258
|
+
showWeekdaysOnly?: boolean;
|
|
259
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
260
|
+
showMonthSelection?: boolean;
|
|
261
|
+
} | {
|
|
262
|
+
showInterval?: boolean;
|
|
263
|
+
showWeekdaySelection?: boolean;
|
|
264
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
265
|
+
showMonthSelection?: boolean;
|
|
266
|
+
} | {
|
|
267
|
+
showInterval?: boolean;
|
|
268
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
269
|
+
showMonthSelection?: boolean;
|
|
270
|
+
} | {
|
|
271
|
+
showInterval?: boolean;
|
|
272
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
273
|
+
showMonthSelection?: boolean;
|
|
274
|
+
};
|
|
275
|
+
mode: AXSchedulerPickerMode;
|
|
276
|
+
showStartCondition?: boolean;
|
|
277
|
+
showEndConditions?: boolean;
|
|
278
|
+
showExclusions?: boolean;
|
|
279
|
+
showInclusions?: boolean;
|
|
280
|
+
minInterval?: number;
|
|
281
|
+
maxInterval?: number;
|
|
282
|
+
minDate?: Date;
|
|
283
|
+
maxDate?: Date;
|
|
284
|
+
defaultInterval?: number;
|
|
285
|
+
firstDayOfWeek?: number;
|
|
286
|
+
locale?: string;
|
|
287
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
288
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
289
|
+
} | {
|
|
290
|
+
options: {
|
|
291
|
+
showInterval?: boolean;
|
|
292
|
+
} | {
|
|
293
|
+
showInterval?: boolean;
|
|
294
|
+
showWeekdaysOnly?: boolean;
|
|
295
|
+
} | {
|
|
296
|
+
showInterval?: boolean;
|
|
297
|
+
showWeekdaySelection?: boolean;
|
|
298
|
+
} | {
|
|
299
|
+
showInterval?: boolean;
|
|
300
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
301
|
+
} | {
|
|
302
|
+
showInterval?: boolean;
|
|
303
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
304
|
+
showMonthSelection?: boolean;
|
|
305
|
+
} | {
|
|
306
|
+
showInterval?: boolean;
|
|
307
|
+
showWeekdaysOnly?: boolean;
|
|
308
|
+
} | {
|
|
309
|
+
showInterval?: boolean;
|
|
310
|
+
showWeekdaysOnly?: boolean;
|
|
311
|
+
} | {
|
|
312
|
+
showInterval?: boolean;
|
|
313
|
+
showWeekdaySelection?: boolean;
|
|
314
|
+
showWeekdaysOnly?: boolean;
|
|
315
|
+
} | {
|
|
316
|
+
showInterval?: boolean;
|
|
317
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
318
|
+
showWeekdaysOnly?: boolean;
|
|
319
|
+
} | {
|
|
320
|
+
showInterval?: boolean;
|
|
321
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
322
|
+
showMonthSelection?: boolean;
|
|
323
|
+
showWeekdaysOnly?: boolean;
|
|
324
|
+
} | {
|
|
325
|
+
showInterval?: boolean;
|
|
326
|
+
showWeekdaySelection?: boolean;
|
|
327
|
+
} | {
|
|
328
|
+
showInterval?: boolean;
|
|
329
|
+
showWeekdaysOnly?: boolean;
|
|
330
|
+
showWeekdaySelection?: boolean;
|
|
331
|
+
} | {
|
|
332
|
+
showInterval?: boolean;
|
|
333
|
+
showWeekdaySelection?: boolean;
|
|
334
|
+
} | {
|
|
335
|
+
showInterval?: boolean;
|
|
336
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
337
|
+
showWeekdaySelection?: boolean;
|
|
338
|
+
} | {
|
|
339
|
+
showInterval?: boolean;
|
|
340
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
341
|
+
showMonthSelection?: boolean;
|
|
342
|
+
showWeekdaySelection?: boolean;
|
|
343
|
+
} | {
|
|
344
|
+
showInterval?: boolean;
|
|
345
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
346
|
+
} | {
|
|
347
|
+
showInterval?: boolean;
|
|
348
|
+
showWeekdaysOnly?: boolean;
|
|
349
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
350
|
+
} | {
|
|
351
|
+
showInterval?: boolean;
|
|
352
|
+
showWeekdaySelection?: boolean;
|
|
353
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
354
|
+
} | {
|
|
355
|
+
showInterval?: boolean;
|
|
356
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
357
|
+
} | {
|
|
358
|
+
showInterval?: boolean;
|
|
359
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
360
|
+
showMonthSelection?: boolean;
|
|
361
|
+
} | {
|
|
362
|
+
showInterval?: boolean;
|
|
363
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
364
|
+
showMonthSelection?: boolean;
|
|
365
|
+
} | {
|
|
366
|
+
showInterval?: boolean;
|
|
367
|
+
showWeekdaysOnly?: boolean;
|
|
368
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
369
|
+
showMonthSelection?: boolean;
|
|
370
|
+
} | {
|
|
371
|
+
showInterval?: boolean;
|
|
372
|
+
showWeekdaySelection?: boolean;
|
|
373
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
374
|
+
showMonthSelection?: boolean;
|
|
375
|
+
} | {
|
|
376
|
+
showInterval?: boolean;
|
|
377
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
378
|
+
showMonthSelection?: boolean;
|
|
379
|
+
} | {
|
|
380
|
+
showInterval?: boolean;
|
|
381
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
382
|
+
showMonthSelection?: boolean;
|
|
383
|
+
};
|
|
384
|
+
mode: AXSchedulerPickerMode;
|
|
385
|
+
showStartCondition?: boolean;
|
|
386
|
+
showEndConditions?: boolean;
|
|
387
|
+
showExclusions?: boolean;
|
|
388
|
+
showInclusions?: boolean;
|
|
389
|
+
minInterval?: number;
|
|
390
|
+
maxInterval?: number;
|
|
391
|
+
minDate?: Date;
|
|
392
|
+
maxDate?: Date;
|
|
393
|
+
defaultInterval?: number;
|
|
394
|
+
firstDayOfWeek?: number;
|
|
395
|
+
locale?: string;
|
|
396
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
397
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
398
|
+
} | {
|
|
399
|
+
options: {
|
|
400
|
+
showInterval?: boolean;
|
|
401
|
+
} | {
|
|
402
|
+
showInterval?: boolean;
|
|
403
|
+
showWeekdaysOnly?: boolean;
|
|
404
|
+
} | {
|
|
405
|
+
showInterval?: boolean;
|
|
406
|
+
showWeekdaySelection?: boolean;
|
|
407
|
+
} | {
|
|
408
|
+
showInterval?: boolean;
|
|
409
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
410
|
+
} | {
|
|
411
|
+
showInterval?: boolean;
|
|
412
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
413
|
+
showMonthSelection?: boolean;
|
|
414
|
+
} | {
|
|
415
|
+
showInterval?: boolean;
|
|
416
|
+
showWeekdaysOnly?: boolean;
|
|
417
|
+
} | {
|
|
418
|
+
showInterval?: boolean;
|
|
419
|
+
showWeekdaysOnly?: boolean;
|
|
420
|
+
} | {
|
|
421
|
+
showInterval?: boolean;
|
|
422
|
+
showWeekdaySelection?: boolean;
|
|
423
|
+
showWeekdaysOnly?: boolean;
|
|
424
|
+
} | {
|
|
425
|
+
showInterval?: boolean;
|
|
426
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
427
|
+
showWeekdaysOnly?: boolean;
|
|
428
|
+
} | {
|
|
429
|
+
showInterval?: boolean;
|
|
430
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
431
|
+
showMonthSelection?: boolean;
|
|
432
|
+
showWeekdaysOnly?: boolean;
|
|
433
|
+
} | {
|
|
434
|
+
showInterval?: boolean;
|
|
435
|
+
showWeekdaySelection?: boolean;
|
|
436
|
+
} | {
|
|
437
|
+
showInterval?: boolean;
|
|
438
|
+
showWeekdaysOnly?: boolean;
|
|
439
|
+
showWeekdaySelection?: boolean;
|
|
440
|
+
} | {
|
|
441
|
+
showInterval?: boolean;
|
|
442
|
+
showWeekdaySelection?: boolean;
|
|
443
|
+
} | {
|
|
444
|
+
showInterval?: boolean;
|
|
445
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
446
|
+
showWeekdaySelection?: boolean;
|
|
447
|
+
} | {
|
|
448
|
+
showInterval?: boolean;
|
|
449
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
450
|
+
showMonthSelection?: boolean;
|
|
451
|
+
showWeekdaySelection?: boolean;
|
|
452
|
+
} | {
|
|
453
|
+
showInterval?: boolean;
|
|
454
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
455
|
+
} | {
|
|
456
|
+
showInterval?: boolean;
|
|
457
|
+
showWeekdaysOnly?: boolean;
|
|
458
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
459
|
+
} | {
|
|
460
|
+
showInterval?: boolean;
|
|
461
|
+
showWeekdaySelection?: boolean;
|
|
462
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
463
|
+
} | {
|
|
464
|
+
showInterval?: boolean;
|
|
465
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
466
|
+
} | {
|
|
467
|
+
showInterval?: boolean;
|
|
468
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
469
|
+
showMonthSelection?: boolean;
|
|
470
|
+
} | {
|
|
471
|
+
showInterval?: boolean;
|
|
472
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
473
|
+
showMonthSelection?: boolean;
|
|
474
|
+
} | {
|
|
475
|
+
showInterval?: boolean;
|
|
476
|
+
showWeekdaysOnly?: boolean;
|
|
477
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
478
|
+
showMonthSelection?: boolean;
|
|
479
|
+
} | {
|
|
480
|
+
showInterval?: boolean;
|
|
481
|
+
showWeekdaySelection?: boolean;
|
|
482
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
483
|
+
showMonthSelection?: boolean;
|
|
484
|
+
} | {
|
|
485
|
+
showInterval?: boolean;
|
|
486
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
487
|
+
showMonthSelection?: boolean;
|
|
488
|
+
} | {
|
|
489
|
+
showInterval?: boolean;
|
|
490
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
491
|
+
showMonthSelection?: boolean;
|
|
492
|
+
};
|
|
493
|
+
mode: AXSchedulerPickerMode;
|
|
494
|
+
showStartCondition?: boolean;
|
|
495
|
+
showEndConditions?: boolean;
|
|
496
|
+
showExclusions?: boolean;
|
|
497
|
+
showInclusions?: boolean;
|
|
498
|
+
minInterval?: number;
|
|
499
|
+
maxInterval?: number;
|
|
500
|
+
minDate?: Date;
|
|
501
|
+
maxDate?: Date;
|
|
502
|
+
defaultInterval?: number;
|
|
503
|
+
firstDayOfWeek?: number;
|
|
504
|
+
locale?: string;
|
|
505
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
506
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
507
|
+
} | {
|
|
508
|
+
options: {
|
|
509
|
+
showInterval?: boolean;
|
|
510
|
+
} | {
|
|
511
|
+
showInterval?: boolean;
|
|
512
|
+
showWeekdaysOnly?: boolean;
|
|
513
|
+
} | {
|
|
514
|
+
showInterval?: boolean;
|
|
515
|
+
showWeekdaySelection?: boolean;
|
|
516
|
+
} | {
|
|
517
|
+
showInterval?: boolean;
|
|
518
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
519
|
+
} | {
|
|
520
|
+
showInterval?: boolean;
|
|
521
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
522
|
+
showMonthSelection?: boolean;
|
|
523
|
+
} | {
|
|
524
|
+
showInterval?: boolean;
|
|
525
|
+
showWeekdaysOnly?: boolean;
|
|
526
|
+
} | {
|
|
527
|
+
showInterval?: boolean;
|
|
528
|
+
showWeekdaysOnly?: boolean;
|
|
529
|
+
} | {
|
|
530
|
+
showInterval?: boolean;
|
|
531
|
+
showWeekdaySelection?: boolean;
|
|
532
|
+
showWeekdaysOnly?: boolean;
|
|
533
|
+
} | {
|
|
534
|
+
showInterval?: boolean;
|
|
535
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
536
|
+
showWeekdaysOnly?: boolean;
|
|
537
|
+
} | {
|
|
538
|
+
showInterval?: boolean;
|
|
539
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
540
|
+
showMonthSelection?: boolean;
|
|
541
|
+
showWeekdaysOnly?: boolean;
|
|
542
|
+
} | {
|
|
543
|
+
showInterval?: boolean;
|
|
544
|
+
showWeekdaySelection?: boolean;
|
|
545
|
+
} | {
|
|
546
|
+
showInterval?: boolean;
|
|
547
|
+
showWeekdaysOnly?: boolean;
|
|
548
|
+
showWeekdaySelection?: boolean;
|
|
549
|
+
} | {
|
|
550
|
+
showInterval?: boolean;
|
|
551
|
+
showWeekdaySelection?: boolean;
|
|
552
|
+
} | {
|
|
553
|
+
showInterval?: boolean;
|
|
554
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
555
|
+
showWeekdaySelection?: boolean;
|
|
556
|
+
} | {
|
|
557
|
+
showInterval?: boolean;
|
|
558
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
559
|
+
showMonthSelection?: boolean;
|
|
560
|
+
showWeekdaySelection?: boolean;
|
|
561
|
+
} | {
|
|
562
|
+
showInterval?: boolean;
|
|
563
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
564
|
+
} | {
|
|
565
|
+
showInterval?: boolean;
|
|
566
|
+
showWeekdaysOnly?: boolean;
|
|
567
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
568
|
+
} | {
|
|
569
|
+
showInterval?: boolean;
|
|
570
|
+
showWeekdaySelection?: boolean;
|
|
571
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
572
|
+
} | {
|
|
573
|
+
showInterval?: boolean;
|
|
574
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
575
|
+
} | {
|
|
576
|
+
showInterval?: boolean;
|
|
577
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
578
|
+
showMonthSelection?: boolean;
|
|
579
|
+
} | {
|
|
580
|
+
showInterval?: boolean;
|
|
581
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
582
|
+
showMonthSelection?: boolean;
|
|
583
|
+
} | {
|
|
584
|
+
showInterval?: boolean;
|
|
585
|
+
showWeekdaysOnly?: boolean;
|
|
586
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
587
|
+
showMonthSelection?: boolean;
|
|
588
|
+
} | {
|
|
589
|
+
showInterval?: boolean;
|
|
590
|
+
showWeekdaySelection?: boolean;
|
|
591
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
592
|
+
showMonthSelection?: boolean;
|
|
593
|
+
} | {
|
|
594
|
+
showInterval?: boolean;
|
|
595
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
596
|
+
showMonthSelection?: boolean;
|
|
597
|
+
} | {
|
|
598
|
+
showInterval?: boolean;
|
|
599
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
600
|
+
showMonthSelection?: boolean;
|
|
601
|
+
};
|
|
602
|
+
mode: AXSchedulerPickerMode;
|
|
603
|
+
showStartCondition?: boolean;
|
|
604
|
+
showEndConditions?: boolean;
|
|
605
|
+
showExclusions?: boolean;
|
|
606
|
+
showInclusions?: boolean;
|
|
607
|
+
minInterval?: number;
|
|
608
|
+
maxInterval?: number;
|
|
609
|
+
minDate?: Date;
|
|
610
|
+
maxDate?: Date;
|
|
611
|
+
defaultInterval?: number;
|
|
612
|
+
firstDayOfWeek?: number;
|
|
613
|
+
locale?: string;
|
|
614
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
615
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
616
|
+
} | {
|
|
617
|
+
options: {
|
|
618
|
+
showInterval?: boolean;
|
|
619
|
+
} | {
|
|
620
|
+
showInterval?: boolean;
|
|
621
|
+
showWeekdaysOnly?: boolean;
|
|
622
|
+
} | {
|
|
623
|
+
showInterval?: boolean;
|
|
624
|
+
showWeekdaySelection?: boolean;
|
|
625
|
+
} | {
|
|
626
|
+
showInterval?: boolean;
|
|
627
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
628
|
+
} | {
|
|
629
|
+
showInterval?: boolean;
|
|
630
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
631
|
+
showMonthSelection?: boolean;
|
|
632
|
+
} | {
|
|
633
|
+
showInterval?: boolean;
|
|
634
|
+
showWeekdaysOnly?: boolean;
|
|
635
|
+
} | {
|
|
636
|
+
showInterval?: boolean;
|
|
637
|
+
showWeekdaysOnly?: boolean;
|
|
638
|
+
} | {
|
|
639
|
+
showInterval?: boolean;
|
|
640
|
+
showWeekdaySelection?: boolean;
|
|
641
|
+
showWeekdaysOnly?: boolean;
|
|
642
|
+
} | {
|
|
643
|
+
showInterval?: boolean;
|
|
644
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
645
|
+
showWeekdaysOnly?: boolean;
|
|
646
|
+
} | {
|
|
647
|
+
showInterval?: boolean;
|
|
648
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
649
|
+
showMonthSelection?: boolean;
|
|
650
|
+
showWeekdaysOnly?: boolean;
|
|
651
|
+
} | {
|
|
652
|
+
showInterval?: boolean;
|
|
653
|
+
showWeekdaySelection?: boolean;
|
|
654
|
+
} | {
|
|
655
|
+
showInterval?: boolean;
|
|
656
|
+
showWeekdaysOnly?: boolean;
|
|
657
|
+
showWeekdaySelection?: boolean;
|
|
658
|
+
} | {
|
|
659
|
+
showInterval?: boolean;
|
|
660
|
+
showWeekdaySelection?: boolean;
|
|
661
|
+
} | {
|
|
662
|
+
showInterval?: boolean;
|
|
663
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
664
|
+
showWeekdaySelection?: boolean;
|
|
665
|
+
} | {
|
|
666
|
+
showInterval?: boolean;
|
|
667
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
668
|
+
showMonthSelection?: boolean;
|
|
669
|
+
showWeekdaySelection?: boolean;
|
|
670
|
+
} | {
|
|
671
|
+
showInterval?: boolean;
|
|
672
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
673
|
+
} | {
|
|
674
|
+
showInterval?: boolean;
|
|
675
|
+
showWeekdaysOnly?: boolean;
|
|
676
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
677
|
+
} | {
|
|
678
|
+
showInterval?: boolean;
|
|
679
|
+
showWeekdaySelection?: boolean;
|
|
680
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
681
|
+
} | {
|
|
682
|
+
showInterval?: boolean;
|
|
683
|
+
recurrenceMode?: AXSchedulerPickerMonthlyRecurrenceMode;
|
|
684
|
+
} | {
|
|
685
|
+
showInterval?: boolean;
|
|
686
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
687
|
+
showMonthSelection?: boolean;
|
|
688
|
+
} | {
|
|
689
|
+
showInterval?: boolean;
|
|
690
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
691
|
+
showMonthSelection?: boolean;
|
|
692
|
+
} | {
|
|
693
|
+
showInterval?: boolean;
|
|
694
|
+
showWeekdaysOnly?: boolean;
|
|
695
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
696
|
+
showMonthSelection?: boolean;
|
|
697
|
+
} | {
|
|
698
|
+
showInterval?: boolean;
|
|
699
|
+
showWeekdaySelection?: boolean;
|
|
700
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
701
|
+
showMonthSelection?: boolean;
|
|
702
|
+
} | {
|
|
703
|
+
showInterval?: boolean;
|
|
704
|
+
recurrenceMode?: "none" | "specificDays" | "occurrence" | "specificDate";
|
|
705
|
+
showMonthSelection?: boolean;
|
|
706
|
+
} | {
|
|
707
|
+
showInterval?: boolean;
|
|
708
|
+
recurrenceMode?: AXSchedulerPickerYearlyRecurrenceMode;
|
|
709
|
+
showMonthSelection?: boolean;
|
|
710
|
+
};
|
|
711
|
+
mode: AXSchedulerPickerMode;
|
|
712
|
+
showStartCondition?: boolean;
|
|
713
|
+
showEndConditions?: boolean;
|
|
714
|
+
showExclusions?: boolean;
|
|
715
|
+
showInclusions?: boolean;
|
|
716
|
+
minInterval?: number;
|
|
717
|
+
maxInterval?: number;
|
|
718
|
+
minDate?: Date;
|
|
719
|
+
maxDate?: Date;
|
|
720
|
+
defaultInterval?: number;
|
|
721
|
+
firstDayOfWeek?: number;
|
|
722
|
+
locale?: string;
|
|
723
|
+
customValidators?: AXSchedulerPickerCustomValidator[];
|
|
724
|
+
holidayProvider?: () => Date[] | Promise<Date[]>;
|
|
725
|
+
}>;
|
|
726
|
+
/**
|
|
727
|
+
* Validation errors (public for external access)
|
|
728
|
+
*/
|
|
729
|
+
readonly validationErrors: _angular_core.WritableSignal<string[]>;
|
|
730
|
+
/**
|
|
731
|
+
* Human-readable summary of the pattern
|
|
732
|
+
*/
|
|
733
|
+
protected summary: _angular_core.WritableSignal<string>;
|
|
734
|
+
protected internalValueChanged(value: AXSchedulerPickerValue): void;
|
|
735
|
+
constructor();
|
|
736
|
+
/**
|
|
737
|
+
* Initialize with default value based on mode
|
|
738
|
+
*/
|
|
739
|
+
protected initializeDefaultValue(): void;
|
|
740
|
+
/**
|
|
741
|
+
* Update pattern value
|
|
742
|
+
*/
|
|
743
|
+
protected updatePattern(updates: Partial<AXSchedulerPickerValue>): void;
|
|
744
|
+
/**
|
|
745
|
+
* Deep merge pattern updates with current pattern
|
|
746
|
+
* Preserves nested object properties that aren't being updated
|
|
747
|
+
*/
|
|
748
|
+
private mergePatternUpdates;
|
|
749
|
+
/**
|
|
750
|
+
* Manually validate the current pattern
|
|
751
|
+
*
|
|
752
|
+
* Validates the pattern against configured rules and constraints.
|
|
753
|
+
* Updates the `validationErrors` signal and component state.
|
|
754
|
+
*
|
|
755
|
+
* @returns Promise resolving to `true` if pattern is valid, `false` otherwise
|
|
756
|
+
*
|
|
757
|
+
* @example
|
|
758
|
+
* ```typescript
|
|
759
|
+
* const isValid = await schedulerPicker.validatePattern();
|
|
760
|
+
* if (!isValid) {
|
|
761
|
+
* const errors = schedulerPicker.validationErrors();
|
|
762
|
+
* console.log('Validation errors:', errors);
|
|
763
|
+
* }
|
|
764
|
+
* ```
|
|
765
|
+
*/
|
|
766
|
+
validatePattern(): Promise<boolean>;
|
|
767
|
+
/**
|
|
768
|
+
* Get preview of next N occurrences based on the current pattern
|
|
769
|
+
*
|
|
770
|
+
* @param count - Number of occurrences to return (default: 10)
|
|
771
|
+
* @param startFrom - Optional starting date (default: now)
|
|
772
|
+
* @returns Promise resolving to array of dates representing next occurrences
|
|
773
|
+
* @returns Empty array if pattern is invalid or not set
|
|
774
|
+
*
|
|
775
|
+
* @example
|
|
776
|
+
* ```typescript
|
|
777
|
+
* const dates = await schedulerPicker.getPreview(5);
|
|
778
|
+
* console.log('Next 5 occurrences:', dates);
|
|
779
|
+
* ```
|
|
780
|
+
*/
|
|
781
|
+
getPreview(count?: number, startFrom?: Date): Promise<Date[]>;
|
|
782
|
+
/**
|
|
783
|
+
* Convert current pattern to cron expression
|
|
784
|
+
*
|
|
785
|
+
* @returns Promise resolving to cron expression string
|
|
786
|
+
* @returns Empty string if pattern is not set or invalid
|
|
787
|
+
*
|
|
788
|
+
* @example
|
|
789
|
+
* ```typescript
|
|
790
|
+
* const cron = await schedulerPicker.toCron();
|
|
791
|
+
* console.log('Cron expression:', cron); // "0 9 * * 1-5"
|
|
792
|
+
* ```
|
|
793
|
+
*/
|
|
794
|
+
toCron(): Promise<string>;
|
|
795
|
+
/**
|
|
796
|
+
* Convert current pattern to RRule string (iCalendar format)
|
|
797
|
+
*
|
|
798
|
+
* @returns Promise resolving to RRule string
|
|
799
|
+
* @returns Empty string if pattern is not set or invalid
|
|
800
|
+
*
|
|
801
|
+
* @example
|
|
802
|
+
* ```typescript
|
|
803
|
+
* const rrule = await schedulerPicker.toRRule();
|
|
804
|
+
* console.log('RRule:', rrule); // "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR"
|
|
805
|
+
* ```
|
|
806
|
+
*/
|
|
807
|
+
toRRule(): Promise<string>;
|
|
808
|
+
/**
|
|
809
|
+
* Reset pattern to default value based on current mode
|
|
810
|
+
* Clears current pattern and re-initializes with mode-specific defaults
|
|
811
|
+
*
|
|
812
|
+
* @param e - Optional event parameter (inherited from base class)
|
|
813
|
+
*
|
|
814
|
+
* @example
|
|
815
|
+
* ```typescript
|
|
816
|
+
* schedulerPicker.reset();
|
|
817
|
+
* // Pattern is now reset to default for the configured mode
|
|
818
|
+
* ```
|
|
819
|
+
*/
|
|
820
|
+
reset(e?: boolean): void;
|
|
821
|
+
/**
|
|
822
|
+
* Clear pattern completely
|
|
823
|
+
* Removes all pattern data, summary, and validation errors
|
|
824
|
+
* Sets component state to 'clear'
|
|
825
|
+
*
|
|
826
|
+
* @example
|
|
827
|
+
* ```typescript
|
|
828
|
+
* schedulerPicker.clear();
|
|
829
|
+
* // All data cleared, component is now empty
|
|
830
|
+
* ```
|
|
831
|
+
*/
|
|
832
|
+
clear(): void;
|
|
833
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerComponent, never>;
|
|
834
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerComponent, "ax-scheduler-picker", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "summaryChange": "summaryChange"; }, never, never, true, never>;
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
/**
|
|
838
|
+
* Service for scheduler picker utilities
|
|
839
|
+
* Handles conversions, calculations, and validation
|
|
840
|
+
*/
|
|
841
|
+
declare class AXSchedulerPickerService {
|
|
842
|
+
private translationService;
|
|
843
|
+
/**
|
|
844
|
+
* Calculate next N occurrences from pattern
|
|
845
|
+
* Uses lazy-loaded rrule library for complex calculations
|
|
846
|
+
*/
|
|
847
|
+
calculateOccurrences(pattern: AXSchedulerPickerValue, count: number, startFrom?: Date): Promise<Date[]>;
|
|
848
|
+
/**
|
|
849
|
+
* Convert pattern to cron expression
|
|
850
|
+
* Uses lazy-loaded cron-parser library
|
|
851
|
+
*/
|
|
852
|
+
toCronExpression(pattern: AXSchedulerPickerValue): Promise<string>;
|
|
853
|
+
/**
|
|
854
|
+
* Convert cron expression to pattern
|
|
855
|
+
* Parses standard cron format: minute hour day month weekday
|
|
856
|
+
*/
|
|
857
|
+
fromCronExpression(cron: string): Promise<AXSchedulerPickerValue | null>;
|
|
858
|
+
/**
|
|
859
|
+
* Analyze a cron field to extract interval and values
|
|
860
|
+
*/
|
|
861
|
+
private analyzeCronField;
|
|
862
|
+
/**
|
|
863
|
+
* Convert pattern to RRule string (iCalendar format)
|
|
864
|
+
*/
|
|
865
|
+
toRRule(pattern: AXSchedulerPickerValue): Promise<string>;
|
|
866
|
+
/**
|
|
867
|
+
* Convert RRule string to pattern
|
|
868
|
+
*/
|
|
869
|
+
fromRRule(rruleStr: string): Promise<AXSchedulerPickerValue | null>;
|
|
870
|
+
/**
|
|
871
|
+
* Generate human-readable description
|
|
872
|
+
* Uses lazy-loaded cronstrue library for i18n
|
|
873
|
+
*/
|
|
874
|
+
toNaturalLanguage(pattern: AXSchedulerPickerValue, locale?: string): Promise<string>;
|
|
875
|
+
/**
|
|
876
|
+
* Validate pattern against config and rules
|
|
877
|
+
*/
|
|
878
|
+
validatePattern(pattern: AXSchedulerPickerValue, settings: AXSchedulerPickerSettings): Promise<AXSchedulerPickerValidationError[]>;
|
|
879
|
+
/**
|
|
880
|
+
* Check if a specific date matches the pattern
|
|
881
|
+
*/
|
|
882
|
+
isDateMatch(pattern: AXSchedulerPickerValue, date: Date): Promise<boolean>;
|
|
883
|
+
/**
|
|
884
|
+
* Get next occurrence from a specific date
|
|
885
|
+
*/
|
|
886
|
+
getNextOccurrence(pattern: AXSchedulerPickerValue, from: Date): Promise<Date | null>;
|
|
887
|
+
/**
|
|
888
|
+
* Convert pattern to RRule object
|
|
889
|
+
* Helper method for RRule operations
|
|
890
|
+
*/
|
|
891
|
+
private toRRuleObject;
|
|
892
|
+
/**
|
|
893
|
+
* Get day name constant for RRule
|
|
894
|
+
*/
|
|
895
|
+
private getDayName;
|
|
896
|
+
/**
|
|
897
|
+
* Get localized day names
|
|
898
|
+
*/
|
|
899
|
+
private getDayNames;
|
|
900
|
+
/**
|
|
901
|
+
* Get localized month names
|
|
902
|
+
*/
|
|
903
|
+
private getMonthNames;
|
|
904
|
+
/**
|
|
905
|
+
* Get text for occurrence position
|
|
906
|
+
*/
|
|
907
|
+
private getOccurrencePositionText;
|
|
908
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerService, never>;
|
|
909
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXSchedulerPickerService>;
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
/**
|
|
913
|
+
* Hourly mode default configuration
|
|
914
|
+
*/
|
|
915
|
+
declare const AXSchedulerPickerHourlyDefaultConfig: AXSchedulerPickerHourlyConfig;
|
|
916
|
+
/**
|
|
917
|
+
* Daily mode default configuration
|
|
918
|
+
*/
|
|
919
|
+
declare const AXSchedulerPickerDailyDefaultConfig: AXSchedulerPickerDailyConfig;
|
|
920
|
+
/**
|
|
921
|
+
* Weekly mode default configuration
|
|
922
|
+
*/
|
|
923
|
+
declare const AXSchedulerPickerWeeklyDefaultConfig: AXSchedulerPickerWeeklyConfig;
|
|
924
|
+
/**
|
|
925
|
+
* Monthly mode default configuration
|
|
926
|
+
*/
|
|
927
|
+
declare const AXSchedulerPickerMonthlyDefaultConfig: AXSchedulerPickerMonthlyConfig;
|
|
928
|
+
/**
|
|
929
|
+
* Yearly mode default configuration
|
|
930
|
+
*/
|
|
931
|
+
declare const AXSchedulerPickerYearlyDefaultConfig: AXSchedulerPickerYearlyConfig;
|
|
932
|
+
/**
|
|
933
|
+
* Injection tokens for each mode configuration
|
|
934
|
+
*/
|
|
935
|
+
declare const AX_SCHEDULER_PICKER_HOURLY_CONFIG: InjectionToken<AXSchedulerPickerHourlyConfig>;
|
|
936
|
+
declare const AX_SCHEDULER_PICKER_DAILY_CONFIG: InjectionToken<AXSchedulerPickerDailyConfig>;
|
|
937
|
+
declare const AX_SCHEDULER_PICKER_WEEKLY_CONFIG: InjectionToken<AXSchedulerPickerWeeklyConfig>;
|
|
938
|
+
declare const AX_SCHEDULER_PICKER_MONTHLY_CONFIG: InjectionToken<AXSchedulerPickerMonthlyConfig>;
|
|
939
|
+
declare const AX_SCHEDULER_PICKER_YEARLY_CONFIG: InjectionToken<AXSchedulerPickerYearlyConfig>;
|
|
940
|
+
/**
|
|
941
|
+
* Helper function to get default config by mode
|
|
942
|
+
*/
|
|
943
|
+
declare function getDefaultSchedulerPickerConfig<T extends 'hourly' | 'daily' | 'weekly' | 'monthly' | 'yearly'>(mode: T): T extends 'hourly' ? AXSchedulerPickerHourlyConfig : T extends 'daily' ? AXSchedulerPickerDailyConfig : T extends 'weekly' ? AXSchedulerPickerWeeklyConfig : T extends 'monthly' ? AXSchedulerPickerMonthlyConfig : AXSchedulerPickerYearlyConfig;
|
|
944
|
+
|
|
945
|
+
/**
|
|
946
|
+
* Constants for scheduler picker module
|
|
947
|
+
*/
|
|
948
|
+
/**
|
|
949
|
+
* Day of week interface
|
|
950
|
+
*/
|
|
951
|
+
interface AXSchedulerPickerDayOfWeek {
|
|
952
|
+
id: number;
|
|
953
|
+
text: string;
|
|
954
|
+
key: string;
|
|
955
|
+
rruleKey: string;
|
|
956
|
+
}
|
|
957
|
+
/**
|
|
958
|
+
* Month interface
|
|
959
|
+
*/
|
|
960
|
+
interface AXSchedulerPickerMonth {
|
|
961
|
+
id: number;
|
|
962
|
+
text: string;
|
|
963
|
+
key: string;
|
|
964
|
+
}
|
|
965
|
+
/**
|
|
966
|
+
* Occurrence position interface
|
|
967
|
+
*/
|
|
968
|
+
interface AXSchedulerPickerOccurrencePosition {
|
|
969
|
+
value: 1 | 2 | 3 | 4 | -1;
|
|
970
|
+
text: string;
|
|
971
|
+
key: string;
|
|
972
|
+
}
|
|
973
|
+
/**
|
|
974
|
+
* Days of the week (0-6: Sunday-Saturday)
|
|
975
|
+
*/
|
|
976
|
+
declare const AX_SCHEDULER_PICKER_DAYS_OF_WEEK: Readonly<AXSchedulerPickerDayOfWeek[]>;
|
|
977
|
+
/**
|
|
978
|
+
* Months of the year (0-11: January-December)
|
|
979
|
+
*/
|
|
980
|
+
declare const AX_SCHEDULER_PICKER_MONTHS: Readonly<AXSchedulerPickerMonth[]>;
|
|
981
|
+
/**
|
|
982
|
+
* Occurrence positions (1st, 2nd, 3rd, 4th, Last)
|
|
983
|
+
*/
|
|
984
|
+
declare const AX_SCHEDULER_PICKER_OCCURRENCE_POSITIONS: Readonly<AXSchedulerPickerOccurrencePosition[]>;
|
|
985
|
+
/**
|
|
986
|
+
* RRule day keys mapping (for RRule library)
|
|
987
|
+
*/
|
|
988
|
+
declare const AX_SCHEDULER_PICKER_RRULE_DAY_KEYS: Readonly<string[]>;
|
|
989
|
+
/**
|
|
990
|
+
* Translation keys for days of week
|
|
991
|
+
*/
|
|
992
|
+
declare const AX_SCHEDULER_PICKER_DAY_TRANSLATION_KEYS: Readonly<string[]>;
|
|
993
|
+
/**
|
|
994
|
+
* Translation keys for months
|
|
995
|
+
*/
|
|
996
|
+
declare const AX_SCHEDULER_PICKER_MONTH_TRANSLATION_KEYS: Readonly<string[]>;
|
|
997
|
+
/**
|
|
998
|
+
* Default first day of week (0 = Sunday)
|
|
999
|
+
*/
|
|
1000
|
+
declare const AX_SCHEDULER_PICKER_DEFAULT_FIRST_DAY_OF_WEEK = 0;
|
|
1001
|
+
/**
|
|
1002
|
+
* Default time format
|
|
1003
|
+
*/
|
|
1004
|
+
declare const AX_SCHEDULER_PICKER_DEFAULT_TIME_FORMAT: "24h";
|
|
1005
|
+
/**
|
|
1006
|
+
* Default time precision
|
|
1007
|
+
*/
|
|
1008
|
+
declare const AX_SCHEDULER_PICKER_DEFAULT_TIME_PRECISION: "minutes";
|
|
1009
|
+
/**
|
|
1010
|
+
* Default locale
|
|
1011
|
+
*/
|
|
1012
|
+
declare const AX_SCHEDULER_PICKER_DEFAULT_LOCALE = "en-US";
|
|
1013
|
+
/**
|
|
1014
|
+
* Weekday range for daily mode (Monday-Friday)
|
|
1015
|
+
*/
|
|
1016
|
+
declare const AX_SCHEDULER_PICKER_WEEKDAY_START = 1;
|
|
1017
|
+
declare const AX_SCHEDULER_PICKER_WEEKDAY_END = 5;
|
|
1018
|
+
/**
|
|
1019
|
+
* Default occurrences count for end condition
|
|
1020
|
+
*/
|
|
1021
|
+
declare const AX_SCHEDULER_PICKER_DEFAULT_OCCURRENCES = 10;
|
|
1022
|
+
|
|
1023
|
+
/**
|
|
1024
|
+
* Helper function to reorder days based on first day of week
|
|
1025
|
+
*/
|
|
1026
|
+
declare function reorderDaysByFirstDay(firstDayOfWeek?: number): AXSchedulerPickerDayOfWeek[];
|
|
1027
|
+
/**
|
|
1028
|
+
* Get RRule day key by day index
|
|
1029
|
+
*/
|
|
1030
|
+
declare function getRRuleDayKey(dayIndex: number): string;
|
|
1031
|
+
/**
|
|
1032
|
+
* Get day translation key by index
|
|
1033
|
+
*/
|
|
1034
|
+
declare function getDayTranslationKey(dayIndex: number): string;
|
|
1035
|
+
/**
|
|
1036
|
+
* Get month translation key by index
|
|
1037
|
+
*/
|
|
1038
|
+
declare function getMonthTranslationKey(monthIndex: number): string;
|
|
1039
|
+
/**
|
|
1040
|
+
* Normalize date to midnight for consistent comparison
|
|
1041
|
+
*/
|
|
1042
|
+
declare function normalizeDate(date: Date): Date;
|
|
1043
|
+
/**
|
|
1044
|
+
* Check if two dates are the same day (ignoring time)
|
|
1045
|
+
*/
|
|
1046
|
+
declare function isSameDate(date1: Date, date2: Date): boolean;
|
|
1047
|
+
/**
|
|
1048
|
+
* Check if date exists in array (day comparison only)
|
|
1049
|
+
*/
|
|
1050
|
+
declare function dateExistsInArray(date: Date, dates: Date[]): boolean;
|
|
1051
|
+
|
|
1052
|
+
interface AXSchedulerPickerEndCondition {
|
|
1053
|
+
type: 'never' | 'afterOccurrences' | 'byDate';
|
|
1054
|
+
occurrences?: number;
|
|
1055
|
+
endDate?: Date;
|
|
1056
|
+
}
|
|
1057
|
+
declare class AXSchedulerPickerEndConditionSelectorComponent {
|
|
1058
|
+
endCondition: _angular_core.InputSignal<AXSchedulerPickerEndCondition>;
|
|
1059
|
+
config: _angular_core.InputSignal<AXSchedulerPickerSettings>;
|
|
1060
|
+
endConditionChange: _angular_core.OutputEmitterRef<AXSchedulerPickerEndCondition>;
|
|
1061
|
+
protected selectedType: _angular_core.WritableSignal<"byDate" | "never" | "afterOccurrences">;
|
|
1062
|
+
protected occurrences: _angular_core.WritableSignal<number>;
|
|
1063
|
+
protected endDate: _angular_core.WritableSignal<Date>;
|
|
1064
|
+
protected readonly endTypeItems: {
|
|
1065
|
+
id: string;
|
|
1066
|
+
text: string;
|
|
1067
|
+
}[];
|
|
1068
|
+
constructor();
|
|
1069
|
+
protected onTypeChange(event: AXValueChangedEvent<'never' | 'afterOccurrences' | 'byDate'>): void;
|
|
1070
|
+
protected onOccurrencesChange(value: number): void;
|
|
1071
|
+
protected onDateChange(value: Date): void;
|
|
1072
|
+
private emitChange;
|
|
1073
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerEndConditionSelectorComponent, never>;
|
|
1074
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerEndConditionSelectorComponent, "ax-scheduler-picker-end-condition-selector", never, { "endCondition": { "alias": "endCondition"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "endConditionChange": "endConditionChange"; }, never, never, true, never>;
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
interface AXSchedulerPickerStartCondition {
|
|
1078
|
+
type: 'now' | 'byDate';
|
|
1079
|
+
startDate: Date;
|
|
1080
|
+
}
|
|
1081
|
+
declare class AXSchedulerPickerStartConditionSelectorComponent {
|
|
1082
|
+
startCondition: _angular_core.InputSignal<AXSchedulerPickerStartCondition>;
|
|
1083
|
+
config: _angular_core.InputSignal<AXSchedulerPickerSettings>;
|
|
1084
|
+
startConditionChange: _angular_core.OutputEmitterRef<AXSchedulerPickerStartCondition>;
|
|
1085
|
+
protected selectedType: _angular_core.WritableSignal<"now" | "byDate">;
|
|
1086
|
+
protected startDate: _angular_core.WritableSignal<Date>;
|
|
1087
|
+
protected readonly startTypeItems: {
|
|
1088
|
+
id: string;
|
|
1089
|
+
text: string;
|
|
1090
|
+
}[];
|
|
1091
|
+
constructor();
|
|
1092
|
+
protected onTypeChange(event: AXValueChangedEvent<'now' | 'byDate'>): void;
|
|
1093
|
+
protected onDateChange(value: Date): void;
|
|
1094
|
+
private emitChange;
|
|
1095
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerStartConditionSelectorComponent, never>;
|
|
1096
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerStartConditionSelectorComponent, "ax-scheduler-picker-start-condition-selector", never, { "startCondition": { "alias": "startCondition"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "startConditionChange": "startConditionChange"; }, never, never, true, never>;
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
declare class AXSchedulerPickerDailyPanelComponent {
|
|
1100
|
+
pattern: _angular_core.InputSignal<AXSchedulerPickerValue>;
|
|
1101
|
+
config: _angular_core.InputSignal<AXSchedulerPickerDailyConfig>;
|
|
1102
|
+
patternChange: _angular_core.OutputEmitterRef<Partial<AXSchedulerPickerValue>>;
|
|
1103
|
+
protected weekdayOnly: _angular_core.WritableSignal<boolean>;
|
|
1104
|
+
constructor();
|
|
1105
|
+
protected onIntervalChange(interval: number): void;
|
|
1106
|
+
protected onWeekdayOnlyChange(value: boolean): void;
|
|
1107
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerDailyPanelComponent, never>;
|
|
1108
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerDailyPanelComponent, "ax-scheduler-picker-daily-panel", never, { "pattern": { "alias": "pattern"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "patternChange": "patternChange"; }, never, never, true, never>;
|
|
1109
|
+
}
|
|
1110
|
+
|
|
1111
|
+
declare class AXSchedulerPickerHourlyPanelComponent {
|
|
1112
|
+
pattern: _angular_core.InputSignal<AXSchedulerPickerValue>;
|
|
1113
|
+
config: _angular_core.InputSignal<AXSchedulerPickerHourlyConfig>;
|
|
1114
|
+
patternChange: _angular_core.OutputEmitterRef<Partial<AXSchedulerPickerValue>>;
|
|
1115
|
+
protected onIntervalChange(interval: number): void;
|
|
1116
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerHourlyPanelComponent, never>;
|
|
1117
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerHourlyPanelComponent, "ax-scheduler-picker-hourly-panel", never, { "pattern": { "alias": "pattern"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "patternChange": "patternChange"; }, never, never, true, never>;
|
|
1118
|
+
}
|
|
1119
|
+
|
|
1120
|
+
declare class AXSchedulerPickerMonthlyPanelComponent {
|
|
1121
|
+
pattern: _angular_core.InputSignal<AXSchedulerPickerValue>;
|
|
1122
|
+
config: _angular_core.InputSignal<AXSchedulerPickerMonthlyConfig>;
|
|
1123
|
+
patternChange: _angular_core.OutputEmitterRef<Partial<AXSchedulerPickerValue>>;
|
|
1124
|
+
protected selectedDays: _angular_core.WritableSignal<number[]>;
|
|
1125
|
+
protected occurrence: _angular_core.WritableSignal<AXSchedulerPickerOccurrence>;
|
|
1126
|
+
constructor();
|
|
1127
|
+
protected onIntervalChange(interval: number): void;
|
|
1128
|
+
protected onDaysChange(days: number[]): void;
|
|
1129
|
+
protected onOccurrenceChange(occurrence: AXSchedulerPickerOccurrence): void;
|
|
1130
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerMonthlyPanelComponent, never>;
|
|
1131
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerMonthlyPanelComponent, "ax-scheduler-picker-monthly-panel", never, { "pattern": { "alias": "pattern"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "patternChange": "patternChange"; }, never, never, true, never>;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
/**
|
|
1135
|
+
* Weekly recurrence panel
|
|
1136
|
+
*/
|
|
1137
|
+
declare class AXSchedulerPickerWeeklyPanelComponent {
|
|
1138
|
+
pattern: _angular_core.InputSignal<AXSchedulerPickerValue>;
|
|
1139
|
+
config: _angular_core.InputSignal<AXSchedulerPickerWeeklyConfig>;
|
|
1140
|
+
patternChange: _angular_core.OutputEmitterRef<Partial<AXSchedulerPickerValue>>;
|
|
1141
|
+
protected selectedDays: _angular_core.WritableSignal<number[]>;
|
|
1142
|
+
protected dayItems: _angular_core.Signal<{
|
|
1143
|
+
text: string;
|
|
1144
|
+
id: number;
|
|
1145
|
+
key: string;
|
|
1146
|
+
rruleKey: string;
|
|
1147
|
+
}[]>;
|
|
1148
|
+
constructor();
|
|
1149
|
+
protected onIntervalChange(interval: number): void;
|
|
1150
|
+
protected onDaysChange(event: AXValueChangedEvent): void;
|
|
1151
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerWeeklyPanelComponent, never>;
|
|
1152
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerWeeklyPanelComponent, "ax-scheduler-picker-weekly-panel", never, { "pattern": { "alias": "pattern"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "patternChange": "patternChange"; }, never, never, true, never>;
|
|
1153
|
+
}
|
|
1154
|
+
|
|
1155
|
+
declare class AXSchedulerPickerYearlyPanelComponent {
|
|
1156
|
+
pattern: _angular_core.InputSignal<AXSchedulerPickerValue>;
|
|
1157
|
+
config: _angular_core.InputSignal<AXSchedulerPickerYearlyConfig>;
|
|
1158
|
+
patternChange: _angular_core.OutputEmitterRef<Partial<AXSchedulerPickerValue>>;
|
|
1159
|
+
protected selectedMonths: _angular_core.WritableSignal<number[]>;
|
|
1160
|
+
protected selectedDays: _angular_core.WritableSignal<number[]>;
|
|
1161
|
+
protected occurrence: _angular_core.WritableSignal<AXSchedulerPickerOccurrence>;
|
|
1162
|
+
constructor();
|
|
1163
|
+
protected onIntervalChange(interval: number): void;
|
|
1164
|
+
protected onMonthsChange(months: number[]): void;
|
|
1165
|
+
protected onDaysChange(days: number[]): void;
|
|
1166
|
+
protected onOccurrenceChange(occurrence: AXSchedulerPickerOccurrence): void;
|
|
1167
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerYearlyPanelComponent, never>;
|
|
1168
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerYearlyPanelComponent, "ax-scheduler-picker-yearly-panel", never, { "pattern": { "alias": "pattern"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "patternChange": "patternChange"; }, never, never, true, never>;
|
|
1169
|
+
}
|
|
1170
|
+
|
|
1171
|
+
declare class AXSchedulerPickerDaySelectorComponent {
|
|
1172
|
+
/**
|
|
1173
|
+
* Selected day numbers (1-31)
|
|
1174
|
+
*/
|
|
1175
|
+
days: _angular_core.InputSignal<number[]>;
|
|
1176
|
+
/**
|
|
1177
|
+
* Emits when day selection changes
|
|
1178
|
+
*/
|
|
1179
|
+
daysChange: _angular_core.OutputEmitterRef<number[]>;
|
|
1180
|
+
protected dayItems: {
|
|
1181
|
+
id: number;
|
|
1182
|
+
text: string;
|
|
1183
|
+
}[];
|
|
1184
|
+
/**
|
|
1185
|
+
* Handle day selection change
|
|
1186
|
+
*/
|
|
1187
|
+
protected onDaysChange(event: AXValueChangedEvent<number | number[]>): void;
|
|
1188
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerDaySelectorComponent, never>;
|
|
1189
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerDaySelectorComponent, "ax-scheduler-picker-day-selector", never, { "days": { "alias": "days"; "required": false; "isSignal": true; }; }, { "daysChange": "daysChange"; }, never, never, true, never>;
|
|
1190
|
+
}
|
|
1191
|
+
|
|
1192
|
+
declare class AXSchedulerPickerExclusionManagerComponent {
|
|
1193
|
+
exclusions: _angular_core.InputSignal<Date[]>;
|
|
1194
|
+
config: _angular_core.InputSignal<AXSchedulerPickerSettings>;
|
|
1195
|
+
exclusionsChange: _angular_core.OutputEmitterRef<Date[]>;
|
|
1196
|
+
protected newExclusionDate: _angular_core.WritableSignal<Date>;
|
|
1197
|
+
protected exclusionList: _angular_core.WritableSignal<Date[]>;
|
|
1198
|
+
constructor();
|
|
1199
|
+
protected addExclusion(): void;
|
|
1200
|
+
protected removeExclusion(date: Date): void;
|
|
1201
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerExclusionManagerComponent, never>;
|
|
1202
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerExclusionManagerComponent, "ax-scheduler-picker-exclusion-manager", never, { "exclusions": { "alias": "exclusions"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "exclusionsChange": "exclusionsChange"; }, never, never, true, never>;
|
|
1203
|
+
}
|
|
1204
|
+
|
|
1205
|
+
declare class AXSchedulerPickerInclusionManagerComponent {
|
|
1206
|
+
inclusions: _angular_core.InputSignal<Date[]>;
|
|
1207
|
+
inclusionsChange: _angular_core.OutputEmitterRef<Date[]>;
|
|
1208
|
+
protected newInclusionDate: _angular_core.WritableSignal<Date>;
|
|
1209
|
+
protected inclusionList: _angular_core.WritableSignal<Date[]>;
|
|
1210
|
+
constructor();
|
|
1211
|
+
protected addInclusion(): void;
|
|
1212
|
+
protected removeInclusion(date: Date): void;
|
|
1213
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerInclusionManagerComponent, never>;
|
|
1214
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerInclusionManagerComponent, "ax-scheduler-picker-inclusion-manager", never, { "inclusions": { "alias": "inclusions"; "required": false; "isSignal": true; }; }, { "inclusionsChange": "inclusionsChange"; }, never, never, true, never>;
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
/**
|
|
1218
|
+
* Interval selector component
|
|
1219
|
+
* Allows user to select "Every X [units]"
|
|
1220
|
+
*/
|
|
1221
|
+
declare class AXSchedulerPickerIntervalSelectorComponent {
|
|
1222
|
+
/**
|
|
1223
|
+
* Current interval value
|
|
1224
|
+
*/
|
|
1225
|
+
interval: _angular_core.InputSignal<number>;
|
|
1226
|
+
/**
|
|
1227
|
+
* Configuration
|
|
1228
|
+
*/
|
|
1229
|
+
config: _angular_core.InputSignal<AXSchedulerPickerSettings>;
|
|
1230
|
+
/**
|
|
1231
|
+
* Emits when interval changes
|
|
1232
|
+
*/
|
|
1233
|
+
intervalChange: _angular_core.OutputEmitterRef<number>;
|
|
1234
|
+
/**
|
|
1235
|
+
* Handle interval value change
|
|
1236
|
+
*/
|
|
1237
|
+
protected onIntervalChange(value: number): void;
|
|
1238
|
+
/**
|
|
1239
|
+
* Get unit translation key based on mode
|
|
1240
|
+
*/
|
|
1241
|
+
protected getUnitKey(): string;
|
|
1242
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerIntervalSelectorComponent, never>;
|
|
1243
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerIntervalSelectorComponent, "ax-scheduler-picker-interval-selector", never, { "interval": { "alias": "interval"; "required": true; "isSignal": true; }; "config": { "alias": "config"; "required": true; "isSignal": true; }; }, { "intervalChange": "intervalChange"; }, never, never, true, never>;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
declare class AXSchedulerPickerMonthSelectorComponent {
|
|
1247
|
+
/**
|
|
1248
|
+
* Selected month indices (0-11)
|
|
1249
|
+
*/
|
|
1250
|
+
months: _angular_core.InputSignal<number[]>;
|
|
1251
|
+
/**
|
|
1252
|
+
* Emits when month selection changes
|
|
1253
|
+
*/
|
|
1254
|
+
monthsChange: _angular_core.OutputEmitterRef<number[]>;
|
|
1255
|
+
protected readonly monthItems: {
|
|
1256
|
+
text: string;
|
|
1257
|
+
id: number;
|
|
1258
|
+
key: string;
|
|
1259
|
+
}[];
|
|
1260
|
+
/**
|
|
1261
|
+
* Handle month selection change
|
|
1262
|
+
*/
|
|
1263
|
+
protected onMonthsChange(event: AXValueChangedEvent<number | number[]>): void;
|
|
1264
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerMonthSelectorComponent, never>;
|
|
1265
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerMonthSelectorComponent, "ax-scheduler-picker-month-selector", never, { "months": { "alias": "months"; "required": false; "isSignal": true; }; }, { "monthsChange": "monthsChange"; }, never, never, true, never>;
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
declare class AXSchedulerPickerOccurrenceSelectorComponent {
|
|
1269
|
+
/**
|
|
1270
|
+
* Current occurrence selection (position + day)
|
|
1271
|
+
*/
|
|
1272
|
+
occurrence: _angular_core.InputSignal<AXSchedulerPickerOccurrence>;
|
|
1273
|
+
/**
|
|
1274
|
+
* Emits when occurrence selection changes
|
|
1275
|
+
*/
|
|
1276
|
+
occurrenceChange: _angular_core.OutputEmitterRef<AXSchedulerPickerOccurrence>;
|
|
1277
|
+
protected selectedPosition: _angular_core.WritableSignal<1 | 2 | 3 | 4 | -1>;
|
|
1278
|
+
protected selectedDay: _angular_core.WritableSignal<number>;
|
|
1279
|
+
protected readonly positions: {
|
|
1280
|
+
text: string;
|
|
1281
|
+
value: 1 | 2 | 3 | 4 | -1;
|
|
1282
|
+
key: string;
|
|
1283
|
+
}[];
|
|
1284
|
+
protected readonly days: {
|
|
1285
|
+
value: number;
|
|
1286
|
+
text: string;
|
|
1287
|
+
}[];
|
|
1288
|
+
constructor();
|
|
1289
|
+
/**
|
|
1290
|
+
* Handle position selection change
|
|
1291
|
+
*/
|
|
1292
|
+
protected onPositionChangeEvent(event: AXValueChangedEvent<1 | 2 | 3 | 4 | -1>): void;
|
|
1293
|
+
/**
|
|
1294
|
+
* Handle day selection change
|
|
1295
|
+
*/
|
|
1296
|
+
protected onDayChangeEvent(event: AXValueChangedEvent<number>): void;
|
|
1297
|
+
private emitChange;
|
|
1298
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerOccurrenceSelectorComponent, never>;
|
|
1299
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerOccurrenceSelectorComponent, "ax-scheduler-picker-occurrence-selector", never, { "occurrence": { "alias": "occurrence"; "required": false; "isSignal": true; }; }, { "occurrenceChange": "occurrenceChange"; }, never, never, true, never>;
|
|
1300
|
+
}
|
|
1301
|
+
|
|
1302
|
+
declare class AXSchedulerPickerTimeSelectorComponent {
|
|
1303
|
+
time: _angular_core.InputSignal<string>;
|
|
1304
|
+
timeChange: _angular_core.OutputEmitterRef<string>;
|
|
1305
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerTimeSelectorComponent, never>;
|
|
1306
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerTimeSelectorComponent, "ax-scheduler-picker-time-selector", never, { "time": { "alias": "time"; "required": false; "isSignal": true; }; }, { "timeChange": "timeChange"; }, never, never, true, never>;
|
|
1307
|
+
}
|
|
1308
|
+
|
|
1309
|
+
declare class AXSchedulerPickerTimezoneSelectorComponent {
|
|
1310
|
+
/**
|
|
1311
|
+
* Current timezone value
|
|
1312
|
+
*/
|
|
1313
|
+
timezone: _angular_core.InputSignal<string>;
|
|
1314
|
+
/**
|
|
1315
|
+
* Emits when timezone selection changes
|
|
1316
|
+
*/
|
|
1317
|
+
timezoneChange: _angular_core.OutputEmitterRef<string>;
|
|
1318
|
+
/**
|
|
1319
|
+
* Handle timezone selection change
|
|
1320
|
+
*/
|
|
1321
|
+
protected onTimezoneChange(event: AXValueChangedEvent<string>): void;
|
|
1322
|
+
protected timezones: {
|
|
1323
|
+
value: string;
|
|
1324
|
+
text: string;
|
|
1325
|
+
}[];
|
|
1326
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerTimezoneSelectorComponent, never>;
|
|
1327
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerTimezoneSelectorComponent, "ax-scheduler-picker-timezone-selector", never, { "timezone": { "alias": "timezone"; "required": false; "isSignal": true; }; }, { "timezoneChange": "timezoneChange"; }, never, never, true, never>;
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1330
|
+
/**
|
|
1331
|
+
* Demo configuration panel for scheduler picker
|
|
1332
|
+
* Provides interactive controls to customize scheduler picker settings
|
|
1333
|
+
*/
|
|
1334
|
+
declare class AXSchedulerPickerConfigComponent {
|
|
1335
|
+
configChange: _angular_core.OutputEmitterRef<AXSchedulerPickerSettings>;
|
|
1336
|
+
modeChange: _angular_core.OutputEmitterRef<AXSchedulerPickerMode>;
|
|
1337
|
+
selectedMode: _angular_core.WritableSignal<AXSchedulerPickerMode>;
|
|
1338
|
+
modeOptions: {
|
|
1339
|
+
value: string;
|
|
1340
|
+
text: string;
|
|
1341
|
+
}[];
|
|
1342
|
+
showInterval: _angular_core.WritableSignal<boolean>;
|
|
1343
|
+
showStartCondition: _angular_core.WritableSignal<boolean>;
|
|
1344
|
+
showEndConditions: _angular_core.WritableSignal<boolean>;
|
|
1345
|
+
showExclusions: _angular_core.WritableSignal<boolean>;
|
|
1346
|
+
showInclusions: _angular_core.WritableSignal<boolean>;
|
|
1347
|
+
showWeekdaysOnly: _angular_core.WritableSignal<boolean>;
|
|
1348
|
+
showWeekdaySelection: _angular_core.WritableSignal<boolean>;
|
|
1349
|
+
monthlyRecurrenceMode: _angular_core.WritableSignal<"none" | "specificDays" | "occurrence">;
|
|
1350
|
+
yearlyRecurrenceMode: _angular_core.WritableSignal<"none" | "occurrence" | "specificDate">;
|
|
1351
|
+
showMonthSelection: _angular_core.WritableSignal<boolean>;
|
|
1352
|
+
config: _angular_core.Signal<AXSchedulerPickerSettings>;
|
|
1353
|
+
constructor();
|
|
1354
|
+
protected onModeChange(mode: AXSchedulerPickerMode): void;
|
|
1355
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSchedulerPickerConfigComponent, never>;
|
|
1356
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSchedulerPickerConfigComponent, "ax-scheduler-picker-config", never, {}, { "configChange": "configChange"; "modeChange": "modeChange"; }, never, never, true, never>;
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
export { AXSchedulerPickerComponent, AXSchedulerPickerConfigComponent, AXSchedulerPickerDailyDefaultConfig, AXSchedulerPickerDailyPanelComponent, AXSchedulerPickerDaySelectorComponent, AXSchedulerPickerEndConditionSelectorComponent, AXSchedulerPickerExclusionManagerComponent, AXSchedulerPickerHourlyDefaultConfig, AXSchedulerPickerHourlyPanelComponent, AXSchedulerPickerInclusionManagerComponent, AXSchedulerPickerIntervalSelectorComponent, AXSchedulerPickerMonthSelectorComponent, AXSchedulerPickerMonthlyDefaultConfig, AXSchedulerPickerMonthlyPanelComponent, AXSchedulerPickerOccurrenceSelectorComponent, AXSchedulerPickerService, AXSchedulerPickerStartConditionSelectorComponent, AXSchedulerPickerTimeSelectorComponent, AXSchedulerPickerTimezoneSelectorComponent, AXSchedulerPickerWeeklyDefaultConfig, AXSchedulerPickerWeeklyPanelComponent, AXSchedulerPickerYearlyDefaultConfig, AXSchedulerPickerYearlyPanelComponent, AX_SCHEDULER_PICKER_DAILY_CONFIG, AX_SCHEDULER_PICKER_DAYS_OF_WEEK, AX_SCHEDULER_PICKER_DAY_TRANSLATION_KEYS, AX_SCHEDULER_PICKER_DEFAULT_FIRST_DAY_OF_WEEK, AX_SCHEDULER_PICKER_DEFAULT_LOCALE, AX_SCHEDULER_PICKER_DEFAULT_OCCURRENCES, AX_SCHEDULER_PICKER_DEFAULT_TIME_FORMAT, AX_SCHEDULER_PICKER_DEFAULT_TIME_PRECISION, AX_SCHEDULER_PICKER_HOURLY_CONFIG, AX_SCHEDULER_PICKER_MONTHLY_CONFIG, AX_SCHEDULER_PICKER_MONTHS, AX_SCHEDULER_PICKER_MONTH_TRANSLATION_KEYS, AX_SCHEDULER_PICKER_OCCURRENCE_POSITIONS, AX_SCHEDULER_PICKER_RRULE_DAY_KEYS, AX_SCHEDULER_PICKER_WEEKDAY_END, AX_SCHEDULER_PICKER_WEEKDAY_START, AX_SCHEDULER_PICKER_WEEKLY_CONFIG, AX_SCHEDULER_PICKER_YEARLY_CONFIG, dateExistsInArray, getDayTranslationKey, getDefaultSchedulerPickerConfig, getMonthTranslationKey, getRRuleDayKey, isSameDate, normalizeDate, reorderDaysByFirstDay };
|
|
1360
|
+
export type { AXSchedulerPickerConfig, AXSchedulerPickerCustomValidator, AXSchedulerPickerDailyConfig, AXSchedulerPickerDailyOptions, AXSchedulerPickerDayOfWeek, AXSchedulerPickerEndCondition, AXSchedulerPickerHourlyConfig, AXSchedulerPickerHourlyOptions, AXSchedulerPickerMode, AXSchedulerPickerMonth, AXSchedulerPickerMonthlyConfig, AXSchedulerPickerMonthlyOptions, AXSchedulerPickerMonthlyRecurrenceMode, AXSchedulerPickerOccurrence, AXSchedulerPickerOccurrencePosition, AXSchedulerPickerOptions, AXSchedulerPickerSettings, AXSchedulerPickerStartCondition, AXSchedulerPickerValidationError, AXSchedulerPickerValidationErrorCode, AXSchedulerPickerValue, AXSchedulerPickerWeeklyConfig, AXSchedulerPickerWeeklyOptions, AXSchedulerPickerYearlyConfig, AXSchedulerPickerYearlyOptions, AXSchedulerPickerYearlyRecurrenceMode };
|