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,34 @@
1
+
2
+ "use client";
3
+ import { classnames as e } from "../../utils/classnames.js";
4
+ import { chartTree as t, resolveChartSeries as n } from "./chart-elements.js";
5
+ /* empty css */
6
+ import { jsx as r } from "react/jsx-runtime";
7
+ import { useMemo as i } from "react";
8
+ //#region src/lib/components/Chart/Chart.tsx
9
+ var a = "haze-Chart__root";
10
+ function o({ type: o, data: s, series: c, xKey: l, height: u = 300, innerRadius: d = 0, layout: f = "horizontal", renderTooltip: p, showLegend: m = !1, showGrid: h = !0, showTooltip: g = !0, className: _, style: v, ...y }) {
11
+ let b = i(() => n(c), [c]);
12
+ return /* @__PURE__ */ r("div", {
13
+ style: {
14
+ height: u,
15
+ ...v
16
+ },
17
+ ...y,
18
+ className: e([a, _]),
19
+ children: t({
20
+ type: o,
21
+ data: s,
22
+ xKey: l,
23
+ showGrid: h,
24
+ showTooltip: g,
25
+ showLegend: m,
26
+ series: b,
27
+ layout: f,
28
+ innerRadius: d,
29
+ renderTooltip: p ? (e) => p(e) : void 0
30
+ })
31
+ });
32
+ }
33
+ //#endregion
34
+ export { o as default };
@@ -0,0 +1,164 @@
1
+ "use client";
2
+ import { Fragment as e, jsx as t, jsxs as n } from "react/jsx-runtime";
3
+ import { Area as r, AreaChart as i, Bar as a, BarChart as o, CartesianGrid as s, Legend as c, Line as l, LineChart as u, Pie as d, PieChart as f, ResponsiveContainer as p, Tooltip as m, XAxis as h, YAxis as g } from "recharts";
4
+ //#region src/lib/components/Chart/chart-elements.tsx
5
+ var _ = [
6
+ "var(--haze-color-primary)",
7
+ "var(--haze-color-info)",
8
+ "var(--haze-color-success)",
9
+ "var(--haze-color-warning)",
10
+ "var(--haze-color-danger)"
11
+ ], v = "var(--haze-color-border)", y = {
12
+ fontSize: "var(--haze-text-sm)",
13
+ fill: "var(--haze-color-text-secondary)"
14
+ }, b = {
15
+ fontSize: "var(--haze-text-sm)",
16
+ color: "var(--haze-color-text)"
17
+ }, x = { fontSize: "var(--haze-text-sm)" };
18
+ function S(e) {
19
+ return _[e % _.length];
20
+ }
21
+ function C(e) {
22
+ return e.map((e) => ({
23
+ key: e.key,
24
+ label: e.label ?? e.key,
25
+ color: e.color
26
+ }));
27
+ }
28
+ function w(e, n, i = 0) {
29
+ let { key: o, label: s } = n, c = n.color ?? S(i);
30
+ switch (e) {
31
+ case "area": return /* @__PURE__ */ t(r, {
32
+ dataKey: o,
33
+ name: s,
34
+ stroke: c,
35
+ fill: c
36
+ }, o);
37
+ case "bar": return /* @__PURE__ */ t(a, {
38
+ dataKey: o,
39
+ name: s,
40
+ fill: c
41
+ }, o);
42
+ case "line": return /* @__PURE__ */ t(l, {
43
+ dataKey: o,
44
+ name: s,
45
+ stroke: c
46
+ }, o);
47
+ }
48
+ }
49
+ function T(e, t, n) {
50
+ if (t <= 1) return {
51
+ innerRadius: n,
52
+ outerRadius: "80%"
53
+ };
54
+ let r = typeof n == "string" ? Number.parseFloat(n) : 0, i = Number.isFinite(r) ? Math.max(r, 0) : 0, a = (80 - i) / t;
55
+ return {
56
+ innerRadius: `${i + e * a}%`,
57
+ outerRadius: `${i + (e + 1) * a}%`
58
+ };
59
+ }
60
+ function E(e) {
61
+ let { entry: n, data: r, nameKey: i, ringIndex: a, ringCount: o, innerRadius: s } = e, c = T(a, o, s), l = r.map((e, t) => ({
62
+ ...e,
63
+ fill: n.color ?? S(t)
64
+ }));
65
+ return /* @__PURE__ */ t(d, {
66
+ data: l,
67
+ dataKey: n.key,
68
+ nameKey: i,
69
+ innerRadius: c.innerRadius,
70
+ outerRadius: c.outerRadius,
71
+ stroke: "var(--haze-color-bg)"
72
+ }, n.key);
73
+ }
74
+ function D(e, n, r, a = "horizontal") {
75
+ switch (e) {
76
+ case "area": return /* @__PURE__ */ t(i, {
77
+ data: n,
78
+ layout: a,
79
+ children: r
80
+ });
81
+ case "bar": return /* @__PURE__ */ t(o, {
82
+ data: n,
83
+ layout: a,
84
+ children: r
85
+ });
86
+ case "line": return /* @__PURE__ */ t(u, {
87
+ data: n,
88
+ layout: a,
89
+ children: r
90
+ });
91
+ case "pie": return /* @__PURE__ */ t(f, {
92
+ data: n,
93
+ children: r
94
+ });
95
+ }
96
+ }
97
+ function O(e) {
98
+ return (t) => {
99
+ let { payload: n, label: r } = t;
100
+ return e({
101
+ label: r,
102
+ entries: (n ?? []).map((e) => ({
103
+ name: String(e.name ?? e.dataKey ?? ""),
104
+ value: e.value ?? "",
105
+ color: e.color ?? "",
106
+ dataEntry: e.payload
107
+ }))
108
+ });
109
+ };
110
+ }
111
+ function k(r) {
112
+ let { type: i, data: a, xKey: o, showGrid: l, showTooltip: u, showLegend: d, series: f, layout: _ = "horizontal", innerRadius: S = 0, renderTooltip: C } = r, T = C ? O(C) : void 0;
113
+ return i === "pie" ? /* @__PURE__ */ t(p, {
114
+ width: "100%",
115
+ height: "100%",
116
+ children: D(i, a, /* @__PURE__ */ n(e, { children: [
117
+ u && /* @__PURE__ */ t(m, {
118
+ contentStyle: b,
119
+ content: T
120
+ }),
121
+ d && /* @__PURE__ */ t(c, { wrapperStyle: x }),
122
+ f.map((e, t) => E({
123
+ entry: e,
124
+ data: a,
125
+ nameKey: o,
126
+ ringIndex: t,
127
+ ringCount: f.length,
128
+ innerRadius: S
129
+ }))
130
+ ] }))
131
+ }) : /* @__PURE__ */ t(p, {
132
+ width: "100%",
133
+ height: "100%",
134
+ children: D(i, a, /* @__PURE__ */ n(e, { children: [
135
+ l && /* @__PURE__ */ t(s, { stroke: "var(--haze-color-border)" }),
136
+ _ === "vertical" ? /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t(h, {
137
+ type: "number",
138
+ stroke: v,
139
+ tick: y
140
+ }), /* @__PURE__ */ t(g, {
141
+ type: "category",
142
+ dataKey: o,
143
+ stroke: v,
144
+ tick: y
145
+ })] }) : /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t(h, {
146
+ dataKey: o,
147
+ stroke: v,
148
+ tick: y
149
+ }), /* @__PURE__ */ t(g, {
150
+ stroke: v,
151
+ tick: y
152
+ })] }),
153
+ u && /* @__PURE__ */ t(m, {
154
+ cursor: { stroke: "var(--haze-color-border)" },
155
+ contentStyle: b,
156
+ content: T
157
+ }),
158
+ d && /* @__PURE__ */ t(c, { wrapperStyle: x }),
159
+ f.map((e, t) => w(i, e, t))
160
+ ] }), _)
161
+ });
162
+ }
163
+ //#endregion
164
+ export { v as AXIS_STROKE, y as AXIS_TICK, x as LEGEND_STYLE, b as TOOLTIP_STYLE, O as buildTooltipContent, D as chartElement, k as chartTree, E as pieElement, T as pieRingRadii, C as resolveChartSeries, w as seriesElement };
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ import e from "./Chart.js";
3
+ export { e as Chart };
@@ -1,27 +1,47 @@
1
1
 
2
2
  "use client";
3
3
  import { classnames as e } from "../../utils/classnames.js";
4
+ import { useStrings as t } from "../LocaleProvider/useStrings.js";
4
5
  /* empty css */
5
- import { jsx as t } from "react/jsx-runtime";
6
- import { useEffect as n, useRef as r } from "react";
6
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
7
+ import { useCallback as i, useEffect as a, useRef as o, useState as s } from "react";
7
8
  //#region src/lib/components/ChatContainer/ChatContainer.tsx
8
- var i = "haze-ChatContainer__container";
9
- function a({ children: a, autoScroll: o = !0, className: s }) {
10
- let c = r(null);
11
- return n(() => {
12
- if (!o || !c.current) return;
13
- let e = c.current, t = new MutationObserver(() => {
14
- e.scrollTop = e.scrollHeight;
9
+ var c = 40, l = "haze-ChatContainer__container", u = "haze-ChatContainer__jumpPill";
10
+ function d({ children: d, autoScroll: f = !0, unreadLabel: p, className: m, ...h }) {
11
+ let g = o(null), [_, v] = s(!1), y = o(!0), b = t("chat"), x = i(() => {
12
+ let e = g.current;
13
+ e && (y.current = !0, e.scrollTop = e.scrollHeight, v(!1));
14
+ }, []);
15
+ return a(() => {
16
+ let e = g.current;
17
+ if (!e || !f) return;
18
+ let t = () => e.scrollHeight - e.scrollTop - e.clientHeight, n = () => {
19
+ y.current = t() < c, y.current && v(!1);
20
+ };
21
+ e.addEventListener("scroll", n, { passive: !0 }), y.current = !0, e.scrollTop = e.scrollHeight;
22
+ let r = new MutationObserver(() => {
23
+ y.current ? e.scrollTop = e.scrollHeight : v(!0);
15
24
  });
16
- return t.observe(e, {
25
+ return r.observe(e, {
17
26
  childList: !0,
18
27
  subtree: !0
19
- }), e.scrollTop = e.scrollHeight, () => t.disconnect();
20
- }, [o]), /* @__PURE__ */ t("div", {
21
- ref: c,
22
- className: e([i, s]),
23
- children: a
28
+ }), () => {
29
+ e.removeEventListener("scroll", n), r.disconnect();
30
+ };
31
+ }, [f]), /* @__PURE__ */ r("div", {
32
+ ref: g,
33
+ ...h,
34
+ className: e([l, m]),
35
+ children: [d, f && _ && /* @__PURE__ */ r("button", {
36
+ type: "button",
37
+ onClick: x,
38
+ className: e([u]),
39
+ children: [/* @__PURE__ */ n("span", {
40
+ "aria-hidden": "true",
41
+ children: "↓"
42
+ }), p ?? b.newMessages]
43
+ })]
24
44
  });
25
45
  }
26
46
  //#endregion
27
- export { a as default };
47
+ export { d as default };
@@ -3,46 +3,66 @@
3
3
  import { classnames as e } from "../../utils/classnames.js";
4
4
  import { useStrings as t } from "../LocaleProvider/useStrings.js";
5
5
  /* empty css */
6
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
7
- import { useCallback as i, useRef as a } from "react";
8
- import { useControl as o } from "react-use-control";
6
+ import { Fragment as n, jsx as r, jsxs as i } from "react/jsx-runtime";
7
+ import { useCallback as a, useRef as o } from "react";
8
+ import { useControl as s } from "react-use-control";
9
9
  //#region src/lib/components/ChatInput/ChatInput.tsx
10
- var s = "haze-ChatInput__wrapper", c = "haze-ChatInput__textarea", l = "haze-ChatInput__sendBtn";
11
- function u({ value: u, onSend: d, placeholder: f, disabled: p, maxLength: m, className: h }) {
12
- let [g, _] = o(u, ""), v = a(null), y = t("chatInput"), b = f ?? y.placeholder, x = i(() => {
13
- let e = g.trim();
14
- e && !p && (d?.(e), _(""), v.current && (v.current.style.height = "auto"));
10
+ var c = "haze-ChatInput__wrapper", l = "haze-ChatInput__textarea", u = "haze-ChatInput__sendBtn", d = () => /* @__PURE__ */ r("svg", {
11
+ width: "12",
12
+ height: "12",
13
+ viewBox: "0 0 12 12",
14
+ fill: "currentColor",
15
+ "aria-hidden": "true",
16
+ focusable: "false",
17
+ children: r("rect", {
18
+ x: "2",
19
+ y: "2",
20
+ width: "8",
21
+ height: "8",
22
+ rx: "1.5"
23
+ })
24
+ });
25
+ function f({ value: f, onSend: p, generating: m = !1, onStop: h, placeholder: g, disabled: _, maxLength: v, className: y }) {
26
+ let [b, x] = s(f, ""), S = o(null), C = t("chatInput"), w = t("chat"), T = g ?? C.placeholder, E = a(() => {
27
+ if (m) {
28
+ h?.();
29
+ return;
30
+ }
31
+ let e = b.trim();
32
+ e && !_ && (p?.(e), x(""), S.current && (S.current.style.height = "auto"));
15
33
  }, [
16
- g,
34
+ m,
35
+ h,
36
+ b,
37
+ _,
17
38
  p,
18
- d,
19
- _
39
+ x
20
40
  ]);
21
- return /* @__PURE__ */ r("div", {
22
- className: e([s, h]),
23
- children: [/* @__PURE__ */ n("textarea", {
24
- ref: v,
25
- value: g,
41
+ return /* @__PURE__ */ i("div", {
42
+ className: e([c, y]),
43
+ children: [/* @__PURE__ */ r("textarea", {
44
+ ref: S,
45
+ value: b,
26
46
  onChange: (e) => {
27
- _(e.target.value), v.current && (v.current.style.height = "auto", v.current.style.height = `${v.current.scrollHeight}px`);
47
+ x(e.target.value), S.current && (S.current.style.height = "auto", S.current.style.height = `${S.current.scrollHeight}px`);
28
48
  },
29
49
  onKeyDown: (e) => {
30
- e.key === "Enter" && !e.shiftKey && (e.preventDefault(), x());
50
+ e.key === "Enter" && !e.shiftKey && (e.preventDefault(), E());
31
51
  },
32
- placeholder: b,
33
- disabled: p,
34
- maxLength: m,
52
+ placeholder: T,
53
+ disabled: _,
54
+ maxLength: v,
35
55
  rows: 1,
36
- className: e([c])
37
- }), /* @__PURE__ */ n("button", {
56
+ className: e([l])
57
+ }), /* @__PURE__ */ r("button", {
38
58
  type: "button",
39
- onClick: x,
40
- disabled: p || !g.trim(),
41
- "aria-label": y.send,
42
- className: e([l]),
43
- children: "↑"
59
+ onClick: E,
60
+ disabled: _ || !m && !b.trim(),
61
+ "aria-label": m ? w.stopGeneration : C.send,
62
+ className: e([u]),
63
+ children: m ? /* @__PURE__ */ r(d, {}) : /* @__PURE__ */ r(n, { children: "↑" })
44
64
  })]
45
65
  });
46
66
  }
47
67
  //#endregion
48
- export { u as default };
68
+ export { f as default };
@@ -2,42 +2,89 @@
2
2
  "use client";
3
3
  import { classnames as e } from "../../utils/classnames.js";
4
4
  import { useStrings as t } from "../LocaleProvider/useStrings.js";
5
+ import { useClipboard as n } from "../../hooks/useClipboard.js";
5
6
  /* empty css */
6
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
7
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
8
+ import { useRef as a } from "react";
7
9
  //#region src/lib/components/ChatMessage/ChatMessage.tsx
8
- var i = "haze-ChatMessage__wrapper", a = "haze-ChatMessage__wrapperUser", o = "haze-ChatMessage__avatarSlot", s = "haze-ChatMessage__body", c = "haze-ChatMessage__header", l = "haze-ChatMessage__headerUser", u = "haze-ChatMessage__bubble", d = "haze-ChatMessage__bubbleUser", f = "haze-ChatMessage__bubbleAssistant", p = "haze-ChatMessage__bubbleSystem", m = "haze-ChatMessage__statusText", h = "haze-ChatMessage__statusError", g = {
9
- user: d,
10
- assistant: f,
11
- system: p
12
- };
13
- function _({ role: d, avatar: f, name: p, timestamp: _, status: v, children: y, className: b }) {
14
- let x = d === "user", S = t("chatMessage");
15
- return /* @__PURE__ */ r("div", {
10
+ var o = 1500, s = "haze-ChatMessage__actionsRow", c = "haze-ChatMessage__wrapper", l = "haze-ChatMessage__wrapperUser", u = "haze-ChatMessage__avatarSlot", d = "haze-ChatMessage__body", f = "haze-ChatMessage__header", p = "haze-ChatMessage__headerUser", m = "haze-ChatMessage__bubble", h = "haze-ChatMessage__bubbleUser", g = "haze-ChatMessage__bubbleAssistant", _ = "haze-ChatMessage__bubbleSystem", v = "haze-ChatMessage__statusText", y = "haze-ChatMessage__statusError", b = "haze-ChatMessage__actionBtn", x = "haze-ChatMessage__actionBtnCopied", S = {
11
+ user: h,
12
+ assistant: g,
13
+ system: _
14
+ }, C = () => /* @__PURE__ */ i("svg", {
15
+ width: "14",
16
+ height: "14",
17
+ viewBox: "0 0 24 24",
18
+ fill: "none",
19
+ stroke: "currentColor",
20
+ strokeWidth: "2",
21
+ strokeLinecap: "round",
22
+ strokeLinejoin: "round",
23
+ "aria-hidden": "true",
24
+ focusable: "false",
25
+ children: [/* @__PURE__ */ r("rect", {
26
+ x: "9",
27
+ y: "9",
28
+ width: "13",
29
+ height: "13",
30
+ rx: "2",
31
+ ry: "2"
32
+ }), /* @__PURE__ */ r("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })]
33
+ }), w = () => /* @__PURE__ */ r("svg", {
34
+ width: "14",
35
+ height: "14",
36
+ viewBox: "0 0 24 24",
37
+ fill: "none",
38
+ stroke: "currentColor",
39
+ strokeWidth: "2",
40
+ strokeLinecap: "round",
41
+ strokeLinejoin: "round",
42
+ "aria-hidden": "true",
43
+ focusable: "false",
44
+ children: r("path", { d: "M20 6 9 17l-5-5" })
45
+ });
46
+ function T({ role: h, avatar: g, name: _, timestamp: T, status: E, copyable: D = !1, actions: O, children: k, className: A }) {
47
+ let j = h === "user", M = t("chatMessage"), N = t("chat"), P = a(null), { copied: F, copy: I } = n(o), L = D || O !== void 0;
48
+ return /* @__PURE__ */ i("div", {
49
+ "data-chat-actions": L ? !0 : void 0,
16
50
  className: e([
17
- i,
18
- x && a,
19
- b
51
+ c,
52
+ j && l,
53
+ A
20
54
  ]),
21
- children: [d !== "system" && /* @__PURE__ */ n("div", {
22
- className: e([o]),
23
- children: f || (d === "user" ? "U" : "A")
24
- }), /* @__PURE__ */ r("div", {
25
- className: e([s]),
55
+ children: [h !== "system" && /* @__PURE__ */ r("div", {
56
+ className: e([u]),
57
+ children: g || (h === "user" ? "U" : "A")
58
+ }), /* @__PURE__ */ i("div", {
59
+ className: e([d]),
26
60
  children: [
27
- (p || _) && /* @__PURE__ */ r("div", {
28
- className: e([c, x && l]),
29
- children: [p && /* @__PURE__ */ n("span", { children: p }), _ && /* @__PURE__ */ n("span", { children: _ })]
61
+ (_ || T) && /* @__PURE__ */ i("div", {
62
+ className: e([f, j && p]),
63
+ children: [_ && /* @__PURE__ */ r("span", { children: _ }), T && /* @__PURE__ */ r("span", { children: T })]
30
64
  }),
31
- /* @__PURE__ */ n("div", {
32
- className: e([u, g[d]]),
33
- children: y
65
+ /* @__PURE__ */ r("div", {
66
+ ref: P,
67
+ className: e([m, S[h]]),
68
+ children: k
34
69
  }),
35
- v && /* @__PURE__ */ r("div", {
36
- className: e([m, v === "error" && h]),
70
+ L && /* @__PURE__ */ i("div", {
71
+ className: e([s]),
72
+ children: [D && /* @__PURE__ */ r("button", {
73
+ type: "button",
74
+ onClick: () => {
75
+ I(P.current?.textContent ?? "");
76
+ },
77
+ "aria-label": N.copy,
78
+ className: e([b, F && x]),
79
+ children: r(F ? w : C, {})
80
+ }), O]
81
+ }),
82
+ E && /* @__PURE__ */ i("div", {
83
+ className: e([v, E === "error" && y]),
37
84
  children: [
38
- v === "sending" && S.sending,
39
- v === "sent" && S.sent,
40
- v === "error" && S.failedToSend
85
+ E === "sending" && M.sending,
86
+ E === "sent" && M.sent,
87
+ E === "error" && M.failedToSend
41
88
  ]
42
89
  })
43
90
  ]
@@ -45,4 +92,4 @@ function _({ role: d, avatar: f, name: p, timestamp: _, status: v, children: y,
45
92
  });
46
93
  }
47
94
  //#endregion
48
- export { _ as default };
95
+ export { T as default };
@@ -3,15 +3,16 @@ import e from "./CheckboxCore.js";
3
3
  import { jsx as t } from "react/jsx-runtime";
4
4
  import { useControl as n } from "react-use-control";
5
5
  //#region src/lib/components/Checkbox/Checkbox.tsx
6
- function r({ checked: r, className: i, label: a, onChange: o, ...s }) {
7
- let [c, l] = n(r, !1);
6
+ function r({ checked: r, className: i, label: a, onChange: o, ref: s, ...c }) {
7
+ let [l, u] = n(r, !1);
8
8
  return /* @__PURE__ */ t(e, {
9
- checked: c,
10
- onChange: l,
9
+ ref: s,
10
+ checked: l,
11
+ onChange: u,
11
12
  onNativeChange: o,
12
13
  className: i,
13
14
  label: a,
14
- ...s
15
+ ...c
15
16
  });
16
17
  }
17
18
  //#endregion
@@ -5,19 +5,20 @@ import { classnames as e } from "../../utils/classnames.js";
5
5
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
6
6
  //#region src/lib/components/Checkbox/CheckboxCore.tsx
7
7
  var r = "haze-CheckboxCore__base", i = "haze-CheckboxCore__labelText";
8
- function a({ checked: a, onChange: o, onNativeChange: s, className: c, label: l, ...u }) {
9
- let d = /* @__PURE__ */ t("input", {
8
+ function a({ checked: a, onChange: o, onNativeChange: s, className: c, label: l, ref: u, ...d }) {
9
+ let f = /* @__PURE__ */ t("input", {
10
+ ref: u,
10
11
  type: "checkbox",
11
12
  checked: a,
12
13
  onChange: (e) => {
13
14
  o(e.target.checked), s?.(e);
14
15
  },
15
- ...u,
16
+ ...d,
16
17
  className: e([r, c])
17
18
  });
18
- return l === void 0 ? d : /* @__PURE__ */ n("label", {
19
+ return l === void 0 ? f : /* @__PURE__ */ n("label", {
19
20
  className: e(i),
20
- children: [d, l]
21
+ children: [f, l]
21
22
  });
22
23
  }
23
24
  //#endregion
@@ -1,21 +1,50 @@
1
1
 
2
- "use client";
3
2
  import { classnames as e } from "../../utils/classnames.js";
4
3
  /* empty css */
5
4
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
5
+ import { useEffect as r, useMemo as i, useState as a } from "react";
6
6
  //#region src/lib/components/CodeBlock/CodeBlock.tsx
7
- var r = "haze-CodeBlock__block", i = "haze-CodeBlock__pre", a = "haze-CodeBlock__lang";
8
- function o({ children: o, language: s, className: c }) {
7
+ var o = "haze-CodeBlock__block", s = "haze-CodeBlock__pre", c = "haze-CodeBlock__lang";
8
+ function l({ children: l, language: u, highlight: d, className: f }) {
9
+ let p = typeof l == "string" ? l : void 0, m = i(() => {
10
+ if (d !== void 0 && p !== void 0) try {
11
+ return d(p, u ?? "");
12
+ } catch {
13
+ return;
14
+ }
15
+ }, [
16
+ d,
17
+ p,
18
+ u
19
+ ]), h = m instanceof Promise ? m : void 0, [g, _] = a(null);
20
+ r(() => {
21
+ if (h === void 0) return;
22
+ let e = !0;
23
+ return h.then((t) => {
24
+ e && _({
25
+ pending: h,
26
+ html: t
27
+ });
28
+ }, () => {
29
+ e && _({
30
+ pending: h,
31
+ html: null
32
+ });
33
+ }), () => {
34
+ e = !1;
35
+ };
36
+ }, [h]);
37
+ let v = typeof m == "string" ? m : g !== null && g.pending === h ? g.html : null;
9
38
  return /* @__PURE__ */ n("div", {
10
- className: e([r, c]),
11
- children: [s && /* @__PURE__ */ t("span", {
12
- className: e([a]),
13
- children: s
39
+ className: e([o, f]),
40
+ children: [u && /* @__PURE__ */ t("span", {
41
+ className: e([c]),
42
+ children: u
14
43
  }), /* @__PURE__ */ t("pre", {
15
- className: e([i]),
16
- children: /* @__PURE__ */ t("code", { children: o })
44
+ className: e([s]),
45
+ children: v === null ? /* @__PURE__ */ t("code", { children: l }) : /* @__PURE__ */ t("code", { dangerouslySetInnerHTML: { __html: v } })
17
46
  })]
18
47
  });
19
48
  }
20
49
  //#endregion
21
- export { o as default };
50
+ export { l as default };
@@ -1,3 +1,2 @@
1
- "use client";
2
1
  import e from "./CodeBlock.js";
3
2
  export { e as CodeBlock };
@@ -14,36 +14,49 @@ function s() {
14
14
  return e;
15
15
  }
16
16
  var c = "haze-Collapsible__base";
17
- function l({ open: t, defaultOpen: r = !1, children: i, className: s }) {
18
- let [l, u] = a(t, r);
17
+ function l({ open: t, defaultOpen: r = !1, classNames: i, children: s, className: l }) {
18
+ let [u, d] = a(t, r);
19
19
  return /* @__PURE__ */ n(o.Provider, {
20
20
  value: {
21
- open: l,
22
- toggle: () => u((e) => !e)
21
+ open: u,
22
+ toggle: () => d((e) => !e),
23
+ classNames: i
23
24
  },
24
25
  children: n("div", {
25
- className: e([c, s]),
26
- children: i
26
+ className: e([
27
+ c,
28
+ l,
29
+ i?.root
30
+ ]),
31
+ children: s
27
32
  })
28
33
  });
29
34
  }
30
35
  var u = "haze-Collapsible__triggerStyle";
31
36
  function d({ children: t, className: r }) {
32
- let { toggle: i } = s();
37
+ let { toggle: i, classNames: a } = s();
33
38
  return /* @__PURE__ */ n("button", {
34
39
  type: "button",
35
40
  onClick: i,
36
- className: e([u, r]),
41
+ className: e([
42
+ u,
43
+ r,
44
+ a?.trigger
45
+ ]),
37
46
  children: t
38
47
  });
39
48
  }
40
49
  var f = "haze-Collapsible__contentOuter", p = "haze-Collapsible__contentInner";
41
50
  function m({ children: r, className: i }) {
42
- let { open: a } = s();
51
+ let { open: a, classNames: o } = s();
43
52
  return /* @__PURE__ */ n(t, {
44
53
  present: a,
45
54
  children: n("div", {
46
- className: e([f, i]),
55
+ className: e([
56
+ f,
57
+ i,
58
+ o?.content
59
+ ]),
47
60
  children: /* @__PURE__ */ n("div", {
48
61
  className: e(p),
49
62
  children: r