@vjdesigns/vjdesigns-ui 2.3.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 (454) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +45 -1
  3. package/dist/ai/llms-full.txt +199 -107
  4. package/dist/ai/registry.json +217 -77
  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.d.ts +7 -2
  13. package/dist/components/data-display/Badge/Badge.mjs +4 -3
  14. package/dist/components/data-display/Badge/Badge.module.css.cjs.js +1 -1
  15. package/dist/components/data-display/Badge/Badge.module.css.mjs +34 -34
  16. package/dist/components/data-display/Card/Card.cjs.js +1 -1
  17. package/dist/components/data-display/Card/Card.mjs +2 -2
  18. package/dist/components/data-display/Card/Card.module.css.mjs +1 -2
  19. package/dist/components/data-display/Carousel/Carousel.cjs.js +1 -1
  20. package/dist/components/data-display/Carousel/Carousel.mjs +42 -42
  21. package/dist/components/data-display/Carousel/Carousel.module.css.mjs +1 -2
  22. package/dist/components/data-display/Chat/Chat.cjs.js +1 -1
  23. package/dist/components/data-display/Chat/Chat.mjs +114 -118
  24. package/dist/components/data-display/Chat/Chat.module.css.mjs +1 -2
  25. package/dist/components/data-display/Chat/streams.mjs +1 -2
  26. package/dist/components/data-display/Chip/Chip.cjs.js +1 -1
  27. package/dist/components/data-display/Chip/Chip.mjs +50 -54
  28. package/dist/components/data-display/Chip/Chip.module.css.mjs +1 -2
  29. package/dist/components/data-display/CodeBlock/CodeBlock.cjs.js +4 -4
  30. package/dist/components/data-display/CodeBlock/CodeBlock.mjs +113 -113
  31. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.mjs +1 -2
  32. package/dist/components/data-display/CodeBlock/tokenize.mjs +1 -2
  33. package/dist/components/data-display/DataGrid/DataGrid.cjs.js +1 -1
  34. package/dist/components/data-display/DataGrid/DataGrid.d.ts +14 -3
  35. package/dist/components/data-display/DataGrid/DataGrid.mjs +352 -267
  36. package/dist/components/data-display/DataGrid/DataGrid.module.css.cjs.js +1 -1
  37. package/dist/components/data-display/DataGrid/DataGrid.module.css.mjs +6 -5
  38. package/dist/components/data-display/DataGrid/dataGridUtils.cjs.js +1 -1
  39. package/dist/components/data-display/DataGrid/dataGridUtils.d.ts +18 -0
  40. package/dist/components/data-display/DataGrid/dataGridUtils.mjs +100 -32
  41. package/dist/components/data-display/EmptyState/EmptyState.cjs.js +1 -1
  42. package/dist/components/data-display/EmptyState/EmptyState.mjs +53 -53
  43. package/dist/components/data-display/EmptyState/EmptyState.module.css.mjs +1 -2
  44. package/dist/components/data-display/Image/Image.cjs.js +1 -1
  45. package/dist/components/data-display/Image/Image.mjs +6 -6
  46. package/dist/components/data-display/Image/Image.module.css.mjs +1 -2
  47. package/dist/components/data-display/List/List.cjs.js +1 -1
  48. package/dist/components/data-display/List/List.mjs +68 -68
  49. package/dist/components/data-display/List/List.module.css.mjs +1 -2
  50. package/dist/components/data-display/Stat/Stat.cjs.js +1 -1
  51. package/dist/components/data-display/Stat/Stat.mjs +112 -112
  52. package/dist/components/data-display/Stat/Stat.module.css.mjs +1 -2
  53. package/dist/components/data-display/Table/Table.cjs.js +1 -1
  54. package/dist/components/data-display/Table/Table.mjs +187 -183
  55. package/dist/components/data-display/Table/Table.module.css.mjs +1 -2
  56. package/dist/components/data-display/Table/useTable.cjs.js +1 -1
  57. package/dist/components/data-display/Table/useTable.mjs +2 -2
  58. package/dist/components/data-display/Timeline/Timeline.cjs.js +1 -1
  59. package/dist/components/data-display/Timeline/Timeline.mjs +64 -64
  60. package/dist/components/data-display/Timeline/Timeline.module.css.mjs +1 -2
  61. package/dist/components/data-display/TreeView/TreeView.cjs.js +1 -1
  62. package/dist/components/data-display/TreeView/TreeView.mjs +107 -119
  63. package/dist/components/data-display/TreeView/TreeView.module.css.mjs +1 -2
  64. package/dist/components/data-display/TreeView/treeUtils.mjs +1 -2
  65. package/dist/components/data-display/VirtualList/VirtualList.cjs.js +1 -1
  66. package/dist/components/data-display/VirtualList/VirtualList.mjs +2 -2
  67. package/dist/components/data-display/VirtualList/VirtualList.module.css.mjs +1 -2
  68. package/dist/components/feedback/Alert/Alert.cjs.js +1 -1
  69. package/dist/components/feedback/Alert/Alert.mjs +56 -56
  70. package/dist/components/feedback/Alert/Alert.module.css.mjs +1 -2
  71. package/dist/components/feedback/Banner/Banner.cjs.js +1 -1
  72. package/dist/components/feedback/Banner/Banner.mjs +48 -48
  73. package/dist/components/feedback/Banner/Banner.module.css.mjs +1 -2
  74. package/dist/components/feedback/ErrorSummary/ErrorSummary.cjs.js +1 -1
  75. package/dist/components/feedback/ErrorSummary/ErrorSummary.mjs +10 -10
  76. package/dist/components/feedback/ErrorSummary/ErrorSummary.module.css.mjs +1 -2
  77. package/dist/components/feedback/Progress/Progress.cjs.js +1 -1
  78. package/dist/components/feedback/Progress/Progress.mjs +2 -2
  79. package/dist/components/feedback/Progress/Progress.module.css.mjs +1 -2
  80. package/dist/components/feedback/Skeleton/Skeleton.cjs.js +1 -1
  81. package/dist/components/feedback/Skeleton/Skeleton.mjs +73 -73
  82. package/dist/components/feedback/Skeleton/Skeleton.module.css.mjs +1 -2
  83. package/dist/components/feedback/Spinner/Spinner.cjs.js +1 -1
  84. package/dist/components/feedback/Spinner/Spinner.mjs +29 -29
  85. package/dist/components/feedback/Spinner/Spinner.module.css.mjs +1 -2
  86. package/dist/components/feedback/Toast/Toast.cjs.js +1 -1
  87. package/dist/components/feedback/Toast/Toast.mjs +42 -42
  88. package/dist/components/feedback/Toast/Toast.module.css.mjs +1 -2
  89. package/dist/components/feedback/Toast/ToastItem.cjs.js +1 -1
  90. package/dist/components/feedback/Toast/ToastItem.mjs +10 -10
  91. package/dist/components/feedback/Toast/ToastProvider.cjs.js +1 -1
  92. package/dist/components/feedback/Toast/ToastProvider.mjs +11 -11
  93. package/dist/components/feedback/Toast/ToastViewport.cjs.js +1 -1
  94. package/dist/components/feedback/Toast/ToastViewport.mjs +30 -30
  95. package/dist/components/feedback/Toast/toastStore.mjs +1 -2
  96. package/dist/components/feedback/Toast/toastTiming.cjs.js +1 -1
  97. package/dist/components/feedback/Toast/toastTiming.mjs +2 -2
  98. package/dist/components/feedback/Toast/useToast.cjs.js +1 -1
  99. package/dist/components/feedback/Toast/useToast.mjs +2 -2
  100. package/dist/components/feedback/Toast/useToastAnnouncer.cjs.js +1 -1
  101. package/dist/components/feedback/Toast/useToastAnnouncer.mjs +2 -2
  102. package/dist/components/forms/CheckBox/CheckBox.cjs.js +1 -1
  103. package/dist/components/forms/CheckBox/CheckBox.mjs +2 -2
  104. package/dist/components/forms/CheckBox/CheckBox.module.css.mjs +1 -2
  105. package/dist/components/forms/ColorPicker/ColorInput.cjs.js +1 -1
  106. package/dist/components/forms/ColorPicker/ColorInput.mjs +43 -43
  107. package/dist/components/forms/ColorPicker/ColorPicker.cjs.js +1 -1
  108. package/dist/components/forms/ColorPicker/ColorPicker.mjs +153 -153
  109. package/dist/components/forms/ColorPicker/ColorPicker.module.css.mjs +1 -2
  110. package/dist/components/forms/ColorPicker/colorUtils.mjs +1 -2
  111. package/dist/components/forms/Combobox/Combobox.cjs.js +1 -1
  112. package/dist/components/forms/Combobox/Combobox.mjs +200 -213
  113. package/dist/components/forms/Combobox/Combobox.module.css.mjs +1 -2
  114. package/dist/components/forms/Combobox/ComboboxPopup.cjs.js +1 -1
  115. package/dist/components/forms/Combobox/ComboboxPopup.mjs +164 -121
  116. package/dist/components/forms/Combobox/comboboxUtils.cjs.js +1 -1
  117. package/dist/components/forms/Combobox/comboboxUtils.d.ts +4 -1
  118. package/dist/components/forms/Combobox/comboboxUtils.mjs +21 -20
  119. package/dist/components/forms/DatePicker/Calendar.cjs.js +1 -1
  120. package/dist/components/forms/DatePicker/Calendar.mjs +60 -66
  121. package/dist/components/forms/DatePicker/Calendar.module.css.mjs +1 -2
  122. package/dist/components/forms/DatePicker/DatePicker.cjs.js +1 -1
  123. package/dist/components/forms/DatePicker/DatePicker.mjs +72 -74
  124. package/dist/components/forms/DatePicker/DatePicker.module.css.mjs +1 -2
  125. package/dist/components/forms/DatePicker/DateRangePicker.cjs.js +1 -1
  126. package/dist/components/forms/DatePicker/DateRangePicker.mjs +117 -117
  127. package/dist/components/forms/DatePicker/DateRangePicker.module.css.mjs +1 -2
  128. package/dist/components/forms/DatePicker/dateUtils.mjs +1 -2
  129. package/dist/components/forms/DateTimePicker/DateTimePicker.cjs.js +1 -1
  130. package/dist/components/forms/DateTimePicker/DateTimePicker.mjs +19 -19
  131. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.mjs +1 -2
  132. package/dist/components/forms/Field/Field.cjs.js +1 -1
  133. package/dist/components/forms/Field/Field.mjs +14 -14
  134. package/dist/components/forms/Field/Field.module.css.mjs +1 -2
  135. package/dist/components/forms/Field/FieldContext.cjs.js +1 -1
  136. package/dist/components/forms/Field/FieldContext.mjs +2 -2
  137. package/dist/components/forms/FileUpload/FileUpload.cjs.js +1 -1
  138. package/dist/components/forms/FileUpload/FileUpload.mjs +250 -255
  139. package/dist/components/forms/FileUpload/FileUpload.module.css.mjs +1 -2
  140. package/dist/components/forms/Input/Input.cjs.js +1 -1
  141. package/dist/components/forms/Input/Input.mjs +35 -35
  142. package/dist/components/forms/Input/Input.module.css.mjs +1 -2
  143. package/dist/components/forms/NumberInput/NumberInput.cjs.js +1 -1
  144. package/dist/components/forms/NumberInput/NumberInput.mjs +137 -142
  145. package/dist/components/forms/NumberInput/NumberInput.module.css.mjs +1 -2
  146. package/dist/components/forms/PasswordInput/PasswordInput.cjs.js +1 -1
  147. package/dist/components/forms/PasswordInput/PasswordInput.mjs +142 -142
  148. package/dist/components/forms/PasswordInput/PasswordInput.module.css.mjs +1 -2
  149. package/dist/components/forms/PinInput/PinInput.cjs.js +1 -1
  150. package/dist/components/forms/PinInput/PinInput.mjs +12 -12
  151. package/dist/components/forms/PinInput/PinInput.module.css.mjs +1 -2
  152. package/dist/components/forms/Radio/Radio.cjs.js +1 -1
  153. package/dist/components/forms/Radio/Radio.mjs +2 -2
  154. package/dist/components/forms/Radio/Radio.module.css.mjs +1 -2
  155. package/dist/components/forms/Rating/Rating.cjs.js +1 -1
  156. package/dist/components/forms/Rating/Rating.mjs +110 -109
  157. package/dist/components/forms/Rating/Rating.module.css.mjs +1 -2
  158. package/dist/components/forms/SearchInput/SearchInput.cjs.js +1 -1
  159. package/dist/components/forms/SearchInput/SearchInput.mjs +118 -126
  160. package/dist/components/forms/SearchInput/SearchInput.module.css.mjs +1 -2
  161. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.js +1 -1
  162. package/dist/components/forms/SegmentedControl/SegmentedControl.mjs +46 -43
  163. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.mjs +1 -2
  164. package/dist/components/forms/Select/Select.cjs.js +1 -1
  165. package/dist/components/forms/Select/Select.mjs +2 -2
  166. package/dist/components/forms/Select/Select.module.css.mjs +1 -2
  167. package/dist/components/forms/Slider/Slider.cjs.js +1 -1
  168. package/dist/components/forms/Slider/Slider.mjs +2 -2
  169. package/dist/components/forms/Slider/Slider.module.css.mjs +1 -2
  170. package/dist/components/forms/Switch/Switch.cjs.js +1 -1
  171. package/dist/components/forms/Switch/Switch.mjs +39 -39
  172. package/dist/components/forms/Switch/Switch.module.css.mjs +1 -2
  173. package/dist/components/forms/TagInput/TagInput.cjs.js +1 -1
  174. package/dist/components/forms/TagInput/TagInput.mjs +197 -203
  175. package/dist/components/forms/TagInput/TagInput.module.css.mjs +1 -2
  176. package/dist/components/forms/Textarea/Textarea.cjs.js +1 -1
  177. package/dist/components/forms/Textarea/Textarea.mjs +59 -59
  178. package/dist/components/forms/Textarea/Textarea.module.css.mjs +1 -2
  179. package/dist/components/forms/TimePicker/TimePicker.cjs.js +1 -1
  180. package/dist/components/forms/TimePicker/TimePicker.mjs +14 -16
  181. package/dist/components/forms/TimePicker/TimePicker.module.css.mjs +1 -2
  182. package/dist/components/forms/TimePicker/timeUtils.cjs.js +1 -1
  183. package/dist/components/forms/TimePicker/timeUtils.d.ts +4 -1
  184. package/dist/components/forms/TimePicker/timeUtils.mjs +43 -38
  185. package/dist/components/forms/ToggleGroup/ToggleGroup.cjs.js +1 -1
  186. package/dist/components/forms/ToggleGroup/ToggleGroup.mjs +10 -10
  187. package/dist/components/forms/ToggleGroup/ToggleGroup.module.css.mjs +1 -2
  188. package/dist/components/layout/Box/Box.mjs +1 -2
  189. package/dist/components/layout/Box/Box.module.css.mjs +1 -2
  190. package/dist/components/layout/Container/Container.mjs +1 -2
  191. package/dist/components/layout/Container/Container.module.css.mjs +1 -2
  192. package/dist/components/layout/Divider/Divider.mjs +1 -2
  193. package/dist/components/layout/Divider/Divider.module.css.mjs +1 -2
  194. package/dist/components/layout/Flex/Flex.cjs.js +1 -1
  195. package/dist/components/layout/Flex/Flex.mjs +12 -13
  196. package/dist/components/layout/Flex/Flex.module.css.mjs +1 -2
  197. package/dist/components/layout/Grid/Grid.cjs.js +1 -1
  198. package/dist/components/layout/Grid/Grid.mjs +20 -21
  199. package/dist/components/layout/Grid/Grid.module.css.mjs +1 -2
  200. package/dist/components/layout/ResizablePanels/ResizablePanels.cjs.js +1 -1
  201. package/dist/components/layout/ResizablePanels/ResizablePanels.mjs +17 -17
  202. package/dist/components/layout/ResizablePanels/ResizablePanels.module.css.mjs +1 -2
  203. package/dist/components/layout/ScrollArea/ScrollArea.cjs.js +1 -1
  204. package/dist/components/layout/ScrollArea/ScrollArea.mjs +2 -2
  205. package/dist/components/layout/ScrollArea/ScrollArea.module.css.mjs +1 -2
  206. package/dist/components/layout/Stack/Stack.cjs.js +1 -1
  207. package/dist/components/layout/Stack/Stack.mjs +8 -9
  208. package/dist/components/layout/Stack/Stack.module.css.mjs +1 -2
  209. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.cjs.js +1 -1
  210. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.mjs +41 -41
  211. package/dist/components/navigation/Breadcrumbs/Breadcrumbs.module.css.mjs +1 -2
  212. package/dist/components/navigation/ContextMenu/ContextMenu.cjs.js +1 -1
  213. package/dist/components/navigation/ContextMenu/ContextMenu.mjs +48 -48
  214. package/dist/components/navigation/ContextMenu/ContextMenu.module.css.mjs +1 -2
  215. package/dist/components/navigation/Link/Link.cjs.js +1 -1
  216. package/dist/components/navigation/Link/Link.mjs +6 -7
  217. package/dist/components/navigation/Link/Link.module.css.mjs +1 -2
  218. package/dist/components/navigation/Menu/Menu.cjs.js +1 -1
  219. package/dist/components/navigation/Menu/Menu.mjs +11 -11
  220. package/dist/components/navigation/Menu/Menu.module.css.mjs +1 -2
  221. package/dist/components/navigation/Menu/MenuContent.cjs.js +1 -1
  222. package/dist/components/navigation/Menu/MenuContent.mjs +46 -46
  223. package/dist/components/navigation/Menu/MenuContext.cjs.js +1 -1
  224. package/dist/components/navigation/Menu/MenuContext.mjs +2 -2
  225. package/dist/components/navigation/Menu/MenuItem.cjs.js +1 -1
  226. package/dist/components/navigation/Menu/MenuItem.mjs +35 -39
  227. package/dist/components/navigation/Menu/MenuSub.cjs.js +1 -1
  228. package/dist/components/navigation/Menu/MenuSub.mjs +16 -20
  229. package/dist/components/navigation/Menu/useMenuRoot.cjs.js +1 -1
  230. package/dist/components/navigation/Menu/useMenuRoot.mjs +2 -2
  231. package/dist/components/navigation/Navbar/Navbar.cjs.js +1 -1
  232. package/dist/components/navigation/Navbar/Navbar.d.ts +65 -2
  233. package/dist/components/navigation/Navbar/Navbar.mjs +315 -175
  234. package/dist/components/navigation/Navbar/Navbar.module.css.cjs.js +1 -1
  235. package/dist/components/navigation/Navbar/Navbar.module.css.mjs +21 -13
  236. package/dist/components/navigation/Pagination/Pagination.cjs.js +1 -1
  237. package/dist/components/navigation/Pagination/Pagination.mjs +31 -35
  238. package/dist/components/navigation/Pagination/Pagination.module.css.mjs +1 -2
  239. package/dist/components/navigation/Sidebar/Sidebar.cjs.js +1 -1
  240. package/dist/components/navigation/Sidebar/Sidebar.mjs +52 -52
  241. package/dist/components/navigation/Sidebar/Sidebar.module.css.mjs +1 -2
  242. package/dist/components/navigation/Sidebar/SidebarContext.cjs.js +1 -1
  243. package/dist/components/navigation/Sidebar/SidebarContext.mjs +2 -2
  244. package/dist/components/navigation/Sidebar/SidebarParts.cjs.js +1 -1
  245. package/dist/components/navigation/Sidebar/SidebarParts.mjs +76 -80
  246. package/dist/components/navigation/SkipLink/SkipLink.cjs.js +1 -1
  247. package/dist/components/navigation/SkipLink/SkipLink.mjs +12 -12
  248. package/dist/components/navigation/SkipLink/SkipLink.module.css.mjs +1 -2
  249. package/dist/components/navigation/Stepper/Stepper.cjs.js +1 -1
  250. package/dist/components/navigation/Stepper/Stepper.mjs +46 -46
  251. package/dist/components/navigation/Stepper/Stepper.module.css.mjs +1 -2
  252. package/dist/components/navigation/Tabs/Tabs.cjs.js +1 -1
  253. package/dist/components/navigation/Tabs/Tabs.mjs +2 -2
  254. package/dist/components/navigation/Tabs/Tabs.module.css.mjs +1 -2
  255. package/dist/components/overlays/CommandPalette/CommandPalette.cjs.js +1 -1
  256. package/dist/components/overlays/CommandPalette/CommandPalette.mjs +206 -206
  257. package/dist/components/overlays/CommandPalette/CommandPalette.module.css.mjs +1 -2
  258. package/dist/components/overlays/CommandPalette/CommandPaletteContext.cjs.js +1 -1
  259. package/dist/components/overlays/CommandPalette/CommandPaletteContext.mjs +2 -2
  260. package/dist/components/overlays/CommandPalette/CommandPaletteParts.cjs.js +1 -1
  261. package/dist/components/overlays/CommandPalette/CommandPaletteParts.mjs +104 -104
  262. package/dist/components/overlays/CommandPalette/commandPaletteUtils.cjs.js +1 -1
  263. package/dist/components/overlays/CommandPalette/commandPaletteUtils.mjs +62 -60
  264. package/dist/components/overlays/Drawer/Drawer.cjs.js +1 -1
  265. package/dist/components/overlays/Drawer/Drawer.mjs +31 -31
  266. package/dist/components/overlays/Drawer/Drawer.module.css.mjs +1 -2
  267. package/dist/components/overlays/Drawer/DrawerContent.cjs.js +1 -1
  268. package/dist/components/overlays/Drawer/DrawerContent.mjs +99 -99
  269. package/dist/components/overlays/Drawer/DrawerContext.cjs.js +1 -1
  270. package/dist/components/overlays/Drawer/DrawerContext.mjs +2 -2
  271. package/dist/components/overlays/Drawer/DrawerParts.cjs.js +1 -1
  272. package/dist/components/overlays/Drawer/DrawerParts.mjs +18 -18
  273. package/dist/components/overlays/Drawer/internal.mjs +1 -2
  274. package/dist/components/overlays/Drawer/useDragToClose.cjs.js +1 -1
  275. package/dist/components/overlays/Drawer/useDragToClose.mjs +2 -2
  276. package/dist/components/overlays/HoverCard/HoverCard.cjs.js +1 -1
  277. package/dist/components/overlays/HoverCard/HoverCard.mjs +31 -31
  278. package/dist/components/overlays/HoverCard/HoverCard.module.css.mjs +1 -2
  279. package/dist/components/overlays/Modal/ConfirmModal.cjs.js +1 -1
  280. package/dist/components/overlays/Modal/ConfirmModal.mjs +21 -23
  281. package/dist/components/overlays/Modal/Modal.cjs.js +1 -1
  282. package/dist/components/overlays/Modal/Modal.mjs +47 -47
  283. package/dist/components/overlays/Modal/Modal.module.css.mjs +1 -2
  284. package/dist/components/overlays/Modal/ModalContent.cjs.js +1 -1
  285. package/dist/components/overlays/Modal/ModalContent.mjs +24 -24
  286. package/dist/components/overlays/Modal/ModalContext.cjs.js +1 -1
  287. package/dist/components/overlays/Modal/ModalContext.mjs +2 -2
  288. package/dist/components/overlays/Modal/useScrollRegion.cjs.js +1 -1
  289. package/dist/components/overlays/Modal/useScrollRegion.mjs +2 -2
  290. package/dist/components/overlays/Popover/Popover.cjs.js +1 -1
  291. package/dist/components/overlays/Popover/Popover.mjs +40 -40
  292. package/dist/components/overlays/Popover/Popover.module.css.mjs +1 -2
  293. package/dist/components/overlays/Popover/PopoverContent.cjs.js +1 -1
  294. package/dist/components/overlays/Popover/PopoverContent.mjs +39 -39
  295. package/dist/components/overlays/Popover/PopoverContext.cjs.js +1 -1
  296. package/dist/components/overlays/Popover/PopoverContext.mjs +2 -2
  297. package/dist/components/overlays/Tooltip/Tooltip.cjs.js +1 -1
  298. package/dist/components/overlays/Tooltip/Tooltip.mjs +100 -95
  299. package/dist/components/overlays/Tooltip/Tooltip.module.css.mjs +1 -2
  300. package/dist/components/primitives/Button/Button.cjs.js +1 -1
  301. package/dist/components/primitives/Button/Button.mjs +59 -63
  302. package/dist/components/primitives/Button/Button.module.css.mjs +1 -2
  303. package/dist/components/primitives/Icon/Icon.cjs.js +1 -1
  304. package/dist/components/primitives/Icon/Icon.mjs +5 -6
  305. package/dist/components/primitives/Icon/Icon.module.css.mjs +1 -2
  306. package/dist/components/primitives/Icon/IconSvg.mjs +1 -2
  307. package/dist/components/primitives/Icon/icons.mjs +1 -2
  308. package/dist/components/primitives/Kbd/Kbd.cjs.js +1 -1
  309. package/dist/components/primitives/Kbd/Kbd.mjs +30 -30
  310. package/dist/components/primitives/Kbd/Kbd.module.css.mjs +1 -2
  311. package/dist/components/primitives/Typography/Typography.mjs +1 -2
  312. package/dist/components/primitives/Typography/Typography.module.css.mjs +1 -2
  313. package/dist/components/utilities/LocaleProvider/LocaleProvider.cjs.js +1 -1
  314. package/dist/components/utilities/LocaleProvider/LocaleProvider.mjs +11 -11
  315. package/dist/components/utilities/LocaleProvider/LocaleProvider.module.css.mjs +1 -2
  316. package/dist/components/utilities/Portal/Portal.cjs.js +1 -1
  317. package/dist/components/utilities/Portal/Portal.mjs +2 -2
  318. package/dist/components/utilities/Theme/Theme.cjs.js +1 -1
  319. package/dist/components/utilities/Theme/Theme.mjs +13 -13
  320. package/dist/components/utilities/Theme/Theme.module.css.mjs +1 -2
  321. package/dist/components/utilities/VisuallyHidden/VisuallyHidden.mjs +1 -2
  322. package/dist/components/utilities/VisuallyHidden/VisuallyHidden.module.css.mjs +1 -2
  323. package/dist/hooks/elementSource.cjs.js +1 -1
  324. package/dist/hooks/elementSource.mjs +4 -3
  325. package/dist/hooks/useClipboard.cjs.js +1 -1
  326. package/dist/hooks/useClipboard.mjs +2 -2
  327. package/dist/hooks/useControllableState.cjs.js +1 -1
  328. package/dist/hooks/useControllableState.mjs +2 -2
  329. package/dist/hooks/useDisclosure.cjs.js +1 -1
  330. package/dist/hooks/useDisclosure.mjs +2 -2
  331. package/dist/hooks/useDismiss.cjs.js +1 -1
  332. package/dist/hooks/useDismiss.mjs +2 -2
  333. package/dist/hooks/useElementObservers.cjs.js +1 -1
  334. package/dist/hooks/useElementObservers.mjs +2 -2
  335. package/dist/hooks/useEnvironment.cjs.js +1 -1
  336. package/dist/hooks/useEnvironment.mjs +2 -2
  337. package/dist/hooks/useFloatingPosition.cjs.js +1 -1
  338. package/dist/hooks/useFloatingPosition.mjs +2 -2
  339. package/dist/hooks/useFocusTrap.cjs.js +1 -1
  340. package/dist/hooks/useFocusTrap.mjs +4 -15
  341. package/dist/hooks/useFormReset.cjs.js +1 -1
  342. package/dist/hooks/useFormReset.mjs +2 -2
  343. package/dist/hooks/useFormValidation.cjs.js +1 -1
  344. package/dist/hooks/useFormValidation.mjs +2 -2
  345. package/dist/hooks/useHotkeys.cjs.js +1 -1
  346. package/dist/hooks/useHotkeys.mjs +2 -2
  347. package/dist/hooks/useInertOutside.cjs.js +1 -1
  348. package/dist/hooks/useInertOutside.mjs +5 -9
  349. package/dist/hooks/useMediaQuery.cjs.js +1 -1
  350. package/dist/hooks/useMediaQuery.mjs +2 -2
  351. package/dist/hooks/useMergedRef.cjs.js +1 -1
  352. package/dist/hooks/useMergedRef.mjs +2 -2
  353. package/dist/hooks/useOverlayLayer.cjs.js +1 -1
  354. package/dist/hooks/useOverlayLayer.mjs +3 -3
  355. package/dist/hooks/useResponsiveValue.cjs.js +1 -1
  356. package/dist/hooks/useResponsiveValue.mjs +2 -2
  357. package/dist/hooks/useScrollLock.cjs.js +1 -1
  358. package/dist/hooks/useScrollLock.mjs +2 -2
  359. package/dist/hooks/useStorage.cjs.js +1 -1
  360. package/dist/hooks/useStorage.mjs +2 -2
  361. package/dist/hooks/useTiming.cjs.js +1 -1
  362. package/dist/hooks/useTiming.mjs +10 -15
  363. package/dist/hooks/useVirtualizer.cjs.js +1 -1
  364. package/dist/hooks/useVirtualizer.d.ts +13 -0
  365. package/dist/hooks/useVirtualizer.mjs +93 -54
  366. package/dist/i18n/en.cjs.js +1 -1
  367. package/dist/i18n/en.mjs +2 -2
  368. package/dist/i18n/merge.mjs +1 -2
  369. package/dist/i18n/plural.mjs +1 -2
  370. package/dist/i18n/types.d.ts +5 -0
  371. package/dist/index.cjs.js +1 -1
  372. package/dist/index.mjs +114 -114
  373. package/dist/locales/ar.cjs.js +1 -1
  374. package/dist/locales/ar.mjs +2 -2
  375. package/dist/locales/bn.cjs.js +1 -1
  376. package/dist/locales/bn.mjs +2 -2
  377. package/dist/locales/cs.cjs.js +1 -1
  378. package/dist/locales/cs.mjs +2 -2
  379. package/dist/locales/da.cjs.js +1 -1
  380. package/dist/locales/da.mjs +2 -2
  381. package/dist/locales/de.cjs.js +1 -1
  382. package/dist/locales/de.mjs +2 -2
  383. package/dist/locales/el.cjs.js +1 -1
  384. package/dist/locales/el.mjs +2 -2
  385. package/dist/locales/es.cjs.js +1 -1
  386. package/dist/locales/es.mjs +2 -2
  387. package/dist/locales/fa.cjs.js +1 -1
  388. package/dist/locales/fa.mjs +2 -2
  389. package/dist/locales/fi.cjs.js +1 -1
  390. package/dist/locales/fi.mjs +2 -2
  391. package/dist/locales/fr.cjs.js +1 -1
  392. package/dist/locales/fr.mjs +2 -2
  393. package/dist/locales/he.cjs.js +1 -1
  394. package/dist/locales/he.mjs +2 -2
  395. package/dist/locales/hi.cjs.js +1 -1
  396. package/dist/locales/hi.mjs +2 -2
  397. package/dist/locales/hu.cjs.js +1 -1
  398. package/dist/locales/hu.mjs +2 -2
  399. package/dist/locales/id.cjs.js +1 -1
  400. package/dist/locales/id.mjs +2 -2
  401. package/dist/locales/it.cjs.js +1 -1
  402. package/dist/locales/it.mjs +2 -2
  403. package/dist/locales/ja.cjs.js +1 -1
  404. package/dist/locales/ja.mjs +2 -2
  405. package/dist/locales/ko.cjs.js +1 -1
  406. package/dist/locales/ko.mjs +2 -2
  407. package/dist/locales/nb.cjs.js +1 -1
  408. package/dist/locales/nb.mjs +2 -2
  409. package/dist/locales/nl.cjs.js +1 -1
  410. package/dist/locales/nl.mjs +2 -2
  411. package/dist/locales/pl.cjs.js +1 -1
  412. package/dist/locales/pl.mjs +2 -2
  413. package/dist/locales/pt-BR.cjs.js +1 -1
  414. package/dist/locales/pt-BR.mjs +2 -2
  415. package/dist/locales/ro.cjs.js +1 -1
  416. package/dist/locales/ro.mjs +2 -2
  417. package/dist/locales/ru.cjs.js +1 -1
  418. package/dist/locales/ru.mjs +2 -2
  419. package/dist/locales/sv.cjs.js +1 -1
  420. package/dist/locales/sv.mjs +2 -2
  421. package/dist/locales/th.cjs.js +1 -1
  422. package/dist/locales/th.mjs +2 -2
  423. package/dist/locales/tr.cjs.js +1 -1
  424. package/dist/locales/tr.mjs +2 -2
  425. package/dist/locales/uk.cjs.js +1 -1
  426. package/dist/locales/uk.mjs +2 -2
  427. package/dist/locales/ur.cjs.js +1 -1
  428. package/dist/locales/ur.mjs +2 -2
  429. package/dist/locales/vi.cjs.js +1 -1
  430. package/dist/locales/vi.mjs +2 -2
  431. package/dist/locales/zh-Hans.cjs.js +1 -1
  432. package/dist/locales/zh-Hans.mjs +2 -2
  433. package/dist/locales/zh-Hant.cjs.js +1 -1
  434. package/dist/locales/zh-Hant.mjs +2 -2
  435. package/dist/types/common.mjs +1 -2
  436. package/dist/utils/announce.cjs.js +1 -1
  437. package/dist/utils/announce.mjs +3 -4
  438. package/dist/utils/brandPalette.mjs +1 -2
  439. package/dist/utils/clipboard.mjs +1 -2
  440. package/dist/utils/cx.mjs +1 -2
  441. package/dist/utils/fillSlot.cjs.js +1 -1
  442. package/dist/utils/fillSlot.mjs +2 -2
  443. package/dist/utils/flattenChildren.mjs +1 -2
  444. package/dist/utils/hotkeys.mjs +1 -2
  445. package/dist/utils/intl.cjs.js +1 -0
  446. package/dist/utils/intl.d.ts +10 -0
  447. package/dist/utils/intl.mjs +15 -0
  448. package/dist/utils/refs.mjs +1 -2
  449. package/dist/utils/responsive.mjs +1 -2
  450. package/dist/utils/slot.mjs +1 -2
  451. package/dist/utils/validators.mjs +1 -2
  452. package/dist/vjdesigns-ui.css +1 -1
  453. package/dist/vjdesigns-ui.css.d.ts +2 -0
  454. package/package.json +24 -14
@@ -1,25 +1,26 @@
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 { VisuallyHidden as i } from "../../utilities/VisuallyHidden/VisuallyHidden.mjs";
6
- import { ErrorIcon as a } from "../../primitives/Icon/icons.mjs";
5
+ import { Chip as r } from "../../data-display/Chip/Chip.mjs";
6
+ import { ErrorIcon as i } from "../../primitives/Icon/icons.mjs";
7
+ import { VisuallyHidden as a } from "../../utilities/VisuallyHidden/VisuallyHidden.mjs";
7
8
  import { useFieldContext as o, useFieldControl as s } from "../Field/FieldContext.mjs";
8
- import { Chip as c } from "../../data-display/Chip/Chip.mjs";
9
- import l from "./TagInput.module.css.mjs";
10
- import { useCallback as ee, useEffect as u, useId as te, useLayoutEffect as ne, useRef as d, useState as f } from "react";
11
- import { jsx as p, jsxs as m } from "react/jsx-runtime";
12
- //#region src/components/forms/TagInput/TagInput.tsx
13
- var re = {
9
+ import c from "./TagInput.module.css.mjs";
10
+ import { useLocale as ee } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
11
+ import { useCallback as te, useEffect as l, useId as ne, useLayoutEffect as re, useRef as u, useState as d } from "react";
12
+ import { jsx as f, jsxs as p } from "react/jsx-runtime";
13
+ // src/components/forms/TagInput/TagInput.tsx
14
+ var ie = {
14
15
  sm: "sm",
15
16
  md: "md",
16
17
  lg: "lg"
17
- }, ie = {
18
- sm: l.sm,
19
- md: l.md,
20
- lg: l.lg
21
- }, h = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
22
- function g(e, t) {
18
+ }, ae = {
19
+ sm: c.sm,
20
+ md: c.md,
21
+ lg: c.lg
22
+ }, m = (e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
23
+ function h(e, t) {
23
24
  return {
24
25
  ",": t.comma,
25
26
  ";": t.semicolon,
@@ -28,284 +29,277 @@ function g(e, t) {
28
29
  " ": t.tab
29
30
  }[e] ?? t.other(e);
30
31
  }
31
- function ae(e, t, n, r) {
32
+ function oe(e, t, n, r) {
32
33
  let i = [
33
34
  n.keys.enter,
34
35
  ...t ? [n.keys.tab] : [],
35
- ...e.map((e) => g(e, n.keys))
36
+ ...e.map((e) => h(e, n.keys))
36
37
  ], a = Intl.ListFormat, o = a ? new a(r, { type: "disjunction" }).format(i) : i.join(", ");
37
38
  return n.instructions(o);
38
39
  }
39
- var _ = ({ value: g, defaultValue: _, onValueChange: oe, inputValue: se, defaultInputValue: v, onInputValueChange: ce, delimiters: y = [","], addOnTab: le = !1, addOnBlur: ue = !1, allowDuplicates: de = !1, maxTags: b, validate: fe, transform: pe, size: me, disabled: he, readOnly: ge, invalid: _e, required: ve, placeholder: ye, name: be, chipVariant: xe, chipTone: Se, removeLabel: Ce, tagListLabel: x, instructions: we, messages: Te, className: Ee, inputClassName: De, style: Oe, ref: S, id: ke, onChange: Ae, onKeyDown: je, onPaste: Me, onBlur: Ne, form: C, "aria-describedby": Pe, "aria-labelledby": w, ...T }) => {
40
- let { messages: E, locale: Fe } = t(), Ie = Ce ?? E.tagInput.remove, D = {
41
- ...E.tagInput,
42
- ...Te
43
- }, O = te(), k = `${O}-instructions`, A = `${O}-error`, j = `${O}-max`, M = o(), [N, P] = e({
44
- value: g,
45
- defaultValue: _ ?? [],
46
- onChange: oe
47
- }), [F, I] = e({
48
- value: se,
49
- defaultValue: v ?? "",
50
- onChange: ce
51
- }), [L, R] = f(null), [Le, Re] = f(null), [z, ze] = f(null), [Be, Ve] = f({
40
+ var g = ({ value: h, defaultValue: g, onValueChange: se, inputValue: ce, defaultInputValue: _, onInputValueChange: le, delimiters: v = [","], addOnTab: ue = !1, addOnBlur: de = !1, allowDuplicates: fe = !1, maxTags: y, validate: pe, transform: me, size: he, disabled: ge, readOnly: _e, invalid: ve, required: ye, placeholder: be, name: xe, chipVariant: Se, chipTone: Ce, removeLabel: we, tagListLabel: b, instructions: Te, messages: Ee, className: De, inputClassName: Oe, style: ke, ref: x, id: Ae, onChange: je, onKeyDown: Me, onPaste: Ne, onBlur: Pe, form: S, "aria-describedby": Fe, "aria-labelledby": C, ...w }) => {
41
+ let { messages: T, locale: Ie } = ee(), Le = we ?? T.tagInput.remove, E = {
42
+ ...T.tagInput,
43
+ ...Ee
44
+ }, D = ne(), O = `${D}-instructions`, k = `${D}-error`, A = `${D}-max`, j = o(), [M, N] = e({
45
+ value: h,
46
+ defaultValue: g ?? [],
47
+ onChange: se
48
+ }), [P, F] = e({
49
+ value: ce,
50
+ defaultValue: _ ?? "",
51
+ onChange: le
52
+ }), [I, L] = d(null), [Re, ze] = d(null), [R, Be] = d(null), [Ve, He] = d({
52
53
  text: "",
53
54
  n: 0
54
- }), B = b !== void 0 && N.length >= b, He = [
55
- Pe,
56
- k,
57
- B ? j : void 0,
58
- L ? A : void 0
59
- ].filter(Boolean).join(" ") || void 0, V = s({
60
- id: ke,
61
- invalid: _e,
62
- required: ve,
63
- disabled: he,
64
- readOnly: ge,
65
- size: me,
66
- "aria-describedby": He
67
- }, { nativeRequired: !1 }), H = V.size ?? "md", Ue = V.invalid || L !== null, U = !V.disabled && !V.readOnly, W = d(null), G = d(null), We = d([]), K = d(null), q = d(void 0), Ge = ee((e) => {
68
- W.current = e, n(S, e);
69
- }, [S]);
70
- u(() => () => window.clearTimeout(q.current), []);
71
- let Ke = (e) => {
72
- e && Ve((t) => ({
55
+ }), z = y !== void 0 && M.length >= y, Ue = [
56
+ Fe,
57
+ O,
58
+ z ? A : void 0,
59
+ I ? k : void 0
60
+ ].filter(Boolean).join(" ") || void 0, B = s({
61
+ id: Ae,
62
+ invalid: ve,
63
+ required: ye,
64
+ disabled: ge,
65
+ readOnly: _e,
66
+ size: he,
67
+ "aria-describedby": Ue
68
+ }, { nativeRequired: !1 }), V = B.size ?? "md", We = B.invalid || I !== null, H = !B.disabled && !B.readOnly, U = u(null), W = u(null), Ge = u([]), G = u(null), K = u(void 0), Ke = te((e) => {
69
+ U.current = e, n(x, e);
70
+ }, [x]);
71
+ l(() => () => window.clearTimeout(K.current), []);
72
+ let qe = (e) => {
73
+ e && He((t) => ({
73
74
  text: e,
74
75
  n: t.n + 1
75
76
  }));
76
- }, [qe, Je] = f(0), J = () => W.current?.focus(), Y = (e) => {
77
- let t = We.current[e]?.querySelector("button:not(:disabled)");
77
+ }, [Je, Ye] = d(0), q = () => U.current?.focus(), J = (e) => {
78
+ let t = Ge.current[e]?.querySelector("button:not(:disabled)");
78
79
  return t ? (t.focus(), !0) : !1;
79
80
  };
80
- ne(() => {
81
- let e = K.current;
82
- e !== null && (K.current = null, !(e < N.length && Y(e)) && J());
83
- }), u(() => {
84
- let e = W.current;
85
- e && e.setCustomValidity(V.required && N.length === 0 ? D.required : "");
81
+ re(() => {
82
+ let e = G.current;
83
+ e !== null && (G.current = null, e < M.length && J(e) || q());
84
+ }), l(() => {
85
+ let e = U.current;
86
+ e && e.setCustomValidity(B.required && M.length === 0 ? E.required : "");
86
87
  });
87
- let Ye = d(_ ?? []), Xe = d(v ?? "");
88
- u(() => {
89
- let e = W.current?.form ?? G.current?.closest("form");
88
+ let Xe = u(g ?? []), Ze = u(_ ?? "");
89
+ l(() => {
90
+ let e = U.current?.form ?? W.current?.closest("form");
90
91
  if (!e) return;
91
92
  let t = () => {
92
- P(Ye.current), I(Xe.current), R(null);
93
+ N(Xe.current), F(Ze.current), L(null);
93
94
  };
94
95
  return e.addEventListener("reset", t), () => e.removeEventListener("reset", t);
95
- }, [P, I]);
96
- let X = y.length > 0 ? new RegExp(y.map(h).join("|")) : null, Ze = new RegExp([
97
- ...y.map(h),
96
+ }, [N, F]);
97
+ let Y = v.length > 0 ? new RegExp(v.map(m).join("|")) : null, Qe = new RegExp([
98
+ ...v.map(m),
98
99
  "\\r?\\n",
99
100
  "\\t"
100
- ].join("|")), Z = (e) => {
101
- let t = [...N], n = [], r = [], i = [], a = null, o = !1;
101
+ ].join("|")), X = (e) => {
102
+ let t = [...M], n = [], r = [], i = [], a = null, o = !1;
102
103
  for (let s of e) {
103
104
  let e = s.trim();
104
105
  if (!e) continue;
105
- let c = (pe ? pe(e) : e).trim();
106
+ let c = (me ? me(e) : e).trim();
106
107
  if (c) {
107
- if (b !== void 0 && t.length >= b) {
108
- o = !0;
109
- continue;
110
- }
111
- if (!de && t.includes(c)) {
112
- r.push(c);
113
- continue;
114
- }
115
- if (fe) {
116
- let t = fe(c);
117
- if (t !== !0) {
118
- a ??= typeof t == "string" && t ? t : D.invalid(c), i.push(e);
119
- continue;
108
+ if (y !== void 0 && t.length >= y) o = !0;
109
+ else if (!fe && t.includes(c)) r.push(c);
110
+ else {
111
+ if (pe) {
112
+ let t = pe(c);
113
+ if (t !== !0) {
114
+ a ??= typeof t == "string" && t ? t : E.invalid(c), i.push(e);
115
+ continue;
116
+ }
120
117
  }
118
+ t.push(c), n.push(c);
121
119
  }
122
- t.push(c), n.push(c);
123
120
  }
124
121
  }
125
- n.length > 0 && P(t), R(a), r.length > 0 && (window.clearTimeout(q.current), Re(r[0]), ze(D.duplicate(r[0])), q.current = window.setTimeout(() => Re(null), 1200));
126
- let s = b !== void 0 && t.length >= b && n.length > 0, c = [
127
- n.length > 0 ? D.added(n) : null,
128
- ...r.map(D.duplicate),
122
+ n.length > 0 && N(t), L(a), r.length > 0 && (window.clearTimeout(K.current), ze(r[0]), Be(E.duplicate(r[0])), K.current = window.setTimeout(() => ze(null), 1200));
123
+ let s = y !== void 0 && t.length >= y && n.length > 0, c = [
124
+ n.length > 0 ? E.added(n) : null,
125
+ ...r.map(E.duplicate),
129
126
  a,
130
- o || s ? D.maxReached(b) : null
127
+ o || s ? E.maxReached(y) : null
131
128
  ].filter(Boolean);
132
- return Ke(c.join(". ")), {
129
+ return qe(c.join(". ")), {
133
130
  rejected: i,
134
131
  added: n.length > 0
135
132
  };
136
- }, Qe = (e) => {
137
- let t = N[e];
138
- t !== void 0 && U && (K.current = e, P(N.filter((t, n) => n !== e)), R(null), Ke(D.removed(t)));
139
- }, Q = (e, t = "") => {
140
- let n = y[0], r = n === void 0 || n.trim() === "" ? " " : `${n} `;
141
- return [...e, t].filter(Boolean).join(r);
142
- }, $ = () => {
143
- let e = Z([F]);
144
- return I(e.rejected.length > 0 ? F : ""), e;
145
133
  }, $e = (e) => {
146
- Ae?.(e), z && ze(null);
147
- let t = e.target.value;
148
- if (X && X.test(t)) {
149
- let e = t.split(X), n = e.pop() ?? "", r = Z(e);
150
- I(Q(r.rejected, n));
151
- return;
152
- }
153
- L && R(null), I(t);
134
+ let t = M[e];
135
+ t !== void 0 && H && (G.current = e, N(M.filter((t, n) => n !== e)), L(null), qe(E.removed(t)));
136
+ }, Z = (e, t = "") => {
137
+ let n = v[0], r = n === void 0 || n.trim() === "" ? " " : `${n} `;
138
+ return [...e, t].filter(Boolean).join(r);
139
+ }, Q = () => {
140
+ let e = X([P]);
141
+ return F(e.rejected.length > 0 ? P : ""), e;
154
142
  }, et = (e) => {
155
- if (Me?.(e), e.defaultPrevented) return;
143
+ je?.(e), R && Be(null);
144
+ let t = e.target.value;
145
+ if (Y && Y.test(t)) {
146
+ let e = t.split(Y), n = e.pop() ?? "", r = X(e);
147
+ F(Z(r.rejected, n));
148
+ } else I && L(null), F(t);
149
+ }, tt = (e) => {
150
+ if (Ne?.(e), e.defaultPrevented) return;
156
151
  let t = e.clipboardData.getData("text");
157
- if (!Ze.test(t)) return;
152
+ if (!Qe.test(t)) return;
158
153
  e.preventDefault();
159
- let n = e.currentTarget, r = n.selectionStart ?? F.length, i = n.selectionEnd ?? F.length, a = F.slice(0, r) + t + F.slice(i), o = Z(a.split(Ze));
160
- I(Q(o.rejected));
161
- }, tt = () => G.current ? getComputedStyle(G.current).direction === "rtl" : !1, nt = (e) => {
162
- if (je?.(e), e.defaultPrevented || e.nativeEvent.isComposing) return;
163
- let t = e.currentTarget, n = t.selectionStart === 0 && t.selectionEnd === 0, r = tt() ? "ArrowRight" : "ArrowLeft";
154
+ let n = e.currentTarget, r = n.selectionStart ?? P.length, i = n.selectionEnd ?? P.length, a = P.slice(0, r) + t + P.slice(i), o = X(a.split(Qe));
155
+ F(Z(o.rejected));
156
+ }, nt = () => W.current ? getComputedStyle(W.current).direction === "rtl" : !1, rt = (e) => {
157
+ if (Me?.(e), e.defaultPrevented || e.nativeEvent.isComposing) return;
158
+ let t = e.currentTarget, n = t.selectionStart === 0 && t.selectionEnd === 0, r = nt() ? "ArrowRight" : "ArrowLeft";
164
159
  switch (e.key) {
165
160
  case "Enter":
166
161
  if (e.repeat) {
167
162
  e.preventDefault();
168
163
  return;
169
164
  }
170
- if (!F.trim()) return;
171
- e.preventDefault(), $();
165
+ if (!P.trim()) return;
166
+ e.preventDefault(), Q();
172
167
  return;
173
168
  case "Tab": {
174
- if (!le || e.shiftKey || !F.trim()) return;
175
- let t = $();
169
+ if (!ue || e.shiftKey || !P.trim()) return;
170
+ let t = Q();
176
171
  t.added && t.rejected.length === 0 && e.preventDefault();
177
172
  return;
178
173
  }
179
174
  case "Backspace":
180
- if (e.repeat || F !== "" || N.length === 0) return;
181
- Y(N.length - 1) && e.preventDefault();
175
+ if (e.repeat || P !== "" || M.length === 0) return;
176
+ J(M.length - 1) && e.preventDefault();
182
177
  return;
183
178
  case r:
184
- if (!n || N.length === 0 || e.shiftKey) return;
185
- Y(N.length - 1) && e.preventDefault();
179
+ if (!n || M.length === 0 || e.shiftKey) return;
180
+ J(M.length - 1) && e.preventDefault();
186
181
  return;
187
182
  default: return;
188
183
  }
189
- }, rt = (e) => {
190
- Ne?.(e), ue && F.trim() && $();
191
- }, it = (e, t) => {
192
- let n = tt(), r = n ? "ArrowRight" : "ArrowLeft", i = n ? "ArrowLeft" : "ArrowRight", a = !0;
184
+ }, it = (e) => {
185
+ Pe?.(e), de && P.trim() && Q();
186
+ }, at = (e, t) => {
187
+ let n = nt(), r = n ? "ArrowRight" : "ArrowLeft", i = n ? "ArrowLeft" : "ArrowRight", a = !0;
193
188
  switch (e.key) {
194
189
  case r:
195
- t > 0 && Y(t - 1);
190
+ t > 0 && J(t - 1);
196
191
  break;
197
192
  case i:
198
- t < N.length - 1 && Y(t + 1) || J();
193
+ t < M.length - 1 && J(t + 1) || q();
199
194
  break;
200
195
  case "Home":
201
- Y(0);
196
+ J(0);
202
197
  break;
203
198
  case "End":
204
- J();
199
+ q();
205
200
  break;
206
201
  default: a = !1;
207
202
  }
208
203
  a && e.preventDefault();
209
- }, at = (e) => {
210
- let t = W.current;
211
- if (!t || V.disabled) return;
204
+ }, ot = (e) => {
205
+ let t = U.current;
206
+ if (!t || B.disabled) return;
212
207
  let n = e.target;
213
208
  n === t || n.closest("button, a, input, [tabindex]") || (e.preventDefault(), t.focus());
214
- }, ot = x === void 0 ? w ?? (M && !M.isGroup ? M.labelId : void 0) : void 0, st = x ?? (ot ? void 0 : E.tagInput.list), ct = we ?? ae(y, le, E.tagInput, Fe), lt = N.length === 0 && !B;
215
- return /* @__PURE__ */ m("div", {
216
- ref: G,
217
- className: r(l.root, Ee),
218
- style: Oe,
219
- "data-size": H,
209
+ }, $ = b === void 0 ? C ?? (j && !j.isGroup ? j.labelId : void 0) : void 0, st = b ?? ($ ? void 0 : T.tagInput.list), ct = Te ?? oe(v, ue, T.tagInput, Ie), lt = M.length === 0 && !z;
210
+ return /* @__PURE__ */ p("div", {
211
+ ref: W,
212
+ className: t(c.root, De),
213
+ style: ke,
214
+ "data-size": V,
220
215
  children: [
221
- /* @__PURE__ */ m("div", {
222
- className: r(l.box, ie[H], N.length > 0 && l.hasTags, Ue && l.invalid, V.disabled && l.disabled, V.readOnly && !V.disabled && l.readOnly),
223
- onPointerDown: at,
224
- children: [N.length > 0 && /* @__PURE__ */ p("ul", {
225
- className: l.list,
226
- "aria-labelledby": ot,
216
+ /* @__PURE__ */ p("div", {
217
+ className: t(c.box, ae[V], M.length > 0 && c.hasTags, We && c.invalid, B.disabled && c.disabled, B.readOnly && !B.disabled && c.readOnly),
218
+ onPointerDown: ot,
219
+ children: [M.length > 0 && /* @__PURE__ */ f("ul", {
220
+ className: c.list,
221
+ "aria-labelledby": $,
227
222
  "aria-label": st,
228
- "aria-describedby": V.readOnly ? V.ariaProps["aria-describedby"] : void 0,
229
- children: N.map((e, t) => /* @__PURE__ */ p("li", {
223
+ "aria-describedby": B.readOnly ? B.ariaProps["aria-describedby"] : void 0,
224
+ children: M.map((e, t) => /* @__PURE__ */ f("li", {
230
225
  ref: (e) => {
231
- We.current[t] = e;
226
+ Ge.current[t] = e;
232
227
  },
233
- className: l.item,
234
- "data-highlighted": Le === e || void 0,
235
- onKeyDown: (e) => it(e, t),
236
- onFocus: () => Je(t),
237
- children: /* @__PURE__ */ p(c, {
238
- size: re[H],
239
- variant: xe,
240
- tone: Se,
241
- disabled: V.disabled,
242
- onRemove: U ? () => Qe(t) : void 0,
243
- removeLabel: U ? Ie(e) : void 0,
244
- removeTabIndex: t === Math.min(qe, N.length - 1) ? 0 : -1,
228
+ className: c.item,
229
+ "data-highlighted": Re === e || void 0,
230
+ onKeyDown: (e) => at(e, t),
231
+ onFocus: () => Ye(t),
232
+ children: /* @__PURE__ */ f(r, {
233
+ size: ie[V],
234
+ variant: Se,
235
+ tone: Ce,
236
+ disabled: B.disabled,
237
+ onRemove: H ? () => $e(t) : void 0,
238
+ removeLabel: H ? Le(e) : void 0,
239
+ removeTabIndex: t === Math.min(Je, M.length - 1) ? 0 : -1,
245
240
  children: e
246
241
  })
247
242
  }, `${e}-${t}`))
248
- }), V.readOnly && !V.disabled ? N.length === 0 && /* @__PURE__ */ p("span", {
249
- className: l.empty,
250
- children: D.empty
251
- }) : /* @__PURE__ */ p("input", {
252
- ...T,
253
- ref: Ge,
254
- id: V.id,
243
+ }), B.readOnly && !B.disabled ? M.length === 0 && /* @__PURE__ */ f("span", {
244
+ className: c.empty,
245
+ children: E.empty
246
+ }) : /* @__PURE__ */ f("input", {
247
+ ...w,
248
+ ref: Ke,
249
+ id: B.id,
255
250
  type: "text",
256
- form: C,
257
- value: F,
258
- placeholder: lt ? ye : void 0,
259
- disabled: V.disabled,
260
- readOnly: B,
261
- autoComplete: T.autoComplete ?? "off",
262
- ...V.ariaProps,
263
- "aria-labelledby": w,
264
- "aria-invalid": Ue || void 0,
265
- "aria-errormessage": L ? A : V.ariaProps["aria-errormessage"],
266
- className: r(l.input, De),
267
- onChange: $e,
268
- onKeyDown: nt,
269
- onPaste: et,
270
- onBlur: rt
251
+ form: S,
252
+ value: P,
253
+ placeholder: lt ? be : void 0,
254
+ disabled: B.disabled,
255
+ readOnly: z,
256
+ autoComplete: w.autoComplete ?? "off",
257
+ ...B.ariaProps,
258
+ "aria-labelledby": C,
259
+ "aria-invalid": We || void 0,
260
+ "aria-errormessage": I ? k : B.ariaProps["aria-errormessage"],
261
+ className: t(c.input, Oe),
262
+ onChange: et,
263
+ onKeyDown: rt,
264
+ onPaste: tt,
265
+ onBlur: it
271
266
  })]
272
267
  }),
273
- L && /* @__PURE__ */ m("p", {
274
- id: A,
275
- className: l.error,
276
- children: [/* @__PURE__ */ p(a, {
268
+ I && /* @__PURE__ */ p("p", {
269
+ id: k,
270
+ className: c.error,
271
+ children: [/* @__PURE__ */ f(i, {
277
272
  size: "sm",
278
- className: l.errorIcon
279
- }), /* @__PURE__ */ p("span", { children: L })]
273
+ className: c.errorIcon
274
+ }), /* @__PURE__ */ f("span", { children: I })]
280
275
  }),
281
- /* @__PURE__ */ p(i, {
282
- id: k,
276
+ /* @__PURE__ */ f(a, {
277
+ id: O,
283
278
  children: ct
284
279
  }),
285
- z && /* @__PURE__ */ p("p", {
286
- className: l.limit,
287
- children: z
280
+ R && /* @__PURE__ */ f("p", {
281
+ className: c.limit,
282
+ children: R
288
283
  }),
289
- B && /* @__PURE__ */ p("p", {
290
- id: j,
291
- className: l.limit,
292
- children: D.maxReached(b)
284
+ z && /* @__PURE__ */ f("p", {
285
+ id: A,
286
+ className: c.limit,
287
+ children: E.maxReached(y)
293
288
  }),
294
- /* @__PURE__ */ m(i, {
289
+ /* @__PURE__ */ p(a, {
295
290
  role: "status",
296
291
  "aria-live": "polite",
297
292
  "aria-atomic": "true",
298
- children: [Be.text, Be.n % 2 == 1 ? "\xA0" : ""]
293
+ children: [Ve.text, Ve.n % 2 == 1 ? "\xA0" : ""]
299
294
  }),
300
- be !== void 0 && N.map((e, t) => /* @__PURE__ */ p("input", {
295
+ xe !== void 0 && M.map((e, t) => /* @__PURE__ */ f("input", {
301
296
  type: "hidden",
302
- name: be,
297
+ name: xe,
303
298
  value: e,
304
- form: C,
305
- disabled: V.disabled
299
+ form: S,
300
+ disabled: B.disabled
306
301
  }, `${e}-${t}`))
307
302
  ]
308
303
  });
309
304
  };
310
- //#endregion
311
- export { _ as TagInput };
305
+ export { g as TagInput };
@@ -1,4 +1,4 @@
1
- //#region src/components/forms/TagInput/TagInput.module.css
1
+ // src/components/forms/TagInput/TagInput.module.css
2
2
  var e = "_root_y83d4_15", t = "_box_y83d4_31", n = "_hasTags_y83d4_103", r = "_sm_y83d4_115", i = "_md_y83d4_131", a = "_lg_y83d4_147", o = "_disabled_y83d4_167", s = "_readOnly_y83d4_167", c = "_invalid_y83d4_167", l = "_list_y83d4_229", u = "_item_y83d4_255", d = "_input_y83d4_313", f = "_empty_y83d4_397", p = "_error_y83d4_409", m = "_limit_y83d4_431", h = "_errorIcon_y83d4_445", g = {
3
3
  root: e,
4
4
  box: t,
@@ -18,5 +18,4 @@ var e = "_root_y83d4_15", t = "_box_y83d4_31", n = "_hasTags_y83d4_103", r = "_s
18
18
  limit: m,
19
19
  errorIcon: h
20
20
  };
21
- //#endregion
22
21
  export { t as box, g as default, o as disabled, f as empty, p as error, h as errorIcon, n as hasTags, d as input, c as invalid, u as item, a as lg, m as limit, l as list, i as md, s as readOnly, e as root, r as sm };
@@ -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("../Field/FieldContext.cjs.js"),o=require("./Textarea.module.css.cjs.js");let s=require("react"),c=require("react/jsx-runtime");var l={sm:o.default.sm,md:o.default.md,lg:o.default.lg},u={outline:o.default.outline,filled:o.default.filled},d={none:o.default.radiusNone,xs:o.default.radiusXs,sm:o.default.radiusSm,md:o.default.radiusMd,lg:o.default.radiusLg,xl:o.default.radiusXl,"2xl":o.default.radius2xl},f={none:o.default.resizeNone,vertical:o.default.resizeVertical,both:o.default.resizeBoth},ee=.9,te=600,p;function m(){return p===void 0&&(p=typeof CSS<`u`&&typeof CSS.supports==`function`&&CSS.supports(`field-sizing`,`content`)),p}var h=typeof window<`u`?s.useLayoutEffect:s.useEffect,g=({size:p,variant:g=`outline`,radius:_,invalid:ne,value:v,defaultValue:y,onValueChange:b,onChange:x,rows:S=3,autoResize:C=!1,minRows:w,maxRows:T,resize:E=`vertical`,showCount:D=!1,maxLength:O,fullWidth:re=!0,className:ie,textareaClassName:ae,style:oe,cols:k,id:A,required:j,disabled:M,readOnly:N,"aria-describedby":P,ref:F,...I})=>{let L=n.useMessages(),R=(0,s.useId)(),z=D&&O!==void 0&&O>0,B=a.useFieldControl({id:A,invalid:ne,required:j,disabled:M,readOnly:N,size:p,"aria-describedby":[P,z?R:void 0].filter(Boolean).join(` `)||void 0}),V=B.size??`md`,H=v!==void 0,[U,W]=e.useControllableState({value:v,defaultValue:y??``,onChange:b});t.useFormReset(()=>B.id?document.getElementById(B.id):null,()=>W(y??``),v===void 0);let G=e=>{x?.(e),W(e.target.value)},K=(0,s.useRef)(null),se=(0,s.useCallback)(e=>{K.current=e;let t;return typeof F==`function`?t=F(e):F&&(F.current=e),()=>{K.current=null,typeof F==`function`?typeof t==`function`?t():F(null):F&&(F.current=null)}},[F]),q=Math.max(1,w??S),J=T===void 0?void 0:Math.max(q,T),Y=(0,s.useCallback)(()=>{let e=K.current;if(!e)return;e.style.height=`auto`;let t=window.getComputedStyle(e),n=parseFloat(t.borderTopWidth)+parseFloat(t.borderBottomWidth);e.style.height=`${e.scrollHeight+n}px`},[]);h(()=>{C&&!m()&&Y()},[C,Y,U,q,J,V]),(0,s.useEffect)(()=>{let e=K.current;if(!C||m()||!e||typeof ResizeObserver>`u`)return;let t=e.offsetWidth,n=new ResizeObserver(()=>{e.offsetWidth!==t&&(t=e.offsetWidth,Y())});return n.observe(e),()=>{n.disconnect(),e.style.height=``}},[C,Y]);let X=U.length,ce=z?X/O:0,Z=z&&ce>=ee,le=z&&X>=O,Q=z?Math.max(0,O-X):0,[ue,$]=(0,s.useState)(``);(0,s.useEffect)(()=>{if(!z)return;if(!Z){$(``);return}let e=window.setTimeout(()=>{$(Q===0?L.textarea.limitReached:L.textarea.remaining(Q))},te);return()=>window.clearTimeout(e)},[z,Z,Q,L]);let de={...C?{"--textarea-min-rows":q,"--textarea-max-rows":J,"--textarea-cols":k}:null};return(0,c.jsxs)(`div`,{className:r.cx(o.default.root,re?o.default.fullWidth:o.default.inline,ie),style:oe,children:[(0,c.jsx)(`textarea`,{...I,...B.ariaProps,ref:se,id:B.id,required:B.required,disabled:B.disabled,readOnly:B.readOnly,maxLength:O,cols:k,rows:C?q:S,...H?{value:U}:{defaultValue:y??``},onChange:G,style:de,className:r.cx(o.default.textarea,l[V],u[g],_&&d[_],f[C?`none`:E],C&&o.default.autoResize,C&&J!==void 0&&o.default.hasMaxRows,B.invalid&&o.default.invalid,ae)}),z&&(0,c.jsxs)(`div`,{id:R,className:r.cx(o.default.counter,l[V],Z&&o.default.counterNear,le&&o.default.counterAtLimit),children:[(0,c.jsxs)(`span`,{"aria-hidden":`true`,children:[X,` / `,O]}),(0,c.jsxs)(i.VisuallyHidden,{children:[X,` of `,O,` characters used`]})]}),z&&(0,c.jsx)(i.VisuallyHidden,{"aria-live":`polite`,"aria-atomic":`true`,children:ue})]})};exports.Textarea=g;
1
+ "use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useFormReset.cjs.js"),n=require("../../../utils/cx.cjs.js"),r=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),i=require("../Field/FieldContext.cjs.js"),a=require("./Textarea.module.css.cjs.js"),ee=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let o=require("react"),s=require("react/jsx-runtime");var c={sm:a.default.sm,md:a.default.md,lg:a.default.lg},l={outline:a.default.outline,filled:a.default.filled},u={none:a.default.radiusNone,xs:a.default.radiusXs,sm:a.default.radiusSm,md:a.default.radiusMd,lg:a.default.radiusLg,xl:a.default.radiusXl,"2xl":a.default.radius2xl},d={none:a.default.resizeNone,vertical:a.default.resizeVertical,both:a.default.resizeBoth},te=.9,ne=600,f;function p(){return f===void 0&&(f=typeof CSS<`u`&&typeof CSS.supports==`function`&&CSS.supports(`field-sizing`,`content`)),f}var m=typeof window<`u`?o.useLayoutEffect:o.useEffect,h=({size:f,variant:h=`outline`,radius:g,invalid:_,value:v,defaultValue:y,onValueChange:b,onChange:x,rows:S=3,autoResize:C=!1,minRows:w,maxRows:T,resize:E=`vertical`,showCount:D=!1,maxLength:O,fullWidth:re=!0,className:ie,textareaClassName:ae,style:oe,cols:k,id:A,required:j,disabled:M,readOnly:N,"aria-describedby":P,ref:F,...I})=>{let L=ee.useMessages(),R=(0,o.useId)(),z=D&&O!==void 0&&O>0,B=i.useFieldControl({id:A,invalid:_,required:j,disabled:M,readOnly:N,size:f,"aria-describedby":[P,z?R:void 0].filter(Boolean).join(` `)||void 0}),V=B.size??`md`,H=v!==void 0,[U,W]=e.useControllableState({value:v,defaultValue:y??``,onChange:b});t.useFormReset(()=>B.id?document.getElementById(B.id):null,()=>W(y??``),v===void 0);let G=e=>{x?.(e),W(e.target.value)},K=(0,o.useRef)(null),se=(0,o.useCallback)(e=>{K.current=e;let t;return typeof F==`function`?t=F(e):F&&(F.current=e),()=>{K.current=null,typeof F==`function`?typeof t==`function`?t():F(null):F&&(F.current=null)}},[F]),q=Math.max(1,w??S),J=T===void 0?void 0:Math.max(q,T),Y=(0,o.useCallback)(()=>{let e=K.current;if(!e)return;e.style.height=`auto`;let t=window.getComputedStyle(e),n=parseFloat(t.borderTopWidth)+parseFloat(t.borderBottomWidth);e.style.height=`${e.scrollHeight+n}px`},[]);m(()=>{C&&!p()&&Y()},[C,Y,U,q,J,V]),(0,o.useEffect)(()=>{let e=K.current;if(!C||p()||!e||typeof ResizeObserver>`u`)return;let t=e.offsetWidth,n=new ResizeObserver(()=>{e.offsetWidth!==t&&(t=e.offsetWidth,Y())});return n.observe(e),()=>{n.disconnect(),e.style.height=``}},[C,Y]);let X=U.length,ce=z?X/O:0,Z=z&&ce>=te,le=z&&X>=O,Q=z?Math.max(0,O-X):0,[ue,$]=(0,o.useState)(``);(0,o.useEffect)(()=>{if(!z)return;if(!Z){$(``);return}let e=window.setTimeout(()=>{$(Q===0?L.textarea.limitReached:L.textarea.remaining(Q))},ne);return()=>window.clearTimeout(e)},[z,Z,Q,L]);let de={...C?{"--textarea-min-rows":q,"--textarea-max-rows":J,"--textarea-cols":k}:null};return(0,s.jsxs)(`div`,{className:n.cx(a.default.root,re?a.default.fullWidth:a.default.inline,ie),style:oe,children:[(0,s.jsx)(`textarea`,{...I,...B.ariaProps,ref:se,id:B.id,required:B.required,disabled:B.disabled,readOnly:B.readOnly,maxLength:O,cols:k,rows:C?q:S,...H?{value:U}:{defaultValue:y??``},onChange:G,style:de,className:n.cx(a.default.textarea,c[V],l[h],g&&u[g],d[C?`none`:E],C&&a.default.autoResize,C&&J!==void 0&&a.default.hasMaxRows,B.invalid&&a.default.invalid,ae)}),z&&(0,s.jsxs)(`div`,{id:R,className:n.cx(a.default.counter,c[V],Z&&a.default.counterNear,le&&a.default.counterAtLimit),children:[(0,s.jsxs)(`span`,{"aria-hidden":`true`,children:[X,` / `,O]}),(0,s.jsxs)(r.VisuallyHidden,{children:[X,` of `,O,` characters used`]})]}),z&&(0,s.jsx)(r.VisuallyHidden,{"aria-live":`polite`,"aria-atomic":`true`,children:ue})]})};exports.Textarea=h;