@nuxt/ui 4.2.1 → 4.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 (312) hide show
  1. package/.nuxt/ui.css +2 -0
  2. package/README.md +2 -1
  3. package/dist/module.json +1 -1
  4. package/dist/module.mjs +2 -2
  5. package/dist/runtime/components/Accordion.d.vue.ts +3 -3
  6. package/dist/runtime/components/Accordion.vue.d.ts +3 -3
  7. package/dist/runtime/components/Alert.d.vue.ts +3 -5
  8. package/dist/runtime/components/Alert.vue.d.ts +3 -5
  9. package/dist/runtime/components/App.d.vue.ts +3 -1
  10. package/dist/runtime/components/App.vue.d.ts +3 -1
  11. package/dist/runtime/components/AuthForm.d.vue.ts +8 -46
  12. package/dist/runtime/components/AuthForm.vue.d.ts +8 -46
  13. package/dist/runtime/components/Badge.d.vue.ts +1 -3
  14. package/dist/runtime/components/Badge.vue.d.ts +1 -3
  15. package/dist/runtime/components/Banner.d.vue.ts +2 -2
  16. package/dist/runtime/components/Banner.vue.d.ts +2 -2
  17. package/dist/runtime/components/BlogPost.d.vue.ts +1 -4
  18. package/dist/runtime/components/BlogPost.vue +0 -1
  19. package/dist/runtime/components/BlogPost.vue.d.ts +1 -4
  20. package/dist/runtime/components/BlogPosts.d.vue.ts +3 -1
  21. package/dist/runtime/components/BlogPosts.vue.d.ts +3 -1
  22. package/dist/runtime/components/Breadcrumb.d.vue.ts +3 -1
  23. package/dist/runtime/components/Breadcrumb.vue.d.ts +3 -1
  24. package/dist/runtime/components/Calendar.d.vue.ts +8 -11
  25. package/dist/runtime/components/Calendar.vue.d.ts +8 -11
  26. package/dist/runtime/components/Carousel.d.vue.ts +6 -6
  27. package/dist/runtime/components/Carousel.vue +22 -0
  28. package/dist/runtime/components/Carousel.vue.d.ts +6 -6
  29. package/dist/runtime/components/ChangelogVersion.d.vue.ts +1 -4
  30. package/dist/runtime/components/ChangelogVersion.vue +0 -1
  31. package/dist/runtime/components/ChangelogVersion.vue.d.ts +1 -4
  32. package/dist/runtime/components/ChangelogVersions.d.vue.ts +3 -1
  33. package/dist/runtime/components/ChangelogVersions.vue.d.ts +3 -1
  34. package/dist/runtime/components/ChatMessage.d.vue.ts +1 -3
  35. package/dist/runtime/components/ChatMessage.vue.d.ts +1 -3
  36. package/dist/runtime/components/ChatMessages.d.vue.ts +3 -8
  37. package/dist/runtime/components/ChatMessages.vue.d.ts +3 -8
  38. package/dist/runtime/components/ChatPrompt.d.vue.ts +2 -7
  39. package/dist/runtime/components/ChatPrompt.vue.d.ts +2 -7
  40. package/dist/runtime/components/ChatPromptSubmit.d.vue.ts +3 -11
  41. package/dist/runtime/components/ChatPromptSubmit.vue +1 -20
  42. package/dist/runtime/components/ChatPromptSubmit.vue.d.ts +3 -11
  43. package/dist/runtime/components/CheckboxGroup.d.vue.ts +3 -4
  44. package/dist/runtime/components/CheckboxGroup.vue.d.ts +3 -4
  45. package/dist/runtime/components/Chip.d.vue.ts +1 -4
  46. package/dist/runtime/components/Chip.vue.d.ts +1 -4
  47. package/dist/runtime/components/Collapsible.d.vue.ts +1 -3
  48. package/dist/runtime/components/Collapsible.vue.d.ts +1 -3
  49. package/dist/runtime/components/ColorPicker.d.vue.ts +1 -5
  50. package/dist/runtime/components/ColorPicker.vue.d.ts +1 -5
  51. package/dist/runtime/components/CommandPalette.d.vue.ts +9 -14
  52. package/dist/runtime/components/CommandPalette.vue.d.ts +9 -14
  53. package/dist/runtime/components/ContextMenu.d.vue.ts +9 -5
  54. package/dist/runtime/components/ContextMenu.vue.d.ts +9 -5
  55. package/dist/runtime/components/ContextMenuContent.d.vue.ts +3 -7
  56. package/dist/runtime/components/ContextMenuContent.vue +2 -2
  57. package/dist/runtime/components/ContextMenuContent.vue.d.ts +3 -7
  58. package/dist/runtime/components/DashboardGroup.d.vue.ts +1 -6
  59. package/dist/runtime/components/DashboardGroup.vue.d.ts +1 -6
  60. package/dist/runtime/components/DashboardNavbar.d.vue.ts +3 -6
  61. package/dist/runtime/components/DashboardNavbar.vue.d.ts +3 -6
  62. package/dist/runtime/components/DashboardPanel.d.vue.ts +1 -4
  63. package/dist/runtime/components/DashboardPanel.vue.d.ts +1 -4
  64. package/dist/runtime/components/DashboardSearch.d.vue.ts +4 -9
  65. package/dist/runtime/components/DashboardSearch.vue.d.ts +4 -9
  66. package/dist/runtime/components/DashboardSearchButton.d.vue.ts +3 -8
  67. package/dist/runtime/components/DashboardSearchButton.vue +1 -20
  68. package/dist/runtime/components/DashboardSearchButton.vue.d.ts +3 -8
  69. package/dist/runtime/components/DashboardSidebar.d.vue.ts +5 -6
  70. package/dist/runtime/components/DashboardSidebar.vue.d.ts +5 -6
  71. package/dist/runtime/components/DashboardSidebarCollapse.d.vue.ts +3 -7
  72. package/dist/runtime/components/DashboardSidebarCollapse.vue +1 -20
  73. package/dist/runtime/components/DashboardSidebarCollapse.vue.d.ts +3 -7
  74. package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +3 -7
  75. package/dist/runtime/components/DashboardSidebarToggle.vue +1 -20
  76. package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +3 -7
  77. package/dist/runtime/components/Drawer.d.vue.ts +1 -8
  78. package/dist/runtime/components/Drawer.vue.d.ts +1 -8
  79. package/dist/runtime/components/DropdownMenu.d.vue.ts +9 -5
  80. package/dist/runtime/components/DropdownMenu.vue.d.ts +9 -5
  81. package/dist/runtime/components/DropdownMenuContent.d.vue.ts +3 -7
  82. package/dist/runtime/components/DropdownMenuContent.vue +2 -2
  83. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +3 -7
  84. package/dist/runtime/components/Editor.d.vue.ts +87 -0
  85. package/dist/runtime/components/Editor.vue +185 -0
  86. package/dist/runtime/components/Editor.vue.d.ts +87 -0
  87. package/dist/runtime/components/EditorDragHandle.d.vue.ts +64 -0
  88. package/dist/runtime/components/EditorDragHandle.vue +127 -0
  89. package/dist/runtime/components/EditorDragHandle.vue.d.ts +64 -0
  90. package/dist/runtime/components/EditorEmojiMenu.d.vue.ts +35 -0
  91. package/dist/runtime/components/EditorEmojiMenu.vue +70 -0
  92. package/dist/runtime/components/EditorEmojiMenu.vue.d.ts +35 -0
  93. package/dist/runtime/components/EditorMentionMenu.d.vue.ts +39 -0
  94. package/dist/runtime/components/EditorMentionMenu.vue +72 -0
  95. package/dist/runtime/components/EditorMentionMenu.vue.d.ts +39 -0
  96. package/dist/runtime/components/EditorSuggestionMenu.d.vue.ts +52 -0
  97. package/dist/runtime/components/EditorSuggestionMenu.vue +80 -0
  98. package/dist/runtime/components/EditorSuggestionMenu.vue.d.ts +52 -0
  99. package/dist/runtime/components/EditorToolbar.d.vue.ts +90 -0
  100. package/dist/runtime/components/EditorToolbar.vue +242 -0
  101. package/dist/runtime/components/EditorToolbar.vue.d.ts +90 -0
  102. package/dist/runtime/components/Error.d.vue.ts +2 -5
  103. package/dist/runtime/components/Error.vue.d.ts +2 -5
  104. package/dist/runtime/components/FieldGroup.d.vue.ts +1 -3
  105. package/dist/runtime/components/FieldGroup.vue.d.ts +1 -3
  106. package/dist/runtime/components/FileUpload.d.vue.ts +5 -6
  107. package/dist/runtime/components/FileUpload.vue.d.ts +5 -6
  108. package/dist/runtime/components/Footer.d.vue.ts +1 -3
  109. package/dist/runtime/components/Footer.vue.d.ts +1 -3
  110. package/dist/runtime/components/FooterColumns.d.vue.ts +3 -1
  111. package/dist/runtime/components/FooterColumns.vue.d.ts +3 -1
  112. package/dist/runtime/components/Form.d.vue.ts +3 -4
  113. package/dist/runtime/components/Form.vue.d.ts +3 -4
  114. package/dist/runtime/components/FormField.d.vue.ts +5 -0
  115. package/dist/runtime/components/FormField.vue +6 -5
  116. package/dist/runtime/components/FormField.vue.d.ts +5 -0
  117. package/dist/runtime/components/Header.d.vue.ts +5 -5
  118. package/dist/runtime/components/Header.vue.d.ts +5 -5
  119. package/dist/runtime/components/Input.d.vue.ts +5 -7
  120. package/dist/runtime/components/Input.vue.d.ts +5 -7
  121. package/dist/runtime/components/InputDate.d.vue.ts +4 -8
  122. package/dist/runtime/components/InputDate.vue.d.ts +4 -8
  123. package/dist/runtime/components/InputMenu.d.vue.ts +9 -15
  124. package/dist/runtime/components/InputMenu.vue +14 -1
  125. package/dist/runtime/components/InputMenu.vue.d.ts +9 -15
  126. package/dist/runtime/components/InputNumber.d.vue.ts +7 -9
  127. package/dist/runtime/components/InputNumber.vue.d.ts +7 -9
  128. package/dist/runtime/components/InputTags.d.vue.ts +4 -10
  129. package/dist/runtime/components/InputTags.vue.d.ts +4 -10
  130. package/dist/runtime/components/InputTime.d.vue.ts +3 -5
  131. package/dist/runtime/components/InputTime.vue.d.ts +3 -5
  132. package/dist/runtime/components/Kbd.d.vue.ts +1 -3
  133. package/dist/runtime/components/Kbd.vue.d.ts +1 -3
  134. package/dist/runtime/components/Link.d.vue.ts +6 -6
  135. package/dist/runtime/components/Link.vue.d.ts +6 -6
  136. package/dist/runtime/components/LinkBase.d.vue.ts +1 -4
  137. package/dist/runtime/components/LinkBase.vue.d.ts +1 -4
  138. package/dist/runtime/components/Marquee.d.vue.ts +1 -5
  139. package/dist/runtime/components/Marquee.vue.d.ts +1 -5
  140. package/dist/runtime/components/Modal.d.vue.ts +3 -10
  141. package/dist/runtime/components/Modal.vue.d.ts +3 -10
  142. package/dist/runtime/components/NavigationMenu.d.vue.ts +3 -3
  143. package/dist/runtime/components/NavigationMenu.vue.d.ts +3 -3
  144. package/dist/runtime/components/PageAnchors.d.vue.ts +3 -1
  145. package/dist/runtime/components/PageAnchors.vue.d.ts +3 -1
  146. package/dist/runtime/components/PageAside.d.vue.ts +1 -3
  147. package/dist/runtime/components/PageAside.vue.d.ts +1 -3
  148. package/dist/runtime/components/PageCTA.d.vue.ts +1 -4
  149. package/dist/runtime/components/PageCTA.vue.d.ts +1 -4
  150. package/dist/runtime/components/PageCard.d.vue.ts +1 -3
  151. package/dist/runtime/components/PageCard.vue.d.ts +1 -3
  152. package/dist/runtime/components/PageFeature.d.vue.ts +1 -3
  153. package/dist/runtime/components/PageFeature.vue +2 -2
  154. package/dist/runtime/components/PageFeature.vue.d.ts +1 -3
  155. package/dist/runtime/components/PageHero.d.vue.ts +1 -3
  156. package/dist/runtime/components/PageHero.vue.d.ts +1 -3
  157. package/dist/runtime/components/PageLinks.d.vue.ts +3 -1
  158. package/dist/runtime/components/PageLinks.vue.d.ts +3 -1
  159. package/dist/runtime/components/PageList.d.vue.ts +1 -3
  160. package/dist/runtime/components/PageList.vue.d.ts +1 -3
  161. package/dist/runtime/components/PageLogos.d.vue.ts +1 -3
  162. package/dist/runtime/components/PageLogos.vue.d.ts +1 -3
  163. package/dist/runtime/components/PageSection.d.vue.ts +1 -4
  164. package/dist/runtime/components/PageSection.vue.d.ts +1 -4
  165. package/dist/runtime/components/Pagination.d.vue.ts +1 -12
  166. package/dist/runtime/components/Pagination.vue.d.ts +1 -12
  167. package/dist/runtime/components/PinInput.d.vue.ts +4 -7
  168. package/dist/runtime/components/PinInput.vue +1 -1
  169. package/dist/runtime/components/PinInput.vue.d.ts +4 -7
  170. package/dist/runtime/components/Popover.d.vue.ts +3 -4
  171. package/dist/runtime/components/Popover.vue.d.ts +3 -4
  172. package/dist/runtime/components/PricingPlan.d.vue.ts +1 -3
  173. package/dist/runtime/components/PricingPlan.vue.d.ts +1 -3
  174. package/dist/runtime/components/PricingPlans.d.vue.ts +3 -1
  175. package/dist/runtime/components/PricingPlans.vue.d.ts +3 -1
  176. package/dist/runtime/components/PricingTable.d.vue.ts +3 -1
  177. package/dist/runtime/components/PricingTable.vue.d.ts +3 -1
  178. package/dist/runtime/components/Progress.d.vue.ts +1 -5
  179. package/dist/runtime/components/Progress.vue.d.ts +1 -5
  180. package/dist/runtime/components/RadioGroup.d.vue.ts +3 -4
  181. package/dist/runtime/components/RadioGroup.vue.d.ts +3 -4
  182. package/dist/runtime/components/ScrollArea.d.vue.ts +81 -0
  183. package/dist/runtime/components/ScrollArea.vue +187 -0
  184. package/dist/runtime/components/ScrollArea.vue.d.ts +81 -0
  185. package/dist/runtime/components/Select.d.vue.ts +6 -8
  186. package/dist/runtime/components/Select.vue +14 -1
  187. package/dist/runtime/components/Select.vue.d.ts +6 -8
  188. package/dist/runtime/components/SelectMenu.d.vue.ts +9 -14
  189. package/dist/runtime/components/SelectMenu.vue +14 -1
  190. package/dist/runtime/components/SelectMenu.vue.d.ts +9 -14
  191. package/dist/runtime/components/Separator.d.vue.ts +1 -3
  192. package/dist/runtime/components/Separator.vue.d.ts +1 -3
  193. package/dist/runtime/components/Slideover.d.vue.ts +8 -11
  194. package/dist/runtime/components/Slideover.vue +3 -1
  195. package/dist/runtime/components/Slideover.vue.d.ts +8 -11
  196. package/dist/runtime/components/Slider.d.vue.ts +3 -4
  197. package/dist/runtime/components/Slider.vue +2 -2
  198. package/dist/runtime/components/Slider.vue.d.ts +3 -4
  199. package/dist/runtime/components/Stepper.d.vue.ts +3 -5
  200. package/dist/runtime/components/Stepper.vue.d.ts +3 -5
  201. package/dist/runtime/components/Table.d.vue.ts +5 -16
  202. package/dist/runtime/components/Table.vue +55 -33
  203. package/dist/runtime/components/Table.vue.d.ts +5 -16
  204. package/dist/runtime/components/Tabs.d.vue.ts +3 -3
  205. package/dist/runtime/components/Tabs.vue.d.ts +3 -3
  206. package/dist/runtime/components/Textarea.d.vue.ts +5 -7
  207. package/dist/runtime/components/Textarea.vue.d.ts +5 -7
  208. package/dist/runtime/components/Timeline.d.vue.ts +3 -3
  209. package/dist/runtime/components/Timeline.vue.d.ts +3 -3
  210. package/dist/runtime/components/Toast.d.vue.ts +3 -7
  211. package/dist/runtime/components/Toast.vue.d.ts +3 -7
  212. package/dist/runtime/components/Toaster.d.vue.ts +1 -7
  213. package/dist/runtime/components/Toaster.vue.d.ts +1 -7
  214. package/dist/runtime/components/Tooltip.d.vue.ts +1 -3
  215. package/dist/runtime/components/Tooltip.vue.d.ts +1 -3
  216. package/dist/runtime/components/Tree.d.vue.ts +3 -4
  217. package/dist/runtime/components/Tree.vue.d.ts +3 -4
  218. package/dist/runtime/components/User.d.vue.ts +1 -3
  219. package/dist/runtime/components/User.vue +0 -1
  220. package/dist/runtime/components/User.vue.d.ts +1 -3
  221. package/dist/runtime/components/color-mode/ColorModeButton.d.vue.ts +3 -6
  222. package/dist/runtime/components/color-mode/ColorModeButton.vue +3 -22
  223. package/dist/runtime/components/color-mode/ColorModeButton.vue.d.ts +3 -6
  224. package/dist/runtime/components/color-mode/ColorModeSelect.d.vue.ts +1 -3
  225. package/dist/runtime/components/color-mode/ColorModeSelect.vue +1 -0
  226. package/dist/runtime/components/color-mode/ColorModeSelect.vue.d.ts +1 -3
  227. package/dist/runtime/components/content/ContentNavigation.d.vue.ts +3 -3
  228. package/dist/runtime/components/content/ContentNavigation.vue.d.ts +3 -3
  229. package/dist/runtime/components/content/ContentSearch.d.vue.ts +6 -6
  230. package/dist/runtime/components/content/ContentSearch.vue.d.ts +6 -6
  231. package/dist/runtime/components/content/ContentSearchButton.d.vue.ts +3 -8
  232. package/dist/runtime/components/content/ContentSearchButton.vue +1 -20
  233. package/dist/runtime/components/content/ContentSearchButton.vue.d.ts +3 -8
  234. package/dist/runtime/components/content/ContentSurround.d.vue.ts +3 -1
  235. package/dist/runtime/components/content/ContentSurround.vue.d.ts +3 -1
  236. package/dist/runtime/components/content/ContentToc.d.vue.ts +3 -4
  237. package/dist/runtime/components/content/ContentToc.vue.d.ts +3 -4
  238. package/dist/runtime/components/locale/LocaleSelect.d.vue.ts +1 -5
  239. package/dist/runtime/components/locale/LocaleSelect.vue +10 -3
  240. package/dist/runtime/components/locale/LocaleSelect.vue.d.ts +1 -5
  241. package/dist/runtime/components/prose/Accordion.d.vue.ts +1 -3
  242. package/dist/runtime/components/prose/Accordion.vue.d.ts +1 -3
  243. package/dist/runtime/components/prose/Callout.vue +0 -1
  244. package/dist/runtime/components/prose/Card.vue +0 -1
  245. package/dist/runtime/components/prose/CodeGroup.d.vue.ts +1 -3
  246. package/dist/runtime/components/prose/CodeGroup.vue.d.ts +1 -3
  247. package/dist/runtime/components/prose/CodeTree.d.vue.ts +20 -1
  248. package/dist/runtime/components/prose/CodeTree.vue +32 -8
  249. package/dist/runtime/components/prose/CodeTree.vue.d.ts +20 -1
  250. package/dist/runtime/components/prose/Img.d.vue.ts +1 -3
  251. package/dist/runtime/components/prose/Img.vue.d.ts +1 -3
  252. package/dist/runtime/components/prose/Tabs.d.vue.ts +1 -3
  253. package/dist/runtime/components/prose/Tabs.vue.d.ts +1 -3
  254. package/dist/runtime/components/prose/callout/Caution.d.vue.ts +2 -2
  255. package/dist/runtime/components/prose/callout/Caution.vue.d.ts +2 -2
  256. package/dist/runtime/components/prose/callout/Note.d.vue.ts +2 -2
  257. package/dist/runtime/components/prose/callout/Note.vue.d.ts +2 -2
  258. package/dist/runtime/components/prose/callout/Tip.d.vue.ts +2 -2
  259. package/dist/runtime/components/prose/callout/Tip.vue.d.ts +2 -2
  260. package/dist/runtime/components/prose/callout/Warning.d.vue.ts +2 -2
  261. package/dist/runtime/components/prose/callout/Warning.vue.d.ts +2 -2
  262. package/dist/runtime/composables/defineShortcuts.d.ts +2 -1
  263. package/dist/runtime/composables/defineShortcuts.js +62 -15
  264. package/dist/runtime/composables/useEditorMenu.d.ts +64 -0
  265. package/dist/runtime/composables/useEditorMenu.js +448 -0
  266. package/dist/runtime/composables/useFileUpload.d.ts +1 -2
  267. package/dist/runtime/locale/en_gb.d.ts +3 -0
  268. package/dist/runtime/locale/en_gb.js +7 -0
  269. package/dist/runtime/locale/eu.d.ts +3 -0
  270. package/dist/runtime/locale/eu.js +129 -0
  271. package/dist/runtime/locale/index.d.ts +3 -0
  272. package/dist/runtime/locale/index.js +3 -0
  273. package/dist/runtime/locale/lo.d.ts +3 -0
  274. package/dist/runtime/locale/lo.js +129 -0
  275. package/dist/runtime/types/editor.d.ts +69 -0
  276. package/dist/runtime/types/editor.js +0 -0
  277. package/dist/runtime/types/index.d.ts +8 -0
  278. package/dist/runtime/types/index.js +8 -0
  279. package/dist/runtime/utils/content.d.ts +2 -2
  280. package/dist/runtime/utils/editor.d.ts +69 -0
  281. package/dist/runtime/utils/editor.js +364 -0
  282. package/dist/runtime/utils/locale.d.ts +1 -2
  283. package/dist/runtime/vue/components/color-mode/ColorModeSelect.d.vue.ts +1 -3
  284. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue +1 -0
  285. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue.d.ts +1 -3
  286. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.d.vue.ts +2 -7
  287. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue +3 -3
  288. package/dist/runtime/{inertia/components → vue/overrides/inertia}/Link.vue.d.ts +2 -7
  289. package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.d.vue.ts +2 -5
  290. package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue.d.ts +2 -5
  291. package/dist/runtime/vue/overrides/none/Link.d.vue.ts +71 -0
  292. package/dist/runtime/vue/overrides/none/Link.vue +122 -0
  293. package/dist/runtime/vue/overrides/none/Link.vue.d.ts +71 -0
  294. package/dist/runtime/vue/{components → overrides/vue-router}/Link.d.vue.ts +2 -7
  295. package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue +4 -4
  296. package/dist/runtime/vue/{components → overrides/vue-router}/Link.vue.d.ts +2 -7
  297. package/dist/runtime/vue/{stubs.d.ts → stubs/base.d.ts} +4 -5
  298. package/dist/runtime/vue/{stubs.js → stubs/base.js} +4 -5
  299. package/dist/runtime/vue/stubs/inertia.d.ts +5 -0
  300. package/dist/runtime/vue/stubs/inertia.js +10 -0
  301. package/dist/runtime/vue/stubs/none.d.ts +56 -0
  302. package/dist/runtime/vue/stubs/none.js +48 -0
  303. package/dist/runtime/vue/stubs/vue-router.d.ts +2 -0
  304. package/dist/runtime/vue/stubs/vue-router.js +2 -0
  305. package/dist/shared/{ui.B77q-Dvh.mjs → ui.DegC4tw1.mjs} +282 -60
  306. package/dist/unplugin.d.mts +14 -0
  307. package/dist/unplugin.mjs +73 -48
  308. package/dist/vite.mjs +1 -1
  309. package/package.json +45 -31
  310. package/dist/runtime/inertia/stubs.d.ts +0 -44
  311. package/dist/runtime/inertia/stubs.js +0 -84
  312. /package/dist/runtime/{inertia/components → vue/overrides/inertia}/LinkBase.vue +0 -0
@@ -3,6 +3,7 @@ import type { AppConfig } from '@nuxt/schema';
3
3
  import theme from '#build/ui/select-menu';
4
4
  import type { UseComponentIconsProps } from '../composables/useComponentIcons';
5
5
  import type { AvatarProps, ChipProps, IconProps, InputProps } from '../types';
6
+ import type { ModelModifiers } from '../types/input';
6
7
  import type { ButtonHTMLAttributes } from '../types/html';
7
8
  import type { AcceptableValue, ArrayOrNested, GetItemKeys, GetModelValue, GetModelValueEmits, NestedItem, EmitsToProps } from '../types/utils';
8
9
  import type { ComponentConfig } from '../types/tv';
@@ -117,6 +118,7 @@ export interface SelectMenuProps<T extends ArrayOrNested<SelectMenuItem> = Array
117
118
  defaultValue?: GetModelValue<T, VK, M>;
118
119
  /** The controlled value of the SelectMenu. Can be binded-with with `v-model`. */
119
120
  modelValue?: GetModelValue<T, VK, M>;
121
+ modelModifiers?: Omit<ModelModifiers<GetModelValue<T, VK, M>>, 'lazy'>;
120
122
  /** Whether multiple options can be selected or not. */
121
123
  multiple?: M & boolean;
122
124
  /** Highlight the ring color like a focus state. */
@@ -201,25 +203,18 @@ export interface SelectMenuSlots<A extends ArrayOrNested<SelectMenuItem> = Array
201
203
  declare const __VLS_export: <T extends ArrayOrNested<SelectMenuItem>, VK extends GetItemKeys<T> | undefined = undefined, M extends boolean = false>(__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<{
202
204
  props: __VLS_PrettifyLocal<(SelectMenuProps<T, VK, M> & {
203
205
  searchTerm?: string;
204
- }) & {
205
- onChange?: ((event: Event) => any) | undefined;
206
- onBlur?: ((event: FocusEvent) => any) | undefined;
207
- onFocus?: ((event: FocusEvent) => any) | undefined;
208
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
209
- onCreate?: ((item: string) => any) | undefined;
210
- "onUpdate:modelValue"?: ((value: GetModelValue<T, VK, M>) => any) | undefined;
211
- onHighlight?: ((payload: {
212
- ref: HTMLElement;
213
- value: GetModelValue<T, VK, M>;
214
- } | undefined) => any) | undefined;
215
- "onUpdate:searchTerm"?: ((value: string) => any) | undefined;
216
- }> & import("vue").PublicProps;
206
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
207
+ ref: HTMLElement;
208
+ value: GetModelValue<T, VK, M>;
209
+ } | undefined) => void) & ((evt: "update:searchTerm", value: string) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
210
+ __VLS_PROPS_FALLBACK: infer P;
211
+ } ? P : {});
217
212
  expose: (exposed: import("vue").ShallowUnwrapRef<{
218
213
  triggerRef: Readonly<import("vue").Ref<HTMLButtonElement, HTMLButtonElement>>;
219
214
  }>) => void;
220
215
  attrs: any;
221
216
  slots: SelectMenuSlots<T, VK, M, NestedItem<T>>;
222
- emit: (((evt: "change", event: Event) => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
217
+ emit: (((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
223
218
  ref: HTMLElement;
224
219
  value: GetModelValue<T, VK, M>;
225
220
  } | undefined) => void)) & ((evt: "update:searchTerm", value: string) => void);
@@ -13,7 +13,7 @@ import { useComponentIcons } from "../composables/useComponentIcons";
13
13
  import { useFormField } from "../composables/useFormField";
14
14
  import { useLocale } from "../composables/useLocale";
15
15
  import { usePortal } from "../composables/usePortal";
16
- import { compare, get, getDisplayValue, isArrayOfArray } from "../utils";
16
+ import { compare, get, getDisplayValue, isArrayOfArray, looseToNumber } from "../utils";
17
17
  import { getEstimateSize } from "../utils/virtualizer";
18
18
  import { tv } from "../utils/tv";
19
19
  import UIcon from "./Icon.vue";
@@ -41,6 +41,7 @@ const props = defineProps({
41
41
  items: { type: null, required: false },
42
42
  defaultValue: { type: null, required: false },
43
43
  modelValue: { type: null, required: false },
44
+ modelModifiers: { type: Object, required: false },
44
45
  multiple: { type: Boolean, required: false },
45
46
  highlight: { type: Boolean, required: false },
46
47
  createItem: { type: [Boolean, String, Object], required: false },
@@ -179,6 +180,18 @@ function onUpdate(value) {
179
180
  if (toRaw(props.modelValue) === value) {
180
181
  return;
181
182
  }
183
+ if (props.modelModifiers?.trim) {
184
+ value = value?.trim() ?? null;
185
+ }
186
+ if (props.modelModifiers?.number) {
187
+ value = looseToNumber(value);
188
+ }
189
+ if (props.modelModifiers?.nullable) {
190
+ value ??= null;
191
+ }
192
+ if (props.modelModifiers?.optional) {
193
+ value ??= void 0;
194
+ }
182
195
  const event = new Event("change", { target: { value } });
183
196
  emits("change", event);
184
197
  emitFormChange();
@@ -3,6 +3,7 @@ import type { AppConfig } from '@nuxt/schema';
3
3
  import theme from '#build/ui/select-menu';
4
4
  import type { UseComponentIconsProps } from '../composables/useComponentIcons';
5
5
  import type { AvatarProps, ChipProps, IconProps, InputProps } from '../types';
6
+ import type { ModelModifiers } from '../types/input';
6
7
  import type { ButtonHTMLAttributes } from '../types/html';
7
8
  import type { AcceptableValue, ArrayOrNested, GetItemKeys, GetModelValue, GetModelValueEmits, NestedItem, EmitsToProps } from '../types/utils';
8
9
  import type { ComponentConfig } from '../types/tv';
@@ -117,6 +118,7 @@ export interface SelectMenuProps<T extends ArrayOrNested<SelectMenuItem> = Array
117
118
  defaultValue?: GetModelValue<T, VK, M>;
118
119
  /** The controlled value of the SelectMenu. Can be binded-with with `v-model`. */
119
120
  modelValue?: GetModelValue<T, VK, M>;
121
+ modelModifiers?: Omit<ModelModifiers<GetModelValue<T, VK, M>>, 'lazy'>;
120
122
  /** Whether multiple options can be selected or not. */
121
123
  multiple?: M & boolean;
122
124
  /** Highlight the ring color like a focus state. */
@@ -201,25 +203,18 @@ export interface SelectMenuSlots<A extends ArrayOrNested<SelectMenuItem> = Array
201
203
  declare const __VLS_export: <T extends ArrayOrNested<SelectMenuItem>, VK extends GetItemKeys<T> | undefined = undefined, M extends boolean = false>(__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<{
202
204
  props: __VLS_PrettifyLocal<(SelectMenuProps<T, VK, M> & {
203
205
  searchTerm?: string;
204
- }) & {
205
- onChange?: ((event: Event) => any) | undefined;
206
- onBlur?: ((event: FocusEvent) => any) | undefined;
207
- onFocus?: ((event: FocusEvent) => any) | undefined;
208
- "onUpdate:open"?: ((value: boolean) => any) | undefined;
209
- onCreate?: ((item: string) => any) | undefined;
210
- "onUpdate:modelValue"?: ((value: GetModelValue<T, VK, M>) => any) | undefined;
211
- onHighlight?: ((payload: {
212
- ref: HTMLElement;
213
- value: GetModelValue<T, VK, M>;
214
- } | undefined) => any) | undefined;
215
- "onUpdate:searchTerm"?: ((value: string) => any) | undefined;
216
- }> & import("vue").PublicProps;
206
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
207
+ ref: HTMLElement;
208
+ value: GetModelValue<T, VK, M>;
209
+ } | undefined) => void) & ((evt: "update:searchTerm", value: string) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
210
+ __VLS_PROPS_FALLBACK: infer P;
211
+ } ? P : {});
217
212
  expose: (exposed: import("vue").ShallowUnwrapRef<{
218
213
  triggerRef: Readonly<import("vue").Ref<HTMLButtonElement, HTMLButtonElement>>;
219
214
  }>) => void;
220
215
  attrs: any;
221
216
  slots: SelectMenuSlots<T, VK, M, NestedItem<T>>;
222
- emit: (((evt: "change", event: Event) => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
217
+ emit: (((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
223
218
  ref: HTMLElement;
224
219
  value: GetModelValue<T, VK, M>;
225
220
  } | undefined) => void)) & ((evt: "update:searchTerm", value: string) => void);
@@ -45,9 +45,7 @@ export interface SeparatorSlots {
45
45
  ui: Separator['ui'];
46
46
  }): any;
47
47
  }
48
- declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<SeparatorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {
49
- orientation: "horizontal" | "vertical";
50
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SeparatorSlots>;
48
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<SeparatorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SeparatorSlots>;
51
49
  declare const _default: typeof __VLS_export;
52
50
  export default _default;
53
51
  type __VLS_WithSlots<T, S> = T & {
@@ -45,9 +45,7 @@ export interface SeparatorSlots {
45
45
  ui: Separator['ui'];
46
46
  }): any;
47
47
  }
48
- declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<SeparatorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {
49
- orientation: "horizontal" | "vertical";
50
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SeparatorSlots>;
48
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<SeparatorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SeparatorSlots>;
51
49
  declare const _default: typeof __VLS_export;
52
50
  export default _default;
53
51
  type __VLS_WithSlots<T, S> = T & {
@@ -1,7 +1,7 @@
1
1
  import type { DialogRootProps, DialogRootEmits, DialogContentProps, DialogContentEmits } from 'reka-ui';
2
2
  import type { AppConfig } from '@nuxt/schema';
3
3
  import theme from '#build/ui/slideover';
4
- import type { ButtonProps, IconProps } from '../types';
4
+ import type { ButtonProps, IconProps, LinkPropsKeys } from '../types';
5
5
  import type { EmitsToProps } from '../types/utils';
6
6
  import type { ComponentConfig } from '../types/tv';
7
7
  type Slideover = ComponentConfig<typeof theme, AppConfig, 'slideover'>;
@@ -25,6 +25,11 @@ export interface SlideoverProps extends DialogRootProps {
25
25
  * @defaultValue 'right'
26
26
  */
27
27
  side?: Slideover['variants']['side'];
28
+ /**
29
+ * Whether to inset the slideover from the edges.
30
+ * @defaultValue false
31
+ */
32
+ inset?: boolean;
28
33
  /**
29
34
  * Render the slideover in a portal.
30
35
  * @defaultValue true
@@ -35,7 +40,7 @@ export interface SlideoverProps extends DialogRootProps {
35
40
  * `{ size: 'md', color: 'neutral', variant: 'ghost' }`{lang="ts-type"}
36
41
  * @defaultValue true
37
42
  */
38
- close?: boolean | Partial<ButtonProps>;
43
+ close?: boolean | Omit<ButtonProps, LinkPropsKeys>;
39
44
  /**
40
45
  * The icon displayed in the close button.
41
46
  * @defaultValue appConfig.ui.icons.close
@@ -88,15 +93,7 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<Slideo
88
93
  "onAfter:leave"?: (() => any) | undefined;
89
94
  "onAfter:enter"?: (() => any) | undefined;
90
95
  "onClose:prevent"?: (() => any) | undefined;
91
- }>, {
92
- overlay: boolean;
93
- close: boolean | Partial<ButtonProps>;
94
- transition: boolean;
95
- modal: boolean;
96
- portal: boolean | string | HTMLElement;
97
- side: Slideover["variants"]["side"];
98
- dismissible: boolean;
99
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SlideoverSlots>;
96
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SlideoverSlots>;
100
97
  declare const _default: typeof __VLS_export;
101
98
  export default _default;
102
99
  type __VLS_WithSlots<T, S> = T & {
@@ -18,6 +18,7 @@ const props = defineProps({
18
18
  overlay: { type: Boolean, required: false, default: true },
19
19
  transition: { type: Boolean, required: false, default: true },
20
20
  side: { type: null, required: false, default: "right" },
21
+ inset: { type: Boolean, required: false },
21
22
  portal: { type: [Boolean, String], required: false, skipCheck: true, default: true },
22
23
  close: { type: [Boolean, Object], required: false, default: true },
23
24
  closeIcon: { type: null, required: false },
@@ -50,7 +51,8 @@ const contentEvents = computed(() => {
50
51
  });
51
52
  const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.slideover || {} })({
52
53
  transition: props.transition,
53
- side: props.side
54
+ side: props.side,
55
+ inset: props.inset
54
56
  }));
55
57
  </script>
56
58
 
@@ -1,7 +1,7 @@
1
1
  import type { DialogRootProps, DialogRootEmits, DialogContentProps, DialogContentEmits } from 'reka-ui';
2
2
  import type { AppConfig } from '@nuxt/schema';
3
3
  import theme from '#build/ui/slideover';
4
- import type { ButtonProps, IconProps } from '../types';
4
+ import type { ButtonProps, IconProps, LinkPropsKeys } from '../types';
5
5
  import type { EmitsToProps } from '../types/utils';
6
6
  import type { ComponentConfig } from '../types/tv';
7
7
  type Slideover = ComponentConfig<typeof theme, AppConfig, 'slideover'>;
@@ -25,6 +25,11 @@ export interface SlideoverProps extends DialogRootProps {
25
25
  * @defaultValue 'right'
26
26
  */
27
27
  side?: Slideover['variants']['side'];
28
+ /**
29
+ * Whether to inset the slideover from the edges.
30
+ * @defaultValue false
31
+ */
32
+ inset?: boolean;
28
33
  /**
29
34
  * Render the slideover in a portal.
30
35
  * @defaultValue true
@@ -35,7 +40,7 @@ export interface SlideoverProps extends DialogRootProps {
35
40
  * `{ size: 'md', color: 'neutral', variant: 'ghost' }`{lang="ts-type"}
36
41
  * @defaultValue true
37
42
  */
38
- close?: boolean | Partial<ButtonProps>;
43
+ close?: boolean | Omit<ButtonProps, LinkPropsKeys>;
39
44
  /**
40
45
  * The icon displayed in the close button.
41
46
  * @defaultValue appConfig.ui.icons.close
@@ -88,15 +93,7 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<Slideo
88
93
  "onAfter:leave"?: (() => any) | undefined;
89
94
  "onAfter:enter"?: (() => any) | undefined;
90
95
  "onClose:prevent"?: (() => any) | undefined;
91
- }>, {
92
- overlay: boolean;
93
- close: boolean | Partial<ButtonProps>;
94
- transition: boolean;
95
- modal: boolean;
96
- portal: boolean | string | HTMLElement;
97
- side: Slideover["variants"]["side"];
98
- dismissible: boolean;
99
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SlideoverSlots>;
96
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SlideoverSlots>;
100
97
  declare const _default: typeof __VLS_export;
101
98
  export default _default;
102
99
  type __VLS_WithSlots<T, S> = T & {
@@ -40,10 +40,9 @@ export interface SliderEmits {
40
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
41
  props: __VLS_PrettifyLocal<(SliderProps & {
42
42
  modelValue?: T;
43
- }) & {
44
- onChange?: ((event: Event) => any) | undefined;
45
- "onUpdate:modelValue"?: ((value: T | undefined) => any) | undefined;
46
- }> & import("vue").PublicProps;
43
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
44
+ __VLS_PROPS_FALLBACK: infer P;
45
+ } ? P : {});
47
46
  expose: (exposed: {}) => void;
48
47
  attrs: any;
49
48
  slots: {};
@@ -87,9 +87,9 @@ function onChange(value) {
87
87
  disable-closing-trigger
88
88
  v-bind="typeof tooltip === 'object' ? tooltip : {}"
89
89
  >
90
- <SliderThumb data-slot="thumb" :class="ui.thumb({ class: props.ui?.thumb })" />
90
+ <SliderThumb data-slot="thumb" :class="ui.thumb({ class: props.ui?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
91
91
  </UTooltip>
92
- <SliderThumb v-else data-slot="thumb" :class="ui.thumb({ class: props.ui?.thumb })" />
92
+ <SliderThumb v-else data-slot="thumb" :class="ui.thumb({ class: props.ui?.thumb })" :aria-label="thumbs === 1 ? 'Thumb' : `Thumb ${thumb} of ${thumbs}`" />
93
93
  </template>
94
94
  </SliderRoot>
95
95
  </template>
@@ -40,10 +40,9 @@ export interface SliderEmits {
40
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
41
  props: __VLS_PrettifyLocal<(SliderProps & {
42
42
  modelValue?: T;
43
- }) & {
44
- onChange?: ((event: Event) => any) | undefined;
45
- "onUpdate:modelValue"?: ((value: T | undefined) => any) | undefined;
46
- }> & import("vue").PublicProps;
43
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "change", event: Event) => void) & ((evt: "update:modelValue", value: T | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
44
+ __VLS_PROPS_FALLBACK: infer P;
45
+ } ? P : {});
47
46
  expose: (exposed: {}) => void;
48
47
  attrs: any;
49
48
  slots: {};
@@ -67,11 +67,9 @@ export type StepperSlots<T extends StepperItem = StepperItem> = {
67
67
  declare const __VLS_export: <T extends StepperItem>(__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<{
68
68
  props: __VLS_PrettifyLocal<(StepperProps<T> & {
69
69
  modelValue?: string | number;
70
- }) & {
71
- onNext?: ((value: T) => any) | undefined;
72
- onPrev?: ((value: T) => any) | undefined;
73
- "onUpdate:modelValue"?: ((value: string | number | undefined) => any) | undefined;
74
- }> & import("vue").PublicProps;
70
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "next", value: T) => void) & ((evt: "prev", value: T) => void) & ((evt: "update:modelValue", value: string | number | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
71
+ __VLS_PROPS_FALLBACK: infer P;
72
+ } ? P : {});
75
73
  expose: (exposed: import("vue").ShallowUnwrapRef<{
76
74
  next(): void;
77
75
  prev(): void;
@@ -67,11 +67,9 @@ export type StepperSlots<T extends StepperItem = StepperItem> = {
67
67
  declare const __VLS_export: <T extends StepperItem>(__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<{
68
68
  props: __VLS_PrettifyLocal<(StepperProps<T> & {
69
69
  modelValue?: string | number;
70
- }) & {
71
- onNext?: ((value: T) => any) | undefined;
72
- onPrev?: ((value: T) => any) | undefined;
73
- "onUpdate:modelValue"?: ((value: string | number | undefined) => any) | undefined;
74
- }> & import("vue").PublicProps;
70
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "next", value: T) => void) & ((evt: "prev", value: T) => void) & ((evt: "update:modelValue", value: string | number | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
71
+ __VLS_PROPS_FALLBACK: infer P;
72
+ } ? P : {});
75
73
  expose: (exposed: import("vue").ShallowUnwrapRef<{
76
74
  next(): void;
77
75
  prev(): void;
@@ -54,6 +54,7 @@ export interface TableProps<T extends TableData = TableData> extends TableOption
54
54
  /**
55
55
  * Enable virtualization for large datasets.
56
56
  * Note: when enabled, the divider between rows and sticky properties are not supported.
57
+ * @see https://tanstack.com/virtual/latest/docs/api/virtualizer#options
57
58
  * @defaultValue false
58
59
  */
59
60
  virtualize?: boolean | (Partial<Omit<VirtualizerOptions<Element, Element>, 'getScrollElement' | 'count' | 'estimateSize' | 'overscan'>> & {
@@ -190,21 +191,9 @@ declare const __VLS_export: <T extends TableData>(__VLS_props: NonNullable<Await
190
191
  grouping?: GroupingState;
191
192
  expanded?: ExpandedState;
192
193
  pagination?: PaginationState;
193
- }) & {
194
- "onUpdate:globalFilter"?: ((value: string) => any) | undefined;
195
- "onUpdate:columnFilters"?: ((value: ColumnFiltersState) => any) | undefined;
196
- "onUpdate:columnOrder"?: ((value: ColumnOrderState) => any) | undefined;
197
- "onUpdate:columnVisibility"?: ((value: VisibilityState) => any) | undefined;
198
- "onUpdate:columnPinning"?: ((value: ColumnPinningState) => any) | undefined;
199
- "onUpdate:columnSizing"?: ((value: ColumnSizingState) => any) | undefined;
200
- "onUpdate:columnSizingInfo"?: ((value: ColumnSizingInfoState) => any) | undefined;
201
- "onUpdate:rowSelection"?: ((value: RowSelectionState) => any) | undefined;
202
- "onUpdate:rowPinning"?: ((value: RowPinningState) => any) | undefined;
203
- "onUpdate:sorting"?: ((value: SortingState) => any) | undefined;
204
- "onUpdate:grouping"?: ((value: GroupingState) => any) | undefined;
205
- "onUpdate:expanded"?: ((value: ExpandedState) => any) | undefined;
206
- "onUpdate:pagination"?: ((value: PaginationState) => any) | undefined;
207
- }> & import("vue").PublicProps;
194
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "update:globalFilter", value: string | undefined) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState | undefined) => void) & ((evt: "update:columnOrder", value: ColumnOrderState | undefined) => void) & ((evt: "update:columnVisibility", value: VisibilityState | undefined) => void) & ((evt: "update:columnPinning", value: ColumnPinningState | undefined) => void) & ((evt: "update:columnSizing", value: ColumnSizingState | undefined) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState | undefined) => void) & ((evt: "update:rowSelection", value: RowSelectionState | undefined) => void) & ((evt: "update:rowPinning", value: RowPinningState | undefined) => void) & ((evt: "update:sorting", value: SortingState | undefined) => void) & ((evt: "update:grouping", value: GroupingState | undefined) => void) & ((evt: "update:expanded", value: ExpandedState | undefined) => void) & ((evt: "update:pagination", value: PaginationState | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
195
+ __VLS_PROPS_FALLBACK: infer P;
196
+ } ? P : {});
208
197
  expose: (exposed: import("vue").ShallowUnwrapRef<{
209
198
  readonly $el: HTMLElement;
210
199
  tableRef: Readonly<import("vue").ShallowRef<HTMLTableElement | null>>;
@@ -212,7 +201,7 @@ declare const __VLS_export: <T extends TableData>(__VLS_props: NonNullable<Await
212
201
  }>) => void;
213
202
  attrs: any;
214
203
  slots: TableSlots<T>;
215
- emit: ((evt: "update:globalFilter", value: string) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState) => void) & ((evt: "update:columnOrder", value: ColumnOrderState) => void) & ((evt: "update:columnVisibility", value: VisibilityState) => void) & ((evt: "update:columnPinning", value: ColumnPinningState) => void) & ((evt: "update:columnSizing", value: ColumnSizingState) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState) => void) & ((evt: "update:rowSelection", value: RowSelectionState) => void) & ((evt: "update:rowPinning", value: RowPinningState) => void) & ((evt: "update:sorting", value: SortingState) => void) & ((evt: "update:grouping", value: GroupingState) => void) & ((evt: "update:expanded", value: ExpandedState) => void) & ((evt: "update:pagination", value: PaginationState) => void);
204
+ emit: ((evt: "update:globalFilter", value: string | undefined) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState | undefined) => void) & ((evt: "update:columnOrder", value: ColumnOrderState | undefined) => void) & ((evt: "update:columnVisibility", value: VisibilityState | undefined) => void) & ((evt: "update:columnPinning", value: ColumnPinningState | undefined) => void) & ((evt: "update:columnSizing", value: ColumnSizingState | undefined) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState | undefined) => void) & ((evt: "update:rowSelection", value: RowSelectionState | undefined) => void) & ((evt: "update:rowPinning", value: RowPinningState | undefined) => void) & ((evt: "update:sorting", value: SortingState | undefined) => void) & ((evt: "update:grouping", value: GroupingState | undefined) => void) & ((evt: "update:expanded", value: ExpandedState | undefined) => void) & ((evt: "update:pagination", value: PaginationState | undefined) => void);
216
205
  }>) => import("vue").VNode & {
217
206
  __ctx?: Awaited<typeof __VLS_setup>;
218
207
  };
@@ -4,12 +4,12 @@ import theme from "#build/ui/table";
4
4
 
5
5
  <script setup>
6
6
  import { ref, computed, useTemplateRef, watch, toRef } from "vue";
7
- import { Primitive } from "reka-ui";
7
+ import { Primitive, useForwardProps } from "reka-ui";
8
8
  import { upperFirst } from "scule";
9
9
  import { defu } from "defu";
10
10
  import { FlexRender, getCoreRowModel, getFilteredRowModel, getSortedRowModel, getExpandedRowModel, useVueTable } from "@tanstack/vue-table";
11
11
  import { useVirtualizer } from "@tanstack/vue-virtual";
12
- import { reactiveOmit, createReusableTemplate } from "@vueuse/core";
12
+ import { reactivePick, createReusableTemplate } from "@vueuse/core";
13
13
  import { useAppConfig } from "#imports";
14
14
  import { useLocale } from "../composables/useLocale";
15
15
  import { tv } from "../utils/tv";
@@ -121,56 +121,59 @@ const hasFooter = computed(() => {
121
121
  }
122
122
  return hasFooterRecursive(columns.value);
123
123
  });
124
- const globalFilterState = defineModel("globalFilter", { type: String, ...{ default: void 0 } });
125
- const columnFiltersState = defineModel("columnFilters", { type: Array, ...{ default: [] } });
126
- const columnOrderState = defineModel("columnOrder", { type: Array, ...{ default: [] } });
127
- const columnVisibilityState = defineModel("columnVisibility", { type: Object, ...{ default: {} } });
128
- const columnPinningState = defineModel("columnPinning", { type: Object, ...{ default: {} } });
129
- const columnSizingState = defineModel("columnSizing", { type: Object, ...{ default: {} } });
130
- const columnSizingInfoState = defineModel("columnSizingInfo", { type: Object, ...{ default: {} } });
131
- const rowSelectionState = defineModel("rowSelection", { type: Object, ...{ default: {} } });
132
- const rowPinningState = defineModel("rowPinning", { type: Object, ...{ default: {} } });
133
- const sortingState = defineModel("sorting", { type: Array, ...{ default: [] } });
134
- const groupingState = defineModel("grouping", { type: Array, ...{ default: [] } });
135
- const expandedState = defineModel("expanded", { type: [Boolean, Object], ...{ default: {} } });
136
- const paginationState = defineModel("pagination", { type: Object, ...{ default: {} } });
124
+ const globalFilterState = defineModel("globalFilter", { type: String });
125
+ const columnFiltersState = defineModel("columnFilters", { type: Array });
126
+ const columnOrderState = defineModel("columnOrder", { type: Array });
127
+ const columnVisibilityState = defineModel("columnVisibility", { type: Object });
128
+ const columnPinningState = defineModel("columnPinning", { type: Object });
129
+ const columnSizingState = defineModel("columnSizing", { type: Object });
130
+ const columnSizingInfoState = defineModel("columnSizingInfo", { type: Object });
131
+ const rowSelectionState = defineModel("rowSelection", { type: Object });
132
+ const rowPinningState = defineModel("rowPinning", { type: Object });
133
+ const sortingState = defineModel("sorting", { type: Array });
134
+ const groupingState = defineModel("grouping", { type: Array });
135
+ const expandedState = defineModel("expanded", { type: [Boolean, Object] });
136
+ const paginationState = defineModel("pagination", { type: Object });
137
137
  const rootRef = useTemplateRef("rootRef");
138
138
  const tableRef = useTemplateRef("tableRef");
139
+ const tableProps = useForwardProps(reactivePick(props, "_features", "autoResetAll", "debugAll", "debugCells", "debugColumns", "debugHeaders", "debugRows", "debugTable", "defaultColumn", "getRowId", "getSubRows", "initialState", "mergeOptions", "renderFallbackValue"));
139
140
  const tableApi = useVueTable({
140
- ...reactiveOmit(props, "as", "data", "columns", "virtualize", "caption", "sticky", "loading", "loadingColor", "loadingAnimation", "class", "ui"),
141
- data,
141
+ ...tableProps.value,
142
+ get data() {
143
+ return data.value;
144
+ },
142
145
  get columns() {
143
146
  return columns.value;
144
147
  },
145
148
  meta: meta.value,
146
149
  getCoreRowModel: getCoreRowModel(),
147
150
  ...props.globalFilterOptions || {},
148
- onGlobalFilterChange: (updaterOrValue) => valueUpdater(updaterOrValue, globalFilterState),
151
+ ...globalFilterState.value !== void 0 && { onGlobalFilterChange: (updaterOrValue) => valueUpdater(updaterOrValue, globalFilterState) },
149
152
  ...props.columnFiltersOptions || {},
150
153
  getFilteredRowModel: getFilteredRowModel(),
151
- onColumnFiltersChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnFiltersState),
152
- onColumnOrderChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnOrderState),
154
+ ...columnFiltersState.value !== void 0 && { onColumnFiltersChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnFiltersState) },
155
+ ...columnOrderState.value !== void 0 && { onColumnOrderChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnOrderState) },
153
156
  ...props.visibilityOptions || {},
154
- onColumnVisibilityChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnVisibilityState),
157
+ ...columnVisibilityState.value !== void 0 && { onColumnVisibilityChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnVisibilityState) },
155
158
  ...props.columnPinningOptions || {},
156
- onColumnPinningChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnPinningState),
159
+ ...columnPinningState.value !== void 0 && { onColumnPinningChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnPinningState) },
157
160
  ...props.columnSizingOptions || {},
158
- onColumnSizingChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnSizingState),
159
- onColumnSizingInfoChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnSizingInfoState),
161
+ ...columnSizingState.value !== void 0 && { onColumnSizingChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnSizingState) },
162
+ ...columnSizingInfoState.value !== void 0 && { onColumnSizingInfoChange: (updaterOrValue) => valueUpdater(updaterOrValue, columnSizingInfoState) },
160
163
  ...props.rowSelectionOptions || {},
161
- onRowSelectionChange: (updaterOrValue) => valueUpdater(updaterOrValue, rowSelectionState),
164
+ ...rowSelectionState.value !== void 0 && { onRowSelectionChange: (updaterOrValue) => valueUpdater(updaterOrValue, rowSelectionState) },
162
165
  ...props.rowPinningOptions || {},
163
- onRowPinningChange: (updaterOrValue) => valueUpdater(updaterOrValue, rowPinningState),
166
+ ...rowPinningState.value !== void 0 && { onRowPinningChange: (updaterOrValue) => valueUpdater(updaterOrValue, rowPinningState) },
164
167
  ...props.sortingOptions || {},
165
168
  getSortedRowModel: getSortedRowModel(),
166
- onSortingChange: (updaterOrValue) => valueUpdater(updaterOrValue, sortingState),
169
+ ...sortingState.value !== void 0 && { onSortingChange: (updaterOrValue) => valueUpdater(updaterOrValue, sortingState) },
167
170
  ...props.groupingOptions || {},
168
- onGroupingChange: (updaterOrValue) => valueUpdater(updaterOrValue, groupingState),
171
+ ...groupingState.value !== void 0 && { onGroupingChange: (updaterOrValue) => valueUpdater(updaterOrValue, groupingState) },
169
172
  ...props.expandedOptions || {},
170
173
  getExpandedRowModel: getExpandedRowModel(),
171
- onExpandedChange: (updaterOrValue) => valueUpdater(updaterOrValue, expandedState),
174
+ ...expandedState.value !== void 0 && { onExpandedChange: (updaterOrValue) => valueUpdater(updaterOrValue, expandedState) },
172
175
  ...props.paginationOptions || {},
173
- onPaginationChange: (updaterOrValue) => valueUpdater(updaterOrValue, paginationState),
176
+ ...paginationState.value !== void 0 && { onPaginationChange: (updaterOrValue) => valueUpdater(updaterOrValue, paginationState) },
174
177
  ...props.facetedOptions || {},
175
178
  state: {
176
179
  get globalFilter() {
@@ -278,6 +281,16 @@ function resolveValue(prop, arg) {
278
281
  }
279
282
  return prop;
280
283
  }
284
+ function getColumnStyles(column) {
285
+ const styles = {};
286
+ const pinned = column.getIsPinned();
287
+ if (pinned === "left") {
288
+ styles.left = `${column.getStart("left")}px`;
289
+ } else if (pinned === "right") {
290
+ styles.right = `${column.getAfter("right")}px`;
291
+ }
292
+ return styles;
293
+ }
281
294
  watch(() => props.data, () => {
282
295
  data.value = props.data ? [...props.data] : [];
283
296
  }, props.watchOptions);
@@ -325,7 +338,10 @@ defineExpose({
325
338
  ],
326
339
  pinned: !!cell.column.getIsPinned()
327
340
  })"
328
- :style="resolveValue(cell.column.columnDef.meta?.style?.td, cell)"
341
+ :style="[
342
+ getColumnStyles(cell.column),
343
+ resolveValue(cell.column.columnDef.meta?.style?.td, cell)
344
+ ]"
329
345
  >
330
346
  <slot :name="`${cell.column.id}-cell`" v-bind="cell.getContext()">
331
347
  <FlexRender :render="cell.column.columnDef.cell" :props="cell.getContext()" />
@@ -365,7 +381,10 @@ defineExpose({
365
381
  ],
366
382
  pinned: !!header.column.getIsPinned()
367
383
  })"
368
- :style="resolveValue(header.column.columnDef.meta?.style?.th, header)"
384
+ :style="[
385
+ getColumnStyles(header.column),
386
+ resolveValue(header.column.columnDef.meta?.style?.th, header)
387
+ ]"
369
388
  >
370
389
  <slot :name="`${header.id}-header`" v-bind="header.getContext()">
371
390
  <FlexRender v-if="!header.isPlaceholder" :render="header.column.columnDef.header" :props="header.getContext()" />
@@ -439,7 +458,10 @@ defineExpose({
439
458
  ],
440
459
  pinned: !!header.column.getIsPinned()
441
460
  })"
442
- :style="resolveValue(header.column.columnDef.meta?.style?.th, header)"
461
+ :style="[
462
+ getColumnStyles(header.column),
463
+ resolveValue(header.column.columnDef.meta?.style?.th, header)
464
+ ]"
443
465
  >
444
466
  <slot :name="`${header.id}-footer`" v-bind="header.getContext()">
445
467
  <FlexRender v-if="!header.isPlaceholder" :render="header.column.columnDef.footer" :props="header.getContext()" />
@@ -54,6 +54,7 @@ export interface TableProps<T extends TableData = TableData> extends TableOption
54
54
  /**
55
55
  * Enable virtualization for large datasets.
56
56
  * Note: when enabled, the divider between rows and sticky properties are not supported.
57
+ * @see https://tanstack.com/virtual/latest/docs/api/virtualizer#options
57
58
  * @defaultValue false
58
59
  */
59
60
  virtualize?: boolean | (Partial<Omit<VirtualizerOptions<Element, Element>, 'getScrollElement' | 'count' | 'estimateSize' | 'overscan'>> & {
@@ -190,21 +191,9 @@ declare const __VLS_export: <T extends TableData>(__VLS_props: NonNullable<Await
190
191
  grouping?: GroupingState;
191
192
  expanded?: ExpandedState;
192
193
  pagination?: PaginationState;
193
- }) & {
194
- "onUpdate:globalFilter"?: ((value: string) => any) | undefined;
195
- "onUpdate:columnFilters"?: ((value: ColumnFiltersState) => any) | undefined;
196
- "onUpdate:columnOrder"?: ((value: ColumnOrderState) => any) | undefined;
197
- "onUpdate:columnVisibility"?: ((value: VisibilityState) => any) | undefined;
198
- "onUpdate:columnPinning"?: ((value: ColumnPinningState) => any) | undefined;
199
- "onUpdate:columnSizing"?: ((value: ColumnSizingState) => any) | undefined;
200
- "onUpdate:columnSizingInfo"?: ((value: ColumnSizingInfoState) => any) | undefined;
201
- "onUpdate:rowSelection"?: ((value: RowSelectionState) => any) | undefined;
202
- "onUpdate:rowPinning"?: ((value: RowPinningState) => any) | undefined;
203
- "onUpdate:sorting"?: ((value: SortingState) => any) | undefined;
204
- "onUpdate:grouping"?: ((value: GroupingState) => any) | undefined;
205
- "onUpdate:expanded"?: ((value: ExpandedState) => any) | undefined;
206
- "onUpdate:pagination"?: ((value: PaginationState) => any) | undefined;
207
- }> & import("vue").PublicProps;
194
+ }) & __VLS_EmitsToProps<__VLS_NormalizeEmits<((evt: "update:globalFilter", value: string | undefined) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState | undefined) => void) & ((evt: "update:columnOrder", value: ColumnOrderState | undefined) => void) & ((evt: "update:columnVisibility", value: VisibilityState | undefined) => void) & ((evt: "update:columnPinning", value: ColumnPinningState | undefined) => void) & ((evt: "update:columnSizing", value: ColumnSizingState | undefined) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState | undefined) => void) & ((evt: "update:rowSelection", value: RowSelectionState | undefined) => void) & ((evt: "update:rowPinning", value: RowPinningState | undefined) => void) & ((evt: "update:sorting", value: SortingState | undefined) => void) & ((evt: "update:grouping", value: GroupingState | undefined) => void) & ((evt: "update:expanded", value: ExpandedState | undefined) => void) & ((evt: "update:pagination", value: PaginationState | undefined) => void)>>> & import("vue").PublicProps & (typeof globalThis extends {
195
+ __VLS_PROPS_FALLBACK: infer P;
196
+ } ? P : {});
208
197
  expose: (exposed: import("vue").ShallowUnwrapRef<{
209
198
  readonly $el: HTMLElement;
210
199
  tableRef: Readonly<import("vue").ShallowRef<HTMLTableElement | null>>;
@@ -212,7 +201,7 @@ declare const __VLS_export: <T extends TableData>(__VLS_props: NonNullable<Await
212
201
  }>) => void;
213
202
  attrs: any;
214
203
  slots: TableSlots<T>;
215
- emit: ((evt: "update:globalFilter", value: string) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState) => void) & ((evt: "update:columnOrder", value: ColumnOrderState) => void) & ((evt: "update:columnVisibility", value: VisibilityState) => void) & ((evt: "update:columnPinning", value: ColumnPinningState) => void) & ((evt: "update:columnSizing", value: ColumnSizingState) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState) => void) & ((evt: "update:rowSelection", value: RowSelectionState) => void) & ((evt: "update:rowPinning", value: RowPinningState) => void) & ((evt: "update:sorting", value: SortingState) => void) & ((evt: "update:grouping", value: GroupingState) => void) & ((evt: "update:expanded", value: ExpandedState) => void) & ((evt: "update:pagination", value: PaginationState) => void);
204
+ emit: ((evt: "update:globalFilter", value: string | undefined) => void) & ((evt: "update:columnFilters", value: ColumnFiltersState | undefined) => void) & ((evt: "update:columnOrder", value: ColumnOrderState | undefined) => void) & ((evt: "update:columnVisibility", value: VisibilityState | undefined) => void) & ((evt: "update:columnPinning", value: ColumnPinningState | undefined) => void) & ((evt: "update:columnSizing", value: ColumnSizingState | undefined) => void) & ((evt: "update:columnSizingInfo", value: ColumnSizingInfoState | undefined) => void) & ((evt: "update:rowSelection", value: RowSelectionState | undefined) => void) & ((evt: "update:rowPinning", value: RowPinningState | undefined) => void) & ((evt: "update:sorting", value: SortingState | undefined) => void) & ((evt: "update:grouping", value: GroupingState | undefined) => void) & ((evt: "update:expanded", value: ExpandedState | undefined) => void) & ((evt: "update:pagination", value: PaginationState | undefined) => void);
216
205
  }>) => import("vue").VNode & {
217
206
  __ctx?: Awaited<typeof __VLS_setup>;
218
207
  };