@vjdesigns/vjdesigns-ui 2.4.0 → 2.5.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 (417) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +45 -1
  3. package/dist/ai/llms-full.txt +133 -76
  4. package/dist/ai/registry.json +82 -61
  5. package/dist/components/data-display/Accordion/Accordion.cjs.js +1 -1
  6. package/dist/components/data-display/Accordion/Accordion.mjs +22 -22
  7. package/dist/components/data-display/Accordion/Accordion.module.css.mjs +1 -2
  8. package/dist/components/data-display/Avatar/Avatar.cjs.js +1 -1
  9. package/dist/components/data-display/Avatar/Avatar.mjs +92 -92
  10. package/dist/components/data-display/Avatar/Avatar.module.css.mjs +1 -2
  11. package/dist/components/data-display/Badge/Badge.cjs.js +1 -1
  12. package/dist/components/data-display/Badge/Badge.mjs +2 -2
  13. package/dist/components/data-display/Badge/Badge.module.css.mjs +1 -2
  14. package/dist/components/data-display/Card/Card.cjs.js +1 -1
  15. package/dist/components/data-display/Card/Card.mjs +2 -2
  16. package/dist/components/data-display/Card/Card.module.css.mjs +1 -2
  17. package/dist/components/data-display/Carousel/Carousel.cjs.js +1 -1
  18. package/dist/components/data-display/Carousel/Carousel.mjs +42 -42
  19. package/dist/components/data-display/Carousel/Carousel.module.css.mjs +1 -2
  20. package/dist/components/data-display/Chat/Chat.cjs.js +1 -1
  21. package/dist/components/data-display/Chat/Chat.mjs +114 -118
  22. package/dist/components/data-display/Chat/Chat.module.css.mjs +1 -2
  23. package/dist/components/data-display/Chat/streams.mjs +1 -2
  24. package/dist/components/data-display/Chip/Chip.cjs.js +1 -1
  25. package/dist/components/data-display/Chip/Chip.mjs +50 -54
  26. package/dist/components/data-display/Chip/Chip.module.css.mjs +1 -2
  27. package/dist/components/data-display/CodeBlock/CodeBlock.cjs.js +4 -4
  28. package/dist/components/data-display/CodeBlock/CodeBlock.mjs +113 -113
  29. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.mjs +1 -2
  30. package/dist/components/data-display/CodeBlock/tokenize.mjs +1 -2
  31. package/dist/components/data-display/DataGrid/DataGrid.cjs.js +1 -1
  32. package/dist/components/data-display/DataGrid/DataGrid.d.ts +14 -3
  33. package/dist/components/data-display/DataGrid/DataGrid.mjs +352 -267
  34. package/dist/components/data-display/DataGrid/DataGrid.module.css.cjs.js +1 -1
  35. package/dist/components/data-display/DataGrid/DataGrid.module.css.mjs +6 -5
  36. package/dist/components/data-display/DataGrid/dataGridUtils.cjs.js +1 -1
  37. package/dist/components/data-display/DataGrid/dataGridUtils.d.ts +18 -0
  38. package/dist/components/data-display/DataGrid/dataGridUtils.mjs +100 -32
  39. package/dist/components/data-display/EmptyState/EmptyState.cjs.js +1 -1
  40. package/dist/components/data-display/EmptyState/EmptyState.mjs +53 -53
  41. package/dist/components/data-display/EmptyState/EmptyState.module.css.mjs +1 -2
  42. package/dist/components/data-display/Image/Image.cjs.js +1 -1
  43. package/dist/components/data-display/Image/Image.mjs +6 -6
  44. package/dist/components/data-display/Image/Image.module.css.mjs +1 -2
  45. package/dist/components/data-display/List/List.cjs.js +1 -1
  46. package/dist/components/data-display/List/List.mjs +68 -68
  47. package/dist/components/data-display/List/List.module.css.mjs +1 -2
  48. package/dist/components/data-display/Stat/Stat.cjs.js +1 -1
  49. package/dist/components/data-display/Stat/Stat.mjs +112 -112
  50. package/dist/components/data-display/Stat/Stat.module.css.mjs +1 -2
  51. package/dist/components/data-display/Table/Table.cjs.js +1 -1
  52. package/dist/components/data-display/Table/Table.mjs +187 -183
  53. package/dist/components/data-display/Table/Table.module.css.mjs +1 -2
  54. package/dist/components/data-display/Table/useTable.cjs.js +1 -1
  55. package/dist/components/data-display/Table/useTable.mjs +2 -2
  56. package/dist/components/data-display/Timeline/Timeline.cjs.js +1 -1
  57. package/dist/components/data-display/Timeline/Timeline.mjs +64 -64
  58. package/dist/components/data-display/Timeline/Timeline.module.css.mjs +1 -2
  59. package/dist/components/data-display/TreeView/TreeView.cjs.js +1 -1
  60. package/dist/components/data-display/TreeView/TreeView.mjs +107 -119
  61. package/dist/components/data-display/TreeView/TreeView.module.css.mjs +1 -2
  62. package/dist/components/data-display/TreeView/treeUtils.mjs +1 -2
  63. package/dist/components/data-display/VirtualList/VirtualList.cjs.js +1 -1
  64. package/dist/components/data-display/VirtualList/VirtualList.mjs +2 -2
  65. package/dist/components/data-display/VirtualList/VirtualList.module.css.mjs +1 -2
  66. package/dist/components/feedback/Alert/Alert.cjs.js +1 -1
  67. package/dist/components/feedback/Alert/Alert.mjs +56 -56
  68. package/dist/components/feedback/Alert/Alert.module.css.mjs +1 -2
  69. package/dist/components/feedback/Banner/Banner.cjs.js +1 -1
  70. package/dist/components/feedback/Banner/Banner.mjs +48 -48
  71. package/dist/components/feedback/Banner/Banner.module.css.mjs +1 -2
  72. package/dist/components/feedback/ErrorSummary/ErrorSummary.cjs.js +1 -1
  73. package/dist/components/feedback/ErrorSummary/ErrorSummary.mjs +10 -10
  74. package/dist/components/feedback/ErrorSummary/ErrorSummary.module.css.mjs +1 -2
  75. package/dist/components/feedback/Progress/Progress.cjs.js +1 -1
  76. package/dist/components/feedback/Progress/Progress.mjs +2 -2
  77. package/dist/components/feedback/Progress/Progress.module.css.mjs +1 -2
  78. package/dist/components/feedback/Skeleton/Skeleton.cjs.js +1 -1
  79. package/dist/components/feedback/Skeleton/Skeleton.mjs +73 -73
  80. package/dist/components/feedback/Skeleton/Skeleton.module.css.mjs +1 -2
  81. package/dist/components/feedback/Spinner/Spinner.cjs.js +1 -1
  82. package/dist/components/feedback/Spinner/Spinner.mjs +29 -29
  83. package/dist/components/feedback/Spinner/Spinner.module.css.mjs +1 -2
  84. package/dist/components/feedback/Toast/Toast.cjs.js +1 -1
  85. package/dist/components/feedback/Toast/Toast.mjs +42 -42
  86. package/dist/components/feedback/Toast/Toast.module.css.mjs +1 -2
  87. package/dist/components/feedback/Toast/ToastItem.cjs.js +1 -1
  88. package/dist/components/feedback/Toast/ToastItem.mjs +10 -10
  89. package/dist/components/feedback/Toast/ToastProvider.cjs.js +1 -1
  90. package/dist/components/feedback/Toast/ToastProvider.mjs +11 -11
  91. package/dist/components/feedback/Toast/ToastViewport.cjs.js +1 -1
  92. package/dist/components/feedback/Toast/ToastViewport.mjs +30 -30
  93. package/dist/components/feedback/Toast/toastStore.mjs +1 -2
  94. package/dist/components/feedback/Toast/toastTiming.cjs.js +1 -1
  95. package/dist/components/feedback/Toast/toastTiming.mjs +2 -2
  96. package/dist/components/feedback/Toast/useToast.cjs.js +1 -1
  97. package/dist/components/feedback/Toast/useToast.mjs +2 -2
  98. package/dist/components/feedback/Toast/useToastAnnouncer.cjs.js +1 -1
  99. package/dist/components/feedback/Toast/useToastAnnouncer.mjs +2 -2
  100. package/dist/components/forms/CheckBox/CheckBox.cjs.js +1 -1
  101. package/dist/components/forms/CheckBox/CheckBox.mjs +2 -2
  102. package/dist/components/forms/CheckBox/CheckBox.module.css.mjs +1 -2
  103. package/dist/components/forms/ColorPicker/ColorInput.cjs.js +1 -1
  104. package/dist/components/forms/ColorPicker/ColorInput.mjs +43 -43
  105. package/dist/components/forms/ColorPicker/ColorPicker.cjs.js +1 -1
  106. package/dist/components/forms/ColorPicker/ColorPicker.mjs +153 -153
  107. package/dist/components/forms/ColorPicker/ColorPicker.module.css.mjs +1 -2
  108. package/dist/components/forms/ColorPicker/colorUtils.mjs +1 -2
  109. package/dist/components/forms/Combobox/Combobox.cjs.js +1 -1
  110. package/dist/components/forms/Combobox/Combobox.mjs +200 -213
  111. package/dist/components/forms/Combobox/Combobox.module.css.mjs +1 -2
  112. package/dist/components/forms/Combobox/ComboboxPopup.cjs.js +1 -1
  113. package/dist/components/forms/Combobox/ComboboxPopup.mjs +164 -121
  114. package/dist/components/forms/Combobox/comboboxUtils.cjs.js +1 -1
  115. package/dist/components/forms/Combobox/comboboxUtils.d.ts +4 -1
  116. package/dist/components/forms/Combobox/comboboxUtils.mjs +21 -20
  117. package/dist/components/forms/DatePicker/Calendar.cjs.js +1 -1
  118. package/dist/components/forms/DatePicker/Calendar.mjs +60 -66
  119. package/dist/components/forms/DatePicker/Calendar.module.css.mjs +1 -2
  120. package/dist/components/forms/DatePicker/DatePicker.cjs.js +1 -1
  121. package/dist/components/forms/DatePicker/DatePicker.mjs +72 -74
  122. package/dist/components/forms/DatePicker/DatePicker.module.css.mjs +1 -2
  123. package/dist/components/forms/DatePicker/DateRangePicker.cjs.js +1 -1
  124. package/dist/components/forms/DatePicker/DateRangePicker.mjs +117 -117
  125. package/dist/components/forms/DatePicker/DateRangePicker.module.css.mjs +1 -2
  126. package/dist/components/forms/DatePicker/dateUtils.mjs +1 -2
  127. package/dist/components/forms/DateTimePicker/DateTimePicker.cjs.js +1 -1
  128. package/dist/components/forms/DateTimePicker/DateTimePicker.mjs +19 -19
  129. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.mjs +1 -2
  130. package/dist/components/forms/Field/Field.cjs.js +1 -1
  131. package/dist/components/forms/Field/Field.mjs +14 -14
  132. package/dist/components/forms/Field/Field.module.css.mjs +1 -2
  133. package/dist/components/forms/Field/FieldContext.cjs.js +1 -1
  134. package/dist/components/forms/Field/FieldContext.mjs +2 -2
  135. package/dist/components/forms/FileUpload/FileUpload.cjs.js +1 -1
  136. package/dist/components/forms/FileUpload/FileUpload.mjs +250 -255
  137. package/dist/components/forms/FileUpload/FileUpload.module.css.mjs +1 -2
  138. package/dist/components/forms/Input/Input.cjs.js +1 -1
  139. package/dist/components/forms/Input/Input.mjs +35 -35
  140. package/dist/components/forms/Input/Input.module.css.mjs +1 -2
  141. package/dist/components/forms/NumberInput/NumberInput.cjs.js +1 -1
  142. package/dist/components/forms/NumberInput/NumberInput.mjs +137 -142
  143. package/dist/components/forms/NumberInput/NumberInput.module.css.mjs +1 -2
  144. package/dist/components/forms/PasswordInput/PasswordInput.cjs.js +1 -1
  145. package/dist/components/forms/PasswordInput/PasswordInput.mjs +142 -142
  146. package/dist/components/forms/PasswordInput/PasswordInput.module.css.mjs +1 -2
  147. package/dist/components/forms/PinInput/PinInput.cjs.js +1 -1
  148. package/dist/components/forms/PinInput/PinInput.mjs +12 -12
  149. package/dist/components/forms/PinInput/PinInput.module.css.mjs +1 -2
  150. package/dist/components/forms/Radio/Radio.cjs.js +1 -1
  151. package/dist/components/forms/Radio/Radio.mjs +2 -2
  152. package/dist/components/forms/Radio/Radio.module.css.mjs +1 -2
  153. package/dist/components/forms/Rating/Rating.cjs.js +1 -1
  154. package/dist/components/forms/Rating/Rating.mjs +110 -109
  155. package/dist/components/forms/Rating/Rating.module.css.mjs +1 -2
  156. package/dist/components/forms/SearchInput/SearchInput.cjs.js +1 -1
  157. package/dist/components/forms/SearchInput/SearchInput.mjs +118 -126
  158. package/dist/components/forms/SearchInput/SearchInput.module.css.mjs +1 -2
  159. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.js +1 -1
  160. package/dist/components/forms/SegmentedControl/SegmentedControl.mjs +46 -43
  161. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.mjs +1 -2
  162. package/dist/components/forms/Select/Select.cjs.js +1 -1
  163. package/dist/components/forms/Select/Select.mjs +2 -2
  164. package/dist/components/forms/Select/Select.module.css.mjs +1 -2
  165. package/dist/components/forms/Slider/Slider.cjs.js +1 -1
  166. package/dist/components/forms/Slider/Slider.mjs +2 -2
  167. package/dist/components/forms/Slider/Slider.module.css.mjs +1 -2
  168. package/dist/components/forms/Switch/Switch.cjs.js +1 -1
  169. package/dist/components/forms/Switch/Switch.mjs +39 -39
  170. package/dist/components/forms/Switch/Switch.module.css.mjs +1 -2
  171. package/dist/components/forms/TagInput/TagInput.cjs.js +1 -1
  172. package/dist/components/forms/TagInput/TagInput.mjs +197 -203
  173. package/dist/components/forms/TagInput/TagInput.module.css.mjs +1 -2
  174. package/dist/components/forms/Textarea/Textarea.cjs.js +1 -1
  175. package/dist/components/forms/Textarea/Textarea.mjs +59 -59
  176. package/dist/components/forms/Textarea/Textarea.module.css.mjs +1 -2
  177. package/dist/components/forms/TimePicker/TimePicker.cjs.js +1 -1
  178. package/dist/components/forms/TimePicker/TimePicker.mjs +14 -16
  179. package/dist/components/forms/TimePicker/TimePicker.module.css.mjs +1 -2
  180. package/dist/components/forms/TimePicker/timeUtils.cjs.js +1 -1
  181. package/dist/components/forms/TimePicker/timeUtils.d.ts +4 -1
  182. package/dist/components/forms/TimePicker/timeUtils.mjs +43 -38
  183. package/dist/components/forms/ToggleGroup/ToggleGroup.cjs.js +1 -1
  184. package/dist/components/forms/ToggleGroup/ToggleGroup.mjs +10 -10
  185. package/dist/components/forms/ToggleGroup/ToggleGroup.module.css.mjs +1 -2
  186. package/dist/components/layout/Box/Box.mjs +1 -2
  187. package/dist/components/layout/Box/Box.module.css.mjs +1 -2
  188. package/dist/components/layout/Container/Container.mjs +1 -2
  189. package/dist/components/layout/Container/Container.module.css.mjs +1 -2
  190. package/dist/components/layout/Divider/Divider.mjs +1 -2
  191. package/dist/components/layout/Divider/Divider.module.css.mjs +1 -2
  192. package/dist/components/layout/Flex/Flex.cjs.js +1 -1
  193. package/dist/components/layout/Flex/Flex.mjs +12 -13
  194. package/dist/components/layout/Flex/Flex.module.css.mjs +1 -2
  195. package/dist/components/layout/Grid/Grid.cjs.js +1 -1
  196. package/dist/components/layout/Grid/Grid.mjs +20 -21
  197. package/dist/components/layout/Grid/Grid.module.css.mjs +1 -2
  198. package/dist/components/layout/ResizablePanels/ResizablePanels.cjs.js +1 -1
  199. package/dist/components/layout/ResizablePanels/ResizablePanels.mjs +17 -17
  200. package/dist/components/layout/ResizablePanels/ResizablePanels.module.css.mjs +1 -2
  201. package/dist/components/layout/ScrollArea/ScrollArea.cjs.js +1 -1
  202. package/dist/components/layout/ScrollArea/ScrollArea.mjs +2 -2
  203. package/dist/components/layout/ScrollArea/ScrollArea.module.css.mjs +1 -2
  204. package/dist/components/layout/Stack/Stack.cjs.js +1 -1
  205. package/dist/components/layout/Stack/Stack.mjs +8 -9
  206. package/dist/components/layout/Stack/Stack.module.css.mjs +1 -2
  207. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.cjs.js +1 -1
  208. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.mjs +41 -41
  209. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.module.css.mjs +1 -2
  210. package/dist/components/navigation/ContextMenu/ContextMenu.cjs.js +1 -1
  211. package/dist/components/navigation/ContextMenu/ContextMenu.mjs +48 -48
  212. package/dist/components/navigation/ContextMenu/ContextMenu.module.css.mjs +1 -2
  213. package/dist/components/navigation/Link/Link.cjs.js +1 -1
  214. package/dist/components/navigation/Link/Link.mjs +6 -7
  215. package/dist/components/navigation/Link/Link.module.css.mjs +1 -2
  216. package/dist/components/navigation/Menu/Menu.cjs.js +1 -1
  217. package/dist/components/navigation/Menu/Menu.mjs +11 -11
  218. package/dist/components/navigation/Menu/Menu.module.css.mjs +1 -2
  219. package/dist/components/navigation/Menu/MenuContent.cjs.js +1 -1
  220. package/dist/components/navigation/Menu/MenuContent.mjs +46 -46
  221. package/dist/components/navigation/Menu/MenuContext.cjs.js +1 -1
  222. package/dist/components/navigation/Menu/MenuContext.mjs +2 -2
  223. package/dist/components/navigation/Menu/MenuItem.cjs.js +1 -1
  224. package/dist/components/navigation/Menu/MenuItem.mjs +35 -39
  225. package/dist/components/navigation/Menu/MenuSub.cjs.js +1 -1
  226. package/dist/components/navigation/Menu/MenuSub.mjs +16 -20
  227. package/dist/components/navigation/Menu/useMenuRoot.cjs.js +1 -1
  228. package/dist/components/navigation/Menu/useMenuRoot.mjs +2 -2
  229. package/dist/components/navigation/Navbar/Navbar.cjs.js +1 -1
  230. package/dist/components/navigation/Navbar/Navbar.mjs +111 -111
  231. package/dist/components/navigation/Navbar/Navbar.module.css.mjs +1 -2
  232. package/dist/components/navigation/Pagination/Pagination.cjs.js +1 -1
  233. package/dist/components/navigation/Pagination/Pagination.mjs +31 -35
  234. package/dist/components/navigation/Pagination/Pagination.module.css.mjs +1 -2
  235. package/dist/components/navigation/Sidebar/Sidebar.cjs.js +1 -1
  236. package/dist/components/navigation/Sidebar/Sidebar.mjs +52 -52
  237. package/dist/components/navigation/Sidebar/Sidebar.module.css.mjs +1 -2
  238. package/dist/components/navigation/Sidebar/SidebarContext.cjs.js +1 -1
  239. package/dist/components/navigation/Sidebar/SidebarContext.mjs +2 -2
  240. package/dist/components/navigation/Sidebar/SidebarParts.cjs.js +1 -1
  241. package/dist/components/navigation/Sidebar/SidebarParts.mjs +76 -80
  242. package/dist/components/navigation/SkipLink/SkipLink.cjs.js +1 -1
  243. package/dist/components/navigation/SkipLink/SkipLink.mjs +12 -12
  244. package/dist/components/navigation/SkipLink/SkipLink.module.css.mjs +1 -2
  245. package/dist/components/navigation/Stepper/Stepper.cjs.js +1 -1
  246. package/dist/components/navigation/Stepper/Stepper.mjs +46 -46
  247. package/dist/components/navigation/Stepper/Stepper.module.css.mjs +1 -2
  248. package/dist/components/navigation/Tabs/Tabs.cjs.js +1 -1
  249. package/dist/components/navigation/Tabs/Tabs.mjs +2 -2
  250. package/dist/components/navigation/Tabs/Tabs.module.css.mjs +1 -2
  251. package/dist/components/overlays/CommandPalette/CommandPalette.cjs.js +1 -1
  252. package/dist/components/overlays/CommandPalette/CommandPalette.mjs +206 -206
  253. package/dist/components/overlays/CommandPalette/CommandPalette.module.css.mjs +1 -2
  254. package/dist/components/overlays/CommandPalette/CommandPaletteContext.cjs.js +1 -1
  255. package/dist/components/overlays/CommandPalette/CommandPaletteContext.mjs +2 -2
  256. package/dist/components/overlays/CommandPalette/CommandPaletteParts.cjs.js +1 -1
  257. package/dist/components/overlays/CommandPalette/CommandPaletteParts.mjs +104 -104
  258. package/dist/components/overlays/CommandPalette/commandPaletteUtils.cjs.js +1 -1
  259. package/dist/components/overlays/CommandPalette/commandPaletteUtils.mjs +62 -60
  260. package/dist/components/overlays/Drawer/Drawer.cjs.js +1 -1
  261. package/dist/components/overlays/Drawer/Drawer.mjs +31 -31
  262. package/dist/components/overlays/Drawer/Drawer.module.css.mjs +1 -2
  263. package/dist/components/overlays/Drawer/DrawerContent.cjs.js +1 -1
  264. package/dist/components/overlays/Drawer/DrawerContent.mjs +99 -99
  265. package/dist/components/overlays/Drawer/DrawerContext.cjs.js +1 -1
  266. package/dist/components/overlays/Drawer/DrawerContext.mjs +2 -2
  267. package/dist/components/overlays/Drawer/DrawerParts.cjs.js +1 -1
  268. package/dist/components/overlays/Drawer/DrawerParts.mjs +18 -18
  269. package/dist/components/overlays/Drawer/internal.mjs +1 -2
  270. package/dist/components/overlays/Drawer/useDragToClose.cjs.js +1 -1
  271. package/dist/components/overlays/Drawer/useDragToClose.mjs +2 -2
  272. package/dist/components/overlays/HoverCard/HoverCard.cjs.js +1 -1
  273. package/dist/components/overlays/HoverCard/HoverCard.mjs +31 -31
  274. package/dist/components/overlays/HoverCard/HoverCard.module.css.mjs +1 -2
  275. package/dist/components/overlays/Modal/ConfirmModal.cjs.js +1 -1
  276. package/dist/components/overlays/Modal/ConfirmModal.mjs +21 -23
  277. package/dist/components/overlays/Modal/Modal.cjs.js +1 -1
  278. package/dist/components/overlays/Modal/Modal.mjs +47 -47
  279. package/dist/components/overlays/Modal/Modal.module.css.mjs +1 -2
  280. package/dist/components/overlays/Modal/ModalContent.cjs.js +1 -1
  281. package/dist/components/overlays/Modal/ModalContent.mjs +24 -24
  282. package/dist/components/overlays/Modal/ModalContext.cjs.js +1 -1
  283. package/dist/components/overlays/Modal/ModalContext.mjs +2 -2
  284. package/dist/components/overlays/Modal/useScrollRegion.cjs.js +1 -1
  285. package/dist/components/overlays/Modal/useScrollRegion.mjs +2 -2
  286. package/dist/components/overlays/Popover/Popover.cjs.js +1 -1
  287. package/dist/components/overlays/Popover/Popover.mjs +40 -40
  288. package/dist/components/overlays/Popover/Popover.module.css.mjs +1 -2
  289. package/dist/components/overlays/Popover/PopoverContent.cjs.js +1 -1
  290. package/dist/components/overlays/Popover/PopoverContent.mjs +39 -39
  291. package/dist/components/overlays/Popover/PopoverContext.cjs.js +1 -1
  292. package/dist/components/overlays/Popover/PopoverContext.mjs +2 -2
  293. package/dist/components/overlays/Tooltip/Tooltip.cjs.js +1 -1
  294. package/dist/components/overlays/Tooltip/Tooltip.mjs +100 -95
  295. package/dist/components/overlays/Tooltip/Tooltip.module.css.mjs +1 -2
  296. package/dist/components/primitives/Button/Button.cjs.js +1 -1
  297. package/dist/components/primitives/Button/Button.mjs +59 -63
  298. package/dist/components/primitives/Button/Button.module.css.mjs +1 -2
  299. package/dist/components/primitives/Icon/Icon.cjs.js +1 -1
  300. package/dist/components/primitives/Icon/Icon.mjs +5 -6
  301. package/dist/components/primitives/Icon/Icon.module.css.mjs +1 -2
  302. package/dist/components/primitives/Icon/IconSvg.mjs +1 -2
  303. package/dist/components/primitives/Icon/icons.mjs +1 -2
  304. package/dist/components/primitives/Kbd/Kbd.cjs.js +1 -1
  305. package/dist/components/primitives/Kbd/Kbd.mjs +30 -30
  306. package/dist/components/primitives/Kbd/Kbd.module.css.mjs +1 -2
  307. package/dist/components/primitives/Typography/Typography.mjs +1 -2
  308. package/dist/components/primitives/Typography/Typography.module.css.mjs +1 -2
  309. package/dist/components/utilities/LocaleProvider/LocaleProvider.cjs.js +1 -1
  310. package/dist/components/utilities/LocaleProvider/LocaleProvider.mjs +11 -11
  311. package/dist/components/utilities/LocaleProvider/LocaleProvider.module.css.mjs +1 -2
  312. package/dist/components/utilities/Portal/Portal.cjs.js +1 -1
  313. package/dist/components/utilities/Portal/Portal.mjs +2 -2
  314. package/dist/components/utilities/Theme/Theme.cjs.js +1 -1
  315. package/dist/components/utilities/Theme/Theme.mjs +13 -13
  316. package/dist/components/utilities/Theme/Theme.module.css.mjs +1 -2
  317. package/dist/components/utilities/VisuallyHidden/VisuallyHidden.mjs +1 -2
  318. package/dist/components/utilities/VisuallyHidden/VisuallyHidden.module.css.mjs +1 -2
  319. package/dist/hooks/elementSource.cjs.js +1 -1
  320. package/dist/hooks/elementSource.mjs +4 -3
  321. package/dist/hooks/useClipboard.cjs.js +1 -1
  322. package/dist/hooks/useClipboard.mjs +2 -2
  323. package/dist/hooks/useControllableState.cjs.js +1 -1
  324. package/dist/hooks/useControllableState.mjs +2 -2
  325. package/dist/hooks/useDisclosure.cjs.js +1 -1
  326. package/dist/hooks/useDisclosure.mjs +2 -2
  327. package/dist/hooks/useDismiss.cjs.js +1 -1
  328. package/dist/hooks/useDismiss.mjs +2 -2
  329. package/dist/hooks/useElementObservers.cjs.js +1 -1
  330. package/dist/hooks/useElementObservers.mjs +2 -2
  331. package/dist/hooks/useEnvironment.cjs.js +1 -1
  332. package/dist/hooks/useEnvironment.mjs +2 -2
  333. package/dist/hooks/useFloatingPosition.cjs.js +1 -1
  334. package/dist/hooks/useFloatingPosition.mjs +2 -2
  335. package/dist/hooks/useFocusTrap.cjs.js +1 -1
  336. package/dist/hooks/useFocusTrap.mjs +4 -15
  337. package/dist/hooks/useFormReset.cjs.js +1 -1
  338. package/dist/hooks/useFormReset.mjs +2 -2
  339. package/dist/hooks/useFormValidation.cjs.js +1 -1
  340. package/dist/hooks/useFormValidation.mjs +2 -2
  341. package/dist/hooks/useHotkeys.cjs.js +1 -1
  342. package/dist/hooks/useHotkeys.mjs +2 -2
  343. package/dist/hooks/useInertOutside.cjs.js +1 -1
  344. package/dist/hooks/useInertOutside.mjs +5 -9
  345. package/dist/hooks/useMediaQuery.cjs.js +1 -1
  346. package/dist/hooks/useMediaQuery.mjs +2 -2
  347. package/dist/hooks/useMergedRef.cjs.js +1 -1
  348. package/dist/hooks/useMergedRef.mjs +2 -2
  349. package/dist/hooks/useOverlayLayer.cjs.js +1 -1
  350. package/dist/hooks/useOverlayLayer.mjs +3 -3
  351. package/dist/hooks/useResponsiveValue.cjs.js +1 -1
  352. package/dist/hooks/useResponsiveValue.mjs +2 -2
  353. package/dist/hooks/useScrollLock.cjs.js +1 -1
  354. package/dist/hooks/useScrollLock.mjs +2 -2
  355. package/dist/hooks/useStorage.cjs.js +1 -1
  356. package/dist/hooks/useStorage.mjs +2 -2
  357. package/dist/hooks/useTiming.cjs.js +1 -1
  358. package/dist/hooks/useTiming.mjs +10 -15
  359. package/dist/hooks/useVirtualizer.cjs.js +1 -1
  360. package/dist/hooks/useVirtualizer.d.ts +13 -0
  361. package/dist/hooks/useVirtualizer.mjs +93 -54
  362. package/dist/i18n/en.mjs +1 -2
  363. package/dist/i18n/merge.mjs +1 -2
  364. package/dist/i18n/plural.mjs +1 -2
  365. package/dist/index.cjs.js +1 -1
  366. package/dist/index.mjs +114 -114
  367. package/dist/locales/ar.mjs +1 -2
  368. package/dist/locales/bn.mjs +1 -2
  369. package/dist/locales/cs.mjs +1 -2
  370. package/dist/locales/da.mjs +1 -2
  371. package/dist/locales/de.mjs +1 -2
  372. package/dist/locales/el.mjs +1 -2
  373. package/dist/locales/es.mjs +1 -2
  374. package/dist/locales/fa.mjs +1 -2
  375. package/dist/locales/fi.mjs +1 -2
  376. package/dist/locales/fr.mjs +1 -2
  377. package/dist/locales/he.mjs +1 -2
  378. package/dist/locales/hi.mjs +1 -2
  379. package/dist/locales/hu.mjs +1 -2
  380. package/dist/locales/id.mjs +1 -2
  381. package/dist/locales/it.mjs +1 -2
  382. package/dist/locales/ja.mjs +1 -2
  383. package/dist/locales/ko.mjs +1 -2
  384. package/dist/locales/nb.mjs +1 -2
  385. package/dist/locales/nl.mjs +1 -2
  386. package/dist/locales/pl.mjs +1 -2
  387. package/dist/locales/pt-BR.mjs +1 -2
  388. package/dist/locales/ro.mjs +1 -2
  389. package/dist/locales/ru.mjs +1 -2
  390. package/dist/locales/sv.mjs +1 -2
  391. package/dist/locales/th.mjs +1 -2
  392. package/dist/locales/tr.mjs +1 -2
  393. package/dist/locales/uk.mjs +1 -2
  394. package/dist/locales/ur.mjs +1 -2
  395. package/dist/locales/vi.mjs +1 -2
  396. package/dist/locales/zh-Hans.mjs +1 -2
  397. package/dist/locales/zh-Hant.mjs +1 -2
  398. package/dist/types/common.mjs +1 -2
  399. package/dist/utils/announce.cjs.js +1 -1
  400. package/dist/utils/announce.mjs +3 -4
  401. package/dist/utils/brandPalette.mjs +1 -2
  402. package/dist/utils/clipboard.mjs +1 -2
  403. package/dist/utils/cx.mjs +1 -2
  404. package/dist/utils/fillSlot.cjs.js +1 -1
  405. package/dist/utils/fillSlot.mjs +2 -2
  406. package/dist/utils/flattenChildren.mjs +1 -2
  407. package/dist/utils/hotkeys.mjs +1 -2
  408. package/dist/utils/intl.cjs.js +1 -0
  409. package/dist/utils/intl.d.ts +10 -0
  410. package/dist/utils/intl.mjs +15 -0
  411. package/dist/utils/refs.mjs +1 -2
  412. package/dist/utils/responsive.mjs +1 -2
  413. package/dist/utils/slot.mjs +1 -2
  414. package/dist/utils/validators.mjs +1 -2
  415. package/dist/vjdesigns-ui.css +1 -1
  416. package/dist/vjdesigns-ui.css.d.ts +2 -0
  417. package/package.json +24 -14
@@ -1,14 +1,15 @@
1
+ "use client";
1
2
  import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
2
- import { useLocale as t } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
3
+ import { cx as t } from "../../../utils/cx.mjs";
3
4
  import { assignRef as n } from "../../../utils/refs.mjs";
4
- import { cx as r } from "../../../utils/cx.mjs";
5
- import { IconButton as i } from "../../primitives/Button/Button.mjs";
6
- import { ChevronLeftIcon as a, ChevronRightIcon as o } from "../../primitives/Icon/icons.mjs";
7
- import { addDays as s, addMonths as c, addMonthsToMonth as l, clampDate as u, endOfWeek as ee, firstOfMonth as d, formatFullDate as te, formatMonthYear as f, getFormatter as p, getLocaleWeekStart as ne, lastOfMonth as re, makeDate as ie, monthGrid as ae, parseISODate as oe, startOfWeek as se, toISOMonth as m, todayISO as ce } from "./dateUtils.mjs";
5
+ import { IconButton as r } from "../../primitives/Button/Button.mjs";
6
+ import { ChevronLeftIcon as i, ChevronRightIcon as a } from "../../primitives/Icon/icons.mjs";
7
+ import { addDays as o, addMonths as s, addMonthsToMonth as c, clampDate as l, endOfWeek as u, firstOfMonth as d, formatFullDate as ee, formatMonthYear as f, getFormatter as p, getLocaleWeekStart as te, lastOfMonth as ne, makeDate as re, monthGrid as ie, parseISODate as ae, startOfWeek as oe, toISOMonth as m, todayISO as se } from "./dateUtils.mjs";
8
8
  import h from "./Calendar.module.css.mjs";
9
+ import { useLocale as ce } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
9
10
  import { useCallback as g, useEffect as le, useId as ue, useMemo as _, useRef as de, useState as v } from "react";
10
11
  import { jsx as y, jsxs as b } from "react/jsx-runtime";
11
- //#region src/components/forms/DatePicker/Calendar.tsx
12
+ // src/components/forms/DatePicker/Calendar.tsx
12
13
  var fe = {
13
14
  sm: h.sm,
14
15
  md: h.md,
@@ -25,7 +26,7 @@ function he(e) {
25
26
  return e?.start ? e.end ? e.start <= e.end ? [e.start, e.end] : [e.end, e.start] : [e.start, null] : [null, null];
26
27
  }
27
28
  var ge = (ge) => {
28
- let { messages: _e, locale: ve } = t(), { mode: ye = "single", value: be, defaultValue: xe, onValueChange: Se, min: x, max: S, isDateDisabled: C, locale: w = ve, weekStartsOn: Ce, month: we, defaultMonth: Te, onMonthChange: Ee, numberOfMonths: T = 1, showOutsideDays: De = T === 1, size: E = "md", today: Oe, headingLevel: ke = 2, previousMonthLabel: Ae = _e.datePicker.previousMonth, nextMonthLabel: je = _e.datePicker.nextMonth, className: Me, ref: D, ...Ne } = ge, O = ye === "range", k = Oe ?? ce(), Pe = _(() => ne(w), [w]), A = Ce ?? Pe, [Fe, j] = e({
29
+ let { messages: _e, locale: ve } = ce(), { mode: ye = "single", value: be, defaultValue: xe, onValueChange: Se, min: x, max: S, isDateDisabled: C, locale: w = ve, weekStartsOn: Ce, month: we, defaultMonth: Te, onMonthChange: Ee, numberOfMonths: T = 1, showOutsideDays: De = T === 1, size: E = "md", today: Oe, headingLevel: ke = 2, previousMonthLabel: Ae = _e.datePicker.previousMonth, nextMonthLabel: je = _e.datePicker.nextMonth, className: Me, ref: D, ...Ne } = ge, O = ye === "range", k = Oe ?? se(), Pe = _(() => te(w), [w]), A = Ce ?? Pe, [Fe, j] = e({
29
30
  value: be,
30
31
  defaultValue: xe ?? null,
31
32
  onChange: Se
@@ -33,7 +34,7 @@ var ge = (ge) => {
33
34
  value: we,
34
35
  defaultValue: Te ?? m(M ?? P ?? k),
35
36
  onChange: Ee
36
- }), L = Ie.slice(0, 7), R = _(() => Array.from({ length: T }, (e, t) => l(L, t)), [L, T]), z = d(R[0]), B = re(R[R.length - 1]), V = (e) => !!e && e >= z && e <= B, H = g((e) => x && e < x || S && e > S ? !0 : C ? C(e, oe(e)) : !1, [
37
+ }), L = Ie.slice(0, 7), R = _(() => Array.from({ length: T }, (e, t) => c(L, t)), [L, T]), z = d(R[0]), B = ne(R[R.length - 1]), V = (e) => !!e && e >= z && e <= B, H = g((e) => x && e < x || S && e > S ? !0 : C ? C(e, ae(e)) : !1, [
37
38
  x,
38
39
  S,
39
40
  C
@@ -47,7 +48,7 @@ var ge = (ge) => {
47
48
  ].filter(V), t = e.find((e) => !H(e));
48
49
  if (t) return t;
49
50
  if (e[0]) return e[0];
50
- for (let e = z; e <= B; e = s(e, 1)) if (!H(e)) return e;
51
+ for (let e = z; e <= B; e = o(e, 1)) if (!H(e)) return e;
51
52
  return z;
52
53
  }, [
53
54
  U,
@@ -67,53 +68,47 @@ var ge = (ge) => {
67
68
  e && (J.current = !1, e.focus({ preventScroll: !1 }));
68
69
  });
69
70
  let Ve = (e) => {
70
- let t = u(e, x, S);
71
- W(t), t < z ? I(m(t)) : t > B && I(l(m(t), -(T - 1))), t !== K && (J.current = !0);
71
+ let t = l(e, x, S);
72
+ W(t), t < z ? I(m(t)) : t > B && I(c(m(t), -(T - 1))), t !== K && (J.current = !0);
72
73
  }, Y = (e) => {
73
- if (!H(e)) {
74
- if (V(e) ? W(e) : Ve(e), !O) {
75
- j(e);
76
- return;
77
- }
78
- !N.start || N.end ? j({
79
- start: e,
80
- end: null
81
- }) : e < N.start ? j({
82
- start: e,
83
- end: N.start
84
- }) : j({
85
- start: N.start,
86
- end: e
87
- }), G(null);
88
- }
74
+ H(e) || (V(e) ? W(e) : Ve(e), O ? (!N.start || N.end ? j({
75
+ start: e,
76
+ end: null
77
+ }) : e < N.start ? j({
78
+ start: e,
79
+ end: N.start
80
+ }) : j({
81
+ start: N.start,
82
+ end: e
83
+ }), G(null)) : j(e));
89
84
  }, He = (e) => {
90
85
  if (!e.target.dataset.date) return;
91
86
  Le !== null && G(null);
92
87
  let t = q.current ? getComputedStyle(q.current).direction === "rtl" : !1, n = K, r = null;
93
88
  switch (e.key) {
94
89
  case "ArrowLeft":
95
- r = s(n, t ? 1 : -1);
90
+ r = o(n, t ? 1 : -1);
96
91
  break;
97
92
  case "ArrowRight":
98
- r = s(n, t ? -1 : 1);
93
+ r = o(n, t ? -1 : 1);
99
94
  break;
100
95
  case "ArrowUp":
101
- r = s(n, -7);
96
+ r = o(n, -7);
102
97
  break;
103
98
  case "ArrowDown":
104
- r = s(n, 7);
99
+ r = o(n, 7);
105
100
  break;
106
101
  case "Home":
107
- r = se(n, A);
102
+ r = oe(n, A);
108
103
  break;
109
104
  case "End":
110
- r = ee(n, A);
105
+ r = u(n, A);
111
106
  break;
112
107
  case "PageUp":
113
- r = c(n, e.shiftKey ? -12 : -1);
108
+ r = s(n, e.shiftKey ? -12 : -1);
114
109
  break;
115
110
  case "PageDown":
116
- r = c(n, e.shiftKey ? 12 : 1);
111
+ r = s(n, e.shiftKey ? 12 : 1);
117
112
  break;
118
113
  case "Enter":
119
114
  case " ":
@@ -130,51 +125,51 @@ var ge = (ge) => {
130
125
  }, Ge = ue(), Ke = _(() => {
131
126
  let e = p(w, { weekday: "short" }), t = p(w, { weekday: "long" });
132
127
  return Array.from({ length: 7 }, (n, r) => {
133
- let i = (A + r) % 7, a = ie(2023, 0, 1 + i);
128
+ let i = (A + r) % 7, a = re(2023, 0, 1 + i);
134
129
  return {
135
130
  key: i,
136
131
  short: e.format(a),
137
132
  long: t.format(a)
138
133
  };
139
134
  });
140
- }, [w, A]), qe = p(w, { day: "numeric" }), Je = !!x && re(l(L, -1)) < x, Ye = !!S && d(l(R[R.length - 1], 1)) > S, Xe = `h${ke}`, Ze = pe[E], $ = (e) => /* @__PURE__ */ y(i, {
135
+ }, [w, A]), qe = p(w, { day: "numeric" }), Je = !!x && ne(c(L, -1)) < x, Ye = !!S && d(c(R[R.length - 1], 1)) > S, Xe = `h${ke}`, Ze = pe[E], $ = (e) => /* @__PURE__ */ y(r, {
141
136
  variant: "ghost",
142
137
  tone: "neutral",
143
138
  size: Ze,
144
139
  "aria-label": e === "previous" ? Ae : je,
145
140
  disabled: e === "previous" ? Je : Ye,
146
141
  className: h.navButton,
147
- onClick: () => I(l(L, e === "previous" ? -1 : 1)),
148
- children: y(e === "previous" ? a : o, { className: h.flipInRtl })
142
+ onClick: () => I(c(L, e === "previous" ? -1 : 1)),
143
+ children: y(e === "previous" ? i : a, { className: h.flipInRtl })
149
144
  });
150
145
  return /* @__PURE__ */ y("div", {
151
146
  role: "group",
152
147
  ...Ne,
153
148
  ref: Be,
154
- className: r(h.root, fe[E], Me),
149
+ className: t(h.root, fe[E], Me),
155
150
  "data-size": E,
156
151
  "data-mode": ye,
157
152
  children: /* @__PURE__ */ y("div", {
158
153
  className: h.months,
159
- children: R.map((e, t) => {
160
- let n = `${Ge}-heading-${t}`;
154
+ children: R.map((e, n) => {
155
+ let r = `${Ge}-heading-${n}`;
161
156
  return /* @__PURE__ */ b("div", {
162
157
  className: h.month,
163
158
  children: [/* @__PURE__ */ b("div", {
164
159
  className: h.header,
165
160
  children: [
166
- t === 0 ? $("previous") : /* @__PURE__ */ y("span", { className: h.navSpacer }),
161
+ n === 0 ? $("previous") : /* @__PURE__ */ y("span", { className: h.navSpacer }),
167
162
  /* @__PURE__ */ y(Xe, {
168
- id: n,
163
+ id: r,
169
164
  className: h.heading,
170
165
  "aria-live": "polite",
171
166
  children: f(e, w)
172
167
  }),
173
- t === R.length - 1 ? $("next") : /* @__PURE__ */ y("span", { className: h.navSpacer })
168
+ n === R.length - 1 ? $("next") : /* @__PURE__ */ y("span", { className: h.navSpacer })
174
169
  ]
175
170
  }), /* @__PURE__ */ b("table", {
176
171
  role: "grid",
177
- "aria-labelledby": n,
172
+ "aria-labelledby": r,
178
173
  "aria-multiselectable": O ? !0 : void 0,
179
174
  className: h.grid,
180
175
  onKeyDown: He,
@@ -186,43 +181,42 @@ var ge = (ge) => {
186
181
  abbr: e.long,
187
182
  className: h.weekday,
188
183
  children: e.short
189
- }, e.key)) }) }), /* @__PURE__ */ y("tbody", { children: ae(e, A).map((t) => /* @__PURE__ */ y("tr", { children: t.map((t) => {
190
- let n = m(t) !== e;
191
- if (n && !De) return /* @__PURE__ */ y("td", {
184
+ }, e.key)) }) }), /* @__PURE__ */ y("tbody", { children: ie(e, A).map((n) => /* @__PURE__ */ y("tr", { children: n.map((n) => {
185
+ let r = m(n) !== e;
186
+ if (r && !De) return /* @__PURE__ */ y("td", {
192
187
  role: "gridcell",
193
188
  className: h.cell
194
- }, t);
195
- let i = H(t), a = !n && t === K, o = t === k, s = !O && t === M, c = O && t === P, l = O && t === F, u = O && !!P && !!F && t > P && t < F, ee = s || c || l || u, d = n ? null : We(t), f = d?.kind === "preview" && t === X;
189
+ }, n);
190
+ let i = H(n), a = !r && n === K, o = n === k, s = !O && n === M, c = O && n === P, l = O && n === F, u = O && !!P && !!F && n > P && n < F, d = s || c || l || u, f = r ? null : We(n), p = f?.kind === "preview" && n === X;
196
191
  return /* @__PURE__ */ y("td", {
197
192
  role: "gridcell",
198
- "data-date": t,
193
+ "data-date": n,
199
194
  "data-active": a ? "" : void 0,
200
- "data-outside": n ? "" : void 0,
201
- "data-band": d?.shape,
202
- "data-band-kind": d?.kind,
195
+ "data-outside": r ? "" : void 0,
196
+ "data-band": f?.shape,
197
+ "data-band-kind": f?.kind,
203
198
  tabIndex: a ? 0 : -1,
204
- "aria-label": te(t, w),
205
- "aria-selected": n ? void 0 : ee,
199
+ "aria-label": ee(n, w),
200
+ "aria-selected": r ? void 0 : d,
206
201
  "aria-current": o ? "date" : void 0,
207
202
  "aria-disabled": i ? !0 : void 0,
208
- className: r(h.cell, n && h.outside, o && h.today, i && h.unavailable, (s || c || l) && h.selected, u && h.inRange, f && h.previewEnd),
209
- onClick: () => Y(t),
203
+ className: t(h.cell, r && h.outside, o && h.today, i && h.unavailable, (s || c || l) && h.selected, u && h.inRange, p && h.previewEnd),
204
+ onClick: () => Y(n),
210
205
  onFocus: () => {
211
- n || W(t);
206
+ r || W(n);
212
207
  },
213
- onPointerEnter: () => G(t),
208
+ onPointerEnter: () => G(n),
214
209
  children: /* @__PURE__ */ y("span", {
215
210
  className: h.day,
216
211
  "aria-hidden": "true",
217
- children: qe.format(oe(t))
212
+ children: qe.format(ae(n))
218
213
  })
219
- }, t);
220
- }) }, t[0])) })]
214
+ }, n);
215
+ }) }, n[0])) })]
221
216
  })]
222
- }, t);
217
+ }, n);
223
218
  })
224
219
  })
225
220
  });
226
221
  };
227
- //#endregion
228
222
  export { ge as Calendar };
@@ -1,4 +1,4 @@
1
- //#region src/components/forms/DatePicker/Calendar.module.css
1
+ // src/components/forms/DatePicker/Calendar.module.css
2
2
  var e = "_root_19q09_15", t = "_sm_19q09_41", n = "_md_19q09_59", r = "_lg_19q09_71", i = "_months_19q09_85", a = "_month_19q09_85", o = "_header_19q09_109", s = "_heading_19q09_123", c = "_navSpacer_19q09_153", l = "_flipInRtl_19q09_163", u = "_grid_19q09_173", d = "_weekday_19q09_185", f = "_cell_19q09_209", p = "_day_19q09_237", m = "_unavailable_19q09_285", h = "_selected_19q09_285", g = "_outside_19q09_313", _ = "_today_19q09_325", v = "_inRange_19q09_469", y = "_previewEnd_19q09_497", b = {
3
3
  root: e,
4
4
  sm: t,
@@ -21,5 +21,4 @@ var e = "_root_19q09_15", t = "_sm_19q09_41", n = "_md_19q09_59", r = "_lg_19q09
21
21
  inRange: v,
22
22
  previewEnd: y
23
23
  };
24
- //#endregion
25
24
  export { f as cell, p as day, b as default, l as flipInRtl, u as grid, o as header, s as heading, v as inRange, r as lg, n as md, a as month, i as months, c as navSpacer, g as outside, y as previewEnd, e as root, h as selected, t as sm, _ as today, m as unavailable, d as weekday };
@@ -1 +1 @@
1
- const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js"),n=require("../../../utils/cx.cjs.js"),r=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),i=require("../../primitives/Button/Button.cjs.js"),a=require("../../primitives/Icon/icons.cjs.js"),o=require("../Field/FieldContext.cjs.js"),s=require("../../overlays/Popover/Popover.cjs.js"),ee=require("../Input/Input.cjs.js"),c=require("./dateUtils.cjs.js"),te=require("./Calendar.cjs.js"),l=require("./DatePicker.module.css.cjs.js");let u=require("react"),d=require("react/jsx-runtime");function ne(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.between(n(r),n(i)):r?e.onOrAfter(n(r)):e.onOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text)}}var f=({value:f,defaultValue:re,onValueChange:ie,min:p,max:m,isDateDisabled:h,locale:ae,weekStartsOn:oe,placement:se=`bottom-start`,size:g,name:_,clearable:ce=!1,open:le,defaultOpen:ue=!1,onOpenChange:de,onInvalidInput:fe,invalidMessage:v,chooseDateLabel:pe,changeDateLabel:me,dialogLabel:he,formatDescription:ge,today:_e,numberOfMonths:ve=1,fieldClassName:ye,className:be,style:xe,invalid:y,required:b,disabled:x,readOnly:S,placeholder:Se,fullWidth:C=!0,endElement:Ce,onChange:we,onBlur:Te,onFocus:w,onKeyDown:T,"aria-describedby":E,...D})=>{let{messages:O,locale:Ee}=t.useLocale(),k=ae??Ee,De=pe??O.datePicker.chooseDate,Oe=me??O.datePicker.changeDate,ke=he??O.datePicker.dialog,Ae=ge??O.datePicker.format,A=o.useFieldControl({disabled:x,readOnly:S,size:g,invalid:y,required:b}),j=A.size??`md`,M=!A.disabled&&!A.readOnly,N=(0,u.useMemo)(()=>c.getDateFormatInfo(k),[k]),{format:P}=N,F=c.localizeDatePattern(N.pattern,O.datePicker.pattern),[I,je]=e.useControllableState({value:f,defaultValue:re??null,onChange:ie}),[L,R]=(0,u.useState)(()=>I?P(I):``),[z,B]=(0,u.useState)(null),V=(0,u.useRef)(I);(0,u.useEffect)(()=>{V.current!==I&&(V.current=I,R(I?P(I):``),B(null))},[I,P]);let H=(0,u.useRef)(P);(0,u.useEffect)(()=>{if(H.current===P)return;let e=H.current;H.current=P,R(t=>I&&t===e(I)?P(I):t)},[P,I]);let U=(e,t)=>{V.current=e,R(t),je(e)},Me=e=>p&&e<p||m&&e>m?`out-of-range`:h?.(e,c.parseISODate(e))?`unavailable`:null,W=()=>{let e=L.trim();if(!e){B(null),U(null,``);return}let t=c.parseDateText(e,k),n=t?Me(t):`unparseable`;if(n){let r={text:e,reason:n,date:t??void 0,pattern:F};B(r),U(null,L),fe?.(r);return}B(null),U(t,P(t))},[Ne,G]=e.useControllableState({value:le,defaultValue:ue,onChange:de}),K=Ne&&M,q=(0,u.useRef)(null),J=()=>q.current?.querySelector(`[data-active]`)??null,Y=(0,u.useRef)(null);(0,u.useEffect)(()=>{if(K||!Y.current)return;let e=Y.current;Y.current=null;let t=document.activeElement,n=e.closest(`.${l.default.anchor}`);e.isConnected&&(!t||t===document.body||n?.contains(t))&&e.focus()},[K]);let Pe=e=>{e&&(B(null),U(e,P(e)),G(!1))},Fe=e=>{R(e.target.value),we?.(e)},Ie=e=>{Te?.(e),!A.readOnly&&!A.disabled&&W()},Le=e=>{w?.(e)},Re=e=>{T?.(e),!e.defaultPrevented&&M&&(e.key===`Enter`?W():e.key===`ArrowDown`&&e.altKey&&(e.preventDefault(),W(),Y.current=e.currentTarget,G(!0)))},X=(0,u.useId)(),Z=`${X}-format`,Q=`${X}-error`,$=z&&v!==null?typeof v==`function`?v(z):v??ne(O.datePicker.invalid,z,P,p,m):null,ze=[E,Z,$==null?void 0:Q].filter(Boolean).join(` `)||void 0,Be=I?Oe(c.formatFullDate(I,k)):De;return(0,d.jsxs)(`div`,{className:n.cx(l.default.root,C&&l.default.fullWidth,be),style:xe,"data-size":j,children:[(0,d.jsxs)(s.Popover,{open:K,onOpenChange:G,placement:se,modal:!0,closeOnAnchorFocus:!0,children:[(0,d.jsx)(s.Popover.Anchor,{asChild:!1,className:l.default.anchor,children:(0,d.jsx)(ee.Input,{...D,type:`text`,autoComplete:`off`,size:g,invalid:y??(z?!0:void 0),required:b,disabled:x,readOnly:S,fullWidth:C,placeholder:Se??F,className:ye,"aria-describedby":ze,value:L,onChange:Fe,onBlur:Ie,onFocus:Le,onKeyDown:Re,clearable:ce,onClear:()=>{B(null),U(null,``)},endElement:(0,d.jsxs)(d.Fragment,{children:[Ce,!A.readOnly&&(0,d.jsx)(s.Popover.Trigger,{asChild:!0,children:(0,d.jsx)(i.IconButton,{size:j===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Be,disabled:A.disabled,children:(0,d.jsx)(a.CalendarIcon,{})})})]})})}),(0,d.jsx)(s.Popover.Content,{"aria-label":ke,size:`sm`,maxWidth:`none`,initialFocus:J,className:l.default.popup,children:(0,d.jsx)(te.Calendar,{ref:q,value:I,onValueChange:Pe,min:p,max:m,isDateDisabled:h,locale:k,weekStartsOn:oe,size:j,today:_e,numberOfMonths:ve})})]}),(0,d.jsx)(r.VisuallyHidden,{id:Z,children:Ae(F)}),_!==void 0&&(0,d.jsx)(`input`,{type:`hidden`,name:_,value:I??``,disabled:A.disabled}),(0,d.jsx)(`div`,{"aria-live":`polite`,className:l.default.errorRegion,children:$!=null&&(0,d.jsxs)(`p`,{id:Q,className:l.default.error,children:[(0,d.jsx)(a.ErrorIcon,{size:`sm`,className:l.default.errorIcon}),(0,d.jsx)(`span`,{children:$})]})})]})};exports.DatePicker=f;
1
+ "use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../utils/cx.cjs.js"),n=require("../../overlays/Popover/Popover.cjs.js"),r=require("../../primitives/Button/Button.cjs.js"),i=require("../../primitives/Icon/icons.cjs.js"),ee=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),te=require("../Field/FieldContext.cjs.js"),a=require("../Input/Input.cjs.js"),ne=require("./Calendar.cjs.js"),o=require("./dateUtils.cjs.js"),s=require("./DatePicker.module.css.cjs.js"),re=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let c=require("react"),l=require("react/jsx-runtime");function ie(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.between(n(r),n(i)):r?e.onOrAfter(n(r)):e.onOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text)}}var u=({value:u,defaultValue:ae,onValueChange:oe,min:d,max:f,isDateDisabled:p,locale:se,weekStartsOn:ce,placement:le=`bottom-start`,size:m,name:h,clearable:ue=!1,open:de,defaultOpen:fe=!1,onOpenChange:pe,onInvalidInput:me,invalidMessage:g,chooseDateLabel:he,changeDateLabel:ge,dialogLabel:_e,formatDescription:ve,today:ye,numberOfMonths:be=1,fieldClassName:xe,className:Se,style:Ce,invalid:_,required:v,disabled:y,readOnly:b,placeholder:we,fullWidth:x=!0,endElement:Te,onChange:S,onBlur:C,onFocus:w,onKeyDown:T,"aria-describedby":E,...D})=>{let{messages:O,locale:Ee}=re.useLocale(),k=se??Ee,De=he??O.datePicker.chooseDate,Oe=ge??O.datePicker.changeDate,ke=_e??O.datePicker.dialog,A=ve??O.datePicker.format,j=te.useFieldControl({disabled:y,readOnly:b,size:m,invalid:_,required:v}),M=j.size??`md`,N=!j.disabled&&!j.readOnly,P=(0,c.useMemo)(()=>o.getDateFormatInfo(k),[k]),{format:F}=P,I=o.localizeDatePattern(P.pattern,O.datePicker.pattern),[L,Ae]=e.useControllableState({value:u,defaultValue:ae??null,onChange:oe}),[R,z]=(0,c.useState)(()=>L?F(L):``),[B,V]=(0,c.useState)(null),H=(0,c.useRef)(L);(0,c.useEffect)(()=>{H.current!==L&&(H.current=L,z(L?F(L):``),V(null))},[L,F]);let U=(0,c.useRef)(F);(0,c.useEffect)(()=>{if(U.current===F)return;let e=U.current;U.current=F,z(t=>L&&t===e(L)?F(L):t)},[F,L]);let W=(e,t)=>{H.current=e,z(t),Ae(e)},je=e=>d&&e<d||f&&e>f?`out-of-range`:p?.(e,o.parseISODate(e))?`unavailable`:null,G=()=>{let e=R.trim();if(!e){V(null),W(null,``);return}let t=o.parseDateText(e,k),n=t?je(t):`unparseable`;if(n){let r={text:e,reason:n,date:t??void 0,pattern:I};V(r),W(null,R),me?.(r)}else V(null),W(t,F(t))},[Me,K]=e.useControllableState({value:de,defaultValue:fe,onChange:pe}),q=Me&&N,J=(0,c.useRef)(null),Ne=()=>J.current?.querySelector(`[data-active]`)??null,Y=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(q||!Y.current)return;let e=Y.current;Y.current=null;let t=document.activeElement,n=e.closest(`.${s.default.anchor}`);e.isConnected&&(!t||t===document.body||n?.contains(t))&&e.focus()},[q]);let Pe=e=>{e&&(V(null),W(e,F(e)),K(!1))},Fe=e=>{z(e.target.value),S?.(e)},Ie=e=>{C?.(e),!j.readOnly&&!j.disabled&&G()},Le=e=>{w?.(e)},Re=e=>{T?.(e),!e.defaultPrevented&&N&&(e.key===`Enter`?G():e.key===`ArrowDown`&&e.altKey&&(e.preventDefault(),G(),Y.current=e.currentTarget,K(!0)))},X=(0,c.useId)(),Z=`${X}-format`,Q=`${X}-error`,$=B&&g!==null?typeof g==`function`?g(B):g??ie(O.datePicker.invalid,B,F,d,f):null,ze=[E,Z,$==null?void 0:Q].filter(Boolean).join(` `)||void 0,Be=L?Oe(o.formatFullDate(L,k)):De;return(0,l.jsxs)(`div`,{className:t.cx(s.default.root,x&&s.default.fullWidth,Se),style:Ce,"data-size":M,children:[(0,l.jsxs)(n.Popover,{open:q,onOpenChange:K,placement:le,modal:!0,closeOnAnchorFocus:!0,children:[(0,l.jsx)(n.Popover.Anchor,{asChild:!1,className:s.default.anchor,children:(0,l.jsx)(a.Input,{...D,type:`text`,autoComplete:`off`,size:m,invalid:_??(B?!0:void 0),required:v,disabled:y,readOnly:b,fullWidth:x,placeholder:we??I,className:xe,"aria-describedby":ze,value:R,onChange:Fe,onBlur:Ie,onFocus:Le,onKeyDown:Re,clearable:ue,onClear:()=>{V(null),W(null,``)},endElement:(0,l.jsxs)(l.Fragment,{children:[Te,!j.readOnly&&(0,l.jsx)(n.Popover.Trigger,{asChild:!0,children:(0,l.jsx)(r.IconButton,{size:M===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Be,disabled:j.disabled,children:(0,l.jsx)(i.CalendarIcon,{})})})]})})}),(0,l.jsx)(n.Popover.Content,{"aria-label":ke,size:`sm`,maxWidth:`none`,initialFocus:Ne,className:s.default.popup,children:(0,l.jsx)(ne.Calendar,{ref:J,value:L,onValueChange:Pe,min:d,max:f,isDateDisabled:p,locale:k,weekStartsOn:ce,size:M,today:ye,numberOfMonths:be})})]}),(0,l.jsx)(ee.VisuallyHidden,{id:Z,children:A(I)}),h!==void 0&&(0,l.jsx)(`input`,{type:`hidden`,name:h,value:L??``,disabled:j.disabled}),(0,l.jsx)(`div`,{"aria-live":`polite`,className:s.default.errorRegion,children:$!=null&&(0,l.jsxs)(`p`,{id:Q,className:s.default.error,children:[(0,l.jsx)(i.ErrorIcon,{size:`sm`,className:s.default.errorIcon}),(0,l.jsx)(`span`,{children:$})]})})]})};exports.DatePicker=u;
@@ -1,55 +1,56 @@
1
+ "use client";
1
2
  import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
2
- import { useLocale as t } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
3
- import { cx as n } from "../../../utils/cx.mjs";
4
- import { VisuallyHidden as r } from "../../utilities/VisuallyHidden/VisuallyHidden.mjs";
5
- import { IconButton as i } from "../../primitives/Button/Button.mjs";
6
- import { CalendarIcon as a, ErrorIcon as ee } from "../../primitives/Icon/icons.mjs";
7
- import { useFieldControl as te } from "../Field/FieldContext.mjs";
8
- import { Popover as o } from "../../overlays/Popover/Popover.mjs";
9
- import { Input as s } from "../Input/Input.mjs";
10
- import { formatFullDate as ne, getDateFormatInfo as re, localizeDatePattern as ie, parseDateText as ae, parseISODate as oe } from "./dateUtils.mjs";
11
- import { Calendar as se } from "./Calendar.mjs";
12
- import c from "./DatePicker.module.css.mjs";
13
- import { useEffect as l, useId as ce, useMemo as u, useRef as d, useState as f } from "react";
14
- import { Fragment as le, jsx as p, jsxs as m } from "react/jsx-runtime";
15
- //#region src/components/forms/DatePicker/DatePicker.tsx
16
- function ue(e, t, n, r, i) {
3
+ import { cx as t } from "../../../utils/cx.mjs";
4
+ import { Popover as n } from "../../overlays/Popover/Popover.mjs";
5
+ import { IconButton as r } from "../../primitives/Button/Button.mjs";
6
+ import { CalendarIcon as i, ErrorIcon as ee } from "../../primitives/Icon/icons.mjs";
7
+ import { VisuallyHidden as te } from "../../utilities/VisuallyHidden/VisuallyHidden.mjs";
8
+ import { useFieldControl as a } from "../Field/FieldContext.mjs";
9
+ import { Input as ne } from "../Input/Input.mjs";
10
+ import { Calendar as re } from "./Calendar.mjs";
11
+ import { formatFullDate as ie, getDateFormatInfo as ae, localizeDatePattern as oe, parseDateText as se, parseISODate as ce } from "./dateUtils.mjs";
12
+ import o from "./DatePicker.module.css.mjs";
13
+ import { useLocale as le } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
14
+ import { useEffect as s, useId as c, useMemo as l, useRef as u, useState as d } from "react";
15
+ import { Fragment as ue, jsx as f, jsxs as p } from "react/jsx-runtime";
16
+ // src/components/forms/DatePicker/DatePicker.tsx
17
+ function de(e, t, n, r, i) {
17
18
  switch (t.reason) {
18
19
  case "unparseable": return e.unparseable(t.pattern);
19
20
  case "out-of-range": return r && i ? e.between(n(r), n(i)) : r ? e.onOrAfter(n(r)) : e.onOrBefore(n(i));
20
21
  case "unavailable": return e.unavailable(t.date ? n(t.date) : t.text);
21
22
  }
22
23
  }
23
- var h = ({ value: h, defaultValue: de, onValueChange: fe, min: g, max: _, isDateDisabled: v, locale: pe, weekStartsOn: me, placement: he = "bottom-start", size: y, name: b, clearable: ge = !1, open: _e, defaultOpen: ve = !1, onOpenChange: ye, onInvalidInput: be, invalidMessage: x, chooseDateLabel: xe, changeDateLabel: Se, dialogLabel: Ce, formatDescription: we, today: Te, numberOfMonths: Ee = 1, fieldClassName: De, className: Oe, style: S, invalid: C, required: w, disabled: T, readOnly: E, placeholder: ke, fullWidth: D = !0, endElement: Ae, onChange: je, onBlur: Me, onFocus: Ne, onKeyDown: Pe, "aria-describedby": Fe, ...Ie }) => {
24
- let { messages: O, locale: Le } = t(), k = pe ?? Le, Re = xe ?? O.datePicker.chooseDate, ze = Se ?? O.datePicker.changeDate, Be = Ce ?? O.datePicker.dialog, Ve = we ?? O.datePicker.format, A = te({
24
+ var m = ({ value: m, defaultValue: fe, onValueChange: pe, min: h, max: g, isDateDisabled: _, locale: me, weekStartsOn: he, placement: ge = "bottom-start", size: v, name: y, clearable: _e = !1, open: ve, defaultOpen: ye = !1, onOpenChange: be, onInvalidInput: xe, invalidMessage: b, chooseDateLabel: Se, changeDateLabel: Ce, dialogLabel: we, formatDescription: Te, today: Ee, numberOfMonths: De = 1, fieldClassName: Oe, className: x, style: S, invalid: C, required: w, disabled: T, readOnly: E, placeholder: ke, fullWidth: D = !0, endElement: Ae, onChange: je, onBlur: Me, onFocus: Ne, onKeyDown: Pe, "aria-describedby": Fe, ...Ie }) => {
25
+ let { messages: O, locale: Le } = le(), k = me ?? Le, Re = Se ?? O.datePicker.chooseDate, ze = Ce ?? O.datePicker.changeDate, Be = we ?? O.datePicker.dialog, Ve = Te ?? O.datePicker.format, A = a({
25
26
  disabled: T,
26
27
  readOnly: E,
27
- size: y,
28
+ size: v,
28
29
  invalid: C,
29
30
  required: w
30
- }), j = A.size ?? "md", M = !A.disabled && !A.readOnly, N = u(() => re(k), [k]), { format: P } = N, F = ie(N.pattern, O.datePicker.pattern), [I, He] = e({
31
- value: h,
32
- defaultValue: de ?? null,
33
- onChange: fe
34
- }), [L, R] = f(() => I ? P(I) : ""), [z, B] = f(null), V = d(I);
35
- l(() => {
31
+ }), j = A.size ?? "md", M = !A.disabled && !A.readOnly, N = l(() => ae(k), [k]), { format: P } = N, F = oe(N.pattern, O.datePicker.pattern), [I, He] = e({
32
+ value: m,
33
+ defaultValue: fe ?? null,
34
+ onChange: pe
35
+ }), [L, R] = d(() => I ? P(I) : ""), [z, B] = d(null), V = u(I);
36
+ s(() => {
36
37
  V.current !== I && (V.current = I, R(I ? P(I) : ""), B(null));
37
38
  }, [I, P]);
38
- let H = d(P);
39
- l(() => {
39
+ let H = u(P);
40
+ s(() => {
40
41
  if (H.current === P) return;
41
42
  let e = H.current;
42
43
  H.current = P, R((t) => I && t === e(I) ? P(I) : t);
43
44
  }, [P, I]);
44
45
  let U = (e, t) => {
45
46
  V.current = e, R(t), He(e);
46
- }, Ue = (e) => g && e < g || _ && e > _ ? "out-of-range" : v?.(e, oe(e)) ? "unavailable" : null, W = () => {
47
+ }, Ue = (e) => h && e < h || g && e > g ? "out-of-range" : _?.(e, ce(e)) ? "unavailable" : null, W = () => {
47
48
  let e = L.trim();
48
49
  if (!e) {
49
50
  B(null), U(null, "");
50
51
  return;
51
52
  }
52
- let t = ae(e, k), n = t ? Ue(t) : "unparseable";
53
+ let t = se(e, k), n = t ? Ue(t) : "unparseable";
53
54
  if (n) {
54
55
  let r = {
55
56
  text: e,
@@ -57,20 +58,18 @@ var h = ({ value: h, defaultValue: de, onValueChange: fe, min: g, max: _, isDate
57
58
  date: t ?? void 0,
58
59
  pattern: F
59
60
  };
60
- B(r), U(null, L), be?.(r);
61
- return;
62
- }
63
- B(null), U(t, P(t));
61
+ B(r), U(null, L), xe?.(r);
62
+ } else B(null), U(t, P(t));
64
63
  }, [We, G] = e({
65
- value: _e,
66
- defaultValue: ve,
67
- onChange: ye
68
- }), K = We && M, q = d(null), Ge = () => q.current?.querySelector("[data-active]") ?? null, J = d(null);
69
- l(() => {
64
+ value: ve,
65
+ defaultValue: ye,
66
+ onChange: be
67
+ }), K = We && M, q = u(null), Ge = () => q.current?.querySelector("[data-active]") ?? null, J = u(null);
68
+ s(() => {
70
69
  if (K || !J.current) return;
71
70
  let e = J.current;
72
71
  J.current = null;
73
- let t = document.activeElement, n = e.closest(`.${c.anchor}`);
72
+ let t = document.activeElement, n = e.closest(`.${o.anchor}`);
74
73
  e.isConnected && (!t || t === document.body || n?.contains(t)) && e.focus();
75
74
  }, [K]);
76
75
  let Ke = (e) => {
@@ -83,104 +82,103 @@ var h = ({ value: h, defaultValue: de, onValueChange: fe, min: g, max: _, isDate
83
82
  Ne?.(e);
84
83
  }, Ye = (e) => {
85
84
  Pe?.(e), !e.defaultPrevented && M && (e.key === "Enter" ? W() : e.key === "ArrowDown" && e.altKey && (e.preventDefault(), W(), J.current = e.currentTarget, G(!0)));
86
- }, X = ce(), Z = `${X}-format`, Q = `${X}-error`, $ = z && x !== null ? typeof x == "function" ? x(z) : x ?? ue(O.datePicker.invalid, z, P, g, _) : null, Xe = [
85
+ }, X = c(), Z = `${X}-format`, Q = `${X}-error`, $ = z && b !== null ? typeof b == "function" ? b(z) : b ?? de(O.datePicker.invalid, z, P, h, g) : null, Xe = [
87
86
  Fe,
88
87
  Z,
89
88
  $ == null ? void 0 : Q
90
- ].filter(Boolean).join(" ") || void 0, Ze = I ? ze(ne(I, k)) : Re;
91
- return /* @__PURE__ */ m("div", {
92
- className: n(c.root, D && c.fullWidth, Oe),
89
+ ].filter(Boolean).join(" ") || void 0, Ze = I ? ze(ie(I, k)) : Re;
90
+ return /* @__PURE__ */ p("div", {
91
+ className: t(o.root, D && o.fullWidth, x),
93
92
  style: S,
94
93
  "data-size": j,
95
94
  children: [
96
- /* @__PURE__ */ m(o, {
95
+ /* @__PURE__ */ p(n, {
97
96
  open: K,
98
97
  onOpenChange: G,
99
- placement: he,
98
+ placement: ge,
100
99
  modal: !0,
101
100
  closeOnAnchorFocus: !0,
102
- children: [/* @__PURE__ */ p(o.Anchor, {
101
+ children: [/* @__PURE__ */ f(n.Anchor, {
103
102
  asChild: !1,
104
- className: c.anchor,
105
- children: /* @__PURE__ */ p(s, {
103
+ className: o.anchor,
104
+ children: /* @__PURE__ */ f(ne, {
106
105
  ...Ie,
107
106
  type: "text",
108
107
  autoComplete: "off",
109
- size: y,
108
+ size: v,
110
109
  invalid: C ?? (z ? !0 : void 0),
111
110
  required: w,
112
111
  disabled: T,
113
112
  readOnly: E,
114
113
  fullWidth: D,
115
114
  placeholder: ke ?? F,
116
- className: De,
115
+ className: Oe,
117
116
  "aria-describedby": Xe,
118
117
  value: L,
119
118
  onChange: qe,
120
119
  onBlur: Je,
121
120
  onFocus: Y,
122
121
  onKeyDown: Ye,
123
- clearable: ge,
122
+ clearable: _e,
124
123
  onClear: () => {
125
124
  B(null), U(null, "");
126
125
  },
127
- endElement: /* @__PURE__ */ m(le, { children: [Ae, !A.readOnly && /* @__PURE__ */ p(o.Trigger, {
126
+ endElement: /* @__PURE__ */ p(ue, { children: [Ae, !A.readOnly && /* @__PURE__ */ f(n.Trigger, {
128
127
  asChild: !0,
129
- children: /* @__PURE__ */ p(i, {
128
+ children: /* @__PURE__ */ f(r, {
130
129
  size: j === "sm" ? "xs" : "sm",
131
130
  variant: "ghost",
132
131
  tone: "neutral",
133
132
  "aria-label": Ze,
134
133
  disabled: A.disabled,
135
- children: /* @__PURE__ */ p(a, {})
134
+ children: /* @__PURE__ */ f(i, {})
136
135
  })
137
136
  })] })
138
137
  })
139
- }), /* @__PURE__ */ p(o.Content, {
138
+ }), /* @__PURE__ */ f(n.Content, {
140
139
  "aria-label": Be,
141
140
  size: "sm",
142
141
  maxWidth: "none",
143
142
  initialFocus: Ge,
144
- className: c.popup,
145
- children: /* @__PURE__ */ p(se, {
143
+ className: o.popup,
144
+ children: /* @__PURE__ */ f(re, {
146
145
  ref: q,
147
146
  value: I,
148
147
  onValueChange: Ke,
149
- min: g,
150
- max: _,
151
- isDateDisabled: v,
148
+ min: h,
149
+ max: g,
150
+ isDateDisabled: _,
152
151
  locale: k,
153
- weekStartsOn: me,
152
+ weekStartsOn: he,
154
153
  size: j,
155
- today: Te,
156
- numberOfMonths: Ee
154
+ today: Ee,
155
+ numberOfMonths: De
157
156
  })
158
157
  })]
159
158
  }),
160
- /* @__PURE__ */ p(r, {
159
+ /* @__PURE__ */ f(te, {
161
160
  id: Z,
162
161
  children: Ve(F)
163
162
  }),
164
- b !== void 0 && /* @__PURE__ */ p("input", {
163
+ y !== void 0 && /* @__PURE__ */ f("input", {
165
164
  type: "hidden",
166
- name: b,
165
+ name: y,
167
166
  value: I ?? "",
168
167
  disabled: A.disabled
169
168
  }),
170
- /* @__PURE__ */ p("div", {
169
+ /* @__PURE__ */ f("div", {
171
170
  "aria-live": "polite",
172
- className: c.errorRegion,
173
- children: $ != null && /* @__PURE__ */ m("p", {
171
+ className: o.errorRegion,
172
+ children: $ != null && /* @__PURE__ */ p("p", {
174
173
  id: Q,
175
- className: c.error,
176
- children: [/* @__PURE__ */ p(ee, {
174
+ className: o.error,
175
+ children: [/* @__PURE__ */ f(ee, {
177
176
  size: "sm",
178
- className: c.errorIcon
179
- }), /* @__PURE__ */ p("span", { children: $ })]
177
+ className: o.errorIcon
178
+ }), /* @__PURE__ */ f("span", { children: $ })]
180
179
  })
181
180
  })
182
181
  ]
183
182
  });
184
183
  };
185
- //#endregion
186
- export { h as DatePicker };
184
+ export { m as DatePicker };
@@ -1,4 +1,4 @@
1
- //#region src/components/forms/DatePicker/DatePicker.module.css
1
+ // src/components/forms/DatePicker/DatePicker.module.css
2
2
  var e = "_root_krzbu_13", t = "_fullWidth_krzbu_25", n = "_anchor_krzbu_35", r = "_popup_krzbu_47", i = "_error_krzbu_55", a = "_errorIcon_krzbu_81", o = {
3
3
  root: e,
4
4
  fullWidth: t,
@@ -7,5 +7,4 @@ var e = "_root_krzbu_13", t = "_fullWidth_krzbu_25", n = "_anchor_krzbu_35", r =
7
7
  error: i,
8
8
  errorIcon: a
9
9
  };
10
- //#endregion
11
10
  export { n as anchor, o as default, i as error, a as errorIcon, t as fullWidth, r as popup, e as root };
@@ -1 +1 @@
1
- const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useFormReset.cjs.js"),n=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js"),r=require("../../../utils/cx.cjs.js"),i=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),a=require("../../primitives/Button/Button.cjs.js"),o=require("../../primitives/Icon/icons.cjs.js"),s=require("../Field/FieldContext.cjs.js"),c=require("../../overlays/Popover/Popover.cjs.js"),l=require("../Input/Input.cjs.js"),u=require("./dateUtils.cjs.js"),ee=require("./Calendar.cjs.js"),d=require("./DateRangePicker.module.css.cjs.js");let f=require("react"),p=require("react/jsx-runtime");var m={start:null,end:null};function te(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.rangeBetween(n(r),n(i)):r?e.rangeOnOrAfter(n(r)):e.rangeOnOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text);case`order`:return t.part===`end`?e.endBeforeStart:e.startAfterEnd}}var h=({value:h,defaultValue:g,onValueChange:ne,min:_,max:v,isDateDisabled:y,locale:re,weekStartsOn:ie,placement:ae=`bottom-start`,size:oe,startName:b,endName:x,open:se,defaultOpen:ce=!1,onOpenChange:le,onInvalidInput:ue,invalidMessage:S,startLabel:de,endLabel:fe,chooseRangeLabel:pe,changeRangeLabel:me,dialogLabel:he,formatDescription:ge,today:_e,numberOfMonths:ve=2,invalid:ye,required:be,disabled:xe,readOnly:Se,fullWidth:Ce=!0,"aria-label":C,"aria-describedby":we,className:Te,style:Ee,id:De})=>{let{messages:w,locale:Oe}=n.useLocale(),T=re??Oe,ke=de??w.datePicker.startDate,Ae=fe??w.datePicker.endDate,je=pe??w.datePicker.chooseDates,Me=me??w.datePicker.changeDates,Ne=he??w.datePicker.datesDialog,Pe=ge??w.datePicker.format,E=s.useFieldContext(),D=s.useFieldControl({id:De,disabled:xe,readOnly:Se,size:oe,invalid:ye,required:be}),O=D.size??`md`,k=!D.disabled&&!D.readOnly,A=(0,f.useMemo)(()=>u.getDateFormatInfo(T),[T]),{format:j}=A,M=u.localizeDatePattern(A.pattern,w.datePicker.pattern),[Fe,N]=e.useControllableState({value:h,defaultValue:g??null,onChange:ne}),P=Fe??m,F=e=>e?j(e):``,[I,L]=(0,f.useState)(()=>F(P.start)),[R,z]=(0,f.useState)(()=>F(P.end)),[B,V]=(0,f.useState)(null),H=(0,f.useRef)(P);(0,f.useEffect)(()=>{let e=H.current;(e.start!==P.start||e.end!==P.end)&&(H.current=P,L(F(P.start)),z(F(P.end)),V(null))},[P.start,P.end,j]);let U=e=>{H.current=e,L(F(e.start)),z(F(e.end)),N(e)},Ie=e=>_&&e<_||v&&e>v?`out-of-range`:y?.(e,u.parseISODate(e))?`unavailable`:null,W=e=>{let t=H.current,n=(e===`start`?I:R).trim();if(!n){V(t=>t?.part===e?null:t),t[e]!==null&&U({...t,[e]:null});return}let r=u.parseDateText(n,T),i=r?Ie(r):`unparseable`;if(!i&&r){let n=e===`start`?t.end:t.start;n&&(e===`start`?r>n:r<n)&&(i=`order`)}if(i){let a={part:e,text:n,reason:i,date:r??void 0,pattern:M};V(a);let o={...t,[e]:null};H.current=o,N(o),ue?.(a);return}V(null);let a={...t,[e]:r};H.current=a,e===`start`?L(j(r)):z(j(r)),t[e]!==r&&N(a)},G=(0,f.useRef)(null);t.useFormReset(()=>G.current,()=>{let e=g??m;H.current=e,L(F(e.start)),z(F(e.end)),V(null),N(g??null)},h===void 0);let[Le,K]=e.useControllableState({value:se,defaultValue:ce,onChange:le}),q=Le&&k,[Re,J]=(0,f.useState)(P);(0,f.useEffect)(()=>{q&&J(H.current)},[q]);let Y=(0,f.useRef)(null),ze=()=>Y.current?.querySelector(`[data-active]`)??null,Be=e=>{J(e),e.start&&e.end&&(V(null),U(e),K(!1))},Ve=e=>t=>{k&&(t.key===`Enter`?W(e):t.key===`ArrowDown`&&t.altKey&&(t.preventDefault(),W(e),K(!0)))},X=(0,f.useId)(),He=`${X}-name`,Ue=`${X}-start`,Z=`${X}-end`,We=`${X}-format`,Ge=`${X}-error`,Ke=E?.labelId??(C?He:void 0),qe=e=>[Ke,e].filter(Boolean).join(` `),Q=B&&S!==null?typeof S==`function`?S(B):S??te(w.datePicker.invalid,B,j,_,v):null,Je=[we,We,Q==null?void 0:Ge].filter(Boolean).join(` `)||void 0,Ye=P.start&&P.end?`${u.formatFullDate(P.start,T)} to ${u.formatFullDate(P.end,T)}`:null,Xe=Ye?Me(Ye):je,$={type:`text`,autoComplete:`off`,size:O,disabled:D.disabled,readOnly:D.readOnly,required:D.required,fullWidth:!0,placeholder:M,"aria-describedby":Je,invalid:D.invalid||void 0};return(0,p.jsxs)(`div`,{className:r.cx(d.default.root,Ce&&d.default.fullWidth,Te),style:Ee,"data-size":O,children:[(0,p.jsxs)(c.Popover,{open:q,onOpenChange:K,placement:ae,modal:!0,closeOnAnchorFocus:!0,children:[(0,p.jsx)(c.Popover.Anchor,{asChild:!1,className:d.default.anchor,children:(0,p.jsxs)(`div`,{role:`group`,"aria-labelledby":Ke,className:d.default.fields,children:[(0,p.jsxs)(`div`,{className:d.default.part,children:[(0,p.jsx)(`span`,{id:Ue,className:d.default.partLabel,children:ke}),(0,p.jsx)(l.Input,{...$,ref:G,id:D.id,"aria-labelledby":qe(Ue),invalid:D.invalid||B?.part===`start`||void 0,value:I,onChange:e=>L(e.target.value),onBlur:()=>k&&W(`start`),onKeyDown:Ve(`start`)})]}),(0,p.jsx)(`span`,{className:d.default.separator,"aria-hidden":`true`,children:`–`}),(0,p.jsxs)(`div`,{className:d.default.part,children:[(0,p.jsx)(`span`,{id:Z,className:d.default.partLabel,children:Ae}),(0,p.jsx)(l.Input,{...$,id:`${X}-end-input`,"aria-labelledby":qe(Z),invalid:D.invalid||B?.part===`end`||void 0,value:R,onChange:e=>z(e.target.value),onBlur:()=>k&&W(`end`),onKeyDown:Ve(`end`),endElement:!D.readOnly&&(0,p.jsx)(c.Popover.Trigger,{asChild:!0,children:(0,p.jsx)(a.IconButton,{size:O===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Xe,disabled:D.disabled,children:(0,p.jsx)(o.CalendarIcon,{})})})})]})]})}),(0,p.jsx)(c.Popover.Content,{"aria-label":Ne,size:`sm`,maxWidth:`none`,initialFocus:ze,className:d.default.popup,children:(0,p.jsx)(ee.Calendar,{ref:Y,mode:`range`,value:Re,onValueChange:Be,min:_,max:v,isDateDisabled:y,locale:T,weekStartsOn:ie,size:O,today:_e,numberOfMonths:ve})})]}),C&&!E?.labelId&&(0,p.jsx)(i.VisuallyHidden,{id:He,children:C}),(0,p.jsx)(i.VisuallyHidden,{id:We,children:Pe(M)}),b!==void 0&&(0,p.jsx)(`input`,{type:`hidden`,name:b,value:P.start??``,disabled:D.disabled}),x!==void 0&&(0,p.jsx)(`input`,{type:`hidden`,name:x,value:P.end??``,disabled:D.disabled}),(0,p.jsx)(`div`,{"aria-live":`polite`,children:Q!=null&&(0,p.jsxs)(`p`,{id:Ge,className:d.default.error,children:[(0,p.jsx)(o.ErrorIcon,{size:`sm`,className:d.default.errorIcon}),(0,p.jsx)(`span`,{children:Q})]})})]})};exports.DateRangePicker=h;
1
+ "use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useFormReset.cjs.js"),n=require("../../../utils/cx.cjs.js"),r=require("../../overlays/Popover/Popover.cjs.js"),i=require("../../primitives/Button/Button.cjs.js"),a=require("../../primitives/Icon/icons.cjs.js"),o=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),s=require("../Field/FieldContext.cjs.js"),c=require("../Input/Input.cjs.js"),ee=require("./Calendar.cjs.js"),l=require("./dateUtils.cjs.js"),u=require("./DateRangePicker.module.css.cjs.js"),te=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let d=require("react"),f=require("react/jsx-runtime");var p={start:null,end:null};function ne(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.rangeBetween(n(r),n(i)):r?e.rangeOnOrAfter(n(r)):e.rangeOnOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text);case`order`:return t.part===`end`?e.endBeforeStart:e.startAfterEnd}}var m=({value:m,defaultValue:h,onValueChange:re,min:g,max:_,isDateDisabled:v,locale:ie,weekStartsOn:ae,placement:oe=`bottom-start`,size:se,startName:y,endName:b,open:ce,defaultOpen:le=!1,onOpenChange:ue,onInvalidInput:de,invalidMessage:x,startLabel:fe,endLabel:pe,chooseRangeLabel:me,changeRangeLabel:he,dialogLabel:ge,formatDescription:_e,today:ve,numberOfMonths:ye=2,invalid:be,required:xe,disabled:Se,readOnly:Ce,fullWidth:we=!0,"aria-label":S,"aria-describedby":Te,className:Ee,style:De,id:Oe})=>{let{messages:C,locale:ke}=te.useLocale(),w=ie??ke,Ae=fe??C.datePicker.startDate,je=pe??C.datePicker.endDate,Me=me??C.datePicker.chooseDates,Ne=he??C.datePicker.changeDates,Pe=ge??C.datePicker.datesDialog,Fe=_e??C.datePicker.format,T=s.useFieldContext(),E=s.useFieldControl({id:Oe,disabled:Se,readOnly:Ce,size:se,invalid:be,required:xe}),D=E.size??`md`,O=!E.disabled&&!E.readOnly,k=(0,d.useMemo)(()=>l.getDateFormatInfo(w),[w]),{format:A}=k,j=l.localizeDatePattern(k.pattern,C.datePicker.pattern),[Ie,M]=e.useControllableState({value:m,defaultValue:h??null,onChange:re}),N=Ie??p,P=e=>e?A(e):``,[F,I]=(0,d.useState)(()=>P(N.start)),[L,R]=(0,d.useState)(()=>P(N.end)),[z,B]=(0,d.useState)(null),V=(0,d.useRef)(N);(0,d.useEffect)(()=>{let e=V.current;(e.start!==N.start||e.end!==N.end)&&(V.current=N,I(P(N.start)),R(P(N.end)),B(null))},[N.start,N.end,A]);let H=e=>{V.current=e,I(P(e.start)),R(P(e.end)),M(e)},Le=e=>g&&e<g||_&&e>_?`out-of-range`:v?.(e,l.parseISODate(e))?`unavailable`:null,U=e=>{let t=V.current,n=(e===`start`?F:L).trim();if(!n){B(t=>t?.part===e?null:t),t[e]!==null&&H({...t,[e]:null});return}let r=l.parseDateText(n,w),i=r?Le(r):`unparseable`;if(!i&&r){let n=e===`start`?t.end:t.start;n&&(e===`start`?r>n:r<n)&&(i=`order`)}if(i){let a={part:e,text:n,reason:i,date:r??void 0,pattern:j};B(a);let o={...t,[e]:null};V.current=o,M(o),de?.(a);return}B(null);let a={...t,[e]:r};V.current=a,e===`start`?I(A(r)):R(A(r)),t[e]!==r&&M(a)},W=(0,d.useRef)(null);t.useFormReset(()=>W.current,()=>{let e=h??p;V.current=e,I(P(e.start)),R(P(e.end)),B(null),M(h??null)},m===void 0);let[Re,G]=e.useControllableState({value:ce,defaultValue:le,onChange:ue}),K=Re&&O,[ze,q]=(0,d.useState)(N);(0,d.useEffect)(()=>{K&&q(V.current)},[K]);let J=(0,d.useRef)(null),Be=()=>J.current?.querySelector(`[data-active]`)??null,Ve=e=>{q(e),e.start&&e.end&&(B(null),H(e),G(!1))},Y=e=>t=>{O&&(t.key===`Enter`?U(e):t.key===`ArrowDown`&&t.altKey&&(t.preventDefault(),U(e),G(!0)))},X=(0,d.useId)(),He=`${X}-name`,Ue=`${X}-start`,Z=`${X}-end`,We=`${X}-format`,Ge=`${X}-error`,Ke=T?.labelId??(S?He:void 0),qe=e=>[Ke,e].filter(Boolean).join(` `),Q=z&&x!==null?typeof x==`function`?x(z):x??ne(C.datePicker.invalid,z,A,g,_):null,Je=[Te,We,Q==null?void 0:Ge].filter(Boolean).join(` `)||void 0,Ye=N.start&&N.end?`${l.formatFullDate(N.start,w)} to ${l.formatFullDate(N.end,w)}`:null,Xe=Ye?Ne(Ye):Me,$={type:`text`,autoComplete:`off`,size:D,disabled:E.disabled,readOnly:E.readOnly,required:E.required,fullWidth:!0,placeholder:j,"aria-describedby":Je,invalid:E.invalid||void 0};return(0,f.jsxs)(`div`,{className:n.cx(u.default.root,we&&u.default.fullWidth,Ee),style:De,"data-size":D,children:[(0,f.jsxs)(r.Popover,{open:K,onOpenChange:G,placement:oe,modal:!0,closeOnAnchorFocus:!0,children:[(0,f.jsx)(r.Popover.Anchor,{asChild:!1,className:u.default.anchor,children:(0,f.jsxs)(`div`,{role:`group`,"aria-labelledby":Ke,className:u.default.fields,children:[(0,f.jsxs)(`div`,{className:u.default.part,children:[(0,f.jsx)(`span`,{id:Ue,className:u.default.partLabel,children:Ae}),(0,f.jsx)(c.Input,{...$,ref:W,id:E.id,"aria-labelledby":qe(Ue),invalid:E.invalid||z?.part===`start`||void 0,value:F,onChange:e=>I(e.target.value),onBlur:()=>O&&U(`start`),onKeyDown:Y(`start`)})]}),(0,f.jsx)(`span`,{className:u.default.separator,"aria-hidden":`true`,children:`–`}),(0,f.jsxs)(`div`,{className:u.default.part,children:[(0,f.jsx)(`span`,{id:Z,className:u.default.partLabel,children:je}),(0,f.jsx)(c.Input,{...$,id:`${X}-end-input`,"aria-labelledby":qe(Z),invalid:E.invalid||z?.part===`end`||void 0,value:L,onChange:e=>R(e.target.value),onBlur:()=>O&&U(`end`),onKeyDown:Y(`end`),endElement:!E.readOnly&&(0,f.jsx)(r.Popover.Trigger,{asChild:!0,children:(0,f.jsx)(i.IconButton,{size:D===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Xe,disabled:E.disabled,children:(0,f.jsx)(a.CalendarIcon,{})})})})]})]})}),(0,f.jsx)(r.Popover.Content,{"aria-label":Pe,size:`sm`,maxWidth:`none`,initialFocus:Be,className:u.default.popup,children:(0,f.jsx)(ee.Calendar,{ref:J,mode:`range`,value:ze,onValueChange:Ve,min:g,max:_,isDateDisabled:v,locale:w,weekStartsOn:ae,size:D,today:ve,numberOfMonths:ye})})]}),S&&!T?.labelId&&(0,f.jsx)(o.VisuallyHidden,{id:He,children:S}),(0,f.jsx)(o.VisuallyHidden,{id:We,children:Fe(j)}),y!==void 0&&(0,f.jsx)(`input`,{type:`hidden`,name:y,value:N.start??``,disabled:E.disabled}),b!==void 0&&(0,f.jsx)(`input`,{type:`hidden`,name:b,value:N.end??``,disabled:E.disabled}),(0,f.jsx)(`div`,{"aria-live":`polite`,children:Q!=null&&(0,f.jsxs)(`p`,{id:Ge,className:u.default.error,children:[(0,f.jsx)(a.ErrorIcon,{size:`sm`,className:u.default.errorIcon}),(0,f.jsx)(`span`,{children:Q})]})})]})};exports.DateRangePicker=m;