haze-ui 1.26.0 → 1.28.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 (479) hide show
  1. package/README.md +420 -36
  2. package/dist/components/Anchor/Anchor.js +78 -0
  3. package/dist/components/Anchor/index.js +3 -0
  4. package/dist/components/AppShell/AppShell.js +44 -0
  5. package/dist/components/AppShell/index.js +3 -0
  6. package/dist/components/AspectRatio/AspectRatio.js +0 -1
  7. package/dist/components/AspectRatio/index.js +0 -1
  8. package/dist/components/Badge/Badge.js +5 -17
  9. package/dist/components/Badge/badge-styles.js +15 -0
  10. package/dist/components/Badge/index.js +3 -3
  11. package/dist/components/BottomSheet/BottomSheet.js +133 -22
  12. package/dist/components/Button/index.js +4 -3
  13. package/dist/components/Calendar/Calendar.js +525 -78
  14. package/dist/components/Calendar/date.js +35 -2
  15. package/dist/components/Card/Card.js +0 -1
  16. package/dist/components/Card/index.js +0 -1
  17. package/dist/components/Carousel/Carousel.js +64 -41
  18. package/dist/components/Cascader/Cascader.js +222 -140
  19. package/dist/components/Chart/Chart.js +34 -0
  20. package/dist/components/Chart/chart-elements.js +164 -0
  21. package/dist/components/Chart/index.js +3 -0
  22. package/dist/components/ChatContainer/ChatContainer.js +36 -16
  23. package/dist/components/ChatInput/ChatInput.js +49 -29
  24. package/dist/components/ChatMessage/ChatMessage.js +76 -29
  25. package/dist/components/Checkbox/Checkbox.js +6 -5
  26. package/dist/components/Checkbox/CheckboxCore.js +6 -5
  27. package/dist/components/CodeBlock/CodeBlock.js +39 -10
  28. package/dist/components/CodeBlock/index.js +0 -1
  29. package/dist/components/Collapsible/Collapsible.js +23 -10
  30. package/dist/components/ColorPicker/ColorPicker.js +5 -4
  31. package/dist/components/ColorPicker/ColorPickerCore.js +5 -4
  32. package/dist/components/Combobox/Combobox.js +202 -75
  33. package/dist/components/Combobox/ComboboxGroup.js +23 -0
  34. package/dist/components/Combobox/ComboboxOption.js +7 -6
  35. package/dist/components/Combobox/index.js +4 -3
  36. package/dist/components/Command/Command.js +102 -59
  37. package/dist/components/Command/CommandDialog.js +48 -0
  38. package/dist/components/Command/command-filter.js +16 -0
  39. package/dist/components/Command/index.js +3 -2
  40. package/dist/components/ConfirmDialog/ConfirmDialog.js +3 -3
  41. package/dist/components/Container/Container.js +0 -1
  42. package/dist/components/Container/index.js +0 -1
  43. package/dist/components/ContextMenu/ContextMenuContent.js +4 -4
  44. package/dist/components/DataTable/CellEditor.js +38 -0
  45. package/dist/components/DataTable/DataTable.js +394 -143
  46. package/dist/components/DataTable/csv.js +29 -0
  47. package/dist/components/DataTable/features.js +25 -0
  48. package/dist/components/DataTable/index.js +3 -1
  49. package/dist/components/DataTable/summary.js +17 -0
  50. package/dist/components/DateRangePicker/DateRangePicker.js +31 -13
  51. package/dist/components/DateRangePicker/DateRangePickerCore.js +59 -27
  52. package/dist/components/DateRangePicker/presets.js +43 -0
  53. package/dist/components/Datepicker/Datepicker.js +17 -12
  54. package/dist/components/Datepicker/DatepickerCore.js +73 -39
  55. package/dist/components/Datepicker/datetime.js +23 -0
  56. package/dist/components/Descriptions/Descriptions.js +46 -0
  57. package/dist/components/Descriptions/index.js +3 -0
  58. package/dist/components/Dialog/Dialog.js +56 -32
  59. package/dist/components/DiffViewer/DiffViewer.js +31 -30
  60. package/dist/components/Divider/Divider.js +0 -1
  61. package/dist/components/Divider/index.js +0 -1
  62. package/dist/components/Drawer/Drawer.js +49 -29
  63. package/dist/components/DropdownMenu/DropdownMenu.js +38 -26
  64. package/dist/components/DropdownMenu/DropdownMenuSub.js +23 -0
  65. package/dist/components/DropdownMenu/DropdownMenuSubContent.js +24 -0
  66. package/dist/components/DropdownMenu/DropdownMenuSubTrigger.js +30 -0
  67. package/dist/components/DropdownMenu/index.js +4 -1
  68. package/dist/components/FilePreview/FilePreview.js +135 -0
  69. package/dist/components/FilePreview/file-preview-format.js +23 -0
  70. package/dist/components/FilePreview/index.js +3 -0
  71. package/dist/components/Flex/Flex.js +0 -1
  72. package/dist/components/Flex/index.js +0 -1
  73. package/dist/components/FloatButton/FloatButton.js +42 -0
  74. package/dist/components/FloatButton/FloatButtonGroup.js +58 -0
  75. package/dist/components/FloatButton/float-button-context.js +9 -0
  76. package/dist/components/FloatButton/float-button-glyphs.js +26 -0
  77. package/dist/components/FloatButton/float-button-styles.js +14 -0
  78. package/dist/components/FloatButton/index.js +4 -0
  79. package/dist/components/Fullscreen/Fullscreen.js +29 -0
  80. package/dist/components/Fullscreen/index.js +3 -0
  81. package/dist/components/Grid/Grid.js +0 -1
  82. package/dist/components/Grid/GridItem.js +0 -1
  83. package/dist/components/Grid/index.js +0 -1
  84. package/dist/components/Icon/Icon.js +0 -1
  85. package/dist/components/Icon/index.js +0 -1
  86. package/dist/components/Image/Image.js +37 -19
  87. package/dist/components/Image/ImagePreview.js +233 -0
  88. package/dist/components/InlineCompletion/InlineCompletion.js +81 -0
  89. package/dist/components/InlineCompletion/index.js +3 -0
  90. package/dist/components/Input/Input.js +6 -5
  91. package/dist/components/Input/InputCore.js +3 -2
  92. package/dist/components/JsonView/JsonView.js +209 -0
  93. package/dist/components/JsonView/index.js +3 -0
  94. package/dist/components/JsonView/json-view-utils.js +24 -0
  95. package/dist/components/Kbd/Kbd.js +0 -1
  96. package/dist/components/Kbd/index.js +0 -1
  97. package/dist/components/LocaleProvider/LocaleProvider.js +16 -13
  98. package/dist/components/LocaleProvider/index.js +5 -3
  99. package/dist/components/LocaleProvider/ja-jp.js +222 -0
  100. package/dist/components/LocaleProvider/locale.js +99 -5
  101. package/dist/components/LocaleProvider/strings.js +15 -0
  102. package/dist/components/LocaleProvider/useStrings.js +13 -11
  103. package/dist/components/LocaleProvider/zh-cn.js +99 -5
  104. package/dist/components/Masonry/Masonry.js +29 -0
  105. package/dist/components/Masonry/index.js +3 -0
  106. package/dist/components/Masonry/masonry-distribute.js +15 -0
  107. package/dist/components/Mentions/Mentions.js +6 -5
  108. package/dist/components/Mentions/MentionsCore.js +69 -68
  109. package/dist/components/Menu/Menu.js +5 -5
  110. package/dist/components/Menu/MenuSub.js +23 -0
  111. package/dist/components/Menu/MenuSubContent.js +24 -0
  112. package/dist/components/Menu/MenuSubTrigger.js +30 -0
  113. package/dist/components/Menu/index.js +4 -1
  114. package/dist/components/NumberInput/NumberInput.js +6 -5
  115. package/dist/components/NumberInput/NumberInputCore.js +9 -8
  116. package/dist/components/OTPInput/OTPInput.js +5 -4
  117. package/dist/components/OTPInput/OTPInputCore.js +34 -33
  118. package/dist/components/PasswordInput/PasswordInput.js +5 -4
  119. package/dist/components/PasswordInput/PasswordInputCore.js +8 -7
  120. package/dist/components/Popover/Popover.js +43 -31
  121. package/dist/components/PromptInput/PromptInput.js +213 -0
  122. package/dist/components/PromptInput/index.js +3 -0
  123. package/dist/components/Radio/Radio.js +7 -6
  124. package/dist/components/Radio/RadioGroup.js +5 -4
  125. package/dist/components/Radio/RadioGroupCore.js +23 -14
  126. package/dist/components/Rating/Rating.js +5 -4
  127. package/dist/components/Rating/RatingCore.js +62 -28
  128. package/dist/components/Resizable/index.js +1 -1
  129. package/dist/components/Segmented/Segmented.js +5 -4
  130. package/dist/components/Segmented/SegmentedCore.js +22 -18
  131. package/dist/components/Select/OptionGroup.js +12 -0
  132. package/dist/components/Select/Select.js +20 -9
  133. package/dist/components/Select/SelectCore.js +74 -13
  134. package/dist/components/Select/SelectFloating.js +256 -0
  135. package/dist/components/Select/index.js +5 -4
  136. package/dist/components/Select/select-options.js +57 -0
  137. package/dist/components/Sidebar/Sidebar.js +9 -9
  138. package/dist/components/Signature/Signature.js +165 -0
  139. package/dist/components/Signature/index.js +3 -0
  140. package/dist/components/Signature/signature-points.js +28 -0
  141. package/dist/components/Skeleton/Skeleton.js +0 -1
  142. package/dist/components/Skeleton/index.js +0 -1
  143. package/dist/components/Slider/Slider.js +16 -8
  144. package/dist/components/Slider/SliderCore.js +75 -12
  145. package/dist/components/Sources/Sources.js +109 -0
  146. package/dist/components/Sources/index.js +3 -0
  147. package/dist/components/Stat/Stat.js +0 -1
  148. package/dist/components/Stat/index.js +0 -1
  149. package/dist/components/Switch/Switch.js +6 -5
  150. package/dist/components/Switch/SwitchCore.js +3 -2
  151. package/dist/components/Tabs/Tab.js +7 -4
  152. package/dist/components/Tabs/TabList.js +38 -7
  153. package/dist/components/Tabs/TabPanel.js +4 -3
  154. package/dist/components/Tabs/Tabs.js +11 -6
  155. package/dist/components/TagGroup/SortableTagGroup.js +26 -0
  156. package/dist/components/TagGroup/TagGroup.js +4 -6
  157. package/dist/components/TagGroup/TagGroupItem.js +17 -11
  158. package/dist/components/TagGroup/index.js +2 -1
  159. package/dist/components/TagGroup/tag-group-styles.js +7 -0
  160. package/dist/components/TagInput/SortableTagInput.js +24 -0
  161. package/dist/components/TagInput/SortableTagInputCore.js +52 -0
  162. package/dist/components/TagInput/TagInput.js +5 -4
  163. package/dist/components/TagInput/TagInputCore.js +71 -57
  164. package/dist/components/TagInput/index.js +3 -1
  165. package/dist/components/TagInput/tag-input-styles.js +7 -0
  166. package/dist/components/Textarea/Textarea.js +6 -5
  167. package/dist/components/Textarea/TextareaCore.js +3 -2
  168. package/dist/components/TimePicker/TimePicker.js +6 -5
  169. package/dist/components/TimePicker/TimePickerCore.js +3 -2
  170. package/dist/components/Toast/Toast.js +44 -42
  171. package/dist/components/Toast/ToastContainer.js +67 -47
  172. package/dist/components/Toast/ToastContext.js +23 -4
  173. package/dist/components/Toast/toast2.js +63 -28
  174. package/dist/components/Toast/useToast.js +9 -7
  175. package/dist/components/Toggle/Toggle.js +20 -0
  176. package/dist/components/Toggle/ToggleCore.js +31 -0
  177. package/dist/components/Toggle/index.js +4 -0
  178. package/dist/components/Toolbar/Toolbar.js +33 -32
  179. package/dist/components/Toolbar/ToolbarToggle.js +31 -0
  180. package/dist/components/Toolbar/index.js +2 -1
  181. package/dist/components/Tooltip/Tooltip.js +1 -1
  182. package/dist/components/Tour/Tour.js +57 -53
  183. package/dist/components/Tree/Tree.js +265 -80
  184. package/dist/components/Tree/TreeItem.js +91 -55
  185. package/dist/components/Tree/utils.js +82 -10
  186. package/dist/components/Typography/Typography.js +0 -1
  187. package/dist/components/Typography/index.js +0 -1
  188. package/dist/components/Upload/Upload.js +24 -8
  189. package/dist/components/Upload/UploadCore.js +230 -37
  190. package/dist/components/Upload/UploadList.js +300 -0
  191. package/dist/components/Upload/xhr-upload.js +22 -0
  192. package/dist/components/VirtualList/VirtualList.js +84 -56
  193. package/dist/components/Watermark/Watermark.js +55 -0
  194. package/dist/components/Watermark/index.js +3 -0
  195. package/dist/css/anchor.css +2 -0
  196. package/dist/css/app-shell.css +2 -0
  197. package/dist/css/badge.css +1 -1
  198. package/dist/css/bottom-sheet.css +1 -1
  199. package/dist/css/button.css +1 -1
  200. package/dist/css/calendar.css +1 -1
  201. package/dist/css/cascader.css +1 -1
  202. package/dist/css/chart.css +2 -0
  203. package/dist/css/chat-container.css +1 -1
  204. package/dist/css/chat-message.css +1 -1
  205. package/dist/css/combobox.css +3 -2
  206. package/dist/css/command.css +2 -1
  207. package/dist/css/context-menu.css +1 -1
  208. package/dist/css/data-table.css +2 -1
  209. package/dist/css/date-range-picker.css +1 -1
  210. package/dist/css/datepicker.css +2 -2
  211. package/dist/css/descriptions.css +2 -0
  212. package/dist/css/dialog.css +1 -1
  213. package/dist/css/drawer.css +1 -1
  214. package/dist/css/dropdown-menu.css +4 -1
  215. package/dist/css/file-preview.css +2 -0
  216. package/dist/css/float-button.css +2 -0
  217. package/dist/css/image.css +2 -1
  218. package/dist/css/inline-completion.css +2 -0
  219. package/dist/css/json-view.css +2 -0
  220. package/dist/css/masonry.css +2 -0
  221. package/dist/css/menu.css +4 -1
  222. package/dist/css/popover.css +1 -1
  223. package/dist/css/prompt-input.css +2 -0
  224. package/dist/css/rating.css +1 -1
  225. package/dist/css/select.css +3 -1
  226. package/dist/css/signature.css +2 -0
  227. package/dist/css/slider.css +1 -1
  228. package/dist/css/sources.css +2 -0
  229. package/dist/css/tag-group.css +3 -1
  230. package/dist/css/tag-input.css +2 -1
  231. package/dist/css/toggle.css +2 -0
  232. package/dist/css/toolbar.css +1 -0
  233. package/dist/css/tooltip.css +1 -1
  234. package/dist/css/tree.css +2 -2
  235. package/dist/css/upload.css +2 -1
  236. package/dist/css/watermark.css +2 -0
  237. package/dist/css-manifest.json +75 -1
  238. package/dist/form/FormItem.js +55 -50
  239. package/dist/form/FormList.js +79 -0
  240. package/dist/form/index.js +5 -1
  241. package/dist/form/standard-schema.js +16 -0
  242. package/dist/haze-ui.css +61 -30
  243. package/dist/headless/index.js +19 -0
  244. package/dist/hooks/useClickOutside.js +24 -0
  245. package/dist/hooks/useDarkMode.js +27 -0
  246. package/dist/hooks/useFullscreen.js +42 -0
  247. package/dist/hooks/useHotkeys.js +77 -0
  248. package/dist/hooks/useInView.js +27 -0
  249. package/dist/hooks/useLocalStorage.js +8 -0
  250. package/dist/hooks/useMediaQuery.js +2 -1
  251. package/dist/hooks/usePrevious.js +11 -0
  252. package/dist/hooks/useSessionStorage.js +8 -0
  253. package/dist/hooks/useStorageState.js +80 -0
  254. package/dist/index.js +220 -171
  255. package/dist/registry.json +2435 -91
  256. package/dist/tokens/colors.js +0 -1
  257. package/dist/tokens/index.js +0 -1
  258. package/dist/tokens/motion.js +0 -1
  259. package/dist/tokens/oklch.js +0 -1
  260. package/dist/tokens/palette.js +0 -1
  261. package/dist/tokens/registry.js +17 -28
  262. package/dist/tokens/spacing.js +0 -1
  263. package/dist/tokens/typography.js +0 -1
  264. package/dist/types/components/Anchor/Anchor.d.ts +25 -0
  265. package/dist/types/components/Anchor/index.d.ts +2 -0
  266. package/dist/types/components/AppShell/AppShell.d.ts +17 -0
  267. package/dist/types/components/AppShell/index.d.ts +2 -0
  268. package/dist/types/components/Badge/badge-styles.d.ts +21 -0
  269. package/dist/types/components/Badge/index.d.ts +1 -0
  270. package/dist/types/components/BottomSheet/BottomSheet.d.ts +52 -3
  271. package/dist/types/components/BottomSheet/index.d.ts +1 -1
  272. package/dist/types/components/Button/Button.d.ts +7 -0
  273. package/dist/types/components/Button/ButtonLink.d.ts +3 -0
  274. package/dist/types/components/Button/index.d.ts +1 -0
  275. package/dist/types/components/Button/styles.d.ts +17 -0
  276. package/dist/types/components/Calendar/Calendar.d.ts +71 -7
  277. package/dist/types/components/Calendar/date.d.ts +52 -0
  278. package/dist/types/components/Calendar/index.d.ts +1 -1
  279. package/dist/types/components/Cascader/Cascader.d.ts +48 -3
  280. package/dist/types/components/Chart/Chart.d.ts +43 -0
  281. package/dist/types/components/Chart/chart-elements.d.ts +104 -0
  282. package/dist/types/components/Chart/index.d.ts +2 -0
  283. package/dist/types/components/ChatContainer/ChatContainer.d.ts +18 -3
  284. package/dist/types/components/ChatInput/ChatInput.d.ts +11 -1
  285. package/dist/types/components/ChatMessage/ChatMessage.d.ts +13 -1
  286. package/dist/types/components/Checkbox/Checkbox.d.ts +6 -2
  287. package/dist/types/components/Checkbox/CheckboxCore.d.ts +4 -2
  288. package/dist/types/components/CodeBlock/CodeBlock.d.ts +19 -2
  289. package/dist/types/components/CodeBlock/index.d.ts +1 -1
  290. package/dist/types/components/Collapsible/Collapsible.d.ts +24 -2
  291. package/dist/types/components/Collapsible/index.d.ts +1 -1
  292. package/dist/types/components/ColorPicker/ColorPicker.d.ts +7 -1
  293. package/dist/types/components/ColorPicker/ColorPickerCore.d.ts +7 -1
  294. package/dist/types/components/Combobox/Combobox.d.ts +111 -7
  295. package/dist/types/components/Combobox/ComboboxGroup.d.ts +22 -0
  296. package/dist/types/components/Combobox/ComboboxOption.d.ts +7 -2
  297. package/dist/types/components/Combobox/index.d.ts +3 -1
  298. package/dist/types/components/Command/Command.d.ts +70 -6
  299. package/dist/types/components/Command/CommandDialog.d.ts +36 -0
  300. package/dist/types/components/Command/command-filter.d.ts +34 -0
  301. package/dist/types/components/Command/index.d.ts +4 -2
  302. package/dist/types/components/DataTable/CellEditor.d.ts +24 -0
  303. package/dist/types/components/DataTable/DataTable.d.ts +184 -32
  304. package/dist/types/components/DataTable/csv.d.ts +36 -0
  305. package/dist/types/components/DataTable/features.d.ts +124 -0
  306. package/dist/types/components/DataTable/index.d.ts +4 -1
  307. package/dist/types/components/DataTable/summary.d.ts +19 -0
  308. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +28 -2
  309. package/dist/types/components/DateRangePicker/DateRangePickerCore.d.ts +26 -2
  310. package/dist/types/components/DateRangePicker/index.d.ts +2 -2
  311. package/dist/types/components/DateRangePicker/presets.d.ts +23 -0
  312. package/dist/types/components/Datepicker/Datepicker.d.ts +21 -1
  313. package/dist/types/components/Datepicker/DatepickerCore.d.ts +29 -2
  314. package/dist/types/components/Datepicker/datetime.d.ts +27 -0
  315. package/dist/types/components/Datepicker/index.d.ts +1 -1
  316. package/dist/types/components/Descriptions/Descriptions.d.ts +30 -0
  317. package/dist/types/components/Descriptions/index.d.ts +2 -0
  318. package/dist/types/components/Dialog/Dialog.d.ts +68 -3
  319. package/dist/types/components/Dialog/index.d.ts +1 -1
  320. package/dist/types/components/Drawer/Drawer.d.ts +33 -3
  321. package/dist/types/components/Drawer/index.d.ts +1 -1
  322. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +23 -3
  323. package/dist/types/components/DropdownMenu/DropdownMenuSub.d.ts +18 -0
  324. package/dist/types/components/DropdownMenu/DropdownMenuSubContent.d.ts +13 -0
  325. package/dist/types/components/DropdownMenu/DropdownMenuSubTrigger.d.ts +14 -0
  326. package/dist/types/components/DropdownMenu/index.d.ts +7 -1
  327. package/dist/types/components/FilePreview/FilePreview.d.ts +35 -0
  328. package/dist/types/components/FilePreview/file-preview-format.d.ts +20 -0
  329. package/dist/types/components/FilePreview/index.d.ts +2 -0
  330. package/dist/types/components/FloatButton/FloatButton.d.ts +43 -0
  331. package/dist/types/components/FloatButton/FloatButtonGroup.d.ts +33 -0
  332. package/dist/types/components/FloatButton/float-button-context.d.ts +11 -0
  333. package/dist/types/components/FloatButton/float-button-glyphs.d.ts +3 -0
  334. package/dist/types/components/FloatButton/float-button-styles.d.ts +58 -0
  335. package/dist/types/components/FloatButton/index.d.ts +4 -0
  336. package/dist/types/components/Fullscreen/Fullscreen.d.ts +34 -0
  337. package/dist/types/components/Fullscreen/index.d.ts +3 -0
  338. package/dist/types/components/Image/Image.d.ts +20 -5
  339. package/dist/types/components/Image/ImagePreview.d.ts +13 -0
  340. package/dist/types/components/Image/index.d.ts +1 -1
  341. package/dist/types/components/InlineCompletion/InlineCompletion.d.ts +29 -0
  342. package/dist/types/components/InlineCompletion/index.d.ts +2 -0
  343. package/dist/types/components/Input/Input.d.ts +5 -2
  344. package/dist/types/components/Input/InputCore.d.ts +4 -2
  345. package/dist/types/components/JsonView/JsonView.d.ts +26 -0
  346. package/dist/types/components/JsonView/index.d.ts +2 -0
  347. package/dist/types/components/JsonView/json-view-utils.d.ts +22 -0
  348. package/dist/types/components/LocaleProvider/LocaleContext.d.ts +9 -0
  349. package/dist/types/components/LocaleProvider/LocaleProvider.d.ts +12 -1
  350. package/dist/types/components/LocaleProvider/index.d.ts +3 -0
  351. package/dist/types/components/LocaleProvider/ja-jp.d.ts +13 -0
  352. package/dist/types/components/LocaleProvider/locale.d.ts +100 -0
  353. package/dist/types/components/LocaleProvider/strings.d.ts +28 -0
  354. package/dist/types/components/Masonry/Masonry.d.ts +34 -0
  355. package/dist/types/components/Masonry/index.d.ts +2 -0
  356. package/dist/types/components/Masonry/masonry-distribute.d.ts +16 -0
  357. package/dist/types/components/Mentions/Mentions.d.ts +5 -2
  358. package/dist/types/components/Mentions/MentionsCore.d.ts +4 -2
  359. package/dist/types/components/Menu/MenuSub.d.ts +18 -0
  360. package/dist/types/components/Menu/MenuSubContent.d.ts +12 -0
  361. package/dist/types/components/Menu/MenuSubTrigger.d.ts +14 -0
  362. package/dist/types/components/Menu/index.d.ts +6 -0
  363. package/dist/types/components/NumberInput/NumberInput.d.ts +5 -2
  364. package/dist/types/components/NumberInput/NumberInputCore.d.ts +4 -2
  365. package/dist/types/components/OTPInput/OTPInput.d.ts +5 -1
  366. package/dist/types/components/OTPInput/OTPInputCore.d.ts +4 -1
  367. package/dist/types/components/PasswordInput/PasswordInput.d.ts +5 -1
  368. package/dist/types/components/PasswordInput/PasswordInputCore.d.ts +4 -1
  369. package/dist/types/components/Popover/Popover.d.ts +41 -3
  370. package/dist/types/components/Popover/index.d.ts +1 -1
  371. package/dist/types/components/PromptInput/PromptInput.d.ts +46 -0
  372. package/dist/types/components/PromptInput/index.d.ts +2 -0
  373. package/dist/types/components/Radio/Radio.d.ts +5 -2
  374. package/dist/types/components/Radio/RadioGroup.d.ts +8 -2
  375. package/dist/types/components/Radio/RadioGroupCore.d.ts +7 -2
  376. package/dist/types/components/Rating/Rating.d.ts +8 -1
  377. package/dist/types/components/Rating/RatingCore.d.ts +7 -1
  378. package/dist/types/components/Resizable/index.d.ts +2 -0
  379. package/dist/types/components/Segmented/Segmented.d.ts +8 -1
  380. package/dist/types/components/Segmented/SegmentedCore.d.ts +7 -2
  381. package/dist/types/components/Select/OptionGroup.d.ts +16 -0
  382. package/dist/types/components/Select/Select.d.ts +78 -4
  383. package/dist/types/components/Select/SelectCore.d.ts +79 -6
  384. package/dist/types/components/Select/SelectFloating.d.ts +94 -0
  385. package/dist/types/components/Select/index.d.ts +2 -0
  386. package/dist/types/components/Select/select-options.d.ts +53 -0
  387. package/dist/types/components/Signature/Signature.d.ts +51 -0
  388. package/dist/types/components/Signature/index.d.ts +2 -0
  389. package/dist/types/components/Signature/signature-points.d.ts +31 -0
  390. package/dist/types/components/Slider/Slider.d.ts +29 -4
  391. package/dist/types/components/Slider/SliderCore.d.ts +35 -6
  392. package/dist/types/components/Sources/Sources.d.ts +37 -0
  393. package/dist/types/components/Sources/index.d.ts +2 -0
  394. package/dist/types/components/Switch/Switch.d.ts +5 -2
  395. package/dist/types/components/Switch/SwitchCore.d.ts +4 -2
  396. package/dist/types/components/Tabs/TabList.d.ts +7 -0
  397. package/dist/types/components/Tabs/Tabs.d.ts +8 -1
  398. package/dist/types/components/Tabs/TabsContext.d.ts +20 -0
  399. package/dist/types/components/Tabs/index.d.ts +1 -0
  400. package/dist/types/components/TagGroup/SortableTagGroup.d.ts +20 -0
  401. package/dist/types/components/TagGroup/TagGroup.d.ts +3 -0
  402. package/dist/types/components/TagGroup/index.d.ts +2 -0
  403. package/dist/types/components/TagGroup/tag-group-styles.d.ts +7 -0
  404. package/dist/types/components/TagInput/SortableTagInput.d.ts +34 -0
  405. package/dist/types/components/TagInput/SortableTagInputCore.d.ts +18 -0
  406. package/dist/types/components/TagInput/TagInput.d.ts +5 -1
  407. package/dist/types/components/TagInput/TagInputCore.d.ts +6 -2
  408. package/dist/types/components/TagInput/index.d.ts +4 -0
  409. package/dist/types/components/TagInput/tag-input-styles.d.ts +12 -0
  410. package/dist/types/components/Textarea/Textarea.d.ts +5 -2
  411. package/dist/types/components/Textarea/TextareaCore.d.ts +4 -2
  412. package/dist/types/components/TimePicker/TimePicker.d.ts +5 -2
  413. package/dist/types/components/TimePicker/TimePickerCore.d.ts +4 -2
  414. package/dist/types/components/Toast/Toast.d.ts +31 -2
  415. package/dist/types/components/Toast/ToastContainer.d.ts +11 -1
  416. package/dist/types/components/Toast/ToastContext.d.ts +44 -3
  417. package/dist/types/components/Toast/index.d.ts +1 -1
  418. package/dist/types/components/Toast/toast.d.ts +35 -4
  419. package/dist/types/components/Toast/useToast.d.ts +16 -4
  420. package/dist/types/components/Toggle/Toggle.d.ts +19 -0
  421. package/dist/types/components/Toggle/ToggleCore.d.ts +23 -0
  422. package/dist/types/components/Toggle/index.d.ts +4 -0
  423. package/dist/types/components/Toolbar/ToolbarToggle.d.ts +19 -0
  424. package/dist/types/components/Toolbar/index.d.ts +2 -0
  425. package/dist/types/components/Tour/Tour.d.ts +3 -3
  426. package/dist/types/components/Tree/Tree.d.ts +3 -3
  427. package/dist/types/components/Tree/TreeItem.d.ts +16 -1
  428. package/dist/types/components/Tree/types.d.ts +51 -0
  429. package/dist/types/components/Tree/utils.d.ts +73 -0
  430. package/dist/types/components/Upload/Upload.d.ts +47 -3
  431. package/dist/types/components/Upload/UploadCore.d.ts +95 -4
  432. package/dist/types/components/Upload/UploadList.d.ts +18 -0
  433. package/dist/types/components/Upload/index.d.ts +1 -0
  434. package/dist/types/components/Upload/types.d.ts +60 -0
  435. package/dist/types/components/Upload/xhr-upload.d.ts +20 -0
  436. package/dist/types/components/VirtualList/VirtualList.d.ts +16 -1
  437. package/dist/types/components/Watermark/Watermark.d.ts +32 -0
  438. package/dist/types/components/Watermark/index.d.ts +2 -0
  439. package/dist/types/form/FormItem.d.ts +33 -8
  440. package/dist/types/form/FormList.d.ts +113 -0
  441. package/dist/types/form/index.d.ts +26 -0
  442. package/dist/types/form/standard-schema.d.ts +30 -0
  443. package/dist/types/headless/index.d.ts +399 -0
  444. package/dist/types/hooks/index.d.ts +13 -0
  445. package/dist/types/hooks/useClickOutside.d.ts +46 -0
  446. package/dist/types/hooks/useDarkMode.d.ts +40 -0
  447. package/dist/types/hooks/useFullscreen.d.ts +33 -0
  448. package/dist/types/hooks/useHotkeys.d.ts +53 -0
  449. package/dist/types/hooks/useInView.d.ts +32 -0
  450. package/dist/types/hooks/useLocalStorage.d.ts +33 -0
  451. package/dist/types/hooks/useMediaQuery.d.ts +3 -0
  452. package/dist/types/hooks/usePrevious.d.ts +18 -0
  453. package/dist/types/hooks/useSessionStorage.d.ts +26 -0
  454. package/dist/types/hooks/useStorageState.d.ts +12 -0
  455. package/dist/types/index.d.ts +79 -37
  456. package/dist/types/utils/collision.d.ts +39 -1
  457. package/dist/types/utils/direction.d.ts +22 -0
  458. package/dist/types/utils/floating.d.ts +32 -4
  459. package/dist/types/utils/focus-scope.d.ts +2 -1
  460. package/dist/types/utils/focus.d.ts +2 -1
  461. package/dist/types/utils/menuKeyboard.d.ts +19 -4
  462. package/dist/types/utils/refs.d.ts +16 -0
  463. package/dist/types/utils/sortable-handle.d.ts +25 -0
  464. package/dist/types/utils/sortable-shared.d.ts +30 -0
  465. package/dist/types/utils/sortable.d.ts +36 -0
  466. package/dist/types/utils/submenu.d.ts +63 -0
  467. package/dist/types/utils/view-transition.d.ts +28 -0
  468. package/dist/utils/classnames.js +0 -1
  469. package/dist/utils/collision.js +37 -26
  470. package/dist/utils/direction.js +34 -0
  471. package/dist/utils/floating.js +163 -143
  472. package/dist/utils/menuKeyboard.js +59 -46
  473. package/dist/utils/refs.js +9 -0
  474. package/dist/utils/sortable-handle.js +12 -0
  475. package/dist/utils/sortable-shared.js +16 -0
  476. package/dist/utils/sortable.js +47 -0
  477. package/dist/utils/submenu.js +106 -0
  478. package/dist/utils/view-transition.js +26 -0
  479. package/package.json +169 -16
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 上一次渲染时的值。首次渲染返回 `undefined`。
3
+ *
4
+ * ```tsx
5
+ * const [count, setCount] = useState(0);
6
+ * const prev = usePrevious(count);
7
+ * // count 从 0 变 1 后:count === 1, prev === 0
8
+ * ```
9
+ *
10
+ * - 值比较按渲染(identity),不做深比较——对象/数组每次新引用都会
11
+ * 视为变化,需要浅比较时先用 `useMemo` 稳定引用。
12
+ * - 写入发生在 effect:与 `useEffect`/`useLayoutEffect` 内读到的前一值
13
+ * 一致;并发渲染下同一轮重试不会污染 prev。
14
+ *
15
+ * @param value 需要追踪前值的任意值。
16
+ * @returns 上一轮渲染的同一值;首轮为 `undefined`。
17
+ */
18
+ export declare function usePrevious<T>(value: T): T | undefined;
@@ -0,0 +1,26 @@
1
+ import type { Dispatch, SetStateAction } from 'react';
2
+ import type { ControlOrValue } from 'react-use-control';
3
+ /**
4
+ * sessionStorage 持久化的可控状态:与 `useLocalStorage` 共享同一内核,
5
+ * 仅 storage 区域不同——值随标签页会话存活,关闭标签页即清空。
6
+ *
7
+ * ```tsx
8
+ * // 非受控:已持久化值优先于 initial;setValue 即写回 sessionStorage
9
+ * const [token, setToken] = useSessionStorage<string>('api-token', undefined, '');
10
+ * setToken('abc'); // sessionStorage['api-token'] === '"abc"'
11
+ *
12
+ * // 受控:control 所有者持有状态,storage 只作初值来源、不回写
13
+ * const [token, setToken, tokenControl] = useControl(undefined, '');
14
+ * <TokenField token={tokenControl} onTokenChange={setToken} />
15
+ * ```
16
+ *
17
+ * 语义与 `useLocalStorage` 完全一致(初值解析顺序、损坏 JSON 容错、
18
+ * 非受控写回 + 跨标签页 `storage` 事件同步、受控不回写、SSR 安全),
19
+ * 见 {@link useLocalStorage}。
20
+ *
21
+ * @param key storage 键。
22
+ * @param control `Control<T>` 受控,或裸 `T` 作非受控初值。
23
+ * @param initial 兜底初始值(支持惰性函数形式)。
24
+ * @returns `[value, setValue]`,语义与 `useState` 一致。
25
+ */
26
+ export declare function useSessionStorage<T>(key: string, control?: ControlOrValue<T>, initial?: T | (() => T)): [T, Dispatch<SetStateAction<T>>];
@@ -0,0 +1,12 @@
1
+ import type { Dispatch, SetStateAction } from 'react';
2
+ import type { ControlOrValue } from 'react-use-control';
3
+ type StorageKind = 'local' | 'session';
4
+ /**
5
+ * storage 持久化的可控状态内核(useLocalStorage / useSessionStorage 共用)。
6
+ *
7
+ * 初值解析顺序:已持久化值 > 非受控裸值 > `initial`。受控(传入 control)
8
+ * 且 control 已携带 state 时,useControl 直接采用上游状态,storage 不参与。
9
+ */
10
+ declare function useStorageState<T>(kind: StorageKind, key: string, control: ControlOrValue<T> | undefined, initial: T | (() => T) | undefined): [T, Dispatch<SetStateAction<T>>];
11
+ export { useStorageState };
12
+ export type { StorageKind };
@@ -3,24 +3,26 @@ export { spacing } from './tokens/spacing';
3
3
  export { typography } from './tokens/typography';
4
4
  export { TOKEN_REGISTRY, COMPONENT_TOKENS } from './tokens/registry';
5
5
  export type { TokenDef } from './tokens/registry';
6
- export { Button, ButtonLink } from './components/Button';
6
+ export { Button, ButtonLink, buttonVariants, buttonSizes } from './components/Button';
7
7
  export type { ButtonProps, ButtonLinkProps } from './components/Button';
8
8
  export { Input, InputCore } from './components/Input';
9
9
  export type { InputProps, InputCoreProps } from './components/Input';
10
- export { Select, Option, SelectCore } from './components/Select';
11
- export type { SelectProps, OptionProps, SelectCoreProps } from './components/Select';
10
+ export { Select, Option, SelectCore, OptionGroup } from './components/Select';
11
+ export type { SelectProps, OptionProps, SelectCoreProps, OptionGroupProps } from './components/Select';
12
12
  export { Checkbox, CheckboxCore } from './components/Checkbox';
13
13
  export type { CheckboxProps, CheckboxCoreProps } from './components/Checkbox';
14
14
  export { Switch, SwitchCore } from './components/Switch';
15
15
  export type { SwitchProps, SwitchCoreProps } from './components/Switch';
16
- export { Badge } from './components/Badge';
16
+ export { Toggle, ToggleCore } from './components/Toggle';
17
+ export type { ToggleProps, ToggleCoreProps } from './components/Toggle';
18
+ export { Badge, badgeVariants, badgeSizes } from './components/Badge';
17
19
  export type { BadgeProps } from './components/Badge';
18
20
  export { Dialog } from './components/Dialog';
19
- export type { DialogProps } from './components/Dialog';
21
+ export type { DialogProps, DialogHandle, DialogClassNames } from './components/Dialog';
20
22
  export { Tooltip } from './components/Tooltip';
21
23
  export type { TooltipProps } from './components/Tooltip';
22
24
  export { Popover } from './components/Popover';
23
- export type { PopoverProps } from './components/Popover';
25
+ export type { PopoverProps, PopoverHandle, PopoverClassNames } from './components/Popover';
24
26
  export { Card } from './components/Card';
25
27
  export type { CardProps } from './components/Card';
26
28
  export { Radio, RadioGroup, RadioGroupCore } from './components/Radio';
@@ -30,7 +32,7 @@ export type { TextareaProps, TextareaCoreProps } from './components/Textarea';
30
32
  export { Slider, SliderCore } from './components/Slider';
31
33
  export type { SliderProps, SliderCoreProps } from './components/Slider';
32
34
  export { Tabs, TabList, Tab, TabPanel } from './components/Tabs';
33
- export type { TabsProps, TabListProps, TabProps, TabPanelProps, } from './components/Tabs';
35
+ export type { TabsProps, TabsClassNames, TabListProps, TabProps, TabPanelProps, } from './components/Tabs';
34
36
  export { Accordion, AccordionItem } from './components/Accordion';
35
37
  export type { AccordionProps, AccordionItemProps, } from './components/Accordion';
36
38
  export { Alert } from './components/Alert';
@@ -44,31 +46,31 @@ export type { SkeletonProps } from './components/Skeleton';
44
46
  export { Icon } from './components/Icon';
45
47
  export type { IconProps } from './components/Icon';
46
48
  export { Image } from './components/Image';
47
- export type { ImageProps } from './components/Image';
49
+ export type { ImageProps, ImagePreviewConfig } from './components/Image';
48
50
  export { Flex } from './components/Flex';
49
51
  export type { FlexProps } from './components/Flex';
50
52
  export { Breadcrumb, BreadcrumbItem } from './components/Breadcrumb';
51
53
  export type { BreadcrumbProps, BreadcrumbItemProps, } from './components/Breadcrumb';
52
54
  export { Disclosure } from './components/Disclosure';
53
55
  export type { DisclosureProps } from './components/Disclosure';
54
- export { Menu, MenuItem, MenuDivider } from './components/Menu';
55
- export type { MenuProps, MenuItemProps } from './components/Menu';
56
+ export { Menu, MenuItem, MenuDivider, MenuSub, MenuSubTrigger, MenuSubContent } from './components/Menu';
57
+ export type { MenuProps, MenuItemProps, MenuSubProps, MenuSubTriggerProps, MenuSubContentProps } from './components/Menu';
56
58
  export { NumberInput, NumberInputCore } from './components/NumberInput';
57
59
  export type { NumberInputProps, NumberInputCoreProps } from './components/NumberInput';
58
60
  export { FileInput } from './components/FileInput';
59
61
  export type { FileInputProps } from './components/FileInput';
60
62
  export { Toast, ToastContainer, useToast, toast } from './components/Toast';
61
- export type { ToastProps, ToastContainerProps, ToastOptions, ToastVariant } from './components/Toast';
63
+ export type { ToastProps, ToastContainerProps, ToastOptions, ToastVariant, ToastClassNames } from './components/Toast';
62
64
  export { List, ListItem } from './components/List';
63
65
  export type { ListProps, ListItemProps } from './components/List';
64
- export { Combobox } from './components/Combobox';
65
- export type { ComboboxProps } from './components/Combobox';
66
+ export { Combobox, ComboboxOption, ComboboxGroup } from './components/Combobox';
67
+ export type { ComboboxProps, ComboboxOptionProps, ComboboxGroupProps, ComboboxOptionData, ComboboxVirtualizedConfig } from './components/Combobox';
66
68
  export { Table, TableHead, TableBody, TableRow, TableCell, } from './components/Table';
67
69
  export type { TableProps, TableHeadProps, TableBodyProps, TableRowProps, TableCellProps, } from './components/Table';
68
70
  export { Carousel, CarouselSlide } from './components/Carousel';
69
71
  export type { CarouselProps, CarouselSlideProps } from './components/Carousel';
70
72
  export { Datepicker, DatepickerCore } from './components/Datepicker';
71
- export type { DatepickerProps, DatepickerCoreProps } from './components/Datepicker';
73
+ export type { DatepickerProps, DatepickerCoreProps, DatepickerPreset } from './components/Datepicker';
72
74
  export { Tree } from './components/Tree';
73
75
  export type { TreeProps, TreeNodeData } from './components/Tree';
74
76
  export { Divider } from './components/Divider';
@@ -84,19 +86,21 @@ export type { PaginationProps } from './components/Pagination';
84
86
  export { Grid, GridItem } from './components/Grid';
85
87
  export type { GridProps, GridItemProps } from './components/Grid';
86
88
  export { Drawer } from './components/Drawer';
87
- export type { DrawerProps } from './components/Drawer';
89
+ export type { DrawerProps, DrawerHandle } from './components/Drawer';
88
90
  export { Stepper, Step } from './components/Stepper';
89
91
  export type { StepperProps, StepProps } from './components/Stepper';
90
- export { Command, CommandInput, CommandList, CommandItem } from './components/Command';
91
- export type { CommandProps, CommandInputProps, CommandListProps, CommandItemProps } from './components/Command';
92
+ export { Command, CommandInput, CommandList, CommandItem, CommandGroup, CommandDialog } from './components/Command';
93
+ export type { CommandProps, CommandInputProps, CommandListProps, CommandItemProps, CommandGroupProps, CommandDialogProps } from './components/Command';
92
94
  export { ResizableGroup, ResizablePanel, ResizableHandle } from './components/Resizable';
93
95
  export type { ResizableGroupProps, ResizablePanelProps, ResizableHandleProps } from './components/Resizable';
96
+ export { SplitterGroup, SplitterPanel, SplitterHandle, } from './components/Resizable';
97
+ export type { ResizableGroupProps as SplitterGroupProps, ResizablePanelProps as SplitterPanelProps, ResizableHandleProps as SplitterHandleProps, } from './components/Resizable';
94
98
  export { Collapsible, CollapsibleTrigger, CollapsibleContent } from './components/Collapsible';
95
- export type { CollapsibleProps, CollapsibleTriggerProps, CollapsibleContentProps } from './components/Collapsible';
99
+ export type { CollapsibleProps, CollapsibleTriggerProps, CollapsibleContentProps, CollapsibleClassNames } from './components/Collapsible';
96
100
  export { Transfer, TransferCore } from './components/Transfer';
97
101
  export type { TransferProps, TransferItem, TransferCoreProps } from './components/Transfer';
98
102
  export { Upload, UploadCore } from './components/Upload';
99
- export type { UploadProps, UploadCoreProps } from './components/Upload';
103
+ export type { UploadProps, UploadCoreProps, UploadHandle, UploadStatus, UploadFileStatus, UploadRequest, UploadRequestOptions, UploadListItemActions, UploadListItemRender } from './components/Upload';
100
104
  export { ColorPicker, ColorPickerCore } from './components/ColorPicker';
101
105
  export type { ColorPickerProps, ColorPickerCoreProps } from './components/ColorPicker';
102
106
  export { Rating, RatingCore } from './components/Rating';
@@ -116,19 +120,21 @@ export type { ScrollAreaProps } from './components/ScrollArea';
116
120
  export { TimePicker, TimePickerCore } from './components/TimePicker';
117
121
  export type { TimePickerProps, TimePickerCoreProps } from './components/TimePicker';
118
122
  export { DateRangePicker, DateRangePickerCore } from './components/DateRangePicker';
119
- export type { DateRangePickerProps, DateRangePickerCoreProps } from './components/DateRangePicker';
123
+ export type { DateRangePickerProps, DateRangePickerCoreProps, DateRangePickerPreset, DateRangePickerPresets } from './components/DateRangePicker';
120
124
  export { OTPInput, OTPInputCore } from './components/OTPInput';
121
125
  export type { OTPInputProps, OTPInputCoreProps } from './components/OTPInput';
122
126
  export { PasswordInput, PasswordInputCore } from './components/PasswordInput';
123
127
  export type { PasswordInputProps, PasswordInputCoreProps } from './components/PasswordInput';
124
- export { TagInput, TagInputCore } from './components/TagInput';
125
- export type { TagInputProps, TagInputCoreProps } from './components/TagInput';
128
+ export { TagInput, TagInputCore, SortableTagInput, SortableTagInputCore } from './components/TagInput';
129
+ export type { TagInputProps, TagInputCoreProps, SortableTagInputProps, SortableTagInputCoreProps } from './components/TagInput';
126
130
  export { Mentions, MentionsCore } from './components/Mentions';
127
131
  export type { MentionsProps, MentionsCoreProps, MentionsOption } from './components/Mentions';
132
+ export { PromptInput } from './components/PromptInput';
133
+ export type { PromptInputProps } from './components/PromptInput';
128
134
  export { InlineEdit } from './components/InlineEdit';
129
135
  export type { InlineEditProps } from './components/InlineEdit';
130
- export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator } from './components/DropdownMenu';
131
- export type { DropdownMenuProps, DropdownMenuTriggerProps, DropdownMenuContentProps, DropdownMenuItemProps, DropdownMenuSeparatorProps } from './components/DropdownMenu';
136
+ export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent } from './components/DropdownMenu';
137
+ export type { DropdownMenuProps, DropdownMenuTriggerProps, DropdownMenuContentProps, DropdownMenuItemProps, DropdownMenuSeparatorProps, DropdownMenuSubProps, DropdownMenuSubTriggerProps, DropdownMenuSubContentProps, DropdownMenuHandle } from './components/DropdownMenu';
132
138
  export { ContextMenu, ContextMenuTrigger, ContextMenuContent, ContextMenuItem, ContextMenuSeparator } from './components/ContextMenu';
133
139
  export type { ContextMenuProps, ContextMenuTriggerProps, ContextMenuContentProps, ContextMenuItemProps, ContextMenuSeparatorProps } from './components/ContextMenu';
134
140
  export { NavigationBar, NavLink } from './components/NavigationBar';
@@ -144,38 +150,51 @@ export type { BannerProps } from './components/Banner';
144
150
  export { ConfirmDialog } from './components/ConfirmDialog';
145
151
  export type { ConfirmDialogProps } from './components/ConfirmDialog';
146
152
  export { CodeBlock } from './components/CodeBlock';
147
- export type { CodeBlockProps } from './components/CodeBlock';
153
+ export type { CodeBlockProps, Highlighter } from './components/CodeBlock';
148
154
  export { AspectRatio } from './components/AspectRatio';
149
155
  export type { AspectRatioProps } from './components/AspectRatio';
150
156
  export { VirtualList } from './components/VirtualList';
151
157
  export type { VirtualListProps, VirtualListHandle, VirtualListGroup, VirtualListAlign } from './components/VirtualList';
152
- export { TagGroup, TagGroupItem } from './components/TagGroup';
153
- export type { TagGroupProps, TagGroupItemProps } from './components/TagGroup';
158
+ export { TagGroup, TagGroupItem, SortableTagGroup } from './components/TagGroup';
159
+ export type { TagGroupProps, TagGroupItemProps, SortableTagGroupProps } from './components/TagGroup';
154
160
  export { BottomSheet } from './components/BottomSheet';
155
- export type { BottomSheetProps } from './components/BottomSheet';
161
+ export type { BottomSheetProps, BottomSheetHandle } from './components/BottomSheet';
156
162
  export { SwipeAction } from './components/SwipeAction';
157
163
  export type { SwipeActionProps } from './components/SwipeAction';
158
164
  export { default as LocaleProvider, useStrings } from './components/LocaleProvider';
159
- export { defaultStrings, enUS, zhCN } from './components/LocaleProvider';
165
+ export { defaultStrings, enUS, zhCN, jaJP, createStrings } from './components/LocaleProvider';
160
166
  export type { LocaleProviderProps, HazeStrings } from './components/LocaleProvider';
161
- export { DataTable } from './components/DataTable';
162
- export type { DataTableProps, DataTableColumnDef, DataTableColumnMeta, DataTableVirtualized, } from './components/DataTable';
167
+ export type { DeepPartial } from './components/LocaleProvider';
168
+ export { useDirection, getDirection, localeDirection } from './utils/direction';
169
+ export type { Direction } from './utils/direction';
170
+ export { DataTable, dataTableSum, dataTableAvg, dataTableCount, dataTableToCsv } from './components/DataTable';
171
+ export type { DataTableProps, DataTableColumnDef, DataTableColumnMeta, DataTableVirtualized, DataTableSummary, DataTableSummaryCell, DataTableCellEditorProps, DataTableCsvOptions, } from './components/DataTable';
172
+ export { Chart } from './components/Chart';
173
+ export type { ChartProps, ChartSeries, ChartType, ChartTooltipPayload, ChartTooltipEntry } from './components/Chart';
163
174
  export { Kbd } from './components/Kbd';
164
175
  export type { KbdProps } from './components/Kbd';
165
176
  export { AvatarGroup } from './components/AvatarGroup';
166
177
  export type { AvatarGroupProps } from './components/AvatarGroup';
167
178
  export { Calendar } from './components/Calendar';
168
- export type { CalendarProps } from './components/Calendar';
179
+ export type { CalendarProps, CalendarPickerMode } from './components/Calendar';
169
180
  export { HoverCard } from './components/HoverCard';
170
181
  export type { HoverCardProps } from './components/HoverCard';
171
- export { Toolbar, ToolbarButton, ToolbarSeparator } from './components/Toolbar';
172
- export type { ToolbarProps, ToolbarButtonProps, ToolbarSeparatorProps } from './components/Toolbar';
182
+ export { Toolbar, ToolbarButton, ToolbarSeparator, ToolbarToggle } from './components/Toolbar';
183
+ export type { ToolbarProps, ToolbarButtonProps, ToolbarSeparatorProps, ToolbarToggleProps } from './components/Toolbar';
184
+ export { AppShell } from './components/AppShell';
185
+ export type { AppShellProps } from './components/AppShell';
173
186
  export { Cascader } from './components/Cascader';
174
187
  export type { CascaderProps, CascaderOption } from './components/Cascader';
175
188
  export { Sidebar, SidebarGroup, SidebarItem, SidebarFooter, SidebarToggle } from './components/Sidebar';
176
189
  export type { SidebarProps, SidebarGroupProps, SidebarItemProps, SidebarFooterProps, SidebarToggleProps, } from './components/Sidebar';
177
190
  export { Tour } from './components/Tour';
178
191
  export type { TourProps, TourStep, TourCloseReason, TourPlacement } from './components/Tour';
192
+ export { Anchor } from './components/Anchor';
193
+ export type { AnchorProps, AnchorItem } from './components/Anchor';
194
+ export { Watermark } from './components/Watermark';
195
+ export type { WatermarkProps, WatermarkFont } from './components/Watermark';
196
+ export { Fullscreen } from './components/Fullscreen';
197
+ export type { FullscreenProps } from './components/Fullscreen';
179
198
  export { ChatMessage } from './components/ChatMessage';
180
199
  export type { ChatMessageProps, ChatMessageRole } from './components/ChatMessage';
181
200
  export { ChatContainer } from './components/ChatContainer';
@@ -206,9 +225,32 @@ export { LogViewer } from './components/LogViewer';
206
225
  export type { LogViewerProps, LogEntry, LogLevel } from './components/LogViewer';
207
226
  export { AsyncSection } from './components/AsyncSection';
208
227
  export type { AsyncSectionProps } from './components/AsyncSection';
209
- export { useTitle, useMediaQuery, usePrefersReducedMotion, useDebouncedValue, useDebouncedCallback, useClipboard, } from './hooks';
228
+ export { Descriptions } from './components/Descriptions';
229
+ export type { DescriptionsProps, DescriptionsItem } from './components/Descriptions';
230
+ export { JsonView } from './components/JsonView';
231
+ export type { JsonViewProps, MoreLabelFn } from './components/JsonView';
232
+ export { Sources } from './components/Sources';
233
+ export type { SourcesProps, SourceItem } from './components/Sources';
234
+ export { FilePreview } from './components/FilePreview';
235
+ export type { FilePreviewProps, FilePreviewFile, FilePreviewStatus } from './components/FilePreview';
236
+ export { InlineCompletion } from './components/InlineCompletion';
237
+ export type { InlineCompletionProps } from './components/InlineCompletion';
238
+ export { FloatButton, FloatButtonGroup } from './components/FloatButton';
239
+ export type { FloatButtonProps, FloatButtonGroupProps } from './components/FloatButton';
240
+ export { Masonry } from './components/Masonry';
241
+ export type { MasonryProps } from './components/Masonry';
242
+ export { Signature } from './components/Signature';
243
+ export type { SignatureProps } from './components/Signature';
244
+ export { useTitle, useMediaQuery, usePrefersReducedMotion, useDebouncedValue, useDebouncedCallback, useDarkMode, useClipboard, useFullscreen, } from './hooks';
210
245
  export type { UseClipboardResult } from './hooks';
211
- export { FormItem } from './form';
212
- export type { FieldValidator, FormItemAsProps, FormItemBinding, FormItemOwnProps, FormItemProps, FormItemRawElement, FormItemRawElementBinding, FormInstance, PathValueOf, } from './form';
246
+ export type { FullscreenTarget, UseFullscreenHandle } from './hooks';
247
+ export type { ColorMode, UseDarkModeOptions, UseDarkModeResult } from './hooks';
248
+ export { useHotkeys, hotkey, useInView, useLocalStorage, useSessionStorage } from './hooks';
249
+ export type { HotkeyHandler, UseHotkeysOptions, UseInViewOptions } from './hooks';
250
+ export { useClickOutside } from './hooks';
251
+ export type { UseClickOutsideOptions } from './hooks';
252
+ export { usePrevious } from './hooks';
253
+ export { FormItem, FormList, FormProvider, useFormContext, useFieldArray, useFieldArrayItem, useWatch, trigger, setFocus, setServerErrors, setValue, getValue, getValues, reset, hasStandardProps, standardSchemaFormValidator, standardSchemaResolver, zodResolver, } from './form';
254
+ export type { FieldValidator, FormItemAsProps, FormItemBinding, FormItemOwnProps, FormItemProps, FormItemRawElement, FormItemRawElementBinding, FormInstance, FormListProps, FormListBinding, FormListField, PathValueOf, StandardSchemaV1, } from './form';
213
255
  export { useControl } from 'react-use-control';
214
256
  export type { Control, ControlOrValue } from 'react-use-control';
@@ -38,14 +38,50 @@ type PlacementGap = {
38
38
  * and a missing value entirely — count as no padding.
39
39
  */
40
40
  export declare function resolvePadding(padding?: CollisionPadding): Record<CollisionSide, number>;
41
+ /**
42
+ * Inline-axis mirror of each placement: what the logical name means in
43
+ * physical terms once the writing direction flips. Start/end alignments
44
+ * swap sides and the horizontal placements change sides; centers and the
45
+ * block axis are direction-invariant.
46
+ */
47
+ declare const mirroredPlacements: {
48
+ readonly bottom: "bottom-end";
49
+ readonly 'bottom-span': "bottom-end";
50
+ readonly 'bottom-center': "bottom-center";
51
+ readonly 'bottom-end': "bottom";
52
+ readonly top: "top";
53
+ readonly left: "right";
54
+ readonly right: "left";
55
+ };
56
+ /**
57
+ * Resolve a placement to physical terms for a writing direction: the
58
+ * identity for LTR, the inline-axis mirror for RTL.
59
+ */
60
+ export declare function mirrorPlacement<P extends keyof typeof mirroredPlacements>(placement: P, dir?: 'ltr' | 'rtl'): P | {
61
+ readonly bottom: "bottom-end";
62
+ readonly 'bottom-span': "bottom-end";
63
+ readonly 'bottom-center': "bottom-center";
64
+ readonly 'bottom-end': "bottom";
65
+ readonly top: "top";
66
+ readonly left: "right";
67
+ readonly right: "left";
68
+ }[P];
41
69
  /**
42
70
  * Resolve a fixed-panel position from literal rects: baseline coordinates →
43
71
  * flip on the primary axis → shift on the cross axis → primary-axis clamp.
44
72
  * The baseline and flip math mirror placeFloatingPanel in floating.tsx, so
45
73
  * with zero padding and both strategies enabled the output is
46
74
  * pixel-identical to the legacy behavior.
75
+ *
76
+ * `placement` is logical, not physical: under `dir: 'rtl'` it mirrors on
77
+ * the inline axis first (see `mirrorPlacement`) — 'left' lands beside the
78
+ * trigger's physical right, and the start/end alignments of the vertical
79
+ * placements swap. The returned `placement` is the physical side the panel
80
+ * actually landed on, so collision outcomes stay comparable across
81
+ * directions. Omitting `dir` (or passing 'ltr') keeps the historical
82
+ * physical behavior.
47
83
  */
48
- export declare function computeFloatingPosition({ trigger: rect, panel: box, viewport, placement, gap, strategy, }: {
84
+ export declare function computeFloatingPosition({ trigger: rect, panel: box, viewport, placement, gap, strategy, dir, }: {
49
85
  trigger: TriggerRect;
50
86
  panel: Size;
51
87
  viewport: Size;
@@ -54,6 +90,8 @@ export declare function computeFloatingPosition({ trigger: rect, panel: box, vie
54
90
  strategy: Required<Pick<CollisionStrategy, 'flip' | 'shift'>> & {
55
91
  padding: Record<CollisionSide, number>;
56
92
  };
93
+ /** Writing direction the placement resolves against; defaults to LTR. */
94
+ dir?: 'ltr' | 'rtl';
57
95
  }): {
58
96
  top: number;
59
97
  left: number;
@@ -0,0 +1,22 @@
1
+ /** Writing direction of a subtree. */
2
+ export type Direction = 'ltr' | 'rtl';
3
+ /** Direction implied by a BCP 47 tag; `undefined` when no tag is given. */
4
+ export declare function localeDirection(locale: string | undefined): Direction | undefined;
5
+ /**
6
+ * Rendered direction of an element: the nearest ancestor carrying a
7
+ * `dir` attribute, `'ltr'` when none does. `dir="auto"` resolves by
8
+ * element content, so it defers to the computed style (and to `'ltr'`
9
+ * where that is unavailable, e.g. restricted environments).
10
+ */
11
+ export declare function getDirection(el: Element | null): Direction;
12
+ /**
13
+ * Declared direction for the current tree: the LocaleProvider chain's
14
+ * explicit `direction` prop or locale-derived direction, falling back to
15
+ * the document's rendered direction when no provider is mounted.
16
+ *
17
+ * Prefer {@link getDirection} on the concrete element whenever the value
18
+ * must match the painted layout — a provider's declared direction says
19
+ * what the app intends, the `[dir]` subtree says what CSS actually
20
+ * resolved.
21
+ */
22
+ export declare function useDirection(): Direction;
@@ -22,6 +22,13 @@ export declare const floatingHidden: import("@linaria/core").LinariaClassName;
22
22
  * handover lands (a one-frame flash-back would otherwise show).
23
23
  */
24
24
  export declare const floatingAnimated: import("@linaria/core").LinariaClassName;
25
+ /**
26
+ * Whether the anchored tier can use logical `position-area` keywords.
27
+ * Probes the exact value shape the logical classes declare (see the
28
+ * syntax trap above), gated on anchor positioning itself for the same
29
+ * reason `supportsAnchorPositioning` gates on the popover API.
30
+ */
31
+ export declare function supportsLogicalPositionArea(): boolean;
25
32
  declare const anchoredPlacements: {
26
33
  readonly bottom: import("@linaria/core").LinariaClassName;
27
34
  readonly 'bottom-span': import("@linaria/core").LinariaClassName;
@@ -33,8 +40,10 @@ declare const anchoredPlacements: {
33
40
  };
34
41
  type AnchorablePlacement = keyof typeof anchoredPlacements;
35
42
  /**
36
- * Panel placement relative to the trigger. `point` leaves positioning
37
- * entirely to the consumer (e.g. ContextMenu at the pointer coordinates).
43
+ * Panel placement relative to the trigger, logical (inline-relative):
44
+ * under `dir='rtl'` the horizontal placements and the start/end
45
+ * alignments mirror (see the module's RTL note). `point` leaves
46
+ * positioning entirely to the consumer (e.g. ContextMenu at the pointer coordinates).
38
47
  */
39
48
  export type FloatingPlacement = AnchorablePlacement | 'point';
40
49
  type UseFloatingOptions = {
@@ -89,6 +98,13 @@ export type FloatingBehavior = {
89
98
  exited: boolean;
90
99
  /** Collision strategy FloatingPanel forwards to useFloatingPosition. */
91
100
  collision: CollisionStrategy | undefined;
101
+ /**
102
+ * Rendered writing direction of the trigger's subtree (`[dir]`
103
+ * resolution): drives the RTL mirror of the placement classes on the
104
+ * JS-positioned tiers. Read per render from the trigger element, so a
105
+ * panel that opens after mount always sees the live direction.
106
+ */
107
+ direction: 'ltr' | 'rtl';
92
108
  /** Unique CSS anchor name for this instance (anchored path). */
93
109
  anchorName: string;
94
110
  /** Inline style for the trigger: declares `anchor-name`. */
@@ -113,8 +129,20 @@ export type FloatingBehavior = {
113
129
  panelRef: RefObject<HTMLElement | null>;
114
130
  };
115
131
  export declare function useFloating({ open, setOpen, triggerRef, panelRef, animated, collision, }: UseFloatingOptions): FloatingBehavior;
116
- /** x-class entries placing the panel relative to the trigger, per tier. */
117
- export declare function floatingPlacementClasses(behavior: Pick<FloatingBehavior, 'native' | 'anchored'>, placement: FloatingPlacement): (string | false)[];
132
+ /**
133
+ * x-class entries placing the panel relative to the trigger, per tier.
134
+ *
135
+ * `placement` is logical (see the module's RTL note): under `dir='rtl'`
136
+ * it mirrors on the inline axis. The anchored tier prefers logical
137
+ * `position-area` classes, which mirror themselves in CSS; engines
138
+ * without the logical keywords get the physical class of the mirrored
139
+ * placement. The JS-positioned tiers (gap margins, fallback offsets)
140
+ * are physical declarations, so the mirror is applied to the lookup
141
+ * here — the same `mirrorPlacement` `placeFloatingPanel` resolves
142
+ * coordinates with, keeping the gap class and the JS math on the same
143
+ * side.
144
+ */
145
+ export declare function floatingPlacementClasses(behavior: Pick<FloatingBehavior, 'native' | 'anchored'>, placement: FloatingPlacement, dir?: 'ltr' | 'rtl'): (string | false)[];
118
146
  /**
119
147
  * Place a fixed panel from the trigger's rect (tier 2). Centers compute
120
148
  * from the panel's own rect, so this needs the panel to be laid out —
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * 焦点域 hook(Radix FocusScope 的简化版,headless:返回 ref 回调,
3
3
  * 由消费方挂到容器元素上)。负责弹层的初始聚焦 / 焦点归还 / 可选困焦,
4
- * 无 CSS 依赖,不进 src/lib/index.ts barrel。
4
+ * 无 CSS 依赖,不进 src/lib/index.ts barrel——公共面由 haze-ui/headless
5
+ * 子路径策展导出。
5
6
  */
6
7
  export type FocusScopeOptions = {
7
8
  /**
@@ -2,7 +2,8 @@
2
2
  * 纯焦点工具:tabbable 元素查询与首个聚焦目标计算。
3
3
  *
4
4
  * 无 React、无 CSS 依赖,可在任意 DOM 环境(含 jsdom)直接复用。
5
- * 与 floating.tsx 一样属于内部原语,不进 src/lib/index.ts barrel。
5
+ * 与 floating.tsx 一样属于内部原语,不进 src/lib/index.ts barrel——
6
+ * 公共面由 haze-ui/headless 子路径策展导出。
6
7
  */
7
8
  /**
8
9
  * Tab 序候选元素选择器。仅做结构性筛选;disabled / hidden /
@@ -14,14 +14,29 @@ type UseMenuKeyboardOptions = {
14
14
  * `[role=option]` list of a Command palette.
15
15
  */
16
16
  selector?: string;
17
+ /**
18
+ * Submenu levels only: called for the inline-start arrow (ArrowLeft in
19
+ * LTR, ArrowRight under `dir="rtl"` — mirrored like the horizontal
20
+ * orientation) so this level closes and focus returns to its trigger.
21
+ * Root menus leave it unset and the key stays inert.
22
+ */
23
+ onCloseToStart?: () => void;
24
+ /**
25
+ * Layout axis of the item container. Vertical (default) moves with
26
+ * ↑/↓; horizontal moves with ←/→, mirrored under `dir="rtl"` (←
27
+ * advances) so the keys follow the mirrored layout. Home/End, Escape,
28
+ * Tab-close and typeahead are direction-invariant either way.
29
+ */
30
+ orientation?: 'horizontal' | 'vertical';
17
31
  };
18
32
  /**
19
33
  * Keyboard behavior for a roving-tabindex item container (WAI-ARIA menu
20
- * button / listbox pattern): ↑/↓ move focus (wrapping, skipping disabled
21
- * items), Home/End jump to the ends, Escape closes (returning focus to
22
- * the trigger), Tab closes, and printable characters run typeahead.
34
+ * button / listbox pattern): the orientation's main-axis arrows move
35
+ * focus (wrapping, skipping disabled items), Home/End jump to the ends,
36
+ * Escape closes (returning focus to the trigger), Tab closes, and
37
+ * printable characters run typeahead.
23
38
  */
24
- export declare function useMenuKeyboard({ menuRef, onClose, selector, }: UseMenuKeyboardOptions): (event: ReactKeyboardEvent) => void;
39
+ export declare function useMenuKeyboard({ menuRef, onClose, selector, onCloseToStart, orientation, }: UseMenuKeyboardOptions): (event: ReactKeyboardEvent) => void;
25
40
  type UseRovingTabindexOptions = {
26
41
  menuRef: RefObject<HTMLElement | null>;
27
42
  /**
@@ -0,0 +1,16 @@
1
+ import type { Ref } from 'react';
2
+ /**
3
+ * Compose several refs (object and/or callback) into one callback ref.
4
+ *
5
+ * The ref-forwarding pattern for components that need their own element
6
+ * handle *and* forward the consumer's ref to the same node (React 19
7
+ * ref-as-prop): the internal `useRef` and the forwarded `ref` prop both
8
+ * receive every attach/detach.
9
+ *
10
+ * The returned callback always returns `undefined` (React 19 warns on
11
+ * non-cleanup return values), so a consumer callback ref's own React 19
12
+ * cleanup-function return is not surfaced — the usual merged-refs
13
+ * trade-off, same as every component library.
14
+ */
15
+ declare function mergeRefs<T>(...refs: (Ref<T> | undefined)[]): (node: T | null) => void;
16
+ export { mergeRefs };
@@ -0,0 +1,25 @@
1
+ import type { DraggableAttributes, DraggableSyntheticListeners } from '@dnd-kit/core';
2
+ /**
3
+ * Dnd-free seam for the drag-handle contract. The @dnd-kit imports here are
4
+ * type-only and erased at runtime, so consumers that must stay free of the
5
+ * @dnd-kit runtime (TagGroupItem) import from this module; the provider
6
+ * side (SortableItem in utils/sortable.tsx) imports the same context from
7
+ * here. Split from sortable-shared.ts so the base components never reach
8
+ * the dnd runtime. Not part of the public barrel.
9
+ */
10
+ export type SortableHandle = {
11
+ attributes: DraggableAttributes;
12
+ listeners: DraggableSyntheticListeners;
13
+ };
14
+ /**
15
+ * Handle props for the item's drag activator. SortableItem provides it so
16
+ * the item component (e.g. TagGroupItem) can place the interactive handle
17
+ * on its label span — a sibling of any close button — instead of letting
18
+ * dnd-kit's role=button land on an ancestor of interactive content (axe
19
+ * nested-interactive). Null outside a SortableItem.
20
+ */
21
+ export declare const SortableHandleContext: import("react").Context<SortableHandle | null>;
22
+ export declare function useSortableHandle(): SortableHandle | null;
23
+ /** Drag-affordance styles for the element that carries the handle props
24
+ * (cursor + letting PointerSensor own touch drags instead of scrolling). */
25
+ export declare const sortableHandle: import("@linaria/core").LinariaClassName;
@@ -0,0 +1,30 @@
1
+ import type { Transform } from '@dnd-kit/utilities';
2
+ /**
3
+ * Non-component drag-and-drop primitives for the Sortable* variants and
4
+ * the sortable wrappers in `sortable.tsx`. Split from the component file
5
+ * per the react-refresh sibling-file convention (Button/styles.ts,
6
+ * Chart/chart-elements.tsx precedents) — not part of the public barrel;
7
+ * consumers needing custom sortable surfaces should compose @dnd-kit
8
+ * directly.
9
+ *
10
+ * The @dnd-kit packages are optional peers following the Chart/recharts
11
+ * contract: these helpers import them statically, so under preserveModules
12
+ * only bundles that actually reach a Sortable* variant resolve the
13
+ * dependency.
14
+ *
15
+ * Base components (TagGroup, TagGroupItem, TagInputCore) must NOT import
16
+ * this module or utils/sortable — either would drag the @dnd-kit runtime
17
+ * into every consumer. Only the Sortable* variants and utils/sortable.tsx
18
+ * import from here.
19
+ */
20
+ /** Sensors shared by every sortable surface: pointer drags with a small
21
+ * distance threshold (so clicks never start a drag) plus the sortable
22
+ * keyboard coordinate getter — Space lifts, arrows walk one item per
23
+ * press, Space drops, Escape cancels. */
24
+ export declare function useSortableSensors(): import("@dnd-kit/core").SensorDescriptor<import("@dnd-kit/core").SensorOptions>[];
25
+ /** Inline transform style for a sortable node; `transition` animates the
26
+ * snap-back after a cancelled or completed drag. */
27
+ export declare function sortableItemStyle(transform: Transform | null, transition: string | null | undefined): {
28
+ transform: string | undefined;
29
+ transition: string | undefined;
30
+ };
@@ -0,0 +1,36 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { SortingStrategy } from '@dnd-kit/sortable';
3
+ /**
4
+ * Internal sortable wrapper components (the non-component primitives live
5
+ * in `sortable-shared.ts`). Not part of the public barrel — see the header
6
+ * comment there for the optional-peer contract.
7
+ */
8
+ type SortableRegionProps = {
9
+ /** Stable sortable ids, one per item (both call sites use indices). */
10
+ ids: (string | number)[];
11
+ /** Layout strategy — rectSortingStrategy for wrapping chip rows,
12
+ * verticalListSortingStrategy for stacked lists. */
13
+ strategy: SortingStrategy;
14
+ /** Index move resolved from a completed drag; never called when the drop
15
+ * lands back on the origin item. */
16
+ onMove: (from: number, to: number) => void;
17
+ children: ReactNode;
18
+ };
19
+ /** DndContext + SortableContext wiring with the shared sensors and
20
+ * closest-center collision. Renders no DOM of its own, so it can wrap a
21
+ * ul or a chip row without changing layout or semantics. */
22
+ export declare function SortableRegion({ ids, strategy, onMove, children }: SortableRegionProps): import("react").JSX.Element;
23
+ type SortableItemProps = {
24
+ id: string | number;
25
+ className?: string;
26
+ children: ReactNode;
27
+ };
28
+ /**
29
+ * Non-semantic wrapper span that turns its child into a sortable item. The
30
+ * wrapper itself stays free of interactive semantics (axe nested-interactive
31
+ * stays clean even when the child contains buttons); the child picks up the
32
+ * drag handle via useSortableHandle. List-semantic parents (TagInput's ul)
33
+ * inline useSortable directly so the li keeps its listitem role.
34
+ */
35
+ export declare function SortableItem({ id, className, children }: SortableItemProps): import("react").JSX.Element;
36
+ export {};