@itilite/lumina-ui 1.0.10-alpha → 1.0.12-alpha
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/dist/AdvancedDateRangePicker-D9Sdk4rK.d.mts +64 -0
- package/dist/AdvancedDateRangePicker-D9Sdk4rK.d.ts +64 -0
- package/dist/AdvancedDateRangePicker-Di3rHxqf.d.mts +64 -0
- package/dist/AdvancedDateRangePicker-Di3rHxqf.d.ts +64 -0
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.mts +1 -1
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.ts +1 -1
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.js +49 -25
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.mjs +2 -2
- package/dist/chunk-2IT3XM7C.mjs +473 -0
- package/dist/chunk-IPVJEGDI.mjs +476 -0
- package/dist/chunk-SKPCOHON.mjs +473 -0
- package/dist/chunk-XECXKSTC.mjs +453 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +49 -25
- package/dist/index.mjs +10 -10
- package/dist/styles.css +231 -223
- package/package.json +1 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface TimeValue {
|
|
4
|
+
hour: string;
|
|
5
|
+
minute: string;
|
|
6
|
+
period: "AM" | "PM";
|
|
7
|
+
}
|
|
8
|
+
interface DateRangeValue {
|
|
9
|
+
startDate: Date | null;
|
|
10
|
+
endDate: Date | null;
|
|
11
|
+
startTime: TimeValue;
|
|
12
|
+
endTime: TimeValue;
|
|
13
|
+
timezone: string;
|
|
14
|
+
activePreset?: string;
|
|
15
|
+
}
|
|
16
|
+
interface PresetOption {
|
|
17
|
+
label: string;
|
|
18
|
+
key: string;
|
|
19
|
+
getRange: () => (Date | null)[];
|
|
20
|
+
}
|
|
21
|
+
interface TimezoneOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
}
|
|
25
|
+
interface DateRangePickerProps {
|
|
26
|
+
/** Controlled value for the date range */
|
|
27
|
+
value?: DateRangeValue;
|
|
28
|
+
/** Called when the user clicks "Done" */
|
|
29
|
+
onChange?: (value: DateRangeValue) => void;
|
|
30
|
+
/** Called on every selection change (live) */
|
|
31
|
+
onRangeChange?: (value: DateRangeValue) => void;
|
|
32
|
+
/** Label for the confirm button. Defaults to "Done" */
|
|
33
|
+
confirmLabel?: string;
|
|
34
|
+
/** Additional class name for the root wrapper */
|
|
35
|
+
className?: string;
|
|
36
|
+
/** Whether the picker is disabled */
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
/** Disable dates before today */
|
|
39
|
+
disablePastDates?: boolean;
|
|
40
|
+
/** Minimum selectable date (ISO string) */
|
|
41
|
+
minDate?: string | null;
|
|
42
|
+
/** Maximum selectable date (ISO string) */
|
|
43
|
+
maxDate?: string | null;
|
|
44
|
+
/** Show a single calendar instead of two */
|
|
45
|
+
showSingleCalendar?: boolean;
|
|
46
|
+
/** Id prefix for accessibility */
|
|
47
|
+
id?: string;
|
|
48
|
+
defaultTimezone?: string;
|
|
49
|
+
isTimezoneDisabled?: boolean;
|
|
50
|
+
timezoneOptions?: TimezoneOption[];
|
|
51
|
+
/** Initial active preset key. Defaults to "custom". e.g. "this-month", "yesterday" */
|
|
52
|
+
defaultPreset?: string;
|
|
53
|
+
/** Custom presets passed from parent */
|
|
54
|
+
presets?: PresetOption[];
|
|
55
|
+
hidePresets?: boolean;
|
|
56
|
+
hideFooter?: boolean;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
declare function AdvancedDateRangePicker({ value, onChange, confirmLabel, className, disabled, disablePastDates, minDate, maxDate, showSingleCalendar, id, defaultTimezone, isTimezoneDisabled, timezoneOptions, defaultPreset, presets, }: DateRangePickerProps): React.JSX.Element;
|
|
60
|
+
declare namespace AdvancedDateRangePicker {
|
|
61
|
+
var displayName: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { AdvancedDateRangePicker as A, type DateRangePickerProps as D, type PresetOption as P, type TimeValue as T, type DateRangeValue as a, type TimezoneOption as b };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface TimeValue {
|
|
4
|
+
hour: string;
|
|
5
|
+
minute: string;
|
|
6
|
+
period: "AM" | "PM";
|
|
7
|
+
}
|
|
8
|
+
interface DateRangeValue {
|
|
9
|
+
startDate: Date | null;
|
|
10
|
+
endDate: Date | null;
|
|
11
|
+
startTime: TimeValue;
|
|
12
|
+
endTime: TimeValue;
|
|
13
|
+
timezone: string;
|
|
14
|
+
activePreset?: string;
|
|
15
|
+
}
|
|
16
|
+
interface PresetOption {
|
|
17
|
+
label: string;
|
|
18
|
+
key: string;
|
|
19
|
+
getRange: () => (Date | null)[];
|
|
20
|
+
}
|
|
21
|
+
interface TimezoneOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
}
|
|
25
|
+
interface DateRangePickerProps {
|
|
26
|
+
/** Controlled value for the date range */
|
|
27
|
+
value?: DateRangeValue;
|
|
28
|
+
/** Called when the user clicks "Done" */
|
|
29
|
+
onChange?: (value: DateRangeValue) => void;
|
|
30
|
+
/** Called on every selection change (live) */
|
|
31
|
+
onRangeChange?: (value: DateRangeValue) => void;
|
|
32
|
+
/** Label for the confirm button. Defaults to "Done" */
|
|
33
|
+
confirmLabel?: string;
|
|
34
|
+
/** Additional class name for the root wrapper */
|
|
35
|
+
className?: string;
|
|
36
|
+
/** Whether the picker is disabled */
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
/** Disable dates before today */
|
|
39
|
+
disablePastDates?: boolean;
|
|
40
|
+
/** Minimum selectable date (ISO string) */
|
|
41
|
+
minDate?: string | null;
|
|
42
|
+
/** Maximum selectable date (ISO string) */
|
|
43
|
+
maxDate?: string | null;
|
|
44
|
+
/** Show a single calendar instead of two */
|
|
45
|
+
showSingleCalendar?: boolean;
|
|
46
|
+
/** Id prefix for accessibility */
|
|
47
|
+
id?: string;
|
|
48
|
+
defaultTimezone?: string;
|
|
49
|
+
isTimezoneDisabled?: boolean;
|
|
50
|
+
timezoneOptions?: TimezoneOption[];
|
|
51
|
+
/** Initial active preset key. Defaults to "custom". e.g. "this-month", "yesterday" */
|
|
52
|
+
defaultPreset?: string;
|
|
53
|
+
/** Custom presets passed from parent */
|
|
54
|
+
presets?: PresetOption[];
|
|
55
|
+
hidePresets?: boolean;
|
|
56
|
+
hideFooter?: boolean;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
declare function AdvancedDateRangePicker({ value, onChange, confirmLabel, className, disabled, disablePastDates, minDate, maxDate, showSingleCalendar, id, defaultTimezone, isTimezoneDisabled, timezoneOptions, defaultPreset, presets, }: DateRangePickerProps): React.JSX.Element;
|
|
60
|
+
declare namespace AdvancedDateRangePicker {
|
|
61
|
+
var displayName: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { AdvancedDateRangePicker as A, type DateRangePickerProps as D, type PresetOption as P, type TimeValue as T, type DateRangeValue as a, type TimezoneOption as b };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface TimeValue {
|
|
4
|
+
hour: string;
|
|
5
|
+
minute: string;
|
|
6
|
+
period: "AM" | "PM";
|
|
7
|
+
}
|
|
8
|
+
interface DateRangeValue {
|
|
9
|
+
startDate: Date | null;
|
|
10
|
+
endDate: Date | null;
|
|
11
|
+
startTime: TimeValue;
|
|
12
|
+
endTime: TimeValue;
|
|
13
|
+
timezone: string;
|
|
14
|
+
activePreset?: string;
|
|
15
|
+
}
|
|
16
|
+
interface PresetOption {
|
|
17
|
+
label: string;
|
|
18
|
+
key: string;
|
|
19
|
+
getRange: () => (Date | null)[];
|
|
20
|
+
}
|
|
21
|
+
interface TimezoneOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
}
|
|
25
|
+
interface DateRangePickerProps {
|
|
26
|
+
/** Controlled value for the date range */
|
|
27
|
+
value?: DateRangeValue;
|
|
28
|
+
/** Called when the user clicks "Done" */
|
|
29
|
+
onChange?: (value: DateRangeValue) => void;
|
|
30
|
+
/** Called on every selection change (live) */
|
|
31
|
+
onRangeChange?: (value: DateRangeValue) => void;
|
|
32
|
+
/** Label for the confirm button. Defaults to "Done" */
|
|
33
|
+
confirmLabel?: string;
|
|
34
|
+
/** Additional class name for the root wrapper */
|
|
35
|
+
className?: string;
|
|
36
|
+
/** Whether the picker is disabled */
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
/** Disable dates before today */
|
|
39
|
+
disablePastDates?: boolean;
|
|
40
|
+
/** Minimum selectable date (ISO string) */
|
|
41
|
+
minDate?: string | null;
|
|
42
|
+
/** Maximum selectable date (ISO string) */
|
|
43
|
+
maxDate?: string | null;
|
|
44
|
+
/** Show a single calendar instead of two */
|
|
45
|
+
showSingleCalendar?: boolean;
|
|
46
|
+
/** Id prefix for accessibility */
|
|
47
|
+
id?: string;
|
|
48
|
+
defaultTimezone?: string;
|
|
49
|
+
isTimezoneDisabled?: boolean;
|
|
50
|
+
timezoneOptions?: TimezoneOption[];
|
|
51
|
+
/** Initial active preset key. Defaults to "custom". e.g. "this-month", "yesterday" */
|
|
52
|
+
defaultPreset?: string;
|
|
53
|
+
/** Custom presets passed from parent */
|
|
54
|
+
presets?: PresetOption[];
|
|
55
|
+
hidePresets?: boolean;
|
|
56
|
+
hideFooter?: boolean;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
declare function AdvancedDateRangePicker({ value, onChange, confirmLabel, className, disabled, disablePastDates, minDate, maxDate, showSingleCalendar, id, defaultTimezone, isTimezoneDisabled, timezoneOptions, defaultPreset, presets, hidePresets, hideFooter, }: DateRangePickerProps): React.JSX.Element;
|
|
60
|
+
declare namespace AdvancedDateRangePicker {
|
|
61
|
+
var displayName: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { AdvancedDateRangePicker as A, type DateRangePickerProps as D, type PresetOption as P, type TimeValue as T, type DateRangeValue as a, type TimezoneOption as b };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface TimeValue {
|
|
4
|
+
hour: string;
|
|
5
|
+
minute: string;
|
|
6
|
+
period: "AM" | "PM";
|
|
7
|
+
}
|
|
8
|
+
interface DateRangeValue {
|
|
9
|
+
startDate: Date | null;
|
|
10
|
+
endDate: Date | null;
|
|
11
|
+
startTime: TimeValue;
|
|
12
|
+
endTime: TimeValue;
|
|
13
|
+
timezone: string;
|
|
14
|
+
activePreset?: string;
|
|
15
|
+
}
|
|
16
|
+
interface PresetOption {
|
|
17
|
+
label: string;
|
|
18
|
+
key: string;
|
|
19
|
+
getRange: () => (Date | null)[];
|
|
20
|
+
}
|
|
21
|
+
interface TimezoneOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
}
|
|
25
|
+
interface DateRangePickerProps {
|
|
26
|
+
/** Controlled value for the date range */
|
|
27
|
+
value?: DateRangeValue;
|
|
28
|
+
/** Called when the user clicks "Done" */
|
|
29
|
+
onChange?: (value: DateRangeValue) => void;
|
|
30
|
+
/** Called on every selection change (live) */
|
|
31
|
+
onRangeChange?: (value: DateRangeValue) => void;
|
|
32
|
+
/** Label for the confirm button. Defaults to "Done" */
|
|
33
|
+
confirmLabel?: string;
|
|
34
|
+
/** Additional class name for the root wrapper */
|
|
35
|
+
className?: string;
|
|
36
|
+
/** Whether the picker is disabled */
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
/** Disable dates before today */
|
|
39
|
+
disablePastDates?: boolean;
|
|
40
|
+
/** Minimum selectable date (ISO string) */
|
|
41
|
+
minDate?: string | null;
|
|
42
|
+
/** Maximum selectable date (ISO string) */
|
|
43
|
+
maxDate?: string | null;
|
|
44
|
+
/** Show a single calendar instead of two */
|
|
45
|
+
showSingleCalendar?: boolean;
|
|
46
|
+
/** Id prefix for accessibility */
|
|
47
|
+
id?: string;
|
|
48
|
+
defaultTimezone?: string;
|
|
49
|
+
isTimezoneDisabled?: boolean;
|
|
50
|
+
timezoneOptions?: TimezoneOption[];
|
|
51
|
+
/** Initial active preset key. Defaults to "custom". e.g. "this-month", "yesterday" */
|
|
52
|
+
defaultPreset?: string;
|
|
53
|
+
/** Custom presets passed from parent */
|
|
54
|
+
presets?: PresetOption[];
|
|
55
|
+
hidePresets?: boolean;
|
|
56
|
+
hideFooter?: boolean;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
declare function AdvancedDateRangePicker({ value, onChange, confirmLabel, className, disabled, disablePastDates, minDate, maxDate, showSingleCalendar, id, defaultTimezone, isTimezoneDisabled, timezoneOptions, defaultPreset, presets, hidePresets, hideFooter, }: DateRangePickerProps): React.JSX.Element;
|
|
60
|
+
declare namespace AdvancedDateRangePicker {
|
|
61
|
+
var displayName: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { AdvancedDateRangePicker as A, type DateRangePickerProps as D, type PresetOption as P, type TimeValue as T, type DateRangeValue as a, type TimezoneOption as b };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { A as AdvancedDateRangePicker, A as default } from '../../AdvancedDateRangePicker-
|
|
2
|
+
export { A as AdvancedDateRangePicker, A as default } from '../../AdvancedDateRangePicker-Di3rHxqf.mjs';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { A as AdvancedDateRangePicker, A as default } from '../../AdvancedDateRangePicker-
|
|
2
|
+
export { A as AdvancedDateRangePicker, A as default } from '../../AdvancedDateRangePicker-Di3rHxqf.js';
|
|
@@ -70,7 +70,7 @@ var import_customParseFormat = __toESM(require("dayjs/plugin/customParseFormat.j
|
|
|
70
70
|
var import_isSameOrBefore = __toESM(require("dayjs/plugin/isSameOrBefore.js"));
|
|
71
71
|
|
|
72
72
|
// src/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.module.scss
|
|
73
|
-
var AdvancedDateRangePicker_module_default = { "root": "AdvancedDateRangePicker-module__root___udir8", "singleCalendar": "AdvancedDateRangePicker-module__singleCalendar___qy2-H", "inner": "AdvancedDateRangePicker-module__inner___P4OHa", "left": "AdvancedDateRangePicker-module__left___T6E84", "sidebarItem": "AdvancedDateRangePicker-module__sidebarItem___-NXPm", "sidebarItemActive": "AdvancedDateRangePicker-module__sidebarItemActive___5GmBY", "main": "AdvancedDateRangePicker-module__main___G4MU9", "header": "AdvancedDateRangePicker-module__header___mxXEE", "timezoneWrapper": "AdvancedDateRangePicker-module__timezoneWrapper___886Qm", "dateTimeWrapper": "AdvancedDateRangePicker-module__dateTimeWrapper___unDQJ", "headerGroup": "AdvancedDateRangePicker-module__headerGroup___J7mJB", "headerLabel": "AdvancedDateRangePicker-module__headerLabel___Yvhkr", "headerSeparator": "AdvancedDateRangePicker-module__headerSeparator___Vwx6P", "timezoneSelect": "AdvancedDateRangePicker-module__timezoneSelect___f4oln", "timezoneSelectContainer": "AdvancedDateRangePicker-module__timezoneSelectContainer___8SMc4", "timezoneSelectInput": "AdvancedDateRangePicker-module__timezoneSelectInput___ol0-7", "timezoneDisabledBadge": "AdvancedDateRangePicker-module__timezoneDisabledBadge___VBxOd", "inputWrapper": "AdvancedDateRangePicker-module__inputWrapper___bFFNF", "dateTimeColumn": "AdvancedDateRangePicker-module__dateTimeColumn___tdDV3", "dateTimeGroup": "AdvancedDateRangePicker-module__dateTimeGroup___azF09", "dateInput": "AdvancedDateRangePicker-module__dateInput___0t9ww", "inputError": "AdvancedDateRangePicker-module__inputError___A5hid", "timeInput": "AdvancedDateRangePicker-module__timeInput___Jalr9", "errorMessage": "AdvancedDateRangePicker-module__errorMessage___gx7ag", "body": "AdvancedDateRangePicker-module__body___f8XYj", "footer": "AdvancedDateRangePicker-module__footer___rsJ2w", "doneBtn": "AdvancedDateRangePicker-module__doneBtn___mt-Sv" };
|
|
73
|
+
var AdvancedDateRangePicker_module_default = { "root": "AdvancedDateRangePicker-module__root___udir8", "singleCalendar": "AdvancedDateRangePicker-module__singleCalendar___qy2-H", "hidePresets": "AdvancedDateRangePicker-module__hidePresets___-m2-P", "inner": "AdvancedDateRangePicker-module__inner___P4OHa", "left": "AdvancedDateRangePicker-module__left___T6E84", "sidebarItem": "AdvancedDateRangePicker-module__sidebarItem___-NXPm", "sidebarItemActive": "AdvancedDateRangePicker-module__sidebarItemActive___5GmBY", "main": "AdvancedDateRangePicker-module__main___G4MU9", "header": "AdvancedDateRangePicker-module__header___mxXEE", "timezoneWrapper": "AdvancedDateRangePicker-module__timezoneWrapper___886Qm", "dateTimeWrapper": "AdvancedDateRangePicker-module__dateTimeWrapper___unDQJ", "headerGroup": "AdvancedDateRangePicker-module__headerGroup___J7mJB", "headerLabel": "AdvancedDateRangePicker-module__headerLabel___Yvhkr", "headerSeparator": "AdvancedDateRangePicker-module__headerSeparator___Vwx6P", "timezoneSelect": "AdvancedDateRangePicker-module__timezoneSelect___f4oln", "timezoneSelectContainer": "AdvancedDateRangePicker-module__timezoneSelectContainer___8SMc4", "timezoneSelectInput": "AdvancedDateRangePicker-module__timezoneSelectInput___ol0-7", "timezoneDisabledBadge": "AdvancedDateRangePicker-module__timezoneDisabledBadge___VBxOd", "inputWrapper": "AdvancedDateRangePicker-module__inputWrapper___bFFNF", "dateTimeColumn": "AdvancedDateRangePicker-module__dateTimeColumn___tdDV3", "dateTimeGroup": "AdvancedDateRangePicker-module__dateTimeGroup___azF09", "dateInput": "AdvancedDateRangePicker-module__dateInput___0t9ww", "inputError": "AdvancedDateRangePicker-module__inputError___A5hid", "timeInput": "AdvancedDateRangePicker-module__timeInput___Jalr9", "errorMessage": "AdvancedDateRangePicker-module__errorMessage___gx7ag", "body": "AdvancedDateRangePicker-module__body___f8XYj", "footer": "AdvancedDateRangePicker-module__footer___rsJ2w", "doneBtn": "AdvancedDateRangePicker-module__doneBtn___mt-Sv" };
|
|
74
74
|
|
|
75
75
|
// src/atom/AdvancedDateRangePicker/InternalCalendar.tsx
|
|
76
76
|
var import_react = require("react");
|
|
@@ -1218,11 +1218,12 @@ function getPresets() {
|
|
|
1218
1218
|
label: "Previous week",
|
|
1219
1219
|
key: "previous-week",
|
|
1220
1220
|
getRange: () => {
|
|
1221
|
-
const
|
|
1222
|
-
const
|
|
1223
|
-
|
|
1224
|
-
const
|
|
1225
|
-
|
|
1221
|
+
const daysToLastSunday = today.getDay() === 0 ? 7 : today.getDay();
|
|
1222
|
+
const lastSunday = new Date(today);
|
|
1223
|
+
lastSunday.setDate(today.getDate() - daysToLastSunday);
|
|
1224
|
+
const monday = new Date(lastSunday);
|
|
1225
|
+
monday.setDate(lastSunday.getDate() - 6);
|
|
1226
|
+
return [monday, lastSunday];
|
|
1226
1227
|
}
|
|
1227
1228
|
},
|
|
1228
1229
|
{
|
|
@@ -1392,7 +1393,9 @@ function AdvancedDateRangePicker({
|
|
|
1392
1393
|
isTimezoneDisabled = false,
|
|
1393
1394
|
timezoneOptions = [],
|
|
1394
1395
|
defaultPreset = "custom",
|
|
1395
|
-
presets
|
|
1396
|
+
presets,
|
|
1397
|
+
hidePresets = false,
|
|
1398
|
+
hideFooter = false
|
|
1396
1399
|
}) {
|
|
1397
1400
|
var _a, _b, _c;
|
|
1398
1401
|
const PRESETS = (0, import_react4.useMemo)(() => presets || getPresets(), [presets]);
|
|
@@ -1408,6 +1411,7 @@ function AdvancedDateRangePicker({
|
|
|
1408
1411
|
(value == null ? void 0 : value.endTime) ? formatTime(value.endTime) : "12:00 PM"
|
|
1409
1412
|
);
|
|
1410
1413
|
const [activePreset, setActivePreset] = (0, import_react4.useState)(defaultPreset);
|
|
1414
|
+
const lastReportedValue = (0, import_react4.useRef)("");
|
|
1411
1415
|
const isSingle = showSingleCalendar;
|
|
1412
1416
|
const fromDateError = (0, import_react4.useMemo)(() => fromDateStr.length > 0 && (fromDateStr.length < 10 || !validateDateString(fromDateStr)), [fromDateStr]);
|
|
1413
1417
|
const toDateError = (0, import_react4.useMemo)(() => toDateStr.length > 0 && (toDateStr.length < 10 || !validateDateString(toDateStr)), [toDateStr]);
|
|
@@ -1419,27 +1423,44 @@ function AdvancedDateRangePicker({
|
|
|
1419
1423
|
(0, import_react4.useEffect)(() => {
|
|
1420
1424
|
var _a2, _b2, _c2;
|
|
1421
1425
|
if (value) {
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
});
|
|
1436
|
-
setActivePreset(matchedPreset ? matchedPreset.key : "custom");
|
|
1426
|
+
const isSameStart = value.startDate === startDate || value.startDate && startDate && (0, import_dayjs2.default)(value.startDate).isSame((0, import_dayjs2.default)(startDate), "day");
|
|
1427
|
+
const isSameEnd = value.endDate === endDate || value.endDate && endDate && (0, import_dayjs2.default)(value.endDate).isSame((0, import_dayjs2.default)(endDate), "day");
|
|
1428
|
+
const isSameTimezone = value.timezone === timezone;
|
|
1429
|
+
const isSameStartTime = !value.startTime || formatTime(value.startTime) === fromTimeStr;
|
|
1430
|
+
const isSameEndTime = !value.endTime || formatTime(value.endTime) === toTimeStr;
|
|
1431
|
+
const isSamePreset = value.activePreset === activePreset;
|
|
1432
|
+
if (!isSameStart || !isSameEnd || !isSameTimezone || !isSameStartTime || !isSameEndTime || !isSamePreset) {
|
|
1433
|
+
if (!isSameStart) setStartDate((_a2 = value.startDate) != null ? _a2 : null);
|
|
1434
|
+
if (!isSameEnd) setEndDate((_b2 = value.endDate) != null ? _b2 : null);
|
|
1435
|
+
if (!isSameTimezone) setTimezone((_c2 = value.timezone) != null ? _c2 : defaultTimezone);
|
|
1436
|
+
if (value.startTime && !isSameStartTime) setFromTimeStr(formatTime(value.startTime));
|
|
1437
|
+
if (value.endTime && !isSameEndTime) setToTimeStr(formatTime(value.endTime));
|
|
1438
|
+
if (value.activePreset && !isSamePreset) setActivePreset(value.activePreset);
|
|
1437
1439
|
}
|
|
1438
1440
|
}
|
|
1439
1441
|
}, [value, defaultTimezone, PRESETS]);
|
|
1440
1442
|
(0, import_react4.useEffect)(() => {
|
|
1441
1443
|
setFromDateStr(formatForDisplay(startDate));
|
|
1442
1444
|
}, [startDate]);
|
|
1445
|
+
(0, import_react4.useEffect)(() => {
|
|
1446
|
+
var _a2, _b2;
|
|
1447
|
+
if (hideFooter && isReady) {
|
|
1448
|
+
const fromTime = (_a2 = parseTimeInput(fromTimeStr)) != null ? _a2 : DEFAULT_TIME;
|
|
1449
|
+
const toTime = (_b2 = parseTimeInput(toTimeStr)) != null ? _b2 : DEFAULT_TIME;
|
|
1450
|
+
const serialized = `${startDate == null ? void 0 : startDate.toISOString()}_${endDate == null ? void 0 : endDate.toISOString()}_${fromTimeStr}_${toTimeStr}_${timezone}_${activePreset}`;
|
|
1451
|
+
if (serialized !== lastReportedValue.current) {
|
|
1452
|
+
lastReportedValue.current = serialized;
|
|
1453
|
+
onChange == null ? void 0 : onChange({
|
|
1454
|
+
startDate,
|
|
1455
|
+
endDate,
|
|
1456
|
+
startTime: fromTime,
|
|
1457
|
+
endTime: toTime,
|
|
1458
|
+
timezone,
|
|
1459
|
+
activePreset
|
|
1460
|
+
});
|
|
1461
|
+
}
|
|
1462
|
+
}
|
|
1463
|
+
}, [hideFooter, isReady, onChange, startDate, endDate, fromTimeStr, toTimeStr, timezone, activePreset]);
|
|
1443
1464
|
(0, import_react4.useEffect)(() => {
|
|
1444
1465
|
setToDateStr(formatForDisplay(endDate));
|
|
1445
1466
|
}, [endDate]);
|
|
@@ -1527,9 +1548,12 @@ function AdvancedDateRangePicker({
|
|
|
1527
1548
|
activePreset
|
|
1528
1549
|
});
|
|
1529
1550
|
}, [isReady, onChange, startDate, endDate, fromTimeStr, toTimeStr, timezone, activePreset]);
|
|
1530
|
-
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: (0, import_clsx3.default)(AdvancedDateRangePicker_module_default.root, className, {
|
|
1551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: (0, import_clsx3.default)(AdvancedDateRangePicker_module_default.root, className, {
|
|
1552
|
+
[AdvancedDateRangePicker_module_default.singleCalendar]: isSingle,
|
|
1553
|
+
[AdvancedDateRangePicker_module_default.hidePresets]: hidePresets
|
|
1554
|
+
}), id, children: [
|
|
1531
1555
|
/* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: AdvancedDateRangePicker_module_default.inner, children: [
|
|
1532
|
-
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)("aside", { className: AdvancedDateRangePicker_module_default.left, children: PRESETS.map((p) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1556
|
+
!hidePresets && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("aside", { className: AdvancedDateRangePicker_module_default.left, children: PRESETS.map((p) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1533
1557
|
"button",
|
|
1534
1558
|
{
|
|
1535
1559
|
type: "button",
|
|
@@ -1605,7 +1629,7 @@ function AdvancedDateRangePicker({
|
|
|
1605
1629
|
) })
|
|
1606
1630
|
] })
|
|
1607
1631
|
] }),
|
|
1608
|
-
/* @__PURE__ */ (0, import_jsx_runtime10.jsx)("footer", { className: AdvancedDateRangePicker_module_default.footer, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1632
|
+
!hideFooter && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("footer", { className: AdvancedDateRangePicker_module_default.footer, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
1609
1633
|
Button_default,
|
|
1610
1634
|
{
|
|
1611
1635
|
onClick: handleDone,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AdvancedDateRangePicker,
|
|
3
3
|
AdvancedDateRangePicker_default
|
|
4
|
-
} from "../../chunk-
|
|
4
|
+
} from "../../chunk-IPVJEGDI.mjs";
|
|
5
5
|
import "../../chunk-GU5F7Z7I.mjs";
|
|
6
6
|
import "../../chunk-MLCMZRUC.mjs";
|
|
7
7
|
import "../../chunk-FPH63V2R.mjs";
|
|
8
8
|
import "../../chunk-ZTRM4HZJ.mjs";
|
|
9
|
-
import "../../chunk-QKTMWS4J.mjs";
|
|
10
9
|
import "../../chunk-AF2RKLH6.mjs";
|
|
10
|
+
import "../../chunk-QKTMWS4J.mjs";
|
|
11
11
|
import "../../chunk-FWCSY2DS.mjs";
|
|
12
12
|
export {
|
|
13
13
|
AdvancedDateRangePicker,
|