impact-nova 2.5.10 → 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 (59) hide show
  1. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +3 -2
  2. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +3 -2
  3. package/dist/components/data-display/calendar/calendar-apply-validation.d.ts +2 -0
  4. package/dist/components/data-display/calendar/calendar-apply-validation.js +64 -67
  5. package/dist/components/data-display/calendar/calendar-available-view.d.ts +27 -0
  6. package/dist/components/data-display/calendar/calendar-available-view.js +85 -0
  7. package/dist/components/data-display/calendar/calendar-day-picker-components.d.ts +4 -2
  8. package/dist/components/data-display/calendar/calendar-day-picker-components.js +163 -152
  9. package/dist/components/data-display/calendar/calendar-day-picker-view.js +77 -76
  10. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.d.ts +6 -0
  11. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.js +34 -18
  12. package/dist/components/data-display/calendar/calendar-month-utils.d.ts +5 -0
  13. package/dist/components/data-display/calendar/calendar-month-utils.js +85 -64
  14. package/dist/components/data-display/calendar/calendar-selection-appearance.d.ts +1 -0
  15. package/dist/components/data-display/calendar/calendar-selection-appearance.js +31 -30
  16. package/dist/components/data-display/calendar/calendar-week-number-cell.d.ts +2 -1
  17. package/dist/components/data-display/calendar/calendar-week-number-cell.js +55 -41
  18. package/dist/components/data-display/calendar/calendar-year-panes.d.ts +2 -0
  19. package/dist/components/data-display/calendar/calendar-year-panes.js +3 -1
  20. package/dist/components/data-display/calendar/calendar.js +146 -143
  21. package/dist/components/data-display/calendar/calendar.types.d.ts +5 -0
  22. package/dist/components/data-display/calendar/use-calendar-day-picker-config.d.ts +2 -1
  23. package/dist/components/data-display/calendar/use-calendar-day-picker-config.js +79 -74
  24. package/dist/components/data-display/calendar/use-calendar-state.d.ts +3 -1
  25. package/dist/components/data-display/calendar/use-calendar-state.js +403 -325
  26. package/dist/components/feedback/tooltip/tab-tooltip-render.js +3 -2
  27. package/dist/components/flows/command-palette/shortcut-settings.js +10 -10
  28. package/dist/components/flows/filter-panel/filter-panel.js +4 -4
  29. package/dist/components/forms/date-picker/date-picker.js +60 -58
  30. package/dist/components/forms/date-picker/date-picker.types.d.ts +5 -0
  31. package/dist/components/forms/date-picker/date-range-picker.js +66 -64
  32. package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +1 -0
  33. package/dist/components/forms/date-picker/fiscal-pass-through.js +3 -2
  34. package/dist/components/forms/date-picker/month-picker.js +61 -59
  35. package/dist/components/forms/date-picker/month-range-picker.js +63 -61
  36. package/dist/components/forms/date-picker/multi-date-picker.js +51 -49
  37. package/dist/components/forms/date-picker/multi-month-picker.js +49 -47
  38. package/dist/components/forms/date-picker/multi-quarter-picker.js +46 -44
  39. package/dist/components/forms/date-picker/multi-week-picker.js +53 -51
  40. package/dist/components/forms/date-picker/multi-year-picker.js +48 -46
  41. package/dist/components/forms/date-picker/quarter-picker.js +46 -44
  42. package/dist/components/forms/date-picker/quarter-range-picker.js +45 -43
  43. package/dist/components/forms/date-picker/week-picker.js +68 -66
  44. package/dist/components/forms/date-picker/week-range-picker.js +82 -80
  45. package/dist/components/forms/date-picker/year-picker.js +47 -45
  46. package/dist/components/forms/date-picker/year-range-picker.js +47 -45
  47. package/dist/components/forms/select/components/SelectTriggerValue.js +3 -2
  48. package/dist/components/forms/select/components/Submenu.js +3 -2
  49. package/dist/form-react/Fields/DateInputField.js +51 -50
  50. package/dist/form-react/Fields/DateRangeField.js +14 -13
  51. package/dist/form-react/Fields/MonthRangeField.js +29 -28
  52. package/dist/form-react/Fields/MultiMonthPickerField.js +13 -12
  53. package/dist/form-react/Fields/MultiWeekPickerField.js +18 -17
  54. package/dist/form-react/Fields/WeekRangePicker.js +22 -21
  55. package/dist/form-react/types/fields.types.d.ts +12 -0
  56. package/dist/impact-nova.css +1 -1
  57. package/dist/llms/rules/installation.js +1 -1
  58. package/dist/llms/rules/requirements.js +1 -1
  59. 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,35 +1,35 @@
1
1
  import { jsx as c } from "react/jsx-runtime";
2
- import { Controller as Y } from "react-hook-form";
3
- import { WeekRangePicker as $ } from "../../components/forms/date-picker/week-range-picker.js";
2
+ import { Controller as b } from "react-hook-form";
3
+ import { WeekRangePicker as x } from "../../components/forms/date-picker/week-range-picker.js";
4
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 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
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
14
  }), C = ({
15
15
  field: e,
16
- validationRules: r,
16
+ validationRules: a,
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 } = T(t), w = d.form.control;
22
+ const { minDate: u, maxDate: m, startMonth: D, endMonth: k } = $(t), v = d.form.control;
23
23
  return /* @__PURE__ */ c(
24
- Y,
24
+ b,
25
25
  {
26
26
  name: e.id,
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);
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
31
  return /* @__PURE__ */ c("div", { children: /* @__PURE__ */ c(
32
- $,
32
+ x,
33
33
  {
34
34
  label: e.label,
35
35
  value: F && s && i ? {
@@ -37,8 +37,8 @@ const S = (e, r) => 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, 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 });
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 });
42
42
  },
43
43
  placeholder: t.placeholder,
44
44
  startMonth: u ?? D,
@@ -57,6 +57,7 @@ const S = (e, r) => y(e, {
57
57
  fiscalYearStartMonth: t.fiscalYearStartMonth,
58
58
  showFooter: t.showFooter,
59
59
  showPeriodBoundaries: t.showPeriodBoundaries,
60
+ autoNavigateToAvailable: t.autoNavigateToAvailable,
60
61
  format: t.dateFormat
61
62
  }
62
63
  ) });
@@ -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";
@@ -224,6 +228,8 @@ export type WeekRangeField = BaseField & {
224
228
  /** Latest week: week end of the week N weeks after the current week. */
225
229
  maxWeeksOffset?: number;
226
230
  dateFormat?: string;
231
+ /** When true, open on the first enabled week. Navigate only. */
232
+ autoNavigateToAvailable?: boolean;
227
233
  };
228
234
  export type MultiWeekRangeField = BaseField & {
229
235
  fieldType: "multi_week_picker";
@@ -234,6 +240,8 @@ export type MultiWeekRangeField = BaseField & {
234
240
  weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
235
241
  granularity?: "day" | "week" | "period" | "quarter" | "year";
236
242
  fiscalMonthPattern?: number[];
243
+ /** When true, open on the first enabled week. Navigate only. */
244
+ autoNavigateToAvailable?: boolean;
237
245
  };
238
246
  export type MonthRangeField = BaseField & {
239
247
  fieldType: "month_range";
@@ -262,6 +270,8 @@ export type MonthRangeField = BaseField & {
262
270
  fiscalYearStartMonth?: number;
263
271
  fiscalMonthPattern?: number[];
264
272
  showPresets?: boolean;
273
+ /** When true, open on the first enabled month. Navigate only. */
274
+ autoNavigateToAvailable?: boolean;
265
275
  };
266
276
  export type MultiMonthPickerField = BaseField & {
267
277
  fieldType: "multi_month_picker";
@@ -269,6 +279,8 @@ export type MultiMonthPickerField = BaseField & {
269
279
  maxDate?: string;
270
280
  startMonth?: string;
271
281
  endMonth?: string;
282
+ /** When true, open on the first enabled month. Navigate only. */
283
+ autoNavigateToAvailable?: boolean;
272
284
  };
273
285
  export type TextAreaField = BaseField & {
274
286
  fieldType: "text_area";