@crewlethq/ui 0.2.0 → 0.3.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 (497) hide show
  1. package/README.md +1714 -14
  2. package/dist/Accordion/Accordion.d.ts +54 -0
  3. package/dist/Accordion/index.d.ts +4 -0
  4. package/dist/Accordion/index.js +6 -0
  5. package/dist/Accordion-ZI2WLD5C.css +87 -0
  6. package/dist/AddPill/AddPill.d.ts +114 -0
  7. package/dist/AddPill/index.d.ts +3 -0
  8. package/dist/AddPill/index.js +3 -0
  9. package/dist/AddPill-DFWXYLIQ.css +434 -0
  10. package/dist/Announcer/Announcer.d.ts +15 -0
  11. package/dist/Announcer/index.d.ts +2 -0
  12. package/dist/Announcer/index.js +3 -0
  13. package/dist/AppShell/AppShell.d.ts +193 -0
  14. package/dist/AppShell/index.d.ts +3 -0
  15. package/dist/AppShell/index.js +6 -0
  16. package/dist/AppShell-NVE6LHNI.css +395 -0
  17. package/dist/Avatar/Avatar.d.ts +104 -0
  18. package/dist/Avatar/index.d.ts +3 -0
  19. package/dist/Avatar/index.js +2 -0
  20. package/dist/Avatar-P2KRQM2B.css +156 -0
  21. package/dist/BrandLockup/BrandLockup.d.ts +41 -0
  22. package/dist/BrandLockup/index.d.ts +3 -0
  23. package/dist/BrandLockup/index.js +2 -0
  24. package/dist/BrandLockup-6ISDEHPJ.css +108 -0
  25. package/dist/Button/Button.d.ts +88 -0
  26. package/dist/Button/index.d.ts +3 -0
  27. package/dist/Button/index.js +3 -0
  28. package/dist/Button-D4J6B4MA.css +302 -0
  29. package/dist/CalendarGrid/CalendarGrid.d.ts +87 -0
  30. package/dist/CalendarGrid/index.d.ts +3 -0
  31. package/dist/CalendarGrid/index.js +2 -0
  32. package/dist/CalendarGrid-V6TQ5QKS.css +128 -0
  33. package/dist/Callout/Callout.d.ts +47 -0
  34. package/dist/Callout/index.d.ts +3 -0
  35. package/dist/Callout/index.js +2 -0
  36. package/dist/Callout-S7QDWHDL.css +111 -0
  37. package/dist/Canvas/Canvas.d.ts +234 -0
  38. package/dist/Canvas/geometry.d.ts +249 -0
  39. package/dist/Canvas/index.d.ts +5 -0
  40. package/dist/Canvas/index.js +8 -0
  41. package/dist/Canvas/layerNode.d.ts +20 -0
  42. package/dist/Canvas-Q6JETCWR.css +315 -0
  43. package/dist/Card/Card.d.ts +142 -0
  44. package/dist/Card/headerSlot.d.ts +65 -0
  45. package/dist/Card/index.d.ts +5 -0
  46. package/dist/Card/index.js +6 -0
  47. package/dist/Card-AHX3Q2JD.css +428 -0
  48. package/dist/Charts/ActivityStrip.d.ts +45 -0
  49. package/dist/Charts/BarList.d.ts +51 -0
  50. package/dist/Charts/Legend.d.ts +32 -0
  51. package/dist/Charts/StackedBar.d.ts +38 -0
  52. package/dist/Charts/TimeSeries.d.ts +92 -0
  53. package/dist/Charts/dataColor.d.ts +20 -0
  54. package/dist/Charts/index.d.ts +12 -0
  55. package/dist/Charts/index.js +3 -0
  56. package/dist/Charts-D7G2BSXH.css +277 -0
  57. package/dist/Checkbox/Checkbox.d.ts +45 -0
  58. package/dist/Checkbox/index.d.ts +3 -0
  59. package/dist/Checkbox/index.js +2 -0
  60. package/dist/Checkbox-VGW26YLQ.css +111 -0
  61. package/dist/CodeBlock/CodeBlock.d.ts +60 -0
  62. package/dist/CodeBlock/index.d.ts +3 -0
  63. package/dist/CodeBlock/index.js +7 -0
  64. package/dist/CodeBlock-U2W6NNVC.css +153 -0
  65. package/dist/Combobox/Combobox.d.ts +89 -0
  66. package/dist/Combobox/index.d.ts +3 -0
  67. package/dist/Combobox/index.js +8 -0
  68. package/dist/Combobox-4FUVYIE7.css +80 -0
  69. package/dist/CommandPalette/CommandPalette.d.ts +77 -0
  70. package/dist/CommandPalette/index.d.ts +3 -0
  71. package/dist/CommandPalette/index.js +11 -0
  72. package/dist/CommandPalette-CSJDUCQA.css +115 -0
  73. package/dist/Container/Container.d.ts +17 -0
  74. package/dist/Container/index.d.ts +3 -0
  75. package/dist/Container/index.js +2 -0
  76. package/dist/Container-3TSKMGNI.css +52 -0
  77. package/dist/Copyable/CopyButton.d.ts +54 -0
  78. package/dist/Copyable/Copyable.d.ts +34 -0
  79. package/dist/Copyable/index.d.ts +5 -0
  80. package/dist/Copyable/index.js +6 -0
  81. package/dist/Copyable-5PNRFOLS.css +125 -0
  82. package/dist/Count/Count.d.ts +24 -0
  83. package/dist/Count/index.d.ts +3 -0
  84. package/dist/Count/index.js +3 -0
  85. package/dist/Count-ZVCJ6VPD.css +20 -0
  86. package/dist/DataTable/CopyableCell.d.ts +12 -0
  87. package/dist/DataTable/DataTable.d.ts +615 -0
  88. package/dist/DataTable/RowActionsMenu.d.ts +7 -0
  89. package/dist/DataTable/index.d.ts +7 -0
  90. package/dist/DataTable/index.js +14 -0
  91. package/dist/DataTable-ITNACQ2X.css +2020 -0
  92. package/dist/DataView/DataView.d.ts +109 -0
  93. package/dist/DataView/DataViewToolbar.d.ts +87 -0
  94. package/dist/DataView/FilterAxisBar.d.ts +103 -0
  95. package/dist/DataView/columns.d.ts +35 -0
  96. package/dist/DataView/filters.d.ts +184 -0
  97. package/dist/DataView/index.d.ts +11 -0
  98. package/dist/DataView/index.js +25 -0
  99. package/dist/DataView-256YF32J.css +441 -0
  100. package/dist/DateTimePicker/DateTimePicker.d.ts +91 -0
  101. package/dist/DateTimePicker/index.d.ts +3 -0
  102. package/dist/DateTimePicker/index.js +9 -0
  103. package/dist/DateTimePicker-22VNXRWC.css +199 -0
  104. package/dist/DescriptionList/DescriptionList.d.ts +36 -0
  105. package/dist/DescriptionList/index.d.ts +3 -0
  106. package/dist/DescriptionList/index.js +2 -0
  107. package/dist/DescriptionList-YYY3V3O6.css +59 -0
  108. package/dist/DiffList/DiffList.d.ts +47 -0
  109. package/dist/DiffList/index.d.ts +3 -0
  110. package/dist/DiffList/index.js +3 -0
  111. package/dist/DiffList-3EX64AAE.css +94 -0
  112. package/dist/Disclosure/Disclosure.d.ts +56 -0
  113. package/dist/Disclosure/anatomy.d.ts +43 -0
  114. package/dist/Disclosure/index.d.ts +5 -0
  115. package/dist/Disclosure/index.js +6 -0
  116. package/dist/Disclosure-VKBJJIZ7.css +176 -0
  117. package/dist/EmptyState/EmptyState.d.ts +39 -0
  118. package/dist/EmptyState/index.d.ts +3 -0
  119. package/dist/EmptyState/index.js +3 -0
  120. package/dist/EmptyState-C6HRBGT7.css +73 -0
  121. package/dist/EmptyValue/EmptyValue.d.ts +31 -0
  122. package/dist/EmptyValue/index.d.ts +3 -0
  123. package/dist/EmptyValue/index.js +3 -0
  124. package/dist/EmptyValue-4B6ODXHT.css +12 -0
  125. package/dist/EntityChip/EntityChip.d.ts +40 -0
  126. package/dist/EntityChip/index.d.ts +3 -0
  127. package/dist/EntityChip/index.js +3 -0
  128. package/dist/EntityChip-LUCPZBBG.css +64 -0
  129. package/dist/ErrorBoundary/ErrorBoundary.d.ts +58 -0
  130. package/dist/ErrorBoundary/index.d.ts +3 -0
  131. package/dist/ErrorBoundary/index.js +4 -0
  132. package/dist/ErrorBoundary-ME36CQTA.css +59 -0
  133. package/dist/Eyebrow/Eyebrow.d.ts +18 -0
  134. package/dist/Eyebrow/index.d.ts +3 -0
  135. package/dist/Eyebrow/index.js +2 -0
  136. package/dist/Eyebrow-5NREGHQH.css +46 -0
  137. package/dist/FilterChip/FilterChip.d.ts +68 -0
  138. package/dist/FilterChip/index.d.ts +3 -0
  139. package/dist/FilterChip/index.js +3 -0
  140. package/dist/FilterChip-GTGLLOXE.css +107 -0
  141. package/dist/Fullscreen/index.d.ts +2 -0
  142. package/dist/Fullscreen/index.js +1 -0
  143. package/dist/Fullscreen/useFullscreen.d.ts +32 -0
  144. package/dist/IconButton/IconButton.d.ts +45 -0
  145. package/dist/IconButton/index.d.ts +3 -0
  146. package/dist/IconButton/index.js +3 -0
  147. package/dist/IconButton-VQGNMJDI.css +158 -0
  148. package/dist/ImageUpload/ImageUpload.d.ts +37 -0
  149. package/dist/ImageUpload/index.d.ts +3 -0
  150. package/dist/ImageUpload/index.js +3 -0
  151. package/dist/ImageUpload-HKFIZR6D.css +193 -0
  152. package/dist/InlineCode/InlineCode.d.ts +37 -0
  153. package/dist/InlineCode/index.d.ts +3 -0
  154. package/dist/InlineCode/index.js +2 -0
  155. package/dist/InlineCode-6WSR5COL.css +65 -0
  156. package/dist/Input/FormField.d.ts +61 -0
  157. package/dist/Input/FormRow.d.ts +6 -0
  158. package/dist/Input/FormSection.d.ts +28 -0
  159. package/dist/Input/Input.d.ts +98 -0
  160. package/dist/Input/Label.d.ts +31 -0
  161. package/dist/Input/ReadOnlyField.d.ts +30 -0
  162. package/dist/Input/Textarea.d.ts +16 -0
  163. package/dist/Input/index.d.ts +15 -0
  164. package/dist/Input/index.js +5 -0
  165. package/dist/Input-2PU5CPKK.css +616 -0
  166. package/dist/Kbd/Kbd.d.ts +40 -0
  167. package/dist/Kbd/index.d.ts +3 -0
  168. package/dist/Kbd/index.js +3 -0
  169. package/dist/Kbd-W66MXQI5.css +61 -0
  170. package/dist/Layer/LayerHost.d.ts +23 -0
  171. package/dist/Layer/index.d.ts +7 -0
  172. package/dist/Layer/index.js +3 -0
  173. package/dist/Layer/place.d.ts +63 -0
  174. package/dist/Layer/stack.d.ts +159 -0
  175. package/dist/Layer-NAFSGCFA.css +23 -0
  176. package/dist/Layout/Layout.d.ts +104 -0
  177. package/dist/Layout/index.d.ts +3 -0
  178. package/dist/Layout/index.js +2 -0
  179. package/dist/Layout-2ZCV3IGF.css +171 -0
  180. package/dist/Link/Link.d.ts +45 -0
  181. package/dist/Link/index.d.ts +3 -0
  182. package/dist/Link/index.js +3 -0
  183. package/dist/Link-6BEFNMN2.css +80 -0
  184. package/dist/List/List.d.ts +73 -0
  185. package/dist/List/index.d.ts +3 -0
  186. package/dist/List/index.js +3 -0
  187. package/dist/List-XTHESXLR.css +161 -0
  188. package/dist/ListInput/ListInput.d.ts +68 -0
  189. package/dist/ListInput/index.d.ts +3 -0
  190. package/dist/ListInput/index.js +10 -0
  191. package/dist/ListInput-O7LJKOIG.css +147 -0
  192. package/dist/Listbox/index.d.ts +5 -0
  193. package/dist/Listbox/index.js +2 -0
  194. package/dist/Listbox/useListbox.d.ts +97 -0
  195. package/dist/Listbox/useOptionKeys.d.ts +64 -0
  196. package/dist/Listbox-X2DOTSQA.css +110 -0
  197. package/dist/Menu/Menu.d.ts +118 -0
  198. package/dist/Menu/index.d.ts +3 -0
  199. package/dist/Menu/index.js +7 -0
  200. package/dist/Menu-6DE7I66I.css +222 -0
  201. package/dist/Meter/Meter.d.ts +49 -0
  202. package/dist/Meter/index.d.ts +3 -0
  203. package/dist/Meter/index.js +3 -0
  204. package/dist/Meter-SKOOXQBC.css +87 -0
  205. package/dist/Modal/ConfirmModal.d.ts +74 -0
  206. package/dist/Modal/Modal.d.ts +154 -0
  207. package/dist/Modal/index.d.ts +5 -0
  208. package/dist/Modal/index.js +8 -0
  209. package/dist/Modal-XYQJ4BL6.css +484 -0
  210. package/dist/NewItemsNotice/NewItemsNotice.d.ts +28 -0
  211. package/dist/NewItemsNotice/index.d.ts +3 -0
  212. package/dist/NewItemsNotice/index.js +4 -0
  213. package/dist/NewItemsNotice-T4DSSPVV.css +60 -0
  214. package/dist/OrgLabel/OrgLabel.d.ts +117 -0
  215. package/dist/OrgLabel/index.d.ts +3 -0
  216. package/dist/OrgLabel/index.js +2 -0
  217. package/dist/OrgLabel-D7U6QJZD.css +293 -0
  218. package/dist/OrgNode/OrgNode.d.ts +103 -0
  219. package/dist/OrgNode/index.d.ts +3 -0
  220. package/dist/OrgNode/index.js +3 -0
  221. package/dist/OrgNode-BT7T2Q2X.css +214 -0
  222. package/dist/OrgTable/OrgTable.d.ts +113 -0
  223. package/dist/OrgTable/index.d.ts +3 -0
  224. package/dist/OrgTable/index.js +11 -0
  225. package/dist/OrgTable-VWMFC3TB.css +360 -0
  226. package/dist/PageHeader/PageHeader.d.ts +35 -0
  227. package/dist/PageHeader/index.d.ts +3 -0
  228. package/dist/PageHeader/index.js +3 -0
  229. package/dist/PageHeader-6EYWQXRE.css +88 -0
  230. package/dist/Popover/Popover.d.ts +91 -0
  231. package/dist/Popover/index.d.ts +3 -0
  232. package/dist/Popover/index.js +4 -0
  233. package/dist/Popover-WJGCF3ZQ.css +185 -0
  234. package/dist/PricingCard/PricingCard.d.ts +56 -0
  235. package/dist/PricingCard/index.d.ts +3 -0
  236. package/dist/PricingCard/index.js +4 -0
  237. package/dist/PricingCard-JFI7RYXP.css +278 -0
  238. package/dist/Prose/Prose.d.ts +33 -0
  239. package/dist/Prose/index.d.ts +3 -0
  240. package/dist/Prose/index.js +2 -0
  241. package/dist/Prose-BTXNFT2Q.css +99 -0
  242. package/dist/RelativeTime/RelativeTime.d.ts +31 -0
  243. package/dist/RelativeTime/clock.d.ts +9 -0
  244. package/dist/RelativeTime/format.d.ts +38 -0
  245. package/dist/RelativeTime/index.d.ts +6 -0
  246. package/dist/RelativeTime/index.js +4 -0
  247. package/dist/RelativeTime-EBAQPGO2.css +10 -0
  248. package/dist/SearchTrigger/SearchTrigger.d.ts +29 -0
  249. package/dist/SearchTrigger/index.d.ts +3 -0
  250. package/dist/SearchTrigger/index.js +2 -0
  251. package/dist/SearchTrigger-QXOYAUUY.css +79 -0
  252. package/dist/Section/Section.d.ts +41 -0
  253. package/dist/Section/index.d.ts +3 -0
  254. package/dist/Section/index.js +3 -0
  255. package/dist/Section-QRUPRIQ2.css +127 -0
  256. package/dist/SegmentedControl/SegmentedControl.d.ts +68 -0
  257. package/dist/SegmentedControl/index.d.ts +4 -0
  258. package/dist/SegmentedControl/index.js +5 -0
  259. package/dist/SegmentedControl-X3BI3XU4.css +68 -0
  260. package/dist/Select/Select.d.ts +138 -0
  261. package/dist/Select/index.d.ts +3 -0
  262. package/dist/Select/index.js +5 -0
  263. package/dist/Select-2X77FSWR.css +350 -0
  264. package/dist/Shortcut/index.d.ts +2 -0
  265. package/dist/Shortcut/index.js +4 -0
  266. package/dist/Shortcut/useShortcut.d.ts +68 -0
  267. package/dist/SidebarNav/SidebarNav.d.ts +117 -0
  268. package/dist/SidebarNav/index.d.ts +3 -0
  269. package/dist/SidebarNav/index.js +3 -0
  270. package/dist/SidebarNav-QGSFKZYA.css +319 -0
  271. package/dist/Skeleton/Skeleton.d.ts +50 -0
  272. package/dist/Skeleton/index.d.ts +3 -0
  273. package/dist/Skeleton/index.js +3 -0
  274. package/dist/Skeleton-V735HRGM.css +421 -0
  275. package/dist/StatCard/StatCard.d.ts +56 -0
  276. package/dist/StatCard/index.d.ts +3 -0
  277. package/dist/StatCard/index.js +3 -0
  278. package/dist/StatCard-KYPKZUWX.css +111 -0
  279. package/dist/StatGroup/StatGroup.d.ts +20 -0
  280. package/dist/StatGroup/index.d.ts +3 -0
  281. package/dist/StatGroup/index.js +2 -0
  282. package/dist/StatGroup-TGB6AEKM.css +80 -0
  283. package/dist/StatusDot/StatusDot.d.ts +25 -0
  284. package/dist/StatusDot/index.d.ts +3 -0
  285. package/dist/StatusDot/index.js +2 -0
  286. package/dist/StatusDot-HA2L2FSX.css +84 -0
  287. package/dist/Switch/Switch.d.ts +38 -0
  288. package/dist/Switch/index.d.ts +3 -0
  289. package/dist/Switch/index.js +2 -0
  290. package/dist/Switch-U4OWK4CL.css +169 -0
  291. package/dist/Table/Table.d.ts +51 -0
  292. package/dist/Table/index.d.ts +3 -0
  293. package/dist/Table/index.js +3 -0
  294. package/dist/Table-MDOLVUAW.css +159 -0
  295. package/dist/Tabs/Tabs.d.ts +97 -0
  296. package/dist/Tabs/index.d.ts +3 -0
  297. package/dist/Tabs/index.js +4 -0
  298. package/dist/Tabs/roving.d.ts +36 -0
  299. package/dist/Tabs-VLICJFVB.css +275 -0
  300. package/dist/Tag/Tag.d.ts +107 -0
  301. package/dist/Tag/index.d.ts +3 -0
  302. package/dist/Tag/index.js +3 -0
  303. package/dist/Tag-VNZEYLB6.css +406 -0
  304. package/dist/TagGroup/TagGroup.d.ts +41 -0
  305. package/dist/TagGroup/index.d.ts +3 -0
  306. package/dist/TagGroup/index.js +4 -0
  307. package/dist/TagGroup-APC2EFH4.css +75 -0
  308. package/dist/TagsInput/TagsInput.d.ts +112 -0
  309. package/dist/TagsInput/index.d.ts +3 -0
  310. package/dist/TagsInput/index.js +10 -0
  311. package/dist/TagsInput-W4P36PRJ.css +168 -0
  312. package/dist/Text/Text.d.ts +67 -0
  313. package/dist/Text/index.d.ts +3 -0
  314. package/dist/Text/index.js +2 -0
  315. package/dist/Text-XIPYYZX2.css +154 -0
  316. package/dist/ThemeSwitcher/ThemeSwitcher.d.ts +47 -0
  317. package/dist/ThemeSwitcher/index.d.ts +4 -0
  318. package/dist/ThemeSwitcher/index.js +6 -0
  319. package/dist/ThemeSwitcher/preferences.d.ts +51 -0
  320. package/dist/TimeWindowPicker/TimeWindowPicker.d.ts +231 -0
  321. package/dist/TimeWindowPicker/index.d.ts +3 -0
  322. package/dist/TimeWindowPicker/index.js +13 -0
  323. package/dist/TimeWindowPicker/mask.d.ts +82 -0
  324. package/dist/TimeWindowPicker-7I7KWCMU.css +403 -0
  325. package/dist/Timeline/Timeline.d.ts +51 -0
  326. package/dist/Timeline/index.d.ts +3 -0
  327. package/dist/Timeline/index.js +3 -0
  328. package/dist/Timeline-27SYKOFX.css +144 -0
  329. package/dist/Toaster/Toaster.d.ts +108 -0
  330. package/dist/Toaster/index.d.ts +3 -0
  331. package/dist/Toaster/index.js +5 -0
  332. package/dist/Toaster-NVDCEIP5.css +306 -0
  333. package/dist/Toolbar/Toolbar.d.ts +62 -0
  334. package/dist/Toolbar/index.d.ts +3 -0
  335. package/dist/Toolbar/index.js +4 -0
  336. package/dist/Toolbar-IP6LXN45.css +48 -0
  337. package/dist/Tooltip/Tooltip.d.ts +51 -0
  338. package/dist/Tooltip/index.d.ts +3 -0
  339. package/dist/Tooltip/index.js +4 -0
  340. package/dist/Tooltip-LKQF7CE4.css +71 -0
  341. package/dist/Tree/index.d.ts +8 -0
  342. package/dist/Tree/index.js +1 -0
  343. package/dist/Tree/layout.d.ts +160 -0
  344. package/dist/Tree/model.d.ts +110 -0
  345. package/dist/Tree/useMeasuredSizes.d.ts +61 -0
  346. package/dist/Tree/useTreeState.d.ts +89 -0
  347. package/dist/TreeCanvas/TreeCanvas.d.ts +384 -0
  348. package/dist/TreeCanvas/index.d.ts +3 -0
  349. package/dist/TreeCanvas/index.js +10 -0
  350. package/dist/TreeCanvas/motion.d.ts +59 -0
  351. package/dist/TreeCanvas-WBNQPHC7.css +1098 -0
  352. package/dist/TreeGrid/TreeGrid.d.ts +142 -0
  353. package/dist/TreeGrid/index.d.ts +3 -0
  354. package/dist/TreeGrid/index.js +8 -0
  355. package/dist/TreeGrid-NSW7VMOX.css +132 -0
  356. package/dist/VisuallyHidden/VisuallyHidden.d.ts +23 -0
  357. package/dist/VisuallyHidden/index.d.ts +3 -0
  358. package/dist/VisuallyHidden/index.js +2 -0
  359. package/dist/VisuallyHidden-L552H7OA.css +21 -0
  360. package/dist/chunk-22O7LAW2.js +41 -0
  361. package/dist/chunk-23DHIMJA.js +38 -0
  362. package/dist/chunk-2EOKFKHX.js +263 -0
  363. package/dist/chunk-2PRH365R.js +74 -0
  364. package/dist/chunk-2ZQMA2WB.js +57 -0
  365. package/dist/chunk-3CZ7XAVY.js +139 -0
  366. package/dist/chunk-3EYF6HKB.js +135 -0
  367. package/dist/chunk-3ZP55QZE.js +40 -0
  368. package/dist/chunk-53DVJCVW.js +14 -0
  369. package/dist/chunk-5C5YMZQU.js +51 -0
  370. package/dist/chunk-5EKIWVOR.js +132 -0
  371. package/dist/chunk-5IMACPJS.js +495 -0
  372. package/dist/chunk-5KPQ6D7N.js +54 -0
  373. package/dist/chunk-5SDBMKUO.js +297 -0
  374. package/dist/chunk-5WS6L6FA.js +114 -0
  375. package/dist/chunk-7EM5T4ME.js +39 -0
  376. package/dist/chunk-7FZ53WDJ.js +163 -0
  377. package/dist/chunk-7HPRF5XN.js +525 -0
  378. package/dist/chunk-7RPGY3JE.js +43 -0
  379. package/dist/chunk-A2UXBCLO.js +48 -0
  380. package/dist/chunk-ARMRX2YV.js +96 -0
  381. package/dist/chunk-AV2DXAEL.js +27 -0
  382. package/dist/chunk-BHHIIK3M.js +17 -0
  383. package/dist/chunk-BZFWDIV6.js +9 -0
  384. package/dist/chunk-BZYDZBAN.js +123 -0
  385. package/dist/chunk-CMEE37QJ.js +628 -0
  386. package/dist/chunk-D3OADIM6.js +112 -0
  387. package/dist/chunk-DD5BBGBE.js +162 -0
  388. package/dist/chunk-EHMQQHYR.js +1652 -0
  389. package/dist/chunk-EN6K2IFA.js +256 -0
  390. package/dist/chunk-EPOOQZYA.js +118 -0
  391. package/dist/chunk-ESCO4XYW.js +144 -0
  392. package/dist/chunk-EUCC37WY.js +14 -0
  393. package/dist/chunk-EV6IMYJ6.js +62 -0
  394. package/dist/chunk-F27EPQ7D.js +68 -0
  395. package/dist/chunk-F4PJZ4ED.js +245 -0
  396. package/dist/chunk-F6OE5FH3.js +49 -0
  397. package/dist/chunk-FBZAKNSX.js +263 -0
  398. package/dist/chunk-FEFTGVMF.js +46 -0
  399. package/dist/chunk-G2QFRTJ2.js +823 -0
  400. package/dist/chunk-GHYY2WPF.js +907 -0
  401. package/dist/chunk-GTOUGQQK.js +147 -0
  402. package/dist/chunk-GUIF6Q6N.js +143 -0
  403. package/dist/chunk-GXQ3B46I.js +216 -0
  404. package/dist/chunk-H4FBTAYS.js +130 -0
  405. package/dist/chunk-HOXGBLEY.js +37 -0
  406. package/dist/chunk-HQNHV7D6.js +54 -0
  407. package/dist/chunk-HTDFCRJZ.js +92 -0
  408. package/dist/chunk-HZ5XZNPS.js +98 -0
  409. package/dist/chunk-IAJLHVUA.js +28 -0
  410. package/dist/chunk-IJ7QXNIJ.js +1 -0
  411. package/dist/chunk-ITHXJHBB.js +280 -0
  412. package/dist/chunk-JCSA3XVH.js +32 -0
  413. package/dist/chunk-KLJCCMF3.js +97 -0
  414. package/dist/chunk-LGCPQIOZ.js +49 -0
  415. package/dist/chunk-LWKJQTOM.js +77 -0
  416. package/dist/chunk-MNAXYY3R.js +215 -0
  417. package/dist/chunk-NN62JQLR.js +29 -0
  418. package/dist/chunk-NPZY6YYL.js +251 -0
  419. package/dist/chunk-NTRZGNEX.js +529 -0
  420. package/dist/chunk-O6232G37.js +273 -0
  421. package/dist/chunk-O67VF5MS.js +58 -0
  422. package/dist/chunk-ODEQTPFM.js +6 -0
  423. package/dist/chunk-PNFASD6F.js +98 -0
  424. package/dist/chunk-PQADV6P6.js +19 -0
  425. package/dist/chunk-PZSWF74H.js +15 -0
  426. package/dist/chunk-Q4ZPPART.js +26 -0
  427. package/dist/chunk-QNCVHRZL.js +17 -0
  428. package/dist/chunk-QVE4GJAT.js +15 -0
  429. package/dist/chunk-QYOFACSP.js +36 -0
  430. package/dist/chunk-RA2ULG6H.js +29 -0
  431. package/dist/chunk-RDGD7Z7I.js +350 -0
  432. package/dist/chunk-RK4XPHVG.js +16 -0
  433. package/dist/chunk-RSAQOKH3.js +38 -0
  434. package/dist/chunk-S2XHHEW4.js +84 -0
  435. package/dist/chunk-S4GZWSKR.js +137 -0
  436. package/dist/chunk-SFZOKW2G.js +52 -0
  437. package/dist/chunk-T7FKOJKW.js +221 -0
  438. package/dist/chunk-UG46QBLT.js +325 -0
  439. package/dist/chunk-UOGSZKLT.js +134 -0
  440. package/dist/chunk-V2XMNLMS.js +52 -0
  441. package/dist/chunk-V663QU4R.js +51 -0
  442. package/dist/chunk-W4ENKCXJ.js +40 -0
  443. package/dist/chunk-W5J7R5EB.js +107 -0
  444. package/dist/chunk-WNI2WSJF.js +27 -0
  445. package/dist/chunk-XDTYBF2F.js +36 -0
  446. package/dist/chunk-XN4JBAN3.js +32 -0
  447. package/dist/chunk-XV6WRMBC.js +211 -0
  448. package/dist/chunk-YLYOWZ4V.js +33 -0
  449. package/dist/chunk-YMWONFSI.js +170 -0
  450. package/dist/chunk-ZCR6YGQ4.js +1 -0
  451. package/dist/generated/index.d.ts +83 -0
  452. package/dist/generated/index.js +91 -0
  453. package/dist/index.d.ts +1 -1217
  454. package/dist/index.js +91 -4518
  455. package/dist/styles.css +14841 -4274
  456. package/dist/utils/cx.d.ts +10 -0
  457. package/dist/utils/headingLevel.d.ts +16 -0
  458. package/dist/utils/index.d.ts +6 -0
  459. package/dist/utils/index.js +4 -0
  460. package/dist/utils/tone.d.ts +25 -0
  461. package/dist/utils/useClipboard.d.ts +30 -0
  462. package/package.json +18 -10
  463. package/scripts/bundle-css.mjs +25 -0
  464. package/scripts/check-css-literals.mjs +166 -0
  465. package/scripts/check-css-variables.mjs +184 -0
  466. package/scripts/check-css.mjs +27 -0
  467. package/scripts/css-source.mjs +67 -0
  468. package/scripts/write-barrel.mjs +60 -0
  469. package/dist/Accordion-NIMJQIOI.css +0 -88
  470. package/dist/AppShell-ZW3NSFBP.css +0 -51
  471. package/dist/Avatar-V6NG6Q45.css +0 -67
  472. package/dist/Button-XGCTXXYP.css +0 -174
  473. package/dist/Callout-LEGDIMAM.css +0 -52
  474. package/dist/Card-BOZGBML7.css +0 -86
  475. package/dist/Checkbox-OCUICIIZ.css +0 -58
  476. package/dist/CodeBlock-IEMBNIQC.css +0 -90
  477. package/dist/Container-LTKBA2FW.css +0 -21
  478. package/dist/Copyable-IB57OTHZ.css +0 -123
  479. package/dist/DataTable-3GALZUW2.css +0 -1593
  480. package/dist/DateTimePicker-NMSSGVPK.css +0 -312
  481. package/dist/Eyebrow-AVBORAS2.css +0 -30
  482. package/dist/IconButton-GB4PJDG2.css +0 -82
  483. package/dist/ImageUpload-3HQDF2KC.css +0 -158
  484. package/dist/Input-ZHUTN7CU.css +0 -210
  485. package/dist/Kbd-Q77CDZY7.css +0 -23
  486. package/dist/Modal-FJVG66S4.css +0 -138
  487. package/dist/Popover-FUFULUE2.css +0 -123
  488. package/dist/PricingCard-NKYV3JHA.css +0 -238
  489. package/dist/Section-665ZIPG6.css +0 -20
  490. package/dist/Select-GPRF7PRB.css +0 -294
  491. package/dist/Skeleton-3WEFLRDN.css +0 -378
  492. package/dist/StatCard-RTJIVTRB.css +0 -50
  493. package/dist/Table-AR3TRY2E.css +0 -89
  494. package/dist/Tabs-XZ4JIH3E.css +0 -153
  495. package/dist/Tag-R5QDJLYJ.css +0 -163
  496. package/dist/TimeWindowPicker-L3G5Q7UT.css +0 -629
  497. package/dist/Toaster-2O65VOR4.css +0 -264
@@ -0,0 +1,441 @@
1
+ /*
2
+ * The list screen: header, toolbar, filter chips, table.
3
+ *
4
+ * THE VERTICAL RHYTHM IS THE WHOLE LAYOUT. Each part carries the space BELOW
5
+ * it, so a screen missing one of them (no header, no chips) closes the gap
6
+ * rather than leaving a band where it would have been. The chip row is the one
7
+ * that renders nothing at all when it is empty, which is why its rules can
8
+ * assume it has content.
9
+ *
10
+ * WHERE THE ACCENT GOES. On a chip, because a chip IS a filter that is on, and
11
+ * on a toolbar control only while what it controls is on (a sort, the archived
12
+ * rows). Everything else in the row is neutral: a toolbar painted with the
13
+ * accent at rest spends the colour that means "where the reader is" on a row
14
+ * where nothing is happening.
15
+ */
16
+
17
+ .crewlet-data-view {
18
+ display: flex;
19
+ flex-direction: column;
20
+ min-width: 0;
21
+ }
22
+
23
+ /* The screen's own rhythm: the head, the toolbar and the list are the three
24
+ bands of a list screen, and one step separates all of them. */
25
+ .crewlet-data-view > .crewlet-page-header {
26
+ margin-bottom: var(--spacing-5);
27
+ }
28
+
29
+ .crewlet-data-view__table {
30
+ min-width: 0;
31
+ }
32
+
33
+ /*
34
+ * The table on a surface of its own. The boundary is what makes a long list
35
+ * read as one object inside a padded page rather than as text on the ground,
36
+ * and the radius is clipped so the header band stops at the edge.
37
+ *
38
+ * THE FRAME HOLDS THE TABLE AND NOTHING ELSE. It used to end on a count row
39
+ * saying "Showing 12 of 300", which is gone from every list, so the rows are
40
+ * the last thing inside it.
41
+ */
42
+ .crewlet-data-view--framed .crewlet-data-view__table {
43
+ background: var(--color-surface-subtle);
44
+ border: 1px solid var(--color-border-default);
45
+ border-radius: var(--radius-lg);
46
+ /*
47
+ * CLIP, NOT HIDDEN. Both cut the corners the radius rounds, and only one of
48
+ * them leaves the toolbar able to stick: `overflow: hidden` makes this box
49
+ * the nearest scrollport, and a sticky child inside a scrollport that never
50
+ * scrolls never moves. `clip` cuts without becoming one, so the toolbar
51
+ * inside the panel pins against the page the way the bar above it used to.
52
+ */
53
+ overflow: clip;
54
+ }
55
+
56
+ /*
57
+ * AND THE FRAME IS WHAT CLOSES THEM. A row's hairline separates it from the
58
+ * row below, so the table draws one under every row including its last, which
59
+ * is what closes a table standing on the page with nothing underneath it.
60
+ * Inside this panel something already does: the frame's own bottom edge,
61
+ * directly beneath it. Left on, the two meet and the list ends on a doubled
62
+ * two-pixel rule the rest of the table never draws. The suppression is
63
+ * written here, where the frame is, rather than in the table, which cannot
64
+ * know what it has been put inside.
65
+ *
66
+ * ONLY WHERE THE ROWS REALLY ARE LAST. A cursor list draws a Load more strip
67
+ * under them, and an exhausted one the end message, and neither carries a
68
+ * fence of its own: the last row's hairline IS the fence, everywhere else a
69
+ * table is drawn. Cancelled unconditionally, the strip inside a panel sat
70
+ * against the rows with no line between them, which is the one case the rule
71
+ * was never about.
72
+ */
73
+ .crewlet-data-view--framed .crewlet-data-table:not(:has(.crewlet-data-table__load-more, .crewlet-data-table__end)) .crewlet-data-table__table tbody tr:last-child td {
74
+ border-bottom: none;
75
+ }
76
+
77
+ /* ── The toolbar ──────────────────────────────────────────────────────── */
78
+
79
+ /*
80
+ * THE SCREEN'S CONTROLS SIT IN THE TABLE'S OWN TOOLBAR ROW, beside the table's
81
+ * pagination and settings, so a list screen reads as one object rather than as
82
+ * a bar, a second bar and then a table with a third. In that slot the row owns
83
+ * neither the inset nor the space below it: the band it is in draws both.
84
+ */
85
+ .crewlet-data-table__toolbar-start > .crewlet-data-view-toolbar {
86
+ margin-bottom: 0;
87
+ padding: 0;
88
+ flex: 1 1 auto;
89
+ }
90
+
91
+ .crewlet-data-view-toolbar {
92
+ /* The width under which the search box stops shrinking and the row wraps
93
+ instead, so the box never becomes a slot too narrow to read a query in. */
94
+ --crewlet-data-view-search-min: 240px;
95
+
96
+ margin-bottom: var(--spacing-3);
97
+ }
98
+
99
+ .crewlet-data-view-toolbar__search {
100
+ flex: 1 1 var(--crewlet-data-view-search-min);
101
+ min-width: var(--crewlet-data-view-search-min);
102
+ max-width: none;
103
+ }
104
+
105
+ /*
106
+ * A toolbar button's own label: the word, then whatever sits after it (the
107
+ * chevron that says a panel opens, the count on the archived toggle).
108
+ */
109
+ .crewlet-data-view-toolbar__menu-label {
110
+ display: inline-flex;
111
+ align-items: center;
112
+ gap: var(--spacing-1);
113
+ white-space: nowrap;
114
+ }
115
+
116
+ .crewlet-data-view-toolbar__spacer {
117
+ flex: 1;
118
+ min-width: 0;
119
+ }
120
+
121
+ .crewlet-data-view-toolbar__actions {
122
+ display: flex;
123
+ align-items: center;
124
+ gap: var(--spacing-2);
125
+ }
126
+
127
+ /* ── The sort panel ───────────────────────────────────────────────────── */
128
+
129
+ .crewlet-data-view-toolbar__sort {
130
+ --crewlet-data-view-sort-width: 240px;
131
+
132
+ min-width: var(--crewlet-data-view-sort-width);
133
+ }
134
+
135
+ .crewlet-data-view-toolbar__sort-list {
136
+ display: flex;
137
+ flex-direction: column;
138
+ gap: var(--spacing-1);
139
+ margin: 0;
140
+ padding: 0;
141
+ list-style: none;
142
+ }
143
+
144
+ .crewlet-data-view-toolbar__sort-row {
145
+ display: flex;
146
+ align-items: center;
147
+ justify-content: space-between;
148
+ gap: var(--spacing-4);
149
+ padding: var(--spacing-1) var(--spacing-2);
150
+ border-radius: var(--radius-sm);
151
+ }
152
+
153
+ .crewlet-data-view-toolbar__sort-row:hover {
154
+ background: var(--color-surface-hover);
155
+ }
156
+
157
+ .crewlet-data-view-toolbar__sort-label {
158
+ font-size: var(--font-size-compact);
159
+ color: var(--color-text-primary);
160
+ min-width: 0;
161
+ }
162
+
163
+ .crewlet-data-view-toolbar__sort-buttons {
164
+ display: inline-flex;
165
+ gap: var(--spacing-1);
166
+ flex: none;
167
+ }
168
+
169
+ .crewlet-data-view-toolbar__sort-footer {
170
+ display: flex;
171
+ justify-content: flex-start;
172
+ margin-top: var(--spacing-2);
173
+ padding-top: var(--spacing-2);
174
+ border-top: 1px solid var(--color-border-default);
175
+ }
176
+
177
+ /* ── The chip row ─────────────────────────────────────────────────────── */
178
+
179
+ /*
180
+ * Between the toolbar and the table, fenced above and below: the chips are
181
+ * neither part of the controls that add them nor part of the data they narrow,
182
+ * and without the boundary a reader reads them as a row of the table's own.
183
+ *
184
+ * A SOLID HAIRLINE. The fence was dashed, and a dashed edge MEANS SOMETHING
185
+ * ELSE here: it is the mark a card or a node wears when it stands for somebody
186
+ * outside the system, on the canvas and in every chart. Two meanings for one
187
+ * stroke is how a reader learns neither. Every boundary in this system is the
188
+ * same hairline; what differs is where it is drawn.
189
+ */
190
+ .crewlet-filter-axis-bar {
191
+ display: flex;
192
+ flex-wrap: wrap;
193
+ align-items: center;
194
+ gap: var(--spacing-2);
195
+ margin-bottom: var(--spacing-3);
196
+ padding: var(--spacing-2) 0;
197
+ border-top: 1px solid var(--color-border-default);
198
+ border-bottom: 1px solid var(--color-border-default);
199
+ }
200
+
201
+ /*
202
+ * Inside the table's own band the fence is already drawn: the toolbar above
203
+ * carries the rule over the chips and the band carries the rule under them, so
204
+ * the row itself takes no boundary, no inset and no space below it. The rules
205
+ * above stay for a chip row used on its own, which is what the exported
206
+ * FilterAxisBar is for.
207
+ */
208
+ .crewlet-data-table__filter-bar > .crewlet-filter-axis-bar {
209
+ margin-bottom: 0;
210
+ padding: 0;
211
+ border: 0;
212
+ flex: 1 1 auto;
213
+ }
214
+
215
+ /* Held to the end of the row, so it is never mistaken for one more chip. */
216
+ .crewlet-filter-axis-bar__clear {
217
+ margin-left: auto;
218
+ }
219
+
220
+ /* ── One chip ─────────────────────────────────────────────────────────── */
221
+
222
+ /*
223
+ * TWO CONTROLS IN ONE PILL: pressing the chip opens its editor, pressing the
224
+ * cross takes the filter off. They are drawn as one object with a divider
225
+ * because they are one filter, and they are two BUTTONS because they do two
226
+ * different things, which is also why the cross carries its own name rather
227
+ * than relying on the chip's.
228
+ */
229
+ .crewlet-filter-axis-chip {
230
+ display: inline-flex;
231
+ align-items: stretch;
232
+ height: var(--size-control-sm);
233
+ background: var(--color-brand-accent-soft);
234
+ border: 1px solid var(--color-brand-accent-soft-strong);
235
+ border-radius: var(--radius-pill);
236
+ overflow: hidden;
237
+ max-width: 100%;
238
+ transition: border-color var(--motion-duration-fast) var(--motion-easing-default);
239
+ }
240
+
241
+ /*
242
+ * THE EDGE, NOT THE FILL. `--color-surface-hover` is the overlay a row at rest
243
+ * carries, and the token says a surface shows it OR a selected tint, never
244
+ * both: put on a chip it REPLACED the accent fill, so the one control on screen
245
+ * that means "this filter is on" went pale under the pointer and read as the
246
+ * filter being switched off.
247
+ *
248
+ * The fill stays where it is and the boundary takes the accent itself.
249
+ * Deepening the fill to the next accent step instead measures 4.48:1 under the
250
+ * chip's own ink on the light ground, and 4.18:1 on a card, which is why that
251
+ * step is a BORDER value in the palette and is used as one here.
252
+ */
253
+ .crewlet-filter-axis-chip:hover {
254
+ border-color: var(--color-brand-accent);
255
+ }
256
+
257
+ .crewlet-filter-axis-chip__trigger {
258
+ display: inline-flex;
259
+ align-items: center;
260
+ gap: var(--spacing-1);
261
+ min-width: 0;
262
+ padding: 0 var(--spacing-2) 0 var(--spacing-3);
263
+ background: transparent;
264
+ border: none;
265
+ cursor: pointer;
266
+ color: var(--color-brand-accent-ink);
267
+ font-family: var(--font-family-sans);
268
+ font-size: var(--font-size-xs);
269
+ line-height: 1;
270
+ }
271
+
272
+ .crewlet-filter-axis-chip__trigger:focus-visible {
273
+ outline: 2px solid var(--color-focus);
274
+ outline-offset: var(--size-focus-ring-inset-offset);
275
+ }
276
+
277
+ /*
278
+ * THE AXIS NAME IS NOT DIMMED. It read at 0.85 opacity, which takes the chip's
279
+ * own ink off the step the pairing was measured at, and the name of the axis
280
+ * is exactly what a reader checks before the value: "status" and "stage" narrow
281
+ * a list to very different things. The value's own weight is what separates
282
+ * the halves, which is a difference a reader can see at any contrast.
283
+ */
284
+ .crewlet-filter-axis-chip__label {
285
+ white-space: nowrap;
286
+ }
287
+
288
+ .crewlet-filter-axis-chip__value {
289
+ font-weight: var(--font-weight-semibold);
290
+ overflow: hidden;
291
+ text-overflow: ellipsis;
292
+ white-space: nowrap;
293
+ }
294
+
295
+ /*
296
+ * The chevron carries the chip's own ink rather than a fainter version of it,
297
+ * for the reason every mark beside its words does: a grey glyph next to
298
+ * coloured text reads as two things. At 0.7 it measured 3.00:1 on a card in
299
+ * light, which is the 3:1 floor for a glyph to the second decimal place.
300
+ */
301
+ .crewlet-filter-axis-chip__chevron {
302
+ flex: none;
303
+ }
304
+
305
+ /*
306
+ * The remove control keeps the chip's own ink rather than taking the critical
307
+ * hue on hover: removing a filter destroys nothing, and a row of chips that
308
+ * turns red under the pointer reads as a row of dangerous things.
309
+ */
310
+ .crewlet-filter-axis-chip__remove {
311
+ border-radius: 0;
312
+ border-left: 1px solid var(--color-brand-accent-soft-strong);
313
+ color: var(--color-brand-accent-ink);
314
+ }
315
+
316
+ /*
317
+ * Its ring is drawn INSIDE it, like the trigger's beside it. The pill clips to
318
+ * its own radius, so the outset ring an icon button carries everywhere else is
319
+ * cut off on every edge the control touches, which here is all of them.
320
+ */
321
+ .crewlet-filter-axis-chip__remove:focus-visible {
322
+ outline-offset: var(--size-focus-ring-inset-offset);
323
+ }
324
+
325
+ @media (prefers-reduced-motion: reduce) {
326
+ .crewlet-filter-axis-chip {
327
+ transition: none;
328
+ }
329
+ }
330
+
331
+ /* ── A chip's editor ──────────────────────────────────────────────────── */
332
+
333
+ .crewlet-filter-axis__popover {
334
+ padding: 0;
335
+ }
336
+
337
+ .crewlet-filter-axis__editor {
338
+ --crewlet-filter-axis-editor-width: 220px;
339
+ --crewlet-filter-axis-options-max: 280px;
340
+
341
+ min-width: var(--crewlet-filter-axis-editor-width);
342
+ }
343
+
344
+ .crewlet-filter-axis__editor--text,
345
+ .crewlet-filter-axis__editor--moment {
346
+ padding: var(--spacing-2);
347
+ }
348
+
349
+ /*
350
+ * The option list is ONE tab stop and takes the focus ring itself, because the
351
+ * rows inside it are not focusable: the highlight moves with the arrows and is
352
+ * announced through aria-activedescendant.
353
+ */
354
+ .crewlet-filter-axis__options {
355
+ display: flex;
356
+ flex-direction: column;
357
+ gap: 1px;
358
+ max-height: var(--crewlet-filter-axis-options-max);
359
+ overflow-y: auto;
360
+ padding: var(--spacing-2);
361
+ margin: 0;
362
+ list-style: none;
363
+ }
364
+
365
+ .crewlet-filter-axis__options:focus-visible {
366
+ outline: 2px solid var(--color-focus);
367
+ outline-offset: var(--size-focus-ring-inset-offset);
368
+ }
369
+
370
+ .crewlet-filter-axis__option {
371
+ display: flex;
372
+ align-items: center;
373
+ gap: var(--spacing-3);
374
+ padding: var(--spacing-2);
375
+ border-radius: var(--radius-sm);
376
+ cursor: pointer;
377
+ color: var(--color-text-primary);
378
+ font-size: var(--font-size-compact);
379
+ text-align: left;
380
+ }
381
+
382
+ .crewlet-filter-axis__option.is-highlight {
383
+ background: var(--color-surface-hover);
384
+ }
385
+
386
+ .crewlet-filter-axis__option.is-selected {
387
+ color: var(--color-brand-accent-ink);
388
+ }
389
+
390
+ .crewlet-filter-axis__option.is-disabled {
391
+ opacity: 0.5;
392
+ cursor: not-allowed;
393
+ }
394
+
395
+ /* The tick box: drawn by the design system rather than by the platform, so it
396
+ takes the accent at the same step every other chosen thing here does. */
397
+ .crewlet-filter-axis__tick {
398
+ display: inline-flex;
399
+ align-items: center;
400
+ justify-content: center;
401
+ flex: none;
402
+ width: var(--spacing-4);
403
+ height: var(--spacing-4);
404
+ border: 1px solid var(--color-border-control);
405
+ border-radius: var(--radius-xs);
406
+ background: var(--color-surface-subtle);
407
+ color: var(--color-text-on-accent);
408
+ }
409
+
410
+ .crewlet-filter-axis__tick.is-checked {
411
+ background: var(--color-brand-accent);
412
+ border-color: var(--color-brand-accent);
413
+ }
414
+
415
+ .crewlet-filter-axis__option-label {
416
+ flex: 1;
417
+ min-width: 0;
418
+ overflow: hidden;
419
+ text-overflow: ellipsis;
420
+ white-space: nowrap;
421
+ }
422
+
423
+ .crewlet-filter-axis__editor-footer {
424
+ display: flex;
425
+ justify-content: space-between;
426
+ gap: var(--spacing-2);
427
+ padding: var(--spacing-2);
428
+ border-top: 1px solid var(--color-border-default);
429
+ }
430
+
431
+ /*
432
+ * The panel's own toolbar band, held under the top of the scroller. It is the
433
+ * WHOLE band rather than the screen's half of it: the table's settings cog
434
+ * shares that row, and a row that pins half of itself leaves the other half
435
+ * behind.
436
+ */
437
+ .crewlet-data-view--sticky-toolbar .crewlet-data-table__toolbar {
438
+ position: sticky;
439
+ top: 0;
440
+ z-index: var(--z-index-sticky);
441
+ }
@@ -0,0 +1,91 @@
1
+ export interface DateTimePickerProps {
2
+ /** YYYY-MM-DDTHH:MM:SS, as `<input type="datetime-local" step="1">` emits. Empty when unset. */
3
+ value: string;
4
+ onChange: (value: string) => void;
5
+ placeholder?: string;
6
+ /** Show the hour, minute and second boxes under the calendar. */
7
+ showTime?: boolean;
8
+ /** Inclusive lower bound, as a YYYY-MM-DD or a full datetime-local string. */
9
+ minDate?: string;
10
+ /** Inclusive upper bound. */
11
+ maxDate?: string;
12
+ /** 0 is Sunday (the United States), 1 is Monday (ISO 8601). */
13
+ firstDayOfWeek?: 0 | 1;
14
+ /** Names the trigger and the dialog it opens. */
15
+ ariaLabel?: string;
16
+ /**
17
+ * Draws the panel itself, with no trigger and no overlay of its own.
18
+ *
19
+ * FOR A SURFACE THAT IS ALREADY AN OVERLAY. A filter chip's editor is a
20
+ * popover, and a picker inside one is a control that opens a control: a date
21
+ * took two presses and stacked two panels for one answer, which is the thing
22
+ * the chip editor refuses to do for a list of options. It is the same
23
+ * calendar, the same time boxes and the same bounds, because there is one
24
+ * picker rather than two.
25
+ */
26
+ inline?: boolean;
27
+ /**
28
+ * The reader is finished: Done pressed, or a day taken where there is no
29
+ * time to set. Inline only, where this has no panel of its own to close, so
30
+ * it is what the surface holding it closes on.
31
+ */
32
+ onDone?: (() => void) | undefined;
33
+ className?: string;
34
+ disabled?: boolean;
35
+ size?: 'sm' | 'md';
36
+ /** Every string the picker renders on its own, and the name it builds. */
37
+ labels?: Partial<DateTimePickerLabels> | undefined;
38
+ }
39
+ /** Every string the picker renders on its own, and the name it builds. */
40
+ export interface DateTimePickerLabels {
41
+ /**
42
+ * How the trigger is ANNOUNCED: its own name, and the moment it holds. The
43
+ * name has to carry the value, because an `aria-label` REPLACES the content
44
+ * of the element it is on, and a button drawn as a date that announces
45
+ * itself as "Starts at" is a control a reader cannot read the answer from.
46
+ */
47
+ triggerName: (name: string, value: string) => string;
48
+ /** What an unset value is called inside that name. */
49
+ unsetLabel: string;
50
+ previousYearLabel: string;
51
+ previousMonthLabel: string;
52
+ nextMonthLabel: string;
53
+ nextYearLabel: string;
54
+ timeLabel: string;
55
+ hourLabel: string;
56
+ minuteLabel: string;
57
+ secondLabel: string;
58
+ /** The shortcut, when there is a time to set. */
59
+ nowLabel: string;
60
+ /** The same shortcut where there is not. */
61
+ todayLabel: string;
62
+ clearLabel: string;
63
+ doneLabel: string;
64
+ }
65
+ export declare const DEFAULT_DATE_TIME_PICKER_LABELS: DateTimePickerLabels;
66
+ /**
67
+ * A day, and the time of day, in the product's own chrome.
68
+ *
69
+ * The native control's picker is the operating system's, so a Chrome on macOS
70
+ * one looks nothing like a Firefox on Windows one, and neither looks like
71
+ * anything else on the page. The value is the same string the native control
72
+ * emits, so a caller swaps one for the other without touching its state.
73
+ *
74
+ * THE MONTH IS A REAL GRID now, shared with every other picker
75
+ * ([CalendarGrid]): one tab stop, the arrows moving a day and a week, Page
76
+ * moving a month, and each day named by its full date rather than by the
77
+ * number drawn on it. It used to be 42 buttons in a row under a `grid` role
78
+ * with no rows in it.
79
+ *
80
+ * THE TRIGGER IS NAMED BY THE MOMENT IT HOLDS. It carried
81
+ * `aria-label={ariaLabel}` over its own text, and an `aria-label` REPLACES the
82
+ * content of the element it is on: a button drawn as "Mar 10, 2026, 09:30"
83
+ * announced itself as "Starts at" and nothing else, so the value it exists to
84
+ * show was the one thing a screen reader could not hear from it.
85
+ *
86
+ * AND THIS MOMENT IS ONE PRESS. Now (or Today, where there is no time to set)
87
+ * is the answer a filter is given more often than any other, and without it
88
+ * every screen that wanted the shortcut drew a button of its own beside the
89
+ * picker.
90
+ */
91
+ export declare function DateTimePicker({ value, onChange, placeholder, showTime, minDate, maxDate, firstDayOfWeek, ariaLabel, inline, onDone, className, disabled, size, labels: labelOverrides, }: DateTimePickerProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ import './DateTimePicker.css';
2
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from './DateTimePicker.js';
3
+ export type { DateTimePickerLabels, DateTimePickerProps } from './DateTimePicker.js';
@@ -0,0 +1,9 @@
1
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-UG46QBLT.js';
2
+ import '../chunk-DD5BBGBE.js';
3
+ import '../chunk-GXQ3B46I.js';
4
+ import '../chunk-7RPGY3JE.js';
5
+ import '../chunk-ITHXJHBB.js';
6
+ import '../chunk-F27EPQ7D.js';
7
+ import '../chunk-BZYDZBAN.js';
8
+ import '../chunk-BZFWDIV6.js';
9
+ import '../chunk-ODEQTPFM.js';