impact-nova 2.5.11 → 2.5.13
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/components/data/data-table/build-column-tree-from-grid.d.ts +1 -0
- package/dist/components/data/data-table/build-column-tree-from-grid.js +55 -50
- package/dist/components/data/data-table/column-picker-authority.d.ts +34 -0
- package/dist/components/data/data-table/column-picker-authority.js +116 -0
- package/dist/components/data/data-table/column-picker-drop-validation.d.ts +7 -0
- package/dist/components/data/data-table/column-picker-drop-validation.js +37 -0
- package/dist/components/data/data-table/data-table-column-apply.d.ts +2 -0
- package/dist/components/data/data-table/data-table-column-apply.js +84 -73
- package/dist/components/data/data-table/data-table-column-list-tree-apply.d.ts +10 -0
- package/dist/components/data/data-table/data-table-column-list-tree-apply.js +79 -0
- package/dist/components/data/data-table/data-table-column-list.js +94 -64
- package/dist/components/data/data-table/data-table-column-tree-cache.d.ts +12 -6
- package/dist/components/data/data-table/data-table-column-tree-cache.js +250 -131
- package/dist/components/data/data-table/data-table-flat-column-virtual-rows.d.ts +26 -0
- package/dist/components/data/data-table/data-table-flat-column-virtual-rows.js +195 -0
- package/dist/components/data/data-table/data-table-picker-column-eligibility.d.ts +1 -0
- package/dist/components/data/data-table/data-table-picker-column-eligibility.js +7 -0
- package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.d.ts +5 -0
- package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.js +28 -11
- package/dist/components/data/data-table/reconcile-column-tree-from-grid.d.ts +12 -0
- package/dist/components/data/data-table/reconcile-column-tree-from-grid.js +12 -0
- package/dist/components/data/data-table/use-data-table-column-list-sync.d.ts +10 -0
- package/dist/components/data/data-table/use-data-table-column-list-sync.js +250 -196
- package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +2 -3
- package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +2 -3
- package/dist/components/data/nested-list/components/NestedListContent.d.ts +10 -2
- package/dist/components/data/nested-list/components/NestedListContent.js +253 -138
- package/dist/components/data/nested-list/components/SortableItem.d.ts +2 -1
- package/dist/components/data/nested-list/components/SortableItem.js +62 -60
- package/dist/components/data/nested-list/hooks/useNestedListDragDrop.d.ts +10 -20
- package/dist/components/data/nested-list/hooks/useNestedListDragDrop.js +44 -233
- package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.d.ts +24 -0
- package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.js +128 -0
- package/dist/components/data/nested-list/nested-list-constants.d.ts +4 -1
- package/dist/components/data/nested-list/nested-list-constants.js +10 -4
- package/dist/components/data/nested-list/nested-list-display-utils.d.ts +11 -0
- package/dist/components/data/nested-list/nested-list-display-utils.js +74 -0
- package/dist/components/data/nested-list/nested-list-drop-engine.d.ts +31 -0
- package/dist/components/data/nested-list/nested-list-drop-engine.js +209 -0
- package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.d.ts +26 -0
- package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.js +67 -0
- package/dist/components/data/nested-list/nested-list-item-tree-mutations.d.ts +4 -0
- package/dist/components/data/nested-list/nested-list-item-tree-mutations.js +43 -0
- package/dist/components/data/nested-list/nested-list-lazy-flat-rows.d.ts +3 -0
- package/dist/components/data/nested-list/nested-list-lazy-flat-rows.js +34 -0
- package/dist/components/data/nested-list/nested-list-row-estimates.d.ts +9 -0
- package/dist/components/data/nested-list/nested-list-row-estimates.js +14 -0
- package/dist/components/data/nested-list/nested-list-scroll-anchor.d.ts +36 -0
- package/dist/components/data/nested-list/nested-list-scroll-anchor.js +47 -0
- package/dist/components/data/nested-list/nested-list-virtual-drop.d.ts +59 -0
- package/dist/components/data/nested-list/nested-list-virtual-drop.js +341 -0
- package/dist/components/data/nested-list/nested-list.js +322 -336
- package/dist/components/data/nested-list/nested-list.types.d.ts +17 -0
- package/dist/components/data-display/calendar/calendar-apply-validation.d.ts +0 -2
- package/dist/components/data-display/calendar/calendar-apply-validation.js +67 -64
- package/dist/components/data-display/calendar/calendar-day-picker-components.d.ts +2 -4
- package/dist/components/data-display/calendar/calendar-day-picker-components.js +152 -163
- package/dist/components/data-display/calendar/calendar-day-picker-view.js +76 -77
- package/dist/components/data-display/calendar/calendar-fiscal-period-nav.d.ts +0 -6
- package/dist/components/data-display/calendar/calendar-fiscal-period-nav.js +18 -34
- package/dist/components/data-display/calendar/calendar-month-utils.d.ts +0 -5
- package/dist/components/data-display/calendar/calendar-month-utils.js +64 -85
- package/dist/components/data-display/calendar/calendar-selection-appearance.d.ts +0 -1
- package/dist/components/data-display/calendar/calendar-selection-appearance.js +30 -31
- package/dist/components/data-display/calendar/calendar-week-number-cell.d.ts +1 -2
- package/dist/components/data-display/calendar/calendar-week-number-cell.js +41 -55
- package/dist/components/data-display/calendar/calendar-year-panes.d.ts +0 -2
- package/dist/components/data-display/calendar/calendar-year-panes.js +1 -3
- package/dist/components/data-display/calendar/calendar.js +143 -146
- package/dist/components/data-display/calendar/calendar.types.d.ts +0 -5
- package/dist/components/data-display/calendar/use-calendar-day-picker-config.d.ts +1 -2
- package/dist/components/data-display/calendar/use-calendar-day-picker-config.js +74 -79
- package/dist/components/data-display/calendar/use-calendar-state.d.ts +1 -3
- package/dist/components/data-display/calendar/use-calendar-state.js +325 -403
- package/dist/components/feedback/tooltip/tab-tooltip-render.js +2 -3
- package/dist/components/flows/command-palette/shortcut-settings.js +10 -10
- package/dist/components/flows/filter-panel/filter-panel.js +4 -4
- package/dist/components/forms/date-picker/date-picker.js +58 -60
- package/dist/components/forms/date-picker/date-picker.types.d.ts +0 -5
- package/dist/components/forms/date-picker/date-range-picker.js +64 -66
- package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +0 -1
- package/dist/components/forms/date-picker/fiscal-pass-through.js +2 -3
- package/dist/components/forms/date-picker/month-picker.js +59 -61
- package/dist/components/forms/date-picker/month-range-picker.js +61 -63
- package/dist/components/forms/date-picker/multi-date-picker.js +49 -51
- package/dist/components/forms/date-picker/multi-month-picker.js +47 -49
- package/dist/components/forms/date-picker/multi-quarter-picker.js +44 -46
- package/dist/components/forms/date-picker/multi-week-picker.js +51 -53
- package/dist/components/forms/date-picker/multi-year-picker.js +46 -48
- package/dist/components/forms/date-picker/quarter-picker.js +44 -46
- package/dist/components/forms/date-picker/quarter-range-picker.js +43 -45
- package/dist/components/forms/date-picker/week-picker.js +66 -68
- package/dist/components/forms/date-picker/week-range-picker.js +80 -82
- package/dist/components/forms/date-picker/year-picker.js +45 -47
- package/dist/components/forms/date-picker/year-range-picker.js +45 -47
- package/dist/components/forms/select/components/SelectTriggerValue.js +2 -3
- package/dist/components/forms/select/components/Submenu.js +2 -3
- package/dist/form-react/Fields/DateInputField.js +50 -51
- package/dist/form-react/Fields/DateRangeField.js +13 -14
- package/dist/form-react/Fields/MonthRangeField.js +28 -29
- package/dist/form-react/Fields/MultiMonthPickerField.js +12 -13
- package/dist/form-react/Fields/MultiWeekPickerField.js +17 -18
- package/dist/form-react/Fields/WeekRangePicker.js +21 -22
- package/dist/form-react/types/fields.types.d.ts +0 -12
- package/dist/impact-nova.css +1 -1
- package/dist/lib/hash/fnv1a128.d.ts +16 -0
- package/dist/lib/hash/fnv1a128.js +21 -0
- package/dist/llms/rules/ag-grid.js +1 -1
- package/package.json +1 -1
- package/dist/components/data-display/calendar/calendar-available-view.d.ts +0 -27
- package/dist/components/data-display/calendar/calendar-available-view.js +0 -85
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as n } from "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { Controller as
|
|
4
|
-
import { DateRangePicker as
|
|
3
|
+
import { Controller as S } from "react-hook-form";
|
|
4
|
+
import { DateRangePicker as g } from "../../components/forms/date-picker/date-range-picker.js";
|
|
5
5
|
import { toLocalDate as a } from "../utils/calendar-boundary.js";
|
|
6
|
-
import { handleMinMaxProp as
|
|
7
|
-
const
|
|
6
|
+
import { handleMinMaxProp as D } from "../utils/date.utils.js";
|
|
7
|
+
const Y = ({
|
|
8
8
|
field: r,
|
|
9
9
|
validationRules: h,
|
|
10
10
|
isDisabled: l,
|
|
@@ -12,18 +12,18 @@ const T = ({
|
|
|
12
12
|
}) => {
|
|
13
13
|
const t = r.fieldType === "date_range" ? r : null;
|
|
14
14
|
if (!t) return null;
|
|
15
|
-
const c = s.form.control, { minDate: m, maxDate: u } =
|
|
15
|
+
const c = s.form.control, { minDate: m, maxDate: u } = D(t);
|
|
16
16
|
return /* @__PURE__ */ n(
|
|
17
|
-
|
|
17
|
+
S,
|
|
18
18
|
{
|
|
19
19
|
name: r.id,
|
|
20
20
|
control: c,
|
|
21
21
|
disabled: l,
|
|
22
22
|
rules: h,
|
|
23
|
-
render: ({ field: p, fieldState:
|
|
24
|
-
const
|
|
23
|
+
render: ({ field: p, fieldState: d }) => {
|
|
24
|
+
const i = !!d.error, e = p.value;
|
|
25
25
|
return /* @__PURE__ */ n("div", { children: /* @__PURE__ */ n(
|
|
26
|
-
|
|
26
|
+
g,
|
|
27
27
|
{
|
|
28
28
|
label: r.label,
|
|
29
29
|
minDate: m,
|
|
@@ -43,15 +43,14 @@ const T = ({
|
|
|
43
43
|
placeholder: r.placeholder,
|
|
44
44
|
required: r.isRequired,
|
|
45
45
|
disabled: l,
|
|
46
|
-
error:
|
|
47
|
-
helperText:
|
|
46
|
+
error: i,
|
|
47
|
+
helperText: i ? d.error?.message : r.helpText,
|
|
48
48
|
showFooter: !0,
|
|
49
49
|
calendarKind: t.calendarKind,
|
|
50
50
|
fiscalMode: t.fiscalMode,
|
|
51
51
|
fiscalYearStartMonth: t.fiscalYearStartMonth,
|
|
52
52
|
fiscalMonthPattern: t.fiscalMonthPattern,
|
|
53
|
-
showPresets: t.showPresets
|
|
54
|
-
autoNavigateToAvailable: t.autoNavigateToAvailable
|
|
53
|
+
showPresets: t.showPresets
|
|
55
54
|
}
|
|
56
55
|
) });
|
|
57
56
|
}
|
|
@@ -59,5 +58,5 @@ const T = ({
|
|
|
59
58
|
);
|
|
60
59
|
};
|
|
61
60
|
export {
|
|
62
|
-
|
|
61
|
+
Y as DateRangeField
|
|
63
62
|
};
|
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
import { jsx as u } from "react/jsx-runtime";
|
|
2
|
-
import { Controller as
|
|
3
|
-
import { MonthRangePicker as
|
|
4
|
-
import { getFieldTestId as
|
|
2
|
+
import { Controller as F } from "react-hook-form";
|
|
3
|
+
import { MonthRangePicker as v } from "../../components/forms/date-picker/month-range-picker.js";
|
|
4
|
+
import { getFieldTestId as P } from "../utils/fieldTestIds.js";
|
|
5
5
|
import { toLocalDate as o } from "../utils/calendar-boundary.js";
|
|
6
|
-
const w = (
|
|
7
|
-
if (
|
|
8
|
-
const [
|
|
9
|
-
return { year: parseInt(
|
|
6
|
+
const w = (r) => {
|
|
7
|
+
if (r.includes("/")) {
|
|
8
|
+
const [a, d] = r.split("/");
|
|
9
|
+
return { year: parseInt(d, 10), month: parseInt(a, 10) - 1 };
|
|
10
10
|
}
|
|
11
|
-
const [s, l] =
|
|
11
|
+
const [s, l] = r.split("-");
|
|
12
12
|
return { year: parseInt(s, 10), month: parseInt(l, 10) - 1 };
|
|
13
13
|
}, O = ({
|
|
14
|
-
field:
|
|
14
|
+
field: r,
|
|
15
15
|
validationRules: s,
|
|
16
16
|
isDisabled: l,
|
|
17
|
-
formHelpers:
|
|
17
|
+
formHelpers: a
|
|
18
18
|
}) => {
|
|
19
|
-
const
|
|
19
|
+
const d = a.form.control, t = r.fieldType === "month_range" ? r : null;
|
|
20
20
|
if (!t) return null;
|
|
21
21
|
const y = t.displayFormat || "MM/YYYY", c = t.minMonthsOffset != null ? new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth() - t.minMonthsOffset, 1) : t.disablePastMonths ? new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1) : o(t.minDate), h = t.maxMonthsOffset != null ? new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth() + t.maxMonthsOffset, 1) : o(t.maxDate);
|
|
22
22
|
return /* @__PURE__ */ u(
|
|
23
|
-
|
|
23
|
+
F,
|
|
24
24
|
{
|
|
25
|
-
name:
|
|
26
|
-
control:
|
|
25
|
+
name: r.id,
|
|
26
|
+
control: d,
|
|
27
27
|
defaultValue: t.defaultRange ? { start: t.defaultRange.start || null, end: t.defaultRange.end || null } : void 0,
|
|
28
28
|
rules: s,
|
|
29
|
-
render: ({ field:
|
|
30
|
-
const f = !!M.error, n =
|
|
31
|
-
return /* @__PURE__ */ u("div", { "data-testid":
|
|
32
|
-
|
|
29
|
+
render: ({ field: i, fieldState: M }) => {
|
|
30
|
+
const f = !!M.error, n = i.value, p = n?.start ? w(n.start) : null, m = n?.end ? w(n.end) : null, Y = p && m;
|
|
31
|
+
return /* @__PURE__ */ u("div", { "data-testid": P(r.id), children: /* @__PURE__ */ u(
|
|
32
|
+
v,
|
|
33
33
|
{
|
|
34
|
-
label:
|
|
34
|
+
label: r.label,
|
|
35
35
|
displayFormat: y,
|
|
36
36
|
...Y && {
|
|
37
37
|
value: {
|
|
@@ -41,32 +41,31 @@ const w = (a) => {
|
|
|
41
41
|
},
|
|
42
42
|
onChange: (e) => {
|
|
43
43
|
if (!e?.from || !e?.to) {
|
|
44
|
-
const
|
|
45
|
-
|
|
44
|
+
const g = { start: null, end: null };
|
|
45
|
+
i.onChange(g), a.setValue(r.id, g);
|
|
46
46
|
return;
|
|
47
47
|
}
|
|
48
|
-
const $ = e.from.start ? `${e.from.start.getFullYear()}-${String(e.from.start.getMonth() + 1).padStart(2, "0")}-${String(e.from.start.getDate()).padStart(2, "0")}` : `${e.from.year}-${String(e.from.month + 1).padStart(2, "0")}-01`, D = e.to.end ? e.to.end.getDate() : new Date(e.to.year, e.to.month + 1, 0).getDate(),
|
|
48
|
+
const $ = e.from.start ? `${e.from.start.getFullYear()}-${String(e.from.start.getMonth() + 1).padStart(2, "0")}-${String(e.from.start.getDate()).padStart(2, "0")}` : `${e.from.year}-${String(e.from.month + 1).padStart(2, "0")}-01`, D = e.to.end ? e.to.end.getDate() : new Date(e.to.year, e.to.month + 1, 0).getDate(), x = e.to.end ? `${e.to.end.getFullYear()}-${String(e.to.end.getMonth() + 1).padStart(2, "0")}-${String(D).padStart(2, "0")}` : `${e.to.year}-${String(e.to.month + 1).padStart(2, "0")}-${String(D).padStart(2, "0")}`, S = {
|
|
49
49
|
start: $,
|
|
50
|
-
end:
|
|
50
|
+
end: x
|
|
51
51
|
};
|
|
52
|
-
|
|
52
|
+
i.onChange(S), a.setValue(r.id, S);
|
|
53
53
|
},
|
|
54
|
-
placeholder:
|
|
54
|
+
placeholder: r.placeholder,
|
|
55
55
|
minDate: c,
|
|
56
56
|
maxDate: h,
|
|
57
57
|
startMonth: c || o(t.startMonth),
|
|
58
58
|
endMonth: h || o(t.endMonth),
|
|
59
|
-
required:
|
|
59
|
+
required: r.isRequired,
|
|
60
60
|
disabled: l,
|
|
61
61
|
error: f,
|
|
62
|
-
helperText: f ? M.error?.message :
|
|
62
|
+
helperText: f ? M.error?.message : r.helpText,
|
|
63
63
|
showFooter: !0,
|
|
64
64
|
calendarKind: t.calendarKind,
|
|
65
65
|
fiscalMode: t.fiscalMode,
|
|
66
66
|
fiscalYearStartMonth: t.fiscalYearStartMonth,
|
|
67
67
|
fiscalMonthPattern: t.fiscalMonthPattern,
|
|
68
|
-
showPresets: t.showPresets
|
|
69
|
-
autoNavigateToAvailable: t.autoNavigateToAvailable
|
|
68
|
+
showPresets: t.showPresets
|
|
70
69
|
}
|
|
71
70
|
) });
|
|
72
71
|
}
|
|
@@ -3,39 +3,38 @@ import { Controller as d } from "react-hook-form";
|
|
|
3
3
|
import { MultiMonthPicker as p } from "../../components/forms/date-picker/multi-month-picker.js";
|
|
4
4
|
import { getFieldTestId as M } from "../utils/fieldTestIds.js";
|
|
5
5
|
import { toLocalDate as t } from "../utils/calendar-boundary.js";
|
|
6
|
-
const
|
|
6
|
+
const b = ({
|
|
7
7
|
field: r,
|
|
8
8
|
validationRules: m,
|
|
9
|
-
isDisabled:
|
|
10
|
-
formHelpers:
|
|
9
|
+
isDisabled: h,
|
|
10
|
+
formHelpers: s
|
|
11
11
|
}) => {
|
|
12
|
-
const
|
|
12
|
+
const u = s.form.control, e = r.fieldType === "multi_month_picker" ? r : null;
|
|
13
13
|
return e ? /* @__PURE__ */ o(
|
|
14
14
|
d,
|
|
15
15
|
{
|
|
16
16
|
name: r.id,
|
|
17
|
-
control:
|
|
17
|
+
control: u,
|
|
18
18
|
rules: m,
|
|
19
|
-
render: ({ field:
|
|
20
|
-
const l = !!
|
|
19
|
+
render: ({ field: n, fieldState: a }) => {
|
|
20
|
+
const l = !!a.error, i = n.value;
|
|
21
21
|
return /* @__PURE__ */ o("div", { "data-testid": M(r.id), children: /* @__PURE__ */ o(
|
|
22
22
|
p,
|
|
23
23
|
{
|
|
24
24
|
label: r.label,
|
|
25
25
|
value: Array.isArray(i) ? i : void 0,
|
|
26
26
|
onChange: (c) => {
|
|
27
|
-
|
|
27
|
+
n.onChange(c ?? []);
|
|
28
28
|
},
|
|
29
29
|
placeholder: r.placeholder,
|
|
30
30
|
required: r.isRequired,
|
|
31
|
-
disabled:
|
|
31
|
+
disabled: h,
|
|
32
32
|
error: l,
|
|
33
|
-
helperText: l ?
|
|
33
|
+
helperText: l ? a.error?.message : r.helpText,
|
|
34
34
|
minDate: t(e.minDate),
|
|
35
35
|
maxDate: t(e.maxDate),
|
|
36
36
|
startMonth: t(e.startMonth),
|
|
37
|
-
endMonth: t(e.endMonth)
|
|
38
|
-
autoNavigateToAvailable: e.autoNavigateToAvailable
|
|
37
|
+
endMonth: t(e.endMonth)
|
|
39
38
|
}
|
|
40
39
|
) });
|
|
41
40
|
}
|
|
@@ -43,5 +42,5 @@ const D = ({
|
|
|
43
42
|
) : null;
|
|
44
43
|
};
|
|
45
44
|
export {
|
|
46
|
-
|
|
45
|
+
b as MultiMonthPickerField
|
|
47
46
|
};
|
|
@@ -1,42 +1,41 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { Controller as p } from "react-hook-form";
|
|
3
3
|
import { MultiWeekPicker as h } from "../../components/forms/date-picker/multi-week-picker.js";
|
|
4
4
|
import { getFieldTestId as k } from "../utils/fieldTestIds.js";
|
|
5
|
-
import { toLocalDate as
|
|
6
|
-
const
|
|
5
|
+
import { toLocalDate as i } from "../utils/calendar-boundary.js";
|
|
6
|
+
const M = ({
|
|
7
7
|
field: e,
|
|
8
8
|
validationRules: m,
|
|
9
9
|
isDisabled: s,
|
|
10
|
-
formHelpers:
|
|
10
|
+
formHelpers: c
|
|
11
11
|
}) => {
|
|
12
|
-
const
|
|
13
|
-
return r ? /* @__PURE__ */
|
|
12
|
+
const d = c.form.control, r = e.fieldType === "multi_week_picker" ? e : null;
|
|
13
|
+
return r ? /* @__PURE__ */ o(
|
|
14
14
|
p,
|
|
15
15
|
{
|
|
16
16
|
name: e.id,
|
|
17
|
-
control:
|
|
17
|
+
control: d,
|
|
18
18
|
rules: m,
|
|
19
|
-
render: ({ field:
|
|
20
|
-
const l = !!
|
|
21
|
-
return /* @__PURE__ */
|
|
19
|
+
render: ({ field: t, fieldState: a }) => {
|
|
20
|
+
const l = !!a.error, n = t.value;
|
|
21
|
+
return /* @__PURE__ */ o("div", { "data-testid": k(e.id), children: /* @__PURE__ */ o(
|
|
22
22
|
h,
|
|
23
23
|
{
|
|
24
24
|
label: e.label,
|
|
25
|
-
value: Array.isArray(
|
|
26
|
-
onChange: (
|
|
27
|
-
|
|
25
|
+
value: Array.isArray(n) ? n : void 0,
|
|
26
|
+
onChange: (u) => {
|
|
27
|
+
t.onChange(u ?? []);
|
|
28
28
|
},
|
|
29
29
|
placeholder: e.placeholder,
|
|
30
30
|
required: e.isRequired,
|
|
31
31
|
disabled: s,
|
|
32
32
|
error: l,
|
|
33
|
-
helperText: l ?
|
|
33
|
+
helperText: l ? a.error?.message : e.helpText,
|
|
34
34
|
calendarKind: r.calendarKind,
|
|
35
35
|
fiscalMode: r.fiscalMode,
|
|
36
36
|
weekStartsOn: r.weekStartsOn,
|
|
37
|
-
minDate:
|
|
38
|
-
maxDate:
|
|
39
|
-
autoNavigateToAvailable: r.autoNavigateToAvailable
|
|
37
|
+
minDate: i(r.minDate),
|
|
38
|
+
maxDate: i(r.maxDate)
|
|
40
39
|
}
|
|
41
40
|
) });
|
|
42
41
|
}
|
|
@@ -44,5 +43,5 @@ const D = ({
|
|
|
44
43
|
) : null;
|
|
45
44
|
};
|
|
46
45
|
export {
|
|
47
|
-
|
|
46
|
+
M as MultiWeekPickerField
|
|
48
47
|
};
|
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
import { jsx as c } from "react/jsx-runtime";
|
|
2
|
-
import { Controller as
|
|
3
|
-
import { WeekRangePicker as
|
|
2
|
+
import { Controller as Y } from "react-hook-form";
|
|
3
|
+
import { WeekRangePicker as $ } from "../../components/forms/date-picker/week-range-picker.js";
|
|
4
4
|
import { toLocalDate as f } from "../utils/calendar-boundary.js";
|
|
5
|
-
import { resolveWeekSelection as
|
|
6
|
-
import { resolveWeekRangeMinMax as
|
|
7
|
-
const S = (e,
|
|
8
|
-
calendarKind:
|
|
9
|
-
fiscalMode:
|
|
10
|
-
granularity:
|
|
11
|
-
fiscalMonthPattern:
|
|
12
|
-
fiscalYearStartMonth:
|
|
13
|
-
weekStartsOn:
|
|
5
|
+
import { resolveWeekSelection as y } from "../../lib/fiscal-calendar/week-selection.js";
|
|
6
|
+
import { resolveWeekRangeMinMax as T } from "../utils/date.utils.js";
|
|
7
|
+
const S = (e, r) => y(e, {
|
|
8
|
+
calendarKind: r.calendarKind,
|
|
9
|
+
fiscalMode: r.fiscalMode ?? "basic",
|
|
10
|
+
granularity: r.granularity,
|
|
11
|
+
fiscalMonthPattern: r.fiscalMonthPattern,
|
|
12
|
+
fiscalYearStartMonth: r.fiscalYearStartMonth ?? 1,
|
|
13
|
+
weekStartsOn: r.weekStartsOn ?? 1
|
|
14
14
|
}), C = ({
|
|
15
15
|
field: e,
|
|
16
|
-
validationRules:
|
|
16
|
+
validationRules: r,
|
|
17
17
|
isDisabled: p,
|
|
18
18
|
formHelpers: d
|
|
19
19
|
}) => {
|
|
20
20
|
const t = e.fieldType === "week_range" ? e : null;
|
|
21
21
|
if (!t) return null;
|
|
22
|
-
const { minDate: u, maxDate: m, startMonth: D, endMonth: k } =
|
|
22
|
+
const { minDate: u, maxDate: m, startMonth: D, endMonth: k } = T(t), w = d.form.control;
|
|
23
23
|
return /* @__PURE__ */ c(
|
|
24
|
-
|
|
24
|
+
Y,
|
|
25
25
|
{
|
|
26
26
|
name: e.id,
|
|
27
|
-
control:
|
|
28
|
-
rules:
|
|
29
|
-
render: ({ field:
|
|
30
|
-
const g = !!h.error,
|
|
27
|
+
control: w,
|
|
28
|
+
rules: r,
|
|
29
|
+
render: ({ field: v, fieldState: h }) => {
|
|
30
|
+
const g = !!h.error, a = v.value, s = a?.start ? f(a.start) ?? null : null, i = a?.end ? f(a.end) ?? null : null, F = !!(s && i);
|
|
31
31
|
return /* @__PURE__ */ c("div", { children: /* @__PURE__ */ c(
|
|
32
|
-
|
|
32
|
+
$,
|
|
33
33
|
{
|
|
34
34
|
label: e.label,
|
|
35
35
|
value: F && s && i ? {
|
|
@@ -37,8 +37,8 @@ const S = (e, a) => Y(e, {
|
|
|
37
37
|
to: S(i, t)
|
|
38
38
|
} : void 0,
|
|
39
39
|
onChange: (o) => {
|
|
40
|
-
const M = o?.from ? { from: o.from, to: o.to ?? o.from } : void 0, n = M?.from?.startDate, l = M?.to?.endDate, P = n ? `${n.getFullYear()}-${String(n.getMonth() + 1).padStart(2, "0")}-${String(n.getDate()).padStart(2, "0")}` : null,
|
|
41
|
-
d.setValue(e.id, { start: P, end:
|
|
40
|
+
const M = o?.from ? { from: o.from, to: o.to ?? o.from } : void 0, n = M?.from?.startDate, l = M?.to?.endDate, P = n ? `${n.getFullYear()}-${String(n.getMonth() + 1).padStart(2, "0")}-${String(n.getDate()).padStart(2, "0")}` : null, x = l ? `${l.getFullYear()}-${String(l.getMonth() + 1).padStart(2, "0")}-${String(l.getDate()).padStart(2, "0")}` : null;
|
|
41
|
+
d.setValue(e.id, { start: P, end: x });
|
|
42
42
|
},
|
|
43
43
|
placeholder: t.placeholder,
|
|
44
44
|
startMonth: u ?? D,
|
|
@@ -57,7 +57,6 @@ const S = (e, a) => Y(e, {
|
|
|
57
57
|
fiscalYearStartMonth: t.fiscalYearStartMonth,
|
|
58
58
|
showFooter: t.showFooter,
|
|
59
59
|
showPeriodBoundaries: t.showPeriodBoundaries,
|
|
60
|
-
autoNavigateToAvailable: t.autoNavigateToAvailable,
|
|
61
60
|
format: t.dateFormat
|
|
62
61
|
}
|
|
63
62
|
) });
|
|
@@ -162,8 +162,6 @@ export type DateInputField = BaseField & {
|
|
|
162
162
|
fiscalYearStartMonth?: number;
|
|
163
163
|
fiscalMonthPattern?: number[];
|
|
164
164
|
showPresets?: boolean;
|
|
165
|
-
/** When true, open on the first enabled day. Navigate only. */
|
|
166
|
-
autoNavigateToAvailable?: boolean;
|
|
167
165
|
};
|
|
168
166
|
export type DateRangeField = BaseField & {
|
|
169
167
|
fieldType: "date_range";
|
|
@@ -194,8 +192,6 @@ export type DateRangeField = BaseField & {
|
|
|
194
192
|
fiscalYearStartMonth?: number;
|
|
195
193
|
fiscalMonthPattern?: number[];
|
|
196
194
|
showPresets?: boolean;
|
|
197
|
-
/** When true, open on the first enabled day. Navigate only. */
|
|
198
|
-
autoNavigateToAvailable?: boolean;
|
|
199
195
|
};
|
|
200
196
|
export type WeekRangeField = BaseField & {
|
|
201
197
|
fieldType: "week_range";
|
|
@@ -228,8 +224,6 @@ export type WeekRangeField = BaseField & {
|
|
|
228
224
|
/** Latest week: week end of the week N weeks after the current week. */
|
|
229
225
|
maxWeeksOffset?: number;
|
|
230
226
|
dateFormat?: string;
|
|
231
|
-
/** When true, open on the first enabled week. Navigate only. */
|
|
232
|
-
autoNavigateToAvailable?: boolean;
|
|
233
227
|
};
|
|
234
228
|
export type MultiWeekRangeField = BaseField & {
|
|
235
229
|
fieldType: "multi_week_picker";
|
|
@@ -240,8 +234,6 @@ export type MultiWeekRangeField = BaseField & {
|
|
|
240
234
|
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
241
235
|
granularity?: "day" | "week" | "period" | "quarter" | "year";
|
|
242
236
|
fiscalMonthPattern?: number[];
|
|
243
|
-
/** When true, open on the first enabled week. Navigate only. */
|
|
244
|
-
autoNavigateToAvailable?: boolean;
|
|
245
237
|
};
|
|
246
238
|
export type MonthRangeField = BaseField & {
|
|
247
239
|
fieldType: "month_range";
|
|
@@ -270,8 +262,6 @@ export type MonthRangeField = BaseField & {
|
|
|
270
262
|
fiscalYearStartMonth?: number;
|
|
271
263
|
fiscalMonthPattern?: number[];
|
|
272
264
|
showPresets?: boolean;
|
|
273
|
-
/** When true, open on the first enabled month. Navigate only. */
|
|
274
|
-
autoNavigateToAvailable?: boolean;
|
|
275
265
|
};
|
|
276
266
|
export type MultiMonthPickerField = BaseField & {
|
|
277
267
|
fieldType: "multi_month_picker";
|
|
@@ -279,8 +269,6 @@ export type MultiMonthPickerField = BaseField & {
|
|
|
279
269
|
maxDate?: string;
|
|
280
270
|
startMonth?: string;
|
|
281
271
|
endMonth?: string;
|
|
282
|
-
/** When true, open on the first enabled month. Navigate only. */
|
|
283
|
-
autoNavigateToAvailable?: boolean;
|
|
284
272
|
};
|
|
285
273
|
export type TextAreaField = BaseField & {
|
|
286
274
|
fieldType: "text_area";
|