@datum-cloud/datum-ui 3.7.0 → 3.8.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 (196) hide show
  1. package/dist/{action-row-DTvs91_3.mjs → action-row-BEzE9x37.mjs} +2 -3
  2. package/dist/{adapter-context-h0jCVqGO.mjs → adapter-context-XT749tyT.mjs} +1 -2
  3. package/dist/alert/index.mjs +1 -2
  4. package/dist/{alert-SAPwee1h.mjs → alert-CVckvox4.mjs} +2 -3
  5. package/dist/app-navigation/index.mjs +2 -2
  6. package/dist/{app-navigation-BB_NLEWv.mjs → app-navigation-DyNZwlSG.mjs} +14 -20
  7. package/dist/assistant/index.mjs +57 -63
  8. package/dist/autocomplete/index.mjs +1 -2
  9. package/dist/{autocomplete-BxtzndxZ.mjs → autocomplete-D0zAcT78.mjs} +6 -8
  10. package/dist/autosearch/index.mjs +8 -10
  11. package/dist/avatar/index.mjs +2 -3
  12. package/dist/avatar-stack/index.mjs +1 -2
  13. package/dist/{avatar-stack-BUcsjhA6.mjs → avatar-stack-2ow672bR.mjs} +3 -4
  14. package/dist/badge/index.mjs +181 -1
  15. package/dist/breadcrumb/index.mjs +1 -2
  16. package/dist/{breadcrumb-DmdhC8bE.mjs → breadcrumb-D97jAZ2N.mjs} +2 -3
  17. package/dist/button/index.mjs +2 -2
  18. package/dist/{button-CsdF61EI.mjs → button-C57mkFkS.mjs} +2 -3
  19. package/dist/{button-DoMqfQLu.mjs → button-Cn4KagBO.mjs} +4 -6
  20. package/dist/{button-CDPui_Ov.mjs → button-IK-Lnu_9.mjs} +3 -4
  21. package/dist/button-group/index.mjs +1 -2
  22. package/dist/{button-group-DFrTH4L8.mjs → button-group-C3GKo-0p.mjs} +3 -4
  23. package/dist/calendar/index.mjs +4 -5
  24. package/dist/{calendar-date-picker-DPvVAW2I.mjs → calendar-date-picker-CknZM6a2.mjs} +3 -4
  25. package/dist/card/index.mjs +1 -2
  26. package/dist/{card-save-bar-BZzNnKYj.mjs → card-save-bar-Te8jf-ie.mjs} +5 -8
  27. package/dist/chart/index.mjs +1 -2
  28. package/dist/{chart-EgzTS28l.mjs → chart-BsGsx2jb.mjs} +2 -3
  29. package/dist/checkbox/index.mjs +1 -2
  30. package/dist/checkbox-BAo5sbHk.mjs +84 -0
  31. package/dist/{close.icon-DdXKQ4m0.mjs → close.icon-BCPmH4nN.mjs} +2 -3
  32. package/dist/code-editor/index.mjs +1 -2
  33. package/dist/{col-BYGWTB4j.mjs → col-CYHIfPJq.mjs} +5 -9
  34. package/dist/collapsible/index.mjs +1 -7
  35. package/dist/collapsible-B-KP3JZ-.mjs +104 -0
  36. package/dist/command/index.mjs +1 -2
  37. package/dist/{command-C0aGIYnQ.mjs → command-B0be-zU5.mjs} +3 -4
  38. package/dist/components/base/checkbox/checkbox.d.ts +11 -3
  39. package/dist/components/base/collapsible/collapsible.d.ts +28 -0
  40. package/dist/components/base/collapsible/index.d.ts +1 -1
  41. package/dist/components/base/radio-group/radio-group.d.ts +11 -5
  42. package/dist/components/base/spinner/index.d.ts +1 -1
  43. package/dist/components/base/spinner/spinner.d.ts +11 -0
  44. package/dist/components/base/switch/switch.d.ts +6 -1
  45. package/dist/components/base/typography/typography.d.ts +1 -1
  46. package/dist/components/features/_shared/copy-state-icon.d.ts +12 -0
  47. package/dist/components/features/_shared/index.d.ts +2 -0
  48. package/dist/components/features/_shared/motion-chip.d.ts +293 -0
  49. package/dist/components/features/assistant/components/message/plan-card.d.ts +1 -1
  50. package/dist/components/icons/spinner.icon.d.ts +17 -3
  51. package/dist/copy-state-icon-DMvXXsZm.mjs +61 -0
  52. package/dist/data-table/index.mjs +1 -2
  53. package/dist/{data-table-CJiQQ6TM.mjs → data-table-CpBwO8Ea.mjs} +39 -66
  54. package/dist/date-picker/index.mjs +3 -3
  55. package/dist/date-time/index.mjs +1 -2
  56. package/dist/{date-time-lZdefM4H.mjs → date-time-BBRVM9qb.mjs} +4 -6
  57. package/dist/date-time-picker/index.mjs +1 -2
  58. package/dist/{date-time-picker-CricsXgF.mjs → date-time-picker-Bc41Ixrs.mjs} +3 -4
  59. package/dist/{date-time-range-picker-DM4AIvQ1.mjs → date-time-range-picker-yy1Acntn.mjs} +36 -59
  60. package/dist/dialog/index.mjs +1 -2
  61. package/dist/{dialog-Gu70fban.mjs → dialog-C8RXIQYm.mjs} +4 -5
  62. package/dist/{dialog-CmkrpaYy.mjs → dialog-D6sDXaH6.mjs} +2 -3
  63. package/dist/dropdown/index.mjs +1 -2
  64. package/dist/{dropdown-Xvduih96.mjs → dropdown-DR9j3Ni_.mjs} +3 -4
  65. package/dist/{dropdown-menu-b8zY5Cs6.mjs → dropdown-menu-CjgTr8Ab.mjs} +2 -3
  66. package/dist/dropzone/index.mjs +1 -2
  67. package/dist/{dropzone-ihksfjN2.mjs → dropzone-qKYfSe7o.mjs} +6 -8
  68. package/dist/empty-content/index.mjs +1 -2
  69. package/dist/{empty-content-CmuVcU0P.mjs → empty-content-CTMHak36.mjs} +8 -13
  70. package/dist/form/adapters/conform/index.mjs +4 -6
  71. package/dist/form/adapters/rhf/index.mjs +6 -9
  72. package/dist/form/index.mjs +2 -2
  73. package/dist/form/stepper/index.mjs +11 -16
  74. package/dist/{form-D4R6C609.mjs → form-DTaVgDSV.mjs} +64 -89
  75. package/dist/{form-context-DzB2a-dw.mjs → form-context-BRzt53M5.mjs} +1 -2
  76. package/dist/grid/index.mjs +1 -2
  77. package/dist/grouped-table/index.mjs +1 -2
  78. package/dist/{grouped-table-fHguJz9W.mjs → grouped-table-Dl6DclbV.mjs} +17 -25
  79. package/dist/hooks/index.mjs +4 -4
  80. package/dist/{hooks-CwZ6hyI1.mjs → hooks-WVJbyhCz.mjs} +1 -2
  81. package/dist/hover-card/index.mjs +1 -2
  82. package/dist/{hover-card-BNOE5vT5.mjs → hover-card-DSt1lZGg.mjs} +3 -5
  83. package/dist/{icon-wrapper-DKfJlJd0.mjs → icon-wrapper-CIk2th6R.mjs} +1 -2
  84. package/dist/icons/index.mjs +3 -3
  85. package/dist/index.mjs +80 -80
  86. package/dist/input/index.mjs +1 -2
  87. package/dist/{input-j4tbmYYz.mjs → input-DsT5qkJn.mjs} +3 -4
  88. package/dist/{input-DR-XbgpD.mjs → input-Wl1K48ca.mjs} +2 -3
  89. package/dist/input-group/index.mjs +1 -2
  90. package/dist/{input-group-DieA8aBt.mjs → input-group-CCzvJIZM.mjs} +5 -6
  91. package/dist/input-number/index.mjs +1 -2
  92. package/dist/{input-number-TXmW-X9o.mjs → input-number-DF-bfIo8.mjs} +5 -6
  93. package/dist/input-with-addons/index.mjs +2 -3
  94. package/dist/label/index.mjs +1 -2
  95. package/dist/{label-Bk6FXsju.mjs → label-BR1V3Imy.mjs} +3 -5
  96. package/dist/{layers-DWYdrGmC.mjs → layers-DLUbkJtt.mjs} +26 -27
  97. package/dist/loader-overlay/index.mjs +1 -2
  98. package/dist/{loader-overlay-DD94azZX.mjs → loader-overlay-DP0pvHuG.mjs} +3 -4
  99. package/dist/logo/index.mjs +2 -2
  100. package/dist/logo/themed/index.mjs +3 -4
  101. package/dist/{logo-C3FxD7jb.mjs → logo-CkzKra6H.mjs} +2 -3
  102. package/dist/{logo-text-Dpm5O6Kg.mjs → logo-text-B54YiEte.mjs} +6 -11
  103. package/dist/logs/fixtures/index.mjs +2 -4
  104. package/dist/logs/index.mjs +68 -87
  105. package/dist/map/index.mjs +1 -2
  106. package/dist/{map-leaflet-imports-S3kx8Q-S.mjs → map-leaflet-imports-Xdz9Xiaf.mjs} +1 -2
  107. package/dist/mobile-sheet/index.mjs +1 -2
  108. package/dist/{mobile-sheet-9TootJGg.mjs → mobile-sheet-1995HYY_.mjs} +6 -9
  109. package/dist/more-actions/index.mjs +2 -2
  110. package/dist/{more-actions-C3DYWO0a.mjs → more-actions-BlSOVwa8.mjs} +6 -7
  111. package/dist/{motion-DvGRWdsm.mjs → motion-DOrRbLmy.mjs} +1 -2
  112. package/dist/motion-chip-BczV7spP.mjs +52 -0
  113. package/dist/multi-select/index.mjs +1 -2
  114. package/dist/{multi-select-CF0Yq5yf.mjs → multi-select-C2cBrqXl.mjs} +61 -57
  115. package/dist/nprogress/index.mjs +1 -2
  116. package/dist/page-title/index.mjs +1 -2
  117. package/dist/{page-title-ipRWEOeM.mjs → page-title-Djl3LvPT.mjs} +2 -3
  118. package/dist/picker/index.mjs +2 -2
  119. package/dist/{picker-BoKXW6_s.mjs → picker-DC3GErYg.mjs} +14 -25
  120. package/dist/popover/index.mjs +1 -2
  121. package/dist/{popover-X82NwhX9.mjs → popover-7YxyP_W0.mjs} +3 -5
  122. package/dist/radio-group/index.mjs +1 -2
  123. package/dist/radio-group-Boxi2hm0.mjs +83 -0
  124. package/dist/responsive-dropdown/index.mjs +1 -2
  125. package/dist/{responsive-dropdown-C_KKgLbH.mjs → responsive-dropdown-DsWgpE_i.mjs} +5 -6
  126. package/dist/responsive-popover/index.mjs +1 -2
  127. package/dist/{responsive-popover-8VcjBM2d.mjs → responsive-popover-DJYd8lOK.mjs} +5 -6
  128. package/dist/rich-text-content/index.mjs +1 -2
  129. package/dist/{rich-text-content-DNonBD39.mjs → rich-text-content-BiIIowBU.mjs} +2 -3
  130. package/dist/rich-text-editor/index.mjs +2 -2
  131. package/dist/{rich-text-editor-CP1YyxMR.mjs → rich-text-editor-BUz06s-b.mjs} +14 -22
  132. package/dist/select/index.mjs +1 -2
  133. package/dist/{select-D4pk9e2d.mjs → select-DemYhwnG.mjs} +3 -4
  134. package/dist/{select-daE2Nn0Z.mjs → select-jgK6wyXj.mjs} +2 -3
  135. package/dist/separator/index.mjs +1 -2
  136. package/dist/{separator-vbPD_WFQ.mjs → separator-DNiiN2BN.mjs} +2 -3
  137. package/dist/settings-nav/index.mjs +1 -2
  138. package/dist/{settings-nav-Hf3GrCGv.mjs → settings-nav-CCZdPD-x.mjs} +2 -3
  139. package/dist/sheet/index.mjs +2 -2
  140. package/dist/{sheet-DHn6C_rs.mjs → sheet-DEpEJ_Rk.mjs} +4 -5
  141. package/dist/{sheet-DXCZyMHI.mjs → sheet-DYPtVIb2.mjs} +2 -3
  142. package/dist/sidebar/index.mjs +1 -2
  143. package/dist/{sidebar-sbqOOFii.mjs → sidebar-DWnxQWQ8.mjs} +13 -18
  144. package/dist/skeleton/index.mjs +3 -4
  145. package/dist/{skeleton-DFExK4GX.mjs → skeleton-CDPoo7-M.mjs} +2 -3
  146. package/dist/spinner/index.mjs +1 -2
  147. package/dist/spinner-DSlDJdWl.mjs +23 -0
  148. package/dist/spinner.icon-BiUnMAxw.mjs +104 -0
  149. package/dist/stepper/index.mjs +1 -2
  150. package/dist/{stepper-dNvkipop.mjs → stepper-ZipxpzWY.mjs} +10 -11
  151. package/dist/switch/index.mjs +1 -2
  152. package/dist/switch-IduVwiPZ.mjs +114 -0
  153. package/dist/table/index.mjs +2 -3
  154. package/dist/tabs/index.mjs +3 -4
  155. package/dist/tag-input/index.mjs +1 -2
  156. package/dist/{tag-input-c9OvWTSe.mjs → tag-input-a3ktkGrH.mjs} +46 -43
  157. package/dist/task-queue/index.mjs +1 -2
  158. package/dist/{task-queue-dropdown-CHPP5WIm.mjs → task-queue-dropdown-DuCAAybs.mjs} +39 -59
  159. package/dist/textarea/index.mjs +1 -2
  160. package/dist/{textarea-DiSGxCBO.mjs → textarea-CvhdK6JY.mjs} +3 -4
  161. package/dist/{textarea-CCxpXJdh.mjs → textarea-D36SE4ki.mjs} +2 -3
  162. package/dist/theme/index.mjs +1 -2
  163. package/dist/{themes-Ba2bajuF.mjs → themes-BoxnQbbu.mjs} +8 -10
  164. package/dist/time-picker/index.mjs +1 -2
  165. package/dist/{time-picker-DQlc2gKW.mjs → time-picker-B_am4eAK.mjs} +3 -4
  166. package/dist/{to-api-format-QuJ81vQ9.mjs → to-api-format-DyImCzCn.mjs} +15 -23
  167. package/dist/toast/index.mjs +2 -2
  168. package/dist/{toast-BUPlDkN3.mjs → toast-CizxCEcK.mjs} +4 -6
  169. package/dist/tooltip/index.mjs +1 -2
  170. package/dist/{tooltip-DhbN1BDK.mjs → tooltip-OIySjJWW.mjs} +3 -5
  171. package/dist/transfer/index.mjs +1 -2
  172. package/dist/{transfer-DsshYgIk.mjs → transfer-DGUeAQUL.mjs} +8 -14
  173. package/dist/{types-agDpVXBG.mjs → types-ChINrR8H.mjs} +7 -11
  174. package/dist/typography/index.mjs +1 -2
  175. package/dist/{typography-B1bpHKmV.mjs → typography-XFfN6PGD.mjs} +2 -3
  176. package/dist/{use-breakpoint-CwiUJSmk.mjs → use-breakpoint-zY_JYINK.mjs} +1 -2
  177. package/dist/{use-controllable-state-Dna7u3r9.mjs → use-controllable-state-DLeVgbAb.mjs} +1 -2
  178. package/dist/{use-copy-to-clipboard-DZDq_85T.mjs → use-copy-to-clipboard-CWKWHLxI.mjs} +1 -2
  179. package/dist/{use-debounced-search-input-yu_F0QBt.mjs → use-debounced-search-input-B4u28iLx.mjs} +1 -2
  180. package/dist/{use-deprecation-warning-DXrGc0jX.mjs → use-deprecation-warning-BS1V4IS5.mjs} +1 -2
  181. package/dist/{use-display-touched-CMEEv7aT.mjs → use-display-touched-BSq0Ninl.mjs} +3 -5
  182. package/dist/{use-option-picker-s2bUYwXC.mjs → use-option-picker-DXY2SNnT.mjs} +6 -9
  183. package/dist/{use-toast-Bpq0yJIT.mjs → use-toast-CZAZeS95.mjs} +3 -5
  184. package/dist/utils/index.mjs +3 -3
  185. package/dist/{utils-CA4QEIJ8.mjs → utils-CPJ5MCfd.mjs} +1 -2
  186. package/dist/{utils-Bu32wN-x.mjs → utils-CTIuhCOs.mjs} +1 -2
  187. package/dist/visually-hidden/index.mjs +1 -2
  188. package/dist/{visuallyhidden-D7L_qs8b.mjs → visuallyhidden-Mg4OsZ-l.mjs} +1 -2
  189. package/dist/{zod-helpers-YEhVo2S-.mjs → zod-helpers-JcfFVJJd.mjs} +1 -2
  190. package/package.json +20 -23
  191. package/dist/badge-DOZUr5DV.mjs +0 -183
  192. package/dist/checkbox-C6P12fio.mjs +0 -30
  193. package/dist/radio-group-LduBVTnh.mjs +0 -45
  194. package/dist/spinner-C5Xv-i2C.mjs +0 -14
  195. package/dist/spinner.icon-BYUMQ8H-.mjs +0 -48
  196. package/dist/switch-BaR-Vna4.mjs +0 -34
@@ -0,0 +1,61 @@
1
+ import { n as EASE, t as DURATION } from "./motion-DOrRbLmy.mjs";
2
+ import { CheckIcon, CopyIcon } from "lucide-react";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ import { motion, useReducedMotion } from "motion/react";
5
+ // src/components/features/_shared/copy-state-icon.tsx
6
+ const TRANSITION = {
7
+ duration: DURATION.fast,
8
+ ease: EASE.out
9
+ };
10
+ const SHOWN = {
11
+ opacity: 1,
12
+ scale: 1,
13
+ filter: "blur(0px)"
14
+ };
15
+ const HIDDEN = {
16
+ opacity: 0,
17
+ scale: .5,
18
+ filter: "blur(2px)"
19
+ };
20
+ const HIDDEN_REDUCED = {
21
+ opacity: 0,
22
+ scale: 1,
23
+ filter: "blur(0px)"
24
+ };
25
+ /**
26
+ * Copy glyph that turns into a check once the copy has happened, and back again
27
+ * when `copied` resets. The two glyphs are stacked and cross-fade with a scale
28
+ * and a light blur, so the swap reads as one icon changing rather than two
29
+ * swapping places. Under reduced motion it only fades.
30
+ *
31
+ * Decorative: the owning button carries the accessible label.
32
+ */
33
+ function CopyStateIcon({ copied, ...iconProps }) {
34
+ const hidden = Boolean(useReducedMotion()) ? HIDDEN_REDUCED : HIDDEN;
35
+ return /* @__PURE__ */ jsxs("span", {
36
+ "aria-hidden": true,
37
+ "data-slot": "copy-state-icon",
38
+ "data-copied": copied,
39
+ className: "inline-grid shrink-0 place-items-center",
40
+ children: [/* @__PURE__ */ jsx(motion.span, {
41
+ className: "flex [grid-area:1/1]",
42
+ initial: false,
43
+ animate: copied ? hidden : SHOWN,
44
+ transition: TRANSITION,
45
+ children: /* @__PURE__ */ jsx(CopyIcon, {
46
+ "aria-hidden": true,
47
+ ...iconProps
48
+ })
49
+ }), /* @__PURE__ */ jsx(motion.span, {
50
+ className: "flex [grid-area:1/1]",
51
+ initial: false,
52
+ animate: copied ? SHOWN : hidden,
53
+ transition: TRANSITION,
54
+ children: /* @__PURE__ */ jsx(CheckIcon, {
55
+ "aria-hidden": true,
56
+ ...iconProps
57
+ })
58
+ })]
59
+ });
60
+ }
61
+ export { CopyStateIcon as t };
@@ -1,2 +1 @@
1
- import { _ as useNuqsAdapter, a as useDataTablePagination, b as DEFAULT_PAGE_SIZE, c as useDataTableSelection, d as resolvePath, f as rowMatchesSearch, g as createSelectionColumn, h as DataTableColumnHeader, i as useDataTableLoading, l as useDataTableSorting, m as DataTableRowActions, n as useDataTableFilters, o as useDataTableRows, p as dataTableFeatures, r as useDataTableInlineContents, s as useDataTableSearch, t as DataTable, u as createDataTableStore, v as DEFAULT_DEBOUNCE_MS, x as DEFAULT_PAGE_SIZES, y as DEFAULT_LOADING_ROWS } from "../data-table-CJiQQ6TM.mjs";
2
- export { DEFAULT_DEBOUNCE_MS, DEFAULT_LOADING_ROWS, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZES, DataTable, DataTableColumnHeader, DataTableRowActions, createDataTableStore, createSelectionColumn, dataTableFeatures, resolvePath, rowMatchesSearch, useDataTableFilters, useDataTableInlineContents, useDataTableLoading, useDataTablePagination, useDataTableRows, useDataTableSearch, useDataTableSelection, useDataTableSorting, useNuqsAdapter };
1
+ export { v as DEFAULT_DEBOUNCE_MS, y as DEFAULT_LOADING_ROWS, b as DEFAULT_PAGE_SIZE, x as DEFAULT_PAGE_SIZES, t as DataTable, h as DataTableColumnHeader, m as DataTableRowActions, u as createDataTableStore, g as createSelectionColumn, p as dataTableFeatures, d as resolvePath, f as rowMatchesSearch, n as useDataTableFilters, r as useDataTableInlineContents, i as useDataTableLoading, a as useDataTablePagination, o as useDataTableRows, s as useDataTableSearch, c as useDataTableSelection, l as useDataTableSorting, _ as useNuqsAdapter } from "../data-table-CpBwO8Ea.mjs";
@@ -1,23 +1,23 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as Badge } from "./badge-DOZUr5DV.mjs";
3
- import { t as Button } from "./button-DoMqfQLu.mjs";
4
- import { t as Checkbox } from "./checkbox-C6P12fio.mjs";
5
- import { t as Input } from "./input-j4tbmYYz.mjs";
6
- import { t as ResponsiveDropdown } from "./responsive-dropdown-C_KKgLbH.mjs";
7
- import { i as SelectItem, l as SelectTrigger, n as SelectContent, t as Select, u as SelectValue } from "./select-D4pk9e2d.mjs";
1
+ import { t as Checkbox } from "./checkbox-BAo5sbHk.mjs";
2
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
3
+ import { t as Button } from "./button-Cn4KagBO.mjs";
4
+ import { t as ResponsiveDropdown } from "./responsive-dropdown-DsWgpE_i.mjs";
5
+ import { t as ActionRow } from "./action-row-BEzE9x37.mjs";
6
+ import { Badge } from "./badge/index.mjs";
8
7
  import { Skeleton } from "./skeleton/index.mjs";
9
8
  import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "./table/index.mjs";
10
- import { t as Autocomplete } from "./autocomplete-BxtzndxZ.mjs";
11
- import { t as CalendarDatePicker } from "./calendar-date-picker-DPvVAW2I.mjs";
12
- import { t as ActionRow } from "./action-row-DTvs91_3.mjs";
13
- import { n as useDebouncedSearchInput } from "./use-debounced-search-input-yu_F0QBt.mjs";
14
- import { t as MultiSelect } from "./multi-select-CF0Yq5yf.mjs";
9
+ import { i as SelectItem, l as SelectTrigger, n as SelectContent, t as Select, u as SelectValue } from "./select-DemYhwnG.mjs";
10
+ import { t as Input } from "./input-DsT5qkJn.mjs";
11
+ import { n as useDebouncedSearchInput } from "./use-debounced-search-input-B4u28iLx.mjs";
12
+ import { t as MultiSelect } from "./multi-select-C2cBrqXl.mjs";
13
+ import { t as CalendarDatePicker } from "./calendar-date-picker-CknZM6a2.mjs";
14
+ import { t as Autocomplete } from "./autocomplete-D0zAcT78.mjs";
15
15
  import { ArrowDown, ArrowUp, ArrowUpDown, ChevronLeft, ChevronRight, MoreHorizontal, Search, X } from "lucide-react";
16
16
  import { createContext, memo, use, useCallback, useContext, useEffect, useId, useMemo, useRef, useState, useSyncExternalStore } from "react";
17
17
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
18
18
  import { parseAsInteger, parseAsString, useQueryStates } from "nuqs";
19
19
  import { columnFilteringFeature, columnSizingFeature, columnVisibilityFeature, createFilteredRowModel, createPaginatedRowModel, createSortedRowModel, filterFns, flexRender, globalFilteringFeature, rowPaginationFeature, rowSelectionFeature, rowSortingFeature, sortFns, tableFeatures, useTable } from "@tanstack/react-table";
20
- //#region src/components/features/data-table/constants.ts
20
+ // src/components/features/data-table/constants.ts
21
21
  const DEFAULT_PAGE_SIZE = 20;
22
22
  const DEFAULT_PAGE_SIZES = [
23
23
  10,
@@ -27,8 +27,7 @@ const DEFAULT_PAGE_SIZES = [
27
27
  ];
28
28
  const DEFAULT_DEBOUNCE_MS = 300;
29
29
  const DEFAULT_LOADING_ROWS = 5;
30
- //#endregion
31
- //#region src/components/features/data-table/adapters/nuqs-adapter.ts
30
+ // src/components/features/data-table/adapters/nuqs-adapter.ts
32
31
  /**
33
32
  * Serialize SortingState to URL-friendly string.
34
33
  * Format: "name" (asc), "-name" (desc), comma-separated for multi-sort.
@@ -118,8 +117,7 @@ function useNuqsAdapter(options = {}) {
118
117
  filterParsers
119
118
  ]);
120
119
  }
121
- //#endregion
122
- //#region src/components/features/data-table/columns/selection-column.tsx
120
+ // src/components/features/data-table/columns/selection-column.tsx
123
121
  const SELECTION_COLUMN_ID = "select";
124
122
  function createSelectionColumn(options = {}) {
125
123
  const { className, headerClassName, renderHeader, renderCell } = options;
@@ -149,8 +147,7 @@ function withSelectionColumn(columns, options = {}) {
149
147
  if (hasSelectionColumn(columns)) return columns;
150
148
  return [createSelectionColumn(options), ...columns];
151
149
  }
152
- //#endregion
153
- //#region src/components/features/data-table/components/column-header.tsx
150
+ // src/components/features/data-table/components/column-header.tsx
154
151
  /** Figma `Datum App UI/Tables/Header/Dropdown` — two carets, one dimmed to show sort direction. */
155
152
  function CompactSortIcon({ sorted }) {
156
153
  return /* @__PURE__ */ jsxs("span", {
@@ -211,8 +208,7 @@ function DataTableColumnHeader({ column, title, className, density = "default" }
211
208
  })
212
209
  });
213
210
  }
214
- //#endregion
215
- //#region src/components/features/data-table/components/row-actions.tsx
211
+ // src/components/features/data-table/components/row-actions.tsx
216
212
  function DataTableRowActions({ row, actions, isLoading = false, className, responsive = true, sheetTitle = "Actions" }) {
217
213
  const [open, setOpen] = useState(false);
218
214
  const data = row.original;
@@ -246,8 +242,7 @@ function DataTableRowActions({ row, actions, isLoading = false, className, respo
246
242
  }, action.label))
247
243
  });
248
244
  }
249
- //#endregion
250
- //#region src/components/features/data-table/core/features.ts
245
+ // src/components/features/data-table/core/features.ts
251
246
  /**
252
247
  * The single TanStack Table v9 feature set used by every table in this package.
253
248
  *
@@ -280,8 +275,7 @@ const dataTableFeatures = tableFeatures({
280
275
  filterFns,
281
276
  sortFns
282
277
  });
283
- //#endregion
284
- //#region src/components/features/data-table/core/filter-engine.ts
278
+ // src/components/features/data-table/core/filter-engine.ts
285
279
  /**
286
280
  * Resolve a dot-path on an object (e.g. "status.registrationApproval").
287
281
  * Falls back to a flat key lookup when the path has no dots.
@@ -352,8 +346,7 @@ function applyFilters(data, filters, search, registeredFilters, customFilterFns,
352
346
  return true;
353
347
  });
354
348
  }
355
- //#endregion
356
- //#region src/components/features/data-table/core/store.ts
349
+ // src/components/features/data-table/core/store.ts
357
350
  /**
358
351
  * Keep only the selection keys whose rows survive a data change.
359
352
  * Dropping vanished keys stops a deleted row's selection from
@@ -592,8 +585,7 @@ function createDataTableStore(options) {
592
585
  }
593
586
  };
594
587
  }
595
- //#endregion
596
- //#region src/components/features/data-table/core/data-table-context.tsx
588
+ // src/components/features/data-table/core/data-table-context.tsx
597
589
  const DataTableStoreContext = createContext(null);
598
590
  const TableInstanceContext = createContext(null);
599
591
  /**
@@ -625,8 +617,7 @@ function useDataTableStore() {
625
617
  function useTableInstanceOrNull() {
626
618
  return use(TableInstanceContext);
627
619
  }
628
- //#endregion
629
- //#region src/components/features/data-table/hooks/use-selectors.ts
620
+ // src/components/features/data-table/hooks/use-selectors.ts
630
621
  function shallowEqual(a, b) {
631
622
  const keysA = Object.keys(a);
632
623
  const keysB = Object.keys(b);
@@ -752,8 +743,7 @@ function useDataTableInlineContents() {
752
743
  unregisterInlineContent: store.unregisterInlineContent
753
744
  }), [store]));
754
745
  }
755
- //#endregion
756
- //#region src/components/features/data-table/components/active-filters.tsx
746
+ // src/components/features/data-table/components/active-filters.tsx
757
747
  function formatValue(column, value, formatters) {
758
748
  const fn = formatters?.[column];
759
749
  if (fn) return fn(value);
@@ -898,8 +888,7 @@ function ActiveFiltersInner({ label = "Selected Filters", excludeFilters, filter
898
888
  });
899
889
  }
900
890
  const DataTableActiveFilters = memo(ActiveFiltersInner);
901
- //#endregion
902
- //#region src/components/features/data-table/components/bulk-actions.tsx
891
+ // src/components/features/data-table/components/bulk-actions.tsx
903
892
  function DataTableBulkActions({ children, className }) {
904
893
  const { selectedRows } = useDataTableSelection();
905
894
  if (selectedRows.length === 0) return null;
@@ -909,8 +898,7 @@ function DataTableBulkActions({ children, className }) {
909
898
  children: children(selectedRows)
910
899
  });
911
900
  }
912
- //#endregion
913
- //#region src/components/features/data-table/components/content.tsx
901
+ // src/components/features/data-table/components/content.tsx
914
902
  /**
915
903
  * Per-slot class presets keyed by `density`. `'default'` is intentionally empty
916
904
  * so omitting `density` (or passing `'default'`) renders identically to before
@@ -1019,8 +1007,7 @@ function DataTableContent({ emptyMessage, className, tableClassName, headerClass
1019
1007
  })
1020
1008
  });
1021
1009
  }
1022
- //#endregion
1023
- //#region src/components/features/data-table/components/inline-content.tsx
1010
+ // src/components/features/data-table/components/inline-content.tsx
1024
1011
  function DataTableInlineContent({ position, rowId, open, onClose, className, children }) {
1025
1012
  const id = useId();
1026
1013
  const { registerInlineContent, unregisterInlineContent } = useDataTableInlineContents();
@@ -1069,8 +1056,7 @@ function DataTableInlineContent({ position, rowId, open, onClose, className, chi
1069
1056
  ]);
1070
1057
  return null;
1071
1058
  }
1072
- //#endregion
1073
- //#region src/components/features/data-table/components/list-pagination.tsx
1059
+ // src/components/features/data-table/components/list-pagination.tsx
1074
1060
  const DEFAULT_LIST_PAGE_SIZES = [
1075
1061
  10,
1076
1062
  20,
@@ -1147,8 +1133,7 @@ function DataTableListPagination({ pageSizes = DEFAULT_LIST_PAGE_SIZES, resource
1147
1133
  })]
1148
1134
  });
1149
1135
  }
1150
- //#endregion
1151
- //#region src/components/features/data-table/components/search.tsx
1136
+ // src/components/features/data-table/components/search.tsx
1152
1137
  function DataTableSearch({ placeholder = "Search...", debounceMs = 300, className, disabled }) {
1153
1138
  const { search, setSearch } = useDataTableSearch();
1154
1139
  const [inputValue, setInputValue] = useDebouncedSearchInput(search, setSearch, debounceMs);
@@ -1162,8 +1147,7 @@ function DataTableSearch({ placeholder = "Search...", debounceMs = 300, classNam
1162
1147
  "data-slot": "dt-search"
1163
1148
  });
1164
1149
  }
1165
- //#endregion
1166
- //#region src/components/features/data-table/components/list-panel.tsx
1150
+ // src/components/features/data-table/components/list-panel.tsx
1167
1151
  const LOADING_SKELETON_ROWS = 8;
1168
1152
  const SEARCH_INPUT_CLASS = "h-10 border-0 bg-transparent pl-9 shadow-none focus-visible:shadow-none focus-visible:ring-0";
1169
1153
  function ListPanelSkeleton({ columnCount }) {
@@ -1238,8 +1222,7 @@ function DataTableListPanel({ search = {}, searchSlot, toolbar, emptyMessage, lo
1238
1222
  ]
1239
1223
  });
1240
1224
  }
1241
- //#endregion
1242
- //#region src/components/features/data-table/components/loading.tsx
1225
+ // src/components/features/data-table/components/loading.tsx
1243
1226
  function DataTableLoading({ rows = 5, columns = 4, className }) {
1244
1227
  return /* @__PURE__ */ jsx("div", {
1245
1228
  className,
@@ -1248,8 +1231,7 @@ function DataTableLoading({ rows = 5, columns = 4, className }) {
1248
1231
  children: /* @__PURE__ */ jsxs(Table, { children: [/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsx(TableRow, { children: Array.from({ length: columns }, (_, i) => /* @__PURE__ */ jsx(TableHead, { children: /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-24" }) }, i)) }) }), /* @__PURE__ */ jsx(TableBody, { children: Array.from({ length: rows }, (_, rowIndex) => /* @__PURE__ */ jsx(TableRow, { children: Array.from({ length: columns }, (_, colIndex) => /* @__PURE__ */ jsx(TableCell, { children: /* @__PURE__ */ jsx(Skeleton, { className: "h-4 w-full" }) }, colIndex)) }, rowIndex)) })] })
1249
1232
  });
1250
1233
  }
1251
- //#endregion
1252
- //#region src/components/features/data-table/components/pagination.tsx
1234
+ // src/components/features/data-table/components/pagination.tsx
1253
1235
  /**
1254
1236
  * Generates page numbers with ellipsis for large page counts.
1255
1237
  * Shows up to 7 items: first, last, current +/- 1 neighbor, and ellipsis gaps.
@@ -1371,8 +1353,7 @@ function DataTablePagination({ pageSizes = DEFAULT_PAGE_SIZES, className }) {
1371
1353
  })]
1372
1354
  });
1373
1355
  }
1374
- //#endregion
1375
- //#region src/components/features/data-table/hooks/use-data-table-client.ts
1356
+ // src/components/features/data-table/hooks/use-data-table-client.ts
1376
1357
  /**
1377
1358
  * Creates a TanStack Table instance from an existing store.
1378
1359
  * Does NOT create the store or sync data — the caller is responsible for that.
@@ -1449,8 +1430,7 @@ function useClientTable(store, options) {
1449
1430
  ]);
1450
1431
  return { table };
1451
1432
  }
1452
- //#endregion
1453
- //#region src/components/features/data-table/core/client-provider.tsx
1433
+ // src/components/features/data-table/core/client-provider.tsx
1454
1434
  /**
1455
1435
  * Inner component that calls useClientTable.
1456
1436
  * Only rendered after hydration (gated by tableReady).
@@ -1531,8 +1511,7 @@ function ClientProvider(props) {
1531
1511
  })
1532
1512
  });
1533
1513
  }
1534
- //#endregion
1535
- //#region src/components/features/data-table/hooks/use-data-table-server.ts
1514
+ // src/components/features/data-table/hooks/use-data-table-server.ts
1536
1515
  /**
1537
1516
  * Creates a TanStack Table instance from an existing store.
1538
1517
  * Handles fetch-on-query-change, cursor pagination, and state adapter sync.
@@ -1672,8 +1651,7 @@ function useServerTable(store, options) {
1672
1651
  ]);
1673
1652
  return { table };
1674
1653
  }
1675
- //#endregion
1676
- //#region src/components/features/data-table/core/server-provider.tsx
1654
+ // src/components/features/data-table/core/server-provider.tsx
1677
1655
  /**
1678
1656
  * Inner component that calls useServerTable.
1679
1657
  * Only rendered after hydration (gated by tableReady).
@@ -1729,8 +1707,7 @@ function ServerProvider(props) {
1729
1707
  })
1730
1708
  });
1731
1709
  }
1732
- //#endregion
1733
- //#region src/components/features/data-table/filters/checkbox-filter.tsx
1710
+ // src/components/features/data-table/filters/checkbox-filter.tsx
1734
1711
  function CheckboxFilter({ column, label, options, className, disabled, responsive, sheetTitle, modal }) {
1735
1712
  const { filters, setFilter, clearFilter, registerFilter, unregisterFilter } = useDataTableFilters();
1736
1713
  useEffect(() => {
@@ -1760,8 +1737,7 @@ function CheckboxFilter({ column, label, options, className, disabled, responsiv
1760
1737
  className
1761
1738
  });
1762
1739
  }
1763
- //#endregion
1764
- //#region src/components/features/data-table/filters/date-picker-filter.tsx
1740
+ // src/components/features/data-table/filters/date-picker-filter.tsx
1765
1741
  function DatePickerFilter({ column, label, className, datePickerPopoverClassName, disableFuture, disablePast, minDate, maxDate, disabled }) {
1766
1742
  const { filters, setFilter, clearFilter, registerFilter, unregisterFilter } = useDataTableFilters();
1767
1743
  const rawValue = filters[column];
@@ -1802,8 +1778,7 @@ function DatePickerFilter({ column, label, className, datePickerPopoverClassName
1802
1778
  })
1803
1779
  });
1804
1780
  }
1805
- //#endregion
1806
- //#region src/components/features/data-table/filters/select-filter.tsx
1781
+ // src/components/features/data-table/filters/select-filter.tsx
1807
1782
  function SelectFilter({ column, label, options, placeholder, searchable = true, className, selectPopoverClassName, disabled, responsive, sheetTitle, modal }) {
1808
1783
  const { filters, setFilter, clearFilter, registerFilter, unregisterFilter } = useDataTableFilters();
1809
1784
  const value = filters[column];
@@ -1834,8 +1809,7 @@ function SelectFilter({ column, label, options, placeholder, searchable = true,
1834
1809
  triggerClassName: "h-10"
1835
1810
  });
1836
1811
  }
1837
- //#endregion
1838
- //#region src/components/features/data-table/data-table.tsx
1812
+ // src/components/features/data-table/data-table.tsx
1839
1813
  const DataTable = {
1840
1814
  Client: ClientProvider,
1841
1815
  Server: ServerProvider,
@@ -1854,5 +1828,4 @@ const DataTable = {
1854
1828
  CheckboxFilter,
1855
1829
  DatePickerFilter
1856
1830
  };
1857
- //#endregion
1858
1831
  export { useNuqsAdapter as _, useDataTablePagination as a, DEFAULT_PAGE_SIZE as b, useDataTableSelection as c, resolvePath as d, rowMatchesSearch as f, createSelectionColumn as g, DataTableColumnHeader as h, useDataTableLoading as i, useDataTableSorting as l, DataTableRowActions as m, useDataTableFilters as n, useDataTableRows as o, dataTableFeatures as p, useDataTableInlineContents as r, useDataTableSearch as s, DataTable as t, createDataTableStore as u, DEFAULT_DEBOUNCE_MS as v, DEFAULT_PAGE_SIZES as x, DEFAULT_LOADING_ROWS as y };
@@ -1,4 +1,4 @@
1
- import { M as getBrowserTimezone, N as getTimezoneOffset, j as formatTimezoneLabel } from "../date-time-range-picker-DM4AIvQ1.mjs";
2
- import { t as CalendarDatePicker } from "../calendar-date-picker-DPvVAW2I.mjs";
3
- import { _ as getShortTimezoneDisplay, a as TimeRangePicker, b as utcToLocalInputString, c as getPresetByKey, d as TimezoneSelector, f as QuickRangesPanel, g as getDefaultTimezoneOptions, h as formatUtcForDisplay, i as formatTimeRangeDisplay, l as getPresetByShortcut, m as createTimezoneOption, n as formatDateForInput, o as DEFAULT_PRESETS, p as CustomRangePanel, r as formatSingleTimeDisplay, s as getDefaultPreset, t as toApiTimeRange, u as getPresetRange, v as localInputStringToUtc, x as zonedDateToUtcString, y as utcStringToZonedDate } from "../to-api-format-QuJ81vQ9.mjs";
1
+ import { M as getBrowserTimezone, N as getTimezoneOffset, j as formatTimezoneLabel } from "../date-time-range-picker-yy1Acntn.mjs";
2
+ import { t as CalendarDatePicker } from "../calendar-date-picker-CknZM6a2.mjs";
3
+ import { _ as getShortTimezoneDisplay, a as TimeRangePicker, b as utcToLocalInputString, c as getPresetByKey, d as TimezoneSelector, f as QuickRangesPanel, g as getDefaultTimezoneOptions, h as formatUtcForDisplay, i as formatTimeRangeDisplay, l as getPresetByShortcut, m as createTimezoneOption, n as formatDateForInput, o as DEFAULT_PRESETS, p as CustomRangePanel, r as formatSingleTimeDisplay, s as getDefaultPreset, t as toApiTimeRange, u as getPresetRange, v as localInputStringToUtc, x as zonedDateToUtcString, y as utcStringToZonedDate } from "../to-api-format-DyImCzCn.mjs";
4
4
  export { CustomRangePanel as AbsoluteRangePanel, CustomRangePanel, CalendarDatePicker, DEFAULT_PRESETS, QuickRangesPanel, TimeRangePicker, TimezoneSelector, createTimezoneOption, formatDateForInput, formatSingleTimeDisplay, formatTimeRangeDisplay, formatTimezoneLabel, formatUtcForDisplay, getBrowserTimezone, getDefaultPreset, getDefaultTimezoneOptions, getPresetByKey, getPresetByShortcut, getPresetRange, getShortTimezoneDisplay, getTimezoneOffset, localInputStringToUtc, toApiTimeRange, utcStringToZonedDate, utcToLocalInputString, zonedDateToUtcString };
@@ -1,2 +1 @@
1
- import { a as formatRelativeDate, d as parseDate, i as formatCombinedDate, l as getTimestamp, n as DEFAULT_DATE_FORMAT, o as formatTimezoneDate, r as formatAbsoluteDate, s as formatUTCDate, t as DateTime, u as getTimezoneAbbreviation } from "../date-time-lZdefM4H.mjs";
2
- export { DEFAULT_DATE_FORMAT, DateTime, formatAbsoluteDate, formatCombinedDate, formatRelativeDate, formatTimezoneDate, formatUTCDate, getTimestamp, getTimezoneAbbreviation, parseDate };
1
+ export { n as DEFAULT_DATE_FORMAT, t as DateTime, r as formatAbsoluteDate, i as formatCombinedDate, a as formatRelativeDate, o as formatTimezoneDate, s as formatUTCDate, l as getTimestamp, u as getTimezoneAbbreviation, d as parseDate } from "../date-time-BBRVM9qb.mjs";
@@ -1,10 +1,10 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as Tooltip } from "./tooltip-DhbN1BDK.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { t as Tooltip } from "./tooltip-OIySjJWW.mjs";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
  import { formatInTimeZone } from "date-fns-tz";
5
5
  import { format, formatDistanceToNowStrict } from "date-fns";
6
6
  import { enUS } from "date-fns/locale/en-US";
7
- //#region src/components/features/date-time/formatters.ts
7
+ // src/components/features/date-time/formatters.ts
8
8
  /** e.g. "June 12th at 11:30 AM" — used for absolute / table dates. */
9
9
  const DEFAULT_DATE_FORMAT = "MMMM do 'at' h:mm a";
10
10
  function getBrowserTimezone() {
@@ -43,8 +43,7 @@ function formatTimezoneDate(date, timezone, format = "dd MMM yy HH:mm:ss") {
43
43
  function getTimestamp(date) {
44
44
  return (date.getTime() * 1e3).toString();
45
45
  }
46
- //#endregion
47
- //#region src/components/features/date-time/date-time.tsx
46
+ // src/components/features/date-time/date-time.tsx
48
47
  /**
49
48
  * Date display with the shared Datum hover tooltip (UTC, local zone, relative, epoch).
50
49
  */
@@ -130,5 +129,4 @@ function getTooltipContent(date, variant, tooltip, options, timeZone, timestamp)
130
129
  }
131
130
  return null;
132
131
  }
133
- //#endregion
134
132
  export { formatRelativeDate as a, getBrowserTimezone as c, parseDate as d, formatCombinedDate as i, getTimestamp as l, DEFAULT_DATE_FORMAT as n, formatTimezoneDate as o, formatAbsoluteDate as r, formatUTCDate as s, DateTime as t, getTimezoneAbbreviation as u };
@@ -1,2 +1 @@
1
- import { t as DateTimePicker } from "../date-time-picker-CricsXgF.mjs";
2
- export { DateTimePicker };
1
+ export { t as DateTimePicker } from "../date-time-picker-Bc41Ixrs.mjs";
@@ -1,7 +1,7 @@
1
- import { t as useDeprecationWarning } from "./use-deprecation-warning-DXrGc0jX.mjs";
2
- import { r as DateTimePicker$1 } from "./picker-BoKXW6_s.mjs";
1
+ import { t as useDeprecationWarning } from "./use-deprecation-warning-BS1V4IS5.mjs";
2
+ import { r as DateTimePicker$1 } from "./picker-DC3GErYg.mjs";
3
3
  import { jsx } from "react/jsx-runtime";
4
- //#region src/components/features/date-time-picker/date-time-picker.tsx
4
+ // src/components/features/date-time-picker/date-time-picker.tsx
5
5
  /**
6
6
  * @deprecated Use `DateTimePicker` from `@datum-cloud/datum-ui/picker`
7
7
  * instead. This adapter shim ships through 0.10.x and is removed in 1.0.0.
@@ -39,5 +39,4 @@ function DateTimePicker({ value, onChange, minDate, maxDate, disabledDates: _dis
39
39
  });
40
40
  }
41
41
  DateTimePicker.displayName = "DateTimePicker";
42
- //#endregion
43
42
  export { DateTimePicker as t };