@bitrix24/b24ui-nuxt 2.2.1 → 2.4.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 (594) hide show
  1. package/README.md +5 -4
  2. package/cli/package.json +1 -1
  3. package/dist/module.d.mts +2 -1
  4. package/dist/module.json +1 -1
  5. package/dist/module.mjs +3 -2
  6. package/dist/runtime/air-design-tokens/013_b24_mobile_light.css +1 -0
  7. package/dist/runtime/air-design-tokens/014_b24_mobile_dark.css +1 -0
  8. package/dist/runtime/air-design-tokens/015_b24_mobile_edge-light.css +1 -0
  9. package/dist/runtime/air-design-tokens/016_b24_mobile_edge-dark.css +1 -0
  10. package/dist/runtime/air-design-tokens/023_b24_desktop_light.css +1 -0
  11. package/dist/runtime/air-design-tokens/024_b24_desktop_dark.css +1 -0
  12. package/dist/runtime/air-design-tokens/025_b24_desktop_edge-light.css +1 -0
  13. package/dist/runtime/air-design-tokens/026_b24_desktop_edge-dark.css +1 -0
  14. package/dist/runtime/air-design-tokens/design-tokens/app.json +23812 -0
  15. package/dist/runtime/air-design-tokens/design-tokens/mobileapp.json +7476 -0
  16. package/dist/runtime/air-design-tokens/index.css +1 -1
  17. package/dist/runtime/components/Accordion.d.vue.ts +17 -8
  18. package/dist/runtime/components/Accordion.vue +16 -13
  19. package/dist/runtime/components/Accordion.vue.d.ts +17 -8
  20. package/dist/runtime/components/Advice.d.vue.ts +4 -1
  21. package/dist/runtime/components/Advice.vue +14 -12
  22. package/dist/runtime/components/Advice.vue.d.ts +4 -1
  23. package/dist/runtime/components/Alert.d.vue.ts +6 -3
  24. package/dist/runtime/components/Alert.vue +12 -10
  25. package/dist/runtime/components/Alert.vue.d.ts +6 -3
  26. package/dist/runtime/components/App.d.vue.ts +8 -6
  27. package/dist/runtime/components/App.vue.d.ts +8 -6
  28. package/dist/runtime/components/Avatar.d.vue.ts +2 -2
  29. package/dist/runtime/components/Avatar.vue +7 -5
  30. package/dist/runtime/components/Avatar.vue.d.ts +2 -2
  31. package/dist/runtime/components/AvatarGroup.d.vue.ts +1 -1
  32. package/dist/runtime/components/AvatarGroup.vue +6 -4
  33. package/dist/runtime/components/AvatarGroup.vue.d.ts +1 -1
  34. package/dist/runtime/components/Badge.d.vue.ts +4 -1
  35. package/dist/runtime/components/Badge.vue +10 -8
  36. package/dist/runtime/components/Badge.vue.d.ts +4 -1
  37. package/dist/runtime/components/Banner.d.vue.ts +3 -4
  38. package/dist/runtime/components/Banner.vue +60 -32
  39. package/dist/runtime/components/Banner.vue.d.ts +3 -4
  40. package/dist/runtime/components/Breadcrumb.d.vue.ts +8 -6
  41. package/dist/runtime/components/Breadcrumb.vue +13 -11
  42. package/dist/runtime/components/Breadcrumb.vue.d.ts +8 -6
  43. package/dist/runtime/components/Button.d.vue.ts +4 -1
  44. package/dist/runtime/components/Button.vue +15 -13
  45. package/dist/runtime/components/Button.vue.d.ts +4 -1
  46. package/dist/runtime/components/Calendar.d.vue.ts +14 -6
  47. package/dist/runtime/components/Calendar.vue +27 -14
  48. package/dist/runtime/components/Calendar.vue.d.ts +14 -6
  49. package/dist/runtime/components/Card.d.vue.ts +1 -1
  50. package/dist/runtime/components/Card.vue +7 -5
  51. package/dist/runtime/components/Card.vue.d.ts +1 -1
  52. package/dist/runtime/components/ChatMessage.d.vue.ts +3 -1
  53. package/dist/runtime/components/ChatMessage.vue +11 -9
  54. package/dist/runtime/components/ChatMessage.vue.d.ts +3 -1
  55. package/dist/runtime/components/ChatMessages.d.vue.ts +6 -1
  56. package/dist/runtime/components/ChatMessages.vue +16 -11
  57. package/dist/runtime/components/ChatMessages.vue.d.ts +6 -1
  58. package/dist/runtime/components/ChatPalette.d.vue.ts +1 -1
  59. package/dist/runtime/components/ChatPalette.vue +6 -4
  60. package/dist/runtime/components/ChatPalette.vue.d.ts +1 -1
  61. package/dist/runtime/components/ChatPrompt.d.vue.ts +9 -4
  62. package/dist/runtime/components/ChatPrompt.vue +10 -7
  63. package/dist/runtime/components/ChatPrompt.vue.d.ts +9 -4
  64. package/dist/runtime/components/ChatPromptSubmit.d.vue.ts +9 -3
  65. package/dist/runtime/components/ChatPromptSubmit.vue +5 -3
  66. package/dist/runtime/components/ChatPromptSubmit.vue.d.ts +9 -3
  67. package/dist/runtime/components/Checkbox.d.vue.ts +2 -2
  68. package/dist/runtime/components/Checkbox.vue +19 -12
  69. package/dist/runtime/components/Checkbox.vue.d.ts +2 -2
  70. package/dist/runtime/components/CheckboxGroup.d.vue.ts +16 -11
  71. package/dist/runtime/components/CheckboxGroup.vue +9 -7
  72. package/dist/runtime/components/CheckboxGroup.vue.d.ts +16 -11
  73. package/dist/runtime/components/Chip.d.vue.ts +8 -3
  74. package/dist/runtime/components/Chip.vue +6 -4
  75. package/dist/runtime/components/Chip.vue.d.ts +8 -3
  76. package/dist/runtime/components/Collapsible.d.vue.ts +5 -3
  77. package/dist/runtime/components/Collapsible.vue +5 -3
  78. package/dist/runtime/components/Collapsible.vue.d.ts +5 -3
  79. package/dist/runtime/components/ColorPicker.d.vue.ts +7 -3
  80. package/dist/runtime/components/ColorPicker.vue +10 -8
  81. package/dist/runtime/components/ColorPicker.vue.d.ts +7 -3
  82. package/dist/runtime/components/CommandPalette.d.vue.ts +38 -15
  83. package/dist/runtime/components/CommandPalette.vue +59 -52
  84. package/dist/runtime/components/CommandPalette.vue.d.ts +38 -15
  85. package/dist/runtime/components/Container.d.vue.ts +4 -1
  86. package/dist/runtime/components/Container.vue +5 -2
  87. package/dist/runtime/components/Container.vue.d.ts +4 -1
  88. package/dist/runtime/components/ContextMenu.d.vue.ts +10 -6
  89. package/dist/runtime/components/ContextMenu.vue +5 -3
  90. package/dist/runtime/components/ContextMenu.vue.d.ts +10 -6
  91. package/dist/runtime/components/ContextMenuContent.d.vue.ts +14 -6
  92. package/dist/runtime/components/ContextMenuContent.vue +11 -11
  93. package/dist/runtime/components/ContextMenuContent.vue.d.ts +14 -6
  94. package/dist/runtime/components/Countdown.d.vue.ts +12 -3
  95. package/dist/runtime/components/Countdown.vue +12 -10
  96. package/dist/runtime/components/Countdown.vue.d.ts +12 -3
  97. package/dist/runtime/components/DashboardGroup.d.vue.ts +11 -3
  98. package/dist/runtime/components/DashboardGroup.vue +15 -11
  99. package/dist/runtime/components/DashboardGroup.vue.d.ts +11 -3
  100. package/dist/runtime/components/DashboardNavbar.d.vue.ts +59 -0
  101. package/dist/runtime/components/DashboardNavbar.vue +79 -0
  102. package/dist/runtime/components/DashboardNavbar.vue.d.ts +59 -0
  103. package/dist/runtime/components/DashboardPanel.d.vue.ts +31 -0
  104. package/dist/runtime/components/DashboardPanel.vue +66 -0
  105. package/dist/runtime/components/DashboardPanel.vue.d.ts +31 -0
  106. package/dist/runtime/components/DashboardResizeHandle.d.vue.ts +22 -0
  107. package/dist/runtime/components/DashboardResizeHandle.vue +30 -0
  108. package/dist/runtime/components/DashboardResizeHandle.vue.d.ts +22 -0
  109. package/dist/runtime/components/DashboardSearch.d.vue.ts +13 -4
  110. package/dist/runtime/components/DashboardSearch.vue +9 -4
  111. package/dist/runtime/components/DashboardSearch.vue.d.ts +13 -4
  112. package/dist/runtime/components/DashboardSearchButton.d.vue.ts +6 -1
  113. package/dist/runtime/components/DashboardSearchButton.vue +11 -7
  114. package/dist/runtime/components/DashboardSearchButton.vue.d.ts +6 -1
  115. package/dist/runtime/components/DashboardSidebar.d.vue.ts +89 -0
  116. package/dist/runtime/components/DashboardSidebar.vue +169 -0
  117. package/dist/runtime/components/DashboardSidebar.vue.d.ts +89 -0
  118. package/dist/runtime/components/DashboardSidebarCollapse.d.vue.ts +21 -0
  119. package/dist/runtime/components/DashboardSidebarCollapse.vue +64 -0
  120. package/dist/runtime/components/DashboardSidebarCollapse.vue.d.ts +21 -0
  121. package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +21 -0
  122. package/dist/runtime/components/DashboardSidebarToggle.vue +65 -0
  123. package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +21 -0
  124. package/dist/runtime/components/DashboardToolbar.d.vue.ts +26 -0
  125. package/dist/runtime/components/DashboardToolbar.vue +34 -0
  126. package/dist/runtime/components/DashboardToolbar.vue.d.ts +26 -0
  127. package/dist/runtime/components/DescriptionList.d.vue.ts +8 -6
  128. package/dist/runtime/components/DescriptionList.vue +16 -14
  129. package/dist/runtime/components/DescriptionList.vue.d.ts +8 -6
  130. package/dist/runtime/components/Drawer.d.vue.ts +100 -0
  131. package/dist/runtime/components/Drawer.vue +133 -0
  132. package/dist/runtime/components/Drawer.vue.d.ts +100 -0
  133. package/dist/runtime/components/DropdownMenu.d.vue.ts +10 -6
  134. package/dist/runtime/components/DropdownMenu.vue +7 -10
  135. package/dist/runtime/components/DropdownMenu.vue.d.ts +10 -6
  136. package/dist/runtime/components/DropdownMenuContent.d.vue.ts +14 -6
  137. package/dist/runtime/components/DropdownMenuContent.vue +14 -12
  138. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +14 -6
  139. package/dist/runtime/components/Editor.d.vue.ts +30 -15
  140. package/dist/runtime/components/Editor.vue +46 -20
  141. package/dist/runtime/components/Editor.vue.d.ts +30 -15
  142. package/dist/runtime/components/EditorDragHandle.d.vue.ts +18 -3
  143. package/dist/runtime/components/EditorDragHandle.vue +17 -8
  144. package/dist/runtime/components/EditorDragHandle.vue.d.ts +18 -3
  145. package/dist/runtime/components/EditorEmojiMenu.d.vue.ts +12 -6
  146. package/dist/runtime/components/EditorEmojiMenu.vue +5 -2
  147. package/dist/runtime/components/EditorEmojiMenu.vue.d.ts +12 -6
  148. package/dist/runtime/components/EditorMentionMenu.d.vue.ts +12 -6
  149. package/dist/runtime/components/EditorMentionMenu.vue +9 -3
  150. package/dist/runtime/components/EditorMentionMenu.vue.d.ts +12 -6
  151. package/dist/runtime/components/EditorSuggestionMenu.d.vue.ts +12 -6
  152. package/dist/runtime/components/EditorSuggestionMenu.vue +5 -2
  153. package/dist/runtime/components/EditorSuggestionMenu.vue.d.ts +12 -6
  154. package/dist/runtime/components/EditorToolbar.d.vue.ts +8 -6
  155. package/dist/runtime/components/EditorToolbar.vue +16 -13
  156. package/dist/runtime/components/EditorToolbar.vue.d.ts +8 -6
  157. package/dist/runtime/components/Empty.d.vue.ts +3 -1
  158. package/dist/runtime/components/Empty.vue +12 -10
  159. package/dist/runtime/components/Empty.vue.d.ts +3 -1
  160. package/dist/runtime/components/Error.d.vue.ts +6 -2
  161. package/dist/runtime/components/Error.vue +9 -7
  162. package/dist/runtime/components/Error.vue.d.ts +6 -2
  163. package/dist/runtime/components/FieldGroup.d.vue.ts +7 -2
  164. package/dist/runtime/components/FieldGroup.vue +4 -2
  165. package/dist/runtime/components/FieldGroup.vue.d.ts +7 -2
  166. package/dist/runtime/components/FileUpload.d.vue.ts +13 -8
  167. package/dist/runtime/components/FileUpload.vue +20 -18
  168. package/dist/runtime/components/FileUpload.vue.d.ts +13 -8
  169. package/dist/runtime/components/Footer.d.vue.ts +30 -0
  170. package/dist/runtime/components/Footer.vue +47 -0
  171. package/dist/runtime/components/Footer.vue.d.ts +30 -0
  172. package/dist/runtime/components/FooterColumns.d.vue.ts +69 -0
  173. package/dist/runtime/components/FooterColumns.vue +83 -0
  174. package/dist/runtime/components/FooterColumns.vue.d.ts +69 -0
  175. package/dist/runtime/components/Form.d.vue.ts +14 -6
  176. package/dist/runtime/components/Form.vue +10 -2
  177. package/dist/runtime/components/Form.vue.d.ts +14 -6
  178. package/dist/runtime/components/FormField.d.vue.ts +3 -1
  179. package/dist/runtime/components/FormField.vue +13 -11
  180. package/dist/runtime/components/FormField.vue.d.ts +3 -1
  181. package/dist/runtime/components/Header.d.vue.ts +81 -0
  182. package/dist/runtime/components/Header.vue +147 -0
  183. package/dist/runtime/components/Header.vue.d.ts +81 -0
  184. package/dist/runtime/components/Input.d.vue.ts +63 -15
  185. package/dist/runtime/components/Input.vue +18 -14
  186. package/dist/runtime/components/Input.vue.d.ts +63 -15
  187. package/dist/runtime/components/InputDate.d.vue.ts +16 -6
  188. package/dist/runtime/components/InputDate.vue +20 -13
  189. package/dist/runtime/components/InputDate.vue.d.ts +16 -6
  190. package/dist/runtime/components/InputMenu.d.vue.ts +185 -30
  191. package/dist/runtime/components/InputMenu.vue +92 -67
  192. package/dist/runtime/components/InputMenu.vue.d.ts +185 -30
  193. package/dist/runtime/components/InputNumber.d.vue.ts +26 -19
  194. package/dist/runtime/components/InputNumber.vue +25 -16
  195. package/dist/runtime/components/InputNumber.vue.d.ts +26 -19
  196. package/dist/runtime/components/InputTags.d.vue.ts +19 -7
  197. package/dist/runtime/components/InputTags.vue +18 -14
  198. package/dist/runtime/components/InputTags.vue.d.ts +19 -7
  199. package/dist/runtime/components/InputTime.d.vue.ts +11 -7
  200. package/dist/runtime/components/InputTime.vue +19 -11
  201. package/dist/runtime/components/InputTime.vue.d.ts +11 -7
  202. package/dist/runtime/components/Kbd.d.vue.ts +5 -1
  203. package/dist/runtime/components/Kbd.vue +5 -2
  204. package/dist/runtime/components/Kbd.vue.d.ts +5 -1
  205. package/dist/runtime/components/Link.d.vue.ts +7 -1
  206. package/dist/runtime/components/Link.vue +7 -7
  207. package/dist/runtime/components/Link.vue.d.ts +7 -1
  208. package/dist/runtime/components/LinkBase.d.vue.ts +6 -3
  209. package/dist/runtime/components/LinkBase.vue.d.ts +6 -3
  210. package/dist/runtime/components/Main.d.vue.ts +24 -0
  211. package/dist/runtime/components/Main.vue +26 -0
  212. package/dist/runtime/components/Main.vue.d.ts +24 -0
  213. package/dist/runtime/components/Modal.d.vue.ts +17 -8
  214. package/dist/runtime/components/Modal.vue +19 -26
  215. package/dist/runtime/components/Modal.vue.d.ts +17 -8
  216. package/dist/runtime/components/ModalDialogClose.d.vue.ts +1 -1
  217. package/dist/runtime/components/ModalDialogClose.vue.d.ts +1 -1
  218. package/dist/runtime/components/Navbar.d.vue.ts +3 -1
  219. package/dist/runtime/components/Navbar.vue +4 -2
  220. package/dist/runtime/components/Navbar.vue.d.ts +3 -1
  221. package/dist/runtime/components/NavbarDivider.d.vue.ts +3 -1
  222. package/dist/runtime/components/NavbarDivider.vue +4 -2
  223. package/dist/runtime/components/NavbarDivider.vue.d.ts +3 -1
  224. package/dist/runtime/components/NavbarSection.d.vue.ts +3 -1
  225. package/dist/runtime/components/NavbarSection.vue +4 -2
  226. package/dist/runtime/components/NavbarSection.vue.d.ts +3 -1
  227. package/dist/runtime/components/NavbarSpacer.d.vue.ts +3 -1
  228. package/dist/runtime/components/NavbarSpacer.vue +4 -2
  229. package/dist/runtime/components/NavbarSpacer.vue.d.ts +3 -1
  230. package/dist/runtime/components/NavigationMenu.d.vue.ts +34 -26
  231. package/dist/runtime/components/NavigationMenu.vue +122 -61
  232. package/dist/runtime/components/NavigationMenu.vue.d.ts +34 -26
  233. package/dist/runtime/components/Page.d.vue.ts +26 -0
  234. package/dist/runtime/components/Page.vue +39 -0
  235. package/dist/runtime/components/Page.vue.d.ts +26 -0
  236. package/dist/runtime/components/PageAside.d.vue.ts +28 -0
  237. package/dist/runtime/components/PageAside.vue +38 -0
  238. package/dist/runtime/components/PageAside.vue.d.ts +28 -0
  239. package/dist/runtime/components/PageBody.d.vue.ts +22 -0
  240. package/dist/runtime/components/PageBody.vue +26 -0
  241. package/dist/runtime/components/PageBody.vue.d.ts +22 -0
  242. package/dist/runtime/components/PageCard.d.vue.ts +3 -1
  243. package/dist/runtime/components/PageCard.vue +13 -11
  244. package/dist/runtime/components/PageCard.vue.d.ts +3 -1
  245. package/dist/runtime/components/PageColumns.d.vue.ts +4 -1
  246. package/dist/runtime/components/PageColumns.vue +5 -2
  247. package/dist/runtime/components/PageColumns.vue.d.ts +4 -1
  248. package/dist/runtime/components/PageFeature.d.vue.ts +47 -0
  249. package/dist/runtime/components/PageFeature.vue +79 -0
  250. package/dist/runtime/components/PageFeature.vue.d.ts +47 -0
  251. package/dist/runtime/components/PageGrid.d.vue.ts +4 -1
  252. package/dist/runtime/components/PageGrid.vue +5 -2
  253. package/dist/runtime/components/PageGrid.vue.d.ts +4 -1
  254. package/dist/runtime/components/PageHeader.d.vue.ts +37 -0
  255. package/dist/runtime/components/PageHeader.vue +67 -0
  256. package/dist/runtime/components/PageHeader.vue.d.ts +37 -0
  257. package/dist/runtime/components/PageLinks.d.vue.ts +8 -6
  258. package/dist/runtime/components/PageLinks.vue +12 -10
  259. package/dist/runtime/components/PageLinks.vue.d.ts +8 -6
  260. package/dist/runtime/components/PageList.d.vue.ts +6 -1
  261. package/dist/runtime/components/PageList.vue +5 -2
  262. package/dist/runtime/components/PageList.vue.d.ts +6 -1
  263. package/dist/runtime/components/PageSection.d.vue.ts +71 -0
  264. package/dist/runtime/components/PageSection.vue +110 -0
  265. package/dist/runtime/components/PageSection.vue.d.ts +71 -0
  266. package/dist/runtime/components/Pagination.d.vue.ts +11 -3
  267. package/dist/runtime/components/Pagination.vue +11 -9
  268. package/dist/runtime/components/Pagination.vue.d.ts +11 -3
  269. package/dist/runtime/components/PinInput.d.vue.ts +15 -6
  270. package/dist/runtime/components/PinInput.vue +11 -4
  271. package/dist/runtime/components/PinInput.vue.d.ts +15 -6
  272. package/dist/runtime/components/Popover.d.vue.ts +11 -6
  273. package/dist/runtime/components/Popover.vue +8 -3
  274. package/dist/runtime/components/Popover.vue.d.ts +11 -6
  275. package/dist/runtime/components/Progress.d.vue.ts +7 -3
  276. package/dist/runtime/components/Progress.vue +9 -7
  277. package/dist/runtime/components/Progress.vue.d.ts +7 -3
  278. package/dist/runtime/components/RadioGroup.d.vue.ts +13 -8
  279. package/dist/runtime/components/RadioGroup.vue +13 -11
  280. package/dist/runtime/components/RadioGroup.vue.d.ts +13 -8
  281. package/dist/runtime/components/Range.d.vue.ts +14 -9
  282. package/dist/runtime/components/Range.vue +8 -6
  283. package/dist/runtime/components/Range.vue.d.ts +14 -9
  284. package/dist/runtime/components/ScrollArea.d.vue.ts +17 -6
  285. package/dist/runtime/components/ScrollArea.vue +35 -11
  286. package/dist/runtime/components/ScrollArea.vue.d.ts +17 -6
  287. package/dist/runtime/components/Select.d.vue.ts +76 -23
  288. package/dist/runtime/components/Select.vue +40 -38
  289. package/dist/runtime/components/Select.vue.d.ts +76 -23
  290. package/dist/runtime/components/SelectMenu.d.vue.ts +146 -35
  291. package/dist/runtime/components/SelectMenu.vue +98 -68
  292. package/dist/runtime/components/SelectMenu.vue.d.ts +146 -35
  293. package/dist/runtime/components/Separator.d.vue.ts +7 -2
  294. package/dist/runtime/components/Separator.vue +9 -7
  295. package/dist/runtime/components/Separator.vue.d.ts +7 -2
  296. package/dist/runtime/components/Sidebar.d.vue.ts +3 -1
  297. package/dist/runtime/components/Sidebar.vue +4 -2
  298. package/dist/runtime/components/Sidebar.vue.d.ts +3 -1
  299. package/dist/runtime/components/SidebarBody.d.vue.ts +4 -4
  300. package/dist/runtime/components/SidebarBody.vue +4 -2
  301. package/dist/runtime/components/SidebarBody.vue.d.ts +4 -4
  302. package/dist/runtime/components/SidebarFooter.d.vue.ts +3 -4
  303. package/dist/runtime/components/SidebarFooter.vue +4 -2
  304. package/dist/runtime/components/SidebarFooter.vue.d.ts +3 -4
  305. package/dist/runtime/components/SidebarHeader.d.vue.ts +3 -4
  306. package/dist/runtime/components/SidebarHeader.vue +4 -2
  307. package/dist/runtime/components/SidebarHeader.vue.d.ts +3 -4
  308. package/dist/runtime/components/SidebarHeading.d.vue.ts +3 -4
  309. package/dist/runtime/components/SidebarHeading.vue +4 -2
  310. package/dist/runtime/components/SidebarHeading.vue.d.ts +3 -4
  311. package/dist/runtime/components/SidebarLayout.d.vue.ts +6 -1
  312. package/dist/runtime/components/SidebarLayout.vue +22 -20
  313. package/dist/runtime/components/SidebarLayout.vue.d.ts +6 -1
  314. package/dist/runtime/components/SidebarSection.d.vue.ts +3 -4
  315. package/dist/runtime/components/SidebarSection.vue +4 -2
  316. package/dist/runtime/components/SidebarSection.vue.d.ts +3 -4
  317. package/dist/runtime/components/SidebarSpacer.d.vue.ts +3 -4
  318. package/dist/runtime/components/SidebarSpacer.vue +4 -2
  319. package/dist/runtime/components/SidebarSpacer.vue.d.ts +3 -4
  320. package/dist/runtime/components/Skeleton.d.vue.ts +5 -3
  321. package/dist/runtime/components/Skeleton.vue +4 -2
  322. package/dist/runtime/components/Skeleton.vue.d.ts +5 -3
  323. package/dist/runtime/components/Slideover.d.vue.ts +13 -3
  324. package/dist/runtime/components/Slideover.vue +24 -19
  325. package/dist/runtime/components/Slideover.vue.d.ts +13 -3
  326. package/dist/runtime/components/Stepper.d.vue.ts +24 -10
  327. package/dist/runtime/components/Stepper.vue +31 -25
  328. package/dist/runtime/components/Stepper.vue.d.ts +24 -10
  329. package/dist/runtime/components/Switch.d.vue.ts +2 -2
  330. package/dist/runtime/components/Switch.vue +20 -14
  331. package/dist/runtime/components/Switch.vue.d.ts +2 -2
  332. package/dist/runtime/components/Table.d.vue.ts +25 -10
  333. package/dist/runtime/components/Table.vue +26 -24
  334. package/dist/runtime/components/Table.vue.d.ts +25 -10
  335. package/dist/runtime/components/TableWrapper.d.vue.ts +6 -3
  336. package/dist/runtime/components/TableWrapper.vue +4 -2
  337. package/dist/runtime/components/TableWrapper.vue.d.ts +6 -3
  338. package/dist/runtime/components/Tabs.d.vue.ts +16 -7
  339. package/dist/runtime/components/Tabs.vue +23 -17
  340. package/dist/runtime/components/Tabs.vue.d.ts +16 -7
  341. package/dist/runtime/components/Textarea.d.vue.ts +63 -15
  342. package/dist/runtime/components/Textarea.vue +19 -15
  343. package/dist/runtime/components/Textarea.vue.d.ts +63 -15
  344. package/dist/runtime/components/Theme.d.vue.ts +17 -0
  345. package/dist/runtime/components/Theme.vue +17 -0
  346. package/dist/runtime/components/Theme.vue.d.ts +17 -0
  347. package/dist/runtime/components/Timeline.d.vue.ts +24 -10
  348. package/dist/runtime/components/Timeline.vue +35 -24
  349. package/dist/runtime/components/Timeline.vue.d.ts +24 -10
  350. package/dist/runtime/components/Toast.d.vue.ts +7 -3
  351. package/dist/runtime/components/Toast.vue +16 -16
  352. package/dist/runtime/components/Toast.vue.d.ts +7 -3
  353. package/dist/runtime/components/Toaster.d.vue.ts +8 -1
  354. package/dist/runtime/components/Toaster.vue +7 -4
  355. package/dist/runtime/components/Toaster.vue.d.ts +8 -1
  356. package/dist/runtime/components/Tooltip.d.vue.ts +6 -3
  357. package/dist/runtime/components/Tooltip.vue +9 -7
  358. package/dist/runtime/components/Tooltip.vue.d.ts +6 -3
  359. package/dist/runtime/components/User.d.vue.ts +3 -1
  360. package/dist/runtime/components/User.vue +9 -7
  361. package/dist/runtime/components/User.vue.d.ts +3 -1
  362. package/dist/runtime/components/color-mode/ColorModeAvatar.d.vue.ts +1 -1
  363. package/dist/runtime/components/color-mode/ColorModeAvatar.vue +1 -1
  364. package/dist/runtime/components/color-mode/ColorModeAvatar.vue.d.ts +1 -1
  365. package/dist/runtime/components/color-mode/ColorModeButton.d.vue.ts +3 -1
  366. package/dist/runtime/components/color-mode/ColorModeButton.vue +5 -3
  367. package/dist/runtime/components/color-mode/ColorModeButton.vue.d.ts +3 -1
  368. package/dist/runtime/components/color-mode/ColorModeImage.d.vue.ts +1 -1
  369. package/dist/runtime/components/color-mode/ColorModeImage.vue +8 -3
  370. package/dist/runtime/components/color-mode/ColorModeImage.vue.d.ts +1 -1
  371. package/dist/runtime/components/color-mode/ColorModeSelect.d.vue.ts +3 -1
  372. package/dist/runtime/components/color-mode/ColorModeSelect.vue +6 -2
  373. package/dist/runtime/components/color-mode/ColorModeSelect.vue.d.ts +3 -1
  374. package/dist/runtime/components/color-mode/ColorModeSwitch.d.vue.ts +1 -1
  375. package/dist/runtime/components/color-mode/ColorModeSwitch.vue +1 -1
  376. package/dist/runtime/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  377. package/dist/runtime/components/content/ContentSearch.d.vue.ts +17 -9
  378. package/dist/runtime/components/content/ContentSearch.vue +9 -4
  379. package/dist/runtime/components/content/ContentSearch.vue.d.ts +17 -9
  380. package/dist/runtime/components/content/ContentSearchButton.d.vue.ts +6 -1
  381. package/dist/runtime/components/content/ContentSearchButton.vue +6 -4
  382. package/dist/runtime/components/content/ContentSearchButton.vue.d.ts +6 -1
  383. package/dist/runtime/components/content/ContentSurround.d.vue.ts +8 -6
  384. package/dist/runtime/components/content/ContentSurround.vue +10 -8
  385. package/dist/runtime/components/content/ContentSurround.vue.d.ts +8 -6
  386. package/dist/runtime/components/content/ContentToc.d.vue.ts +11 -6
  387. package/dist/runtime/components/content/ContentToc.vue +16 -14
  388. package/dist/runtime/components/content/ContentToc.vue.d.ts +11 -6
  389. package/dist/runtime/components/locale/LocaleSelect.d.vue.ts +7 -3
  390. package/dist/runtime/components/locale/LocaleSelect.vue +6 -2
  391. package/dist/runtime/components/locale/LocaleSelect.vue.d.ts +7 -3
  392. package/dist/runtime/components/prose/A.d.vue.ts +1 -1
  393. package/dist/runtime/components/prose/A.vue +4 -2
  394. package/dist/runtime/components/prose/A.vue.d.ts +1 -1
  395. package/dist/runtime/components/prose/Accordion.d.vue.ts +3 -1
  396. package/dist/runtime/components/prose/Accordion.vue +4 -2
  397. package/dist/runtime/components/prose/Accordion.vue.d.ts +3 -1
  398. package/dist/runtime/components/prose/AccordionItem.d.vue.ts +4 -1
  399. package/dist/runtime/components/prose/AccordionItem.vue +5 -2
  400. package/dist/runtime/components/prose/AccordionItem.vue.d.ts +4 -1
  401. package/dist/runtime/components/prose/Badge.d.vue.ts +4 -1
  402. package/dist/runtime/components/prose/Badge.vue +5 -2
  403. package/dist/runtime/components/prose/Badge.vue.d.ts +4 -1
  404. package/dist/runtime/components/prose/Blockquote.d.vue.ts +1 -4
  405. package/dist/runtime/components/prose/Blockquote.vue +4 -2
  406. package/dist/runtime/components/prose/Blockquote.vue.d.ts +1 -4
  407. package/dist/runtime/components/prose/Callout.d.vue.ts +1 -1
  408. package/dist/runtime/components/prose/Callout.vue +12 -4
  409. package/dist/runtime/components/prose/Callout.vue.d.ts +1 -1
  410. package/dist/runtime/components/prose/Card.d.vue.ts +1 -1
  411. package/dist/runtime/components/prose/Card.vue +8 -6
  412. package/dist/runtime/components/prose/Card.vue.d.ts +1 -1
  413. package/dist/runtime/components/prose/CardGroup.d.vue.ts +4 -1
  414. package/dist/runtime/components/prose/CardGroup.vue +5 -2
  415. package/dist/runtime/components/prose/CardGroup.vue.d.ts +4 -1
  416. package/dist/runtime/components/prose/Code.d.vue.ts +1 -1
  417. package/dist/runtime/components/prose/Code.vue +4 -2
  418. package/dist/runtime/components/prose/Code.vue.d.ts +1 -1
  419. package/dist/runtime/components/prose/CodeCollapse.d.vue.ts +2 -2
  420. package/dist/runtime/components/prose/CodeCollapse.vue +7 -5
  421. package/dist/runtime/components/prose/CodeCollapse.vue.d.ts +2 -2
  422. package/dist/runtime/components/prose/CodeGroup.d.vue.ts +5 -3
  423. package/dist/runtime/components/prose/CodeGroup.vue +9 -7
  424. package/dist/runtime/components/prose/CodeGroup.vue.d.ts +5 -3
  425. package/dist/runtime/components/prose/CodeIcon.d.vue.ts +1 -1
  426. package/dist/runtime/components/prose/CodeIcon.vue.d.ts +1 -1
  427. package/dist/runtime/components/prose/CodePreview.d.vue.ts +1 -1
  428. package/dist/runtime/components/prose/CodePreview.vue +6 -4
  429. package/dist/runtime/components/prose/CodePreview.vue.d.ts +1 -1
  430. package/dist/runtime/components/prose/Collapsible.d.vue.ts +1 -1
  431. package/dist/runtime/components/prose/Collapsible.vue +7 -5
  432. package/dist/runtime/components/prose/Collapsible.vue.d.ts +1 -1
  433. package/dist/runtime/components/prose/Em.d.vue.ts +1 -4
  434. package/dist/runtime/components/prose/Em.vue +4 -2
  435. package/dist/runtime/components/prose/Em.vue.d.ts +1 -4
  436. package/dist/runtime/components/prose/Field.d.vue.ts +1 -1
  437. package/dist/runtime/components/prose/Field.vue +10 -8
  438. package/dist/runtime/components/prose/Field.vue.d.ts +1 -1
  439. package/dist/runtime/components/prose/FieldGroup.d.vue.ts +4 -1
  440. package/dist/runtime/components/prose/FieldGroup.vue +5 -2
  441. package/dist/runtime/components/prose/FieldGroup.vue.d.ts +4 -1
  442. package/dist/runtime/components/prose/H1.d.vue.ts +3 -1
  443. package/dist/runtime/components/prose/H1.vue +5 -3
  444. package/dist/runtime/components/prose/H1.vue.d.ts +3 -1
  445. package/dist/runtime/components/prose/H2.d.vue.ts +3 -1
  446. package/dist/runtime/components/prose/H2.vue +7 -5
  447. package/dist/runtime/components/prose/H2.vue.d.ts +3 -1
  448. package/dist/runtime/components/prose/H3.d.vue.ts +3 -1
  449. package/dist/runtime/components/prose/H3.vue +7 -5
  450. package/dist/runtime/components/prose/H3.vue.d.ts +3 -1
  451. package/dist/runtime/components/prose/H4.d.vue.ts +3 -1
  452. package/dist/runtime/components/prose/H4.vue +7 -5
  453. package/dist/runtime/components/prose/H4.vue.d.ts +3 -1
  454. package/dist/runtime/components/prose/H5.d.vue.ts +3 -1
  455. package/dist/runtime/components/prose/H5.vue +4 -2
  456. package/dist/runtime/components/prose/H5.vue.d.ts +3 -1
  457. package/dist/runtime/components/prose/H6.d.vue.ts +3 -1
  458. package/dist/runtime/components/prose/H6.vue +4 -2
  459. package/dist/runtime/components/prose/H6.vue.d.ts +3 -1
  460. package/dist/runtime/components/prose/Hr.d.vue.ts +1 -1
  461. package/dist/runtime/components/prose/Hr.vue +4 -2
  462. package/dist/runtime/components/prose/Hr.vue.d.ts +1 -1
  463. package/dist/runtime/components/prose/Img.d.vue.ts +3 -1
  464. package/dist/runtime/components/prose/Img.vue +10 -9
  465. package/dist/runtime/components/prose/Img.vue.d.ts +3 -1
  466. package/dist/runtime/components/prose/Kbd.d.vue.ts +4 -1
  467. package/dist/runtime/components/prose/Kbd.vue +5 -2
  468. package/dist/runtime/components/prose/Kbd.vue.d.ts +4 -1
  469. package/dist/runtime/components/prose/Li.d.vue.ts +1 -4
  470. package/dist/runtime/components/prose/Li.vue +4 -2
  471. package/dist/runtime/components/prose/Li.vue.d.ts +1 -4
  472. package/dist/runtime/components/prose/Ol.d.vue.ts +1 -4
  473. package/dist/runtime/components/prose/Ol.vue +4 -2
  474. package/dist/runtime/components/prose/Ol.vue.d.ts +1 -4
  475. package/dist/runtime/components/prose/P.d.vue.ts +4 -1
  476. package/dist/runtime/components/prose/P.vue +4 -2
  477. package/dist/runtime/components/prose/P.vue.d.ts +4 -1
  478. package/dist/runtime/components/prose/Pre.d.vue.ts +1 -1
  479. package/dist/runtime/components/prose/Pre.vue +9 -7
  480. package/dist/runtime/components/prose/Pre.vue.d.ts +1 -1
  481. package/dist/runtime/components/prose/Steps.d.vue.ts +4 -1
  482. package/dist/runtime/components/prose/Steps.vue +5 -2
  483. package/dist/runtime/components/prose/Steps.vue.d.ts +4 -1
  484. package/dist/runtime/components/prose/Strong.d.vue.ts +1 -4
  485. package/dist/runtime/components/prose/Strong.vue +4 -2
  486. package/dist/runtime/components/prose/Strong.vue.d.ts +1 -4
  487. package/dist/runtime/components/prose/Table.d.vue.ts +7 -1
  488. package/dist/runtime/components/prose/Table.vue +5 -3
  489. package/dist/runtime/components/prose/Table.vue.d.ts +7 -1
  490. package/dist/runtime/components/prose/Tabs.d.vue.ts +5 -3
  491. package/dist/runtime/components/prose/Tabs.vue +4 -2
  492. package/dist/runtime/components/prose/Tabs.vue.d.ts +5 -3
  493. package/dist/runtime/components/prose/TabsItem.d.vue.ts +4 -1
  494. package/dist/runtime/components/prose/TabsItem.vue +5 -2
  495. package/dist/runtime/components/prose/TabsItem.vue.d.ts +4 -1
  496. package/dist/runtime/components/prose/Tbody.d.vue.ts +1 -4
  497. package/dist/runtime/components/prose/Tbody.vue +4 -2
  498. package/dist/runtime/components/prose/Tbody.vue.d.ts +1 -4
  499. package/dist/runtime/components/prose/Td.d.vue.ts +2 -4
  500. package/dist/runtime/components/prose/Td.vue +8 -3
  501. package/dist/runtime/components/prose/Td.vue.d.ts +2 -4
  502. package/dist/runtime/components/prose/Th.d.vue.ts +2 -4
  503. package/dist/runtime/components/prose/Th.vue +8 -3
  504. package/dist/runtime/components/prose/Th.vue.d.ts +2 -4
  505. package/dist/runtime/components/prose/Thead.d.vue.ts +1 -4
  506. package/dist/runtime/components/prose/Thead.vue +4 -2
  507. package/dist/runtime/components/prose/Thead.vue.d.ts +1 -4
  508. package/dist/runtime/components/prose/Tr.d.vue.ts +1 -4
  509. package/dist/runtime/components/prose/Tr.vue +4 -2
  510. package/dist/runtime/components/prose/Tr.vue.d.ts +1 -4
  511. package/dist/runtime/components/prose/Ul.d.vue.ts +1 -4
  512. package/dist/runtime/components/prose/Ul.vue +4 -2
  513. package/dist/runtime/components/prose/Ul.vue.d.ts +1 -4
  514. package/dist/runtime/components/prose/callout/Caution.d.vue.ts +2 -2
  515. package/dist/runtime/components/prose/callout/Caution.vue.d.ts +2 -2
  516. package/dist/runtime/components/prose/callout/Note.d.vue.ts +2 -2
  517. package/dist/runtime/components/prose/callout/Note.vue.d.ts +2 -2
  518. package/dist/runtime/components/prose/callout/Tip.d.vue.ts +2 -2
  519. package/dist/runtime/components/prose/callout/Tip.vue.d.ts +2 -2
  520. package/dist/runtime/components/prose/callout/Warning.d.vue.ts +2 -2
  521. package/dist/runtime/components/prose/callout/Warning.vue.d.ts +2 -2
  522. package/dist/runtime/composables/color-mode/useColorMode.d.ts +6 -0
  523. package/dist/runtime/composables/color-mode/useColorMode.js +15 -6
  524. package/dist/runtime/composables/defineShortcuts.js +4 -1
  525. package/dist/runtime/composables/internal/useFilter.d.ts +9 -0
  526. package/dist/runtime/composables/internal/useFilter.js +60 -0
  527. package/dist/runtime/composables/useAvatarGroup.d.ts +1 -1
  528. package/dist/runtime/composables/useComponentUI.d.ts +33 -0
  529. package/dist/runtime/composables/useComponentUI.js +13 -0
  530. package/dist/runtime/composables/useEditorMenu.d.ts +12 -1
  531. package/dist/runtime/composables/useEditorMenu.js +156 -151
  532. package/dist/runtime/composables/useFieldGroup.d.ts +1 -1
  533. package/dist/runtime/composables/useFormField.d.ts +1 -1
  534. package/dist/runtime/composables/useLoading.d.ts +3 -0
  535. package/dist/runtime/composables/useOverlay.d.ts +3 -1
  536. package/dist/runtime/composables/useResizable.d.ts +1 -1
  537. package/dist/runtime/composables/useResizable.js +1 -1
  538. package/dist/runtime/composables/useToast.d.ts +4 -0
  539. package/dist/runtime/composables/useToast.js +25 -1
  540. package/dist/runtime/dictionary/icons.d.ts +3 -0
  541. package/dist/runtime/dictionary/icons.js +7 -1
  542. package/dist/runtime/index.css +1 -1
  543. package/dist/runtime/keyframes.css +1 -1
  544. package/dist/runtime/plugins/platform.d.ts +34 -0
  545. package/dist/runtime/plugins/platform.js +31 -0
  546. package/dist/runtime/plugins/ui-version.d.ts +1 -1
  547. package/dist/runtime/types/color-mode.d.ts +1 -1
  548. package/dist/runtime/types/editor.d.ts +2 -1
  549. package/dist/runtime/types/html.d.ts +3 -1
  550. package/dist/runtime/types/index.d.ts +19 -0
  551. package/dist/runtime/types/index.js +19 -0
  552. package/dist/runtime/types/input.d.ts +16 -6
  553. package/dist/runtime/types/utils.d.ts +10 -8
  554. package/dist/runtime/utils/ai.d.ts +7 -0
  555. package/dist/runtime/utils/dashboard.d.ts +4 -5
  556. package/dist/runtime/utils/dashboard.js +1 -1
  557. package/dist/runtime/utils/editor.d.ts +1 -1
  558. package/dist/runtime/utils/editor.js +28 -10
  559. package/dist/runtime/utils/fuse.js +22 -3
  560. package/dist/runtime/utils/index.d.ts +3 -1
  561. package/dist/runtime/utils/index.js +13 -3
  562. package/dist/runtime/utils/overlay.d.ts +19 -0
  563. package/dist/runtime/utils/overlay.js +13 -0
  564. package/dist/runtime/utils/virtualizer.d.ts +1 -3
  565. package/dist/runtime/utils/virtualizer.js +15 -6
  566. package/dist/runtime/vue/components/color-mode/ColorModeSelect.d.vue.ts +3 -1
  567. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue +6 -2
  568. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue.d.ts +3 -1
  569. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.d.vue.ts +1 -1
  570. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue +1 -1
  571. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  572. package/dist/runtime/vue/overrides/inertia/Link.d.vue.ts +7 -1
  573. package/dist/runtime/vue/overrides/inertia/Link.vue +1 -0
  574. package/dist/runtime/vue/overrides/inertia/Link.vue.d.ts +7 -1
  575. package/dist/runtime/vue/overrides/inertia/LinkBase.d.vue.ts +6 -3
  576. package/dist/runtime/vue/overrides/inertia/LinkBase.vue.d.ts +6 -3
  577. package/dist/runtime/vue/overrides/none/Link.d.vue.ts +7 -1
  578. package/dist/runtime/vue/overrides/none/Link.vue +11 -3
  579. package/dist/runtime/vue/overrides/none/Link.vue.d.ts +7 -1
  580. package/dist/runtime/vue/overrides/vue-router/Link.d.vue.ts +7 -1
  581. package/dist/runtime/vue/overrides/vue-router/Link.vue +2 -2
  582. package/dist/runtime/vue/overrides/vue-router/Link.vue.d.ts +7 -1
  583. package/dist/runtime/vue/plugins/router.d.ts +4 -0
  584. package/dist/runtime/vue/plugins/router.js +7 -0
  585. package/dist/runtime/vue/stubs/base.d.ts +9 -13
  586. package/dist/runtime/vue/stubs/base.js +11 -33
  587. package/dist/shared/{b24ui-nuxt.C-CS9MBp.mjs → b24ui-nuxt.DstlkmYO.mjs} +904 -60
  588. package/dist/unplugin.d.mts +2 -1
  589. package/dist/unplugin.mjs +6 -3
  590. package/dist/vite.d.mts +2 -3
  591. package/dist/vite.mjs +1 -1
  592. package/package.json +68 -58
  593. package/dist/meta.d.mts +0 -220263
  594. package/dist/meta.mjs +0 -220263
@@ -53,15 +53,19 @@ export type ProgressSlots = {
53
53
  step: number;
54
54
  }) => any;
55
55
  };
56
+ declare const _default: typeof __VLS_export;
57
+ export default _default;
56
58
  declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<ProgressProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
57
59
  "update:modelValue": (value: string[] | undefined) => any;
58
60
  "update:max": (value: number) => any;
59
61
  }, string, import("vue").PublicProps, Readonly<ProgressProps> & Readonly<{
60
62
  "onUpdate:modelValue"?: ((value: string[] | undefined) => any) | undefined;
61
63
  "onUpdate:max"?: ((value: number) => any) | undefined;
62
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ProgressSlots>;
63
- declare const _default: typeof __VLS_export;
64
- export default _default;
64
+ }>, {
65
+ modelValue: number | null;
66
+ inverted: boolean;
67
+ orientation: Progress["variants"]["orientation"];
68
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ProgressSlots>;
65
69
  type __VLS_WithSlots<T, S> = T & {
66
70
  new (): {
67
71
  $slots: S;
@@ -57,7 +57,7 @@ export interface RadioGroupProps<T extends RadioGroupItem[] = RadioGroupItem[],
57
57
  * The orientation the radio buttons are laid out.
58
58
  * @defaultValue 'vertical'
59
59
  */
60
- orientation?: RadioGroupRootProps['orientation'];
60
+ orientation?: RadioGroup['variants']['orientation'];
61
61
  /**
62
62
  * Position of the indicator.
63
63
  * @defaultValue 'start'
@@ -81,19 +81,24 @@ export interface RadioGroupSlots<T extends RadioGroupItem[] = RadioGroupItem[]>
81
81
  label: SlotProps<T[number]>;
82
82
  description: SlotProps<T[number]>;
83
83
  }
84
- declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
85
- props: __VLS_PrettifyLocal<RadioGroupProps<T, VK> & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
84
+ declare const _default: typeof __VLS_export;
85
+ export default _default;
86
+ declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
87
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<RadioGroupProps<T, VK> & {
88
+ onChange?: ((event: Event) => any) | undefined;
89
+ "onUpdate:modelValue"?: ((value: import("../types").GetItemValue<T, VK, undefined, import("../types").NestedItem<T>>) => any) | undefined;
90
+ }> & (typeof globalThis extends {
86
91
  __VLS_PROPS_FALLBACK: infer P;
87
92
  } ? P : {});
88
93
  expose: (exposed: {}) => void;
89
94
  attrs: any;
90
95
  slots: RadioGroupSlots<T>;
91
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void);
96
+ emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, undefined, import("../types").NestedItem<T>>) => void);
92
97
  }>) => import("vue").VNode & {
93
98
  __ctx?: Awaited<typeof __VLS_setup>;
94
99
  };
95
- declare const _default: typeof __VLS_export;
96
- export default _default;
97
- type __VLS_PrettifyLocal<T> = {
100
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
101
+ [K in keyof T]: T[K];
102
+ } : {
98
103
  [K in keyof T as K]: T[K];
99
- } & {};
104
+ }) & {};
@@ -7,6 +7,7 @@ import { computed, useId } from "vue";
7
7
  import { RadioGroupRoot, RadioGroupItem as RRadioGroupItem, RadioGroupIndicator, Label, useForwardPropsEmits } from "reka-ui";
8
8
  import { reactivePick } from "@vueuse/core";
9
9
  import { useAppConfig } from "#imports";
10
+ import { useComponentUI } from "../composables/useComponentUI";
10
11
  import { useFormField } from "../composables/useFormField";
11
12
  import { get } from "../utils";
12
13
  import { tv } from "../utils/tv";
@@ -25,7 +26,7 @@ const props = defineProps({
25
26
  orientation: { type: null, required: false, default: "vertical" },
26
27
  indicator: { type: null, required: false },
27
28
  class: { type: null, required: false },
28
- b24ui: { type: null, required: false },
29
+ b24ui: { type: Object, required: false },
29
30
  disabled: { type: Boolean, required: false },
30
31
  loop: { type: Boolean, required: false },
31
32
  name: { type: String, required: false },
@@ -34,6 +35,7 @@ const props = defineProps({
34
35
  const emits = defineEmits(["change", "update:modelValue"]);
35
36
  const slots = defineSlots();
36
37
  const appConfig = useAppConfig();
38
+ const uiProp = useComponentUI("radioGroup", props);
37
39
  const rootProps = useForwardPropsEmits(reactivePick(props, "as", "loop", "required"), emits);
38
40
  const { emitFormChange, emitFormInput, color, name, size, id: _id, disabled, ariaAttrs } = useFormField(props, { bind: false });
39
41
  const id = _id.value ?? useId();
@@ -96,11 +98,11 @@ function onUpdate(value) {
96
98
  :name="name"
97
99
  :disabled="disabled"
98
100
  data-slot="root"
99
- :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
101
+ :class="b24ui.root({ class: [uiProp?.root, props.class] })"
100
102
  @update:model-value="onUpdate"
101
103
  >
102
- <fieldset data-slot="fieldset" :class="b24ui.fieldset({ class: props.b24ui?.fieldset })" v-bind="ariaAttrs">
103
- <legend v-if="legend || !!slots.legend" data-slot="legend" :class="b24ui.legend({ class: props.b24ui?.legend })">
104
+ <fieldset data-slot="fieldset" :class="b24ui.fieldset({ class: uiProp?.fieldset })" v-bind="ariaAttrs">
105
+ <legend v-if="legend || !!slots.legend" data-slot="legend" :class="b24ui.legend({ class: uiProp?.legend })">
104
106
  <slot name="legend">
105
107
  {{ legend }}
106
108
  </slot>
@@ -111,31 +113,31 @@ function onUpdate(value) {
111
113
  v-for="item in normalizedItems"
112
114
  :key="item.value"
113
115
  data-slot="item"
114
- :class="b24ui.item({ class: [props.b24ui?.item, item.b24ui?.item, item.class], disabled: item.disabled || disabled })"
116
+ :class="b24ui.item({ class: [uiProp?.item, item.b24ui?.item, item.class], disabled: item.disabled || disabled })"
115
117
  >
116
- <div data-slot="container" :class="b24ui.container({ class: [props.b24ui?.container, item.b24ui?.container] })">
118
+ <div data-slot="container" :class="b24ui.container({ class: [uiProp?.container, item.b24ui?.container] })">
117
119
  <RRadioGroupItem
118
120
  :id="item.id"
119
121
  :value="item.value"
120
122
  :disabled="item.disabled || disabled"
121
123
  data-slot="base"
122
- :class="b24ui.base({ class: [props.b24ui?.base, item.b24ui?.base], disabled: item.disabled || disabled })"
124
+ :class="b24ui.base({ class: [uiProp?.base, item.b24ui?.base], disabled: item.disabled || disabled })"
123
125
  >
124
- <RadioGroupIndicator data-slot="indicator" :class="b24ui.indicator({ class: [props.b24ui?.indicator, item.b24ui?.indicator] })" />
126
+ <RadioGroupIndicator data-slot="indicator" :class="b24ui.indicator({ class: [uiProp?.indicator, item.b24ui?.indicator] })" />
125
127
  </RRadioGroupItem>
126
128
  </div>
127
129
 
128
130
  <div
129
131
  v-if="item.label || !!slots.label || (item.description || !!slots.description)"
130
132
  data-slot="wrapper"
131
- :class="b24ui.wrapper({ class: [props.b24ui?.wrapper, item.b24ui?.wrapper] })"
133
+ :class="b24ui.wrapper({ class: [uiProp?.wrapper, item.b24ui?.wrapper] })"
132
134
  >
133
135
  <component
134
136
  :is="!variant || variant === 'list' ? Label : 'p'"
135
137
  v-if="item.label || !!slots.label"
136
138
  :for="item.id"
137
139
  data-slot="label"
138
- :class="b24ui.label({ class: [props.b24ui?.label, item.b24ui?.label], disabled: item.disabled || disabled })"
140
+ :class="b24ui.label({ class: [uiProp?.label, item.b24ui?.label], disabled: item.disabled || disabled })"
139
141
  >
140
142
  <slot name="label" :item="item" :model-value="modelValue">
141
143
  {{ item.label }}
@@ -144,7 +146,7 @@ function onUpdate(value) {
144
146
  <p
145
147
  v-if="item.description || !!slots.description"
146
148
  data-slot="description"
147
- :class="b24ui.description({ class: [props.b24ui?.description, item.b24ui?.description], disabled: item.disabled || disabled })"
149
+ :class="b24ui.description({ class: [uiProp?.description, item.b24ui?.description], disabled: item.disabled || disabled })"
148
150
  >
149
151
  <slot name="description" :item="item" :model-value="modelValue">
150
152
  {{ item.description }}
@@ -57,7 +57,7 @@ export interface RadioGroupProps<T extends RadioGroupItem[] = RadioGroupItem[],
57
57
  * The orientation the radio buttons are laid out.
58
58
  * @defaultValue 'vertical'
59
59
  */
60
- orientation?: RadioGroupRootProps['orientation'];
60
+ orientation?: RadioGroup['variants']['orientation'];
61
61
  /**
62
62
  * Position of the indicator.
63
63
  * @defaultValue 'start'
@@ -81,19 +81,24 @@ export interface RadioGroupSlots<T extends RadioGroupItem[] = RadioGroupItem[]>
81
81
  label: SlotProps<T[number]>;
82
82
  description: SlotProps<T[number]>;
83
83
  }
84
- declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
85
- props: __VLS_PrettifyLocal<RadioGroupProps<T, VK> & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
84
+ declare const _default: typeof __VLS_export;
85
+ export default _default;
86
+ declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<T> = "value">(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
87
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<RadioGroupProps<T, VK> & {
88
+ onChange?: ((event: Event) => any) | undefined;
89
+ "onUpdate:modelValue"?: ((value: import("../types").GetItemValue<T, VK, undefined, import("../types").NestedItem<T>>) => any) | undefined;
90
+ }> & (typeof globalThis extends {
86
91
  __VLS_PROPS_FALLBACK: infer P;
87
92
  } ? P : {});
88
93
  expose: (exposed: {}) => void;
89
94
  attrs: any;
90
95
  slots: RadioGroupSlots<T>;
91
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, import("../types").NestedItem<T>>) => void);
96
+ emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: import("../types").GetItemValue<T, VK, undefined, import("../types").NestedItem<T>>) => void);
92
97
  }>) => import("vue").VNode & {
93
98
  __ctx?: Awaited<typeof __VLS_setup>;
94
99
  };
95
- declare const _default: typeof __VLS_export;
96
- export default _default;
97
- type __VLS_PrettifyLocal<T> = {
100
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
101
+ [K in keyof T]: T[K];
102
+ } : {
98
103
  [K in keyof T as K]: T[K];
99
- } & {};
104
+ }) & {};
@@ -22,7 +22,7 @@ export interface RangeProps extends Pick<SliderRootProps, 'name' | 'disabled' |
22
22
  * The orientation of the range.
23
23
  * @defaultValue 'horizontal'
24
24
  */
25
- orientation?: SliderRootProps['orientation'];
25
+ orientation?: Range['variants']['orientation'];
26
26
  /**
27
27
  * Display a tooltip around the range thumbs with the current value.
28
28
  * `{ disableClosingTrigger: true }`{lang="ts-type"}
@@ -37,21 +37,26 @@ export interface RangeProps extends Pick<SliderRootProps, 'name' | 'disabled' |
37
37
  export interface RangeEmits {
38
38
  change: [event: Event];
39
39
  }
40
- declare const __VLS_export: <T extends number | number[]>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
41
- props: __VLS_PrettifyLocal<(RangeProps & {
40
+ declare const _default: typeof __VLS_export;
41
+ export default _default;
42
+ declare const __VLS_export: <T extends number | number[]>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
43
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<(RangeProps & {
42
44
  modelValue?: T;
43
- }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
45
+ }) & {
46
+ onChange?: ((event: Event) => any) | undefined;
47
+ "onUpdate:modelValue"?: ((value: T | undefined) => any) | undefined;
48
+ }> & (typeof globalThis extends {
44
49
  __VLS_PROPS_FALLBACK: infer P;
45
50
  } ? P : {});
46
51
  expose: (exposed: {}) => void;
47
52
  attrs: any;
48
53
  slots: {};
49
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void);
54
+ emit: ((evt: "change", event: Event) => void) & ((event: "update:modelValue", value: T | undefined) => void);
50
55
  }>) => import("vue").VNode & {
51
56
  __ctx?: Awaited<typeof __VLS_setup>;
52
57
  };
53
- declare const _default: typeof __VLS_export;
54
- export default _default;
55
- type __VLS_PrettifyLocal<T> = {
58
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
59
+ [K in keyof T]: T[K];
60
+ } : {
56
61
  [K in keyof T as K]: T[K];
57
- } & {};
62
+ }) & {};
@@ -7,6 +7,7 @@ import { computed } from "vue";
7
7
  import { SliderRoot, SliderRange, SliderTrack, SliderThumb, useForwardPropsEmits } from "reka-ui";
8
8
  import { reactivePick } from "@vueuse/core";
9
9
  import { useAppConfig } from "#imports";
10
+ import { useComponentUI } from "../composables/useComponentUI";
10
11
  import { useFormField } from "../composables/useFormField";
11
12
  import { tv } from "../utils/tv";
12
13
  import B24Tooltip from "./Tooltip.vue";
@@ -18,7 +19,7 @@ const props = defineProps({
18
19
  tooltip: { type: [Boolean, Object], required: false },
19
20
  defaultValue: { type: [Number, Array], required: false },
20
21
  class: { type: null, required: false },
21
- b24ui: { type: null, required: false },
22
+ b24ui: { type: Object, required: false },
22
23
  name: { type: String, required: false },
23
24
  disabled: { type: Boolean, required: false },
24
25
  inverted: { type: Boolean, required: false },
@@ -30,6 +31,7 @@ const props = defineProps({
30
31
  const emits = defineEmits(["change"]);
31
32
  const modelValue = defineModel({ type: null });
32
33
  const appConfig = useAppConfig();
34
+ const uiProp = useComponentUI("range", props);
33
35
  const rootProps = useForwardPropsEmits(reactivePick(props, "as", "orientation", "min", "max", "step", "minStepsBetweenThumbs", "inverted"), emits);
34
36
  const { id, emitFormChange, emitFormInput, size, color, name, disabled, ariaAttrs } = useFormField(props);
35
37
  const defaultRangeValue = computed(() => {
@@ -71,13 +73,13 @@ function onChange(value) {
71
73
  :name="name"
72
74
  :disabled="disabled"
73
75
  data-slot="root"
74
- :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
76
+ :class="b24ui.root({ class: [uiProp?.root, props.class] })"
75
77
  :default-value="defaultRangeValue"
76
78
  @update:model-value="emitFormInput()"
77
79
  @value-commit="onChange"
78
80
  >
79
- <SliderTrack data-slot="track" :class="b24ui.track({ class: props.b24ui?.track })">
80
- <SliderRange data-slot="range" :class="b24ui.range({ class: props.b24ui?.range })" />
81
+ <SliderTrack data-slot="track" :class="b24ui.track({ class: uiProp?.track })">
82
+ <SliderRange data-slot="range" :class="b24ui.range({ class: uiProp?.range })" />
81
83
  </SliderTrack>
82
84
 
83
85
  <template v-for="thumb in thumbs" :key="thumb">
@@ -87,9 +89,9 @@ function onChange(value) {
87
89
  disable-closing-trigger
88
90
  v-bind="typeof tooltip === 'object' ? tooltip : {}"
89
91
  >
90
- <SliderThumb data-slot="thumb" :class="b24ui.thumb({ class: props.b24ui?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
92
+ <SliderThumb data-slot="thumb" :class="b24ui.thumb({ class: uiProp?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
91
93
  </B24Tooltip>
92
- <SliderThumb v-else data-slot="thumb" :class="b24ui.thumb({ class: props.b24ui?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
94
+ <SliderThumb v-else data-slot="thumb" :class="b24ui.thumb({ class: uiProp?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
93
95
  </template>
94
96
  </SliderRoot>
95
97
  </template>
@@ -22,7 +22,7 @@ export interface RangeProps extends Pick<SliderRootProps, 'name' | 'disabled' |
22
22
  * The orientation of the range.
23
23
  * @defaultValue 'horizontal'
24
24
  */
25
- orientation?: SliderRootProps['orientation'];
25
+ orientation?: Range['variants']['orientation'];
26
26
  /**
27
27
  * Display a tooltip around the range thumbs with the current value.
28
28
  * `{ disableClosingTrigger: true }`{lang="ts-type"}
@@ -37,21 +37,26 @@ export interface RangeProps extends Pick<SliderRootProps, 'name' | 'disabled' |
37
37
  export interface RangeEmits {
38
38
  change: [event: Event];
39
39
  }
40
- declare const __VLS_export: <T extends number | number[]>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
41
- props: __VLS_PrettifyLocal<(RangeProps & {
40
+ declare const _default: typeof __VLS_export;
41
+ export default _default;
42
+ declare const __VLS_export: <T extends number | number[]>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
43
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<(RangeProps & {
42
44
  modelValue?: T;
43
- }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
45
+ }) & {
46
+ onChange?: ((event: Event) => any) | undefined;
47
+ "onUpdate:modelValue"?: ((value: T | undefined) => any) | undefined;
48
+ }> & (typeof globalThis extends {
44
49
  __VLS_PROPS_FALLBACK: infer P;
45
50
  } ? P : {});
46
51
  expose: (exposed: {}) => void;
47
52
  attrs: any;
48
53
  slots: {};
49
- emit: ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void);
54
+ emit: ((evt: "change", event: Event) => void) & ((event: "update:modelValue", value: T | undefined) => void);
50
55
  }>) => import("vue").VNode & {
51
56
  __ctx?: Awaited<typeof __VLS_setup>;
52
57
  };
53
- declare const _default: typeof __VLS_export;
54
- export default _default;
55
- type __VLS_PrettifyLocal<T> = {
58
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
59
+ [K in keyof T]: T[K];
60
+ } : {
56
61
  [K in keyof T as K]: T[K];
57
- } & {};
62
+ }) & {};
@@ -20,6 +20,13 @@ export interface ScrollAreaVirtualizeOptions extends Partial<Omit<VirtualizerOpt
20
20
  * @defaultValue undefined
21
21
  */
22
22
  lanes?: number;
23
+ /**
24
+ * Skip per-item DOM measurement for uniform-height items.
25
+ * When `true`, uses `estimateSize` only — significantly improving performance for uniform items.
26
+ * When `false` (default), measures each item for variable-height layouts (e.g., masonry).
27
+ * @defaultValue false
28
+ */
29
+ skipMeasurement?: boolean;
23
30
  }
24
31
  export type ScrollAreaItem = any;
25
32
  export interface ScrollAreaProps<T extends ScrollAreaItem = ScrollAreaItem> {
@@ -60,8 +67,12 @@ export interface ScrollAreaEmits {
60
67
  */
61
68
  scroll: [isScrolling: boolean];
62
69
  }
63
- declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
64
- props: __VLS_PrettifyLocal<ScrollAreaProps<T> & __VLS_EmitsToProps<__VLS_NormalizeEmits<(evt: "scroll", isScrolling: boolean) => void>>> & import("vue").PublicProps & (typeof globalThis extends {
70
+ declare const _default: typeof __VLS_export;
71
+ export default _default;
72
+ declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
73
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<ScrollAreaProps<T> & {
74
+ onScroll?: ((isScrolling: boolean) => any) | undefined;
75
+ }> & (typeof globalThis extends {
65
76
  __VLS_PROPS_FALLBACK: infer P;
66
77
  } ? P : {});
67
78
  expose: (exposed: import("vue").ShallowUnwrapRef<{
@@ -74,8 +85,8 @@ declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<
74
85
  }>) => import("vue").VNode & {
75
86
  __ctx?: Awaited<typeof __VLS_setup>;
76
87
  };
77
- declare const _default: typeof __VLS_export;
78
- export default _default;
79
- type __VLS_PrettifyLocal<T> = {
88
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
89
+ [K in keyof T]: T[K];
90
+ } : {
80
91
  [K in keyof T as K]: T[K];
81
- } & {};
92
+ }) & {};
@@ -3,11 +3,12 @@ import theme from "#build/b24ui/scroll-area";
3
3
  </script>
4
4
 
5
5
  <script setup>
6
- import { computed, toRef, useTemplateRef, watch } from "vue";
6
+ import { computed, onMounted, onUnmounted, toRef, useTemplateRef, watch } from "vue";
7
7
  import { Primitive } from "reka-ui";
8
8
  import { defu } from "defu";
9
9
  import { useVirtualizer } from "@tanstack/vue-virtual";
10
10
  import { useAppConfig } from "#imports";
11
+ import { useComponentUI } from "../composables/useComponentUI";
11
12
  import { tv } from "../utils/tv";
12
13
  import { useLocale } from "../composables/useLocale";
13
14
  const props = defineProps({
@@ -16,12 +17,13 @@ const props = defineProps({
16
17
  items: { type: Array, required: false },
17
18
  virtualize: { type: [Boolean, Object], required: false, default: false },
18
19
  class: { type: null, required: false },
19
- b24ui: { type: null, required: false }
20
+ b24ui: { type: Object, required: false }
20
21
  });
21
22
  defineSlots();
22
23
  const emits = defineEmits(["scroll"]);
23
24
  const { dir } = useLocale();
24
25
  const appConfig = useAppConfig();
26
+ const uiProp = useComponentUI("scrollArea", props);
25
27
  const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.scrollArea || {} })({
26
28
  orientation: props.orientation
27
29
  }));
@@ -44,6 +46,9 @@ const lanes = computed(() => {
44
46
  const value = virtualizerProps.value.lanes;
45
47
  return typeof value === "number" ? value : void 0;
46
48
  });
49
+ const skipMeasurement = computed(() => {
50
+ return typeof props.virtualize === "object" && props.virtualize.skipMeasurement === true;
51
+ });
47
52
  const virtualizer = !!props.virtualize && useVirtualizer({
48
53
  ...virtualizerProps.value,
49
54
  get overscan() {
@@ -101,13 +106,32 @@ function getVirtualItemStyle(virtualItem) {
101
106
  transform: isHorizontal.value ? `translateX(${isRtl.value ? -virtualItem.start : virtualItem.start}px)` : `translateY(${virtualItem.start}px)`
102
107
  };
103
108
  }
104
- watch(lanes, () => {
109
+ let resizeObserver = null;
110
+ let rafId = null;
111
+ onMounted(() => {
105
112
  if (virtualizer) {
106
- virtualizer.value.measure();
113
+ const el = rootRef.value?.$el;
114
+ if (el) {
115
+ resizeObserver = new ResizeObserver(() => {
116
+ if (rafId !== null) return;
117
+ rafId = requestAnimationFrame(() => {
118
+ rafId = null;
119
+ virtualizer.value.measure();
120
+ });
121
+ });
122
+ resizeObserver.observe(el);
123
+ }
124
+ }
125
+ });
126
+ onUnmounted(() => {
127
+ if (rafId !== null) {
128
+ cancelAnimationFrame(rafId);
129
+ rafId = null;
107
130
  }
108
- }, { flush: "sync" });
131
+ resizeObserver?.disconnect();
132
+ });
109
133
  function measureElement(el) {
110
- if (el && virtualizer) {
134
+ if (el && virtualizer && !skipMeasurement.value) {
111
135
  const element = el instanceof Element ? el : el.$el;
112
136
  virtualizer.value.measureElement(element);
113
137
  }
@@ -139,12 +163,12 @@ defineExpose({
139
163
  :as="as"
140
164
  data-slot="root"
141
165
  :data-orientation="orientation"
142
- :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
166
+ :class="b24ui.root({ class: [uiProp?.root, props.class] })"
143
167
  >
144
168
  <template v-if="virtualizer">
145
169
  <div
146
170
  data-slot="viewport"
147
- :class="b24ui.viewport({ class: props.b24ui?.viewport })"
171
+ :class="b24ui.viewport({ class: uiProp?.viewport })"
148
172
  :style="virtualViewportStyle"
149
173
  >
150
174
  <div
@@ -153,7 +177,7 @@ defineExpose({
153
177
  :ref="measureElement"
154
178
  :data-index="virtualItem.index"
155
179
  data-slot="item"
156
- :class="b24ui.item({ class: props.b24ui?.item })"
180
+ :class="b24ui.item({ class: uiProp?.item })"
157
181
  :style="getVirtualItemStyle(virtualItem)"
158
182
  >
159
183
  <slot
@@ -166,13 +190,13 @@ defineExpose({
166
190
  </template>
167
191
 
168
192
  <template v-else>
169
- <div data-slot="viewport" :class="b24ui.viewport({ class: props.b24ui?.viewport })">
193
+ <div data-slot="viewport" :class="b24ui.viewport({ class: uiProp?.viewport })">
170
194
  <template v-if="items?.length">
171
195
  <div
172
196
  v-for="(item, index) in items"
173
197
  :key="getItemKey(item, index)"
174
198
  data-slot="item"
175
- :class="b24ui.item({ class: props.b24ui?.item })"
199
+ :class="b24ui.item({ class: uiProp?.item })"
176
200
  >
177
201
  <slot :item="item" :index="index" />
178
202
  </div>
@@ -20,6 +20,13 @@ export interface ScrollAreaVirtualizeOptions extends Partial<Omit<VirtualizerOpt
20
20
  * @defaultValue undefined
21
21
  */
22
22
  lanes?: number;
23
+ /**
24
+ * Skip per-item DOM measurement for uniform-height items.
25
+ * When `true`, uses `estimateSize` only — significantly improving performance for uniform items.
26
+ * When `false` (default), measures each item for variable-height layouts (e.g., masonry).
27
+ * @defaultValue false
28
+ */
29
+ skipMeasurement?: boolean;
23
30
  }
24
31
  export type ScrollAreaItem = any;
25
32
  export interface ScrollAreaProps<T extends ScrollAreaItem = ScrollAreaItem> {
@@ -60,8 +67,12 @@ export interface ScrollAreaEmits {
60
67
  */
61
68
  scroll: [isScrolling: boolean];
62
69
  }
63
- declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
64
- props: __VLS_PrettifyLocal<ScrollAreaProps<T> & __VLS_EmitsToProps<__VLS_NormalizeEmits<(evt: "scroll", isScrolling: boolean) => void>>> & import("vue").PublicProps & (typeof globalThis extends {
70
+ declare const _default: typeof __VLS_export;
71
+ export default _default;
72
+ declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
73
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<ScrollAreaProps<T> & {
74
+ onScroll?: ((isScrolling: boolean) => any) | undefined;
75
+ }> & (typeof globalThis extends {
65
76
  __VLS_PROPS_FALLBACK: infer P;
66
77
  } ? P : {});
67
78
  expose: (exposed: import("vue").ShallowUnwrapRef<{
@@ -74,8 +85,8 @@ declare const __VLS_export: <T extends ScrollAreaItem>(__VLS_props: NonNullable<
74
85
  }>) => import("vue").VNode & {
75
86
  __ctx?: Awaited<typeof __VLS_setup>;
76
87
  };
77
- declare const _default: typeof __VLS_export;
78
- export default _default;
79
- type __VLS_PrettifyLocal<T> = {
88
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
89
+ [K in keyof T]: T[K];
90
+ } : {
80
91
  [K in keyof T as K]: T[K];
81
- } & {};
92
+ }) & {};