haze-ui 1.25.0 → 1.27.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 (565) hide show
  1. package/README.md +492 -10
  2. package/dist/components/Accordion/Accordion.js +1 -0
  3. package/dist/components/Accordion/AccordionItem.js +1 -0
  4. package/dist/components/Accordion/index.js +1 -0
  5. package/dist/components/Affix/Affix.js +1 -0
  6. package/dist/components/Affix/index.js +1 -0
  7. package/dist/components/Alert/Alert.js +1 -0
  8. package/dist/components/Alert/index.js +1 -0
  9. package/dist/components/Anchor/Anchor.js +78 -0
  10. package/dist/components/Anchor/index.js +3 -0
  11. package/dist/components/AppShell/AppShell.js +44 -0
  12. package/dist/components/AppShell/index.js +3 -0
  13. package/dist/components/ApprovalCard/ApprovalCard.js +1 -0
  14. package/dist/components/ApprovalCard/index.js +1 -0
  15. package/dist/components/AsyncSection/AsyncSection.js +1 -0
  16. package/dist/components/AsyncSection/index.js +1 -0
  17. package/dist/components/Avatar/Avatar.js +1 -0
  18. package/dist/components/Avatar/index.js +1 -0
  19. package/dist/components/AvatarGroup/AvatarGroup.js +1 -0
  20. package/dist/components/AvatarGroup/index.js +1 -0
  21. package/dist/components/BackToTop/BackToTop.js +1 -0
  22. package/dist/components/BackToTop/index.js +1 -0
  23. package/dist/components/Badge/Badge.js +5 -16
  24. package/dist/components/Badge/badge-styles.js +15 -0
  25. package/dist/components/Badge/index.js +3 -2
  26. package/dist/components/Banner/Banner.js +1 -0
  27. package/dist/components/Banner/index.js +1 -0
  28. package/dist/components/BottomSheet/BottomSheet.js +134 -22
  29. package/dist/components/BottomSheet/index.js +1 -0
  30. package/dist/components/Breadcrumb/Breadcrumb.js +1 -0
  31. package/dist/components/Breadcrumb/BreadcrumbItem.js +1 -0
  32. package/dist/components/Breadcrumb/index.js +1 -0
  33. package/dist/components/Button/Button.js +1 -0
  34. package/dist/components/Button/ButtonLink.js +1 -0
  35. package/dist/components/Button/index.js +5 -3
  36. package/dist/components/Button/styles.js +1 -0
  37. package/dist/components/Calendar/Calendar.js +453 -105
  38. package/dist/components/Calendar/date.js +87 -0
  39. package/dist/components/Calendar/index.js +1 -0
  40. package/dist/components/Carousel/Carousel.js +65 -41
  41. package/dist/components/Carousel/CarouselSlide.js +1 -0
  42. package/dist/components/Carousel/index.js +1 -0
  43. package/dist/components/Cascader/Cascader.js +186 -137
  44. package/dist/components/Cascader/index.js +1 -0
  45. package/dist/components/Chart/Chart.js +31 -0
  46. package/dist/components/Chart/chart-elements.js +88 -0
  47. package/dist/components/Chart/index.js +3 -0
  48. package/dist/components/ChatContainer/ChatContainer.js +37 -16
  49. package/dist/components/ChatContainer/index.js +1 -0
  50. package/dist/components/ChatInput/ChatInput.js +50 -29
  51. package/dist/components/ChatInput/index.js +1 -0
  52. package/dist/components/ChatMessage/ChatMessage.js +77 -29
  53. package/dist/components/ChatMessage/index.js +1 -0
  54. package/dist/components/Checkbox/Checkbox.js +7 -5
  55. package/dist/components/Checkbox/CheckboxCore.js +7 -5
  56. package/dist/components/Checkbox/index.js +1 -0
  57. package/dist/components/Chip/Chip.js +1 -0
  58. package/dist/components/Chip/index.js +1 -0
  59. package/dist/components/Collapsible/Collapsible.js +24 -10
  60. package/dist/components/Collapsible/index.js +1 -0
  61. package/dist/components/ColorPicker/ColorPicker.js +6 -4
  62. package/dist/components/ColorPicker/ColorPickerCore.js +6 -4
  63. package/dist/components/ColorPicker/index.js +1 -0
  64. package/dist/components/Combobox/Combobox.js +196 -69
  65. package/dist/components/Combobox/ComboboxGroup.js +23 -0
  66. package/dist/components/Combobox/ComboboxOption.js +10 -5
  67. package/dist/components/Combobox/index.js +5 -3
  68. package/dist/components/Command/Command.js +103 -59
  69. package/dist/components/Command/CommandDialog.js +48 -0
  70. package/dist/components/Command/command-filter.js +16 -0
  71. package/dist/components/Command/index.js +4 -2
  72. package/dist/components/ConfirmDialog/ConfirmDialog.js +4 -3
  73. package/dist/components/ConfirmDialog/index.js +1 -0
  74. package/dist/components/ContextMenu/ContextMenu.js +1 -0
  75. package/dist/components/ContextMenu/ContextMenuContent.js +5 -4
  76. package/dist/components/ContextMenu/ContextMenuContext.js +1 -0
  77. package/dist/components/ContextMenu/ContextMenuItem.js +1 -0
  78. package/dist/components/ContextMenu/ContextMenuSeparator.js +1 -0
  79. package/dist/components/ContextMenu/ContextMenuTrigger.js +1 -0
  80. package/dist/components/ContextMenu/index.js +1 -0
  81. package/dist/components/ConversationList/ConversationItem.js +1 -0
  82. package/dist/components/ConversationList/ConversationList.js +1 -0
  83. package/dist/components/ConversationList/index.js +1 -0
  84. package/dist/components/DataTable/CellEditor.js +38 -0
  85. package/dist/components/DataTable/DataTable.js +415 -125
  86. package/dist/components/DataTable/features.js +25 -0
  87. package/dist/components/DataTable/index.js +3 -1
  88. package/dist/components/DataTable/summary.js +17 -0
  89. package/dist/components/DateRangePicker/DateRangePicker.js +11 -7
  90. package/dist/components/DateRangePicker/DateRangePickerCore.js +60 -27
  91. package/dist/components/DateRangePicker/index.js +1 -0
  92. package/dist/components/Datepicker/Datepicker.js +17 -12
  93. package/dist/components/Datepicker/DatepickerCore.js +51 -37
  94. package/dist/components/Datepicker/index.js +1 -0
  95. package/dist/components/Dialog/Dialog.js +57 -32
  96. package/dist/components/Dialog/index.js +1 -0
  97. package/dist/components/DiffViewer/DiffViewer.js +1 -0
  98. package/dist/components/DiffViewer/index.js +1 -0
  99. package/dist/components/Disclosure/Disclosure.js +1 -0
  100. package/dist/components/Disclosure/index.js +1 -0
  101. package/dist/components/Drawer/Drawer.js +50 -29
  102. package/dist/components/Drawer/index.js +1 -0
  103. package/dist/components/DropdownMenu/DropdownMenu.js +39 -26
  104. package/dist/components/DropdownMenu/DropdownMenuContent.js +1 -0
  105. package/dist/components/DropdownMenu/DropdownMenuContext.js +1 -0
  106. package/dist/components/DropdownMenu/DropdownMenuItem.js +1 -0
  107. package/dist/components/DropdownMenu/DropdownMenuSeparator.js +1 -0
  108. package/dist/components/DropdownMenu/DropdownMenuSub.js +23 -0
  109. package/dist/components/DropdownMenu/DropdownMenuSubContent.js +24 -0
  110. package/dist/components/DropdownMenu/DropdownMenuSubTrigger.js +30 -0
  111. package/dist/components/DropdownMenu/DropdownMenuTrigger.js +1 -0
  112. package/dist/components/DropdownMenu/index.js +5 -1
  113. package/dist/components/Empty/Empty.js +1 -0
  114. package/dist/components/Empty/index.js +1 -0
  115. package/dist/components/FileInput/FileInput.js +1 -0
  116. package/dist/components/FileInput/index.js +1 -0
  117. package/dist/components/Fullscreen/Fullscreen.js +29 -0
  118. package/dist/components/Fullscreen/index.js +3 -0
  119. package/dist/components/HoverCard/HoverCard.js +1 -0
  120. package/dist/components/HoverCard/index.js +1 -0
  121. package/dist/components/Image/Image.js +38 -19
  122. package/dist/components/Image/ImagePreview.js +233 -0
  123. package/dist/components/Image/index.js +1 -0
  124. package/dist/components/InlineEdit/InlineEdit.js +1 -0
  125. package/dist/components/InlineEdit/index.js +1 -0
  126. package/dist/components/Input/Input.js +7 -5
  127. package/dist/components/Input/InputCore.js +4 -2
  128. package/dist/components/Input/index.js +1 -0
  129. package/dist/components/List/List.js +1 -0
  130. package/dist/components/List/ListItem.js +1 -0
  131. package/dist/components/List/index.js +1 -0
  132. package/dist/components/LocaleProvider/LocaleContext.js +1 -0
  133. package/dist/components/LocaleProvider/LocaleProvider.js +17 -13
  134. package/dist/components/LocaleProvider/index.js +6 -3
  135. package/dist/components/LocaleProvider/locale.js +65 -3
  136. package/dist/components/LocaleProvider/strings.js +15 -0
  137. package/dist/components/LocaleProvider/useStrings.js +18 -8
  138. package/dist/components/LocaleProvider/zh-cn.js +184 -0
  139. package/dist/components/LogViewer/LogViewer.js +1 -0
  140. package/dist/components/LogViewer/index.js +1 -0
  141. package/dist/components/MarkdownRenderer/MarkdownRenderer.js +1 -0
  142. package/dist/components/MarkdownRenderer/index.js +1 -0
  143. package/dist/components/MarkdownRenderer/markdown-blocks.js +1 -0
  144. package/dist/components/Mentions/Mentions.js +18 -0
  145. package/dist/components/Mentions/MentionsCore.js +117 -0
  146. package/dist/components/Mentions/index.js +4 -0
  147. package/dist/components/Menu/Menu.js +6 -5
  148. package/dist/components/Menu/MenuDivider.js +1 -0
  149. package/dist/components/Menu/MenuItem.js +1 -0
  150. package/dist/components/Menu/MenuSub.js +23 -0
  151. package/dist/components/Menu/MenuSubContent.js +24 -0
  152. package/dist/components/Menu/MenuSubTrigger.js +30 -0
  153. package/dist/components/Menu/index.js +5 -1
  154. package/dist/components/ModelPicker/ModelPicker.js +1 -0
  155. package/dist/components/ModelPicker/index.js +1 -0
  156. package/dist/components/NavigationBar/NavLink.js +1 -0
  157. package/dist/components/NavigationBar/NavigationBar.js +1 -0
  158. package/dist/components/NavigationBar/index.js +1 -0
  159. package/dist/components/NumberInput/NumberInput.js +7 -5
  160. package/dist/components/NumberInput/NumberInputCore.js +10 -8
  161. package/dist/components/NumberInput/index.js +1 -0
  162. package/dist/components/OTPInput/OTPInput.js +6 -4
  163. package/dist/components/OTPInput/OTPInputCore.js +35 -33
  164. package/dist/components/OTPInput/index.js +1 -0
  165. package/dist/components/Pagination/Pagination.js +1 -0
  166. package/dist/components/Pagination/index.js +1 -0
  167. package/dist/components/PasswordInput/PasswordInput.js +6 -4
  168. package/dist/components/PasswordInput/PasswordInputCore.js +9 -7
  169. package/dist/components/PasswordInput/index.js +1 -0
  170. package/dist/components/Popover/Popover.js +44 -31
  171. package/dist/components/Popover/index.js +1 -0
  172. package/dist/components/Progress/Progress.js +1 -0
  173. package/dist/components/Progress/index.js +1 -0
  174. package/dist/components/PromptInput/PromptInput.js +213 -0
  175. package/dist/components/PromptInput/index.js +3 -0
  176. package/dist/components/Radio/Radio.js +8 -6
  177. package/dist/components/Radio/RadioContext.js +1 -0
  178. package/dist/components/Radio/RadioGroup.js +6 -4
  179. package/dist/components/Radio/RadioGroupCore.js +24 -14
  180. package/dist/components/Radio/index.js +1 -0
  181. package/dist/components/Rating/Rating.js +6 -4
  182. package/dist/components/Rating/RatingCore.js +63 -28
  183. package/dist/components/Rating/index.js +1 -0
  184. package/dist/components/Resizable/Resizable.js +1 -0
  185. package/dist/components/Resizable/index.js +2 -1
  186. package/dist/components/ScrollArea/ScrollArea.js +1 -0
  187. package/dist/components/ScrollArea/index.js +1 -0
  188. package/dist/components/Segmented/Segmented.js +6 -4
  189. package/dist/components/Segmented/SegmentedCore.js +23 -18
  190. package/dist/components/Segmented/index.js +1 -0
  191. package/dist/components/Select/Option.js +1 -0
  192. package/dist/components/Select/OptionGroup.js +12 -0
  193. package/dist/components/Select/Select.js +20 -9
  194. package/dist/components/Select/SelectCore.js +74 -13
  195. package/dist/components/Select/SelectFloating.js +248 -0
  196. package/dist/components/Select/index.js +6 -4
  197. package/dist/components/Select/select-options.js +57 -0
  198. package/dist/components/Sidebar/Sidebar.js +10 -9
  199. package/dist/components/Sidebar/index.js +1 -0
  200. package/dist/components/Slider/Slider.js +17 -8
  201. package/dist/components/Slider/SliderCore.js +76 -12
  202. package/dist/components/Slider/index.js +1 -0
  203. package/dist/components/Spinner/Spinner.js +1 -0
  204. package/dist/components/Spinner/index.js +1 -0
  205. package/dist/components/StepTimeline/StepTimeline.js +1 -0
  206. package/dist/components/StepTimeline/index.js +1 -0
  207. package/dist/components/Stepper/Step.js +1 -0
  208. package/dist/components/Stepper/Stepper.js +1 -0
  209. package/dist/components/Stepper/StepperContext.js +1 -0
  210. package/dist/components/Stepper/index.js +1 -0
  211. package/dist/components/StreamingText/StreamingText.js +1 -0
  212. package/dist/components/StreamingText/index.js +1 -0
  213. package/dist/components/SwipeAction/SwipeAction.js +1 -0
  214. package/dist/components/SwipeAction/index.js +1 -0
  215. package/dist/components/Switch/Switch.js +7 -5
  216. package/dist/components/Switch/SwitchCore.js +4 -2
  217. package/dist/components/Switch/index.js +1 -0
  218. package/dist/components/Table/Table.js +1 -0
  219. package/dist/components/Table/TableBody.js +1 -0
  220. package/dist/components/Table/TableCell.js +1 -0
  221. package/dist/components/Table/TableHead.js +1 -0
  222. package/dist/components/Table/TableRow.js +1 -0
  223. package/dist/components/Table/index.js +1 -0
  224. package/dist/components/Tabs/Tab.js +8 -4
  225. package/dist/components/Tabs/TabList.js +39 -7
  226. package/dist/components/Tabs/TabPanel.js +5 -3
  227. package/dist/components/Tabs/Tabs.js +12 -6
  228. package/dist/components/Tabs/TabsContext.js +1 -0
  229. package/dist/components/Tabs/index.js +1 -0
  230. package/dist/components/Tag/Tag.js +1 -0
  231. package/dist/components/Tag/index.js +1 -0
  232. package/dist/components/TagGroup/TagGroup.js +20 -7
  233. package/dist/components/TagGroup/TagGroupItem.js +18 -11
  234. package/dist/components/TagGroup/index.js +1 -0
  235. package/dist/components/TagInput/TagInput.js +11 -8
  236. package/dist/components/TagInput/TagInputCore.js +95 -57
  237. package/dist/components/TagInput/index.js +1 -0
  238. package/dist/components/Textarea/Textarea.js +7 -5
  239. package/dist/components/Textarea/TextareaCore.js +4 -2
  240. package/dist/components/Textarea/index.js +1 -0
  241. package/dist/components/ThinkingIndicator/ThinkingIndicator.js +1 -0
  242. package/dist/components/ThinkingIndicator/index.js +1 -0
  243. package/dist/components/TimePicker/TimePicker.js +7 -5
  244. package/dist/components/TimePicker/TimePickerCore.js +4 -2
  245. package/dist/components/TimePicker/index.js +1 -0
  246. package/dist/components/Timeline/Timeline.js +1 -0
  247. package/dist/components/Timeline/index.js +1 -0
  248. package/dist/components/Toast/Toast.js +38 -31
  249. package/dist/components/Toast/ToastContainer.js +68 -47
  250. package/dist/components/Toast/ToastContext.js +24 -4
  251. package/dist/components/Toast/index.js +1 -0
  252. package/dist/components/Toast/toast2.js +64 -28
  253. package/dist/components/Toast/useToast.js +10 -7
  254. package/dist/components/Toggle/Toggle.js +20 -0
  255. package/dist/components/Toggle/ToggleCore.js +31 -0
  256. package/dist/components/Toggle/index.js +4 -0
  257. package/dist/components/TokenCounter/TokenCounter.js +1 -0
  258. package/dist/components/TokenCounter/index.js +1 -0
  259. package/dist/components/ToolCallCard/ToolCallCard.js +1 -0
  260. package/dist/components/ToolCallCard/index.js +1 -0
  261. package/dist/components/Toolbar/Toolbar.js +34 -32
  262. package/dist/components/Toolbar/ToolbarButton.js +1 -0
  263. package/dist/components/Toolbar/ToolbarContext.js +1 -0
  264. package/dist/components/Toolbar/ToolbarSeparator.js +1 -0
  265. package/dist/components/Toolbar/ToolbarToggle.js +31 -0
  266. package/dist/components/Toolbar/index.js +3 -1
  267. package/dist/components/Tooltip/Tooltip.js +2 -1
  268. package/dist/components/Tooltip/index.js +1 -0
  269. package/dist/components/Tour/Tour.js +58 -53
  270. package/dist/components/Tour/index.js +1 -0
  271. package/dist/components/Transfer/Transfer.js +1 -0
  272. package/dist/components/Transfer/TransferCore.js +1 -0
  273. package/dist/components/Transfer/index.js +1 -0
  274. package/dist/components/Tree/Tree.js +200 -77
  275. package/dist/components/Tree/TreeItem.js +18 -15
  276. package/dist/components/Tree/index.js +1 -0
  277. package/dist/components/Tree/utils.js +27 -10
  278. package/dist/components/Upload/Upload.js +22 -8
  279. package/dist/components/Upload/UploadCore.js +225 -37
  280. package/dist/components/Upload/UploadList.js +172 -0
  281. package/dist/components/Upload/index.js +1 -0
  282. package/dist/components/Upload/xhr-upload.js +22 -0
  283. package/dist/components/VirtualList/VirtualList.js +85 -56
  284. package/dist/components/VirtualList/index.js +1 -0
  285. package/dist/components/Watermark/Watermark.js +55 -0
  286. package/dist/components/Watermark/index.js +3 -0
  287. package/dist/css/accordion.css +1 -1
  288. package/dist/css/alert.css +1 -1
  289. package/dist/css/anchor.css +2 -0
  290. package/dist/css/app-shell.css +2 -0
  291. package/dist/css/approval-card.css +1 -1
  292. package/dist/css/async-section.css +1 -1
  293. package/dist/css/back-to-top.css +1 -1
  294. package/dist/css/badge.css +1 -1
  295. package/dist/css/bottom-sheet.css +1 -1
  296. package/dist/css/breadcrumb.css +1 -1
  297. package/dist/css/button.css +1 -1
  298. package/dist/css/calendar.css +1 -1
  299. package/dist/css/carousel.css +1 -1
  300. package/dist/css/cascader.css +1 -1
  301. package/dist/css/chart.css +2 -0
  302. package/dist/css/chat-container.css +1 -1
  303. package/dist/css/chat-input.css +1 -1
  304. package/dist/css/chat-message.css +1 -1
  305. package/dist/css/checkbox.css +1 -1
  306. package/dist/css/chip.css +1 -1
  307. package/dist/css/color-picker.css +1 -1
  308. package/dist/css/combobox.css +3 -2
  309. package/dist/css/command.css +2 -1
  310. package/dist/css/context-menu.css +2 -2
  311. package/dist/css/conversation-list.css +1 -1
  312. package/dist/css/data-table.css +2 -1
  313. package/dist/css/date-range-picker.css +1 -1
  314. package/dist/css/datepicker.css +2 -2
  315. package/dist/css/dialog.css +1 -1
  316. package/dist/css/disclosure.css +1 -1
  317. package/dist/css/dropdown-menu.css +5 -2
  318. package/dist/css/file-input.css +1 -1
  319. package/dist/css/image.css +2 -1
  320. package/dist/css/inline-edit.css +1 -1
  321. package/dist/css/input.css +1 -1
  322. package/dist/css/log-viewer.css +1 -1
  323. package/dist/css/mentions.css +2 -0
  324. package/dist/css/menu.css +5 -2
  325. package/dist/css/model-picker.css +1 -1
  326. package/dist/css/navigation-bar.css +1 -1
  327. package/dist/css/number-input.css +1 -1
  328. package/dist/css/otp-input.css +1 -1
  329. package/dist/css/pagination.css +1 -1
  330. package/dist/css/password-input.css +1 -1
  331. package/dist/css/popover.css +1 -1
  332. package/dist/css/progress.css +1 -1
  333. package/dist/css/prompt-input.css +2 -0
  334. package/dist/css/radio.css +1 -1
  335. package/dist/css/rating.css +1 -1
  336. package/dist/css/resizable.css +1 -1
  337. package/dist/css/segmented.css +1 -1
  338. package/dist/css/select.css +3 -1
  339. package/dist/css/slider.css +1 -1
  340. package/dist/css/stepper.css +1 -1
  341. package/dist/css/swipe-action.css +1 -1
  342. package/dist/css/switch.css +1 -1
  343. package/dist/css/tabs.css +1 -1
  344. package/dist/css/tag-group.css +2 -0
  345. package/dist/css/tag-input.css +3 -1
  346. package/dist/css/tag.css +1 -1
  347. package/dist/css/textarea.css +1 -1
  348. package/dist/css/time-picker.css +1 -1
  349. package/dist/css/toggle.css +2 -0
  350. package/dist/css/token-counter.css +1 -1
  351. package/dist/css/tokens.css +1 -1
  352. package/dist/css/toolbar.css +1 -0
  353. package/dist/css/tooltip.css +1 -1
  354. package/dist/css/tree.css +2 -2
  355. package/dist/css/upload.css +2 -1
  356. package/dist/css/watermark.css +2 -0
  357. package/dist/css-manifest.json +70 -2
  358. package/dist/form/FormItem.js +56 -50
  359. package/dist/form/FormList.js +79 -0
  360. package/dist/form/index.js +6 -1
  361. package/dist/form/standard-schema.js +16 -0
  362. package/dist/haze-ui.css +92 -67
  363. package/dist/headless/index.js +7 -0
  364. package/dist/hooks/useClickOutside.js +24 -0
  365. package/dist/hooks/useClipboard.js +30 -0
  366. package/dist/hooks/useDebouncedCallback.js +17 -0
  367. package/dist/hooks/useDebouncedValue.js +12 -0
  368. package/dist/hooks/useFullscreen.js +42 -0
  369. package/dist/hooks/useHotkeys.js +77 -0
  370. package/dist/hooks/useInView.js +27 -0
  371. package/dist/hooks/useLocalStorage.js +8 -0
  372. package/dist/hooks/useMediaQuery.js +14 -0
  373. package/dist/hooks/usePrefersReducedMotion.js +9 -0
  374. package/dist/hooks/usePrevious.js +11 -0
  375. package/dist/hooks/useSessionStorage.js +8 -0
  376. package/dist/hooks/useStorageState.js +80 -0
  377. package/dist/hooks/useTitle.js +1 -0
  378. package/dist/index.js +206 -163
  379. package/dist/registry.json +2259 -91
  380. package/dist/tokens/registry.js +17 -27
  381. package/dist/types/components/Anchor/Anchor.d.ts +25 -0
  382. package/dist/types/components/Anchor/index.d.ts +2 -0
  383. package/dist/types/components/AppShell/AppShell.d.ts +17 -0
  384. package/dist/types/components/AppShell/index.d.ts +2 -0
  385. package/dist/types/components/Badge/badge-styles.d.ts +21 -0
  386. package/dist/types/components/Badge/index.d.ts +1 -0
  387. package/dist/types/components/BottomSheet/BottomSheet.d.ts +52 -3
  388. package/dist/types/components/BottomSheet/index.d.ts +1 -1
  389. package/dist/types/components/Button/Button.d.ts +7 -0
  390. package/dist/types/components/Button/ButtonLink.d.ts +3 -0
  391. package/dist/types/components/Button/index.d.ts +1 -0
  392. package/dist/types/components/Button/styles.d.ts +17 -0
  393. package/dist/types/components/Calendar/Calendar.d.ts +71 -7
  394. package/dist/types/components/Calendar/date.d.ts +131 -0
  395. package/dist/types/components/Calendar/index.d.ts +1 -1
  396. package/dist/types/components/Cascader/Cascader.d.ts +29 -3
  397. package/dist/types/components/Chart/Chart.d.ts +29 -0
  398. package/dist/types/components/Chart/chart-elements.d.ts +52 -0
  399. package/dist/types/components/Chart/index.d.ts +2 -0
  400. package/dist/types/components/ChatContainer/ChatContainer.d.ts +18 -3
  401. package/dist/types/components/ChatInput/ChatInput.d.ts +11 -1
  402. package/dist/types/components/ChatMessage/ChatMessage.d.ts +13 -1
  403. package/dist/types/components/Checkbox/Checkbox.d.ts +6 -2
  404. package/dist/types/components/Checkbox/CheckboxCore.d.ts +4 -2
  405. package/dist/types/components/Collapsible/Collapsible.d.ts +24 -2
  406. package/dist/types/components/Collapsible/index.d.ts +1 -1
  407. package/dist/types/components/ColorPicker/ColorPicker.d.ts +7 -1
  408. package/dist/types/components/ColorPicker/ColorPickerCore.d.ts +7 -1
  409. package/dist/types/components/Combobox/Combobox.d.ts +101 -7
  410. package/dist/types/components/Combobox/ComboboxGroup.d.ts +22 -0
  411. package/dist/types/components/Combobox/ComboboxOption.d.ts +19 -2
  412. package/dist/types/components/Combobox/index.d.ts +3 -1
  413. package/dist/types/components/Command/Command.d.ts +70 -6
  414. package/dist/types/components/Command/CommandDialog.d.ts +36 -0
  415. package/dist/types/components/Command/command-filter.d.ts +34 -0
  416. package/dist/types/components/Command/index.d.ts +4 -2
  417. package/dist/types/components/DataTable/CellEditor.d.ts +24 -0
  418. package/dist/types/components/DataTable/DataTable.d.ts +184 -26
  419. package/dist/types/components/DataTable/features.d.ts +118 -0
  420. package/dist/types/components/DataTable/index.d.ts +2 -1
  421. package/dist/types/components/DataTable/summary.d.ts +19 -0
  422. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +15 -1
  423. package/dist/types/components/DateRangePicker/DateRangePickerCore.d.ts +26 -2
  424. package/dist/types/components/DateRangePicker/index.d.ts +1 -1
  425. package/dist/types/components/Datepicker/Datepicker.d.ts +17 -1
  426. package/dist/types/components/Datepicker/DatepickerCore.d.ts +24 -2
  427. package/dist/types/components/Datepicker/index.d.ts +1 -1
  428. package/dist/types/components/Dialog/Dialog.d.ts +68 -3
  429. package/dist/types/components/Dialog/index.d.ts +1 -1
  430. package/dist/types/components/Drawer/Drawer.d.ts +33 -3
  431. package/dist/types/components/Drawer/index.d.ts +1 -1
  432. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +23 -3
  433. package/dist/types/components/DropdownMenu/DropdownMenuSub.d.ts +18 -0
  434. package/dist/types/components/DropdownMenu/DropdownMenuSubContent.d.ts +13 -0
  435. package/dist/types/components/DropdownMenu/DropdownMenuSubTrigger.d.ts +14 -0
  436. package/dist/types/components/DropdownMenu/index.d.ts +7 -1
  437. package/dist/types/components/Fullscreen/Fullscreen.d.ts +34 -0
  438. package/dist/types/components/Fullscreen/index.d.ts +3 -0
  439. package/dist/types/components/Image/Image.d.ts +20 -5
  440. package/dist/types/components/Image/ImagePreview.d.ts +13 -0
  441. package/dist/types/components/Image/index.d.ts +1 -1
  442. package/dist/types/components/Input/Input.d.ts +5 -2
  443. package/dist/types/components/Input/InputCore.d.ts +4 -2
  444. package/dist/types/components/LocaleProvider/LocaleContext.d.ts +10 -1
  445. package/dist/types/components/LocaleProvider/LocaleProvider.d.ts +17 -3
  446. package/dist/types/components/LocaleProvider/index.d.ts +4 -1
  447. package/dist/types/components/LocaleProvider/locale.d.ts +63 -1
  448. package/dist/types/components/LocaleProvider/strings.d.ts +28 -0
  449. package/dist/types/components/LocaleProvider/useStrings.d.ts +5 -4
  450. package/dist/types/components/LocaleProvider/zh-cn.d.ts +13 -0
  451. package/dist/types/components/Mentions/Mentions.d.ts +20 -0
  452. package/dist/types/components/Mentions/MentionsCore.d.ts +23 -0
  453. package/dist/types/components/Mentions/index.d.ts +4 -0
  454. package/dist/types/components/Menu/MenuSub.d.ts +18 -0
  455. package/dist/types/components/Menu/MenuSubContent.d.ts +12 -0
  456. package/dist/types/components/Menu/MenuSubTrigger.d.ts +14 -0
  457. package/dist/types/components/Menu/index.d.ts +6 -0
  458. package/dist/types/components/NumberInput/NumberInput.d.ts +5 -2
  459. package/dist/types/components/NumberInput/NumberInputCore.d.ts +4 -2
  460. package/dist/types/components/OTPInput/OTPInput.d.ts +5 -1
  461. package/dist/types/components/OTPInput/OTPInputCore.d.ts +4 -1
  462. package/dist/types/components/PasswordInput/PasswordInput.d.ts +5 -1
  463. package/dist/types/components/PasswordInput/PasswordInputCore.d.ts +4 -1
  464. package/dist/types/components/Popover/Popover.d.ts +41 -3
  465. package/dist/types/components/Popover/index.d.ts +1 -1
  466. package/dist/types/components/PromptInput/PromptInput.d.ts +46 -0
  467. package/dist/types/components/PromptInput/index.d.ts +2 -0
  468. package/dist/types/components/Radio/Radio.d.ts +5 -2
  469. package/dist/types/components/Radio/RadioGroup.d.ts +8 -2
  470. package/dist/types/components/Radio/RadioGroupCore.d.ts +7 -2
  471. package/dist/types/components/Rating/Rating.d.ts +8 -1
  472. package/dist/types/components/Rating/RatingCore.d.ts +7 -1
  473. package/dist/types/components/Resizable/index.d.ts +2 -0
  474. package/dist/types/components/Segmented/Segmented.d.ts +8 -1
  475. package/dist/types/components/Segmented/SegmentedCore.d.ts +7 -2
  476. package/dist/types/components/Select/OptionGroup.d.ts +16 -0
  477. package/dist/types/components/Select/Select.d.ts +66 -4
  478. package/dist/types/components/Select/SelectCore.d.ts +70 -6
  479. package/dist/types/components/Select/SelectFloating.d.ts +83 -0
  480. package/dist/types/components/Select/index.d.ts +2 -0
  481. package/dist/types/components/Select/select-options.d.ts +53 -0
  482. package/dist/types/components/Slider/Slider.d.ts +29 -4
  483. package/dist/types/components/Slider/SliderCore.d.ts +35 -6
  484. package/dist/types/components/Switch/Switch.d.ts +5 -2
  485. package/dist/types/components/Switch/SwitchCore.d.ts +4 -2
  486. package/dist/types/components/Tabs/TabList.d.ts +7 -0
  487. package/dist/types/components/Tabs/Tabs.d.ts +8 -1
  488. package/dist/types/components/Tabs/TabsContext.d.ts +20 -0
  489. package/dist/types/components/Tabs/index.d.ts +1 -0
  490. package/dist/types/components/TagGroup/TagGroup.d.ts +13 -1
  491. package/dist/types/components/TagInput/TagInput.d.ts +12 -1
  492. package/dist/types/components/TagInput/TagInputCore.d.ts +11 -1
  493. package/dist/types/components/Textarea/Textarea.d.ts +5 -2
  494. package/dist/types/components/Textarea/TextareaCore.d.ts +4 -2
  495. package/dist/types/components/TimePicker/TimePicker.d.ts +5 -2
  496. package/dist/types/components/TimePicker/TimePickerCore.d.ts +4 -2
  497. package/dist/types/components/Toast/Toast.d.ts +31 -2
  498. package/dist/types/components/Toast/ToastContainer.d.ts +11 -1
  499. package/dist/types/components/Toast/ToastContext.d.ts +44 -3
  500. package/dist/types/components/Toast/index.d.ts +1 -1
  501. package/dist/types/components/Toast/toast.d.ts +35 -4
  502. package/dist/types/components/Toast/useToast.d.ts +16 -4
  503. package/dist/types/components/Toggle/Toggle.d.ts +19 -0
  504. package/dist/types/components/Toggle/ToggleCore.d.ts +23 -0
  505. package/dist/types/components/Toggle/index.d.ts +4 -0
  506. package/dist/types/components/Toolbar/ToolbarToggle.d.ts +19 -0
  507. package/dist/types/components/Toolbar/index.d.ts +2 -0
  508. package/dist/types/components/Tour/Tour.d.ts +3 -3
  509. package/dist/types/components/Tree/Tree.d.ts +3 -3
  510. package/dist/types/components/Tree/TreeItem.d.ts +6 -1
  511. package/dist/types/components/Tree/types.d.ts +26 -0
  512. package/dist/types/components/Tree/utils.d.ts +32 -0
  513. package/dist/types/components/Upload/Upload.d.ts +38 -3
  514. package/dist/types/components/Upload/UploadCore.d.ts +75 -4
  515. package/dist/types/components/Upload/UploadList.d.ts +12 -0
  516. package/dist/types/components/Upload/index.d.ts +1 -0
  517. package/dist/types/components/Upload/types.d.ts +60 -0
  518. package/dist/types/components/Upload/xhr-upload.d.ts +20 -0
  519. package/dist/types/components/VirtualList/VirtualList.d.ts +16 -1
  520. package/dist/types/components/Watermark/Watermark.d.ts +32 -0
  521. package/dist/types/components/Watermark/index.d.ts +2 -0
  522. package/dist/types/form/FormItem.d.ts +33 -8
  523. package/dist/types/form/FormList.d.ts +113 -0
  524. package/dist/types/form/index.d.ts +26 -0
  525. package/dist/types/form/standard-schema.d.ts +30 -0
  526. package/dist/types/headless/index.d.ts +182 -0
  527. package/dist/types/hooks/index.d.ts +17 -0
  528. package/dist/types/hooks/useClickOutside.d.ts +46 -0
  529. package/dist/types/hooks/useClipboard.d.ts +31 -0
  530. package/dist/types/hooks/useDebouncedCallback.d.ts +21 -0
  531. package/dist/types/hooks/useDebouncedValue.d.ts +20 -0
  532. package/dist/types/hooks/useFullscreen.d.ts +33 -0
  533. package/dist/types/hooks/useHotkeys.d.ts +53 -0
  534. package/dist/types/hooks/useInView.d.ts +32 -0
  535. package/dist/types/hooks/useLocalStorage.d.ts +33 -0
  536. package/dist/types/hooks/useMediaQuery.d.ts +20 -0
  537. package/dist/types/hooks/usePrefersReducedMotion.d.ts +14 -0
  538. package/dist/types/hooks/usePrevious.d.ts +18 -0
  539. package/dist/types/hooks/useSessionStorage.d.ts +26 -0
  540. package/dist/types/hooks/useStorageState.d.ts +12 -0
  541. package/dist/types/index.d.ts +60 -32
  542. package/dist/types/utils/collision.d.ts +39 -1
  543. package/dist/types/utils/direction.d.ts +22 -0
  544. package/dist/types/utils/floating.d.ts +32 -4
  545. package/dist/types/utils/focus-scope.d.ts +2 -1
  546. package/dist/types/utils/focus.d.ts +2 -1
  547. package/dist/types/utils/menuKeyboard.d.ts +19 -4
  548. package/dist/types/utils/refs.d.ts +16 -0
  549. package/dist/types/utils/sortable-shared.d.ts +42 -0
  550. package/dist/types/utils/sortable.d.ts +36 -0
  551. package/dist/types/utils/submenu.d.ts +63 -0
  552. package/dist/types/utils/view-transition.d.ts +28 -0
  553. package/dist/utils/collision.js +38 -26
  554. package/dist/utils/direction.js +34 -0
  555. package/dist/utils/floating.js +164 -143
  556. package/dist/utils/focus-scope.js +1 -0
  557. package/dist/utils/focus.js +1 -0
  558. package/dist/utils/menuKeyboard.js +60 -46
  559. package/dist/utils/presence.js +1 -0
  560. package/dist/utils/refs.js +9 -0
  561. package/dist/utils/sortable-shared.js +24 -0
  562. package/dist/utils/sortable.js +46 -0
  563. package/dist/utils/submenu.js +104 -0
  564. package/dist/utils/view-transition.js +26 -0
  565. package/package.json +119 -24
@@ -1,12 +1,15 @@
1
1
 
2
+ "use client";
2
3
  import { classnames as e } from "../../utils/classnames.js";
3
- import { useStrings as t } from "../LocaleProvider/useStrings.js";
4
+ import { getDirection as t } from "../../utils/direction.js";
5
+ import { useStrings as n } from "../LocaleProvider/useStrings.js";
6
+ import { addMonths as r, buildMonthCells as i, formatDate as a, formatMonthValue as o, formatQuarterValue as s, formatYearValue as c, getDaysInMonth as l, getISOWeekNumber as u, parseCivilDate as d, parseMonthValue as f, parseQuarterValue as ee, parseYearValue as p } from "./date.js";
4
7
  /* empty css */
5
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
6
- import { useState as i } from "react";
7
- import { useControl as a } from "react-use-control";
8
+ import { jsx as m, jsxs as h } from "react/jsx-runtime";
9
+ import { useEffect as g, useRef as _, useState as v } from "react";
10
+ import { useControl as te } from "react-use-control";
8
11
  //#region src/lib/components/Calendar/Calendar.tsx
9
- var o = "haze-Calendar__calendarWrapper", s = "haze-Calendar__header", c = "haze-Calendar__headerBtn", l = "haze-Calendar__headerTitle", u = "haze-Calendar__headerTrailing", d = "haze-Calendar__grid", f = "haze-Calendar__rowContents", p = "haze-Calendar__cellContents", m = "haze-Calendar__weekday", h = "haze-Calendar__dayBtn", g = "haze-Calendar__daySelected", _ = "haze-Calendar__dayOutside", v = [
12
+ var ne = "haze-Calendar__calendarWrapper", re = "haze-Calendar__header", y = "haze-Calendar__headerBtn", b = "haze-Calendar__headerTitle", ie = "haze-Calendar__titleBtn", ae = "haze-Calendar__headerTrailing", oe = "haze-Calendar__grid", x = "haze-Calendar__rowContents", S = "haze-Calendar__cellContents", se = "haze-Calendar__weekday", ce = "haze-Calendar__weekNumber", C = "haze-Calendar__dayBtn", w = "haze-Calendar__daySelected", le = "haze-Calendar__dayInRange", ue = "haze-Calendar__dayOutside", de = "haze-Calendar__monthPanels", fe = "haze-Calendar__monthPanel", pe = "haze-Calendar__paneHeader", me = "haze-Calendar__quickSelect", he = "haze-Calendar__quickToolbar", T = "haze-Calendar__quickGrid", ge = "haze-Calendar__quarterGrid", _e = [
10
13
  "Su",
11
14
  "Mo",
12
15
  "Tu",
@@ -15,7 +18,7 @@ var o = "haze-Calendar__calendarWrapper", s = "haze-Calendar__header", c = "haze
15
18
  "Fr",
16
19
  "Sa"
17
20
  ];
18
- function y(e, t) {
21
+ function ve(e, t) {
19
22
  if (t !== void 0) return t;
20
23
  if (e === void 0) return 0;
21
24
  try {
@@ -25,128 +28,473 @@ function y(e, t) {
25
28
  return 0;
26
29
  }
27
30
  }
28
- function b(e, t) {
29
- if (e === void 0) return Array.from({ length: 7 }, (e, n) => v[(t + n) % 7]);
31
+ function ye(e, t) {
32
+ if (e === void 0) return Array.from({ length: 7 }, (e, n) => _e[(t + n) % 7]);
30
33
  let n = new Intl.DateTimeFormat(e, { weekday: "short" }), r = Array.from({ length: 7 }, (e, t) => n.format(new Date(2024, 0, 7 + t)));
31
34
  return Array.from({ length: 7 }, (e, n) => r[(t + n) % 7]);
32
35
  }
33
- function x(e, t) {
34
- return new Date(e, t + 1, 0).getDate();
36
+ function E(e) {
37
+ return Array.from(e?.querySelectorAll("button") ?? []);
35
38
  }
36
- function S(e, t, n) {
37
- return `${e}-${String(t + 1).padStart(2, "0")}-${String(n).padStart(2, "0")}`;
39
+ function D(e, t, n) {
40
+ let r = t + n;
41
+ for (; r >= 0 && r < e.length && e[r].disabled;) r += n;
42
+ return r < 0 || r >= e.length ? null : r;
38
43
  }
39
- function C({ value: v, min: C, max: w, locale: T, weekStartsOn: E, onSelect: D, className: O, ...k }) {
40
- let [A, j] = a(v, ""), M = t("calendar"), N = A ? new Date(A) : /* @__PURE__ */ new Date(), [P, F] = i(N.getFullYear()), [I, L] = i(N.getMonth()), R = y(T, E), z = b(T, R), B = x(P, I), V = new Date(P, I, 1).getDay(), H = x(P, I - 1), U = (V - R + 7) % 7, W = () => {
41
- L((e) => e === 0 ? (F((e) => e - 1), 11) : e - 1);
42
- }, G = () => {
43
- L((e) => e === 11 ? (F((e) => e + 1), 0) : e + 1);
44
- }, K = () => {
45
- let e = /* @__PURE__ */ new Date();
46
- F(e.getFullYear()), L(e.getMonth());
47
- }, q = (e) => !!(C && e < C || w && e > w), J = [];
48
- for (let e = U - 1; e >= 0; e--) {
49
- let t = I === 0 ? 11 : I - 1, n = I === 0 ? P - 1 : P;
50
- J.push({
51
- day: H - e,
52
- month: t,
53
- year: n,
54
- outside: !0
55
- });
56
- }
57
- for (let e = 1; e <= B; e++) J.push({
58
- day: e,
59
- month: I,
60
- year: P,
61
- outside: !1
62
- });
63
- let Y = 7 - J.length % 7;
64
- if (Y < 7) for (let e = 1; e <= Y; e++) {
65
- let t = I === 11 ? 0 : I + 1, n = I === 11 ? P + 1 : P;
66
- J.push({
67
- day: e,
68
- month: t,
69
- year: n,
70
- outside: !0
71
- });
72
- }
73
- let X = new Intl.DateTimeFormat(T ?? "default", {
44
+ function be(e, n, i, o) {
45
+ return (s) => {
46
+ let c = e.current;
47
+ if (!c) return;
48
+ let u = E(c);
49
+ if (u.length === 0) return;
50
+ let d = u.indexOf(s.target.closest("button")), f = t(c) === "rtl" ? "ArrowLeft" : "ArrowRight", ee = f === "ArrowLeft" ? "ArrowRight" : "ArrowLeft", p = (e) => {
51
+ let t = D(u, d < 0 ? 0 : d, e);
52
+ t !== null && (s.preventDefault(), u[t].focus());
53
+ };
54
+ switch (s.key) {
55
+ case f:
56
+ p(1);
57
+ return;
58
+ case ee:
59
+ p(-1);
60
+ return;
61
+ case "ArrowDown":
62
+ p(7);
63
+ return;
64
+ case "ArrowUp":
65
+ p(-7);
66
+ return;
67
+ case "Home": {
68
+ let e = D(u, (d < 0 ? 0 : d - d % 7) - 1, 1);
69
+ e !== null && (s.preventDefault(), u[e].focus());
70
+ return;
71
+ }
72
+ case "End": {
73
+ let e = D(u, (d < 0 ? 6 : d - d % 7 + 6) + 1, -1);
74
+ e !== null && (s.preventDefault(), u[e].focus());
75
+ return;
76
+ }
77
+ case "PageUp":
78
+ case "PageDown": {
79
+ s.preventDefault();
80
+ let e = s.key === "PageDown" ? 1 : -1, t = r(n.year, n.month, e), c = d >= 0 ? Number(u[d].textContent) : 1, f = Math.min(Math.max(c, 1), l(t.year, t.month));
81
+ i(t), o.current = a(t.year, t.month, f);
82
+ return;
83
+ }
84
+ }
85
+ };
86
+ }
87
+ function xe(e, n, r, i) {
88
+ return (a) => {
89
+ let o = e.current;
90
+ if (!o) return;
91
+ let s = E(o);
92
+ if (s.length === 0) return;
93
+ let c = s.indexOf(a.target.closest("button")), l = t(o) === "rtl" ? "ArrowLeft" : "ArrowRight", u = l === "ArrowLeft" ? "ArrowRight" : "ArrowLeft", d = (e) => {
94
+ let t = D(s, c < 0 ? 0 : c, e);
95
+ t !== null && (a.preventDefault(), s[t].focus());
96
+ };
97
+ switch (a.key) {
98
+ case l:
99
+ d(1);
100
+ return;
101
+ case u:
102
+ d(-1);
103
+ return;
104
+ case "ArrowDown":
105
+ d(n);
106
+ return;
107
+ case "ArrowUp":
108
+ d(-n);
109
+ return;
110
+ case "Home": {
111
+ let e = D(s, (c < 0 ? 0 : c - c % n) - 1, 1);
112
+ e !== null && (a.preventDefault(), s[e].focus());
113
+ return;
114
+ }
115
+ case "End": {
116
+ let e = D(s, (c < 0 ? n - 1 : Math.min(c - c % n + n - 1, s.length - 1)) + 1, -1);
117
+ e !== null && (a.preventDefault(), s[e].focus());
118
+ return;
119
+ }
120
+ case "PageUp":
121
+ case "PageDown":
122
+ a.preventDefault(), i.current = c < 0 ? 0 : c, r(a.key === "PageDown" ? 1 : -1);
123
+ return;
124
+ }
125
+ };
126
+ }
127
+ function O({ picker: t = "date", value: _e, min: D, max: O, disabledDate: k, locale: A, weekStartsOn: Se, showWeekNumbers: j = !1, months: Ce = 1, rangeStart: M, rangeEnd: N, onSelect: we, className: Te, ...Ee }) {
128
+ let [P, De] = te(_e, ""), F = n("calendar"), I = _(null), Oe = _(null), L = _(null), R = _(null), z = _(null), B = _(null), V = _(null), ke = _(null), H = _(null), [U, W] = v(!1), [G, K] = v(0), Ae = t === "month" ? f(P) : t === "quarter" ? ee(P) : t === "year" ? p(P) : null, je = t === "date" ? P && d(P) || M && d(M) || /* @__PURE__ */ new Date() : Ae ? new Date(Ae.year, 0, 1) : /* @__PURE__ */ new Date(), [q, J] = v(je.getFullYear()), [Y, Me] = v(je.getMonth()), Ne = ve(A, Se), Pe = ye(A, Ne), X = new Intl.DateTimeFormat(A ?? "default", {
74
129
  month: "long",
75
130
  year: "numeric"
76
- }).format(new Date(P, I)), Z = [];
77
- for (let e = 0; e < J.length; e += 7) Z.push(J.slice(e, e + 7));
78
- return /* @__PURE__ */ r("div", {
79
- ...k,
80
- className: e([o, O]),
81
- children: [/* @__PURE__ */ r("div", {
82
- className: e([s]),
83
- children: [
84
- /* @__PURE__ */ n("button", {
85
- type: "button",
86
- onClick: W,
87
- "aria-label": M.previousMonth,
88
- className: e([c]),
89
- children: "‹"
90
- }),
91
- /* @__PURE__ */ n("span", {
92
- className: e([l]),
93
- children: X
94
- }),
95
- /* @__PURE__ */ r("span", {
96
- className: e([u]),
97
- children: [/* @__PURE__ */ n("button", {
98
- type: "button",
99
- onClick: K,
100
- className: e([c]),
101
- children: M.today
102
- }), /* @__PURE__ */ n("button", {
103
- type: "button",
104
- onClick: G,
105
- "aria-label": M.nextMonth,
106
- className: e([c]),
107
- children: "›"
108
- })]
109
- })
110
- ]
111
- }), /* @__PURE__ */ r("div", {
131
+ }), Fe = new Intl.DateTimeFormat(A ?? "default", { month: "short" }), Ie = Array.from({ length: 12 }, (e, t) => Fe.format(new Date(2026, t, 15))), Z = (e) => {
132
+ J(e.year), Me(e.month);
133
+ };
134
+ g(() => {
135
+ if (U) return;
136
+ let e = R.current;
137
+ e && (R.current = null, L.current?.querySelector(`[data-haze-day="${e}"]`)?.focus());
138
+ }, [
139
+ q,
140
+ Y,
141
+ U
142
+ ]), g(() => {
143
+ if (!U) return;
144
+ let e = z.current;
145
+ z.current = null;
146
+ let t = E(H.current);
147
+ t.length !== 0 && (t[e ?? 0] ?? t[0]).focus();
148
+ }, [U, G]), g(() => {
149
+ if (t === "date") return;
150
+ let e = B.current;
151
+ if (B.current = null, e === null) return;
152
+ let n = E(V.current);
153
+ (n[e] ?? n[0])?.focus();
154
+ }, [t, q]);
155
+ let Le = () => {
156
+ z.current = Y, K(q), W(!0);
157
+ }, Re = () => {
158
+ W(!1), ke.current?.focus();
159
+ }, ze = (e) => {
160
+ W(!1), Z({
161
+ year: G,
162
+ month: e
163
+ }), R.current = a(G, e, 1);
164
+ }, Q = r(q, Y, Ce - 1), Be = be(I, {
165
+ year: q,
166
+ month: Y
167
+ }, Z, R), Ve = be(Oe, Q, Z, R), He = xe(H, 3, (e) => K((t) => t + e), z), Ue = t === "quarter" ? 4 : 3, $ = (e) => J((n) => n + e * (t === "year" ? 10 : 1)), We = xe(V, Ue, $, B), Ge = () => Z(r(q, Y, -1)), Ke = () => Z(r(q, Y, 1)), qe = () => {
168
+ let e = /* @__PURE__ */ new Date();
169
+ J(e.getFullYear()), Me(e.getMonth());
170
+ }, Je = (e, t, n) => {
171
+ let r = a(e, t, n);
172
+ return D && r < D || O && r > O ? !0 : k?.(new Date(e, t, n)) ?? !1;
173
+ }, Ye = (e, t) => D && a(e, t, l(e, t)) < D || O && a(e, t, 1) > O ? !0 : k?.(new Date(e, t, 1)) ?? !1, Xe = (e, t) => {
174
+ let n = t * 3 - 3, r = t * 3 - 1;
175
+ return D && a(e, r, l(e, r)) < D || O && a(e, n, 1) > O ? !0 : k?.(new Date(e, n, 1)) ?? !1;
176
+ }, Ze = (e) => D && a(e, 11, 31) < D || O && a(e, 0, 1) > O ? !0 : k?.(new Date(e, 0, 1)) ?? !1, Qe = (e) => {
177
+ De(e), we?.(e);
178
+ }, $e = M !== void 0 && M !== "", et = N !== void 0 && N !== "", tt = (e) => $e && e === M || et && e === N, nt = (e) => $e && et && e > M && e < N, rt = X.format(new Date(q, Y)), it = (t, n, r) => {
179
+ let o = i(t.year, t.month, Ne), s = [];
180
+ for (let e = 0; e < o.length; e += 7) s.push(o.slice(e, e + 7));
181
+ let c = X.format(new Date(t.year, t.month));
182
+ return /* @__PURE__ */ h("div", {
183
+ ref: n,
184
+ style: j ? { gridTemplateColumns: "repeat(8, 1fr)" } : void 0,
112
185
  role: "grid",
113
- "aria-label": X,
114
- className: e([d]),
115
- children: [/* @__PURE__ */ n("div", {
186
+ "aria-label": c,
187
+ onKeyDown: r,
188
+ className: e([oe]),
189
+ children: [/* @__PURE__ */ h("div", {
116
190
  role: "row",
117
- className: e([f]),
118
- children: z.map((t, r) => /* @__PURE__ */ n("span", {
191
+ className: e([x]),
192
+ children: [j && /* @__PURE__ */ m("span", {
119
193
  role: "columnheader",
120
- className: e([m]),
194
+ className: e([se]),
195
+ children: F.weekNumber
196
+ }), Pe.map((t, n) => /* @__PURE__ */ m("span", {
197
+ role: "columnheader",
198
+ className: e([se]),
121
199
  children: t
122
- }, r))
123
- }), Z.map((t, r) => /* @__PURE__ */ n("div", {
200
+ }, n))]
201
+ }), s.map((t, n) => /* @__PURE__ */ h("div", {
124
202
  role: "row",
125
- className: e([f]),
126
- children: t.map((t) => {
127
- let r = S(t.year, t.month, t.day);
128
- return /* @__PURE__ */ n("span", {
203
+ className: e([x]),
204
+ children: [j && /* @__PURE__ */ m("span", {
205
+ role: "gridcell",
206
+ className: e([ce]),
207
+ children: u(t[0].year, t[0].month, t[0].day)
208
+ }), t.map((t) => {
209
+ let n = a(t.year, t.month, t.day), r = tt(n), i = n === P || r;
210
+ return /* @__PURE__ */ m("span", {
129
211
  role: "gridcell",
130
- "aria-selected": r === A,
131
- className: e([p]),
132
- children: /* @__PURE__ */ n("button", {
212
+ "aria-selected": i || nt(n),
213
+ className: e([S]),
214
+ children: /* @__PURE__ */ m("button", {
133
215
  type: "button",
134
- disabled: q(r),
216
+ "data-haze-day": n,
217
+ disabled: Je(t.year, t.month, t.day),
135
218
  onClick: () => {
136
- j(r), D?.(r);
219
+ De(n), we?.(n);
137
220
  },
138
221
  className: e([
139
- h,
140
- r === A && g,
141
- t.outside && _
222
+ C,
223
+ i && w,
224
+ !i && nt(n) && le,
225
+ t.outside && ue
142
226
  ]),
143
227
  children: t.day
144
228
  })
229
+ }, n);
230
+ })]
231
+ }, n))]
232
+ });
233
+ }, at = /* @__PURE__ */ h("div", {
234
+ onKeyDown: ot,
235
+ className: e([me]),
236
+ children: [/* @__PURE__ */ h("div", {
237
+ className: e([he]),
238
+ children: [
239
+ /* @__PURE__ */ m("button", {
240
+ type: "button",
241
+ onClick: () => K((e) => e - 1),
242
+ "aria-label": F.previousYear,
243
+ className: e([y]),
244
+ children: "‹"
245
+ }),
246
+ /* @__PURE__ */ m("span", {
247
+ className: e([b]),
248
+ children: G
249
+ }),
250
+ /* @__PURE__ */ m("button", {
251
+ type: "button",
252
+ onClick: () => K((e) => e + 1),
253
+ "aria-label": F.nextYear,
254
+ className: e([y]),
255
+ children: "›"
256
+ })
257
+ ]
258
+ }), /* @__PURE__ */ m("div", {
259
+ ref: H,
260
+ role: "grid",
261
+ "aria-label": F.selectMonth,
262
+ onKeyDown: He,
263
+ className: e([T]),
264
+ children: [
265
+ 0,
266
+ 1,
267
+ 2,
268
+ 3
269
+ ].map((t) => /* @__PURE__ */ m("div", {
270
+ role: "row",
271
+ className: e([x]),
272
+ children: [
273
+ 0,
274
+ 1,
275
+ 2
276
+ ].map((n) => {
277
+ let r = t * 3 + n, i = G === q && r === Y;
278
+ return /* @__PURE__ */ m("span", {
279
+ role: "gridcell",
280
+ "aria-selected": i,
281
+ className: e([S]),
282
+ children: /* @__PURE__ */ m("button", {
283
+ type: "button",
284
+ "data-haze-month": r,
285
+ onClick: () => ze(r),
286
+ className: e([C, i && w]),
287
+ children: Ie[r]
288
+ })
145
289
  }, r);
146
290
  })
147
- }, r))]
291
+ }, t))
148
292
  })]
149
293
  });
294
+ function ot(e) {
295
+ e.key === "Escape" && (e.preventDefault(), Re());
296
+ }
297
+ if (t !== "date") {
298
+ let n = Math.floor(q / 10) * 10, r = t === "year" ? F.previousDecade : F.previousYear, i = t === "year" ? F.nextDecade : F.nextYear, a = t === "year" ? `${n} – ${n + 11}` : String(q), l = t === "month" ? /* @__PURE__ */ m("div", {
299
+ ref: V,
300
+ role: "grid",
301
+ "aria-label": F.selectMonth,
302
+ onKeyDown: We,
303
+ className: e([T]),
304
+ children: [
305
+ 0,
306
+ 1,
307
+ 2,
308
+ 3
309
+ ].map((t) => /* @__PURE__ */ m("div", {
310
+ role: "row",
311
+ className: e([x]),
312
+ children: [
313
+ 0,
314
+ 1,
315
+ 2
316
+ ].map((n) => {
317
+ let r = t * 3 + n, i = P === o(q, r);
318
+ return /* @__PURE__ */ m("span", {
319
+ role: "gridcell",
320
+ "aria-selected": i,
321
+ className: e([S]),
322
+ children: /* @__PURE__ */ m("button", {
323
+ type: "button",
324
+ "data-haze-month": r,
325
+ disabled: Ye(q, r),
326
+ onClick: () => Qe(o(q, r)),
327
+ className: e([C, i && w]),
328
+ children: Ie[r]
329
+ })
330
+ }, r);
331
+ })
332
+ }, t))
333
+ }) : t === "quarter" ? /* @__PURE__ */ m("div", {
334
+ ref: V,
335
+ role: "grid",
336
+ "aria-label": F.selectQuarter,
337
+ onKeyDown: We,
338
+ className: e([ge]),
339
+ children: m("div", {
340
+ role: "row",
341
+ className: e([x]),
342
+ children: [
343
+ 1,
344
+ 2,
345
+ 3,
346
+ 4
347
+ ].map((t) => {
348
+ let n = P === s(q, t);
349
+ return /* @__PURE__ */ m("span", {
350
+ role: "gridcell",
351
+ "aria-selected": n,
352
+ className: e([S]),
353
+ children: /* @__PURE__ */ h("button", {
354
+ type: "button",
355
+ "data-haze-quarter": t,
356
+ disabled: Xe(q, t),
357
+ onClick: () => Qe(s(q, t)),
358
+ className: e([C, n && w]),
359
+ children: ["Q", t]
360
+ })
361
+ }, t);
362
+ })
363
+ })
364
+ }) : /* @__PURE__ */ m("div", {
365
+ ref: V,
366
+ role: "grid",
367
+ "aria-label": F.selectYear,
368
+ onKeyDown: We,
369
+ className: e([T]),
370
+ children: [
371
+ 0,
372
+ 1,
373
+ 2,
374
+ 3
375
+ ].map((t) => /* @__PURE__ */ m("div", {
376
+ role: "row",
377
+ className: e([x]),
378
+ children: [
379
+ 0,
380
+ 1,
381
+ 2
382
+ ].map((r) => {
383
+ let i = n + t * 3 + r, a = P === c(i);
384
+ return /* @__PURE__ */ m("span", {
385
+ role: "gridcell",
386
+ "aria-selected": a,
387
+ className: e([S]),
388
+ children: /* @__PURE__ */ m("button", {
389
+ type: "button",
390
+ "data-haze-year": i,
391
+ disabled: Ze(i),
392
+ onClick: () => Qe(c(i)),
393
+ className: e([C, a && w]),
394
+ children: i
395
+ })
396
+ }, i);
397
+ })
398
+ }, t))
399
+ });
400
+ return /* @__PURE__ */ h("div", {
401
+ ref: L,
402
+ ...Ee,
403
+ className: e([ne, Te]),
404
+ children: [/* @__PURE__ */ h("div", {
405
+ className: e([re]),
406
+ children: [
407
+ /* @__PURE__ */ m("button", {
408
+ type: "button",
409
+ onClick: () => $(-1),
410
+ "aria-label": r,
411
+ className: e([y]),
412
+ children: "‹"
413
+ }),
414
+ /* @__PURE__ */ m("span", {
415
+ className: e([b]),
416
+ children: a
417
+ }),
418
+ /* @__PURE__ */ h("span", {
419
+ className: e([ae]),
420
+ children: [/* @__PURE__ */ m("button", {
421
+ type: "button",
422
+ onClick: qe,
423
+ className: e([y]),
424
+ children: F.today
425
+ }), /* @__PURE__ */ m("button", {
426
+ type: "button",
427
+ onClick: () => $(1),
428
+ "aria-label": i,
429
+ className: e([y]),
430
+ children: "›"
431
+ })]
432
+ })
433
+ ]
434
+ }), l]
435
+ });
436
+ }
437
+ return /* @__PURE__ */ h("div", {
438
+ ref: L,
439
+ ...Ee,
440
+ className: e([ne, Te]),
441
+ children: [/* @__PURE__ */ h("div", {
442
+ className: e([re]),
443
+ children: [
444
+ /* @__PURE__ */ m("button", {
445
+ type: "button",
446
+ onClick: Ge,
447
+ "aria-label": F.previousMonth,
448
+ className: e([y]),
449
+ children: "‹"
450
+ }),
451
+ /* @__PURE__ */ m("button", {
452
+ ref: ke,
453
+ type: "button",
454
+ "aria-expanded": U,
455
+ onClick: U ? Re : Le,
456
+ className: e([ie, b]),
457
+ children: rt
458
+ }),
459
+ /* @__PURE__ */ h("span", {
460
+ className: e([ae]),
461
+ children: [/* @__PURE__ */ m("button", {
462
+ type: "button",
463
+ onClick: qe,
464
+ className: e([y]),
465
+ children: F.today
466
+ }), /* @__PURE__ */ m("button", {
467
+ type: "button",
468
+ onClick: Ke,
469
+ "aria-label": F.nextMonth,
470
+ className: e([y]),
471
+ children: "›"
472
+ })]
473
+ })
474
+ ]
475
+ }), U ? at : Ce === 2 ? /* @__PURE__ */ h("div", {
476
+ className: e([de]),
477
+ children: [/* @__PURE__ */ m("div", {
478
+ className: e([fe]),
479
+ children: it({
480
+ year: q,
481
+ month: Y
482
+ }, I, Be)
483
+ }), /* @__PURE__ */ h("div", {
484
+ className: e([fe]),
485
+ children: [/* @__PURE__ */ m("div", {
486
+ className: e([pe]),
487
+ children: /* @__PURE__ */ m("span", {
488
+ className: e([b]),
489
+ children: X.format(new Date(Q.year, Q.month))
490
+ })
491
+ }), it(Q, Oe, Ve)]
492
+ })]
493
+ }) : it({
494
+ year: q,
495
+ month: Y
496
+ }, I, Be)]
497
+ });
150
498
  }
151
499
  //#endregion
152
- export { C as default };
500
+ export { O as default };