impact-nova 2.5.9 → 2.5.11

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.
Files changed (73) hide show
  1. package/dist/components/data/data-table/column-runtime-state-guard.js +42 -42
  2. package/dist/components/data/data-table/data-table-column-tree-cache.d.ts +15 -0
  3. package/dist/components/data/data-table/data-table-column-tree-cache.js +109 -80
  4. package/dist/components/data/data-table/use-data-table-column-list-sync.js +65 -62
  5. package/dist/components/data-display/calendar/calendar-apply-validation.d.ts +2 -0
  6. package/dist/components/data-display/calendar/calendar-apply-validation.js +64 -67
  7. package/dist/components/data-display/calendar/calendar-available-view.d.ts +27 -0
  8. package/dist/components/data-display/calendar/calendar-available-view.js +85 -0
  9. package/dist/components/data-display/calendar/calendar-day-picker-classnames.d.ts +6 -1
  10. package/dist/components/data-display/calendar/calendar-day-picker-classnames.js +31 -23
  11. package/dist/components/data-display/calendar/calendar-day-picker-components.d.ts +5 -2
  12. package/dist/components/data-display/calendar/calendar-day-picker-components.js +210 -167
  13. package/dist/components/data-display/calendar/calendar-day-picker-view.d.ts +3 -2
  14. package/dist/components/data-display/calendar/calendar-day-picker-view.js +126 -124
  15. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.d.ts +6 -0
  16. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.js +34 -18
  17. package/dist/components/data-display/calendar/calendar-month-utils.d.ts +5 -0
  18. package/dist/components/data-display/calendar/calendar-month-utils.js +85 -64
  19. package/dist/components/data-display/calendar/calendar-padding-week.utils.d.ts +5 -1
  20. package/dist/components/data-display/calendar/calendar-padding-week.utils.js +20 -16
  21. package/dist/components/data-display/calendar/calendar-selection-appearance.d.ts +1 -0
  22. package/dist/components/data-display/calendar/calendar-selection-appearance.js +31 -30
  23. package/dist/components/data-display/calendar/calendar-week-number-cell.d.ts +3 -1
  24. package/dist/components/data-display/calendar/calendar-week-number-cell.js +68 -53
  25. package/dist/components/data-display/calendar/calendar-week-utils.d.ts +6 -0
  26. package/dist/components/data-display/calendar/calendar-week-utils.js +51 -47
  27. package/dist/components/data-display/calendar/calendar-year-panes.d.ts +2 -0
  28. package/dist/components/data-display/calendar/calendar-year-panes.js +3 -1
  29. package/dist/components/data-display/calendar/calendar.js +170 -165
  30. package/dist/components/data-display/calendar/calendar.types.d.ts +7 -0
  31. package/dist/components/data-display/calendar/use-calendar-day-picker-config.d.ts +5 -2
  32. package/dist/components/data-display/calendar/use-calendar-day-picker-config.js +86 -76
  33. package/dist/components/data-display/calendar/use-calendar-state.d.ts +3 -1
  34. package/dist/components/data-display/calendar/use-calendar-state.js +403 -325
  35. package/dist/components/feedback/dialog/dialog.js +12 -12
  36. package/dist/components/feedback/sheet/sheet.js +22 -22
  37. package/dist/components/forms/date-picker/calendar-selection-adapters.d.ts +2 -0
  38. package/dist/components/forms/date-picker/calendar-selection-adapters.js +36 -31
  39. package/dist/components/forms/date-picker/date-input-behavior.d.ts +10 -0
  40. package/dist/components/forms/date-picker/date-input-behavior.js +111 -90
  41. package/dist/components/forms/date-picker/date-picker.js +74 -70
  42. package/dist/components/forms/date-picker/date-picker.types.d.ts +7 -0
  43. package/dist/components/forms/date-picker/date-range-picker.js +148 -144
  44. package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +2 -0
  45. package/dist/components/forms/date-picker/fiscal-pass-through.js +4 -2
  46. package/dist/components/forms/date-picker/month-picker.js +84 -80
  47. package/dist/components/forms/date-picker/month-range-picker.js +147 -143
  48. package/dist/components/forms/date-picker/multi-date-picker.js +53 -49
  49. package/dist/components/forms/date-picker/multi-month-picker.js +51 -47
  50. package/dist/components/forms/date-picker/multi-quarter-picker.js +48 -44
  51. package/dist/components/forms/date-picker/multi-week-picker.js +55 -51
  52. package/dist/components/forms/date-picker/multi-year-picker.js +50 -46
  53. package/dist/components/forms/date-picker/picker-story-layout.d.ts +2 -0
  54. package/dist/components/forms/date-picker/quarter-picker.js +48 -44
  55. package/dist/components/forms/date-picker/quarter-range-picker.js +47 -43
  56. package/dist/components/forms/date-picker/week-picker.js +86 -82
  57. package/dist/components/forms/date-picker/week-range-picker.js +171 -164
  58. package/dist/components/forms/date-picker/year-picker.js +49 -45
  59. package/dist/components/forms/date-picker/year-range-picker.js +49 -45
  60. package/dist/components/forms/select/components/SelectMenuPanel.js +3 -2
  61. package/dist/components/forms/select/select.js +1 -0
  62. package/dist/form-react/Fields/DateInputField.js +51 -50
  63. package/dist/form-react/Fields/DateRangeField.js +14 -13
  64. package/dist/form-react/Fields/MonthRangeField.js +29 -28
  65. package/dist/form-react/Fields/MultiMonthPickerField.js +13 -12
  66. package/dist/form-react/Fields/MultiWeekPickerField.js +18 -17
  67. package/dist/form-react/Fields/WeekRangePicker.js +48 -48
  68. package/dist/form-react/types/fields.types.d.ts +14 -0
  69. package/dist/impact-nova.css +1 -1
  70. package/dist/lib/overlay/overlay-portal-context.js +16 -16
  71. package/dist/llms/rules/installation.js +1 -1
  72. package/dist/llms/rules/requirements.js +1 -1
  73. package/package.json +1 -1
@@ -1,10 +1,10 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
2
  import "react";
3
- import { Controller as S } from "react-hook-form";
4
- import { DateRangePicker as g } from "../../components/forms/date-picker/date-range-picker.js";
3
+ import { Controller as g } from "react-hook-form";
4
+ import { DateRangePicker as v } from "../../components/forms/date-picker/date-range-picker.js";
5
5
  import { toLocalDate as a } from "../utils/calendar-boundary.js";
6
- import { handleMinMaxProp as D } from "../utils/date.utils.js";
7
- const Y = ({
6
+ import { handleMinMaxProp as S } from "../utils/date.utils.js";
7
+ const T = ({
8
8
  field: r,
9
9
  validationRules: h,
10
10
  isDisabled: l,
@@ -12,18 +12,18 @@ const Y = ({
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 } = D(t);
15
+ const c = s.form.control, { minDate: m, maxDate: u } = S(t);
16
16
  return /* @__PURE__ */ n(
17
- S,
17
+ g,
18
18
  {
19
19
  name: r.id,
20
20
  control: c,
21
21
  disabled: l,
22
22
  rules: h,
23
- render: ({ field: p, fieldState: d }) => {
24
- const i = !!d.error, e = p.value;
23
+ render: ({ field: p, fieldState: i }) => {
24
+ const d = !!i.error, e = p.value;
25
25
  return /* @__PURE__ */ n("div", { children: /* @__PURE__ */ n(
26
- g,
26
+ v,
27
27
  {
28
28
  label: r.label,
29
29
  minDate: m,
@@ -43,14 +43,15 @@ const Y = ({
43
43
  placeholder: r.placeholder,
44
44
  required: r.isRequired,
45
45
  disabled: l,
46
- error: i,
47
- helperText: i ? d.error?.message : r.helpText,
46
+ error: d,
47
+ helperText: d ? i.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
53
+ showPresets: t.showPresets,
54
+ autoNavigateToAvailable: t.autoNavigateToAvailable
54
55
  }
55
56
  ) });
56
57
  }
@@ -58,5 +59,5 @@ const Y = ({
58
59
  );
59
60
  };
60
61
  export {
61
- Y as DateRangeField
62
+ T as DateRangeField
62
63
  };
@@ -1,37 +1,37 @@
1
1
  import { jsx as u } from "react/jsx-runtime";
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";
2
+ import { Controller as x } from "react-hook-form";
3
+ import { MonthRangePicker as F } from "../../components/forms/date-picker/month-range-picker.js";
4
+ import { getFieldTestId as T } from "../utils/fieldTestIds.js";
5
5
  import { toLocalDate as o } from "../utils/calendar-boundary.js";
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 };
6
+ const w = (a) => {
7
+ if (a.includes("/")) {
8
+ const [r, i] = a.split("/");
9
+ return { year: parseInt(i, 10), month: parseInt(r, 10) - 1 };
10
10
  }
11
- const [s, l] = r.split("-");
11
+ const [s, l] = a.split("-");
12
12
  return { year: parseInt(s, 10), month: parseInt(l, 10) - 1 };
13
13
  }, O = ({
14
- field: r,
14
+ field: a,
15
15
  validationRules: s,
16
16
  isDisabled: l,
17
- formHelpers: a
17
+ formHelpers: r
18
18
  }) => {
19
- const d = a.form.control, t = r.fieldType === "month_range" ? r : null;
19
+ const i = r.form.control, t = a.fieldType === "month_range" ? a : 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
- F,
23
+ x,
24
24
  {
25
- name: r.id,
26
- control: d,
25
+ name: a.id,
26
+ control: i,
27
27
  defaultValue: t.defaultRange ? { start: t.defaultRange.start || null, end: t.defaultRange.end || null } : void 0,
28
28
  rules: s,
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,
29
+ render: ({ field: d, fieldState: M }) => {
30
+ const f = !!M.error, n = d.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": T(a.id), children: /* @__PURE__ */ u(
32
+ F,
33
33
  {
34
- label: r.label,
34
+ label: a.label,
35
35
  displayFormat: y,
36
36
  ...Y && {
37
37
  value: {
@@ -41,31 +41,32 @@ const w = (r) => {
41
41
  },
42
42
  onChange: (e) => {
43
43
  if (!e?.from || !e?.to) {
44
- const g = { start: null, end: null };
45
- i.onChange(g), a.setValue(r.id, g);
44
+ const S = { start: null, end: null };
45
+ d.onChange(S), r.setValue(a.id, S);
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(), 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 = {
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(), v = 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")}`, g = {
49
49
  start: $,
50
- end: x
50
+ end: v
51
51
  };
52
- i.onChange(S), a.setValue(r.id, S);
52
+ d.onChange(g), r.setValue(a.id, g);
53
53
  },
54
- placeholder: r.placeholder,
54
+ placeholder: a.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: r.isRequired,
59
+ required: a.isRequired,
60
60
  disabled: l,
61
61
  error: f,
62
- helperText: f ? M.error?.message : r.helpText,
62
+ helperText: f ? M.error?.message : a.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
68
+ showPresets: t.showPresets,
69
+ autoNavigateToAvailable: t.autoNavigateToAvailable
69
70
  }
70
71
  ) });
71
72
  }
@@ -3,38 +3,39 @@ 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 b = ({
6
+ const D = ({
7
7
  field: r,
8
8
  validationRules: m,
9
- isDisabled: h,
10
- formHelpers: s
9
+ isDisabled: u,
10
+ formHelpers: h
11
11
  }) => {
12
- const u = s.form.control, e = r.fieldType === "multi_month_picker" ? r : null;
12
+ const s = h.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: u,
17
+ control: s,
18
18
  rules: m,
19
- render: ({ field: n, fieldState: a }) => {
20
- const l = !!a.error, i = n.value;
19
+ render: ({ field: a, fieldState: n }) => {
20
+ const l = !!n.error, i = a.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
- n.onChange(c ?? []);
27
+ a.onChange(c ?? []);
28
28
  },
29
29
  placeholder: r.placeholder,
30
30
  required: r.isRequired,
31
- disabled: h,
31
+ disabled: u,
32
32
  error: l,
33
- helperText: l ? a.error?.message : r.helpText,
33
+ helperText: l ? n.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)
37
+ endMonth: t(e.endMonth),
38
+ autoNavigateToAvailable: e.autoNavigateToAvailable
38
39
  }
39
40
  ) });
40
41
  }
@@ -42,5 +43,5 @@ const b = ({
42
43
  ) : null;
43
44
  };
44
45
  export {
45
- b as MultiMonthPickerField
46
+ D as MultiMonthPickerField
46
47
  };
@@ -1,41 +1,42 @@
1
- import { jsx as o } from "react/jsx-runtime";
1
+ import { jsx as a } 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 i } from "../utils/calendar-boundary.js";
6
- const M = ({
5
+ import { toLocalDate as n } from "../utils/calendar-boundary.js";
6
+ const D = ({
7
7
  field: e,
8
8
  validationRules: m,
9
9
  isDisabled: s,
10
- formHelpers: c
10
+ formHelpers: u
11
11
  }) => {
12
- const d = c.form.control, r = e.fieldType === "multi_week_picker" ? e : null;
13
- return r ? /* @__PURE__ */ o(
12
+ const c = u.form.control, r = e.fieldType === "multi_week_picker" ? e : null;
13
+ return r ? /* @__PURE__ */ a(
14
14
  p,
15
15
  {
16
16
  name: e.id,
17
- control: d,
17
+ control: c,
18
18
  rules: m,
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(
19
+ render: ({ field: o, fieldState: t }) => {
20
+ const l = !!t.error, i = o.value;
21
+ return /* @__PURE__ */ a("div", { "data-testid": k(e.id), children: /* @__PURE__ */ a(
22
22
  h,
23
23
  {
24
24
  label: e.label,
25
- value: Array.isArray(n) ? n : void 0,
26
- onChange: (u) => {
27
- t.onChange(u ?? []);
25
+ value: Array.isArray(i) ? i : void 0,
26
+ onChange: (d) => {
27
+ o.onChange(d ?? []);
28
28
  },
29
29
  placeholder: e.placeholder,
30
30
  required: e.isRequired,
31
31
  disabled: s,
32
32
  error: l,
33
- helperText: l ? a.error?.message : e.helpText,
33
+ helperText: l ? t.error?.message : e.helpText,
34
34
  calendarKind: r.calendarKind,
35
35
  fiscalMode: r.fiscalMode,
36
36
  weekStartsOn: r.weekStartsOn,
37
- minDate: i(r.minDate),
38
- maxDate: i(r.maxDate)
37
+ minDate: n(r.minDate),
38
+ maxDate: n(r.maxDate),
39
+ autoNavigateToAvailable: r.autoNavigateToAvailable
39
40
  }
40
41
  ) });
41
42
  }
@@ -43,5 +44,5 @@ const M = ({
43
44
  ) : null;
44
45
  };
45
46
  export {
46
- M as MultiWeekPickerField
47
+ D as MultiWeekPickerField
47
48
  };
@@ -1,63 +1,63 @@
1
- import { jsx as n } from "react/jsx-runtime";
2
- import { Controller as x } from "react-hook-form";
3
- import { WeekRangePicker as Y } from "../../components/forms/date-picker/week-range-picker.js";
4
- import { toLocalDate as u } from "../utils/calendar-boundary.js";
5
- import { resolveWeekSelection as $ } from "../../lib/fiscal-calendar/week-selection.js";
6
- import { resolveWeekRangeMinMax as v } from "../utils/date.utils.js";
7
- const M = (r, e) => $(r, {
8
- calendarKind: e.calendarKind,
9
- fiscalMode: e.fiscalMode ?? "basic",
10
- granularity: e.granularity,
11
- fiscalMonthPattern: e.fiscalMonthPattern,
12
- fiscalYearStartMonth: e.fiscalYearStartMonth ?? 1,
13
- weekStartsOn: e.weekStartsOn ?? 1
14
- }), T = ({
15
- field: r,
16
- validationRules: e,
17
- isDisabled: D,
18
- formHelpers: l
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { Controller as b } from "react-hook-form";
3
+ import { WeekRangePicker as x } from "../../components/forms/date-picker/week-range-picker.js";
4
+ import { toLocalDate as f } from "../utils/calendar-boundary.js";
5
+ import { resolveWeekSelection as Y } from "../../lib/fiscal-calendar/week-selection.js";
6
+ import { resolveWeekRangeMinMax as $ } from "../utils/date.utils.js";
7
+ const S = (e, a) => Y(e, {
8
+ calendarKind: a.calendarKind,
9
+ fiscalMode: a.fiscalMode ?? "basic",
10
+ granularity: a.granularity,
11
+ fiscalMonthPattern: a.fiscalMonthPattern,
12
+ fiscalYearStartMonth: a.fiscalYearStartMonth ?? 1,
13
+ weekStartsOn: a.weekStartsOn ?? 1
14
+ }), C = ({
15
+ field: e,
16
+ validationRules: a,
17
+ isDisabled: p,
18
+ formHelpers: d
19
19
  }) => {
20
- const t = r.fieldType === "week_range" ? r : null;
20
+ const t = e.fieldType === "week_range" ? e : null;
21
21
  if (!t) return null;
22
- const { minDate: s, maxDate: c, startMonth: S, endMonth: f } = v(t), g = l.form.control;
23
- return /* @__PURE__ */ n(
24
- x,
22
+ const { minDate: u, maxDate: m, startMonth: D, endMonth: k } = $(t), v = d.form.control;
23
+ return /* @__PURE__ */ c(
24
+ b,
25
25
  {
26
- name: r.id,
27
- control: g,
28
- rules: e,
29
- render: ({ field: p, fieldState: i }) => {
30
- const d = !!i.error, o = p.value, h = o?.start ? u(o.start) ?? null : null, m = o?.end ? u(o.end) ?? null : null, k = h && m;
31
- return /* @__PURE__ */ n("div", { children: /* @__PURE__ */ n(
32
- Y,
26
+ name: e.id,
27
+ control: v,
28
+ rules: a,
29
+ render: ({ field: w, fieldState: h }) => {
30
+ const g = !!h.error, r = w.value, s = r?.start ? f(r.start) ?? null : null, i = r?.end ? f(r.end) ?? null : null, F = !!(s && i);
31
+ return /* @__PURE__ */ c("div", { children: /* @__PURE__ */ c(
32
+ x,
33
33
  {
34
- label: r.label,
35
- ...k && {
36
- value: {
37
- from: M(h, t),
38
- to: M(m, t)
39
- }
40
- },
41
- onChange: (a) => {
42
- const w = a?.from?.startDate ? `${a.from.startDate.getFullYear()}-${String(a.from.startDate.getMonth() + 1).padStart(2, "0")}-${String(a.from.startDate.getDate()).padStart(2, "0")}` : null, F = a?.to?.endDate ? `${a.to.endDate.getFullYear()}-${String(a.to.endDate.getMonth() + 1).padStart(2, "0")}-${String(a.to.endDate.getDate()).padStart(2, "0")}` : null;
43
- l.setValue(r.id, { start: w, end: F });
34
+ label: e.label,
35
+ value: F && s && i ? {
36
+ from: S(s, t),
37
+ to: S(i, t)
38
+ } : void 0,
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, T = 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: T });
44
42
  },
45
43
  placeholder: t.placeholder,
46
- startMonth: s ?? S,
47
- endMonth: c ?? f,
48
- required: r.isRequired,
49
- disabled: D,
50
- error: d,
51
- helperText: d ? i.error?.message : r.helpText,
44
+ startMonth: u ?? D,
45
+ endMonth: m ?? k,
46
+ required: e.isRequired,
47
+ disabled: p,
48
+ error: g,
49
+ helperText: g ? h.error?.message : e.helpText,
52
50
  calendarKind: t.calendarKind,
53
51
  fiscalMode: t.fiscalMode,
54
52
  weekStartsOn: t.weekStartsOn,
55
- minDate: s,
56
- maxDate: c,
53
+ minDate: u,
54
+ maxDate: m,
57
55
  granularity: t.granularity,
58
56
  fiscalMonthPattern: t.fiscalMonthPattern,
59
57
  fiscalYearStartMonth: t.fiscalYearStartMonth,
60
58
  showFooter: t.showFooter,
59
+ showPeriodBoundaries: t.showPeriodBoundaries,
60
+ autoNavigateToAvailable: t.autoNavigateToAvailable,
61
61
  format: t.dateFormat
62
62
  }
63
63
  ) });
@@ -66,5 +66,5 @@ const M = (r, e) => $(r, {
66
66
  );
67
67
  };
68
68
  export {
69
- T as WeekRangeField
69
+ C as WeekRangeField
70
70
  };
@@ -162,6 +162,8 @@ 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;
165
167
  };
166
168
  export type DateRangeField = BaseField & {
167
169
  fieldType: "date_range";
@@ -192,6 +194,8 @@ export type DateRangeField = BaseField & {
192
194
  fiscalYearStartMonth?: number;
193
195
  fiscalMonthPattern?: number[];
194
196
  showPresets?: boolean;
197
+ /** When true, open on the first enabled day. Navigate only. */
198
+ autoNavigateToAvailable?: boolean;
195
199
  };
196
200
  export type WeekRangeField = BaseField & {
197
201
  fieldType: "week_range";
@@ -216,12 +220,16 @@ export type WeekRangeField = BaseField & {
216
220
  fiscalMonthPattern?: number[];
217
221
  fiscalYearStartMonth?: number;
218
222
  showFooter?: boolean;
223
+ /** Draw `(` / `)` on fiscal period start/end days. Default false. */
224
+ showPeriodBoundaries?: boolean;
219
225
  format?: string;
220
226
  /** Earliest week: week start of the week N weeks before the current week (0 = current week). */
221
227
  minWeeksOffset?: number;
222
228
  /** Latest week: week end of the week N weeks after the current week. */
223
229
  maxWeeksOffset?: number;
224
230
  dateFormat?: string;
231
+ /** When true, open on the first enabled week. Navigate only. */
232
+ autoNavigateToAvailable?: boolean;
225
233
  };
226
234
  export type MultiWeekRangeField = BaseField & {
227
235
  fieldType: "multi_week_picker";
@@ -232,6 +240,8 @@ export type MultiWeekRangeField = BaseField & {
232
240
  weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
233
241
  granularity?: "day" | "week" | "period" | "quarter" | "year";
234
242
  fiscalMonthPattern?: number[];
243
+ /** When true, open on the first enabled week. Navigate only. */
244
+ autoNavigateToAvailable?: boolean;
235
245
  };
236
246
  export type MonthRangeField = BaseField & {
237
247
  fieldType: "month_range";
@@ -260,6 +270,8 @@ export type MonthRangeField = BaseField & {
260
270
  fiscalYearStartMonth?: number;
261
271
  fiscalMonthPattern?: number[];
262
272
  showPresets?: boolean;
273
+ /** When true, open on the first enabled month. Navigate only. */
274
+ autoNavigateToAvailable?: boolean;
263
275
  };
264
276
  export type MultiMonthPickerField = BaseField & {
265
277
  fieldType: "multi_month_picker";
@@ -267,6 +279,8 @@ export type MultiMonthPickerField = BaseField & {
267
279
  maxDate?: string;
268
280
  startMonth?: string;
269
281
  endMonth?: string;
282
+ /** When true, open on the first enabled month. Navigate only. */
283
+ autoNavigateToAvailable?: boolean;
270
284
  };
271
285
  export type TextAreaField = BaseField & {
272
286
  fieldType: "text_area";