@sixthshift/design-system 0.2.1 → 0.4.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 (604) hide show
  1. package/README.md +242 -33
  2. package/dist/components/Badge/Badge.d.ts +65 -7
  3. package/dist/components/Badge/Badge.d.ts.map +1 -1
  4. package/dist/components/Badge/Badge.js +56 -46
  5. package/dist/components/Badge/Badge.js.map +1 -1
  6. package/dist/components/Badge/index.d.ts +1 -1
  7. package/dist/components/Badge/index.d.ts.map +1 -1
  8. package/dist/components/Badge/index.js +1 -1
  9. package/dist/components/Badge/index.js.map +1 -1
  10. package/dist/components/BarChart/BarChart.d.ts +20 -2
  11. package/dist/components/BarChart/BarChart.d.ts.map +1 -1
  12. package/dist/components/BarChart/BarChart.js +17 -3
  13. package/dist/components/BarChart/BarChart.js.map +1 -1
  14. package/dist/components/Button/Button.d.ts +85 -6
  15. package/dist/components/Button/Button.d.ts.map +1 -1
  16. package/dist/components/Button/Button.js +97 -106
  17. package/dist/components/Button/Button.js.map +1 -1
  18. package/dist/components/Button/index.d.ts +1 -1
  19. package/dist/components/Button/index.d.ts.map +1 -1
  20. package/dist/components/Button/index.js +1 -1
  21. package/dist/components/Button/index.js.map +1 -1
  22. package/dist/components/Calendar/Calendar.d.ts +31 -1
  23. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  24. package/dist/components/Calendar/Calendar.js +94 -225
  25. package/dist/components/Calendar/Calendar.js.map +1 -1
  26. package/dist/components/Calendar/CalendarView.d.ts +15 -0
  27. package/dist/components/Calendar/CalendarView.d.ts.map +1 -0
  28. package/dist/components/Calendar/CalendarView.js +263 -0
  29. package/dist/components/Calendar/CalendarView.js.map +1 -0
  30. package/dist/components/Calendar/calendar.types.d.ts +87 -27
  31. package/dist/components/Calendar/calendar.types.d.ts.map +1 -1
  32. package/dist/components/Calendar/calendar.types.js +10 -3
  33. package/dist/components/Calendar/calendar.types.js.map +1 -1
  34. package/dist/components/Calendar/index.d.ts +16 -2
  35. package/dist/components/Calendar/index.d.ts.map +1 -1
  36. package/dist/components/Calendar/index.js +15 -1
  37. package/dist/components/Calendar/index.js.map +1 -1
  38. package/dist/components/Card/Card.d.ts +13 -0
  39. package/dist/components/Card/Card.d.ts.map +1 -1
  40. package/dist/components/Card/Card.js +15 -2
  41. package/dist/components/Card/Card.js.map +1 -1
  42. package/dist/components/Checkbox/Checkbox.d.ts +21 -0
  43. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
  44. package/dist/components/Checkbox/Checkbox.js +22 -1
  45. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  46. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +22 -0
  47. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts.map +1 -1
  48. package/dist/components/CheckboxGroup/CheckboxGroup.js +22 -0
  49. package/dist/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
  50. package/dist/components/Code/Editor/Editor.js +2 -2
  51. package/dist/components/Code/Editor/Editor.js.map +1 -1
  52. package/dist/components/Code/Editor/themes.d.ts +2 -2
  53. package/dist/components/Code/Editor/themes.d.ts.map +1 -1
  54. package/dist/components/Code/Editor/themes.js +50 -32
  55. package/dist/components/Code/Editor/themes.js.map +1 -1
  56. package/dist/components/Code/ValidationStatus/ValidationStatus.d.ts.map +1 -1
  57. package/dist/components/Code/ValidationStatus/ValidationStatus.js.map +1 -1
  58. package/dist/components/DatePicker/DatePicker.d.ts +45 -2
  59. package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
  60. package/dist/components/DatePicker/DatePicker.js +228 -11
  61. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  62. package/dist/components/DatePicker/DateSegments.d.ts +60 -0
  63. package/dist/components/DatePicker/DateSegments.d.ts.map +1 -0
  64. package/dist/components/DatePicker/DateSegments.js +80 -0
  65. package/dist/components/DatePicker/DateSegments.js.map +1 -0
  66. package/dist/components/DatePicker/datepicker.types.d.ts +53 -37
  67. package/dist/components/DatePicker/datepicker.types.d.ts.map +1 -1
  68. package/dist/components/DatePicker/datepicker.types.js +5 -3
  69. package/dist/components/DatePicker/datepicker.types.js.map +1 -1
  70. package/dist/components/DatePicker/index.d.ts +10 -1
  71. package/dist/components/DatePicker/index.d.ts.map +1 -1
  72. package/dist/components/DatePicker/index.js +8 -0
  73. package/dist/components/DatePicker/index.js.map +1 -1
  74. package/dist/components/DateRangePicker/DateRangePicker.d.ts +22 -3
  75. package/dist/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  76. package/dist/components/DateRangePicker/DateRangePicker.js +38 -24
  77. package/dist/components/DateRangePicker/DateRangePicker.js.map +1 -1
  78. package/dist/components/DateRangePicker/daterangepicker.types.d.ts +26 -21
  79. package/dist/components/DateRangePicker/daterangepicker.types.d.ts.map +1 -1
  80. package/dist/components/DateRangePicker/daterangepicker.types.js +6 -0
  81. package/dist/components/DateRangePicker/daterangepicker.types.js.map +1 -1
  82. package/dist/components/DateRangePicker/index.d.ts +8 -1
  83. package/dist/components/DateRangePicker/index.d.ts.map +1 -1
  84. package/dist/components/DateRangePicker/index.js +6 -0
  85. package/dist/components/DateRangePicker/index.js.map +1 -1
  86. package/dist/components/DateTimePicker/DateTimePicker.d.ts +32 -4
  87. package/dist/components/DateTimePicker/DateTimePicker.d.ts.map +1 -1
  88. package/dist/components/DateTimePicker/DateTimePicker.js +133 -42
  89. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
  90. package/dist/components/DateTimePicker/DateTimeSegments.d.ts +41 -0
  91. package/dist/components/DateTimePicker/DateTimeSegments.d.ts.map +1 -0
  92. package/dist/components/DateTimePicker/DateTimeSegments.js +67 -0
  93. package/dist/components/DateTimePicker/DateTimeSegments.js.map +1 -0
  94. package/dist/components/DateTimePicker/datetimepicker.types.d.ts +26 -18
  95. package/dist/components/DateTimePicker/datetimepicker.types.d.ts.map +1 -1
  96. package/dist/components/DateTimePicker/datetimepicker.types.js +10 -0
  97. package/dist/components/DateTimePicker/datetimepicker.types.js.map +1 -1
  98. package/dist/components/DateTimePicker/index.d.ts +8 -1
  99. package/dist/components/DateTimePicker/index.d.ts.map +1 -1
  100. package/dist/components/DateTimePicker/index.js +6 -0
  101. package/dist/components/DateTimePicker/index.js.map +1 -1
  102. package/dist/components/DateTimeRangePicker/DateTimeRangePicker.d.ts +30 -4
  103. package/dist/components/DateTimeRangePicker/DateTimeRangePicker.d.ts.map +1 -1
  104. package/dist/components/DateTimeRangePicker/DateTimeRangePicker.js +171 -72
  105. package/dist/components/DateTimeRangePicker/DateTimeRangePicker.js.map +1 -1
  106. package/dist/components/DateTimeRangePicker/datetimerangepicker.types.d.ts +28 -19
  107. package/dist/components/DateTimeRangePicker/datetimerangepicker.types.d.ts.map +1 -1
  108. package/dist/components/DateTimeRangePicker/datetimerangepicker.types.js +8 -0
  109. package/dist/components/DateTimeRangePicker/datetimerangepicker.types.js.map +1 -1
  110. package/dist/components/DateTimeRangePicker/index.d.ts +8 -0
  111. package/dist/components/DateTimeRangePicker/index.d.ts.map +1 -1
  112. package/dist/components/DateTimeRangePicker/index.js +7 -0
  113. package/dist/components/DateTimeRangePicker/index.js.map +1 -1
  114. package/dist/components/Field/Field.d.ts +18 -20
  115. package/dist/components/Field/Field.d.ts.map +1 -1
  116. package/dist/components/Field/Field.js +22 -5
  117. package/dist/components/Field/Field.js.map +1 -1
  118. package/dist/components/FormField/FormField.d.ts +15 -0
  119. package/dist/components/FormField/FormField.d.ts.map +1 -1
  120. package/dist/components/FormField/FormField.js +15 -0
  121. package/dist/components/FormField/FormField.js.map +1 -1
  122. package/dist/components/HoverCard/HoverCard.d.ts +6 -0
  123. package/dist/components/HoverCard/HoverCard.d.ts.map +1 -1
  124. package/dist/components/HoverCard/HoverCard.js +6 -0
  125. package/dist/components/HoverCard/HoverCard.js.map +1 -1
  126. package/dist/components/Input/Input.d.ts +15 -0
  127. package/dist/components/Input/Input.d.ts.map +1 -1
  128. package/dist/components/Input/Input.js +18 -3
  129. package/dist/components/Input/Input.js.map +1 -1
  130. package/dist/components/LineChart/LineChart.d.ts +35 -2
  131. package/dist/components/LineChart/LineChart.d.ts.map +1 -1
  132. package/dist/components/LineChart/LineChart.js +22 -3
  133. package/dist/components/LineChart/LineChart.js.map +1 -1
  134. package/dist/components/Markdown/Markdown.d.ts +19 -4
  135. package/dist/components/Markdown/Markdown.d.ts.map +1 -1
  136. package/dist/components/Markdown/Markdown.js +20 -2
  137. package/dist/components/Markdown/Markdown.js.map +1 -1
  138. package/dist/components/Message/Message.d.ts +49 -4
  139. package/dist/components/Message/Message.d.ts.map +1 -1
  140. package/dist/components/Message/Message.js +62 -11
  141. package/dist/components/Message/Message.js.map +1 -1
  142. package/dist/components/Message/index.d.ts +1 -1
  143. package/dist/components/Message/index.d.ts.map +1 -1
  144. package/dist/components/Modal/Modal.d.ts +60 -5
  145. package/dist/components/Modal/Modal.d.ts.map +1 -1
  146. package/dist/components/Modal/Modal.js +52 -6
  147. package/dist/components/Modal/Modal.js.map +1 -1
  148. package/dist/components/Modal/components/ModalContext.d.ts +14 -0
  149. package/dist/components/Modal/components/ModalContext.d.ts.map +1 -1
  150. package/dist/components/Modal/components/ModalContext.js.map +1 -1
  151. package/dist/components/Modal/components/ModalHeader.d.ts.map +1 -1
  152. package/dist/components/Modal/components/ModalHeader.js +13 -2
  153. package/dist/components/Modal/components/ModalHeader.js.map +1 -1
  154. package/dist/components/Popover/Popover.d.ts +29 -0
  155. package/dist/components/Popover/Popover.d.ts.map +1 -1
  156. package/dist/components/Popover/Popover.js +36 -0
  157. package/dist/components/Popover/Popover.js.map +1 -1
  158. package/dist/components/Popover/components/PopoverBody.d.ts.map +1 -1
  159. package/dist/components/Popover/components/PopoverBody.js +5 -2
  160. package/dist/components/Popover/components/PopoverBody.js.map +1 -1
  161. package/dist/components/Popover/components/PopoverContext.d.ts +1 -0
  162. package/dist/components/Popover/components/PopoverContext.d.ts.map +1 -1
  163. package/dist/components/Popover/components/PopoverContext.js.map +1 -1
  164. package/dist/components/Popover/components/PopoverTrigger.d.ts.map +1 -1
  165. package/dist/components/Popover/components/PopoverTrigger.js +2 -2
  166. package/dist/components/Popover/components/PopoverTrigger.js.map +1 -1
  167. package/dist/components/ProgressBar/ProgressBar.d.ts +16 -1
  168. package/dist/components/ProgressBar/ProgressBar.d.ts.map +1 -1
  169. package/dist/components/ProgressBar/ProgressBar.js +19 -3
  170. package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
  171. package/dist/components/RadioButton/RadioButton.d.ts +26 -0
  172. package/dist/components/RadioButton/RadioButton.d.ts.map +1 -1
  173. package/dist/components/RadioButton/RadioButton.js +35 -1
  174. package/dist/components/RadioButton/RadioButton.js.map +1 -1
  175. package/dist/components/RadioButtonGroup/RadioButtonGroup.d.ts +26 -0
  176. package/dist/components/RadioButtonGroup/RadioButtonGroup.d.ts.map +1 -1
  177. package/dist/components/RadioButtonGroup/RadioButtonGroup.js +33 -0
  178. package/dist/components/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  179. package/dist/components/SearchInput/SearchInput.d.ts +10 -0
  180. package/dist/components/SearchInput/SearchInput.d.ts.map +1 -1
  181. package/dist/components/SearchInput/SearchInput.js +12 -1
  182. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  183. package/dist/components/Select/Select.d.ts +10 -2
  184. package/dist/components/Select/Select.d.ts.map +1 -1
  185. package/dist/components/Select/Select.js +63 -18
  186. package/dist/components/Select/Select.js.map +1 -1
  187. package/dist/components/Select/SelectDropdown.d.ts +14 -2
  188. package/dist/components/Select/SelectDropdown.d.ts.map +1 -1
  189. package/dist/components/Select/SelectDropdown.js +20 -4
  190. package/dist/components/Select/SelectDropdown.js.map +1 -1
  191. package/dist/components/Select/SelectTrigger.d.ts +10 -3
  192. package/dist/components/Select/SelectTrigger.d.ts.map +1 -1
  193. package/dist/components/Select/SelectTrigger.js +12 -3
  194. package/dist/components/Select/SelectTrigger.js.map +1 -1
  195. package/dist/components/Select/useSelectKeyboard.d.ts +15 -1
  196. package/dist/components/Select/useSelectKeyboard.d.ts.map +1 -1
  197. package/dist/components/Select/useSelectKeyboard.js +73 -65
  198. package/dist/components/Select/useSelectKeyboard.js.map +1 -1
  199. package/dist/components/Separator/Separator.d.ts +10 -0
  200. package/dist/components/Separator/Separator.d.ts.map +1 -1
  201. package/dist/components/Separator/Separator.js +10 -0
  202. package/dist/components/Separator/Separator.js.map +1 -1
  203. package/dist/components/Sheet/Sheet.d.ts +25 -5
  204. package/dist/components/Sheet/Sheet.d.ts.map +1 -1
  205. package/dist/components/Sheet/Sheet.js +24 -6
  206. package/dist/components/Sheet/Sheet.js.map +1 -1
  207. package/dist/components/Sheet/components/SheetContext.d.ts +10 -0
  208. package/dist/components/Sheet/components/SheetContext.d.ts.map +1 -1
  209. package/dist/components/Sheet/components/SheetContext.js.map +1 -1
  210. package/dist/components/Sheet/components/SheetFooter.js +1 -1
  211. package/dist/components/Sheet/components/SheetFooter.js.map +1 -1
  212. package/dist/components/Sheet/components/SheetHeader.d.ts.map +1 -1
  213. package/dist/components/Sheet/components/SheetHeader.js +11 -2
  214. package/dist/components/Sheet/components/SheetHeader.js.map +1 -1
  215. package/dist/components/Sparkline/Sparkline.d.ts +21 -2
  216. package/dist/components/Sparkline/Sparkline.d.ts.map +1 -1
  217. package/dist/components/Sparkline/Sparkline.js +16 -3
  218. package/dist/components/Sparkline/Sparkline.js.map +1 -1
  219. package/dist/components/Spinner/Spinner.d.ts +27 -2
  220. package/dist/components/Spinner/Spinner.d.ts.map +1 -1
  221. package/dist/components/Spinner/Spinner.js +28 -3
  222. package/dist/components/Spinner/Spinner.js.map +1 -1
  223. package/dist/components/Switch/Switch.d.ts +18 -0
  224. package/dist/components/Switch/Switch.d.ts.map +1 -1
  225. package/dist/components/Switch/Switch.js +19 -1
  226. package/dist/components/Switch/Switch.js.map +1 -1
  227. package/dist/components/Tabs/Tabs.d.ts +8 -2
  228. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  229. package/dist/components/Tabs/Tabs.js +6 -0
  230. package/dist/components/Tabs/Tabs.js.map +1 -1
  231. package/dist/components/Tabs/components/TabsList.d.ts +1 -1
  232. package/dist/components/Tabs/components/TabsList.d.ts.map +1 -1
  233. package/dist/components/Tabs/components/TabsList.js +5 -4
  234. package/dist/components/Tabs/components/TabsList.js.map +1 -1
  235. package/dist/components/Tabs/components/TabsPanels.d.ts +1 -1
  236. package/dist/components/Tabs/components/TabsPanels.d.ts.map +1 -1
  237. package/dist/components/Tabs/components/TabsPanels.js +5 -3
  238. package/dist/components/Tabs/components/TabsPanels.js.map +1 -1
  239. package/dist/components/Tabs/components/TabsTrigger.d.ts.map +1 -1
  240. package/dist/components/Tabs/components/TabsTrigger.js +22 -6
  241. package/dist/components/Tabs/components/TabsTrigger.js.map +1 -1
  242. package/dist/components/TagChip/TagChip.d.ts +16 -13
  243. package/dist/components/TagChip/TagChip.d.ts.map +1 -1
  244. package/dist/components/TagChip/TagChip.js +18 -3
  245. package/dist/components/TagChip/TagChip.js.map +1 -1
  246. package/dist/components/TagInput/TagInput.d.ts +12 -9
  247. package/dist/components/TagInput/TagInput.d.ts.map +1 -1
  248. package/dist/components/TagInput/TagInput.js +16 -4
  249. package/dist/components/TagInput/TagInput.js.map +1 -1
  250. package/dist/components/Text/Text.d.ts +9 -0
  251. package/dist/components/Text/Text.d.ts.map +1 -1
  252. package/dist/components/Text/Text.js +9 -0
  253. package/dist/components/Text/Text.js.map +1 -1
  254. package/dist/components/TextInline/TextInline.d.ts +15 -4
  255. package/dist/components/TextInline/TextInline.d.ts.map +1 -1
  256. package/dist/components/TextInline/TextInline.js +11 -0
  257. package/dist/components/TextInline/TextInline.js.map +1 -1
  258. package/dist/components/Textarea/Textarea.d.ts +12 -0
  259. package/dist/components/Textarea/Textarea.d.ts.map +1 -1
  260. package/dist/components/Textarea/Textarea.js +13 -1
  261. package/dist/components/Textarea/Textarea.js.map +1 -1
  262. package/dist/components/TimePicker/TimeColumn.d.ts +10 -1
  263. package/dist/components/TimePicker/TimeColumn.d.ts.map +1 -1
  264. package/dist/components/TimePicker/TimeColumn.js +8 -1
  265. package/dist/components/TimePicker/TimeColumn.js.map +1 -1
  266. package/dist/components/TimePicker/TimePicker.d.ts +34 -2
  267. package/dist/components/TimePicker/TimePicker.d.ts.map +1 -1
  268. package/dist/components/TimePicker/TimePicker.js +118 -15
  269. package/dist/components/TimePicker/TimePicker.js.map +1 -1
  270. package/dist/components/TimePicker/TimeSegments.d.ts +50 -0
  271. package/dist/components/TimePicker/TimeSegments.d.ts.map +1 -0
  272. package/dist/components/TimePicker/TimeSegments.js +93 -0
  273. package/dist/components/TimePicker/TimeSegments.js.map +1 -0
  274. package/dist/components/TimePicker/timepicker.hooks.d.ts +0 -4
  275. package/dist/components/TimePicker/timepicker.hooks.d.ts.map +1 -1
  276. package/dist/components/TimePicker/timepicker.hooks.js +1 -23
  277. package/dist/components/TimePicker/timepicker.hooks.js.map +1 -1
  278. package/dist/components/TimePicker/timepicker.types.d.ts +14 -15
  279. package/dist/components/TimePicker/timepicker.types.d.ts.map +1 -1
  280. package/dist/components/TimePicker/timepicker.types.js +4 -3
  281. package/dist/components/TimePicker/timepicker.types.js.map +1 -1
  282. package/dist/components/Toast/Toast.d.ts +27 -0
  283. package/dist/components/Toast/Toast.d.ts.map +1 -1
  284. package/dist/components/Toast/Toast.js +28 -1
  285. package/dist/components/Toast/Toast.js.map +1 -1
  286. package/dist/components/Toggle/Toggle.d.ts +31 -12
  287. package/dist/components/Toggle/Toggle.d.ts.map +1 -1
  288. package/dist/components/Toggle/Toggle.js +19 -31
  289. package/dist/components/Toggle/Toggle.js.map +1 -1
  290. package/dist/components/Toggle/index.d.ts +1 -1
  291. package/dist/components/Toggle/index.d.ts.map +1 -1
  292. package/dist/components/Toggle/index.js +1 -1
  293. package/dist/components/Toggle/index.js.map +1 -1
  294. package/dist/components/ToggleGroup/ToggleGroup.d.ts +17 -0
  295. package/dist/components/ToggleGroup/ToggleGroup.d.ts.map +1 -1
  296. package/dist/components/ToggleGroup/ToggleGroup.js +17 -0
  297. package/dist/components/ToggleGroup/ToggleGroup.js.map +1 -1
  298. package/dist/components/ToggleGroup/ToggleGroupItem.d.ts +1 -1
  299. package/dist/components/ToggleGroup/ToggleGroupItem.d.ts.map +1 -1
  300. package/dist/components/ToggleGroup/ToggleGroupItem.js +7 -6
  301. package/dist/components/ToggleGroup/ToggleGroupItem.js.map +1 -1
  302. package/dist/components/ToggleGroup/ToggleGroupMultiple.d.ts +4 -3
  303. package/dist/components/ToggleGroup/ToggleGroupMultiple.d.ts.map +1 -1
  304. package/dist/components/ToggleGroup/ToggleGroupMultiple.js +2 -2
  305. package/dist/components/ToggleGroup/ToggleGroupMultiple.js.map +1 -1
  306. package/dist/components/ToggleGroup/ToggleGroupSingle.d.ts +4 -3
  307. package/dist/components/ToggleGroup/ToggleGroupSingle.d.ts.map +1 -1
  308. package/dist/components/ToggleGroup/ToggleGroupSingle.js +2 -2
  309. package/dist/components/ToggleGroup/ToggleGroupSingle.js.map +1 -1
  310. package/dist/components/ToggleGroup/toggleGroup.types.d.ts +12 -3
  311. package/dist/components/ToggleGroup/toggleGroup.types.d.ts.map +1 -1
  312. package/dist/components/Tooltip/Tooltip.d.ts +6 -0
  313. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  314. package/dist/components/Tooltip/Tooltip.js +6 -0
  315. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  316. package/dist/date-time/index.d.ts +2 -0
  317. package/dist/date-time/index.d.ts.map +1 -1
  318. package/dist/date-time/index.js +9 -1
  319. package/dist/date-time/index.js.map +1 -1
  320. package/dist/date-time/iso.d.ts +261 -0
  321. package/dist/date-time/iso.d.ts.map +1 -0
  322. package/dist/date-time/iso.js +358 -0
  323. package/dist/date-time/iso.js.map +1 -0
  324. package/dist/date-time/now.d.ts +7 -6
  325. package/dist/date-time/now.d.ts.map +1 -1
  326. package/dist/date-time/now.js +3 -3
  327. package/dist/date-time/now.js.map +1 -1
  328. package/dist/internal/PickerField.d.ts +45 -0
  329. package/dist/internal/PickerField.d.ts.map +1 -0
  330. package/dist/internal/PickerField.js +24 -0
  331. package/dist/internal/PickerField.js.map +1 -0
  332. package/dist/internal/SegmentedField.d.ts +98 -0
  333. package/dist/internal/SegmentedField.d.ts.map +1 -0
  334. package/dist/internal/SegmentedField.js +315 -0
  335. package/dist/internal/SegmentedField.js.map +1 -0
  336. package/dist/internal/index.d.ts +2 -0
  337. package/dist/internal/index.d.ts.map +1 -1
  338. package/dist/internal/index.js +2 -0
  339. package/dist/internal/index.js.map +1 -1
  340. package/dist/theme/index.d.ts +4 -3
  341. package/dist/theme/index.d.ts.map +1 -1
  342. package/dist/theme/index.js +3 -2
  343. package/dist/theme/index.js.map +1 -1
  344. package/dist/theme/schema.d.ts +49 -33
  345. package/dist/theme/schema.d.ts.map +1 -1
  346. package/dist/theme/schema.js +30 -21
  347. package/dist/theme/schema.js.map +1 -1
  348. package/package.json +11 -59
  349. package/src/components/Badge/Badge.tsx +87 -49
  350. package/src/components/Badge/index.ts +10 -1
  351. package/src/components/BarChart/BarChart.tsx +37 -30
  352. package/src/components/Button/Button.tsx +129 -106
  353. package/src/components/Button/index.ts +10 -1
  354. package/src/components/Calendar/Calendar.tsx +104 -401
  355. package/src/components/Calendar/CalendarView.tsx +454 -0
  356. package/src/components/Calendar/calendar.types.ts +104 -29
  357. package/src/components/Calendar/index.ts +16 -17
  358. package/src/components/Card/Card.tsx +15 -2
  359. package/src/components/Checkbox/Checkbox.tsx +22 -2
  360. package/src/components/CheckboxGroup/CheckboxGroup.tsx +22 -0
  361. package/src/components/Code/Editor/Editor.tsx +2 -2
  362. package/src/components/Code/Editor/themes.ts +50 -32
  363. package/src/components/Code/ValidationStatus/ValidationStatus.tsx +6 -3
  364. package/src/components/DatePicker/DatePicker.tsx +369 -42
  365. package/src/components/DatePicker/DateSegments.tsx +125 -0
  366. package/src/components/DatePicker/datepicker.types.ts +58 -39
  367. package/src/components/DatePicker/index.ts +11 -3
  368. package/src/components/DateRangePicker/DateRangePicker.tsx +38 -24
  369. package/src/components/DateRangePicker/daterangepicker.types.ts +29 -23
  370. package/src/components/DateRangePicker/index.ts +9 -1
  371. package/src/components/DateTimePicker/DateTimePicker.tsx +189 -88
  372. package/src/components/DateTimePicker/DateTimeSegments.tsx +113 -0
  373. package/src/components/DateTimePicker/datetimepicker.types.ts +29 -19
  374. package/src/components/DateTimePicker/index.ts +9 -1
  375. package/src/components/DateTimeRangePicker/DateTimeRangePicker.tsx +251 -126
  376. package/src/components/DateTimeRangePicker/datetimerangepicker.types.ts +31 -20
  377. package/src/components/DateTimeRangePicker/index.ts +9 -0
  378. package/src/components/Field/Field.tsx +25 -26
  379. package/src/components/FormField/FormField.tsx +15 -0
  380. package/src/components/HoverCard/HoverCard.tsx +6 -0
  381. package/src/components/Input/Input.tsx +19 -4
  382. package/src/components/LineChart/LineChart.tsx +164 -141
  383. package/src/components/Markdown/Markdown.tsx +21 -3
  384. package/src/components/Message/Message.tsx +83 -17
  385. package/src/components/Message/index.ts +1 -1
  386. package/src/components/Modal/Modal.tsx +157 -86
  387. package/src/components/Modal/components/ModalContext.tsx +14 -0
  388. package/src/components/Modal/components/ModalHeader.tsx +15 -3
  389. package/src/components/Popover/Popover.tsx +36 -0
  390. package/src/components/Popover/components/PopoverBody.tsx +6 -1
  391. package/src/components/Popover/components/PopoverContext.tsx +1 -0
  392. package/src/components/Popover/components/PopoverTrigger.tsx +2 -1
  393. package/src/components/ProgressBar/ProgressBar.tsx +46 -28
  394. package/src/components/RadioButton/RadioButton.tsx +34 -3
  395. package/src/components/RadioButtonGroup/RadioButtonGroup.tsx +32 -0
  396. package/src/components/SearchInput/SearchInput.tsx +13 -2
  397. package/src/components/Select/Select.tsx +75 -19
  398. package/src/components/Select/SelectDropdown.tsx +45 -12
  399. package/src/components/Select/SelectTrigger.tsx +31 -8
  400. package/src/components/Select/useSelectKeyboard.ts +20 -10
  401. package/src/components/Separator/Separator.tsx +10 -0
  402. package/src/components/Sheet/Sheet.tsx +114 -83
  403. package/src/components/Sheet/components/SheetContext.tsx +10 -0
  404. package/src/components/Sheet/components/SheetFooter.tsx +1 -1
  405. package/src/components/Sheet/components/SheetHeader.tsx +18 -3
  406. package/src/components/Sparkline/Sparkline.tsx +40 -36
  407. package/src/components/Spinner/Spinner.tsx +28 -3
  408. package/src/components/Switch/Switch.tsx +27 -4
  409. package/src/components/Tabs/Tabs.tsx +6 -0
  410. package/src/components/Tabs/components/TabsList.tsx +5 -3
  411. package/src/components/Tabs/components/TabsPanels.tsx +5 -3
  412. package/src/components/Tabs/components/TabsTrigger.tsx +22 -5
  413. package/src/components/TagChip/TagChip.tsx +27 -18
  414. package/src/components/TagInput/TagInput.tsx +16 -11
  415. package/src/components/Text/Text.tsx +9 -0
  416. package/src/components/TextInline/TextInline.tsx +11 -0
  417. package/src/components/Textarea/Textarea.tsx +13 -1
  418. package/src/components/TimePicker/TimeColumn.tsx +24 -1
  419. package/src/components/TimePicker/TimePicker.tsx +157 -51
  420. package/src/components/TimePicker/TimeSegments.tsx +131 -0
  421. package/src/components/TimePicker/timepicker.hooks.ts +1 -24
  422. package/src/components/TimePicker/timepicker.types.ts +14 -16
  423. package/src/components/Toast/Toast.tsx +28 -1
  424. package/src/components/Toggle/Toggle.tsx +34 -32
  425. package/src/components/Toggle/index.ts +1 -1
  426. package/src/components/ToggleGroup/ToggleGroup.tsx +17 -0
  427. package/src/components/ToggleGroup/ToggleGroupItem.tsx +13 -8
  428. package/src/components/ToggleGroup/ToggleGroupMultiple.tsx +3 -1
  429. package/src/components/ToggleGroup/ToggleGroupSingle.tsx +3 -1
  430. package/src/components/ToggleGroup/toggleGroup.types.ts +12 -3
  431. package/src/components/Tooltip/Tooltip.tsx +6 -0
  432. package/src/date-time/index.ts +61 -1
  433. package/src/date-time/iso.ts +511 -0
  434. package/src/date-time/now.ts +10 -9
  435. package/src/internal/PickerField.tsx +90 -0
  436. package/src/internal/SegmentedField.tsx +445 -0
  437. package/src/internal/index.ts +2 -0
  438. package/src/theme/index.ts +11 -9
  439. package/src/theme/recipes/badge.css +140 -0
  440. package/src/theme/recipes/button.css +167 -0
  441. package/src/theme/recipes/card.css +26 -0
  442. package/src/theme/recipes/checkbox.css +44 -0
  443. package/src/theme/recipes/field.css +14 -0
  444. package/src/theme/recipes/index.css +28 -0
  445. package/src/theme/recipes/input.css +29 -0
  446. package/src/theme/recipes/message.css +47 -0
  447. package/src/theme/recipes/modal.css +31 -0
  448. package/src/theme/recipes/radio-button.css +42 -0
  449. package/src/theme/recipes/search-input.css +16 -0
  450. package/src/theme/recipes/select.css +105 -0
  451. package/src/theme/recipes/sheet.css +34 -0
  452. package/src/theme/recipes/spinner.css +17 -0
  453. package/src/theme/recipes/switch.css +39 -0
  454. package/src/theme/recipes/tabs.css +41 -0
  455. package/src/theme/recipes/tag-chip.css +27 -0
  456. package/src/theme/recipes/textarea.css +20 -0
  457. package/src/theme/recipes/toggle.css +92 -0
  458. package/src/theme/schema.ts +59 -58
  459. package/src/theme/tokens.css +824 -0
  460. package/dist/components/Avatar/Avatar.d.ts +0 -6
  461. package/dist/components/Avatar/Avatar.d.ts.map +0 -1
  462. package/dist/components/Avatar/Avatar.js +0 -11
  463. package/dist/components/Avatar/Avatar.js.map +0 -1
  464. package/dist/components/Avatar/index.d.ts +0 -2
  465. package/dist/components/Avatar/index.d.ts.map +0 -1
  466. package/dist/components/Avatar/index.js +0 -2
  467. package/dist/components/Avatar/index.js.map +0 -1
  468. package/dist/components/Breadcrumb/Breadcrumb.d.ts +0 -12
  469. package/dist/components/Breadcrumb/Breadcrumb.d.ts.map +0 -1
  470. package/dist/components/Breadcrumb/Breadcrumb.js +0 -19
  471. package/dist/components/Breadcrumb/Breadcrumb.js.map +0 -1
  472. package/dist/components/Breadcrumb/index.d.ts +0 -2
  473. package/dist/components/Breadcrumb/index.d.ts.map +0 -1
  474. package/dist/components/Breadcrumb/index.js +0 -2
  475. package/dist/components/Breadcrumb/index.js.map +0 -1
  476. package/dist/components/ColorDot/ColorDot.d.ts +0 -13
  477. package/dist/components/ColorDot/ColorDot.d.ts.map +0 -1
  478. package/dist/components/ColorDot/ColorDot.js +0 -34
  479. package/dist/components/ColorDot/ColorDot.js.map +0 -1
  480. package/dist/components/ColorDot/index.d.ts +0 -2
  481. package/dist/components/ColorDot/index.d.ts.map +0 -1
  482. package/dist/components/ColorDot/index.js +0 -2
  483. package/dist/components/ColorDot/index.js.map +0 -1
  484. package/dist/components/EmptyState/EmptyState.d.ts +0 -15
  485. package/dist/components/EmptyState/EmptyState.d.ts.map +0 -1
  486. package/dist/components/EmptyState/EmptyState.js +0 -7
  487. package/dist/components/EmptyState/EmptyState.js.map +0 -1
  488. package/dist/components/EmptyState/index.d.ts +0 -2
  489. package/dist/components/EmptyState/index.d.ts.map +0 -1
  490. package/dist/components/EmptyState/index.js +0 -2
  491. package/dist/components/EmptyState/index.js.map +0 -1
  492. package/dist/components/HeatMap/HeatMapCalendar.d.ts +0 -11
  493. package/dist/components/HeatMap/HeatMapCalendar.d.ts.map +0 -1
  494. package/dist/components/HeatMap/HeatMapCalendar.js +0 -68
  495. package/dist/components/HeatMap/HeatMapCalendar.js.map +0 -1
  496. package/dist/components/HeatMap/HeatMapMatrix.d.ts +0 -12
  497. package/dist/components/HeatMap/HeatMapMatrix.d.ts.map +0 -1
  498. package/dist/components/HeatMap/HeatMapMatrix.js +0 -35
  499. package/dist/components/HeatMap/HeatMapMatrix.js.map +0 -1
  500. package/dist/components/HeatMap/heat-map.utils.d.ts +0 -10
  501. package/dist/components/HeatMap/heat-map.utils.d.ts.map +0 -1
  502. package/dist/components/HeatMap/heat-map.utils.js +0 -10
  503. package/dist/components/HeatMap/heat-map.utils.js.map +0 -1
  504. package/dist/components/HeatMap/index.d.ts +0 -4
  505. package/dist/components/HeatMap/index.d.ts.map +0 -1
  506. package/dist/components/HeatMap/index.js +0 -3
  507. package/dist/components/HeatMap/index.js.map +0 -1
  508. package/dist/components/MetricList/MetricList.d.ts +0 -9
  509. package/dist/components/MetricList/MetricList.d.ts.map +0 -1
  510. package/dist/components/MetricList/MetricList.js +0 -6
  511. package/dist/components/MetricList/MetricList.js.map +0 -1
  512. package/dist/components/MetricList/MetricRow.d.ts +0 -13
  513. package/dist/components/MetricList/MetricRow.d.ts.map +0 -1
  514. package/dist/components/MetricList/MetricRow.js +0 -13
  515. package/dist/components/MetricList/MetricRow.js.map +0 -1
  516. package/dist/components/MetricList/index.d.ts +0 -3
  517. package/dist/components/MetricList/index.d.ts.map +0 -1
  518. package/dist/components/MetricList/index.js +0 -3
  519. package/dist/components/MetricList/index.js.map +0 -1
  520. package/dist/components/NavBottom/NavBottom.d.ts +0 -15
  521. package/dist/components/NavBottom/NavBottom.d.ts.map +0 -1
  522. package/dist/components/NavBottom/NavBottom.js +0 -19
  523. package/dist/components/NavBottom/NavBottom.js.map +0 -1
  524. package/dist/components/NavBottom/index.d.ts +0 -3
  525. package/dist/components/NavBottom/index.d.ts.map +0 -1
  526. package/dist/components/NavBottom/index.js +0 -2
  527. package/dist/components/NavBottom/index.js.map +0 -1
  528. package/dist/components/NavSide/NavItem.d.ts +0 -9
  529. package/dist/components/NavSide/NavItem.d.ts.map +0 -1
  530. package/dist/components/NavSide/NavItem.js +0 -13
  531. package/dist/components/NavSide/NavItem.js.map +0 -1
  532. package/dist/components/NavSide/NavSide.d.ts +0 -15
  533. package/dist/components/NavSide/NavSide.d.ts.map +0 -1
  534. package/dist/components/NavSide/NavSide.js +0 -10
  535. package/dist/components/NavSide/NavSide.js.map +0 -1
  536. package/dist/components/NavSide/index.d.ts +0 -3
  537. package/dist/components/NavSide/index.d.ts.map +0 -1
  538. package/dist/components/NavSide/index.js +0 -2
  539. package/dist/components/NavSide/index.js.map +0 -1
  540. package/dist/components/NavSide/types.d.ts +0 -38
  541. package/dist/components/NavSide/types.d.ts.map +0 -1
  542. package/dist/components/NavSide/types.js +0 -2
  543. package/dist/components/NavSide/types.js.map +0 -1
  544. package/dist/components/Pagination/Pagination.d.ts +0 -35
  545. package/dist/components/Pagination/Pagination.d.ts.map +0 -1
  546. package/dist/components/Pagination/Pagination.js +0 -26
  547. package/dist/components/Pagination/Pagination.js.map +0 -1
  548. package/dist/components/Pagination/index.d.ts +0 -3
  549. package/dist/components/Pagination/index.d.ts.map +0 -1
  550. package/dist/components/Pagination/index.js +0 -2
  551. package/dist/components/Pagination/index.js.map +0 -1
  552. package/dist/components/Skeleton/Skeleton.d.ts +0 -3
  553. package/dist/components/Skeleton/Skeleton.d.ts.map +0 -1
  554. package/dist/components/Skeleton/Skeleton.js +0 -7
  555. package/dist/components/Skeleton/Skeleton.js.map +0 -1
  556. package/dist/components/Skeleton/index.d.ts +0 -2
  557. package/dist/components/Skeleton/index.d.ts.map +0 -1
  558. package/dist/components/Skeleton/index.js +0 -2
  559. package/dist/components/Skeleton/index.js.map +0 -1
  560. package/dist/components/StatsCard/StatsCard.d.ts +0 -17
  561. package/dist/components/StatsCard/StatsCard.d.ts.map +0 -1
  562. package/dist/components/StatsCard/StatsCard.js +0 -13
  563. package/dist/components/StatsCard/StatsCard.js.map +0 -1
  564. package/dist/components/StatsCard/index.d.ts +0 -2
  565. package/dist/components/StatsCard/index.d.ts.map +0 -1
  566. package/dist/components/StatsCard/index.js +0 -2
  567. package/dist/components/StatsCard/index.js.map +0 -1
  568. package/dist/styles.css +0 -2
  569. package/dist/theme.generated.css +0 -438
  570. package/src/components/Avatar/Avatar.tsx +0 -19
  571. package/src/components/Avatar/index.ts +0 -1
  572. package/src/components/Breadcrumb/Breadcrumb.tsx +0 -47
  573. package/src/components/Breadcrumb/index.ts +0 -5
  574. package/src/components/ColorDot/ColorDot.tsx +0 -50
  575. package/src/components/ColorDot/index.ts +0 -1
  576. package/src/components/EmptyState/EmptyState.tsx +0 -29
  577. package/src/components/EmptyState/index.ts +0 -1
  578. package/src/components/HeatMap/HeatMapCalendar.tsx +0 -127
  579. package/src/components/HeatMap/HeatMapMatrix.tsx +0 -75
  580. package/src/components/HeatMap/heat-map.utils.ts +0 -15
  581. package/src/components/HeatMap/index.ts +0 -3
  582. package/src/components/MetricList/MetricList.tsx +0 -13
  583. package/src/components/MetricList/MetricRow.tsx +0 -30
  584. package/src/components/MetricList/index.ts +0 -2
  585. package/src/components/NavBottom/NavBottom.tsx +0 -53
  586. package/src/components/NavBottom/index.ts +0 -3
  587. package/src/components/NavSide/NavItem.tsx +0 -39
  588. package/src/components/NavSide/NavSide.tsx +0 -40
  589. package/src/components/NavSide/index.ts +0 -2
  590. package/src/components/NavSide/types.ts +0 -36
  591. package/src/components/Pagination/Pagination.tsx +0 -86
  592. package/src/components/Pagination/index.ts +0 -2
  593. package/src/components/Skeleton/Skeleton.tsx +0 -7
  594. package/src/components/Skeleton/index.ts +0 -1
  595. package/src/components/StatsCard/StatsCard.tsx +0 -40
  596. package/src/components/StatsCard/index.ts +0 -1
  597. package/src/styles/base.css +0 -41
  598. package/src/theme/palette.json +0 -100
  599. package/src/theme/palette.schema.json +0 -40
  600. package/src/theme/theme.json +0 -349
  601. package/src/theme/theme.schema.json +0 -876
  602. package/src/theme/typography.json +0 -7
  603. package/src/theme/typography.schema.json +0 -36
  604. package/tailwind.config.ts +0 -261
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iso.js","sourceRoot":"","sources":["../../src/date-time/iso.ts"],"names":[],"mappings":"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"}
@@ -4,22 +4,23 @@
4
4
  * Functions that answer "what time/date is it right now?"
5
5
  */
6
6
  import { Temporal } from "@js-temporal/polyfill";
7
+ import type { ISODate, ISODateTime, ISOInstant } from "./iso.js";
7
8
  /**
8
9
  * Get the current instant (point in time)
9
10
  */
10
11
  export declare function now(): Temporal.Instant;
11
12
  /**
12
- * Get the current instant as an ISO 8601 string
13
+ * Get the current instant as a canonical ISO 8601 string (UTC, `...Z`)
13
14
  */
14
- export declare function nowISO(): string;
15
+ export declare function nowISO(): ISOInstant;
15
16
  /**
16
17
  * Get today's date in the system timezone
17
18
  */
18
19
  export declare function today(): Temporal.PlainDate;
19
20
  /**
20
- * Get today's date as an ISO 8601 string
21
+ * Get today's date as a canonical ISO 8601 string (`YYYY-MM-DD`)
21
22
  */
22
- export declare function todayISO(): string;
23
+ export declare function todayISO(): ISODate;
23
24
  /**
24
25
  * Get the current time in the system timezone
25
26
  */
@@ -29,9 +30,9 @@ export declare function currentTime(): Temporal.PlainTime;
29
30
  */
30
31
  export declare function nowDateTime(): Temporal.PlainDateTime;
31
32
  /**
32
- * Get the current date/time as an ISO 8601 string (without timezone info)
33
+ * Get the current date/time as a canonical ISO 8601 string (no timezone)
33
34
  */
34
- export declare function nowDateTimeISO(): string;
35
+ export declare function nowDateTimeISO(): ISODateTime;
35
36
  /**
36
37
  * Get the current zoned date/time in the system timezone
37
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"now.d.ts","sourceRoot":"","sources":["../../src/date-time/now.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD;;GAEG;AACH,wBAAgB,GAAG,IAAI,QAAQ,CAAC,OAAO,CAEtC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAED;;GAEG;AACH,wBAAgB,KAAK,IAAI,QAAQ,CAAC,SAAS,CAE1C;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,SAAS,CAEhD;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,aAAa,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,QAAQ,CAAC,aAAa,CAEjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,aAAa,CAEtE"}
1
+ {"version":3,"file":"now.d.ts","sourceRoot":"","sources":["../../src/date-time/now.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE9D;;GAEG;AACH,wBAAgB,GAAG,IAAI,QAAQ,CAAC,OAAO,CAEtC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,UAAU,CAEnC;AAED;;GAEG;AACH,wBAAgB,KAAK,IAAI,QAAQ,CAAC,SAAS,CAE1C;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,SAAS,CAEhD;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAAC,aAAa,CAEpD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAE5C;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,QAAQ,CAAC,aAAa,CAEjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,aAAa,CAEtE"}
@@ -11,7 +11,7 @@ export function now() {
11
11
  return Temporal.Now.instant();
12
12
  }
13
13
  /**
14
- * Get the current instant as an ISO 8601 string
14
+ * Get the current instant as a canonical ISO 8601 string (UTC, `...Z`)
15
15
  */
16
16
  export function nowISO() {
17
17
  return Temporal.Now.instant().toString();
@@ -23,7 +23,7 @@ export function today() {
23
23
  return Temporal.Now.plainDateISO();
24
24
  }
25
25
  /**
26
- * Get today's date as an ISO 8601 string
26
+ * Get today's date as a canonical ISO 8601 string (`YYYY-MM-DD`)
27
27
  */
28
28
  export function todayISO() {
29
29
  return Temporal.Now.plainDateISO().toString();
@@ -41,7 +41,7 @@ export function nowDateTime() {
41
41
  return Temporal.Now.plainDateTimeISO();
42
42
  }
43
43
  /**
44
- * Get the current date/time as an ISO 8601 string (without timezone info)
44
+ * Get the current date/time as a canonical ISO 8601 string (no timezone)
45
45
  */
46
46
  export function nowDateTimeISO() {
47
47
  return Temporal.Now.plainDateTimeISO().toString();
@@ -1 +1 @@
1
- {"version":3,"file":"now.js","sourceRoot":"","sources":["../../src/date-time/now.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,GAAG;IACjB,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK;IACnB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"now.js","sourceRoot":"","sources":["../../src/date-time/now.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD;;GAEG;AACH,MAAM,UAAU,GAAG;IACjB,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAgB,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK;IACnB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAa,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAiB,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,OAAO,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,45 @@
1
+ import * as React from "react";
2
+ export type PickerFieldProps = {
3
+ /** The segments, or whatever the field holds. */
4
+ children: React.ReactNode;
5
+ /** Icon for the button that opens the popover — a calendar or a clock. */
6
+ icon: React.ReactNode;
7
+ /** Accessible name for that button, e.g. `"Open calendar for start date"`. */
8
+ toggleLabel: string;
9
+ /**
10
+ * Props for the toggle button — in practice Floating UI's
11
+ * `getReferenceProps()`, spread last so its handlers win.
12
+ */
13
+ toggleProps?: React.ButtonHTMLAttributes<HTMLButtonElement> | undefined;
14
+ /** Drives `aria-expanded` and whether `aria-controls` is set. */
15
+ isOpen: boolean;
16
+ /** Id of the popover this field opens. */
17
+ contentId: string;
18
+ isDisabled?: boolean | undefined;
19
+ isInvalid?: boolean | undefined;
20
+ /** Omit to render no clear button. */
21
+ onClear?: ((event: React.MouseEvent) => void) | undefined;
22
+ /** Accessible name for the clear button, e.g. `"Clear end date"`. */
23
+ clearLabel?: string | undefined;
24
+ className?: string | undefined;
25
+ onFocusCapture?: React.FocusEventHandler<HTMLDivElement> | undefined;
26
+ };
27
+ /**
28
+ * The bordered box every picker trigger is: an icon button that opens the
29
+ * popover, the field itself, and an optional clear button.
30
+ *
31
+ * Extracted because there were six of these — `DatePicker` alone had three, one
32
+ * per mode plus the two range halves — and they had already started to drift in
33
+ * padding. The field height, the `focus-within` ring, the invalid border and the
34
+ * disabled treatment are decided once here, so changing them is one edit rather
35
+ * than six.
36
+ *
37
+ * Width is deliberately not decided here: a time field is narrower than a
38
+ * date-and-time field, so callers pass their own `min-w-*` through `className`.
39
+ *
40
+ * The ref is the box element — what Floating UI anchors to.
41
+ *
42
+ * Internal. Not exported from the package.
43
+ */
44
+ export declare const PickerField: React.ForwardRefExoticComponent<PickerFieldProps & React.RefAttributes<HTMLDivElement>>;
45
+ //# sourceMappingURL=PickerField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PickerField.d.ts","sourceRoot":"","sources":["../../src/internal/PickerField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,iDAAiD;IACjD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,0EAA0E;IAC1E,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,8EAA8E;IAC9E,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC;IACxE,iEAAiE;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,sCAAsC;IACtC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC1D,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,cAAc,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;CACtE,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,yFAyCvB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "@sixthshift/design-system/utils";
3
+ import { X } from "lucide-react";
4
+ import * as React from "react";
5
+ /**
6
+ * The bordered box every picker trigger is: an icon button that opens the
7
+ * popover, the field itself, and an optional clear button.
8
+ *
9
+ * Extracted because there were six of these — `DatePicker` alone had three, one
10
+ * per mode plus the two range halves — and they had already started to drift in
11
+ * padding. The field height, the `focus-within` ring, the invalid border and the
12
+ * disabled treatment are decided once here, so changing them is one edit rather
13
+ * than six.
14
+ *
15
+ * Width is deliberately not decided here: a time field is narrower than a
16
+ * date-and-time field, so callers pass their own `min-w-*` through `className`.
17
+ *
18
+ * The ref is the box element — what Floating UI anchors to.
19
+ *
20
+ * Internal. Not exported from the package.
21
+ */
22
+ export const PickerField = React.forwardRef(({ children, icon, toggleLabel, toggleProps, isOpen, contentId, isDisabled = false, isInvalid = false, onClear, clearLabel, className, onFocusCapture }, ref) => (_jsxs("div", { ref: ref, onFocusCapture: onFocusCapture, className: cn("relative flex h-9 items-center gap-1 rounded-md border border-border-normal bg-transparent py-1 pl-1.5 shadow-xs transition-colors focus-within:ring-2 focus-within:ring-focus-ring", onClear ? "pr-9" : "pr-3", isInvalid && "border-border-danger", isDisabled && "cursor-not-allowed opacity-50", className), children: [_jsx("button", { type: "button", disabled: isDisabled, "aria-label": toggleLabel, "aria-haspopup": "dialog", "aria-expanded": isOpen, "aria-controls": isOpen ? contentId : undefined, className: "rounded-sm p-1 text-fg-subtle transition-colors hover:text-fg-normal focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-focus-ring disabled:cursor-not-allowed", ...toggleProps, children: icon }), children, onClear && (_jsx("button", { type: "button", onClick: onClear, "aria-label": clearLabel, className: "absolute right-3 rounded-sm p-0.5 text-fg-subtle hover:bg-bg-subtle hover:text-fg-normal focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-focus-ring", children: _jsx(X, { className: "h-3.5 w-3.5" }) }))] })));
23
+ PickerField.displayName = "PickerField";
24
+ //# sourceMappingURL=PickerField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PickerField.js","sourceRoot":"","sources":["../../src/internal/PickerField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iCAAiC,CAAC;AACrD,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4B/B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CACzC,CACE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,KAAK,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,EACtJ,GAAG,EACH,EAAE,CAAC,CACH,eACE,GAAG,EAAE,GAAG,EACR,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,EAAE,CACX,qLAAqL,EACrL,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EACzB,SAAS,IAAI,sBAAsB,EACnC,UAAU,IAAI,+BAA+B,EAC7C,SAAS,CACV,aAED,iBACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,UAAU,gBACR,WAAW,mBACT,QAAQ,mBACP,MAAM,mBACN,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAC7C,SAAS,EAAC,kLAAkL,KACxL,WAAW,YAEd,IAAI,GACE,EACR,QAAQ,EACR,OAAO,IAAI,CACV,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,gBACJ,UAAU,EACtB,SAAS,EAAC,0KAA0K,YAEpL,KAAC,CAAC,IAAC,SAAS,EAAC,aAAa,GAAG,GACtB,CACV,IACG,CACP,CACF,CAAC;AACF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
@@ -0,0 +1,98 @@
1
+ import * as React from "react";
2
+ /**
3
+ * One segment of a segmented field.
4
+ *
5
+ * `numeric` covers everything that is typed as digits — a month, an hour, a
6
+ * year. `choice` covers a segment with a fixed vocabulary, which in practice
7
+ * means AM/PM: it holds the index of an option, is typed by first letter, and
8
+ * announces the word rather than the number.
9
+ */
10
+ export type SegmentSpec = {
11
+ kind?: "numeric";
12
+ /** Key in the values record. */
13
+ name: string;
14
+ /** Accessible name, e.g. `"Month"`. */
15
+ label: string;
16
+ /** Shown when empty, e.g. `"mm"`. */
17
+ placeholder: string;
18
+ /** Width in digits: 2 for a month, 4 for a year. */
19
+ digits: number;
20
+ min: number;
21
+ max: number;
22
+ /** Rendered before this segment, e.g. `"/"` or `":"`. */
23
+ separatorBefore?: string | undefined;
24
+ /** Where an arrow key starts from when the segment is empty. */
25
+ stepFrom?: number | undefined;
26
+ } | {
27
+ kind: "choice";
28
+ name: string;
29
+ label: string;
30
+ placeholder: string;
31
+ /** Ordered vocabulary; the segment's value is an index into it. */
32
+ options: string[];
33
+ separatorBefore?: string | undefined;
34
+ stepFrom?: number | undefined;
35
+ };
36
+ /** Segment values by name. `null` is "nothing typed yet". */
37
+ export type SegmentValues = Record<string, number | null>;
38
+ export type SegmentedFieldProps<T> = {
39
+ spec: SegmentSpec[];
40
+ /** The value the segments display. `undefined` leaves them empty. */
41
+ value: T | undefined;
42
+ /** Split a value into segments. */
43
+ toSegments: (value: T | undefined) => SegmentValues;
44
+ /** Build a value from a complete set of segments. May normalise (clamp a day). */
45
+ fromSegments: (values: Record<string, number>) => T;
46
+ /** Stable identity for a value — how an echo is told from a real change. */
47
+ keyOf: (value: T) => string;
48
+ /**
49
+ * Fires with a whole value, or `undefined` the moment the segments stop
50
+ * describing one. Never fires a partial value, and never mid-number.
51
+ */
52
+ onChange: (value: T | undefined) => void;
53
+ /** Read a pasted string into segments. Omit to ignore pastes. */
54
+ parsePaste?: ((text: string) => SegmentValues | null) | undefined;
55
+ /** Accessible name for the group. */
56
+ label: string;
57
+ isDisabled?: boolean | undefined;
58
+ isInvalid?: boolean | undefined;
59
+ /** `Alt+ArrowDown` — the combobox convention for "open the popup". */
60
+ onOpenRequest?: (() => void) | undefined;
61
+ /** `Enter` — the caller decides whether that commits, submits or nothing. */
62
+ onSubmit?: (() => void) | undefined;
63
+ id?: string | undefined;
64
+ className?: string | undefined;
65
+ };
66
+ /**
67
+ * A typeable field made of spinbutton segments — the shared keyboard model
68
+ * behind every picker's trigger.
69
+ *
70
+ * Segments rather than a text box and a parser: `08/09` cannot be read without
71
+ * knowing the order, and a parser that guesses is wrong for half the world. A
72
+ * labelled `Month` spinbutton cannot be misread, and it displays in exactly the
73
+ * format it accepts, so there is no reformat-on-blur surprise.
74
+ *
75
+ * The behaviour that makes it typeable rather than merely focusable:
76
+ *
77
+ * - **A digit that cannot extend the current segment rolls into the next one.**
78
+ * `152026` in an `mdy` field is January the 5th 2026. Restarting the segment
79
+ * instead — the obvious implementation — silently turns January into May and
80
+ * eats the day, which is what makes a segmented field feel broken.
81
+ * - **Separators advance.** `1/5/2026` typed literally works, because `/` is how
82
+ * a person says "done with this one".
83
+ * - **`Backspace` takes back one digit**, then clears the segment, then steps
84
+ * back to the previous one — the only keyboard route to a segment the digits
85
+ * have already advanced past.
86
+ * - **A click anywhere in the field focuses a segment**, the way clicking a text
87
+ * input anywhere gives it a caret.
88
+ * - **`onChange` is held while a number is still being typed.** A year arrives
89
+ * one digit at a time, and `2` is the start of 2026, not the year 2. Deferred
90
+ * edits flush on blur.
91
+ *
92
+ * Values are the caller's own type; `toSegments`/`fromSegments` are the codec
93
+ * and `keyOf` supplies identity, which Temporal objects do not have.
94
+ *
95
+ * Internal. Not exported from the package.
96
+ */
97
+ export declare function SegmentedField<T>({ spec, value, toSegments, fromSegments, keyOf, onChange, parsePaste, label, isDisabled, isInvalid, onOpenRequest, onSubmit, id, className, }: SegmentedFieldProps<T>): React.JSX.Element;
98
+ //# sourceMappingURL=SegmentedField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentedField.d.ts","sourceRoot":"","sources":["../../src/internal/SegmentedField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GACnB;IACE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEN,6DAA6D;AAC7D,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;AAE1D,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IACnC,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,qEAAqE;IACrE,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;IACrB,mCAAmC;IACnC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,aAAa,CAAC;IACpD,kFAAkF;IAClF,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,4EAA4E;IAC5E,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IACzC,iEAAiE;IACjE,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,aAAa,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAClE,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,sEAAsE;IACtE,aAAa,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACzC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAAC;AAsBF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,EAChC,IAAI,EACJ,KAAK,EACL,UAAU,EACV,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,UAAU,EACV,KAAK,EACL,UAAkB,EAClB,SAAiB,EACjB,aAAa,EACb,QAAQ,EACR,EAAE,EACF,SAAS,GACV,EAAE,mBAAmB,CAAC,CAAC,CAAC,qBAiTxB"}
@@ -0,0 +1,315 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "@sixthshift/design-system/utils";
3
+ import * as React from "react";
4
+ import { useRef, useState } from "react";
5
+ function limitsOf(segment) {
6
+ if (segment.kind === "choice") {
7
+ // `digits: 0` is what makes a digit roll straight past AM/PM instead of
8
+ // being swallowed by it.
9
+ return { min: 0, max: segment.options.length - 1, digits: 0 };
10
+ }
11
+ return { min: segment.min, max: segment.max, digits: segment.digits };
12
+ }
13
+ const pad = (value, digits) => String(value).padStart(digits, "0");
14
+ function displayOf(segment, current, typed) {
15
+ if (typed !== "")
16
+ return typed;
17
+ if (current === null)
18
+ return segment.placeholder;
19
+ if (segment.kind === "choice")
20
+ return segment.options[current] ?? segment.placeholder;
21
+ return pad(current, segment.digits);
22
+ }
23
+ /**
24
+ * A typeable field made of spinbutton segments — the shared keyboard model
25
+ * behind every picker's trigger.
26
+ *
27
+ * Segments rather than a text box and a parser: `08/09` cannot be read without
28
+ * knowing the order, and a parser that guesses is wrong for half the world. A
29
+ * labelled `Month` spinbutton cannot be misread, and it displays in exactly the
30
+ * format it accepts, so there is no reformat-on-blur surprise.
31
+ *
32
+ * The behaviour that makes it typeable rather than merely focusable:
33
+ *
34
+ * - **A digit that cannot extend the current segment rolls into the next one.**
35
+ * `152026` in an `mdy` field is January the 5th 2026. Restarting the segment
36
+ * instead — the obvious implementation — silently turns January into May and
37
+ * eats the day, which is what makes a segmented field feel broken.
38
+ * - **Separators advance.** `1/5/2026` typed literally works, because `/` is how
39
+ * a person says "done with this one".
40
+ * - **`Backspace` takes back one digit**, then clears the segment, then steps
41
+ * back to the previous one — the only keyboard route to a segment the digits
42
+ * have already advanced past.
43
+ * - **A click anywhere in the field focuses a segment**, the way clicking a text
44
+ * input anywhere gives it a caret.
45
+ * - **`onChange` is held while a number is still being typed.** A year arrives
46
+ * one digit at a time, and `2` is the start of 2026, not the year 2. Deferred
47
+ * edits flush on blur.
48
+ *
49
+ * Values are the caller's own type; `toSegments`/`fromSegments` are the codec
50
+ * and `keyOf` supplies identity, which Temporal objects do not have.
51
+ *
52
+ * Internal. Not exported from the package.
53
+ */
54
+ export function SegmentedField({ spec, value, toSegments, fromSegments, keyOf, onChange, parsePaste, label, isDisabled = false, isInvalid = false, onOpenRequest, onSubmit, id, className, }) {
55
+ const names = spec.map((segment) => segment.name);
56
+ const bySpec = (name) => spec.find((segment) => segment.name === name);
57
+ // `!= null` rather than `!== null`: a key the codec forgot to set would be
58
+ // `undefined`, which a `!== null` test would count as filled — and hand
59
+ // `fromSegments` a NaN.
60
+ const isComplete = (values) => names.every((name) => values[name] != null);
61
+ const [segments, setSegments] = useState(() => toSegments(value));
62
+ // Props win, except over the value this field just emitted. Comparing a caller
63
+ // supplied key rather than the value itself matters twice: Temporal has no
64
+ // value identity, and an echoed-back value must not restart the user's edit.
65
+ const valueKey = value === undefined ? "" : keyOf(value);
66
+ const syncedKey = useRef(valueKey);
67
+ if (valueKey !== syncedKey.current) {
68
+ syncedKey.current = valueKey;
69
+ setSegments(toSegments(value));
70
+ }
71
+ // The digits typed into the segment being filled. State rather than a ref
72
+ // because it is rendered: a year mid-typing shows `202`, not `0202`.
73
+ const [buffer, setBuffer] = useState(null);
74
+ const nodes = useRef({});
75
+ const hadValue = useRef(isComplete(toSegments(value)));
76
+ const focusSegment = (name) => {
77
+ if (name)
78
+ nodes.current[name]?.focus();
79
+ };
80
+ const publish = (next) => {
81
+ if (!isComplete(next)) {
82
+ if (hadValue.current) {
83
+ hadValue.current = false;
84
+ // Pre-empt the sync for the cleared value too. Without this, emptying
85
+ // one segment round-trips as `undefined` and wipes the others — the
86
+ // user cleared the day, not the whole date. A controlled caller that
87
+ // *rejects* the clear still wins: its value no longer matches this
88
+ // key, so the next render syncs back to it.
89
+ syncedKey.current = "";
90
+ onChange(undefined);
91
+ }
92
+ return;
93
+ }
94
+ const composed = fromSegments(next);
95
+ const key = keyOf(composed);
96
+ // `fromSegments` may normalise — February the 31st is the 28th — so the
97
+ // segments follow the value rather than the keystrokes. Otherwise the
98
+ // field reads 02/31 while the value says the 28th.
99
+ const normalised = toSegments(composed);
100
+ if (names.some((name) => normalised[name] !== next[name]))
101
+ setSegments(normalised);
102
+ if (key === syncedKey.current)
103
+ return;
104
+ hadValue.current = true;
105
+ syncedKey.current = key;
106
+ onChange(composed);
107
+ };
108
+ /**
109
+ * `defer` holds the announcement while a number is still being typed, so a
110
+ * controlled caller is not handed `0002-12-25`, `0020-12-25`, `0202-12-25` in
111
+ * a row — and anything validating against a bound does not flash mid-word.
112
+ */
113
+ const commit = (next, defer = false) => {
114
+ setSegments(next);
115
+ if (!defer)
116
+ publish(next);
117
+ };
118
+ const applyDigit = (name, digit) => {
119
+ let target = name;
120
+ let started = buffer?.segment === name ? buffer.text : "";
121
+ // At most one hop per digit in practice; bounded so a bad spec cannot spin.
122
+ for (let hop = 0; hop <= spec.length; hop++) {
123
+ const { max, digits } = limitsOf(bySpec(target));
124
+ const combined = started + digit;
125
+ const next = names[names.indexOf(target) + 1];
126
+ if (digits > 0 && Number(combined) <= max && combined.length <= digits) {
127
+ const numeric = Number(combined);
128
+ const full = combined.length >= digits || numeric * 10 > max;
129
+ setBuffer(full ? null : { segment: target, text: combined });
130
+ commit({ ...segments, [target]: numeric === 0 && limitsOf(bySpec(target)).min > 0 ? null : numeric }, !full);
131
+ focusSegment(full ? next : target);
132
+ return;
133
+ }
134
+ if (!next) {
135
+ if (digits === 0)
136
+ return; // a choice segment takes no digits
137
+ setBuffer({ segment: target, text: digit });
138
+ commit({ ...segments, [target]: Number(digit) === 0 ? null : Number(digit) });
139
+ focusSegment(target);
140
+ return;
141
+ }
142
+ target = next;
143
+ started = "";
144
+ }
145
+ };
146
+ /** A letter picks a `choice` option by first letter — `a` for AM, `p` for PM. */
147
+ const applyLetter = (name, letter) => {
148
+ const segment = bySpec(name);
149
+ if (segment.kind !== "choice")
150
+ return false;
151
+ const index = segment.options.findIndex((option) => option.toLowerCase().startsWith(letter.toLowerCase()));
152
+ if (index === -1)
153
+ return false;
154
+ setBuffer(null);
155
+ commit({ ...segments, [name]: index });
156
+ focusSegment(names[names.indexOf(name) + 1]);
157
+ return true;
158
+ };
159
+ const step = (name, delta) => {
160
+ const segment = bySpec(name);
161
+ const { min, max } = limitsOf(segment);
162
+ const current = segments[name];
163
+ if (current === null || current === undefined) {
164
+ commit({ ...segments, [name]: segment.stepFrom ?? min });
165
+ return;
166
+ }
167
+ let next = current + delta;
168
+ // Cyclic fields wrap, which is what an arrow key means on a month or an
169
+ // hour. A year does not — 9999 to 1 is never the intent — and it says so
170
+ // by spanning more than two digits.
171
+ const cyclic = segment.kind === "choice" || limitsOf(segment).digits <= 2;
172
+ if (!cyclic)
173
+ next = Math.min(Math.max(next, min), max);
174
+ else if (next > max)
175
+ next = min;
176
+ else if (next < min)
177
+ next = max;
178
+ commit({ ...segments, [name]: next });
179
+ };
180
+ const handleKeyDown = (event, name) => {
181
+ if (isDisabled)
182
+ return;
183
+ if (event.altKey && event.key === "ArrowDown") {
184
+ event.preventDefault();
185
+ onOpenRequest?.();
186
+ return;
187
+ }
188
+ const plain = !event.altKey && !event.ctrlKey && !event.metaKey;
189
+ if (plain && /^[0-9]$/.test(event.key)) {
190
+ event.preventDefault();
191
+ applyDigit(name, event.key);
192
+ return;
193
+ }
194
+ if (plain && /^[a-z]$/i.test(event.key) && applyLetter(name, event.key)) {
195
+ event.preventDefault();
196
+ return;
197
+ }
198
+ // Any plausible separator counts, whatever this field's own separators
199
+ // are: it means "done with this one", and without it a typed `/` is
200
+ // swallowed and the next digit lands on the wrong segment.
201
+ //
202
+ // Only with a number still in progress, though. A segment that already
203
+ // filled up has advanced on its own, and treating the separator as a second
204
+ // advance would skip the segment after it: typing `1/6/2026` would land 2026
205
+ // in the hour, because the `6` had already moved on.
206
+ if (plain && ["/", "-", ".", ",", ":", " "].includes(event.key)) {
207
+ event.preventDefault();
208
+ if (buffer?.segment !== name)
209
+ return;
210
+ setBuffer(null);
211
+ focusSegment(names[names.indexOf(name) + 1]);
212
+ return;
213
+ }
214
+ switch (event.key) {
215
+ case "ArrowUp":
216
+ event.preventDefault();
217
+ setBuffer(null);
218
+ step(name, 1);
219
+ break;
220
+ case "ArrowDown":
221
+ event.preventDefault();
222
+ setBuffer(null);
223
+ step(name, -1);
224
+ break;
225
+ case "ArrowLeft":
226
+ event.preventDefault();
227
+ setBuffer(null);
228
+ focusSegment(names[names.indexOf(name) - 1]);
229
+ break;
230
+ case "ArrowRight":
231
+ event.preventDefault();
232
+ setBuffer(null);
233
+ focusSegment(names[names.indexOf(name) + 1]);
234
+ break;
235
+ case "Backspace": {
236
+ event.preventDefault();
237
+ const typed = buffer?.segment === name ? buffer.text : "";
238
+ if (typed.length > 1) {
239
+ const text = typed.slice(0, -1);
240
+ setBuffer({ segment: name, text });
241
+ commit({ ...segments, [name]: Number(text) === 0 ? null : Number(text) }, true);
242
+ break;
243
+ }
244
+ setBuffer(null);
245
+ if (typed.length === 0 && segments[name] === null) {
246
+ focusSegment(names[names.indexOf(name) - 1]);
247
+ break;
248
+ }
249
+ commit({ ...segments, [name]: null });
250
+ break;
251
+ }
252
+ case "Delete":
253
+ event.preventDefault();
254
+ setBuffer(null);
255
+ commit({ ...segments, [name]: null });
256
+ break;
257
+ case "Enter":
258
+ event.preventDefault();
259
+ onSubmit?.();
260
+ break;
261
+ default:
262
+ break;
263
+ }
264
+ };
265
+ const handlePaste = (event) => {
266
+ if (isDisabled || !parsePaste)
267
+ return;
268
+ event.preventDefault();
269
+ const parsed = parsePaste(event.clipboardData.getData("text").trim());
270
+ if (!parsed)
271
+ return;
272
+ setBuffer(null);
273
+ commit(parsed);
274
+ focusSegment(names[names.length - 1]);
275
+ };
276
+ return (
277
+ // A `fieldset` rather than a `div role="group"`: the segments are one
278
+ // related set of controls, which is the element's whole job. Tailwind's
279
+ // preflight already strips its default margin, padding and border.
280
+ _jsx("fieldset", { id: id, "aria-label": label, "aria-invalid": isInvalid || undefined, "aria-disabled": isDisabled || undefined, onMouseDown: (event) => {
281
+ // A click anywhere in the field focuses a segment, the way clicking a
282
+ // text input anywhere puts a caret in it. Without this, only the digits
283
+ // themselves are clickable and the rest of the box silently does
284
+ // nothing — which reads as "typing is broken", because nothing has focus.
285
+ if (isDisabled)
286
+ return;
287
+ if (event.target.closest("[data-segment]"))
288
+ return;
289
+ event.preventDefault();
290
+ focusSegment(names.find((name) => segments[name] === null) ?? names[0]);
291
+ }, onPaste: handlePaste, onBlur: (event) => {
292
+ // Only when focus leaves the field entirely — moving between segments is
293
+ // a blur too, and mid-edit is not the moment to announce anything.
294
+ if (event.currentTarget.contains(event.relatedTarget))
295
+ return;
296
+ // A live buffer is exactly the condition under which a commit was
297
+ // deferred, so it is the only case with anything to flush.
298
+ if (!buffer)
299
+ return;
300
+ setBuffer(null);
301
+ publish(segments);
302
+ }, className: cn("flex flex-1 cursor-text items-center gap-0.5 text-sm", isDisabled && "opacity-50", className), children: spec.map((segment) => {
303
+ const current = segments[segment.name] ?? null;
304
+ const { min, max } = limitsOf(segment);
305
+ const typed = buffer?.segment === segment.name ? buffer.text : "";
306
+ const text = displayOf(segment, current, typed);
307
+ return (_jsxs(React.Fragment, { children: [segment.separatorBefore && (_jsx("span", { "aria-hidden": "true", className: "text-fg-subtle", children: segment.separatorBefore })), _jsx("span", { ref: (node) => {
308
+ nodes.current[segment.name] = node;
309
+ }, role: "spinbutton", tabIndex: isDisabled ? -1 : 0, "aria-label": segment.label, "aria-valuemin": min, "aria-valuemax": max, "aria-valuenow": current ?? undefined, "aria-valuetext": current === null ? "Empty" : text, "aria-disabled": isDisabled || undefined, "data-segment": segment.name, onKeyDown: (event) => handleKeyDown(event, segment.name), onFocus: () => {
310
+ if (buffer?.segment !== segment.name)
311
+ setBuffer(null);
312
+ }, className: cn("cursor-text rounded-sm px-0.5 tabular-nums outline-hidden focus:bg-bg-brand-subtle focus:text-fg-on-brand-subtle", current === null && "text-fg-subtle"), children: text })] }, segment.name));
313
+ }) }));
314
+ }
315
+ //# sourceMappingURL=SegmentedField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentedField.js","sourceRoot":"","sources":["../../src/internal/SegmentedField.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ export { PickerField, type PickerFieldProps } from "./PickerField.js";
2
+ export { SegmentedField, type SegmentedFieldProps, type SegmentSpec, type SegmentValues } from "./SegmentedField.js";
1
3
  export { Slot, type SlotProps } from "./Slot.js";
2
4
  export type { WritableRefObject } from "./types.js";
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClH,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}