@alfadocs/ui-kit-debug 0.89.0 → 0.94.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/dist/_chunks/{antenatal-schedule-timeline-UiZQze4P.js → antenatal-schedule-timeline-BMMpi2lb.js} +17 -17
  2. package/dist/_chunks/{antenatal-schedule-timeline-UiZQze4P.js.map → antenatal-schedule-timeline-BMMpi2lb.js.map} +1 -1
  3. package/dist/_chunks/apexcharts-theme-fAQXLIMW.js +67 -0
  4. package/dist/_chunks/apexcharts-theme-fAQXLIMW.js.map +1 -0
  5. package/dist/_chunks/{appointment-timeline-CwpbQGC1.js → appointment-timeline-BB-c1LeR.js} +2 -2
  6. package/dist/_chunks/{appointment-timeline-CwpbQGC1.js.map → appointment-timeline-BB-c1LeR.js.map} +1 -1
  7. package/dist/_chunks/{ar-C9FRRqJs.js → ar-THMLfSoN.js} +22 -22
  8. package/dist/_chunks/{ar-C9FRRqJs.js.map → ar-THMLfSoN.js.map} +1 -1
  9. package/dist/_chunks/{booking-DEwmDprH.js → booking-BSpSMmJ2.js} +4 -4
  10. package/dist/_chunks/{booking-DEwmDprH.js.map → booking-BSpSMmJ2.js.map} +1 -1
  11. package/dist/_chunks/{chart-CNaLgvx4.js → chart-DqxVCm1I.js} +288 -257
  12. package/dist/_chunks/chart-DqxVCm1I.js.map +1 -0
  13. package/dist/_chunks/{cycle-calculator-DXSNIWFk.js → cycle-calculator-DNvvr0bP.js} +3 -3
  14. package/dist/_chunks/{cycle-calculator-DXSNIWFk.js.map → cycle-calculator-DNvvr0bP.js.map} +1 -1
  15. package/dist/_chunks/date-picker-BP_W6VtE.js +265 -0
  16. package/dist/_chunks/date-picker-BP_W6VtE.js.map +1 -0
  17. package/dist/_chunks/{date-picker-variants-D9B6hg15.js → date-picker-variants-eL6HjWvw.js} +966 -841
  18. package/dist/_chunks/{date-picker-variants-D9B6hg15.js.map → date-picker-variants-eL6HjWvw.js.map} +1 -1
  19. package/dist/_chunks/date-range-picker-Cfv4Sr63.js +832 -0
  20. package/dist/_chunks/date-range-picker-Cfv4Sr63.js.map +1 -0
  21. package/dist/_chunks/{date-time-picker-BU-j0qj4.js → date-time-picker-695QvBGj.js} +2 -2
  22. package/dist/_chunks/{date-time-picker-BU-j0qj4.js.map → date-time-picker-695QvBGj.js.map} +1 -1
  23. package/dist/_chunks/{de-C3_KZ6mR.js → de-DmZ-8rTN.js} +4 -4
  24. package/dist/_chunks/{de-C3_KZ6mR.js.map → de-DmZ-8rTN.js.map} +1 -1
  25. package/dist/_chunks/{due-date-calculator-BR_GuqHH.js → due-date-calculator-BEcdoy_E.js} +3 -3
  26. package/dist/_chunks/{due-date-calculator-BR_GuqHH.js.map → due-date-calculator-BEcdoy_E.js.map} +1 -1
  27. package/dist/_chunks/{el-v9xDKHgu.js → el-Bela9mxs.js} +6 -6
  28. package/dist/_chunks/{el-v9xDKHgu.js.map → el-Bela9mxs.js.map} +1 -1
  29. package/dist/_chunks/{es-Lgmjq9Rp.js → es-BNncHKex.js} +10 -10
  30. package/dist/_chunks/{es-Lgmjq9Rp.js.map → es-BNncHKex.js.map} +1 -1
  31. package/dist/_chunks/{fr-INS1OD7m.js → fr-CH8ADfhN.js} +12 -12
  32. package/dist/_chunks/{fr-INS1OD7m.js.map → fr-CH8ADfhN.js.map} +1 -1
  33. package/dist/_chunks/{gestational-age-calculator-DBIcxfjP.js → gestational-age-calculator-CuGkVqKp.js} +5 -5
  34. package/dist/_chunks/{gestational-age-calculator-DBIcxfjP.js.map → gestational-age-calculator-CuGkVqKp.js.map} +1 -1
  35. package/dist/_chunks/{hcg-doubling-BgCkds8R.js → hcg-doubling-fZ6qQN08.js} +2 -2
  36. package/dist/_chunks/{hcg-doubling-BgCkds8R.js.map → hcg-doubling-fZ6qQN08.js.map} +1 -1
  37. package/dist/_chunks/{hi-BUYtlosF.js → hi-Bppfxp8l.js} +16 -16
  38. package/dist/_chunks/{hi-BUYtlosF.js.map → hi-Bppfxp8l.js.map} +1 -1
  39. package/dist/_chunks/{isSameWeek-BUNsv4OO.js → isSameWeek-CK4HS9lH.js} +2 -2
  40. package/dist/_chunks/{isSameWeek-BUNsv4OO.js.map → isSameWeek-CK4HS9lH.js.map} +1 -1
  41. package/dist/_chunks/{it-VfsdUqeV.js → it-B4ySaRyK.js} +24 -24
  42. package/dist/_chunks/{it-VfsdUqeV.js.map → it-B4ySaRyK.js.map} +1 -1
  43. package/dist/_chunks/{ja-Dfk9qwzE.js → ja-CGF6Io9P.js} +12 -12
  44. package/dist/_chunks/{ja-Dfk9qwzE.js.map → ja-CGF6Io9P.js.map} +1 -1
  45. package/dist/_chunks/{link-cell-renderer-BzITwSXq.js → link-cell-renderer-_LDZhY4r.js} +214 -197
  46. package/dist/_chunks/link-cell-renderer-_LDZhY4r.js.map +1 -0
  47. package/dist/_chunks/{nl-Crxwg0IZ.js → nl-DuShqwuV.js} +12 -12
  48. package/dist/_chunks/{nl-Crxwg0IZ.js.map → nl-DuShqwuV.js.map} +1 -1
  49. package/dist/_chunks/parse-DvA97ro9.js +1601 -0
  50. package/dist/_chunks/parse-DvA97ro9.js.map +1 -0
  51. package/dist/_chunks/{patient-details-Dggsz-ki.js → patient-details-DrhlTrLf.js} +2 -2
  52. package/dist/_chunks/{patient-details-Dggsz-ki.js.map → patient-details-DrhlTrLf.js.map} +1 -1
  53. package/dist/_chunks/{patient-table-ps4byVwA.js → patient-table-CFM92QqU.js} +2 -2
  54. package/dist/_chunks/{patient-table-ps4byVwA.js.map → patient-table-CFM92QqU.js.map} +1 -1
  55. package/dist/_chunks/{pl-IdHtxWTl.js → pl-CKQwX9Fk.js} +22 -22
  56. package/dist/_chunks/{pl-IdHtxWTl.js.map → pl-CKQwX9Fk.js.map} +1 -1
  57. package/dist/_chunks/{pregnancy-dating-CvIRwWaG.js → pregnancy-dating-BdFl-rB1.js} +5 -5
  58. package/dist/_chunks/{pregnancy-dating-CvIRwWaG.js.map → pregnancy-dating-BdFl-rB1.js.map} +1 -1
  59. package/dist/_chunks/{pt-CY2m2bBz.js → pt-_njpXyOZ.js} +16 -16
  60. package/dist/_chunks/{pt-CY2m2bBz.js.map → pt-_njpXyOZ.js.map} +1 -1
  61. package/dist/_chunks/{radiograph-panel.agent-C93AXgtV.js → radiograph-panel.agent-DDnDGVpN.js} +3 -3
  62. package/dist/_chunks/{radiograph-panel.agent-C93AXgtV.js.map → radiograph-panel.agent-DDnDGVpN.js.map} +1 -1
  63. package/dist/_chunks/{ro-qoxLkXED.js → ro-3X6_4FcN.js} +14 -14
  64. package/dist/_chunks/{ro-qoxLkXED.js.map → ro-3X6_4FcN.js.map} +1 -1
  65. package/dist/_chunks/{ru-BVZlxoKf.js → ru-bAcgmnS-.js} +20 -20
  66. package/dist/_chunks/{ru-BVZlxoKf.js.map → ru-bAcgmnS-.js.map} +1 -1
  67. package/dist/_chunks/{sparkline-iOXYgvJe.js → sparkline-o6JH4O66.js} +2 -2
  68. package/dist/_chunks/{sparkline-iOXYgvJe.js.map → sparkline-o6JH4O66.js.map} +1 -1
  69. package/dist/_chunks/{sq--eT8hIiD.js → sq-jYFqr4Ga.js} +6 -6
  70. package/dist/_chunks/{sq--eT8hIiD.js.map → sq-jYFqr4Ga.js.map} +1 -1
  71. package/dist/_chunks/subDays-BcNi04uf.js +8 -0
  72. package/dist/_chunks/{subDays-fEHRx4hg.js.map → subDays-BcNi04uf.js.map} +1 -1
  73. package/dist/_chunks/{sv-BGNQ5gX6.js → sv-BSGEJ-8B.js} +10 -10
  74. package/dist/_chunks/{sv-BGNQ5gX6.js.map → sv-BSGEJ-8B.js.map} +1 -1
  75. package/dist/_chunks/{tr-B2NEu6Gy.js → tr-CTpgUtw6.js} +14 -14
  76. package/dist/_chunks/{tr-B2NEu6Gy.js.map → tr-CTpgUtw6.js.map} +1 -1
  77. package/dist/_chunks/{zh-CN-DClT1wDk.js → zh-CN-BgM0Io2O.js} +22 -22
  78. package/dist/_chunks/{zh-CN-DClT1wDk.js.map → zh-CN-BgM0Io2O.js.map} +1 -1
  79. package/dist/agent-catalog.json +101 -2
  80. package/dist/agent-i18n/en.json +8 -2
  81. package/dist/components/_shared/calendar-class-names.d.ts +5 -0
  82. package/dist/components/_shared/calendar-class-names.d.ts.map +1 -1
  83. package/dist/components/_shared/date-picker-variants.d.ts +23 -1
  84. package/dist/components/_shared/date-picker-variants.d.ts.map +1 -1
  85. package/dist/components/_shared/index.d.ts +2 -2
  86. package/dist/components/_shared/index.d.ts.map +1 -1
  87. package/dist/components/appointment-timeline/index.js +1 -1
  88. package/dist/components/booking/index.js +1 -1
  89. package/dist/components/chart/chart.agent.d.ts.map +1 -1
  90. package/dist/components/chart/chart.d.ts +20 -0
  91. package/dist/components/chart/chart.d.ts.map +1 -1
  92. package/dist/components/chart/index.js +1 -1
  93. package/dist/components/cycle-calculator/index.js +1 -1
  94. package/dist/components/data-table/filters/date-range-filter.d.ts +13 -0
  95. package/dist/components/data-table/filters/date-range-filter.d.ts.map +1 -1
  96. package/dist/components/data-table/index.js +1 -1
  97. package/dist/components/date-picker/date-picker.d.ts.map +1 -1
  98. package/dist/components/date-picker/index.js +1 -1
  99. package/dist/components/date-range-picker/date-range-picker.agent.d.ts.map +1 -1
  100. package/dist/components/date-range-picker/date-range-picker.d.ts +91 -1
  101. package/dist/components/date-range-picker/date-range-picker.d.ts.map +1 -1
  102. package/dist/components/date-range-picker/index.d.ts +1 -1
  103. package/dist/components/date-range-picker/index.d.ts.map +1 -1
  104. package/dist/components/date-range-picker/index.js +1 -1
  105. package/dist/components/date-time-picker/index.js +1 -1
  106. package/dist/components/due-date-calculator/index.js +2 -2
  107. package/dist/components/gestational-age-calculator/index.js +1 -1
  108. package/dist/components/hcg-doubling/index.js +1 -1
  109. package/dist/components/patient-details/index.js +1 -1
  110. package/dist/components/patient-table/index.js +1 -1
  111. package/dist/components/pregnancy-dating/index.js +1 -1
  112. package/dist/components/radiograph-panel/index.js +1 -1
  113. package/dist/components/sparkline/index.js +1 -1
  114. package/dist/i18n/locales/ar.d.ts +24 -0
  115. package/dist/i18n/locales/ar.d.ts.map +1 -1
  116. package/dist/i18n/locales/ar.js +24 -0
  117. package/dist/i18n/locales/ar.js.map +1 -1
  118. package/dist/i18n/locales/de.d.ts +24 -0
  119. package/dist/i18n/locales/de.d.ts.map +1 -1
  120. package/dist/i18n/locales/de.js +24 -0
  121. package/dist/i18n/locales/de.js.map +1 -1
  122. package/dist/i18n/locales/el.d.ts +24 -0
  123. package/dist/i18n/locales/el.d.ts.map +1 -1
  124. package/dist/i18n/locales/el.js +24 -0
  125. package/dist/i18n/locales/el.js.map +1 -1
  126. package/dist/i18n/locales/en.d.ts +24 -0
  127. package/dist/i18n/locales/en.d.ts.map +1 -1
  128. package/dist/i18n/locales/en.js +24 -0
  129. package/dist/i18n/locales/en.js.map +1 -1
  130. package/dist/i18n/locales/es.d.ts +24 -0
  131. package/dist/i18n/locales/es.d.ts.map +1 -1
  132. package/dist/i18n/locales/es.js +24 -0
  133. package/dist/i18n/locales/es.js.map +1 -1
  134. package/dist/i18n/locales/fr.d.ts +24 -0
  135. package/dist/i18n/locales/fr.d.ts.map +1 -1
  136. package/dist/i18n/locales/fr.js +24 -0
  137. package/dist/i18n/locales/fr.js.map +1 -1
  138. package/dist/i18n/locales/hi.d.ts +24 -0
  139. package/dist/i18n/locales/hi.d.ts.map +1 -1
  140. package/dist/i18n/locales/hi.js +24 -0
  141. package/dist/i18n/locales/hi.js.map +1 -1
  142. package/dist/i18n/locales/it.d.ts +24 -0
  143. package/dist/i18n/locales/it.d.ts.map +1 -1
  144. package/dist/i18n/locales/it.js +24 -0
  145. package/dist/i18n/locales/it.js.map +1 -1
  146. package/dist/i18n/locales/ja.d.ts +24 -0
  147. package/dist/i18n/locales/ja.d.ts.map +1 -1
  148. package/dist/i18n/locales/ja.js +24 -0
  149. package/dist/i18n/locales/ja.js.map +1 -1
  150. package/dist/i18n/locales/nl.d.ts +24 -0
  151. package/dist/i18n/locales/nl.d.ts.map +1 -1
  152. package/dist/i18n/locales/nl.js +24 -0
  153. package/dist/i18n/locales/nl.js.map +1 -1
  154. package/dist/i18n/locales/pl.d.ts +24 -0
  155. package/dist/i18n/locales/pl.d.ts.map +1 -1
  156. package/dist/i18n/locales/pl.js +24 -0
  157. package/dist/i18n/locales/pl.js.map +1 -1
  158. package/dist/i18n/locales/pt.d.ts +24 -0
  159. package/dist/i18n/locales/pt.d.ts.map +1 -1
  160. package/dist/i18n/locales/pt.js +24 -0
  161. package/dist/i18n/locales/pt.js.map +1 -1
  162. package/dist/i18n/locales/ro.d.ts +24 -0
  163. package/dist/i18n/locales/ro.d.ts.map +1 -1
  164. package/dist/i18n/locales/ro.js +24 -0
  165. package/dist/i18n/locales/ro.js.map +1 -1
  166. package/dist/i18n/locales/ru.d.ts +24 -0
  167. package/dist/i18n/locales/ru.d.ts.map +1 -1
  168. package/dist/i18n/locales/ru.js +24 -0
  169. package/dist/i18n/locales/ru.js.map +1 -1
  170. package/dist/i18n/locales/sq.d.ts +24 -0
  171. package/dist/i18n/locales/sq.d.ts.map +1 -1
  172. package/dist/i18n/locales/sq.js +24 -0
  173. package/dist/i18n/locales/sq.js.map +1 -1
  174. package/dist/i18n/locales/sv.d.ts +24 -0
  175. package/dist/i18n/locales/sv.d.ts.map +1 -1
  176. package/dist/i18n/locales/sv.js +24 -0
  177. package/dist/i18n/locales/sv.js.map +1 -1
  178. package/dist/i18n/locales/tr.d.ts +24 -0
  179. package/dist/i18n/locales/tr.d.ts.map +1 -1
  180. package/dist/i18n/locales/tr.js +24 -0
  181. package/dist/i18n/locales/tr.js.map +1 -1
  182. package/dist/i18n/locales/zh.d.ts +24 -0
  183. package/dist/i18n/locales/zh.d.ts.map +1 -1
  184. package/dist/i18n/locales/zh.js +24 -0
  185. package/dist/i18n/locales/zh.js.map +1 -1
  186. package/dist/index.js +17 -17
  187. package/dist/locales/ar.json +24 -0
  188. package/dist/locales/de.json +24 -0
  189. package/dist/locales/el.json +24 -0
  190. package/dist/locales/en.json +24 -0
  191. package/dist/locales/es.json +24 -0
  192. package/dist/locales/fr.json +24 -0
  193. package/dist/locales/hi.json +24 -0
  194. package/dist/locales/it.json +24 -0
  195. package/dist/locales/ja.json +24 -0
  196. package/dist/locales/nl.json +24 -0
  197. package/dist/locales/pl.json +24 -0
  198. package/dist/locales/pt.json +24 -0
  199. package/dist/locales/ro.json +24 -0
  200. package/dist/locales/ru.json +24 -0
  201. package/dist/locales/sq.json +24 -0
  202. package/dist/locales/sv.json +24 -0
  203. package/dist/locales/tr.json +24 -0
  204. package/dist/locales/zh.json +24 -0
  205. package/dist/tokens/apexcharts-theme.d.ts +36 -1
  206. package/dist/tokens/apexcharts-theme.d.ts.map +1 -1
  207. package/dist/tokens.css +1 -1
  208. package/package.json +1 -1
  209. package/dist/_chunks/apexcharts-theme-BJigns_V.js +0 -53
  210. package/dist/_chunks/apexcharts-theme-BJigns_V.js.map +0 -1
  211. package/dist/_chunks/chart-CNaLgvx4.js.map +0 -1
  212. package/dist/_chunks/date-picker-ffmyjvlI.js +0 -1845
  213. package/dist/_chunks/date-picker-ffmyjvlI.js.map +0 -1
  214. package/dist/_chunks/date-range-picker-DSOH50-f.js +0 -325
  215. package/dist/_chunks/date-range-picker-DSOH50-f.js.map +0 -1
  216. package/dist/_chunks/link-cell-renderer-BzITwSXq.js.map +0 -1
  217. package/dist/_chunks/subDays-fEHRx4hg.js +0 -8
@@ -0,0 +1,832 @@
1
+ import { jsx as r, jsxs as c, Fragment as wt } from "react/jsx-runtime";
2
+ import { forwardRef as It, useState as y, useRef as ce, useId as G, useCallback as Ke, useEffect as Le, useMemo as Ot, useImperativeHandle as Tt, Fragment as Gt } from "react";
3
+ import { useTranslation as Et } from "react-i18next";
4
+ import * as _ from "@radix-ui/react-popover";
5
+ import * as z from "@radix-ui/react-radio-group";
6
+ import { u as $e } from "./use-controllable-state-BiY4xTzM.js";
7
+ import { u as Mt } from "./form-field-context-B3APVHKx.js";
8
+ import { S as Vt } from "./switch-OILsBLWo.js";
9
+ import { u as Ft } from "./registry-DvAUVLHh.js";
10
+ import { l as Kt, m as Lt, u as $t, g as At, b as Wt, f as h, n as Ae, s as We, o as jt, q as qt, k as ue, a as _t, d as zt, t as Bt, r as je, v as qe, w as _e, p as Yt, x as Ut, D as Ht, C as Qt, y as Jt, e as Xt, z as B, h as Zt, j as ea, i as pe, c as ta } from "./date-picker-variants-eL6HjWvw.js";
11
+ import { s as E } from "./subDays-BcNi04uf.js";
12
+ import { C as aa } from "./calendar-days-BGWklvE-.js";
13
+ import { C as ra } from "./check-DrFSN__t.js";
14
+ import { i as ze } from "./isSameDay-DUEiAT0G.js";
15
+ import { p as sa } from "./parse-DvA97ro9.js";
16
+ function na(s, l, f) {
17
+ return Kt(s, -1, f);
18
+ }
19
+ function Be(s, l, f) {
20
+ return Lt(s, -1, f);
21
+ }
22
+ const oa = {
23
+ id: "date-range-picker",
24
+ capabilities: [
25
+ "range_pick",
26
+ "open",
27
+ "close",
28
+ "confirm",
29
+ // apply — commit the draft range
30
+ "dismiss",
31
+ // cancel — discard the draft
32
+ "set_value"
33
+ // set_granularity + compare_toggle
34
+ ],
35
+ state: {
36
+ range: {
37
+ type: "{ from: iso-date | null, to: iso-date | null }",
38
+ descriptionKey: "ui.agent.dateRangePicker.state.range",
39
+ description: "Currently-selected ISO date range endpoints, each possibly null.",
40
+ read: (s) => {
41
+ var f, m;
42
+ const l = s.getRange();
43
+ return {
44
+ from: ((f = l.from) == null ? void 0 : f.toISOString()) ?? null,
45
+ to: ((m = l.to) == null ? void 0 : m.toISOString()) ?? null
46
+ };
47
+ }
48
+ },
49
+ isOpen: {
50
+ type: "boolean",
51
+ descriptionKey: "ui.agent.dateRangePicker.state.isOpen",
52
+ description: "Whether the range calendar popover is open.",
53
+ read: (s) => s.isOpen()
54
+ },
55
+ granularity: {
56
+ type: "'day' | 'week' | 'month' | 'quarter' | null",
57
+ descriptionKey: "ui.agent.dateRangePicker.state.granularity",
58
+ description: "Selected time granularity (Range Cockpit), or null when the control is disabled.",
59
+ read: (s) => s.getGranularity() ?? null
60
+ },
61
+ compareRange: {
62
+ type: "{ from: iso-date | null, to: iso-date | null } | null",
63
+ descriptionKey: "ui.agent.dateRangePicker.state.compareRange",
64
+ description: "Resolved comparison period when compare-to-previous-period is on, else null.",
65
+ read: (s) => {
66
+ var f, m;
67
+ const l = s.getCompareRange();
68
+ return l ? {
69
+ from: ((f = l.from) == null ? void 0 : f.toISOString()) ?? null,
70
+ to: ((m = l.to) == null ? void 0 : m.toISOString()) ?? null
71
+ } : null;
72
+ }
73
+ }
74
+ },
75
+ actions: {
76
+ set_range: {
77
+ safety: "write",
78
+ argsType: "{ from: string, to: string }",
79
+ argsSchema: {
80
+ type: "object",
81
+ properties: {
82
+ from: {
83
+ type: "string",
84
+ format: "date",
85
+ description: "ISO start date (inclusive)."
86
+ },
87
+ to: {
88
+ type: "string",
89
+ format: "date",
90
+ description: "ISO end date (inclusive)."
91
+ }
92
+ },
93
+ required: ["from", "to"]
94
+ },
95
+ idempotent: !0,
96
+ descriptionKey: "ui.agent.dateRangePicker.actions.setRange",
97
+ description: "Replace the selected range with the given ISO endpoints.",
98
+ examples: [
99
+ {
100
+ args: { from: "2026-06-01", to: "2026-06-30" },
101
+ note: "Select all of June 2026."
102
+ }
103
+ ],
104
+ invoke: (s, l) => {
105
+ s.setRange({ from: new Date(l.from), to: new Date(l.to) });
106
+ }
107
+ },
108
+ clear: {
109
+ // Discards the selected range — loses the user's input.
110
+ safety: "destructive",
111
+ idempotent: !0,
112
+ descriptionKey: "ui.agent.dateRangePicker.actions.clear",
113
+ description: "Clear the selected range.",
114
+ invoke: (s) => {
115
+ s.clear();
116
+ }
117
+ },
118
+ open: {
119
+ safety: "read",
120
+ idempotent: !0,
121
+ descriptionKey: "ui.agent.dateRangePicker.actions.open",
122
+ description: "Open the range calendar popover.",
123
+ invoke: (s) => {
124
+ s.open();
125
+ }
126
+ },
127
+ close: {
128
+ safety: "read",
129
+ idempotent: !0,
130
+ descriptionKey: "ui.agent.dateRangePicker.actions.close",
131
+ description: "Close the range calendar popover.",
132
+ invoke: (s) => {
133
+ s.close();
134
+ }
135
+ },
136
+ apply: {
137
+ // Commits the current draft — in `commitMode="apply"` this is what runs
138
+ // the downstream query, so it is a write, not read.
139
+ safety: "write",
140
+ idempotent: !0,
141
+ descriptionKey: "ui.agent.dateRangePicker.actions.apply",
142
+ description: "Commit the current draft range (as the Apply / Done button).",
143
+ invoke: (s) => {
144
+ s.apply();
145
+ }
146
+ },
147
+ cancel: {
148
+ safety: "read",
149
+ idempotent: !0,
150
+ descriptionKey: "ui.agent.dateRangePicker.actions.cancel",
151
+ description: "Discard the draft and close without committing.",
152
+ invoke: (s) => {
153
+ s.cancel();
154
+ }
155
+ },
156
+ set_granularity: {
157
+ safety: "write",
158
+ argsType: "{ granularity: 'day' | 'week' | 'month' | 'quarter' }",
159
+ argsSchema: {
160
+ type: "object",
161
+ properties: {
162
+ granularity: {
163
+ type: "string",
164
+ enum: ["day", "week", "month", "quarter"],
165
+ description: "Time grain to query the range at."
166
+ }
167
+ },
168
+ required: ["granularity"]
169
+ },
170
+ idempotent: !0,
171
+ descriptionKey: "ui.agent.dateRangePicker.actions.setGranularity",
172
+ description: "Set the time granularity (Range Cockpit).",
173
+ examples: [{ args: { granularity: "month" }, note: "Query by month." }],
174
+ invoke: (s, l) => {
175
+ s.setGranularity(l.granularity);
176
+ }
177
+ },
178
+ toggle_compare: {
179
+ safety: "write",
180
+ argsType: "{ enabled: boolean }",
181
+ argsSchema: {
182
+ type: "object",
183
+ properties: {
184
+ enabled: {
185
+ type: "boolean",
186
+ description: "Whether to compare against the previous period."
187
+ }
188
+ },
189
+ required: ["enabled"]
190
+ },
191
+ idempotent: !0,
192
+ descriptionKey: "ui.agent.dateRangePicker.actions.toggleCompare",
193
+ description: "Turn compare-to-previous-period on or off (Range Cockpit).",
194
+ examples: [
195
+ { args: { enabled: !0 }, note: "Enable period comparison." }
196
+ ],
197
+ invoke: (s, l) => {
198
+ s.setCompare(l.enabled);
199
+ }
200
+ }
201
+ },
202
+ domHooks: {
203
+ root: {
204
+ attr: "data-component",
205
+ value: "date-range-picker",
206
+ description: "Marks the DateRangePicker wrapper."
207
+ },
208
+ instanceId: {
209
+ attr: "data-component-id",
210
+ sourceProp: "id",
211
+ description: "Sourced from the id prop."
212
+ }
213
+ }
214
+ }, Ye = [
215
+ { value: "day", fallback: "Day" },
216
+ { value: "week", fallback: "Week" },
217
+ { value: "month", fallback: "Month" },
218
+ { value: "quarter", fallback: "Quarter" }
219
+ ], ia = [
220
+ { value: "previous", fallback: "Previous period" },
221
+ { value: "lastYear", fallback: "Same period last year" }
222
+ ], da = It(
223
+ ({
224
+ value: s,
225
+ defaultValue: l,
226
+ onChange: f,
227
+ commitMode: m = "auto",
228
+ onApply: P,
229
+ onCancel: N,
230
+ showClear: Ue = !0,
231
+ numberOfMonths: He = 2,
232
+ granularity: me,
233
+ defaultGranularity: fe,
234
+ onGranularityChange: Qe,
235
+ allowedGranularities: Y,
236
+ compare: ge = !1,
237
+ defaultCompare: Je = !1,
238
+ defaultCompareMode: Xe = "previous",
239
+ onCompareChange: D,
240
+ weekStartsOn: M,
241
+ minDate: U,
242
+ maxDate: H,
243
+ presets: Q,
244
+ mergePresets: Ze = !1,
245
+ size: ve = "md",
246
+ chrome: et = "input",
247
+ disabled: tt,
248
+ placeholder: at,
249
+ className: rt,
250
+ id: st
251
+ }, nt) => {
252
+ const { t: n, i18n: ye } = Et(), V = Mt(), J = st ?? V.id, he = V.disabled || tt, ot = V.invalid ? "error" : "default", u = $t(ye.language), p = At(ye.language), it = at ?? n("inputs.dateRangePicker.placeholder", "Select date range"), [dt, be] = $e({
253
+ value: s,
254
+ defaultValue: l ?? {},
255
+ onChange: f
256
+ }), i = dt ?? {}, [C, b] = y(!1), [a, S] = y(i), [lt, X] = y(i.from ?? /* @__PURE__ */ new Date()), [ke, Re] = y(""), [xe, Pe] = y(""), [w, F] = y(!1), [I, K] = y(!1), $ = me !== void 0 || fe !== void 0, A = Y && Y.length > 0 ? Y : void 0, Ne = A ? Ye.filter(
257
+ (e) => A.includes(e.value)
258
+ ) : Ye, L = (e) => {
259
+ var t;
260
+ return !A || A.includes(e) ? e : ((t = Ne[0]) == null ? void 0 : t.value) ?? e;
261
+ }, [ct, Z] = $e({
262
+ value: me,
263
+ defaultValue: L(fe ?? "day"),
264
+ onChange: Qe
265
+ }), W = L(ct ?? "day"), [ee, ut] = y(Je), [De, pt] = y(Xe), mt = ce(null), x = ce(!1), Ce = G(), Se = G(), we = G(), Ie = G(), te = G(), ft = G(), k = Ke(
266
+ (e) => {
267
+ be(e);
268
+ },
269
+ [be]
270
+ ), gt = Wt(U, H), vt = (e) => (U ? ta(e, U) : !1) || (H ? pe(e, H) : !1);
271
+ Le(() => {
272
+ C && (S(i), F(!1), K(!1), x.current = !1);
273
+ }, [C]), Le(() => {
274
+ w || Re(
275
+ a.from ? h(a.from, p, { locale: u }) : ""
276
+ ), I || Pe(a.to ? h(a.to, p, { locale: u }) : "");
277
+ }, [a.from, a.to, p, u]);
278
+ const Oe = [
279
+ {
280
+ label: n("inputs.dateRangePicker.presets.today", "Today"),
281
+ range: () => {
282
+ const e = /* @__PURE__ */ new Date();
283
+ return { from: e, to: e };
284
+ }
285
+ },
286
+ {
287
+ label: n("inputs.dateRangePicker.presets.yesterday", "Yesterday"),
288
+ range: () => {
289
+ const e = E(/* @__PURE__ */ new Date(), 1);
290
+ return { from: e, to: e };
291
+ }
292
+ },
293
+ {
294
+ label: n("inputs.dateRangePicker.presets.last7", "Last 7 days"),
295
+ range: () => ({
296
+ from: E(/* @__PURE__ */ new Date(), 6),
297
+ to: /* @__PURE__ */ new Date()
298
+ })
299
+ },
300
+ {
301
+ label: n("inputs.dateRangePicker.presets.thisWeek", "This week"),
302
+ range: () => ({
303
+ // `weekStartsOn` (when set) overrides the locale's first day; when
304
+ // undefined date-fns falls back to the locale.
305
+ from: We(/* @__PURE__ */ new Date(), { locale: u, weekStartsOn: M }),
306
+ to: Ae(/* @__PURE__ */ new Date(), { locale: u, weekStartsOn: M })
307
+ })
308
+ },
309
+ {
310
+ label: n("inputs.dateRangePicker.presets.lastWeek", "Last week"),
311
+ range: () => {
312
+ const e = na(/* @__PURE__ */ new Date());
313
+ return {
314
+ from: We(e, { locale: u, weekStartsOn: M }),
315
+ to: Ae(e, { locale: u, weekStartsOn: M })
316
+ };
317
+ }
318
+ },
319
+ {
320
+ label: n("inputs.dateRangePicker.presets.thisMonth", "This month"),
321
+ range: () => ({
322
+ from: qt(/* @__PURE__ */ new Date()),
323
+ to: jt(/* @__PURE__ */ new Date())
324
+ })
325
+ },
326
+ {
327
+ label: n("inputs.dateRangePicker.presets.last30", "Last 30 days"),
328
+ range: () => ({
329
+ from: E(/* @__PURE__ */ new Date(), 29),
330
+ to: /* @__PURE__ */ new Date()
331
+ })
332
+ }
333
+ ], j = Q ? Ze ? [...Oe, ...Q] : Q : Oe, Te = (() => {
334
+ const e = [], t = /* @__PURE__ */ new Map();
335
+ for (const d of j) {
336
+ const o = d.group ?? "";
337
+ t.has(o) || (t.set(o, []), e.push(o)), t.get(o).push(d);
338
+ }
339
+ return e.map((d) => ({ group: d, presets: t.get(d) }));
340
+ })(), yt = Te.some((e) => e.group !== ""), O = (e, t = De) => {
341
+ if (!e.from || !e.to) return;
342
+ if (t === "lastYear")
343
+ return { from: Be(e.from), to: Be(e.to) };
344
+ const d = ue(e.to, e.from), o = E(e.from, 1);
345
+ return { from: E(o, d), to: o };
346
+ }, T = ge && ee, v = T ? O(a) : void 0, ht = (() => {
347
+ if (!(v != null && v.from) || !v.to) return;
348
+ const e = v.from, t = v.to, d = {
349
+ compareStart: e,
350
+ compareEnd: t
351
+ };
352
+ return ue(t, e) >= 2 && (d.compareMiddle = { from: _t(e, 1), to: E(t, 1) }), d;
353
+ })(), Ge = (e) => {
354
+ const t = {};
355
+ return $ && (t.granularity = W), T && (t.compareRange = O(e)), t.granularity || t.compareRange ? t : void 0;
356
+ }, bt = (e) => {
357
+ const t = e;
358
+ pt(t), T && (D == null || D(!0, O(a, t)));
359
+ }, ae = (e) => {
360
+ ut(e), D == null || D(e, e ? O(a) : void 0);
361
+ }, re = Ke(
362
+ (e) => {
363
+ S(e), m === "auto" && e.from && e.to && k(e);
364
+ },
365
+ [m, k]
366
+ ), kt = (e) => {
367
+ F(!1), K(!1), re({ from: e == null ? void 0 : e.from, to: e == null ? void 0 : e.to });
368
+ }, Rt = (e) => {
369
+ const t = e.range();
370
+ F(!1), K(!1), S(t), X(t.from), m === "auto" && (k(t), P == null || P(t, Ge(t)), x.current = !0, b(!1));
371
+ }, se = (e, t) => {
372
+ const d = e === "from" ? F : K;
373
+ if (t.trim() === "") {
374
+ d(!1), re(
375
+ e === "from" ? { from: void 0, to: a.to } : { from: a.from, to: void 0 }
376
+ );
377
+ return;
378
+ }
379
+ const o = sa(t, p, /* @__PURE__ */ new Date(), { locale: u });
380
+ if (!ea(o) || vt(o)) {
381
+ d(!0);
382
+ return;
383
+ }
384
+ d(!1);
385
+ let R;
386
+ e === "from" ? R = a.to && pe(o, a.to) ? { from: o, to: void 0 } : { from: o, to: a.to } : R = a.from && pe(a.from, o) ? { from: o, to: void 0 } : { from: a.from, to: o }, X(o), re(R);
387
+ }, Ee = (e) => (t) => {
388
+ t.key === "Enter" && (t.preventDefault(), se(e, e === "from" ? ke : xe));
389
+ }, xt = () => {
390
+ S({}), F(!1), K(!1), m === "auto" && k({});
391
+ }, Pt = !!(a.from && a.to), Nt = !a.from && !a.to, Me = (Pt || Nt) && !w && !I, ne = () => {
392
+ Me && (k(a), P == null || P(a, Ge(a))), x.current = !0, b(!1);
393
+ }, Dt = () => {
394
+ x.current = !0, b(!1);
395
+ }, oe = () => {
396
+ m === "apply" && (N == null || N()), S(i), b(!1);
397
+ }, Ct = (e) => {
398
+ if (e) {
399
+ x.current = !1, b(!0);
400
+ return;
401
+ }
402
+ m === "apply" && !x.current && (N == null || N()), S(i), x.current = !1, b(!1);
403
+ }, ie = (e) => {
404
+ if (!i.from || !i.to) return !1;
405
+ const t = e.range();
406
+ return ze(t.from, i.from) && ze(t.to, i.to);
407
+ }, Ve = (() => {
408
+ if (i.from && i.to) {
409
+ const e = h(i.from, p, { locale: u }), t = h(i.to, p, { locale: u });
410
+ return `${e} – ${t}`;
411
+ }
412
+ return i.from ? h(i.from, p, { locale: u }) : "";
413
+ })(), q = a.from ? a.to ? null : "end" : "start", St = (() => {
414
+ if (!a.from)
415
+ return n("inputs.dateRangePicker.selectStart", "Select start date");
416
+ if (!a.to)
417
+ return n("inputs.dateRangePicker.selectEnd", "Select end date");
418
+ const e = ue(a.to, a.from) + 1, t = h(a.from, p, { locale: u }), d = h(a.to, p, { locale: u }), o = n("inputs.dateRangePicker.days", { count: e });
419
+ return `${t} – ${d} · ${o}`;
420
+ })(), g = ce({
421
+ currentValue: i,
422
+ open: C,
423
+ getGranularity: () => $ ? W : void 0,
424
+ setGranularity: (e) => Z(L(e)),
425
+ getCompareRange: () => T ? O(i) : void 0,
426
+ setCompare: (e) => ae(e),
427
+ getActivePreset: () => {
428
+ var e;
429
+ return (e = j.find(ie)) == null ? void 0 : e.label;
430
+ },
431
+ getActiveEnd: () => q,
432
+ apply: () => ne(),
433
+ cancel: () => oe()
434
+ });
435
+ g.current = {
436
+ currentValue: i,
437
+ open: C,
438
+ getGranularity: () => $ ? W : void 0,
439
+ setGranularity: (e) => Z(L(e)),
440
+ getCompareRange: () => T ? O(i) : void 0,
441
+ setCompare: (e) => ae(e),
442
+ getActivePreset: () => {
443
+ var e;
444
+ return (e = j.find(ie)) == null ? void 0 : e.label;
445
+ },
446
+ getActiveEnd: () => q,
447
+ apply: () => ne(),
448
+ cancel: () => oe()
449
+ };
450
+ const de = Ot(
451
+ () => ({
452
+ getRange: () => g.current.currentValue,
453
+ setRange: (e) => k(e),
454
+ clear: () => k({}),
455
+ isOpen: () => g.current.open,
456
+ open: () => b(!0),
457
+ close: () => b(!1),
458
+ getGranularity: () => g.current.getGranularity(),
459
+ setGranularity: (e) => g.current.setGranularity(e),
460
+ getCompareRange: () => g.current.getCompareRange(),
461
+ setCompare: (e) => g.current.setCompare(e),
462
+ getActivePreset: () => g.current.getActivePreset(),
463
+ getActiveEnd: () => g.current.getActiveEnd(),
464
+ apply: () => g.current.apply(),
465
+ cancel: () => g.current.cancel()
466
+ }),
467
+ [k]
468
+ );
469
+ Tt(nt, () => de, [de]), Ft(oa, de, J);
470
+ const Fe = (e) => e === "from" ? w ? "error" : q === "start" ? "active" : "default" : I ? "error" : q === "end" ? "active" : "default";
471
+ return /* @__PURE__ */ r(_.Root, { open: C, onOpenChange: Ct, children: /* @__PURE__ */ c(
472
+ "div",
473
+ {
474
+ className: rt,
475
+ "data-component": "date-range-picker",
476
+ "data-component-id": J,
477
+ children: [
478
+ /* @__PURE__ */ r(_.Trigger, { asChild: !0, disabled: he, children: /* @__PURE__ */ c(
479
+ "button",
480
+ {
481
+ ref: mt,
482
+ id: J,
483
+ type: "button",
484
+ disabled: he,
485
+ "aria-describedby": V.describedBy || void 0,
486
+ "aria-invalid": V.invalid || void 0,
487
+ "aria-haspopup": "dialog",
488
+ "aria-expanded": C,
489
+ className: Bt({ size: ve, tone: ot, chrome: et }),
490
+ children: [
491
+ /* @__PURE__ */ r(
492
+ "span",
493
+ {
494
+ className: [
495
+ // Truncate so a long value/placeholder ellipsises instead of
496
+ // running under the absolutely-positioned calendar icon (the
497
+ // trigger reserves the icon's space via `pe-10`). `min-w-0`
498
+ // lets the flex child shrink below its content width so
499
+ // `truncate` engages.
500
+ "ds:min-w-0 ds:flex-1 ds:truncate ds:text-start",
501
+ Ve ? "ds:text-foreground" : "ds:text-muted-foreground"
502
+ ].join(" "),
503
+ children: Ve || it
504
+ }
505
+ ),
506
+ /* @__PURE__ */ r(
507
+ "span",
508
+ {
509
+ "aria-hidden": "true",
510
+ className: zt({ size: ve }),
511
+ children: /* @__PURE__ */ r(aa, {})
512
+ }
513
+ )
514
+ ]
515
+ }
516
+ ) }),
517
+ /* @__PURE__ */ r(_.Portal, { children: /* @__PURE__ */ r(
518
+ _.Content,
519
+ {
520
+ sideOffset: 4,
521
+ align: "start",
522
+ role: "dialog",
523
+ "aria-label": n(
524
+ "inputs.dateRangePicker.title",
525
+ "Select date range"
526
+ ),
527
+ className: Zt(),
528
+ children: /* @__PURE__ */ c("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
529
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
530
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
531
+ /* @__PURE__ */ r(
532
+ "h2",
533
+ {
534
+ id: Ce,
535
+ className: "type-body-sm ds:font-semibold ds:text-foreground",
536
+ children: n("inputs.dateRangePicker.title", "Select date range")
537
+ }
538
+ ),
539
+ $ ? /* @__PURE__ */ r(
540
+ z.Root,
541
+ {
542
+ value: W,
543
+ onValueChange: (e) => Z(
544
+ L(e)
545
+ ),
546
+ "aria-label": n(
547
+ "inputs.dateRangePicker.granularityLabel",
548
+ "Granularity"
549
+ ),
550
+ className: qe(),
551
+ children: Ne.map((e) => /* @__PURE__ */ r(
552
+ z.Item,
553
+ {
554
+ value: e.value,
555
+ className: je(),
556
+ children: n(
557
+ `inputs.dateRangePicker.granularity.${e.value}`,
558
+ e.fallback
559
+ )
560
+ },
561
+ e.value
562
+ ))
563
+ }
564
+ ) : null
565
+ ] }),
566
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:items-end ds:gap-[var(--spacing-xs)]", children: [
567
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
568
+ /* @__PURE__ */ r(
569
+ "label",
570
+ {
571
+ htmlFor: Se,
572
+ className: "ds:text-[length:var(--font-size-xs)] ds:text-muted-foreground",
573
+ children: n("inputs.dateRangePicker.startLabel", "Start date")
574
+ }
575
+ ),
576
+ /* @__PURE__ */ r(
577
+ "input",
578
+ {
579
+ id: Se,
580
+ type: "text",
581
+ inputMode: "numeric",
582
+ value: ke,
583
+ placeholder: p.toUpperCase(),
584
+ "aria-invalid": w || void 0,
585
+ "aria-describedby": w ? te : void 0,
586
+ onChange: (e) => Re(e.target.value),
587
+ onBlur: (e) => se("from", e.target.value),
588
+ onKeyDown: Ee("from"),
589
+ className: _e({
590
+ state: Fe("from")
591
+ })
592
+ }
593
+ )
594
+ ] }),
595
+ /* @__PURE__ */ r(
596
+ "span",
597
+ {
598
+ "aria-hidden": "true",
599
+ className: "ds:pb-[var(--spacing-xs)] ds:text-muted-foreground",
600
+ children: "–"
601
+ }
602
+ ),
603
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
604
+ /* @__PURE__ */ r(
605
+ "label",
606
+ {
607
+ htmlFor: we,
608
+ className: "ds:text-[length:var(--font-size-xs)] ds:text-muted-foreground",
609
+ children: n("inputs.dateRangePicker.endLabel", "End date")
610
+ }
611
+ ),
612
+ /* @__PURE__ */ r(
613
+ "input",
614
+ {
615
+ id: we,
616
+ type: "text",
617
+ inputMode: "numeric",
618
+ value: xe,
619
+ placeholder: p.toUpperCase(),
620
+ "aria-invalid": I || void 0,
621
+ "aria-describedby": I ? te : void 0,
622
+ onChange: (e) => Pe(e.target.value),
623
+ onBlur: (e) => se("to", e.target.value),
624
+ onKeyDown: Ee("to"),
625
+ className: _e({
626
+ state: Fe("to")
627
+ })
628
+ }
629
+ )
630
+ ] })
631
+ ] }),
632
+ w || I ? /* @__PURE__ */ r(
633
+ "p",
634
+ {
635
+ id: te,
636
+ role: "alert",
637
+ className: "ds:text-[length:var(--font-size-xs)] ds:text-destructive",
638
+ children: n(
639
+ "inputs.dateRangePicker.invalidDate",
640
+ "Enter a date as {{format}}",
641
+ {
642
+ format: p.toUpperCase()
643
+ }
644
+ )
645
+ }
646
+ ) : null
647
+ ] }),
648
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:gap-[var(--spacing-md)]", children: [
649
+ j.length > 0 ? /* @__PURE__ */ r("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)] ds:min-w-[8rem] ds:border-e ds:border-border ds:pe-[var(--spacing-md)]", children: Te.map((e, t) => {
650
+ const d = `${Ce}-pg${t}`, o = e.presets.map((R) => {
651
+ const le = ie(R);
652
+ return /* @__PURE__ */ c(
653
+ "button",
654
+ {
655
+ type: "button",
656
+ "aria-pressed": le,
657
+ onClick: () => Rt(R),
658
+ className: Yt({ active: le }),
659
+ children: [
660
+ /* @__PURE__ */ r("span", { className: "ds:min-w-0 ds:truncate", children: R.label }),
661
+ le ? /* @__PURE__ */ r(
662
+ ra,
663
+ {
664
+ "aria-hidden": "true",
665
+ className: "ds:size-4 ds:shrink-0 ds:text-primary"
666
+ }
667
+ ) : null
668
+ ]
669
+ },
670
+ R.label
671
+ );
672
+ });
673
+ return yt && e.group ? /* @__PURE__ */ c(
674
+ "div",
675
+ {
676
+ role: "group",
677
+ "aria-labelledby": d,
678
+ className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]",
679
+ children: [
680
+ /* @__PURE__ */ r(
681
+ "div",
682
+ {
683
+ id: d,
684
+ className: Ut(),
685
+ children: e.group
686
+ }
687
+ ),
688
+ o
689
+ ]
690
+ },
691
+ e.group
692
+ ) : /* @__PURE__ */ r(Gt, { children: o }, e.group || "_ungrouped");
693
+ }) }) : null,
694
+ /* @__PURE__ */ c("div", { role: "region", "aria-labelledby": Ie, children: [
695
+ /* @__PURE__ */ r("span", { id: Ie, className: "ds:sr-only", children: n("inputs.dateRangePicker.gridLabel", "Calendar") }),
696
+ /* @__PURE__ */ r(
697
+ Ht,
698
+ {
699
+ mode: "range",
700
+ selected: a.from ? { from: a.from, to: a.to } : void 0,
701
+ onSelect: kt,
702
+ month: lt,
703
+ onMonthChange: X,
704
+ numberOfMonths: He,
705
+ weekStartsOn: M,
706
+ disabled: gt,
707
+ locale: u,
708
+ showOutsideDays: !0,
709
+ fixedWeeks: !0,
710
+ pagedNavigation: !0,
711
+ classNames: Xt,
712
+ modifiers: ht,
713
+ modifiersClassNames: Jt,
714
+ components: { Chevron: Qt }
715
+ }
716
+ )
717
+ ] })
718
+ ] }),
719
+ ge ? /* @__PURE__ */ c("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-sm)] ds:border-t ds:border-border ds:pt-[var(--spacing-sm)]", children: [
720
+ /* @__PURE__ */ r(
721
+ Vt,
722
+ {
723
+ id: ft,
724
+ label: n(
725
+ "inputs.dateRangePicker.compareLabel",
726
+ "Compare to previous period"
727
+ ),
728
+ size: "sm",
729
+ checked: ee,
730
+ onCheckedChange: ae
731
+ }
732
+ ),
733
+ T && v ? /* @__PURE__ */ c("span", { className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)] ds:text-[length:var(--font-size-xs)] ds:text-muted-foreground", children: [
734
+ /* @__PURE__ */ r(
735
+ "span",
736
+ {
737
+ "aria-hidden": "true",
738
+ className: "ds:inline-block ds:size-3 ds:rounded-[calc(var(--radius-sm)-2px)] ds:bg-[var(--calendar-compare-fill)] ds:border-b-2 ds:border-dashed ds:border-b-[var(--calendar-compare-edge)]"
739
+ }
740
+ ),
741
+ `${h(v.from, p, { locale: u })} – ${h(v.to, p, { locale: u })}`
742
+ ] }) : null,
743
+ ee ? /* @__PURE__ */ r(
744
+ z.Root,
745
+ {
746
+ value: De,
747
+ onValueChange: bt,
748
+ "aria-label": n(
749
+ "inputs.dateRangePicker.compareModeLabel",
750
+ "Comparison period"
751
+ ),
752
+ className: `${qe()} ds:ms-auto`,
753
+ children: ia.map((e) => /* @__PURE__ */ r(
754
+ z.Item,
755
+ {
756
+ value: e.value,
757
+ className: je(),
758
+ children: n(
759
+ `inputs.dateRangePicker.compareMode.${e.value}`,
760
+ e.fallback
761
+ )
762
+ },
763
+ e.value
764
+ ))
765
+ }
766
+ ) : null
767
+ ] }) : null,
768
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:items-center ds:justify-between ds:gap-[var(--spacing-md)] ds:border-t ds:border-border ds:pt-[var(--spacing-sm)]", children: [
769
+ /* @__PURE__ */ r(
770
+ "div",
771
+ {
772
+ role: "status",
773
+ "aria-live": "polite",
774
+ className: "type-body-sm ds:min-w-0 ds:truncate ds:text-muted-foreground",
775
+ children: St
776
+ }
777
+ ),
778
+ /* @__PURE__ */ c("div", { className: "ds:flex ds:shrink-0 ds:gap-[var(--spacing-xs)]", children: [
779
+ Ue ? /* @__PURE__ */ r(
780
+ "button",
781
+ {
782
+ type: "button",
783
+ onClick: xt,
784
+ className: B({ intent: "ghost" }),
785
+ children: n("inputs.dateRangePicker.clear", "Clear")
786
+ }
787
+ ) : null,
788
+ m === "apply" ? /* @__PURE__ */ c(wt, { children: [
789
+ /* @__PURE__ */ r(
790
+ "button",
791
+ {
792
+ type: "button",
793
+ onClick: oe,
794
+ className: B({ intent: "ghost" }),
795
+ children: n("inputs.dateRangePicker.cancel", "Cancel")
796
+ }
797
+ ),
798
+ /* @__PURE__ */ r(
799
+ "button",
800
+ {
801
+ type: "button",
802
+ disabled: !Me,
803
+ onClick: ne,
804
+ className: B({ intent: "primary" }),
805
+ children: n("inputs.dateRangePicker.apply", "Apply")
806
+ }
807
+ )
808
+ ] }) : /* @__PURE__ */ r(
809
+ "button",
810
+ {
811
+ type: "button",
812
+ onClick: Dt,
813
+ className: B({ intent: "primary" }),
814
+ children: n("inputs.dateRangePicker.done", "Done")
815
+ }
816
+ )
817
+ ] })
818
+ ] })
819
+ ] })
820
+ }
821
+ ) })
822
+ ]
823
+ }
824
+ ) });
825
+ }
826
+ );
827
+ da.displayName = "DateRangePicker";
828
+ export {
829
+ da as D,
830
+ oa as d
831
+ };
832
+ //# sourceMappingURL=date-range-picker-Cfv4Sr63.js.map