haze-ui 1.29.0 → 1.30.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 (386) hide show
  1. package/README.md +58 -0
  2. package/cli/theme.mjs +446 -0
  3. package/dist/components/Accordion/Accordion.js +1 -0
  4. package/dist/components/Accordion/AccordionItem.js +3 -0
  5. package/dist/components/Affix/Affix.js +1 -0
  6. package/dist/components/Alert/Alert.js +3 -0
  7. package/dist/components/Anchor/Anchor.js +21 -15
  8. package/dist/components/AppShell/AppShell.js +5 -0
  9. package/dist/components/ApprovalCard/ApprovalCard.js +8 -0
  10. package/dist/components/AspectRatio/AspectRatio.js +2 -0
  11. package/dist/components/AsyncSection/AsyncSection.js +8 -0
  12. package/dist/components/Avatar/Avatar.js +11 -6
  13. package/dist/components/AvatarGroup/AvatarGroup.js +9 -6
  14. package/dist/components/BackToTop/BackToTop.js +5 -4
  15. package/dist/components/Badge/Badge.js +1 -0
  16. package/dist/components/Banner/Banner.js +3 -0
  17. package/dist/components/BottomSheet/BottomSheet.js +21 -16
  18. package/dist/components/Breadcrumb/Breadcrumb.js +11 -7
  19. package/dist/components/Breadcrumb/BreadcrumbItem.js +2 -0
  20. package/dist/components/Button/Button.js +13 -11
  21. package/dist/components/Button/ButtonLink.js +15 -13
  22. package/dist/components/Calendar/Calendar.js +523 -368
  23. package/dist/components/Calendar/date.js +35 -10
  24. package/dist/components/Card/Card.js +1 -0
  25. package/dist/components/Carousel/Carousel.js +157 -60
  26. package/dist/components/Carousel/CarouselSlide.js +3 -1
  27. package/dist/components/Cascader/Cascader.js +48 -35
  28. package/dist/components/Chart/Chart.js +5 -4
  29. package/dist/components/Chart/chart-elements.js +14 -10
  30. package/dist/components/ChatContainer/ChatContainer.js +9 -7
  31. package/dist/components/ChatInput/ChatInput.js +12 -9
  32. package/dist/components/ChatMessage/ChatMessage.js +83 -44
  33. package/dist/components/Checkbox/CheckboxCore.js +2 -0
  34. package/dist/components/Chip/Chip.js +3 -0
  35. package/dist/components/CodeBlock/CodeBlock.js +18 -9
  36. package/dist/components/Collapsible/Collapsible.js +24 -21
  37. package/dist/components/ColorPicker/ColorPicker.js +85 -14
  38. package/dist/components/ColorPicker/ColorPickerCore.js +6 -0
  39. package/dist/components/ColorPicker/ColorPickerPanel.js +277 -0
  40. package/dist/components/ColorPicker/color-math.js +168 -0
  41. package/dist/components/ColorPicker/color-picker-styles.js +7 -0
  42. package/dist/components/ColorPicker/index.js +3 -3
  43. package/dist/components/Combobox/Combobox.js +31 -24
  44. package/dist/components/Combobox/ComboboxGroup.js +7 -5
  45. package/dist/components/Combobox/ComboboxOption.js +1 -0
  46. package/dist/components/Command/Command.js +44 -37
  47. package/dist/components/Command/CommandDialog.js +8 -8
  48. package/dist/components/ConfigProvider/ConfigContext.js +30 -0
  49. package/dist/components/ConfigProvider/ConfigProvider.js +14 -0
  50. package/dist/components/ConfigProvider/index.js +4 -0
  51. package/dist/components/ConfigProvider/useConfigDefaults.js +10 -0
  52. package/dist/components/ConfirmDialog/ConfirmDialog.js +18 -11
  53. package/dist/components/Container/Container.js +1 -0
  54. package/dist/components/ContextMenu/ContextMenu.js +7 -6
  55. package/dist/components/ContextMenu/ContextMenuContent.js +4 -4
  56. package/dist/components/ContextMenu/ContextMenuItem.js +1 -0
  57. package/dist/components/ContextMenu/ContextMenuSeparator.js +1 -0
  58. package/dist/components/ContextMenu/ContextMenuTrigger.js +1 -0
  59. package/dist/components/ConversationList/ConversationItem.js +4 -0
  60. package/dist/components/ConversationList/ConversationList.js +1 -0
  61. package/dist/components/CountUp/CountUp.js +6 -5
  62. package/dist/components/DataTable/CellEditor.js +4 -4
  63. package/dist/components/DataTable/DataTable.js +236 -168
  64. package/dist/components/DateRangePicker/DateRangePickerCore.js +9 -0
  65. package/dist/components/Datepicker/Datepicker.js +14 -11
  66. package/dist/components/Datepicker/DatepickerCore.js +75 -60
  67. package/dist/components/Datepicker/datetime.js +14 -3
  68. package/dist/components/Descriptions/Descriptions.js +6 -0
  69. package/dist/components/Dialog/Dialog.js +13 -11
  70. package/dist/components/DiffViewer/DiffViewer.js +22 -13
  71. package/dist/components/Disclosure/Disclosure.js +10 -7
  72. package/dist/components/Divider/Divider.js +2 -0
  73. package/dist/components/Drawer/Drawer.js +10 -9
  74. package/dist/components/DropdownMenu/DropdownMenu.js +58 -35
  75. package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.js +63 -0
  76. package/dist/components/DropdownMenu/DropdownMenuContent.js +5 -5
  77. package/dist/components/DropdownMenu/DropdownMenuGroup.js +26 -0
  78. package/dist/components/DropdownMenu/DropdownMenuItem.js +29 -10
  79. package/dist/components/DropdownMenu/DropdownMenuRadioGroup.js +30 -0
  80. package/dist/components/DropdownMenu/DropdownMenuRadioItem.js +59 -0
  81. package/dist/components/DropdownMenu/DropdownMenuSeparator.js +1 -0
  82. package/dist/components/DropdownMenu/DropdownMenuSub.js +1 -0
  83. package/dist/components/DropdownMenu/DropdownMenuSubTrigger.js +1 -0
  84. package/dist/components/DropdownMenu/DropdownMenuTrigger.js +1 -0
  85. package/dist/components/DropdownMenu/dropdown-menu-item-styles.js +7 -0
  86. package/dist/components/DropdownMenu/index.js +12 -8
  87. package/dist/components/Ellipsis/Ellipsis.js +11 -8
  88. package/dist/components/Empty/Empty.js +4 -0
  89. package/dist/components/FileInput/FileInput.js +7 -5
  90. package/dist/components/FilePreview/FilePreview.js +19 -1
  91. package/dist/components/Flex/Flex.js +1 -0
  92. package/dist/components/FloatButton/FloatButton.js +4 -0
  93. package/dist/components/FloatButton/FloatButtonGroup.js +18 -13
  94. package/dist/components/Fullscreen/Fullscreen.js +6 -3
  95. package/dist/components/Grid/Grid.js +12 -7
  96. package/dist/components/Grid/GridItem.js +17 -7
  97. package/dist/components/Grid/grid-item-styles.js +58 -0
  98. package/dist/components/HoverCard/HoverCard.js +46 -43
  99. package/dist/components/Icon/Icon.js +1 -0
  100. package/dist/components/Image/Image.js +10 -7
  101. package/dist/components/Image/ImagePreview.js +42 -34
  102. package/dist/components/InlineCompletion/InlineCompletion.js +15 -11
  103. package/dist/components/InlineEdit/InlineEdit.js +8 -6
  104. package/dist/components/Input/InputCore.js +1 -0
  105. package/dist/components/JsonView/JsonView.js +104 -79
  106. package/dist/components/Kbd/Kbd.js +1 -0
  107. package/dist/components/List/List.js +1 -0
  108. package/dist/components/List/ListItem.js +1 -0
  109. package/dist/components/LocaleProvider/LocaleProvider.js +4 -4
  110. package/dist/components/LocaleProvider/ar-sa.js +24 -2
  111. package/dist/components/LocaleProvider/de-de.js +24 -2
  112. package/dist/components/LocaleProvider/es-es.js +24 -2
  113. package/dist/components/LocaleProvider/fr-fr.js +24 -2
  114. package/dist/components/LocaleProvider/it-it.js +24 -2
  115. package/dist/components/LocaleProvider/ja-jp.js +24 -2
  116. package/dist/components/LocaleProvider/ko-kr.js +24 -2
  117. package/dist/components/LocaleProvider/locale.js +24 -2
  118. package/dist/components/LocaleProvider/pt-br.js +24 -2
  119. package/dist/components/LocaleProvider/ru-ru.js +24 -2
  120. package/dist/components/LocaleProvider/zh-cn.js +24 -2
  121. package/dist/components/LogViewer/LogViewer.js +25 -14
  122. package/dist/components/MarkdownRenderer/MarkdownRenderer.js +6 -5
  123. package/dist/components/MarkdownRenderer/markdown-blocks.js +1 -1
  124. package/dist/components/Masonry/Masonry.js +13 -10
  125. package/dist/components/Mentions/MentionsCore.js +15 -11
  126. package/dist/components/Menu/Menu.js +58 -36
  127. package/dist/components/Menu/MenuCheckboxItem.js +63 -0
  128. package/dist/components/Menu/MenuDivider.js +1 -0
  129. package/dist/components/Menu/MenuGroup.js +26 -0
  130. package/dist/components/Menu/MenuItem.js +28 -9
  131. package/dist/components/Menu/MenuRadioGroup.js +30 -0
  132. package/dist/components/Menu/MenuRadioItem.js +59 -0
  133. package/dist/components/Menu/MenuSub.js +1 -0
  134. package/dist/components/Menu/MenuSubTrigger.js +1 -0
  135. package/dist/components/Menu/index.js +11 -7
  136. package/dist/components/Menu/menu-item-styles.js +7 -0
  137. package/dist/components/ModelPicker/ModelPicker.js +3 -0
  138. package/dist/components/NavigationBar/NavLink.js +7 -6
  139. package/dist/components/NavigationBar/NavigationBar.js +4 -0
  140. package/dist/components/NumberInput/NumberInputCore.js +4 -0
  141. package/dist/components/OTPInput/OTPInputCore.js +9 -7
  142. package/dist/components/Pagination/Pagination.js +125 -33
  143. package/dist/components/PasswordInput/PasswordInputCore.js +9 -6
  144. package/dist/components/Popover/Popover.js +9 -7
  145. package/dist/components/Progress/Progress.js +5 -0
  146. package/dist/components/PromptInput/PromptInput.js +49 -41
  147. package/dist/components/QRCode/QRCode.js +9 -7
  148. package/dist/components/Radio/Radio.js +2 -0
  149. package/dist/components/Radio/RadioGroupCore.js +7 -6
  150. package/dist/components/Rating/RatingCore.js +18 -15
  151. package/dist/components/Resizable/Resizable.js +25 -22
  152. package/dist/components/Result/Result.js +5 -0
  153. package/dist/components/ScrollArea/ScrollArea.js +1 -0
  154. package/dist/components/Segmented/SegmentedCore.js +9 -7
  155. package/dist/components/Select/Option.js +1 -0
  156. package/dist/components/Select/OptionGroup.js +1 -0
  157. package/dist/components/Select/SelectCore.js +11 -8
  158. package/dist/components/Select/SelectFloating.js +54 -36
  159. package/dist/components/Sidebar/Sidebar.js +52 -42
  160. package/dist/components/Signature/Signature.js +101 -91
  161. package/dist/components/Skeleton/Skeleton.js +1 -0
  162. package/dist/components/Slider/SliderCore.js +149 -43
  163. package/dist/components/Sources/Sources.js +31 -21
  164. package/dist/components/Spinner/Spinner.js +1 -0
  165. package/dist/components/Stat/Stat.js +7 -0
  166. package/dist/components/StepTimeline/StepTimeline.js +6 -0
  167. package/dist/components/Stepper/Step.js +8 -1
  168. package/dist/components/Stepper/Stepper.js +7 -6
  169. package/dist/components/StreamingText/StreamingText.js +62 -29
  170. package/dist/components/SwipeAction/SwipeAction.js +11 -9
  171. package/dist/components/Switch/SwitchCore.js +9 -5
  172. package/dist/components/Table/Table.js +2 -0
  173. package/dist/components/Table/TableBody.js +1 -0
  174. package/dist/components/Table/TableCell.js +1 -0
  175. package/dist/components/Table/TableHead.js +1 -0
  176. package/dist/components/Table/TableRow.js +1 -0
  177. package/dist/components/Tabs/Tab.js +1 -0
  178. package/dist/components/Tabs/TabList.js +5 -4
  179. package/dist/components/Tabs/TabPanel.js +1 -0
  180. package/dist/components/Tabs/Tabs.js +1 -0
  181. package/dist/components/Tag/Tag.js +2 -0
  182. package/dist/components/TagGroup/SortableTagGroup.js +7 -6
  183. package/dist/components/TagGroup/TagGroup.js +1 -0
  184. package/dist/components/TagGroup/TagGroupItem.js +3 -0
  185. package/dist/components/TagInput/SortableTagInputCore.js +13 -10
  186. package/dist/components/TagInput/TagInputCore.js +17 -12
  187. package/dist/components/Textarea/TextareaCore.js +1 -0
  188. package/dist/components/ThinkingIndicator/ThinkingIndicator.js +18 -4
  189. package/dist/components/TimePicker/TimePicker.js +30 -14
  190. package/dist/components/TimePicker/TimePickerCore.js +1 -0
  191. package/dist/components/TimePicker/TimePickerPanel.js +260 -0
  192. package/dist/components/TimePicker/time-picker-styles.js +7 -0
  193. package/dist/components/TimePicker/time.js +51 -0
  194. package/dist/components/Timeline/Timeline.js +14 -1
  195. package/dist/components/Toast/Toast.js +94 -48
  196. package/dist/components/Toast/ToastContainer.js +60 -56
  197. package/dist/components/Toast/ToastContext.js +3 -1
  198. package/dist/components/Toast/toast2.js +20 -14
  199. package/dist/components/Toast/useToast.js +36 -11
  200. package/dist/components/Toggle/ToggleCore.js +1 -0
  201. package/dist/components/TokenCounter/TokenCounter.js +8 -1
  202. package/dist/components/ToolCallCard/ToolCallCard.js +18 -2
  203. package/dist/components/Toolbar/Toolbar.js +9 -8
  204. package/dist/components/Toolbar/ToolbarButton.js +1 -0
  205. package/dist/components/Toolbar/ToolbarSeparator.js +1 -0
  206. package/dist/components/Toolbar/ToolbarToggle.js +1 -0
  207. package/dist/components/Tooltip/Tooltip.js +46 -42
  208. package/dist/components/Tour/Tour.js +76 -65
  209. package/dist/components/Transfer/TransferCore.js +31 -17
  210. package/dist/components/Tree/SortableTree.js +151 -0
  211. package/dist/components/Tree/Tree.js +163 -154
  212. package/dist/components/Tree/TreeItem.js +52 -39
  213. package/dist/components/Tree/index.js +2 -1
  214. package/dist/components/Tree/sortable-tree-styles.js +7 -0
  215. package/dist/components/Tree/sortable-tree-utils.js +36 -0
  216. package/dist/components/TreeSelect/TreeSelect.js +44 -34
  217. package/dist/components/Typography/Typography.js +3 -0
  218. package/dist/components/Upload/Upload.js +12 -11
  219. package/dist/components/Upload/UploadCore.js +92 -65
  220. package/dist/components/Upload/UploadList.js +177 -105
  221. package/dist/components/VirtualList/VirtualList.js +229 -124
  222. package/dist/components/Watermark/Watermark.js +8 -6
  223. package/dist/css/accordion.css +1 -1
  224. package/dist/css/alert.css +1 -1
  225. package/dist/css/async-section.css +1 -1
  226. package/dist/css/banner.css +1 -1
  227. package/dist/css/bottom-sheet.css +1 -1
  228. package/dist/css/button.css +2 -2
  229. package/dist/css/calendar.css +1 -1
  230. package/dist/css/carousel.css +1 -1
  231. package/dist/css/chat-message.css +1 -1
  232. package/dist/css/checkbox.css +1 -1
  233. package/dist/css/color-picker.css +2 -0
  234. package/dist/css/combobox.css +2 -2
  235. package/dist/css/context-menu.css +1 -1
  236. package/dist/css/dialog.css +1 -1
  237. package/dist/css/drawer.css +1 -1
  238. package/dist/css/dropdown-menu.css +7 -2
  239. package/dist/css/form.css +1 -1
  240. package/dist/css/grid.css +2 -1
  241. package/dist/css/hover-card.css +1 -1
  242. package/dist/css/input.css +1 -1
  243. package/dist/css/menu.css +9 -4
  244. package/dist/css/pagination.css +1 -1
  245. package/dist/css/popover.css +1 -1
  246. package/dist/css/progress.css +1 -1
  247. package/dist/css/radio.css +1 -1
  248. package/dist/css/rating.css +1 -1
  249. package/dist/css/segmented.css +1 -1
  250. package/dist/css/skeleton.css +1 -1
  251. package/dist/css/slider.css +1 -1
  252. package/dist/css/spinner.css +1 -1
  253. package/dist/css/stepper.css +1 -1
  254. package/dist/css/streaming-text.css +1 -1
  255. package/dist/css/switch.css +1 -1
  256. package/dist/css/tabs.css +1 -1
  257. package/dist/css/textarea.css +1 -1
  258. package/dist/css/thinking-indicator.css +1 -1
  259. package/dist/css/time-picker.css +1 -0
  260. package/dist/css/toast.css +1 -1
  261. package/dist/css/toggle.css +1 -1
  262. package/dist/css/tokens.css +1 -1
  263. package/dist/css/tooltip.css +1 -1
  264. package/dist/css/tree.css +2 -1
  265. package/dist/css/upload.css +1 -1
  266. package/dist/css/virtual-list.css +1 -1
  267. package/dist/css-manifest.json +22 -0
  268. package/dist/dates/adapter.js +13 -0
  269. package/dist/dates/gregory.js +44 -0
  270. package/dist/dates/islamic.js +87 -0
  271. package/dist/dates/registry.js +13 -0
  272. package/dist/dates/timezone.js +29 -0
  273. package/dist/design-tokens/cyan-dark.json +355 -0
  274. package/dist/design-tokens/cyan-light.json +355 -0
  275. package/dist/design-tokens/orange-dark.json +355 -0
  276. package/dist/design-tokens/orange-light.json +355 -0
  277. package/dist/design-tokens/rose-dark.json +355 -0
  278. package/dist/design-tokens/rose-light.json +355 -0
  279. package/dist/design-tokens/teal-dark.json +355 -0
  280. package/dist/design-tokens/teal-light.json +355 -0
  281. package/dist/design-tokens/violet-dark.json +355 -0
  282. package/dist/design-tokens/violet-light.json +355 -0
  283. package/dist/form/FormItem.js +71 -63
  284. package/dist/form/FormList.js +6 -6
  285. package/dist/form/form-item-styles.js +7 -0
  286. package/dist/haze-ui.css +63 -48
  287. package/dist/index.js +249 -232
  288. package/dist/mcp-docs.json +1011 -82
  289. package/dist/registry.json +17 -17
  290. package/dist/tokens/index.js +7 -7
  291. package/dist/tokens/motion.js +9 -2
  292. package/dist/tokens/palette.js +244 -84
  293. package/dist/tokens/registry.js +18 -22
  294. package/dist/types/components/Button/Button.d.ts +1 -1
  295. package/dist/types/components/Calendar/Calendar.d.ts +39 -14
  296. package/dist/types/components/Calendar/date.d.ts +51 -0
  297. package/dist/types/components/Calendar/index.d.ts +1 -1
  298. package/dist/types/components/Carousel/Carousel.d.ts +5 -1
  299. package/dist/types/components/Carousel/CarouselSlide.d.ts +3 -3
  300. package/dist/types/components/Chart/Chart.d.ts +13 -6
  301. package/dist/types/components/Chart/chart-elements.d.ts +27 -6
  302. package/dist/types/components/ChatMessage/ChatMessage.d.ts +10 -1
  303. package/dist/types/components/ColorPicker/ColorPicker.d.ts +44 -5
  304. package/dist/types/components/ColorPicker/ColorPickerPanel.d.ts +28 -0
  305. package/dist/types/components/ColorPicker/color-math.d.ts +63 -0
  306. package/dist/types/components/ColorPicker/color-picker-styles.d.ts +50 -0
  307. package/dist/types/components/ConfigProvider/ConfigContext.d.ts +67 -0
  308. package/dist/types/components/ConfigProvider/ConfigProvider.d.ts +25 -0
  309. package/dist/types/components/ConfigProvider/index.d.ts +4 -0
  310. package/dist/types/components/ConfigProvider/useConfigDefaults.d.ts +28 -0
  311. package/dist/types/components/Datepicker/Datepicker.d.ts +23 -10
  312. package/dist/types/components/Datepicker/DatepickerCore.d.ts +40 -10
  313. package/dist/types/components/Datepicker/datetime.d.ts +33 -11
  314. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +12 -2
  315. package/dist/types/components/DropdownMenu/DropdownMenuCheckboxItem.d.ts +26 -0
  316. package/dist/types/components/DropdownMenu/DropdownMenuGroup.d.ts +16 -0
  317. package/dist/types/components/DropdownMenu/DropdownMenuItem.d.ts +7 -1
  318. package/dist/types/components/DropdownMenu/DropdownMenuRadioGroup.d.ts +21 -0
  319. package/dist/types/components/DropdownMenu/DropdownMenuRadioItem.d.ts +22 -0
  320. package/dist/types/components/DropdownMenu/dropdown-menu-item-styles.d.ts +29 -0
  321. package/dist/types/components/DropdownMenu/index.d.ts +9 -1
  322. package/dist/types/components/Fullscreen/Fullscreen.d.ts +1 -0
  323. package/dist/types/components/Grid/Grid.d.ts +8 -1
  324. package/dist/types/components/Grid/GridItem.d.ts +24 -1
  325. package/dist/types/components/Grid/grid-item-styles.d.ts +57 -0
  326. package/dist/types/components/HoverCard/HoverCard.d.ts +1 -1
  327. package/dist/types/components/LocaleProvider/locale.d.ts +24 -0
  328. package/dist/types/components/Menu/Menu.d.ts +11 -2
  329. package/dist/types/components/Menu/MenuCheckboxItem.d.ts +25 -0
  330. package/dist/types/components/Menu/MenuGroup.d.ts +16 -0
  331. package/dist/types/components/Menu/MenuItem.d.ts +7 -1
  332. package/dist/types/components/Menu/MenuRadioGroup.d.ts +20 -0
  333. package/dist/types/components/Menu/MenuRadioItem.d.ts +22 -0
  334. package/dist/types/components/Menu/index.d.ts +9 -1
  335. package/dist/types/components/Menu/menu-item-styles.d.ts +28 -0
  336. package/dist/types/components/NavigationBar/NavLink.d.ts +1 -1
  337. package/dist/types/components/Pagination/Pagination.d.ts +17 -3
  338. package/dist/types/components/Sidebar/Sidebar.d.ts +1 -1
  339. package/dist/types/components/Slider/Slider.d.ts +24 -2
  340. package/dist/types/components/Slider/SliderCore.d.ts +41 -3
  341. package/dist/types/components/StreamingText/StreamingText.d.ts +8 -1
  342. package/dist/types/components/TimePicker/TimePicker.d.ts +36 -4
  343. package/dist/types/components/TimePicker/TimePickerPanel.d.ts +26 -0
  344. package/dist/types/components/TimePicker/index.d.ts +1 -0
  345. package/dist/types/components/TimePicker/time-picker-styles.d.ts +30 -0
  346. package/dist/types/components/TimePicker/time.d.ts +49 -0
  347. package/dist/types/components/Toast/Toast.d.ts +19 -6
  348. package/dist/types/components/Toast/ToastContainer.d.ts +1 -1
  349. package/dist/types/components/Toast/ToastContext.d.ts +22 -2
  350. package/dist/types/components/Toast/index.d.ts +1 -1
  351. package/dist/types/components/Toast/toast.d.ts +20 -14
  352. package/dist/types/components/Toast/useToast.d.ts +14 -4
  353. package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
  354. package/dist/types/components/Tree/SortableTree.d.ts +38 -0
  355. package/dist/types/components/Tree/Tree.d.ts +1 -1
  356. package/dist/types/components/Tree/index.d.ts +2 -0
  357. package/dist/types/components/Tree/sortable-tree-styles.d.ts +36 -0
  358. package/dist/types/components/Tree/sortable-tree-utils.d.ts +40 -0
  359. package/dist/types/components/Upload/Upload.d.ts +17 -10
  360. package/dist/types/components/Upload/UploadCore.d.ts +26 -12
  361. package/dist/types/components/Upload/UploadList.d.ts +10 -7
  362. package/dist/types/components/Upload/index.d.ts +1 -1
  363. package/dist/types/components/Upload/types.d.ts +33 -7
  364. package/dist/types/components/VirtualList/VirtualList.d.ts +79 -26
  365. package/dist/types/components/VirtualList/index.d.ts +1 -1
  366. package/dist/types/dates/adapter.d.ts +74 -0
  367. package/dist/types/dates/gregory.d.ts +10 -0
  368. package/dist/types/dates/index.d.ts +6 -0
  369. package/dist/types/dates/islamic.d.ts +17 -0
  370. package/dist/types/dates/registry.d.ts +13 -0
  371. package/dist/types/dates/timezone.d.ts +36 -0
  372. package/dist/types/form/FormItem.d.ts +31 -1
  373. package/dist/types/form/form-item-styles.d.ts +24 -0
  374. package/dist/types/index.d.ts +19 -11
  375. package/dist/types/tokens/index.d.ts +4 -2
  376. package/dist/types/tokens/motion.d.ts +16 -0
  377. package/dist/types/tokens/palette.d.ts +59 -2
  378. package/dist/types/utils/menuItems.d.ts +126 -0
  379. package/dist/types/utils/menuRadio.d.ts +21 -0
  380. package/dist/utils/floating.js +45 -44
  381. package/dist/utils/menuItems.js +55 -0
  382. package/dist/utils/menuKeyboard.js +31 -31
  383. package/dist/utils/menuRadio.js +28 -0
  384. package/dist/utils/sortable-shared.js +3 -3
  385. package/dist/utils/sortable.js +12 -11
  386. package/package.json +18 -9
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-09-11T22:14:31.966Z",
2
+ "generatedAt": "2026-09-14T15:54:16.071Z",
3
3
  "components": {
4
4
  "Accordion": {
5
5
  "cssFamily": "accordion",
@@ -757,7 +757,8 @@
757
757
  "name": "picker",
758
758
  "type": "CalendarPickerMode",
759
759
  "required": false,
760
- "description": ""
760
+ "default": "'date'",
761
+ "description": "Granularity: 'date' (default), 'week' (whole-ISO-week rows, Monday-first grid, week column forced on), 'month', 'quarter' or 'year'"
761
762
  },
762
763
  {
763
764
  "name": "value",
@@ -826,6 +827,12 @@
826
827
  "type": "(date: string) => void",
827
828
  "required": false,
828
829
  "description": ""
830
+ },
831
+ {
832
+ "name": "cellRender",
833
+ "type": "CalendarCellRender",
834
+ "required": false,
835
+ "description": "Appends custom content inside every picker cell (day numbers, month/quarter/year labels, drill-down grids) — receives the cell's civil date and the mode it renders in"
829
836
  }
830
837
  ]
831
838
  }
@@ -886,6 +893,20 @@
886
893
  "default": "5000",
887
894
  "description": "Auto-play interval in ms"
888
895
  },
896
+ {
897
+ "name": "effect",
898
+ "type": "'slide' | 'fade'",
899
+ "required": false,
900
+ "default": "'slide'",
901
+ "description": "Transition effect: slide (scroll-snap track) or fade (stacked cross-fade)"
902
+ },
903
+ {
904
+ "name": "pauseOnHover",
905
+ "type": "boolean",
906
+ "required": false,
907
+ "default": "false",
908
+ "description": "Pause auto-play while hovered or focused; resume with the remaining time budget"
909
+ },
889
910
  {
890
911
  "name": "className",
891
912
  "type": "string",
@@ -1199,6 +1220,12 @@
1199
1220
  "required": false,
1200
1221
  "description": "Delivery status indicator"
1201
1222
  },
1223
+ {
1224
+ "name": "streaming",
1225
+ "type": "boolean",
1226
+ "required": false,
1227
+ "description": ""
1228
+ },
1202
1229
  {
1203
1230
  "name": "copyable",
1204
1231
  "type": "boolean",
@@ -1500,34 +1527,120 @@
1500
1527
  "description": ""
1501
1528
  }
1502
1529
  ],
1503
- "ColorPickerProps": [
1530
+ "ColorPickerPanelProps": [
1504
1531
  {
1505
1532
  "name": "value",
1506
- "type": "ControlOrValue<string>",
1533
+ "type": "string",
1534
+ "required": true,
1535
+ "description": ""
1536
+ },
1537
+ {
1538
+ "name": "onChange",
1539
+ "type": "(value: string) => void",
1540
+ "required": true,
1541
+ "description": ""
1542
+ },
1543
+ {
1544
+ "name": "onCommit",
1545
+ "type": "(value: string) => void",
1546
+ "required": false,
1547
+ "description": ""
1548
+ },
1549
+ {
1550
+ "name": "format",
1551
+ "type": "ColorFormat",
1552
+ "required": false,
1553
+ "description": ""
1554
+ },
1555
+ {
1556
+ "name": "allowAlpha",
1557
+ "type": "boolean",
1507
1558
  "required": false,
1508
- "description": "Controlled color value (hex)"
1559
+ "description": ""
1509
1560
  },
1510
1561
  {
1511
1562
  "name": "presets",
1512
1563
  "type": "string[]",
1513
1564
  "required": false,
1514
- "description": "Array of preset color hex values"
1565
+ "description": ""
1566
+ },
1567
+ {
1568
+ "name": "recentColors",
1569
+ "type": "string[]",
1570
+ "required": false,
1571
+ "description": ""
1572
+ },
1573
+ {
1574
+ "name": "className",
1575
+ "type": "string",
1576
+ "required": false,
1577
+ "description": ""
1578
+ }
1579
+ ],
1580
+ "ColorPickerProps": [
1581
+ {
1582
+ "name": "value",
1583
+ "type": "ControlOrValue<string>",
1584
+ "required": false,
1585
+ "description": "Color value in any supported format (hex / rgb / hsl); a bare value is the uncontrolled initial color"
1515
1586
  },
1516
1587
  {
1517
1588
  "name": "onChange",
1518
1589
  "type": "(color: string) => void",
1519
1590
  "required": false,
1520
- "description": "Called when color changes"
1591
+ "description": "Value callback — streams continuously while a drag runs (Slider precedent), serialized in format"
1592
+ },
1593
+ {
1594
+ "name": "open",
1595
+ "type": "ControlOrValue<boolean>",
1596
+ "required": false,
1597
+ "description": "Floating panel visibility (controllable; floating mode only)"
1598
+ },
1599
+ {
1600
+ "name": "inline",
1601
+ "type": "boolean",
1602
+ "required": false,
1603
+ "description": "Always-visible panel card instead of trigger + floating panel"
1604
+ },
1605
+ {
1606
+ "name": "format",
1607
+ "type": "ColorFormat",
1608
+ "required": false,
1609
+ "description": "Serialization format of the text field and emitted values; switching it does not re-emit the current value"
1610
+ },
1611
+ {
1612
+ "name": "allowAlpha",
1613
+ "type": "boolean",
1614
+ "required": false,
1615
+ "description": "Adds the alpha rail; opacity below 1 serializes into the value (#rrggbbaa / rgba() / hsla())"
1616
+ },
1617
+ {
1618
+ "name": "presets",
1619
+ "type": "string[]",
1620
+ "required": false,
1621
+ "description": "Preset swatch row above the recent row; any parsable format"
1622
+ },
1623
+ {
1624
+ "name": "recent",
1625
+ "type": "boolean",
1626
+ "required": false,
1627
+ "description": "Tracks recently used colors (last 10, newest first) as internal state"
1521
1628
  },
1522
1629
  {
1523
1630
  "name": "className",
1524
1631
  "type": "string",
1525
1632
  "required": false,
1526
- "description": "Additional CSS class"
1633
+ "description": "Additional CSS class (the panel card)"
1634
+ },
1635
+ {
1636
+ "name": "aria-label",
1637
+ "type": "string",
1638
+ "required": false,
1639
+ "description": "Accessible name of the trigger and the panel; defaults to the locale's \"Pick color\". Set it when more than one picker is on a page"
1527
1640
  },
1528
1641
  {
1529
1642
  "name": "ref",
1530
- "type": "Ref<HTMLInputElement>",
1643
+ "type": "Ref<HTMLDivElement | HTMLButtonElement>",
1531
1644
  "required": false,
1532
1645
  "description": ""
1533
1646
  }
@@ -1930,6 +2043,28 @@
1930
2043
  ]
1931
2044
  }
1932
2045
  },
2046
+ "ConfigProvider": {
2047
+ "cssFamily": "config-provider",
2048
+ "importStatement": "import { default, useConfigDefaults } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/config-provider.css';",
2049
+ "peerDeps": [],
2050
+ "description": "",
2051
+ "props": {
2052
+ "ConfigProviderProps": [
2053
+ {
2054
+ "name": "defaults",
2055
+ "type": "HazeConfig",
2056
+ "required": false,
2057
+ "description": "Component defaults keyed by exported component name (Button / ButtonLink / Toast / Tooltip / HoverCard); nested providers shallow-merge per section, inner wins, explicit props always beat config"
2058
+ },
2059
+ {
2060
+ "name": "children",
2061
+ "type": "ReactNode",
2062
+ "required": true,
2063
+ "description": "Subtree reading the defaults"
2064
+ }
2065
+ ]
2066
+ }
2067
+ },
1933
2068
  "ConfirmDialog": {
1934
2069
  "cssFamily": "confirm-dialog",
1935
2070
  "importStatement": "import { ConfirmDialog } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/confirm-dialog.css';",
@@ -2690,7 +2825,19 @@
2690
2825
  },
2691
2826
  {
2692
2827
  "name": "showTime",
2693
- "type": "boolean",
2828
+ "type": "boolean | { seconds?: boolean | undefined; }",
2829
+ "required": false,
2830
+ "description": ""
2831
+ },
2832
+ {
2833
+ "name": "format",
2834
+ "type": "(date: Date) => string",
2835
+ "required": false,
2836
+ "description": ""
2837
+ },
2838
+ {
2839
+ "name": "parse",
2840
+ "type": "(text: string) => Date | null",
2694
2841
  "required": false,
2695
2842
  "description": ""
2696
2843
  },
@@ -2718,6 +2865,12 @@
2718
2865
  "required": false,
2719
2866
  "description": ""
2720
2867
  },
2868
+ {
2869
+ "name": "cellRender",
2870
+ "type": "CalendarCellRender",
2871
+ "required": false,
2872
+ "description": ""
2873
+ },
2721
2874
  {
2722
2875
  "name": "ref",
2723
2876
  "type": "Ref<HTMLInputElement>",
@@ -2742,7 +2895,8 @@
2742
2895
  "name": "picker",
2743
2896
  "type": "CalendarPickerMode",
2744
2897
  "required": false,
2745
- "description": ""
2898
+ "default": "'date'",
2899
+ "description": "Calendar granularity: 'date' (default), ISO-week 'week', 'month', 'quarter' or 'year'; value serializes per mode (YYYY-MM-DD / YYYY-Www / YYYY-MM / YYYY-Qn / YYYY)"
2746
2900
  },
2747
2901
  {
2748
2902
  "name": "min",
@@ -2770,9 +2924,27 @@
2770
2924
  },
2771
2925
  {
2772
2926
  "name": "showTime",
2773
- "type": "boolean",
2927
+ "type": "boolean | { seconds?: boolean | undefined; }",
2774
2928
  "required": false,
2775
- "description": ""
2929
+ "description": "Adds a time input below the calendar; value serializes as 'YYYY-MM-DD HH:mm' (or 'YYYY-MM-DD HH:mm:ss' with { seconds: true }). Date granularity only"
2930
+ },
2931
+ {
2932
+ "name": "format",
2933
+ "type": "(date: Date) => string",
2934
+ "required": false,
2935
+ "description": "Custom serialization for picks, replacing the built-in value format; pair with parse so controlled values round-trip into the calendar"
2936
+ },
2937
+ {
2938
+ "name": "parse",
2939
+ "type": "(text: string) => Date | null",
2940
+ "required": false,
2941
+ "description": "Reads a custom-formatted value back into the calendar (month anchor, day highlight, time input); null leaves the panel unanchored"
2942
+ },
2943
+ {
2944
+ "name": "cellRender",
2945
+ "type": "CalendarCellRender",
2946
+ "required": false,
2947
+ "description": "Appends custom content inside the panel's picker cells (see Calendar's cellRender)"
2776
2948
  },
2777
2949
  {
2778
2950
  "name": "locale",
@@ -3049,10 +3221,60 @@
3049
3221
  },
3050
3222
  "DropdownMenu": {
3051
3223
  "cssFamily": "dropdown-menu",
3052
- "importStatement": "import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/dropdown-menu.css';",
3224
+ "importStatement": "import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuGroup, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/dropdown-menu.css';",
3053
3225
  "peerDeps": [],
3054
3226
  "description": "Click-triggered floating menu with `DropdownMenuTrigger`/`Content`/`Item`/`Separator` parts.",
3055
3227
  "props": {
3228
+ "DropdownMenuCheckboxItemProps": [
3229
+ {
3230
+ "name": "checked",
3231
+ "type": "ControlOrValue<boolean>",
3232
+ "required": false,
3233
+ "description": ""
3234
+ },
3235
+ {
3236
+ "name": "onCheckedChange",
3237
+ "type": "(checked: boolean) => void",
3238
+ "required": false,
3239
+ "description": ""
3240
+ },
3241
+ {
3242
+ "name": "disabled",
3243
+ "type": "boolean",
3244
+ "required": false,
3245
+ "description": ""
3246
+ },
3247
+ {
3248
+ "name": "danger",
3249
+ "type": "boolean",
3250
+ "required": false,
3251
+ "description": ""
3252
+ },
3253
+ {
3254
+ "name": "icon",
3255
+ "type": "ReactNode",
3256
+ "required": false,
3257
+ "description": ""
3258
+ },
3259
+ {
3260
+ "name": "kbdLabel",
3261
+ "type": "ReactNode",
3262
+ "required": false,
3263
+ "description": ""
3264
+ },
3265
+ {
3266
+ "name": "className",
3267
+ "type": "string",
3268
+ "required": false,
3269
+ "description": ""
3270
+ },
3271
+ {
3272
+ "name": "children",
3273
+ "type": "ReactNode",
3274
+ "required": true,
3275
+ "description": ""
3276
+ }
3277
+ ],
3056
3278
  "DropdownMenuContentProps": [
3057
3279
  {
3058
3280
  "name": "children",
@@ -3074,6 +3296,26 @@
3074
3296
  "description": "Additional CSS class"
3075
3297
  }
3076
3298
  ],
3299
+ "DropdownMenuGroupProps": [
3300
+ {
3301
+ "name": "label",
3302
+ "type": "ReactNode",
3303
+ "required": true,
3304
+ "description": ""
3305
+ },
3306
+ {
3307
+ "name": "className",
3308
+ "type": "string",
3309
+ "required": false,
3310
+ "description": ""
3311
+ },
3312
+ {
3313
+ "name": "children",
3314
+ "type": "ReactNode",
3315
+ "required": true,
3316
+ "description": ""
3317
+ }
3318
+ ],
3077
3319
  "DropdownMenuItemProps": [
3078
3320
  {
3079
3321
  "name": "children",
@@ -3094,6 +3336,24 @@
3094
3336
  "default": "false",
3095
3337
  "description": "Disable the item"
3096
3338
  },
3339
+ {
3340
+ "name": "danger",
3341
+ "type": "boolean",
3342
+ "required": false,
3343
+ "description": ""
3344
+ },
3345
+ {
3346
+ "name": "icon",
3347
+ "type": "ReactNode",
3348
+ "required": false,
3349
+ "description": ""
3350
+ },
3351
+ {
3352
+ "name": "kbdLabel",
3353
+ "type": "ReactNode",
3354
+ "required": false,
3355
+ "description": ""
3356
+ },
3097
3357
  {
3098
3358
  "name": "className",
3099
3359
  "type": "string",
@@ -3120,10 +3380,16 @@
3120
3380
  "required": false,
3121
3381
  "description": ""
3122
3382
  },
3383
+ {
3384
+ "name": "items",
3385
+ "type": "MenuDataItem[]",
3386
+ "required": false,
3387
+ "description": ""
3388
+ },
3123
3389
  {
3124
3390
  "name": "children",
3125
3391
  "type": "ReactNode",
3126
- "required": true,
3392
+ "required": false,
3127
3393
  "description": "Trigger and Content elements"
3128
3394
  },
3129
3395
  {
@@ -3139,38 +3405,22 @@
3139
3405
  "description": ""
3140
3406
  }
3141
3407
  ],
3142
- "DropdownMenuSeparatorProps": [
3143
- {
3144
- "name": "className",
3145
- "type": "string",
3146
- "required": false,
3147
- "description": ""
3148
- }
3149
- ],
3150
- "DropdownMenuSubContentProps": [
3408
+ "DropdownMenuRadioGroupProps": [
3151
3409
  {
3152
- "name": "className",
3153
- "type": "string",
3410
+ "name": "value",
3411
+ "type": "ControlOrValue<string>",
3154
3412
  "required": false,
3155
3413
  "description": ""
3156
3414
  },
3157
3415
  {
3158
- "name": "children",
3159
- "type": "ReactNode",
3160
- "required": true,
3161
- "description": ""
3162
- }
3163
- ],
3164
- "DropdownMenuSubProps": [
3165
- {
3166
- "name": "open",
3167
- "type": "ControlOrValue<boolean>",
3416
+ "name": "onValueChange",
3417
+ "type": "(value: string) => void",
3168
3418
  "required": false,
3169
3419
  "description": ""
3170
3420
  },
3171
3421
  {
3172
- "name": "onOpenChange",
3173
- "type": "(open: boolean) => void",
3422
+ "name": "label",
3423
+ "type": "ReactNode",
3174
3424
  "required": false,
3175
3425
  "description": ""
3176
3426
  },
@@ -3187,12 +3437,104 @@
3187
3437
  "description": ""
3188
3438
  }
3189
3439
  ],
3190
- "DropdownMenuSubTriggerProps": [
3440
+ "DropdownMenuRadioItemProps": [
3191
3441
  {
3192
- "name": "disabled",
3193
- "type": "boolean",
3194
- "required": false,
3195
- "description": ""
3442
+ "name": "value",
3443
+ "type": "string",
3444
+ "required": true,
3445
+ "description": ""
3446
+ },
3447
+ {
3448
+ "name": "disabled",
3449
+ "type": "boolean",
3450
+ "required": false,
3451
+ "description": ""
3452
+ },
3453
+ {
3454
+ "name": "danger",
3455
+ "type": "boolean",
3456
+ "required": false,
3457
+ "description": ""
3458
+ },
3459
+ {
3460
+ "name": "icon",
3461
+ "type": "ReactNode",
3462
+ "required": false,
3463
+ "description": ""
3464
+ },
3465
+ {
3466
+ "name": "kbdLabel",
3467
+ "type": "ReactNode",
3468
+ "required": false,
3469
+ "description": ""
3470
+ },
3471
+ {
3472
+ "name": "className",
3473
+ "type": "string",
3474
+ "required": false,
3475
+ "description": ""
3476
+ },
3477
+ {
3478
+ "name": "children",
3479
+ "type": "ReactNode",
3480
+ "required": true,
3481
+ "description": ""
3482
+ }
3483
+ ],
3484
+ "DropdownMenuSeparatorProps": [
3485
+ {
3486
+ "name": "className",
3487
+ "type": "string",
3488
+ "required": false,
3489
+ "description": ""
3490
+ }
3491
+ ],
3492
+ "DropdownMenuSubContentProps": [
3493
+ {
3494
+ "name": "className",
3495
+ "type": "string",
3496
+ "required": false,
3497
+ "description": ""
3498
+ },
3499
+ {
3500
+ "name": "children",
3501
+ "type": "ReactNode",
3502
+ "required": true,
3503
+ "description": ""
3504
+ }
3505
+ ],
3506
+ "DropdownMenuSubProps": [
3507
+ {
3508
+ "name": "open",
3509
+ "type": "ControlOrValue<boolean>",
3510
+ "required": false,
3511
+ "description": ""
3512
+ },
3513
+ {
3514
+ "name": "onOpenChange",
3515
+ "type": "(open: boolean) => void",
3516
+ "required": false,
3517
+ "description": ""
3518
+ },
3519
+ {
3520
+ "name": "className",
3521
+ "type": "string",
3522
+ "required": false,
3523
+ "description": ""
3524
+ },
3525
+ {
3526
+ "name": "children",
3527
+ "type": "ReactNode",
3528
+ "required": true,
3529
+ "description": ""
3530
+ }
3531
+ ],
3532
+ "DropdownMenuSubTriggerProps": [
3533
+ {
3534
+ "name": "disabled",
3535
+ "type": "boolean",
3536
+ "required": false,
3537
+ "description": ""
3196
3538
  },
3197
3539
  {
3198
3540
  "name": "className",
@@ -3620,7 +3962,25 @@
3620
3962
  "name": "start",
3621
3963
  "type": "number",
3622
3964
  "required": false,
3623
- "description": "Grid column start position"
3965
+ "description": "Grid column start line; preserved across sm/md/lg breakpoints (queries override only the span)"
3966
+ },
3967
+ {
3968
+ "name": "sm",
3969
+ "type": "1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12",
3970
+ "required": false,
3971
+ "description": "Columns to span once the grid container is at least 384px wide; only takes effect inside a responsive Grid, otherwise degrades to span"
3972
+ },
3973
+ {
3974
+ "name": "md",
3975
+ "type": "1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12",
3976
+ "required": false,
3977
+ "description": "Columns to span once the grid container is at least 576px wide; only takes effect inside a responsive Grid, otherwise degrades to span"
3978
+ },
3979
+ {
3980
+ "name": "lg",
3981
+ "type": "1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12",
3982
+ "required": false,
3983
+ "description": "Columns to span once the grid container is at least 768px wide; only takes effect inside a responsive Grid, otherwise degrades to span"
3624
3984
  },
3625
3985
  {
3626
3986
  "name": "className",
@@ -3650,6 +4010,13 @@
3650
4010
  "default": "4",
3651
4011
  "description": "Gap token index (--haze-space-N)"
3652
4012
  },
4013
+ {
4014
+ "name": "responsive",
4015
+ "type": "boolean",
4016
+ "required": false,
4017
+ "default": "false",
4018
+ "description": "Enable a container-query context (container-type: inline-size) so GridItem sm/md/lg breakpoints respond to the grid's own width instead of the viewport"
4019
+ },
3653
4020
  {
3654
4021
  "name": "className",
3655
4022
  "type": "string",
@@ -4382,10 +4749,80 @@
4382
4749
  },
4383
4750
  "Menu": {
4384
4751
  "cssFamily": "menu",
4385
- "importStatement": "import { Menu, MenuItem, MenuDivider, MenuSub, MenuSubTrigger, MenuSubContent } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/menu.css';",
4752
+ "importStatement": "import { Menu, MenuItem, MenuCheckboxItem, MenuRadioGroup, MenuRadioItem, MenuGroup, MenuDivider, MenuSub, MenuSubTrigger, MenuSubContent } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/menu.css';",
4386
4753
  "peerDeps": [],
4387
4754
  "description": "Lightweight toggle menu with a trigger and statically positioned panel (`MenuItem`, `MenuDivider`).",
4388
4755
  "props": {
4756
+ "MenuCheckboxItemProps": [
4757
+ {
4758
+ "name": "checked",
4759
+ "type": "ControlOrValue<boolean>",
4760
+ "required": false,
4761
+ "description": ""
4762
+ },
4763
+ {
4764
+ "name": "onCheckedChange",
4765
+ "type": "(checked: boolean) => void",
4766
+ "required": false,
4767
+ "description": ""
4768
+ },
4769
+ {
4770
+ "name": "disabled",
4771
+ "type": "boolean",
4772
+ "required": false,
4773
+ "description": ""
4774
+ },
4775
+ {
4776
+ "name": "danger",
4777
+ "type": "boolean",
4778
+ "required": false,
4779
+ "description": ""
4780
+ },
4781
+ {
4782
+ "name": "icon",
4783
+ "type": "ReactNode",
4784
+ "required": false,
4785
+ "description": ""
4786
+ },
4787
+ {
4788
+ "name": "kbdLabel",
4789
+ "type": "ReactNode",
4790
+ "required": false,
4791
+ "description": ""
4792
+ },
4793
+ {
4794
+ "name": "className",
4795
+ "type": "string",
4796
+ "required": false,
4797
+ "description": ""
4798
+ },
4799
+ {
4800
+ "name": "children",
4801
+ "type": "ReactNode",
4802
+ "required": true,
4803
+ "description": ""
4804
+ }
4805
+ ],
4806
+ "MenuGroupProps": [
4807
+ {
4808
+ "name": "label",
4809
+ "type": "ReactNode",
4810
+ "required": true,
4811
+ "description": ""
4812
+ },
4813
+ {
4814
+ "name": "className",
4815
+ "type": "string",
4816
+ "required": false,
4817
+ "description": ""
4818
+ },
4819
+ {
4820
+ "name": "children",
4821
+ "type": "ReactNode",
4822
+ "required": true,
4823
+ "description": ""
4824
+ }
4825
+ ],
4389
4826
  "MenuItemProps": [
4390
4827
  {
4391
4828
  "name": "onSelect",
@@ -4400,6 +4837,24 @@
4400
4837
  "default": "false",
4401
4838
  "description": "Disable the item"
4402
4839
  },
4840
+ {
4841
+ "name": "danger",
4842
+ "type": "boolean",
4843
+ "required": false,
4844
+ "description": ""
4845
+ },
4846
+ {
4847
+ "name": "icon",
4848
+ "type": "ReactNode",
4849
+ "required": false,
4850
+ "description": ""
4851
+ },
4852
+ {
4853
+ "name": "kbdLabel",
4854
+ "type": "ReactNode",
4855
+ "required": false,
4856
+ "description": ""
4857
+ },
4403
4858
  {
4404
4859
  "name": "className",
4405
4860
  "type": "string",
@@ -4427,6 +4882,12 @@
4427
4882
  "required": false,
4428
4883
  "description": "Trigger element"
4429
4884
  },
4885
+ {
4886
+ "name": "items",
4887
+ "type": "MenuDataItem[]",
4888
+ "required": false,
4889
+ "description": ""
4890
+ },
4430
4891
  {
4431
4892
  "name": "className",
4432
4893
  "type": "string",
@@ -4436,10 +4897,86 @@
4436
4897
  {
4437
4898
  "name": "children",
4438
4899
  "type": "ReactNode",
4439
- "required": true,
4900
+ "required": false,
4440
4901
  "description": "MenuItem and MenuDivider elements"
4441
4902
  }
4442
4903
  ],
4904
+ "MenuRadioGroupProps": [
4905
+ {
4906
+ "name": "value",
4907
+ "type": "ControlOrValue<string>",
4908
+ "required": false,
4909
+ "description": ""
4910
+ },
4911
+ {
4912
+ "name": "onValueChange",
4913
+ "type": "(value: string) => void",
4914
+ "required": false,
4915
+ "description": ""
4916
+ },
4917
+ {
4918
+ "name": "label",
4919
+ "type": "ReactNode",
4920
+ "required": false,
4921
+ "description": ""
4922
+ },
4923
+ {
4924
+ "name": "className",
4925
+ "type": "string",
4926
+ "required": false,
4927
+ "description": ""
4928
+ },
4929
+ {
4930
+ "name": "children",
4931
+ "type": "ReactNode",
4932
+ "required": true,
4933
+ "description": ""
4934
+ }
4935
+ ],
4936
+ "MenuRadioItemProps": [
4937
+ {
4938
+ "name": "value",
4939
+ "type": "string",
4940
+ "required": true,
4941
+ "description": ""
4942
+ },
4943
+ {
4944
+ "name": "disabled",
4945
+ "type": "boolean",
4946
+ "required": false,
4947
+ "description": ""
4948
+ },
4949
+ {
4950
+ "name": "danger",
4951
+ "type": "boolean",
4952
+ "required": false,
4953
+ "description": ""
4954
+ },
4955
+ {
4956
+ "name": "icon",
4957
+ "type": "ReactNode",
4958
+ "required": false,
4959
+ "description": ""
4960
+ },
4961
+ {
4962
+ "name": "kbdLabel",
4963
+ "type": "ReactNode",
4964
+ "required": false,
4965
+ "description": ""
4966
+ },
4967
+ {
4968
+ "name": "className",
4969
+ "type": "string",
4970
+ "required": false,
4971
+ "description": ""
4972
+ },
4973
+ {
4974
+ "name": "children",
4975
+ "type": "ReactNode",
4976
+ "required": true,
4977
+ "description": ""
4978
+ }
4979
+ ],
4443
4980
  "MenuSubContentProps": [
4444
4981
  {
4445
4982
  "name": "className",
@@ -4815,10 +5352,56 @@
4815
5352
  },
4816
5353
  {
4817
5354
  "name": "pageSize",
4818
- "type": "number",
5355
+ "type": "ControlOrValue<number>",
4819
5356
  "required": false,
4820
5357
  "default": "10",
4821
- "description": "Items per page"
5358
+ "description": "Items per page (controlled)"
5359
+ },
5360
+ {
5361
+ "name": "pageSizeOptions",
5362
+ "type": "number[]",
5363
+ "required": false,
5364
+ "description": "Page sizes offered by the size changer (showSizeChanger); defaults to [10, 20, 50, 100]. The current pageSize is folded in if missing."
5365
+ },
5366
+ {
5367
+ "name": "showSizeChanger",
5368
+ "type": "boolean",
5369
+ "required": false,
5370
+ "default": "false",
5371
+ "description": "Renders a page-size select; changing it resets to page 1"
5372
+ },
5373
+ {
5374
+ "name": "showQuickJumper",
5375
+ "type": "boolean",
5376
+ "required": false,
5377
+ "default": "false",
5378
+ "description": "Renders a jump-to-page input that navigates on Enter (clamped to bounds). Ignored in simple mode."
5379
+ },
5380
+ {
5381
+ "name": "showTotal",
5382
+ "type": "(total: number, range: [number, number]) => ReactNode",
5383
+ "required": false,
5384
+ "description": "Renders a summary of the total and the current page's item range"
5385
+ },
5386
+ {
5387
+ "name": "simple",
5388
+ "type": "boolean",
5389
+ "required": false,
5390
+ "default": "false",
5391
+ "description": "Minimal mode: page input plus prev/next instead of the page list"
5392
+ },
5393
+ {
5394
+ "name": "ellipsisJump",
5395
+ "type": "boolean",
5396
+ "required": false,
5397
+ "default": "false",
5398
+ "description": "Turns the ellipsis markers into buttons jumping ±5 pages (clamped)"
5399
+ },
5400
+ {
5401
+ "name": "onPageChange",
5402
+ "type": "(page: number, pageSize: number) => void",
5403
+ "required": false,
5404
+ "description": "Called for every page jump, ellipsis jump and page-size change"
4822
5405
  },
4823
5406
  {
4824
5407
  "name": "size",
@@ -6119,6 +6702,36 @@
6119
6702
  "required": false,
6120
6703
  "description": ""
6121
6704
  },
6705
+ {
6706
+ "name": "tooltip",
6707
+ "type": "boolean",
6708
+ "required": false,
6709
+ "description": ""
6710
+ },
6711
+ {
6712
+ "name": "tooltipFormatter",
6713
+ "type": "(value: number) => ReactNode",
6714
+ "required": false,
6715
+ "description": ""
6716
+ },
6717
+ {
6718
+ "name": "marks",
6719
+ "type": "Record<number, ReactNode>",
6720
+ "required": false,
6721
+ "description": ""
6722
+ },
6723
+ {
6724
+ "name": "vertical",
6725
+ "type": "boolean",
6726
+ "required": false,
6727
+ "description": ""
6728
+ },
6729
+ {
6730
+ "name": "step",
6731
+ "type": "number | null",
6732
+ "required": false,
6733
+ "description": ""
6734
+ },
6122
6735
  {
6123
6736
  "name": "className",
6124
6737
  "type": "string",
@@ -6163,6 +6776,39 @@
6163
6776
  "required": false,
6164
6777
  "description": ""
6165
6778
  },
6779
+ {
6780
+ "name": "tooltip",
6781
+ "type": "boolean",
6782
+ "required": false,
6783
+ "default": "false",
6784
+ "description": "Show a value bubble over the active thumb while dragging or focused (aria-hidden; the native input keeps announcing the value)"
6785
+ },
6786
+ {
6787
+ "name": "tooltipFormatter",
6788
+ "type": "(value: number) => ReactNode",
6789
+ "required": false,
6790
+ "description": "Formats the tooltip bubble content; defaults to the raw number"
6791
+ },
6792
+ {
6793
+ "name": "marks",
6794
+ "type": "Record<number, ReactNode>",
6795
+ "required": false,
6796
+ "description": "Tick labels under the track; clicking one moves the nearest thumb onto it"
6797
+ },
6798
+ {
6799
+ "name": "vertical",
6800
+ "type": "boolean",
6801
+ "required": false,
6802
+ "default": "false",
6803
+ "description": "Vertical orientation (bottom-to-top) via `writing-mode: vertical-lr; direction: rtl`; track length defaults to calc(var(--haze-space-16) * 2), override with --haze-slider-track"
6804
+ },
6805
+ {
6806
+ "name": "step",
6807
+ "type": "number | null",
6808
+ "required": false,
6809
+ "default": "1",
6810
+ "description": "Step increment; `null` (with `marks`) restricts the selectable values to the mark keys — every change snaps to the nearest mark"
6811
+ },
6166
6812
  {
6167
6813
  "name": "ref",
6168
6814
  "type": "Ref<HTMLInputElement>",
@@ -6183,13 +6829,6 @@
6183
6829
  "default": "100",
6184
6830
  "description": "Maximum value"
6185
6831
  },
6186
- {
6187
- "name": "step",
6188
- "type": "number",
6189
- "required": false,
6190
- "default": "1",
6191
- "description": "Step increment"
6192
- },
6193
6832
  {
6194
6833
  "name": "disabled",
6195
6834
  "type": "boolean",
@@ -6474,8 +7113,14 @@
6474
7113
  "name": "speed",
6475
7114
  "type": "number",
6476
7115
  "required": false,
6477
- "default": "20",
6478
- "description": "Milliseconds between characters"
7116
+ "default": "20",
7117
+ "description": "Milliseconds between characters"
7118
+ },
7119
+ {
7120
+ "name": "announceInterval",
7121
+ "type": "number",
7122
+ "required": false,
7123
+ "description": ""
6479
7124
  },
6480
7125
  {
6481
7126
  "name": "onComplete",
@@ -7350,13 +7995,67 @@
7350
7995
  "name": "value",
7351
7996
  "type": "ControlOrValue<string>",
7352
7997
  "required": false,
7353
- "description": "Controlled time value"
7998
+ "description": "Controlled time value — 'HH:mm' or 'HH:mm:ss' per format"
7999
+ },
8000
+ {
8001
+ "name": "open",
8002
+ "type": "ControlOrValue<boolean>",
8003
+ "required": false,
8004
+ "description": "Panel visibility; defaults to the trigger's own toggle state"
7354
8005
  },
7355
8006
  {
7356
8007
  "name": "onChange",
7357
8008
  "type": "(value: string) => void",
7358
8009
  "required": false,
7359
- "description": "Called when time changes"
8010
+ "description": "Called when the time changes"
8011
+ },
8012
+ {
8013
+ "name": "format",
8014
+ "type": "TimePickerFormat",
8015
+ "required": false,
8016
+ "default": "'HH:mm'",
8017
+ "description": "Column granularity and the value's serialization shape; 'HH:mm:ss' adds a second column"
8018
+ },
8019
+ {
8020
+ "name": "hourStep",
8021
+ "type": "number",
8022
+ "required": false,
8023
+ "default": "1",
8024
+ "description": "Hour column step — only multiples of it are offered (trigger arrows step by it too)"
8025
+ },
8026
+ {
8027
+ "name": "minuteStep",
8028
+ "type": "number",
8029
+ "required": false,
8030
+ "default": "1",
8031
+ "description": "Minute column step — only multiples of it are offered"
8032
+ },
8033
+ {
8034
+ "name": "secondStep",
8035
+ "type": "number",
8036
+ "required": false,
8037
+ "default": "1",
8038
+ "description": "Second column step — only multiples of it are offered"
8039
+ },
8040
+ {
8041
+ "name": "use12Hours",
8042
+ "type": "boolean",
8043
+ "required": false,
8044
+ "default": "false",
8045
+ "description": "Presents a 12-hour clock column plus an AM/PM column; the value stays 24-hour 'HH:mm[:ss]'"
8046
+ },
8047
+ {
8048
+ "name": "disabledTime",
8049
+ "type": "(parts: TimeParts) => boolean",
8050
+ "required": false,
8051
+ "description": "Disables candidate times on the columns; each candidate is judged against the currently selected parts of the other fields"
8052
+ },
8053
+ {
8054
+ "name": "native",
8055
+ "type": "boolean",
8056
+ "required": false,
8057
+ "default": "false",
8058
+ "description": "Falls back to the bare native <input type=\"time\"> form (TimePickerCore); the panel props do not apply"
7360
8059
  },
7361
8060
  {
7362
8061
  "name": "placeholder",
@@ -7368,7 +8067,7 @@
7368
8067
  "name": "className",
7369
8068
  "type": "string",
7370
8069
  "required": false,
7371
- "description": "Additional CSS class"
8070
+ "description": "Additional CSS class (on the wrapper; the native form puts it on the input)"
7372
8071
  },
7373
8072
  {
7374
8073
  "name": "ref",
@@ -7475,33 +8174,52 @@
7475
8174
  "ToastProps": [
7476
8175
  {
7477
8176
  "name": "variant",
7478
- "type": "'info' | 'success' | 'warning' | 'danger'",
8177
+ "type": "'info' | 'success' | 'warning' | 'danger' | 'loading'",
7479
8178
  "required": false,
7480
- "description": ""
8179
+ "default": "'info'",
8180
+ "description": "Color variant; loading renders the spinner glyph (usually fired via toast.loading())"
8181
+ },
8182
+ {
8183
+ "name": "action",
8184
+ "type": "ToastAction",
8185
+ "required": false,
8186
+ "description": "Action button between the message and the dismiss × — { label, onClick, close? }; close defaults to true (dismisses right after onClick)"
8187
+ },
8188
+ {
8189
+ "name": "title",
8190
+ "type": "ReactNode",
8191
+ "required": false,
8192
+ "description": "Bold first line rendered above the message"
7481
8193
  },
7482
8194
  {
7483
8195
  "name": "onClose",
7484
8196
  "type": "() => void",
7485
8197
  "required": true,
7486
- "description": ""
8198
+ "description": "Runs when the toast is dismissed (× button or countdown expiry)"
7487
8199
  },
7488
8200
  {
7489
8201
  "name": "duration",
7490
8202
  "type": "number",
7491
8203
  "required": true,
7492
- "description": ""
8204
+ "description": "Auto-dismiss delay in ms; 0 keeps the toast until dismissed"
7493
8205
  },
7494
8206
  {
7495
8207
  "name": "children",
7496
8208
  "type": "ReactNode",
7497
8209
  "required": true,
7498
- "description": ""
8210
+ "description": "Toast message"
7499
8211
  },
7500
8212
  {
7501
8213
  "name": "classNames",
7502
8214
  "type": "ToastClassNames",
7503
8215
  "required": false,
7504
- "description": ""
8216
+ "description": "Semantic slot classes — viewport (container) / item / content / action / title / close"
8217
+ },
8218
+ {
8219
+ "name": "className",
8220
+ "type": "string",
8221
+ "required": false,
8222
+ "description": "Additional CSS class"
7505
8223
  }
7506
8224
  ]
7507
8225
  }
@@ -7766,7 +8484,8 @@
7766
8484
  "name": "delay",
7767
8485
  "type": "number",
7768
8486
  "required": false,
7769
- "description": ""
8487
+ "default": "150",
8488
+ "description": "Hover delay in ms before showing; defaults to 150 or the ConfigProvider defaults.Tooltip.delay value"
7770
8489
  },
7771
8490
  {
7772
8491
  "name": "open",
@@ -7929,10 +8648,162 @@
7929
8648
  },
7930
8649
  "Tree": {
7931
8650
  "cssFamily": "tree",
7932
- "importStatement": "import { Tree } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/tree.css';",
8651
+ "importStatement": "import { Tree, SortableTree } from 'haze-ui';\nimport 'haze-ui/css/tokens.css';\nimport 'haze-ui/css/tree.css';",
7933
8652
  "peerDeps": [],
7934
8653
  "description": "Hierarchical tree with expand, select, check state, async `loadData` and `searchValue` filtering.",
7935
8654
  "props": {
8655
+ "SortableTreeProps": [
8656
+ {
8657
+ "name": "onMove",
8658
+ "type": "(info: SortableTreeMoveInfo) => void",
8659
+ "required": false,
8660
+ "description": ""
8661
+ },
8662
+ {
8663
+ "name": "dragHandle",
8664
+ "type": "boolean",
8665
+ "required": false,
8666
+ "description": ""
8667
+ },
8668
+ {
8669
+ "name": "className",
8670
+ "type": "string",
8671
+ "required": false,
8672
+ "description": ""
8673
+ },
8674
+ {
8675
+ "name": "onSelect",
8676
+ "type": "(selectedKeys: string[], info: { selected: boolean; selectedNodes: TreeNodeData[]; node: TreeNodeData; }) => void",
8677
+ "required": false,
8678
+ "description": ""
8679
+ },
8680
+ {
8681
+ "name": "disabled",
8682
+ "type": "boolean",
8683
+ "required": false,
8684
+ "description": ""
8685
+ },
8686
+ {
8687
+ "name": "multiple",
8688
+ "type": "boolean",
8689
+ "required": false,
8690
+ "description": ""
8691
+ },
8692
+ {
8693
+ "name": "treeData",
8694
+ "type": "TreeNodeData[]",
8695
+ "required": true,
8696
+ "description": ""
8697
+ },
8698
+ {
8699
+ "name": "checkable",
8700
+ "type": "boolean",
8701
+ "required": false,
8702
+ "description": ""
8703
+ },
8704
+ {
8705
+ "name": "checkStrictly",
8706
+ "type": "boolean",
8707
+ "required": false,
8708
+ "description": ""
8709
+ },
8710
+ {
8711
+ "name": "selectable",
8712
+ "type": "boolean",
8713
+ "required": false,
8714
+ "description": ""
8715
+ },
8716
+ {
8717
+ "name": "blockNode",
8718
+ "type": "boolean",
8719
+ "required": false,
8720
+ "description": ""
8721
+ },
8722
+ {
8723
+ "name": "showLine",
8724
+ "type": "boolean",
8725
+ "required": false,
8726
+ "description": ""
8727
+ },
8728
+ {
8729
+ "name": "showIcon",
8730
+ "type": "boolean",
8731
+ "required": false,
8732
+ "description": ""
8733
+ },
8734
+ {
8735
+ "name": "switcherIcon",
8736
+ "type": "ReactNode",
8737
+ "required": false,
8738
+ "description": ""
8739
+ },
8740
+ {
8741
+ "name": "loadingIcon",
8742
+ "type": "ReactNode",
8743
+ "required": false,
8744
+ "description": ""
8745
+ },
8746
+ {
8747
+ "name": "titleRender",
8748
+ "type": "(node: TreeNodeData) => ReactNode",
8749
+ "required": false,
8750
+ "description": ""
8751
+ },
8752
+ {
8753
+ "name": "iconRender",
8754
+ "type": "(node: TreeNodeData) => ReactNode",
8755
+ "required": false,
8756
+ "description": ""
8757
+ },
8758
+ {
8759
+ "name": "virtualized",
8760
+ "type": "boolean | TreeVirtualizedConfig",
8761
+ "required": false,
8762
+ "description": ""
8763
+ },
8764
+ {
8765
+ "name": "loadData",
8766
+ "type": "(node: TreeNodeData) => Promise<TreeNodeData[]>",
8767
+ "required": false,
8768
+ "description": ""
8769
+ },
8770
+ {
8771
+ "name": "searchValue",
8772
+ "type": "string",
8773
+ "required": false,
8774
+ "description": ""
8775
+ },
8776
+ {
8777
+ "name": "expandedKeys",
8778
+ "type": "ControlOrValue<string[]>",
8779
+ "required": false,
8780
+ "description": ""
8781
+ },
8782
+ {
8783
+ "name": "selectedKeys",
8784
+ "type": "ControlOrValue<string[]>",
8785
+ "required": false,
8786
+ "description": ""
8787
+ },
8788
+ {
8789
+ "name": "checkedKeys",
8790
+ "type": "ControlOrValue<string[]>",
8791
+ "required": false,
8792
+ "description": ""
8793
+ },
8794
+ {
8795
+ "name": "onExpand",
8796
+ "type": "(expandedKeys: string[], info: { expanded: boolean; node: TreeNodeData; }) => void",
8797
+ "required": false,
8798
+ "description": ""
8799
+ },
8800
+ {
8801
+ "name": "onCheck",
8802
+ "type": "(checkedKeys: string[] | { checked: string[]; halfChecked: string[]; }, info: { checked: boolean; checkedNodes: TreeNodeData[]; node: TreeNodeData; halfCheckedKeys: string[]; }) => void",
8803
+ "required": false,
8804
+ "description": ""
8805
+ }
8806
+ ],
7936
8807
  "TreeProps": [
7937
8808
  {
7938
8809
  "name": "treeData",
@@ -8038,6 +8909,18 @@
8038
8909
  "required": false,
8039
8910
  "description": ""
8040
8911
  },
8912
+ {
8913
+ "name": "rowWrap",
8914
+ "type": "(row: ReactNode, node: TreeNodeData) => ReactNode",
8915
+ "required": false,
8916
+ "description": ""
8917
+ },
8918
+ {
8919
+ "name": "keyboardNavigation",
8920
+ "type": "boolean",
8921
+ "required": false,
8922
+ "description": ""
8923
+ },
8041
8924
  {
8042
8925
  "name": "expandedKeys",
8043
8926
  "type": "ControlOrValue<string[]>",
@@ -8380,13 +9263,13 @@
8380
9263
  "UploadCoreProps": [
8381
9264
  {
8382
9265
  "name": "value",
8383
- "type": "File[]",
9266
+ "type": "UploadValueItem[]",
8384
9267
  "required": true,
8385
9268
  "description": ""
8386
9269
  },
8387
9270
  {
8388
9271
  "name": "onChange",
8389
- "type": "(files: File[]) => void",
9272
+ "type": "(files: UploadValueItem[]) => void",
8390
9273
  "required": true,
8391
9274
  "description": ""
8392
9275
  },
@@ -8470,7 +9353,13 @@
8470
9353
  },
8471
9354
  {
8472
9355
  "name": "listType",
8473
- "type": "'text' | 'picture-card'",
9356
+ "type": "'picture' | 'text' | 'picture-card'",
9357
+ "required": false,
9358
+ "description": ""
9359
+ },
9360
+ {
9361
+ "name": "onPreview",
9362
+ "type": "(file: UploadValueItem) => void",
8474
9363
  "required": false,
8475
9364
  "description": ""
8476
9365
  },
@@ -8520,7 +9409,7 @@
8520
9409
  },
8521
9410
  {
8522
9411
  "name": "listType",
8523
- "type": "'text' | 'picture-card'",
9412
+ "type": "'picture' | 'text' | 'picture-card'",
8524
9413
  "required": false,
8525
9414
  "description": ""
8526
9415
  },
@@ -8536,21 +9425,27 @@
8536
9425
  "required": false,
8537
9426
  "description": ""
8538
9427
  },
9428
+ {
9429
+ "name": "onPreview",
9430
+ "type": "(file: UploadValueItem) => void",
9431
+ "required": false,
9432
+ "description": ""
9433
+ },
8539
9434
  {
8540
9435
  "name": "onRemove",
8541
- "type": "(file: File) => void",
9436
+ "type": "(file: UploadValueItem) => void",
8542
9437
  "required": true,
8543
9438
  "description": ""
8544
9439
  },
8545
9440
  {
8546
9441
  "name": "onRetry",
8547
- "type": "(file: File) => void",
9442
+ "type": "(file: UploadValueItem) => void",
8548
9443
  "required": true,
8549
9444
  "description": ""
8550
9445
  },
8551
9446
  {
8552
9447
  "name": "onCancel",
8553
- "type": "(file: File) => void",
9448
+ "type": "(file: UploadValueItem) => void",
8554
9449
  "required": true,
8555
9450
  "description": ""
8556
9451
  }
@@ -8558,9 +9453,9 @@
8558
9453
  "UploadProps": [
8559
9454
  {
8560
9455
  "name": "value",
8561
- "type": "ControlOrValue<File[]>",
9456
+ "type": "ControlOrValue<UploadValueItem[]>",
8562
9457
  "required": false,
8563
- "description": ""
9458
+ "description": "Selected files — local File picks mixed freely with UploadFile echo entries (files already on the server); uncontrolled (accumulating internally) when omitted"
8564
9459
  },
8565
9460
  {
8566
9461
  "name": "accept",
@@ -8639,13 +9534,21 @@
8639
9534
  "name": "showUploadList",
8640
9535
  "type": "boolean | { itemRender?: UploadListItemRender | undefined; }",
8641
9536
  "required": false,
8642
- "description": ""
9537
+ "default": "false",
9538
+ "description": "Renders the built-in file list below the zone: live progress, cancel while uploading, retry + remove on error, per-state actions"
8643
9539
  },
8644
9540
  {
8645
9541
  "name": "listType",
8646
- "type": "'text' | 'picture-card'",
9542
+ "type": "'picture' | 'text' | 'picture-card'",
8647
9543
  "required": false,
8648
- "description": ""
9544
+ "default": "'text'",
9545
+ "description": "Rendering style of the built-in list: text rows; picture — text rows with a 32px inline thumbnail; picture-card — a grid of square thumbnail cards"
9546
+ },
9547
+ {
9548
+ "name": "onPreview",
9549
+ "type": "(file: UploadValueItem) => void",
9550
+ "required": false,
9551
+ "description": "Click handler for picture / picture-card thumbnails — the natural spot to open a lightbox (wire it to Image/ImagePreview); remove/retry/cancel buttons stay independent"
8649
9552
  },
8650
9553
  {
8651
9554
  "name": "removeLabel",
@@ -8669,7 +9572,7 @@
8669
9572
  "name": "onChange",
8670
9573
  "type": "(files: File[]) => void",
8671
9574
  "required": false,
8672
- "description": "Called when files are selected"
9575
+ "description": "Fires with the freshly picked local Files only — the accumulated list (echo entries included) is the value channel"
8673
9576
  },
8674
9577
  {
8675
9578
  "name": "className",
@@ -8711,11 +9614,17 @@
8711
9614
  "required": true,
8712
9615
  "description": "Container height in px"
8713
9616
  },
9617
+ {
9618
+ "name": "width",
9619
+ "type": "number",
9620
+ "required": false,
9621
+ "description": "Scrollport width in px — horizontal orientation only: fixes the port width and acts as the main-axis extent until the real clientWidth is measured"
9622
+ },
8714
9623
  {
8715
9624
  "name": "itemHeight",
8716
9625
  "type": "number",
8717
9626
  "required": true,
8718
- "description": "Height of each item in px"
9627
+ "description": "Extent of one item along the scroll axis: row height in vertical lists, item width with orientation='horizontal', row height in grid mode"
8719
9628
  },
8720
9629
  {
8721
9630
  "name": "estimatedItemHeight",
@@ -8723,6 +9632,26 @@
8723
9632
  "required": false,
8724
9633
  "description": ""
8725
9634
  },
9635
+ {
9636
+ "name": "columns",
9637
+ "type": "number",
9638
+ "required": false,
9639
+ "description": "Grid mode: lay items out in a row-major grid with this many columns, virtualizing both axes (rows like a vertical list, columns against the rendered width). Vertical orientation only — a dev error is logged and columns ignored otherwise"
9640
+ },
9641
+ {
9642
+ "name": "columnWidth",
9643
+ "type": "number",
9644
+ "required": false,
9645
+ "default": "itemHeight",
9646
+ "description": "Column width in px (grid mode only)"
9647
+ },
9648
+ {
9649
+ "name": "orientation",
9650
+ "type": "VirtualListOrientation",
9651
+ "required": false,
9652
+ "default": "'vertical'",
9653
+ "description": "Scroll axis of the list; 'horizontal' mirrors windowing, dynamic measurement, scrollToIndex, reverse and sticky group headers onto the x axis with logical (RTL-aware) offsets"
9654
+ },
8726
9655
  {
8727
9656
  "name": "groups",
8728
9657
  "type": "VirtualListGroup[]",