@bitrix24/b24ui-nuxt 2.1.17 → 2.3.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 (491) hide show
  1. package/README.md +5 -4
  2. package/cli/package.json +1 -1
  3. package/dist/module.json +1 -1
  4. package/dist/module.mjs +1 -1
  5. package/dist/runtime/components/Accordion.d.vue.ts +17 -8
  6. package/dist/runtime/components/Accordion.vue +6 -5
  7. package/dist/runtime/components/Accordion.vue.d.ts +17 -8
  8. package/dist/runtime/components/Advice.d.vue.ts +4 -1
  9. package/dist/runtime/components/Advice.vue +1 -1
  10. package/dist/runtime/components/Advice.vue.d.ts +4 -1
  11. package/dist/runtime/components/Alert.d.vue.ts +6 -3
  12. package/dist/runtime/components/Alert.vue +1 -1
  13. package/dist/runtime/components/Alert.vue.d.ts +6 -3
  14. package/dist/runtime/components/App.d.vue.ts +8 -6
  15. package/dist/runtime/components/App.vue.d.ts +8 -6
  16. package/dist/runtime/components/Avatar.d.vue.ts +2 -2
  17. package/dist/runtime/components/Avatar.vue +1 -1
  18. package/dist/runtime/components/Avatar.vue.d.ts +2 -2
  19. package/dist/runtime/components/AvatarGroup.d.vue.ts +1 -1
  20. package/dist/runtime/components/AvatarGroup.vue +1 -1
  21. package/dist/runtime/components/AvatarGroup.vue.d.ts +1 -1
  22. package/dist/runtime/components/Badge.d.vue.ts +4 -1
  23. package/dist/runtime/components/Badge.vue +1 -1
  24. package/dist/runtime/components/Badge.vue.d.ts +4 -1
  25. package/dist/runtime/components/Banner.d.vue.ts +3 -4
  26. package/dist/runtime/components/Banner.vue +50 -24
  27. package/dist/runtime/components/Banner.vue.d.ts +3 -4
  28. package/dist/runtime/components/Breadcrumb.d.vue.ts +8 -6
  29. package/dist/runtime/components/Breadcrumb.vue +1 -1
  30. package/dist/runtime/components/Breadcrumb.vue.d.ts +8 -6
  31. package/dist/runtime/components/Button.d.vue.ts +4 -1
  32. package/dist/runtime/components/Button.vue +1 -1
  33. package/dist/runtime/components/Button.vue.d.ts +4 -1
  34. package/dist/runtime/components/Calendar.d.vue.ts +14 -6
  35. package/dist/runtime/components/Calendar.vue +14 -3
  36. package/dist/runtime/components/Calendar.vue.d.ts +14 -6
  37. package/dist/runtime/components/Card.d.vue.ts +1 -1
  38. package/dist/runtime/components/Card.vue +1 -1
  39. package/dist/runtime/components/Card.vue.d.ts +1 -1
  40. package/dist/runtime/components/ChatMessage.d.vue.ts +3 -1
  41. package/dist/runtime/components/ChatMessage.vue +1 -1
  42. package/dist/runtime/components/ChatMessage.vue.d.ts +3 -1
  43. package/dist/runtime/components/ChatMessages.d.vue.ts +6 -1
  44. package/dist/runtime/components/ChatMessages.vue +2 -2
  45. package/dist/runtime/components/ChatMessages.vue.d.ts +6 -1
  46. package/dist/runtime/components/ChatPalette.d.vue.ts +1 -1
  47. package/dist/runtime/components/ChatPalette.vue +1 -1
  48. package/dist/runtime/components/ChatPalette.vue.d.ts +1 -1
  49. package/dist/runtime/components/ChatPrompt.d.vue.ts +9 -4
  50. package/dist/runtime/components/ChatPrompt.vue +1 -1
  51. package/dist/runtime/components/ChatPrompt.vue.d.ts +9 -4
  52. package/dist/runtime/components/ChatPromptSubmit.d.vue.ts +9 -3
  53. package/dist/runtime/components/ChatPromptSubmit.vue +1 -1
  54. package/dist/runtime/components/ChatPromptSubmit.vue.d.ts +9 -3
  55. package/dist/runtime/components/Checkbox.d.vue.ts +2 -2
  56. package/dist/runtime/components/Checkbox.vue +1 -1
  57. package/dist/runtime/components/Checkbox.vue.d.ts +2 -2
  58. package/dist/runtime/components/CheckboxGroup.d.vue.ts +16 -11
  59. package/dist/runtime/components/CheckboxGroup.vue +2 -2
  60. package/dist/runtime/components/CheckboxGroup.vue.d.ts +16 -11
  61. package/dist/runtime/components/Chip.d.vue.ts +8 -3
  62. package/dist/runtime/components/Chip.vue +1 -1
  63. package/dist/runtime/components/Chip.vue.d.ts +8 -3
  64. package/dist/runtime/components/Collapsible.d.vue.ts +5 -3
  65. package/dist/runtime/components/Collapsible.vue +1 -1
  66. package/dist/runtime/components/Collapsible.vue.d.ts +5 -3
  67. package/dist/runtime/components/ColorPicker.d.vue.ts +7 -3
  68. package/dist/runtime/components/ColorPicker.vue +1 -1
  69. package/dist/runtime/components/ColorPicker.vue.d.ts +7 -3
  70. package/dist/runtime/components/CommandPalette.d.vue.ts +37 -14
  71. package/dist/runtime/components/CommandPalette.vue +26 -21
  72. package/dist/runtime/components/CommandPalette.vue.d.ts +37 -14
  73. package/dist/runtime/components/Container.d.vue.ts +1 -1
  74. package/dist/runtime/components/Container.vue.d.ts +1 -1
  75. package/dist/runtime/components/ContextMenu.d.vue.ts +10 -6
  76. package/dist/runtime/components/ContextMenu.vue +1 -1
  77. package/dist/runtime/components/ContextMenu.vue.d.ts +10 -6
  78. package/dist/runtime/components/ContextMenuContent.d.vue.ts +14 -6
  79. package/dist/runtime/components/ContextMenuContent.vue +11 -11
  80. package/dist/runtime/components/ContextMenuContent.vue.d.ts +14 -6
  81. package/dist/runtime/components/Countdown.d.vue.ts +12 -3
  82. package/dist/runtime/components/Countdown.vue +1 -1
  83. package/dist/runtime/components/Countdown.vue.d.ts +12 -3
  84. package/dist/runtime/components/DashboardGroup.d.vue.ts +4 -1
  85. package/dist/runtime/components/DashboardGroup.vue.d.ts +4 -1
  86. package/dist/runtime/components/DashboardSearch.d.vue.ts +13 -4
  87. package/dist/runtime/components/DashboardSearch.vue +4 -2
  88. package/dist/runtime/components/DashboardSearch.vue.d.ts +13 -4
  89. package/dist/runtime/components/DashboardSearchButton.d.vue.ts +6 -1
  90. package/dist/runtime/components/DashboardSearchButton.vue +1 -1
  91. package/dist/runtime/components/DashboardSearchButton.vue.d.ts +6 -1
  92. package/dist/runtime/components/DescriptionList.d.vue.ts +8 -6
  93. package/dist/runtime/components/DescriptionList.vue +1 -1
  94. package/dist/runtime/components/DescriptionList.vue.d.ts +8 -6
  95. package/dist/runtime/components/DropdownMenu.d.vue.ts +10 -6
  96. package/dist/runtime/components/DropdownMenu.vue +1 -1
  97. package/dist/runtime/components/DropdownMenu.vue.d.ts +10 -6
  98. package/dist/runtime/components/DropdownMenuContent.d.vue.ts +14 -6
  99. package/dist/runtime/components/DropdownMenuContent.vue +11 -11
  100. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +14 -6
  101. package/dist/runtime/components/Editor.d.vue.ts +29 -15
  102. package/dist/runtime/components/Editor.vue +31 -17
  103. package/dist/runtime/components/Editor.vue.d.ts +29 -15
  104. package/dist/runtime/components/EditorDragHandle.d.vue.ts +18 -3
  105. package/dist/runtime/components/EditorDragHandle.vue +12 -5
  106. package/dist/runtime/components/EditorDragHandle.vue.d.ts +18 -3
  107. package/dist/runtime/components/EditorEmojiMenu.d.vue.ts +12 -6
  108. package/dist/runtime/components/EditorEmojiMenu.vue +5 -2
  109. package/dist/runtime/components/EditorEmojiMenu.vue.d.ts +12 -6
  110. package/dist/runtime/components/EditorMentionMenu.d.vue.ts +12 -6
  111. package/dist/runtime/components/EditorMentionMenu.vue +5 -2
  112. package/dist/runtime/components/EditorMentionMenu.vue.d.ts +12 -6
  113. package/dist/runtime/components/EditorSuggestionMenu.d.vue.ts +12 -6
  114. package/dist/runtime/components/EditorSuggestionMenu.vue +5 -2
  115. package/dist/runtime/components/EditorSuggestionMenu.vue.d.ts +12 -6
  116. package/dist/runtime/components/EditorToolbar.d.vue.ts +8 -6
  117. package/dist/runtime/components/EditorToolbar.vue +10 -9
  118. package/dist/runtime/components/EditorToolbar.vue.d.ts +8 -6
  119. package/dist/runtime/components/Empty.d.vue.ts +3 -1
  120. package/dist/runtime/components/Empty.vue +1 -1
  121. package/dist/runtime/components/Empty.vue.d.ts +3 -1
  122. package/dist/runtime/components/Error.d.vue.ts +6 -2
  123. package/dist/runtime/components/Error.vue +2 -2
  124. package/dist/runtime/components/Error.vue.d.ts +6 -2
  125. package/dist/runtime/components/FieldGroup.d.vue.ts +4 -1
  126. package/dist/runtime/components/FieldGroup.vue +1 -1
  127. package/dist/runtime/components/FieldGroup.vue.d.ts +4 -1
  128. package/dist/runtime/components/FileUpload.d.vue.ts +13 -8
  129. package/dist/runtime/components/FileUpload.vue +3 -3
  130. package/dist/runtime/components/FileUpload.vue.d.ts +13 -8
  131. package/dist/runtime/components/Form.d.vue.ts +11 -6
  132. package/dist/runtime/components/Form.vue.d.ts +11 -6
  133. package/dist/runtime/components/FormField.d.vue.ts +3 -1
  134. package/dist/runtime/components/FormField.vue +1 -1
  135. package/dist/runtime/components/FormField.vue.d.ts +3 -1
  136. package/dist/runtime/components/Input.d.vue.ts +13 -7
  137. package/dist/runtime/components/Input.vue +2 -2
  138. package/dist/runtime/components/Input.vue.d.ts +13 -7
  139. package/dist/runtime/components/InputDate.d.vue.ts +15 -8
  140. package/dist/runtime/components/InputDate.vue +1 -1
  141. package/dist/runtime/components/InputDate.vue.d.ts +15 -8
  142. package/dist/runtime/components/InputMenu.d.vue.ts +43 -16
  143. package/dist/runtime/components/InputMenu.vue +43 -10
  144. package/dist/runtime/components/InputMenu.vue.d.ts +43 -16
  145. package/dist/runtime/components/InputNumber.d.vue.ts +15 -9
  146. package/dist/runtime/components/InputNumber.vue +7 -6
  147. package/dist/runtime/components/InputNumber.vue.d.ts +15 -9
  148. package/dist/runtime/components/InputTags.d.vue.ts +17 -7
  149. package/dist/runtime/components/InputTags.vue +1 -1
  150. package/dist/runtime/components/InputTags.vue.d.ts +17 -7
  151. package/dist/runtime/components/InputTime.d.vue.ts +10 -9
  152. package/dist/runtime/components/InputTime.vue +2 -1
  153. package/dist/runtime/components/InputTime.vue.d.ts +10 -9
  154. package/dist/runtime/components/Kbd.d.vue.ts +4 -1
  155. package/dist/runtime/components/Kbd.vue.d.ts +4 -1
  156. package/dist/runtime/components/Link.d.vue.ts +7 -1
  157. package/dist/runtime/components/Link.vue.d.ts +7 -1
  158. package/dist/runtime/components/LinkBase.d.vue.ts +6 -3
  159. package/dist/runtime/components/LinkBase.vue.d.ts +6 -3
  160. package/dist/runtime/components/Modal.d.vue.ts +12 -3
  161. package/dist/runtime/components/Modal.vue +5 -14
  162. package/dist/runtime/components/Modal.vue.d.ts +12 -3
  163. package/dist/runtime/components/ModalDialogClose.d.vue.ts +1 -1
  164. package/dist/runtime/components/ModalDialogClose.vue.d.ts +1 -1
  165. package/dist/runtime/components/Navbar.d.vue.ts +3 -1
  166. package/dist/runtime/components/Navbar.vue +1 -1
  167. package/dist/runtime/components/Navbar.vue.d.ts +3 -1
  168. package/dist/runtime/components/NavbarDivider.d.vue.ts +3 -1
  169. package/dist/runtime/components/NavbarDivider.vue +1 -1
  170. package/dist/runtime/components/NavbarDivider.vue.d.ts +3 -1
  171. package/dist/runtime/components/NavbarSection.d.vue.ts +3 -1
  172. package/dist/runtime/components/NavbarSection.vue +1 -1
  173. package/dist/runtime/components/NavbarSection.vue.d.ts +3 -1
  174. package/dist/runtime/components/NavbarSpacer.d.vue.ts +3 -1
  175. package/dist/runtime/components/NavbarSpacer.vue +1 -1
  176. package/dist/runtime/components/NavbarSpacer.vue.d.ts +3 -1
  177. package/dist/runtime/components/NavigationMenu.d.vue.ts +16 -7
  178. package/dist/runtime/components/NavigationMenu.vue +10 -9
  179. package/dist/runtime/components/NavigationMenu.vue.d.ts +16 -7
  180. package/dist/runtime/components/PageCard.d.vue.ts +3 -1
  181. package/dist/runtime/components/PageCard.vue +1 -1
  182. package/dist/runtime/components/PageCard.vue.d.ts +3 -1
  183. package/dist/runtime/components/PageColumns.d.vue.ts +1 -1
  184. package/dist/runtime/components/PageColumns.vue.d.ts +1 -1
  185. package/dist/runtime/components/PageGrid.d.vue.ts +1 -1
  186. package/dist/runtime/components/PageGrid.vue.d.ts +1 -1
  187. package/dist/runtime/components/PageLinks.d.vue.ts +8 -6
  188. package/dist/runtime/components/PageLinks.vue +1 -1
  189. package/dist/runtime/components/PageLinks.vue.d.ts +8 -6
  190. package/dist/runtime/components/PageList.d.vue.ts +3 -1
  191. package/dist/runtime/components/PageList.vue.d.ts +3 -1
  192. package/dist/runtime/components/Pagination.d.vue.ts +11 -3
  193. package/dist/runtime/components/Pagination.vue +1 -1
  194. package/dist/runtime/components/Pagination.vue.d.ts +11 -3
  195. package/dist/runtime/components/PinInput.d.vue.ts +14 -8
  196. package/dist/runtime/components/PinInput.vue +1 -1
  197. package/dist/runtime/components/PinInput.vue.d.ts +14 -8
  198. package/dist/runtime/components/Popover.d.vue.ts +11 -6
  199. package/dist/runtime/components/Popover.vue +4 -1
  200. package/dist/runtime/components/Popover.vue.d.ts +11 -6
  201. package/dist/runtime/components/Progress.d.vue.ts +7 -3
  202. package/dist/runtime/components/Progress.vue +1 -1
  203. package/dist/runtime/components/Progress.vue.d.ts +7 -3
  204. package/dist/runtime/components/RadioGroup.d.vue.ts +12 -7
  205. package/dist/runtime/components/RadioGroup.vue +1 -1
  206. package/dist/runtime/components/RadioGroup.vue.d.ts +12 -7
  207. package/dist/runtime/components/Range.d.vue.ts +14 -9
  208. package/dist/runtime/components/Range.vue +1 -1
  209. package/dist/runtime/components/Range.vue.d.ts +14 -9
  210. package/dist/runtime/components/ScrollArea.d.vue.ts +85 -0
  211. package/dist/runtime/components/ScrollArea.vue +187 -0
  212. package/dist/runtime/components/ScrollArea.vue.d.ts +85 -0
  213. package/dist/runtime/components/Select.d.vue.ts +15 -6
  214. package/dist/runtime/components/Select.vue +5 -2
  215. package/dist/runtime/components/Select.vue.d.ts +15 -6
  216. package/dist/runtime/components/SelectMenu.d.vue.ts +42 -16
  217. package/dist/runtime/components/SelectMenu.vue +46 -12
  218. package/dist/runtime/components/SelectMenu.vue.d.ts +42 -16
  219. package/dist/runtime/components/Separator.d.vue.ts +7 -2
  220. package/dist/runtime/components/Separator.vue.d.ts +7 -2
  221. package/dist/runtime/components/Sidebar.d.vue.ts +3 -1
  222. package/dist/runtime/components/Sidebar.vue +1 -1
  223. package/dist/runtime/components/Sidebar.vue.d.ts +3 -1
  224. package/dist/runtime/components/SidebarBody.d.vue.ts +4 -1
  225. package/dist/runtime/components/SidebarBody.vue +1 -1
  226. package/dist/runtime/components/SidebarBody.vue.d.ts +4 -1
  227. package/dist/runtime/components/SidebarFooter.d.vue.ts +3 -1
  228. package/dist/runtime/components/SidebarFooter.vue +1 -1
  229. package/dist/runtime/components/SidebarFooter.vue.d.ts +3 -1
  230. package/dist/runtime/components/SidebarHeader.d.vue.ts +3 -1
  231. package/dist/runtime/components/SidebarHeader.vue +1 -1
  232. package/dist/runtime/components/SidebarHeader.vue.d.ts +3 -1
  233. package/dist/runtime/components/SidebarHeading.d.vue.ts +3 -1
  234. package/dist/runtime/components/SidebarHeading.vue +1 -1
  235. package/dist/runtime/components/SidebarHeading.vue.d.ts +3 -1
  236. package/dist/runtime/components/SidebarLayout.d.vue.ts +6 -1
  237. package/dist/runtime/components/SidebarLayout.vue +1 -1
  238. package/dist/runtime/components/SidebarLayout.vue.d.ts +6 -1
  239. package/dist/runtime/components/SidebarSection.d.vue.ts +3 -1
  240. package/dist/runtime/components/SidebarSection.vue +1 -1
  241. package/dist/runtime/components/SidebarSection.vue.d.ts +3 -1
  242. package/dist/runtime/components/SidebarSpacer.d.vue.ts +3 -1
  243. package/dist/runtime/components/SidebarSpacer.vue +1 -1
  244. package/dist/runtime/components/SidebarSpacer.vue.d.ts +3 -1
  245. package/dist/runtime/components/Skeleton.d.vue.ts +5 -3
  246. package/dist/runtime/components/Skeleton.vue +1 -1
  247. package/dist/runtime/components/Skeleton.vue.d.ts +5 -3
  248. package/dist/runtime/components/Slideover.d.vue.ts +13 -3
  249. package/dist/runtime/components/Slideover.vue +5 -2
  250. package/dist/runtime/components/Slideover.vue.d.ts +13 -3
  251. package/dist/runtime/components/Stepper.d.vue.ts +24 -10
  252. package/dist/runtime/components/Stepper.vue +21 -17
  253. package/dist/runtime/components/Stepper.vue.d.ts +24 -10
  254. package/dist/runtime/components/Switch.d.vue.ts +2 -2
  255. package/dist/runtime/components/Switch.vue +1 -1
  256. package/dist/runtime/components/Switch.vue.d.ts +2 -2
  257. package/dist/runtime/components/Table.d.vue.ts +26 -10
  258. package/dist/runtime/components/Table.vue +1 -1
  259. package/dist/runtime/components/Table.vue.d.ts +26 -10
  260. package/dist/runtime/components/TableWrapper.d.vue.ts +6 -3
  261. package/dist/runtime/components/TableWrapper.vue +1 -1
  262. package/dist/runtime/components/TableWrapper.vue.d.ts +6 -3
  263. package/dist/runtime/components/Tabs.d.vue.ts +17 -9
  264. package/dist/runtime/components/Tabs.vue +6 -5
  265. package/dist/runtime/components/Tabs.vue.d.ts +17 -9
  266. package/dist/runtime/components/Textarea.d.vue.ts +13 -7
  267. package/dist/runtime/components/Textarea.vue +1 -1
  268. package/dist/runtime/components/Textarea.vue.d.ts +13 -7
  269. package/dist/runtime/components/Timeline.d.vue.ts +24 -10
  270. package/dist/runtime/components/Timeline.vue +27 -18
  271. package/dist/runtime/components/Timeline.vue.d.ts +24 -10
  272. package/dist/runtime/components/Toast.d.vue.ts +7 -3
  273. package/dist/runtime/components/Toast.vue +1 -1
  274. package/dist/runtime/components/Toast.vue.d.ts +7 -3
  275. package/dist/runtime/components/Toaster.d.vue.ts +8 -1
  276. package/dist/runtime/components/Toaster.vue +1 -1
  277. package/dist/runtime/components/Toaster.vue.d.ts +8 -1
  278. package/dist/runtime/components/Tooltip.d.vue.ts +6 -3
  279. package/dist/runtime/components/Tooltip.vue +1 -1
  280. package/dist/runtime/components/Tooltip.vue.d.ts +6 -3
  281. package/dist/runtime/components/User.d.vue.ts +3 -1
  282. package/dist/runtime/components/User.vue +1 -1
  283. package/dist/runtime/components/User.vue.d.ts +3 -1
  284. package/dist/runtime/components/color-mode/ColorModeAvatar.d.vue.ts +1 -1
  285. package/dist/runtime/components/color-mode/ColorModeAvatar.vue +1 -1
  286. package/dist/runtime/components/color-mode/ColorModeAvatar.vue.d.ts +1 -1
  287. package/dist/runtime/components/color-mode/ColorModeButton.d.vue.ts +3 -1
  288. package/dist/runtime/components/color-mode/ColorModeButton.vue +1 -1
  289. package/dist/runtime/components/color-mode/ColorModeButton.vue.d.ts +3 -1
  290. package/dist/runtime/components/color-mode/ColorModeImage.d.vue.ts +1 -1
  291. package/dist/runtime/components/color-mode/ColorModeImage.vue.d.ts +1 -1
  292. package/dist/runtime/components/color-mode/ColorModeSelect.d.vue.ts +3 -1
  293. package/dist/runtime/components/color-mode/ColorModeSelect.vue +5 -1
  294. package/dist/runtime/components/color-mode/ColorModeSelect.vue.d.ts +3 -1
  295. package/dist/runtime/components/color-mode/ColorModeSwitch.d.vue.ts +1 -1
  296. package/dist/runtime/components/color-mode/ColorModeSwitch.vue +1 -1
  297. package/dist/runtime/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  298. package/dist/runtime/components/content/ContentSearch.d.vue.ts +17 -9
  299. package/dist/runtime/components/content/ContentSearch.vue +4 -2
  300. package/dist/runtime/components/content/ContentSearch.vue.d.ts +17 -9
  301. package/dist/runtime/components/content/ContentSearchButton.d.vue.ts +6 -1
  302. package/dist/runtime/components/content/ContentSearchButton.vue +1 -1
  303. package/dist/runtime/components/content/ContentSearchButton.vue.d.ts +6 -1
  304. package/dist/runtime/components/content/ContentSurround.d.vue.ts +8 -6
  305. package/dist/runtime/components/content/ContentSurround.vue +2 -2
  306. package/dist/runtime/components/content/ContentSurround.vue.d.ts +8 -6
  307. package/dist/runtime/components/content/ContentToc.d.vue.ts +11 -6
  308. package/dist/runtime/components/content/ContentToc.vue +1 -1
  309. package/dist/runtime/components/content/ContentToc.vue.d.ts +11 -6
  310. package/dist/runtime/components/locale/LocaleSelect.d.vue.ts +7 -3
  311. package/dist/runtime/components/locale/LocaleSelect.vue +5 -1
  312. package/dist/runtime/components/locale/LocaleSelect.vue.d.ts +7 -3
  313. package/dist/runtime/components/prose/A.d.vue.ts +1 -1
  314. package/dist/runtime/components/prose/A.vue +1 -1
  315. package/dist/runtime/components/prose/A.vue.d.ts +1 -1
  316. package/dist/runtime/components/prose/Accordion.d.vue.ts +3 -1
  317. package/dist/runtime/components/prose/Accordion.vue +1 -1
  318. package/dist/runtime/components/prose/Accordion.vue.d.ts +3 -1
  319. package/dist/runtime/components/prose/AccordionItem.d.vue.ts +1 -1
  320. package/dist/runtime/components/prose/AccordionItem.vue.d.ts +1 -1
  321. package/dist/runtime/components/prose/Badge.d.vue.ts +1 -1
  322. package/dist/runtime/components/prose/Badge.vue.d.ts +1 -1
  323. package/dist/runtime/components/prose/Blockquote.d.vue.ts +1 -1
  324. package/dist/runtime/components/prose/Blockquote.vue +1 -1
  325. package/dist/runtime/components/prose/Blockquote.vue.d.ts +1 -1
  326. package/dist/runtime/components/prose/Callout.d.vue.ts +1 -1
  327. package/dist/runtime/components/prose/Callout.vue +7 -1
  328. package/dist/runtime/components/prose/Callout.vue.d.ts +1 -1
  329. package/dist/runtime/components/prose/Card.d.vue.ts +1 -1
  330. package/dist/runtime/components/prose/Card.vue +1 -1
  331. package/dist/runtime/components/prose/Card.vue.d.ts +1 -1
  332. package/dist/runtime/components/prose/CardGroup.d.vue.ts +1 -1
  333. package/dist/runtime/components/prose/CardGroup.vue.d.ts +1 -1
  334. package/dist/runtime/components/prose/Code.d.vue.ts +1 -1
  335. package/dist/runtime/components/prose/Code.vue +1 -1
  336. package/dist/runtime/components/prose/Code.vue.d.ts +1 -1
  337. package/dist/runtime/components/prose/CodeCollapse.d.vue.ts +2 -2
  338. package/dist/runtime/components/prose/CodeCollapse.vue +1 -1
  339. package/dist/runtime/components/prose/CodeCollapse.vue.d.ts +2 -2
  340. package/dist/runtime/components/prose/CodeGroup.d.vue.ts +5 -3
  341. package/dist/runtime/components/prose/CodeGroup.vue +1 -1
  342. package/dist/runtime/components/prose/CodeGroup.vue.d.ts +5 -3
  343. package/dist/runtime/components/prose/CodeIcon.d.vue.ts +1 -1
  344. package/dist/runtime/components/prose/CodeIcon.vue.d.ts +1 -1
  345. package/dist/runtime/components/prose/CodePreview.d.vue.ts +1 -1
  346. package/dist/runtime/components/prose/CodePreview.vue +1 -1
  347. package/dist/runtime/components/prose/CodePreview.vue.d.ts +1 -1
  348. package/dist/runtime/components/prose/Collapsible.d.vue.ts +1 -1
  349. package/dist/runtime/components/prose/Collapsible.vue +1 -1
  350. package/dist/runtime/components/prose/Collapsible.vue.d.ts +1 -1
  351. package/dist/runtime/components/prose/Em.d.vue.ts +1 -1
  352. package/dist/runtime/components/prose/Em.vue +1 -1
  353. package/dist/runtime/components/prose/Em.vue.d.ts +1 -1
  354. package/dist/runtime/components/prose/Field.d.vue.ts +1 -1
  355. package/dist/runtime/components/prose/Field.vue +1 -1
  356. package/dist/runtime/components/prose/Field.vue.d.ts +1 -1
  357. package/dist/runtime/components/prose/FieldGroup.d.vue.ts +1 -1
  358. package/dist/runtime/components/prose/FieldGroup.vue.d.ts +1 -1
  359. package/dist/runtime/components/prose/H1.d.vue.ts +3 -1
  360. package/dist/runtime/components/prose/H1.vue +1 -1
  361. package/dist/runtime/components/prose/H1.vue.d.ts +3 -1
  362. package/dist/runtime/components/prose/H2.d.vue.ts +3 -1
  363. package/dist/runtime/components/prose/H2.vue +1 -1
  364. package/dist/runtime/components/prose/H2.vue.d.ts +3 -1
  365. package/dist/runtime/components/prose/H3.d.vue.ts +3 -1
  366. package/dist/runtime/components/prose/H3.vue +1 -1
  367. package/dist/runtime/components/prose/H3.vue.d.ts +3 -1
  368. package/dist/runtime/components/prose/H4.d.vue.ts +3 -1
  369. package/dist/runtime/components/prose/H4.vue +1 -1
  370. package/dist/runtime/components/prose/H4.vue.d.ts +3 -1
  371. package/dist/runtime/components/prose/H5.d.vue.ts +3 -1
  372. package/dist/runtime/components/prose/H5.vue +1 -1
  373. package/dist/runtime/components/prose/H5.vue.d.ts +3 -1
  374. package/dist/runtime/components/prose/H6.d.vue.ts +3 -1
  375. package/dist/runtime/components/prose/H6.vue +1 -1
  376. package/dist/runtime/components/prose/H6.vue.d.ts +3 -1
  377. package/dist/runtime/components/prose/Hr.d.vue.ts +7 -1
  378. package/dist/runtime/components/prose/Hr.vue +1 -1
  379. package/dist/runtime/components/prose/Hr.vue.d.ts +7 -1
  380. package/dist/runtime/components/prose/Img.d.vue.ts +3 -1
  381. package/dist/runtime/components/prose/Img.vue +1 -1
  382. package/dist/runtime/components/prose/Img.vue.d.ts +3 -1
  383. package/dist/runtime/components/prose/Kbd.d.vue.ts +1 -1
  384. package/dist/runtime/components/prose/Kbd.vue.d.ts +1 -1
  385. package/dist/runtime/components/prose/Li.d.vue.ts +1 -1
  386. package/dist/runtime/components/prose/Li.vue +1 -1
  387. package/dist/runtime/components/prose/Li.vue.d.ts +1 -1
  388. package/dist/runtime/components/prose/Ol.d.vue.ts +1 -1
  389. package/dist/runtime/components/prose/Ol.vue +1 -1
  390. package/dist/runtime/components/prose/Ol.vue.d.ts +1 -1
  391. package/dist/runtime/components/prose/P.d.vue.ts +4 -1
  392. package/dist/runtime/components/prose/P.vue +1 -1
  393. package/dist/runtime/components/prose/P.vue.d.ts +4 -1
  394. package/dist/runtime/components/prose/Pre.d.vue.ts +1 -1
  395. package/dist/runtime/components/prose/Pre.vue +1 -1
  396. package/dist/runtime/components/prose/Pre.vue.d.ts +1 -1
  397. package/dist/runtime/components/prose/Steps.d.vue.ts +1 -1
  398. package/dist/runtime/components/prose/Steps.vue.d.ts +1 -1
  399. package/dist/runtime/components/prose/Strong.d.vue.ts +1 -1
  400. package/dist/runtime/components/prose/Strong.vue +1 -1
  401. package/dist/runtime/components/prose/Strong.vue.d.ts +1 -1
  402. package/dist/runtime/components/prose/Table.d.vue.ts +7 -1
  403. package/dist/runtime/components/prose/Table.vue +1 -1
  404. package/dist/runtime/components/prose/Table.vue.d.ts +7 -1
  405. package/dist/runtime/components/prose/Tabs.d.vue.ts +5 -3
  406. package/dist/runtime/components/prose/Tabs.vue +1 -1
  407. package/dist/runtime/components/prose/Tabs.vue.d.ts +5 -3
  408. package/dist/runtime/components/prose/TabsItem.d.vue.ts +1 -1
  409. package/dist/runtime/components/prose/TabsItem.vue.d.ts +1 -1
  410. package/dist/runtime/components/prose/Tbody.d.vue.ts +1 -1
  411. package/dist/runtime/components/prose/Tbody.vue +1 -1
  412. package/dist/runtime/components/prose/Tbody.vue.d.ts +1 -1
  413. package/dist/runtime/components/prose/Td.d.vue.ts +2 -4
  414. package/dist/runtime/components/prose/Td.vue +5 -2
  415. package/dist/runtime/components/prose/Td.vue.d.ts +2 -4
  416. package/dist/runtime/components/prose/Th.d.vue.ts +2 -4
  417. package/dist/runtime/components/prose/Th.vue +5 -2
  418. package/dist/runtime/components/prose/Th.vue.d.ts +2 -4
  419. package/dist/runtime/components/prose/Thead.d.vue.ts +1 -1
  420. package/dist/runtime/components/prose/Thead.vue +1 -1
  421. package/dist/runtime/components/prose/Thead.vue.d.ts +1 -1
  422. package/dist/runtime/components/prose/Tr.d.vue.ts +1 -1
  423. package/dist/runtime/components/prose/Tr.vue +1 -1
  424. package/dist/runtime/components/prose/Tr.vue.d.ts +1 -1
  425. package/dist/runtime/components/prose/Ul.d.vue.ts +1 -1
  426. package/dist/runtime/components/prose/Ul.vue +1 -1
  427. package/dist/runtime/components/prose/Ul.vue.d.ts +1 -1
  428. package/dist/runtime/components/prose/callout/Caution.d.vue.ts +2 -2
  429. package/dist/runtime/components/prose/callout/Caution.vue.d.ts +2 -2
  430. package/dist/runtime/components/prose/callout/Note.d.vue.ts +2 -2
  431. package/dist/runtime/components/prose/callout/Note.vue.d.ts +2 -2
  432. package/dist/runtime/components/prose/callout/Tip.d.vue.ts +2 -2
  433. package/dist/runtime/components/prose/callout/Tip.vue.d.ts +2 -2
  434. package/dist/runtime/components/prose/callout/Warning.d.vue.ts +2 -2
  435. package/dist/runtime/components/prose/callout/Warning.vue.d.ts +2 -2
  436. package/dist/runtime/composables/defineShortcuts.js +1 -1
  437. package/dist/runtime/composables/useEditorMenu.d.ts +1 -1
  438. package/dist/runtime/composables/useEditorMenu.js +36 -9
  439. package/dist/runtime/composables/useOverlay.d.ts +3 -1
  440. package/dist/runtime/types/editor.d.ts +2 -1
  441. package/dist/runtime/types/html.d.ts +3 -1
  442. package/dist/runtime/types/index.d.ts +1 -0
  443. package/dist/runtime/types/index.js +1 -0
  444. package/dist/runtime/utils/ai.d.ts +7 -0
  445. package/dist/runtime/utils/editor.d.ts +1 -1
  446. package/dist/runtime/utils/editor.js +28 -10
  447. package/dist/runtime/utils/fuse.js +22 -3
  448. package/dist/runtime/utils/index.d.ts +1 -0
  449. package/dist/runtime/utils/index.js +2 -2
  450. package/dist/runtime/utils/overlay.d.ts +19 -0
  451. package/dist/runtime/utils/overlay.js +13 -0
  452. package/dist/runtime/utils/virtualizer.d.ts +1 -3
  453. package/dist/runtime/utils/virtualizer.js +15 -6
  454. package/dist/runtime/vue/components/color-mode/ColorModeSelect.d.vue.ts +3 -1
  455. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue +5 -1
  456. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue.d.ts +3 -1
  457. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.d.vue.ts +1 -1
  458. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue +1 -1
  459. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  460. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.d.vue.ts +8 -2
  461. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue +4 -3
  462. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue.d.ts +8 -2
  463. package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.d.vue.ts +7 -4
  464. package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue.d.ts +7 -4
  465. package/dist/runtime/vue/overrides/none/Link.d.vue.ts +79 -0
  466. package/dist/runtime/vue/overrides/none/Link.vue +136 -0
  467. package/dist/runtime/vue/overrides/none/Link.vue.d.ts +79 -0
  468. package/dist/runtime/vue/{components → overrides/vue-router}/Link.d.vue.ts +8 -2
  469. package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue +6 -6
  470. package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue.d.ts +8 -2
  471. package/dist/runtime/vue/plugins/router.d.ts +4 -0
  472. package/dist/runtime/vue/plugins/router.js +7 -0
  473. package/dist/runtime/vue/{stubs.d.ts → stubs/base.d.ts} +6 -7
  474. package/dist/runtime/vue/{stubs.js → stubs/base.js} +6 -7
  475. package/dist/runtime/vue/stubs/inertia.d.ts +5 -0
  476. package/dist/runtime/vue/stubs/inertia.js +10 -0
  477. package/dist/runtime/vue/stubs/none.d.ts +56 -0
  478. package/dist/runtime/vue/stubs/none.js +48 -0
  479. package/dist/runtime/vue/stubs/vue-router.d.ts +2 -0
  480. package/dist/runtime/vue/stubs/vue-router.js +2 -0
  481. package/dist/shared/{b24ui-nuxt.BeTQIwtu.mjs → b24ui-nuxt.DEyBXBFe.mjs} +324 -53
  482. package/dist/unplugin.d.mts +13 -0
  483. package/dist/unplugin.mjs +87 -63
  484. package/dist/vite.d.mts +2 -3
  485. package/dist/vite.mjs +1 -1
  486. package/package.json +55 -43
  487. package/dist/meta.d.mts +0 -219642
  488. package/dist/meta.mjs +0 -219642
  489. package/dist/runtime/inertia/stubs.d.ts +0 -46
  490. package/dist/runtime/inertia/stubs.js +0 -93
  491. /package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue +0 -0
@@ -1,4 +1,3 @@
1
- import type { ComponentPublicInstance } from 'vue';
2
1
  import type { PinInputRootEmits, PinInputRootProps } from 'reka-ui';
3
2
  import type { AppConfig } from '@nuxt/schema';
4
3
  import theme from '#build/b24ui/pin-input';
@@ -49,12 +48,19 @@ export type PinInputEmits<T extends PinInputType = 'text'> = PinInputRootEmits<T
49
48
  change: [event: Event];
50
49
  blur: [event: Event];
51
50
  };
52
- declare const __VLS_export: <T extends PinInputType>(__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<{
53
- props: __VLS_PrettifyLocal<PinInputProps<T> & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "blur", event: Event) => void) & ((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: [T] extends ["number"] ? number[] : string[]) => void) & ((evt: "complete", value: [T] extends ["number"] ? number[] : string[]) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
51
+ declare const _default: typeof __VLS_export;
52
+ export default _default;
53
+ declare const __VLS_export: <T extends PinInputType>(__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<{
54
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<PinInputProps<T> & {
55
+ onBlur?: ((event: Event) => any) | undefined;
56
+ onChange?: ((event: Event) => any) | undefined;
57
+ "onUpdate:modelValue"?: ((value: [T] extends ["number"] ? number[] : string[]) => any) | undefined;
58
+ onComplete?: ((value: [T] extends ["number"] ? number[] : string[]) => any) | undefined;
59
+ }> & (typeof globalThis extends {
54
60
  __VLS_PROPS_FALLBACK: infer P;
55
61
  } ? P : {});
56
62
  expose: (exposed: import("vue").ShallowUnwrapRef<{
57
- inputsRef: import("vue").Ref<ComponentPublicInstance[], ComponentPublicInstance[]>;
63
+ inputsRef: import("vue").Ref<any[], any[]>;
58
64
  }>) => void;
59
65
  attrs: any;
60
66
  slots: {};
@@ -62,8 +68,8 @@ declare const __VLS_export: <T extends PinInputType>(__VLS_props: NonNullable<Aw
62
68
  }>) => import("vue").VNode & {
63
69
  __ctx?: Awaited<typeof __VLS_setup>;
64
70
  };
65
- declare const _default: typeof __VLS_export;
66
- export default _default;
67
- type __VLS_PrettifyLocal<T> = {
71
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
72
+ [K in keyof T]: T[K];
73
+ } : {
68
74
  [K in keyof T as K]: T[K];
69
- } & {};
75
+ }) & {};
@@ -54,8 +54,13 @@ export interface PopoverSlots<M extends PopoverMode = PopoverMode> {
54
54
  content(props: SlotProps<M>): any;
55
55
  anchor(props: SlotProps<M>): any;
56
56
  }
57
- declare const __VLS_export: <M extends PopoverMode>(__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<{
58
- props: __VLS_PrettifyLocal<PopoverProps<M> & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "update:open", value: boolean) => void) & ((evt: "close:prevent") => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
57
+ declare const _default: typeof __VLS_export;
58
+ export default _default;
59
+ declare const __VLS_export: <M extends PopoverMode>(__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<{
60
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<PopoverProps<M> & {
61
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
62
+ "onClose:prevent"?: (() => any) | undefined;
63
+ }> & (typeof globalThis extends {
59
64
  __VLS_PROPS_FALLBACK: infer P;
60
65
  } ? P : {});
61
66
  expose: (exposed: {}) => void;
@@ -65,8 +70,8 @@ declare const __VLS_export: <M extends PopoverMode>(__VLS_props: NonNullable<Awa
65
70
  }>) => import("vue").VNode & {
66
71
  __ctx?: Awaited<typeof __VLS_setup>;
67
72
  };
68
- declare const _default: typeof __VLS_export;
69
- export default _default;
70
- type __VLS_PrettifyLocal<T> = {
73
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
74
+ [K in keyof T]: T[K];
75
+ } : {
71
76
  [K in keyof T as K]: T[K];
72
- } & {};
77
+ }) & {};
@@ -10,6 +10,7 @@ import { Popover, HoverCard } from "reka-ui/namespaced";
10
10
  import { reactivePick } from "@vueuse/core";
11
11
  import { useAppConfig } from "#imports";
12
12
  import { usePortal } from "../composables/usePortal";
13
+ import { pointerDownOutside } from "../utils/overlay";
13
14
  import { tv } from "../utils/tv";
14
15
  const props = defineProps({
15
16
  mode: { type: null, required: false, default: "click" },
@@ -44,7 +45,9 @@ const contentEvents = computed(() => {
44
45
  return acc;
45
46
  }, {});
46
47
  }
47
- return {};
48
+ return {
49
+ pointerDownOutside
50
+ };
48
51
  });
49
52
  const arrowProps = toRef(() => defu(typeof props.arrow === "boolean" ? {} : props.arrow, { width: 20, height: 10 }));
50
53
  const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.popover || {} })({
@@ -54,8 +54,13 @@ export interface PopoverSlots<M extends PopoverMode = PopoverMode> {
54
54
  content(props: SlotProps<M>): any;
55
55
  anchor(props: SlotProps<M>): any;
56
56
  }
57
- declare const __VLS_export: <M extends PopoverMode>(__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<{
58
- props: __VLS_PrettifyLocal<PopoverProps<M> & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "update:open", value: boolean) => void) & ((evt: "close:prevent") => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
57
+ declare const _default: typeof __VLS_export;
58
+ export default _default;
59
+ declare const __VLS_export: <M extends PopoverMode>(__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<{
60
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<PopoverProps<M> & {
61
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
62
+ "onClose:prevent"?: (() => any) | undefined;
63
+ }> & (typeof globalThis extends {
59
64
  __VLS_PROPS_FALLBACK: infer P;
60
65
  } ? P : {});
61
66
  expose: (exposed: {}) => void;
@@ -65,8 +70,8 @@ declare const __VLS_export: <M extends PopoverMode>(__VLS_props: NonNullable<Awa
65
70
  }>) => import("vue").VNode & {
66
71
  __ctx?: Awaited<typeof __VLS_setup>;
67
72
  };
68
- declare const _default: typeof __VLS_export;
69
- export default _default;
70
- type __VLS_PrettifyLocal<T> = {
73
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
74
+ [K in keyof T]: T[K];
75
+ } : {
71
76
  [K in keyof T as K]: T[K];
72
- } & {};
77
+ }) & {};
@@ -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;
@@ -19,7 +19,7 @@ const props = defineProps({
19
19
  orientation: { type: null, required: false, default: "horizontal" },
20
20
  animation: { type: null, required: false },
21
21
  class: { type: null, required: false },
22
- b24ui: { type: null, required: false },
22
+ b24ui: { type: Object, required: false },
23
23
  getValueLabel: { type: Function, required: false },
24
24
  getValueText: { type: Function, required: false },
25
25
  modelValue: { type: [Number, null], required: false, default: null }
@@ -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,8 +81,13 @@ 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, 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;
@@ -92,8 +97,8 @@ declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<
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
+ }) & {};
@@ -25,7 +25,7 @@ const props = defineProps({
25
25
  orientation: { type: null, required: false, default: "vertical" },
26
26
  indicator: { type: null, required: false },
27
27
  class: { type: null, required: false },
28
- b24ui: { type: null, required: false },
28
+ b24ui: { type: Object, required: false },
29
29
  disabled: { type: Boolean, required: false },
30
30
  loop: { type: Boolean, required: false },
31
31
  name: { type: String, required: false },
@@ -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,8 +81,13 @@ 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, 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;
@@ -92,8 +97,8 @@ declare const __VLS_export: <T extends RadioGroupItem[], VK extends GetItemKeys<
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
+ }) & {};
@@ -18,7 +18,7 @@ const props = defineProps({
18
18
  tooltip: { type: [Boolean, Object], required: false },
19
19
  defaultValue: { type: [Number, Array], required: false },
20
20
  class: { type: null, required: false },
21
- b24ui: { type: null, required: false },
21
+ b24ui: { type: Object, required: false },
22
22
  name: { type: String, required: false },
23
23
  disabled: { type: Boolean, required: false },
24
24
  inverted: { type: Boolean, required: false },
@@ -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
+ }) & {};
@@ -0,0 +1,85 @@
1
+ import type { AppConfig } from '@nuxt/schema';
2
+ import type { VirtualItem, VirtualizerOptions } from '@tanstack/vue-virtual';
3
+ import theme from '#build/b24ui/scroll-area';
4
+ import type { ComponentConfig } from '../types/tv';
5
+ type ScrollArea = ComponentConfig<typeof theme, AppConfig, 'scrollArea'>;
6
+ export interface ScrollAreaVirtualizeOptions extends Partial<Omit<VirtualizerOptions<Element, Element>, 'count' | 'getScrollElement' | 'horizontal' | 'isRtl' | 'estimateSize' | 'lanes' | 'enabled'>> {
7
+ /**
8
+ * Estimated size (in px) of each item along the scroll axis. Can be a number or a function.
9
+ * @defaultValue 100
10
+ */
11
+ estimateSize?: number | ((index: number) => number);
12
+ /**
13
+ * Number of lanes for multi-column/row layouts.
14
+ * For responsive lane counts, use a computed property with viewport/container size:
15
+ * @example
16
+ * ```ts
17
+ * const { width } = useWindowSize()
18
+ * const lanes = computed(() => Math.floor(width.value / 300))
19
+ * ```
20
+ * @defaultValue undefined
21
+ */
22
+ lanes?: number;
23
+ }
24
+ export type ScrollAreaItem = any;
25
+ export interface ScrollAreaProps<T extends ScrollAreaItem = ScrollAreaItem> {
26
+ /**
27
+ * The element or component this component should render as.
28
+ * @defaultValue 'div'
29
+ */
30
+ as?: any;
31
+ /**
32
+ * The scroll direction.
33
+ * @defaultValue 'vertical'
34
+ */
35
+ orientation?: ScrollArea['variants']['orientation'];
36
+ /**
37
+ * Array of items to render.
38
+ */
39
+ items?: T[];
40
+ /**
41
+ * Enable virtualization for large lists.
42
+ * @see https://tanstack.com/virtual/latest/docs/api/virtualizer#options
43
+ * @defaultValue false
44
+ */
45
+ virtualize?: boolean | ScrollAreaVirtualizeOptions;
46
+ class?: any;
47
+ b24ui?: ScrollArea['slots'];
48
+ }
49
+ export interface ScrollAreaSlots<T extends ScrollAreaItem = ScrollAreaItem> {
50
+ default(props: {
51
+ item: T;
52
+ index: number;
53
+ virtualItem?: VirtualItem;
54
+ } | Record<string, never>): any;
55
+ }
56
+ export interface ScrollAreaEmits {
57
+ /**
58
+ * Emitted when scroll state changes
59
+ * @param isScrolling - Whether the list is currently being scrolled
60
+ */
61
+ scroll: [isScrolling: boolean];
62
+ }
63
+ declare const _default: typeof __VLS_export;
64
+ export default _default;
65
+ 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<{
66
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<ScrollAreaProps<T> & {
67
+ onScroll?: ((isScrolling: boolean) => any) | undefined;
68
+ }> & (typeof globalThis extends {
69
+ __VLS_PROPS_FALLBACK: infer P;
70
+ } ? P : {});
71
+ expose: (exposed: import("vue").ShallowUnwrapRef<{
72
+ readonly $el: HTMLElement;
73
+ virtualizer: import("vue").Ref<import("@tanstack/vue-virtual").Virtualizer<Element, Element>, import("@tanstack/vue-virtual").Virtualizer<Element, Element>> | undefined;
74
+ }>) => void;
75
+ attrs: any;
76
+ slots: ScrollAreaSlots<T>;
77
+ emit: (evt: "scroll", isScrolling: boolean) => void;
78
+ }>) => import("vue").VNode & {
79
+ __ctx?: Awaited<typeof __VLS_setup>;
80
+ };
81
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
82
+ [K in keyof T]: T[K];
83
+ } : {
84
+ [K in keyof T as K]: T[K];
85
+ }) & {};
@@ -0,0 +1,187 @@
1
+ <script>
2
+ import theme from "#build/b24ui/scroll-area";
3
+ </script>
4
+
5
+ <script setup>
6
+ import { computed, toRef, useTemplateRef, watch } from "vue";
7
+ import { Primitive } from "reka-ui";
8
+ import { defu } from "defu";
9
+ import { useVirtualizer } from "@tanstack/vue-virtual";
10
+ import { useAppConfig } from "#imports";
11
+ import { tv } from "../utils/tv";
12
+ import { useLocale } from "../composables/useLocale";
13
+ const props = defineProps({
14
+ as: { type: null, required: false },
15
+ orientation: { type: null, required: false, default: "vertical" },
16
+ items: { type: Array, required: false },
17
+ virtualize: { type: [Boolean, Object], required: false, default: false },
18
+ class: { type: null, required: false },
19
+ b24ui: { type: Object, required: false }
20
+ });
21
+ defineSlots();
22
+ const emits = defineEmits(["scroll"]);
23
+ const { dir } = useLocale();
24
+ const appConfig = useAppConfig();
25
+ const b24ui = computed(() => tv({ extend: tv(theme), ...appConfig.b24ui?.scrollArea || {} })({
26
+ orientation: props.orientation
27
+ }));
28
+ const rootRef = useTemplateRef("rootRef");
29
+ const isRtl = computed(() => dir.value === "rtl");
30
+ const isHorizontal = computed(() => props.orientation === "horizontal");
31
+ const isVertical = computed(() => !isHorizontal.value);
32
+ const virtualizerProps = toRef(() => {
33
+ const options = typeof props.virtualize === "boolean" ? {} : props.virtualize;
34
+ return defu(options, {
35
+ estimateSize: 100,
36
+ overscan: 12,
37
+ gap: 0,
38
+ paddingStart: 0,
39
+ paddingEnd: 0,
40
+ scrollMargin: 0
41
+ });
42
+ });
43
+ const lanes = computed(() => {
44
+ const value = virtualizerProps.value.lanes;
45
+ return typeof value === "number" ? value : void 0;
46
+ });
47
+ const virtualizer = !!props.virtualize && useVirtualizer({
48
+ ...virtualizerProps.value,
49
+ get overscan() {
50
+ return virtualizerProps.value.overscan;
51
+ },
52
+ get gap() {
53
+ return virtualizerProps.value.gap;
54
+ },
55
+ get paddingStart() {
56
+ return virtualizerProps.value.paddingStart;
57
+ },
58
+ get paddingEnd() {
59
+ return virtualizerProps.value.paddingEnd;
60
+ },
61
+ get scrollMargin() {
62
+ return virtualizerProps.value.scrollMargin;
63
+ },
64
+ get lanes() {
65
+ return lanes.value;
66
+ },
67
+ get isRtl() {
68
+ return isRtl.value;
69
+ },
70
+ get count() {
71
+ return props.items?.length || 0;
72
+ },
73
+ getScrollElement: () => rootRef.value?.$el,
74
+ get horizontal() {
75
+ return isHorizontal.value;
76
+ },
77
+ estimateSize: (index) => {
78
+ const estimate = virtualizerProps.value.estimateSize;
79
+ return typeof estimate === "function" ? estimate(index) : estimate;
80
+ }
81
+ });
82
+ const virtualItems = computed(() => virtualizer ? virtualizer.value.getVirtualItems() : []);
83
+ const totalSize = computed(() => virtualizer ? virtualizer.value.getTotalSize() : 0);
84
+ const virtualViewportStyle = computed(() => ({
85
+ position: "relative",
86
+ inlineSize: isHorizontal.value ? `${totalSize.value}px` : "100%",
87
+ blockSize: isVertical.value ? `${totalSize.value}px` : "100%"
88
+ }));
89
+ function getVirtualItemStyle(virtualItem) {
90
+ const hasLanes = lanes.value !== void 0 && lanes.value > 1;
91
+ const lane = virtualItem.lane;
92
+ const gap = virtualizerProps.value.gap ?? 0;
93
+ const laneSize = hasLanes ? `calc((100% - ${(lanes.value - 1) * gap}px) / ${lanes.value})` : "100%";
94
+ const lanePosition = hasLanes && lane !== void 0 ? `calc(${lane} * ((100% - ${(lanes.value - 1) * gap}px) / ${lanes.value} + ${gap}px))` : 0;
95
+ return {
96
+ position: "absolute",
97
+ insetBlockStart: isHorizontal.value && hasLanes ? lanePosition : 0,
98
+ insetInlineStart: isVertical.value && hasLanes ? lanePosition : 0,
99
+ blockSize: isHorizontal.value ? hasLanes ? laneSize : "100%" : void 0,
100
+ inlineSize: isVertical.value ? hasLanes ? laneSize : "100%" : void 0,
101
+ transform: isHorizontal.value ? `translateX(${isRtl.value ? -virtualItem.start : virtualItem.start}px)` : `translateY(${virtualItem.start}px)`
102
+ };
103
+ }
104
+ watch(lanes, () => {
105
+ if (virtualizer) {
106
+ virtualizer.value.measure();
107
+ }
108
+ }, { flush: "sync" });
109
+ function measureElement(el) {
110
+ if (el && virtualizer) {
111
+ const element = el instanceof Element ? el : el.$el;
112
+ virtualizer.value.measureElement(element);
113
+ }
114
+ }
115
+ watch(
116
+ () => virtualizer ? virtualizer.value.isScrolling : false,
117
+ (isScrolling) => emits("scroll", isScrolling)
118
+ );
119
+ function getItemKey(item, index) {
120
+ if (virtualizerProps.value.getItemKey) {
121
+ return virtualizerProps.value.getItemKey(index);
122
+ }
123
+ if (item && typeof item === "object" && "id" in item) {
124
+ return item.id;
125
+ }
126
+ return index;
127
+ }
128
+ defineExpose({
129
+ get $el() {
130
+ return rootRef.value?.$el;
131
+ },
132
+ virtualizer: virtualizer || void 0
133
+ });
134
+ </script>
135
+
136
+ <template>
137
+ <Primitive
138
+ ref="rootRef"
139
+ :as="as"
140
+ data-slot="root"
141
+ :data-orientation="orientation"
142
+ :class="b24ui.root({ class: [props.b24ui?.root, props.class] })"
143
+ >
144
+ <template v-if="virtualizer">
145
+ <div
146
+ data-slot="viewport"
147
+ :class="b24ui.viewport({ class: props.b24ui?.viewport })"
148
+ :style="virtualViewportStyle"
149
+ >
150
+ <div
151
+ v-for="virtualItem in virtualItems"
152
+ :key="String(virtualItem.key)"
153
+ :ref="measureElement"
154
+ :data-index="virtualItem.index"
155
+ data-slot="item"
156
+ :class="b24ui.item({ class: props.b24ui?.item })"
157
+ :style="getVirtualItemStyle(virtualItem)"
158
+ >
159
+ <slot
160
+ :item="items?.[virtualItem.index]"
161
+ :index="virtualItem.index"
162
+ :virtual-item="virtualItem"
163
+ />
164
+ </div>
165
+ </div>
166
+ </template>
167
+
168
+ <template v-else>
169
+ <div data-slot="viewport" :class="b24ui.viewport({ class: props.b24ui?.viewport })">
170
+ <template v-if="items?.length">
171
+ <div
172
+ v-for="(item, index) in items"
173
+ :key="getItemKey(item, index)"
174
+ data-slot="item"
175
+ :class="b24ui.item({ class: props.b24ui?.item })"
176
+ >
177
+ <slot :item="item" :index="index" />
178
+ </div>
179
+ </template>
180
+
181
+ <template v-else>
182
+ <slot />
183
+ </template>
184
+ </div>
185
+ </template>
186
+ </Primitive>
187
+ </template>