ngxsmk-datepicker 2.2.13 → 2.3.0-beta.0
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/CHANGELOG.md +1240 -1218
- package/MIGRATION.md +1775 -1775
- package/README.md +939 -923
- package/docs/API.md +1 -1
- package/docs/COMPATIBILITY.md +14 -1
- package/docs/INTEGRATION.md +1 -1
- package/docs/IONIC_INTEGRATION.md +1 -1
- package/docs/IONIC_TESTING.md +1 -1
- package/docs/LOCALE-GUIDE.md +1 -1
- package/docs/PLUGIN-ARCHITECTURE.md +1 -1
- package/docs/SEO.md +1 -1
- package/docs/SSR-EXAMPLE.md +1 -1
- package/docs/THEME-TOKENS.md +1 -1
- package/docs/TIMEZONE.md +1 -1
- package/docs/extension-points.md +1 -1
- package/docs/signal-forms.md +1 -1
- package/docs/signals.md +1 -1
- package/docs/ssr.md +1 -1
- package/fesm2022/ngxsmk-datepicker.mjs +635 -135
- package/package.json +12 -2
- package/types/ngxsmk-datepicker.d.ts +62 -6
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ngxsmk-datepicker",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0-beta.0",
|
|
4
|
+
"description": "Lightweight, accessible date and range picker for Angular 17+. Standalone component, Signals, SSR and zoneless-ready, Luxon-based i18n and timezones.",
|
|
4
5
|
"author": {
|
|
5
6
|
"name": "Sachin Dilshan",
|
|
6
7
|
"url": "https://www.sachindilshan.com/"
|
|
@@ -59,15 +60,24 @@
|
|
|
59
60
|
"date-range-picker",
|
|
60
61
|
"calendar",
|
|
61
62
|
"standalone-component",
|
|
63
|
+
"reactive-forms",
|
|
64
|
+
"luxon",
|
|
62
65
|
"angular-17",
|
|
63
66
|
"angular-18",
|
|
64
67
|
"angular-19",
|
|
65
68
|
"angular-20",
|
|
66
69
|
"angular-21",
|
|
70
|
+
"angular-22",
|
|
71
|
+
"angular-23",
|
|
67
72
|
"typescript",
|
|
68
73
|
"date-selection",
|
|
69
74
|
"i18n",
|
|
70
|
-
"localization"
|
|
75
|
+
"localization",
|
|
76
|
+
"ssr",
|
|
77
|
+
"angular-universal",
|
|
78
|
+
"zoneless",
|
|
79
|
+
"accessibility",
|
|
80
|
+
"a11y"
|
|
71
81
|
],
|
|
72
82
|
"optimization": {
|
|
73
83
|
"treeShaking": true,
|
|
@@ -146,6 +146,7 @@ declare class CustomSelectComponent implements AfterViewInit, OnDestroy {
|
|
|
146
146
|
options: {
|
|
147
147
|
label: string;
|
|
148
148
|
value: unknown;
|
|
149
|
+
disabled?: boolean;
|
|
149
150
|
}[];
|
|
150
151
|
value: unknown;
|
|
151
152
|
disabled: boolean;
|
|
@@ -260,6 +261,7 @@ interface DatepickerTranslations {
|
|
|
260
261
|
dateBeforeMin: string;
|
|
261
262
|
dateAfterMax: string;
|
|
262
263
|
invalidDate: string;
|
|
264
|
+
timezone?: string;
|
|
263
265
|
}
|
|
264
266
|
/**
|
|
265
267
|
* Partial translations - allows overriding only specific keys
|
|
@@ -363,6 +365,14 @@ declare class NgxsmkDatepickerContentComponent {
|
|
|
363
365
|
closeAriaLabel: string;
|
|
364
366
|
closeLabel: string;
|
|
365
367
|
translations: DatepickerTranslations | null;
|
|
368
|
+
selectedRange: [Date | null, Date | null] | null;
|
|
369
|
+
showTimezoneSelector: boolean;
|
|
370
|
+
timezoneOptions: {
|
|
371
|
+
label: string;
|
|
372
|
+
value: string;
|
|
373
|
+
}[];
|
|
374
|
+
currentTimezone: string;
|
|
375
|
+
timezoneChange: EventEmitter<string>;
|
|
366
376
|
boundIsDateDisabled: (date: Date | null) => boolean;
|
|
367
377
|
boundIsSameDay: (date1: Date | null, date2: Date | null) => boolean;
|
|
368
378
|
boundIsHoliday: (date: Date | null) => boolean;
|
|
@@ -437,8 +447,9 @@ declare class NgxsmkDatepickerContentComponent {
|
|
|
437
447
|
onTimelineMonthClick(month: Date, event: MouseEvent): void;
|
|
438
448
|
onTimelineMonthSpace(month: Date, event: Event): void;
|
|
439
449
|
onPopoverEscape(event: Event): void;
|
|
450
|
+
onTimezoneChange(val: unknown): void;
|
|
440
451
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgxsmkDatepickerContentComponent, never>;
|
|
441
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NgxsmkDatepickerContentComponent, "ngxsmk-datepicker-content", never, { "isCalendarVisible": { "alias": "isCalendarVisible"; "required": false; }; "isCalendarOpen": { "alias": "isCalendarOpen"; "required": false; }; "isInlineMode": { "alias": "isInlineMode"; "required": false; }; "shouldAppendToBody": { "alias": "shouldAppendToBody"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "popoverId": { "alias": "popoverId"; "required": false; }; "classes": { "alias": "classes"; "required": false; }; "timeOnly": { "alias": "timeOnly"; "required": false; }; "showTime": { "alias": "showTime"; "required": false; }; "isMobile": { "alias": "isMobile"; "required": false; }; "mobileModalStyle": { "alias": "mobileModalStyle"; "required": false; }; "align": { "alias": "align"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "isCalendarOpening": { "alias": "isCalendarOpening"; "required": false; }; "loadingMessage": { "alias": "loadingMessage"; "required": false; }; "showRanges": { "alias": "showRanges"; "required": false; }; "rangesArray": { "alias": "rangesArray"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "calendarCount": { "alias": "calendarCount"; "required": false; }; "calendarLayout": { "alias": "calendarLayout"; "required": false; }; "syncScrollEnabled": { "alias": "syncScrollEnabled"; "required": false; }; "calendarMonths": { "alias": "calendarMonths"; "required": false; }; "weekDays": { "alias": "weekDays"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; "startDate": { "alias": "startDate"; "required": false; }; "endDate": { "alias": "endDate"; "required": false; }; "focusedDate": { "alias": "focusedDate"; "required": false; }; "today": { "alias": "today"; "required": false; }; "dateTemplate": { "alias": "dateTemplate"; "required": false; }; "calendarViewMode": { "alias": "calendarViewMode"; "required": false; }; "monthOptions": { "alias": "monthOptions"; "required": false; }; "currentMonth": { "alias": "currentMonth"; "required": false; }; "yearOptions": { "alias": "yearOptions"; "required": false; }; "currentYear": { "alias": "currentYear"; "required": false; }; "isBackArrowDisabled": { "alias": "isBackArrowDisabled"; "required": false; }; "prevMonthAriaLabel": { "alias": "prevMonthAriaLabel"; "required": false; }; "nextMonthAriaLabel": { "alias": "nextMonthAriaLabel"; "required": false; }; "yearGrid": { "alias": "yearGrid"; "required": false; }; "currentDecade": { "alias": "currentDecade"; "required": false; }; "decadeGrid": { "alias": "decadeGrid"; "required": false; }; "timelineStartDate": { "alias": "timelineStartDate"; "required": false; }; "timelineEndDate": { "alias": "timelineEndDate"; "required": false; }; "timelineMonths": { "alias": "timelineMonths"; "required": false; }; "minuteInterval": { "alias": "minuteInterval"; "required": false; }; "startTimeSlider": { "alias": "startTimeSlider"; "required": false; }; "endTimeSlider": { "alias": "endTimeSlider"; "required": false; }; "timeRangeMode": { "alias": "timeRangeMode"; "required": false; }; "hourOptions": { "alias": "hourOptions"; "required": false; }; "minuteOptions": { "alias": "minuteOptions"; "required": false; }; "secondOptions": { "alias": "secondOptions"; "required": false; }; "ampmOptions": { "alias": "ampmOptions"; "required": false; }; "currentDisplayHour": { "alias": "currentDisplayHour"; "required": false; }; "currentMinute": { "alias": "currentMinute"; "required": false; }; "currentSecond": { "alias": "currentSecond"; "required": false; }; "isPm": { "alias": "isPm"; "required": false; }; "showSeconds": { "alias": "showSeconds"; "required": false; }; "use24Hour": { "alias": "use24Hour"; "required": false; }; "startDisplayHour": { "alias": "startDisplayHour"; "required": false; }; "startMinute": { "alias": "startMinute"; "required": false; }; "startSecond": { "alias": "startSecond"; "required": false; }; "startIsPm": { "alias": "startIsPm"; "required": false; }; "endDisplayHour": { "alias": "endDisplayHour"; "required": false; }; "endMinute": { "alias": "endMinute"; "required": false; }; "endSecond": { "alias": "endSecond"; "required": false; }; "endIsPm": { "alias": "endIsPm"; "required": false; }; "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; }; "clearLabel": { "alias": "clearLabel"; "required": false; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "translations": { "alias": "translations"; "required": false; }; "boundIsDateDisabled": { "alias": "boundIsDateDisabled"; "required": false; }; "boundIsSameDay": { "alias": "boundIsSameDay"; "required": false; }; "boundIsHoliday": { "alias": "boundIsHoliday"; "required": false; }; "boundIsMultipleSelected": { "alias": "boundIsMultipleSelected"; "required": false; }; "boundIsInRange": { "alias": "boundIsInRange"; "required": false; }; "boundIsPreviewInRange": { "alias": "boundIsPreviewInRange"; "required": false; }; "boundGetAriaLabel": { "alias": "boundGetAriaLabel"; "required": false; }; "boundGetDayCellCustomClasses": { "alias": "boundGetDayCellCustomClasses"; "required": false; }; "boundGetDayCellTooltip": { "alias": "boundGetDayCellTooltip"; "required": false; }; "boundFormatDayNumber": { "alias": "boundFormatDayNumber"; "required": false; }; "getMonthYearLabel": { "alias": "getMonthYearLabel"; "required": false; }; "getCalendarAriaLabelForMonth": { "alias": "getCalendarAriaLabelForMonth"; "required": false; }; "isTimelineMonthSelected": { "alias": "isTimelineMonthSelected"; "required": false; }; "formatTimeSliderValue": { "alias": "formatTimeSliderValue"; "required": false; }; }, { "backdropClick": "backdropClick"; "touchStartContainer": "touchStartContainer"; "touchMoveContainer": "touchMoveContainer"; "touchEndContainer": "touchEndContainer"; "rangeSelect": "rangeSelect"; "previousMonth": "previousMonth"; "nextMonth": "nextMonth"; "currentMonthChange": "currentMonthChange"; "currentYearChange": "currentYearChange"; "dateClick": "dateClick"; "dateHover": "dateHover"; "dateFocus": "dateFocus"; "swipeStart": "swipeStart"; "swipeMove": "swipeMove"; "swipeEnd": "swipeEnd"; "touchStart": "touchStart"; "touchMove": "touchMove"; "touchEnd": "touchEnd"; "viewModeChange": "viewModeChange"; "changeYear": "changeYear"; "yearClick": "yearClick"; "changeDecade": "changeDecade"; "decadeClick": "decadeClick"; "timelineZoomOut": "timelineZoomOut"; "timelineZoomIn": "timelineZoomIn"; "timelineMonthClick": "timelineMonthClick"; "startTimeSliderChange": "startTimeSliderChange"; "endTimeSliderChange": "endTimeSliderChange"; "currentDisplayHourChange": "currentDisplayHourChange"; "currentMinuteChange": "currentMinuteChange"; "currentSecondChange": "currentSecondChange"; "isPmChange": "isPmChange"; "timeChange": "timeChange"; "startDisplayHourChange": "startDisplayHourChange"; "startMinuteChange": "startMinuteChange"; "startSecondChange": "startSecondChange"; "startIsPmChange": "startIsPmChange"; "endDisplayHourChange": "endDisplayHourChange"; "endMinuteChange": "endMinuteChange"; "endSecondChange": "endSecondChange"; "endIsPmChange": "endIsPmChange"; "timeRangeChange": "timeRangeChange"; "clearValue": "clearValue"; "closeCalendar": "closeCalendar"; "escapeKey": "escapeKey"; }, never, never, true, never>;
|
|
452
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgxsmkDatepickerContentComponent, "ngxsmk-datepicker-content", never, { "isCalendarVisible": { "alias": "isCalendarVisible"; "required": false; }; "isCalendarOpen": { "alias": "isCalendarOpen"; "required": false; }; "isInlineMode": { "alias": "isInlineMode"; "required": false; }; "shouldAppendToBody": { "alias": "shouldAppendToBody"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "popoverId": { "alias": "popoverId"; "required": false; }; "classes": { "alias": "classes"; "required": false; }; "timeOnly": { "alias": "timeOnly"; "required": false; }; "showTime": { "alias": "showTime"; "required": false; }; "isMobile": { "alias": "isMobile"; "required": false; }; "mobileModalStyle": { "alias": "mobileModalStyle"; "required": false; }; "align": { "alias": "align"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "isCalendarOpening": { "alias": "isCalendarOpening"; "required": false; }; "loadingMessage": { "alias": "loadingMessage"; "required": false; }; "showRanges": { "alias": "showRanges"; "required": false; }; "rangesArray": { "alias": "rangesArray"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "calendarCount": { "alias": "calendarCount"; "required": false; }; "calendarLayout": { "alias": "calendarLayout"; "required": false; }; "syncScrollEnabled": { "alias": "syncScrollEnabled"; "required": false; }; "calendarMonths": { "alias": "calendarMonths"; "required": false; }; "weekDays": { "alias": "weekDays"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; "startDate": { "alias": "startDate"; "required": false; }; "endDate": { "alias": "endDate"; "required": false; }; "focusedDate": { "alias": "focusedDate"; "required": false; }; "today": { "alias": "today"; "required": false; }; "dateTemplate": { "alias": "dateTemplate"; "required": false; }; "calendarViewMode": { "alias": "calendarViewMode"; "required": false; }; "monthOptions": { "alias": "monthOptions"; "required": false; }; "currentMonth": { "alias": "currentMonth"; "required": false; }; "yearOptions": { "alias": "yearOptions"; "required": false; }; "currentYear": { "alias": "currentYear"; "required": false; }; "isBackArrowDisabled": { "alias": "isBackArrowDisabled"; "required": false; }; "prevMonthAriaLabel": { "alias": "prevMonthAriaLabel"; "required": false; }; "nextMonthAriaLabel": { "alias": "nextMonthAriaLabel"; "required": false; }; "yearGrid": { "alias": "yearGrid"; "required": false; }; "currentDecade": { "alias": "currentDecade"; "required": false; }; "decadeGrid": { "alias": "decadeGrid"; "required": false; }; "timelineStartDate": { "alias": "timelineStartDate"; "required": false; }; "timelineEndDate": { "alias": "timelineEndDate"; "required": false; }; "timelineMonths": { "alias": "timelineMonths"; "required": false; }; "minuteInterval": { "alias": "minuteInterval"; "required": false; }; "startTimeSlider": { "alias": "startTimeSlider"; "required": false; }; "endTimeSlider": { "alias": "endTimeSlider"; "required": false; }; "timeRangeMode": { "alias": "timeRangeMode"; "required": false; }; "hourOptions": { "alias": "hourOptions"; "required": false; }; "minuteOptions": { "alias": "minuteOptions"; "required": false; }; "secondOptions": { "alias": "secondOptions"; "required": false; }; "ampmOptions": { "alias": "ampmOptions"; "required": false; }; "currentDisplayHour": { "alias": "currentDisplayHour"; "required": false; }; "currentMinute": { "alias": "currentMinute"; "required": false; }; "currentSecond": { "alias": "currentSecond"; "required": false; }; "isPm": { "alias": "isPm"; "required": false; }; "showSeconds": { "alias": "showSeconds"; "required": false; }; "use24Hour": { "alias": "use24Hour"; "required": false; }; "startDisplayHour": { "alias": "startDisplayHour"; "required": false; }; "startMinute": { "alias": "startMinute"; "required": false; }; "startSecond": { "alias": "startSecond"; "required": false; }; "startIsPm": { "alias": "startIsPm"; "required": false; }; "endDisplayHour": { "alias": "endDisplayHour"; "required": false; }; "endMinute": { "alias": "endMinute"; "required": false; }; "endSecond": { "alias": "endSecond"; "required": false; }; "endIsPm": { "alias": "endIsPm"; "required": false; }; "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; }; "clearLabel": { "alias": "clearLabel"; "required": false; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "translations": { "alias": "translations"; "required": false; }; "selectedRange": { "alias": "selectedRange"; "required": false; }; "showTimezoneSelector": { "alias": "showTimezoneSelector"; "required": false; }; "timezoneOptions": { "alias": "timezoneOptions"; "required": false; }; "currentTimezone": { "alias": "currentTimezone"; "required": false; }; "boundIsDateDisabled": { "alias": "boundIsDateDisabled"; "required": false; }; "boundIsSameDay": { "alias": "boundIsSameDay"; "required": false; }; "boundIsHoliday": { "alias": "boundIsHoliday"; "required": false; }; "boundIsMultipleSelected": { "alias": "boundIsMultipleSelected"; "required": false; }; "boundIsInRange": { "alias": "boundIsInRange"; "required": false; }; "boundIsPreviewInRange": { "alias": "boundIsPreviewInRange"; "required": false; }; "boundGetAriaLabel": { "alias": "boundGetAriaLabel"; "required": false; }; "boundGetDayCellCustomClasses": { "alias": "boundGetDayCellCustomClasses"; "required": false; }; "boundGetDayCellTooltip": { "alias": "boundGetDayCellTooltip"; "required": false; }; "boundFormatDayNumber": { "alias": "boundFormatDayNumber"; "required": false; }; "getMonthYearLabel": { "alias": "getMonthYearLabel"; "required": false; }; "getCalendarAriaLabelForMonth": { "alias": "getCalendarAriaLabelForMonth"; "required": false; }; "isTimelineMonthSelected": { "alias": "isTimelineMonthSelected"; "required": false; }; "formatTimeSliderValue": { "alias": "formatTimeSliderValue"; "required": false; }; }, { "timezoneChange": "timezoneChange"; "backdropClick": "backdropClick"; "touchStartContainer": "touchStartContainer"; "touchMoveContainer": "touchMoveContainer"; "touchEndContainer": "touchEndContainer"; "rangeSelect": "rangeSelect"; "previousMonth": "previousMonth"; "nextMonth": "nextMonth"; "currentMonthChange": "currentMonthChange"; "currentYearChange": "currentYearChange"; "dateClick": "dateClick"; "dateHover": "dateHover"; "dateFocus": "dateFocus"; "swipeStart": "swipeStart"; "swipeMove": "swipeMove"; "swipeEnd": "swipeEnd"; "touchStart": "touchStart"; "touchMove": "touchMove"; "touchEnd": "touchEnd"; "viewModeChange": "viewModeChange"; "changeYear": "changeYear"; "yearClick": "yearClick"; "changeDecade": "changeDecade"; "decadeClick": "decadeClick"; "timelineZoomOut": "timelineZoomOut"; "timelineZoomIn": "timelineZoomIn"; "timelineMonthClick": "timelineMonthClick"; "startTimeSliderChange": "startTimeSliderChange"; "endTimeSliderChange": "endTimeSliderChange"; "currentDisplayHourChange": "currentDisplayHourChange"; "currentMinuteChange": "currentMinuteChange"; "currentSecondChange": "currentSecondChange"; "isPmChange": "isPmChange"; "timeChange": "timeChange"; "startDisplayHourChange": "startDisplayHourChange"; "startMinuteChange": "startMinuteChange"; "startSecondChange": "startSecondChange"; "startIsPmChange": "startIsPmChange"; "endDisplayHourChange": "endDisplayHourChange"; "endMinuteChange": "endMinuteChange"; "endSecondChange": "endSecondChange"; "endIsPmChange": "endIsPmChange"; "timeRangeChange": "timeRangeChange"; "clearValue": "clearValue"; "closeCalendar": "closeCalendar"; "escapeKey": "escapeKey"; }, never, never, true, never>;
|
|
442
453
|
}
|
|
443
454
|
|
|
444
455
|
interface DayCellRenderHook {
|
|
@@ -803,6 +814,38 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
803
814
|
allowSameDay: boolean;
|
|
804
815
|
displayFormat?: string;
|
|
805
816
|
allowTyping: boolean;
|
|
817
|
+
enableNaturalLanguage: boolean;
|
|
818
|
+
naturalLanguagePreviewTemplate?: TemplateRef<unknown>;
|
|
819
|
+
naturalLanguageResolved: EventEmitter<Date | {
|
|
820
|
+
start: Date;
|
|
821
|
+
end: Date;
|
|
822
|
+
}>;
|
|
823
|
+
set calendars(value: number);
|
|
824
|
+
get calendars(): number;
|
|
825
|
+
rangePresetFactory?: (today: Date) => {
|
|
826
|
+
id: string;
|
|
827
|
+
name: string;
|
|
828
|
+
calculate: (today: Date) => {
|
|
829
|
+
start: Date;
|
|
830
|
+
end: Date;
|
|
831
|
+
};
|
|
832
|
+
}[];
|
|
833
|
+
invalidRange: EventEmitter<{
|
|
834
|
+
start: Date;
|
|
835
|
+
end: Date;
|
|
836
|
+
disabledDatesInside: Date[];
|
|
837
|
+
}>;
|
|
838
|
+
showTimezoneSelector: boolean;
|
|
839
|
+
defaultTimezone: string;
|
|
840
|
+
timezoneChange: EventEmitter<string>;
|
|
841
|
+
timezoneOptions: {
|
|
842
|
+
label: string;
|
|
843
|
+
value: string;
|
|
844
|
+
}[];
|
|
845
|
+
getTimezoneOptions(): {
|
|
846
|
+
label: string;
|
|
847
|
+
value: string;
|
|
848
|
+
}[];
|
|
806
849
|
private _calendarCount;
|
|
807
850
|
set calendarCount(value: number);
|
|
808
851
|
get calendarCount(): number;
|
|
@@ -852,7 +895,7 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
852
895
|
* can be appended to body and positioned above the modal.
|
|
853
896
|
*/
|
|
854
897
|
private isInsideModal;
|
|
855
|
-
|
|
898
|
+
protected readonly _isCalendarOpen: i0.WritableSignal<boolean>;
|
|
856
899
|
get isCalendarOpen(): boolean;
|
|
857
900
|
set isCalendarOpen(value: boolean);
|
|
858
901
|
private isOpeningCalendar;
|
|
@@ -1026,10 +1069,12 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1026
1069
|
_currentYear: number;
|
|
1027
1070
|
_currentDecade: number;
|
|
1028
1071
|
monthOptions: i0.Signal<{
|
|
1072
|
+
disabled: boolean;
|
|
1029
1073
|
label: string;
|
|
1030
1074
|
value: number;
|
|
1031
1075
|
}[]>;
|
|
1032
1076
|
yearOptions: i0.Signal<{
|
|
1077
|
+
disabled: boolean;
|
|
1033
1078
|
label: string;
|
|
1034
1079
|
value: number;
|
|
1035
1080
|
}[]>;
|
|
@@ -1091,9 +1136,12 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1091
1136
|
private readonly parsingService;
|
|
1092
1137
|
private readonly touchService;
|
|
1093
1138
|
private readonly popoverPositioningService;
|
|
1139
|
+
private readonly naturalLanguageParserService;
|
|
1094
1140
|
readonly ngControl: NgControl | null;
|
|
1095
1141
|
private readonly isBrowser;
|
|
1096
1142
|
private readonly dateComparator;
|
|
1143
|
+
naturalLanguagePreview: string | null;
|
|
1144
|
+
showNaturalLanguagePreview: boolean;
|
|
1097
1145
|
constructor();
|
|
1098
1146
|
typedInputValue: string;
|
|
1099
1147
|
private isTyping;
|
|
@@ -1157,8 +1205,8 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1157
1205
|
* @param delay - Debounce delay in milliseconds (default: 100ms)
|
|
1158
1206
|
*/
|
|
1159
1207
|
private debouncedFieldSync;
|
|
1160
|
-
|
|
1161
|
-
|
|
1208
|
+
protected readonly _currentMonthSignal: i0.WritableSignal<number>;
|
|
1209
|
+
protected readonly _currentYearSignal: i0.WritableSignal<number>;
|
|
1162
1210
|
private readonly _localeSignal;
|
|
1163
1211
|
private readonly _holidayProviderSignal;
|
|
1164
1212
|
private readonly _disabledStateSignal;
|
|
@@ -1174,6 +1222,8 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1174
1222
|
private readonly _visibleCalendarIndicesSignal;
|
|
1175
1223
|
/** Bumped when `multiCalendarMonths` is regenerated so `renderedCalendars` invalidates (plain array is not a signal). */
|
|
1176
1224
|
private readonly _multiCalendarDataRevision;
|
|
1225
|
+
readonly calendarAriaLabel: i0.Signal<string>;
|
|
1226
|
+
readonly calendarLoadingMessage: i0.Signal<string>;
|
|
1177
1227
|
/**
|
|
1178
1228
|
* Computed signal for rendered calendars - only includes visible calendars + buffer.
|
|
1179
1229
|
* This dramatically reduces DOM nodes for multi-calendar layouts.
|
|
@@ -1235,6 +1285,7 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1235
1285
|
*/
|
|
1236
1286
|
private formatWithCustomPattern;
|
|
1237
1287
|
get isBackArrowDisabled(): boolean;
|
|
1288
|
+
private adjustDisplayedDateToRange;
|
|
1238
1289
|
private _invalidateMemoCache;
|
|
1239
1290
|
get isCurrentMonthMemo(): (day: Date | null) => boolean;
|
|
1240
1291
|
/**
|
|
@@ -1304,6 +1355,8 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1304
1355
|
* @param calendarMonth - The calendar month object
|
|
1305
1356
|
* @returns Unique identifier combining year and month
|
|
1306
1357
|
*/
|
|
1358
|
+
private containsNodeViaComposedPath;
|
|
1359
|
+
private containsNodeViaDOM;
|
|
1307
1360
|
/**
|
|
1308
1361
|
* Checks if a DOM node is contained within this datepicker instance,
|
|
1309
1362
|
* including its input group and any portaled popover content.
|
|
@@ -1311,7 +1364,7 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1311
1364
|
* @param target - The node to check
|
|
1312
1365
|
* @returns True if the node is inside this datepicker's DOM tree
|
|
1313
1366
|
*/
|
|
1314
|
-
containsNode(target: Node | null): boolean;
|
|
1367
|
+
containsNode(target: Node | null, event?: UIEvent): boolean;
|
|
1315
1368
|
/** Shared logic for closing calendar when user interacts outside (click or touch). */
|
|
1316
1369
|
private tryCloseCalendarOnOutsideInteraction;
|
|
1317
1370
|
onDocumentClick(event: MouseEvent | TouchEvent): void;
|
|
@@ -1648,6 +1701,9 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1648
1701
|
private generateTimeOptions;
|
|
1649
1702
|
private generateLocaleData;
|
|
1650
1703
|
private updateRangesArray;
|
|
1704
|
+
setTimezone(tz: string): void;
|
|
1705
|
+
checkAndEmitInvalidRange(start: Date, end: Date): boolean;
|
|
1706
|
+
updateNaturalLanguagePreview(value: string): void;
|
|
1651
1707
|
selectRange(range: [Date, Date]): void;
|
|
1652
1708
|
isHoliday(date: Date | null): boolean;
|
|
1653
1709
|
getHolidayLabel(date: Date | null): string | null;
|
|
@@ -1917,7 +1973,7 @@ declare class NgxsmkDatepickerComponent implements OnInit, OnChanges, OnDestroy,
|
|
|
1917
1973
|
private isIonicEnvironment;
|
|
1918
1974
|
private removeFocusTrap;
|
|
1919
1975
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgxsmkDatepickerComponent, never>;
|
|
1920
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NgxsmkDatepickerComponent, "ngxsmk-datepicker", never, { "mode": { "alias": "mode"; "required": false; }; "calendarViewMode": { "alias": "calendarViewMode"; "required": false; }; "isInvalidDate": { "alias": "isInvalidDate"; "required": false; }; "showRanges": { "alias": "showRanges"; "required": false; }; "showTime": { "alias": "showTime"; "required": false; }; "timeOnly": { "alias": "timeOnly"; "required": false; }; "timeRangeMode": { "alias": "timeRangeMode"; "required": false; }; "showCalendarButton": { "alias": "showCalendarButton"; "required": false; }; "minuteInterval": { "alias": "minuteInterval"; "required": false; }; "use24Hour": { "alias": "use24Hour"; "required": false; }; "secondInterval": { "alias": "secondInterval"; "required": false; }; "showSeconds": { "alias": "showSeconds"; "required": false; }; "holidayProvider": { "alias": "holidayProvider"; "required": false; }; "disableHolidays": { "alias": "disableHolidays"; "required": false; }; "disabledDates": { "alias": "disabledDates"; "required": false; }; "disabledRanges": { "alias": "disabledRanges"; "required": false; }; "recurringPattern": { "alias": "recurringPattern"; "required": false; }; "dateTemplate": { "alias": "dateTemplate"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "inline": { "alias": "inline"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "name": { "alias": "name"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "translations": { "alias": "translations"; "required": false; }; "translationService": { "alias": "translationService"; "required": false; }; "clearLabel": { "alias": "clearLabel"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "prevMonthAriaLabel": { "alias": "prevMonthAriaLabel"; "required": false; }; "nextMonthAriaLabel": { "alias": "nextMonthAriaLabel"; "required": false; }; "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; }; "weekStart": { "alias": "weekStart"; "required": false; }; "yearRange": { "alias": "yearRange"; "required": false; }; "timezone": { "alias": "timezone"; "required": false; }; "hooks": { "alias": "hooks"; "required": false; }; "enableKeyboardShortcuts": { "alias": "enableKeyboardShortcuts"; "required": false; }; "customShortcuts": { "alias": "customShortcuts"; "required": false; }; "autoApplyClose": { "alias": "autoApplyClose"; "required": false; }; "allowSameDay": { "alias": "allowSameDay"; "required": false; }; "displayFormat": { "alias": "displayFormat"; "required": false; }; "allowTyping": { "alias": "allowTyping"; "required": false; }; "calendarCount": { "alias": "calendarCount"; "required": false; }; "calendarLayout": { "alias": "calendarLayout"; "required": false; }; "defaultMonthOffset": { "alias": "defaultMonthOffset"; "required": false; }; "syncScroll": { "alias": "syncScroll"; "required": false; }; "align": { "alias": "align"; "required": false; }; "useNativePicker": { "alias": "useNativePicker"; "required": false; }; "enableHapticFeedback": { "alias": "enableHapticFeedback"; "required": false; }; "mobileModalStyle": { "alias": "mobileModalStyle"; "required": false; }; "mobileTimePickerStyle": { "alias": "mobileTimePickerStyle"; "required": false; }; "enablePullToRefresh": { "alias": "enablePullToRefresh"; "required": false; }; "mobileTheme": { "alias": "mobileTheme"; "required": false; }; "enableVoiceInput": { "alias": "enableVoiceInput"; "required": false; }; "autoDetectMobile": { "alias": "autoDetectMobile"; "required": false; }; "disableFocusTrap": { "alias": "disableFocusTrap"; "required": false; }; "appendToBody": { "alias": "appendToBody"; "required": false; }; "value": { "alias": "value"; "required": false; }; "field": { "alias": "field"; "required": false; }; "startAt": { "alias": "startAt"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "dateFormatPattern": { "alias": "dateFormatPattern"; "required": false; }; "animationConfig": { "alias": "animationConfig"; "required": false; }; "rtl": { "alias": "rtl"; "required": false; }; "classes": { "alias": "classes"; "required": false; }; "disabledState": { "alias": "disabledState"; "required": false; }; "required": { "alias": "required"; "required": false; }; "errorState": { "alias": "errorState"; "required": false; }; "userAriaDescribedBy": { "alias": "userAriaDescribedBy"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "ranges": { "alias": "ranges"; "required": false; }; }, { "valueChange": "valueChange"; "action": "action"; "validationError": "validationError"; }, never, never, true, never>;
|
|
1976
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgxsmkDatepickerComponent, "ngxsmk-datepicker", never, { "mode": { "alias": "mode"; "required": false; }; "calendarViewMode": { "alias": "calendarViewMode"; "required": false; }; "isInvalidDate": { "alias": "isInvalidDate"; "required": false; }; "showRanges": { "alias": "showRanges"; "required": false; }; "showTime": { "alias": "showTime"; "required": false; }; "timeOnly": { "alias": "timeOnly"; "required": false; }; "timeRangeMode": { "alias": "timeRangeMode"; "required": false; }; "showCalendarButton": { "alias": "showCalendarButton"; "required": false; }; "minuteInterval": { "alias": "minuteInterval"; "required": false; }; "use24Hour": { "alias": "use24Hour"; "required": false; }; "secondInterval": { "alias": "secondInterval"; "required": false; }; "showSeconds": { "alias": "showSeconds"; "required": false; }; "holidayProvider": { "alias": "holidayProvider"; "required": false; }; "disableHolidays": { "alias": "disableHolidays"; "required": false; }; "disabledDates": { "alias": "disabledDates"; "required": false; }; "disabledRanges": { "alias": "disabledRanges"; "required": false; }; "recurringPattern": { "alias": "recurringPattern"; "required": false; }; "dateTemplate": { "alias": "dateTemplate"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "inline": { "alias": "inline"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "name": { "alias": "name"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "translations": { "alias": "translations"; "required": false; }; "translationService": { "alias": "translationService"; "required": false; }; "clearLabel": { "alias": "clearLabel"; "required": false; }; "closeLabel": { "alias": "closeLabel"; "required": false; }; "prevMonthAriaLabel": { "alias": "prevMonthAriaLabel"; "required": false; }; "nextMonthAriaLabel": { "alias": "nextMonthAriaLabel"; "required": false; }; "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; }; "weekStart": { "alias": "weekStart"; "required": false; }; "yearRange": { "alias": "yearRange"; "required": false; }; "timezone": { "alias": "timezone"; "required": false; }; "hooks": { "alias": "hooks"; "required": false; }; "enableKeyboardShortcuts": { "alias": "enableKeyboardShortcuts"; "required": false; }; "customShortcuts": { "alias": "customShortcuts"; "required": false; }; "autoApplyClose": { "alias": "autoApplyClose"; "required": false; }; "allowSameDay": { "alias": "allowSameDay"; "required": false; }; "displayFormat": { "alias": "displayFormat"; "required": false; }; "allowTyping": { "alias": "allowTyping"; "required": false; }; "enableNaturalLanguage": { "alias": "enableNaturalLanguage"; "required": false; }; "naturalLanguagePreviewTemplate": { "alias": "naturalLanguagePreviewTemplate"; "required": false; }; "calendars": { "alias": "calendars"; "required": false; }; "rangePresetFactory": { "alias": "rangePresetFactory"; "required": false; }; "showTimezoneSelector": { "alias": "showTimezoneSelector"; "required": false; }; "defaultTimezone": { "alias": "defaultTimezone"; "required": false; }; "calendarCount": { "alias": "calendarCount"; "required": false; }; "calendarLayout": { "alias": "calendarLayout"; "required": false; }; "defaultMonthOffset": { "alias": "defaultMonthOffset"; "required": false; }; "syncScroll": { "alias": "syncScroll"; "required": false; }; "align": { "alias": "align"; "required": false; }; "useNativePicker": { "alias": "useNativePicker"; "required": false; }; "enableHapticFeedback": { "alias": "enableHapticFeedback"; "required": false; }; "mobileModalStyle": { "alias": "mobileModalStyle"; "required": false; }; "mobileTimePickerStyle": { "alias": "mobileTimePickerStyle"; "required": false; }; "enablePullToRefresh": { "alias": "enablePullToRefresh"; "required": false; }; "mobileTheme": { "alias": "mobileTheme"; "required": false; }; "enableVoiceInput": { "alias": "enableVoiceInput"; "required": false; }; "autoDetectMobile": { "alias": "autoDetectMobile"; "required": false; }; "disableFocusTrap": { "alias": "disableFocusTrap"; "required": false; }; "appendToBody": { "alias": "appendToBody"; "required": false; }; "value": { "alias": "value"; "required": false; }; "field": { "alias": "field"; "required": false; }; "startAt": { "alias": "startAt"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "dateFormatPattern": { "alias": "dateFormatPattern"; "required": false; }; "animationConfig": { "alias": "animationConfig"; "required": false; }; "rtl": { "alias": "rtl"; "required": false; }; "classes": { "alias": "classes"; "required": false; }; "disabledState": { "alias": "disabledState"; "required": false; }; "required": { "alias": "required"; "required": false; }; "errorState": { "alias": "errorState"; "required": false; }; "userAriaDescribedBy": { "alias": "userAriaDescribedBy"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "ranges": { "alias": "ranges"; "required": false; }; }, { "naturalLanguageResolved": "naturalLanguageResolved"; "invalidRange": "invalidRange"; "timezoneChange": "timezoneChange"; "valueChange": "valueChange"; "action": "action"; "validationError": "validationError"; }, never, never, true, never>;
|
|
1921
1977
|
}
|
|
1922
1978
|
|
|
1923
1979
|
/**
|