@eslamdevui/ui 3.3.1 → 3.3.2-beta.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 (287) hide show
  1. package/.nuxt/ui/button.ts +42 -42
  2. package/.nuxt/ui/command-palette.ts +2 -1
  3. package/.nuxt/ui/file-upload.ts +295 -0
  4. package/.nuxt/ui/index.ts +2 -0
  5. package/.nuxt/ui/kbd.ts +167 -3
  6. package/.nuxt/ui/scroll-to-section.ts +3 -0
  7. package/.nuxt/ui/table.ts +14 -0
  8. package/.nuxt/ui/tabs.ts +4 -2
  9. package/.nuxt/ui/toast.ts +8 -15
  10. package/.nuxt/ui/tooltip.ts +1 -1
  11. package/cli/templates.mjs +4 -3
  12. package/dist/module.d.mts +15 -1
  13. package/dist/module.json +2 -2
  14. package/dist/module.mjs +3 -3
  15. package/dist/runtime/components/Accordion.vue.d.ts +1 -1
  16. package/dist/runtime/components/Alert.vue.d.ts +2 -2
  17. package/dist/runtime/components/App.vue.d.ts +1 -1
  18. package/dist/runtime/components/Avatar.vue.d.ts +1 -1
  19. package/dist/runtime/components/AvatarGroup.vue.d.ts +1 -1
  20. package/dist/runtime/components/Badge.vue.d.ts +1 -1
  21. package/dist/runtime/components/Banner.vue.d.ts +1 -5
  22. package/dist/runtime/components/BlogPost.vue.d.ts +1 -1
  23. package/dist/runtime/components/BlogPosts.vue.d.ts +1 -1
  24. package/dist/runtime/components/Breadcrumb.vue.d.ts +1 -1
  25. package/dist/runtime/components/Button.vue +6 -6
  26. package/dist/runtime/components/Button.vue.d.ts +1 -5
  27. package/dist/runtime/components/ButtonGroup.vue.d.ts +1 -1
  28. package/dist/runtime/components/Calendar.vue.d.ts +1 -1
  29. package/dist/runtime/components/Card.vue.d.ts +1 -1
  30. package/dist/runtime/components/Carousel.vue +18 -14
  31. package/dist/runtime/components/Carousel.vue.d.ts +1 -1
  32. package/dist/runtime/components/ChangelogVersion.vue.d.ts +1 -1
  33. package/dist/runtime/components/ChangelogVersions.vue.d.ts +1 -1
  34. package/dist/runtime/components/ChatMessage.vue.d.ts +4 -8
  35. package/dist/runtime/components/ChatMessages.vue.d.ts +1 -1
  36. package/dist/runtime/components/ChatPalette.vue.d.ts +1 -1
  37. package/dist/runtime/components/ChatPrompt.vue.d.ts +1 -1
  38. package/dist/runtime/components/ChatPromptSubmit.vue.d.ts +1 -1
  39. package/dist/runtime/components/Checkbox.vue.d.ts +1 -1
  40. package/dist/runtime/components/CheckboxGroup.vue.d.ts +1 -1
  41. package/dist/runtime/components/Chip.vue.d.ts +2 -2
  42. package/dist/runtime/components/Collapsible.vue.d.ts +1 -1
  43. package/dist/runtime/components/ColorPicker.vue +1 -2
  44. package/dist/runtime/components/ColorPicker.vue.d.ts +1 -1
  45. package/dist/runtime/components/CommandPalette.vue +4 -0
  46. package/dist/runtime/components/CommandPalette.vue.d.ts +9 -4
  47. package/dist/runtime/components/Container.vue.d.ts +1 -1
  48. package/dist/runtime/components/ContextMenu.vue.d.ts +1 -1
  49. package/dist/runtime/components/ContextMenuContent.vue.d.ts +1 -1
  50. package/dist/runtime/components/DashboardGroup.vue.d.ts +1 -1
  51. package/dist/runtime/components/DashboardNavbar.vue.d.ts +1 -1
  52. package/dist/runtime/components/DashboardPanel.vue.d.ts +1 -1
  53. package/dist/runtime/components/DashboardResizeHandle.vue.d.ts +1 -1
  54. package/dist/runtime/components/DashboardSearchButton.vue.d.ts +1 -1
  55. package/dist/runtime/components/DashboardSidebar.vue.d.ts +1 -1
  56. package/dist/runtime/components/DashboardSidebarCollapse.vue.d.ts +1 -1
  57. package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +1 -1
  58. package/dist/runtime/components/DashboardToolbar.vue.d.ts +1 -1
  59. package/dist/runtime/components/Drawer.vue +4 -4
  60. package/dist/runtime/components/Drawer.vue.d.ts +6 -1
  61. package/dist/runtime/components/DropdownMenu.vue.d.ts +1 -1
  62. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +8 -5
  63. package/dist/runtime/components/Error.vue.d.ts +1 -1
  64. package/dist/runtime/components/FileUpload.vue +242 -0
  65. package/dist/runtime/components/FileUpload.vue.d.ts +167 -0
  66. package/dist/runtime/components/Footer.vue.d.ts +1 -1
  67. package/dist/runtime/components/FooterColumns.vue.d.ts +1 -1
  68. package/dist/runtime/components/Form.vue.d.ts +5 -4
  69. package/dist/runtime/components/FormField.vue +2 -2
  70. package/dist/runtime/components/FormField.vue.d.ts +4 -4
  71. package/dist/runtime/components/Header.vue.d.ts +1 -1
  72. package/dist/runtime/components/Icon.vue.d.ts +1 -1
  73. package/dist/runtime/components/Input.vue +10 -7
  74. package/dist/runtime/components/Input.vue.d.ts +9 -9
  75. package/dist/runtime/components/InputMenu.vue +17 -10
  76. package/dist/runtime/components/InputMenu.vue.d.ts +17 -14
  77. package/dist/runtime/components/InputNumber.vue.d.ts +4 -4
  78. package/dist/runtime/components/InputTags.vue +2 -0
  79. package/dist/runtime/components/InputTags.vue.d.ts +5 -3
  80. package/dist/runtime/components/Kbd.vue +2 -1
  81. package/dist/runtime/components/Kbd.vue.d.ts +5 -1
  82. package/dist/runtime/components/Link.vue +6 -5
  83. package/dist/runtime/components/Link.vue.d.ts +1 -3
  84. package/dist/runtime/components/LinkBase.vue.d.ts +1 -1
  85. package/dist/runtime/components/Main.vue.d.ts +1 -1
  86. package/dist/runtime/components/Modal.vue.d.ts +2 -2
  87. package/dist/runtime/components/NavigationMenu.vue +3 -2
  88. package/dist/runtime/components/NavigationMenu.vue.d.ts +1 -1
  89. package/dist/runtime/components/OverlayProvider.vue.d.ts +1 -1
  90. package/dist/runtime/components/Page.vue.d.ts +1 -1
  91. package/dist/runtime/components/PageAccordion.vue.d.ts +1 -1
  92. package/dist/runtime/components/PageAnchors.vue.d.ts +1 -1
  93. package/dist/runtime/components/PageAside.vue.d.ts +1 -1
  94. package/dist/runtime/components/PageBody.vue.d.ts +1 -1
  95. package/dist/runtime/components/PageCTA.vue.d.ts +1 -1
  96. package/dist/runtime/components/PageCard.vue.d.ts +1 -1
  97. package/dist/runtime/components/PageColumns.vue.d.ts +1 -1
  98. package/dist/runtime/components/PageFeature.vue.d.ts +1 -1
  99. package/dist/runtime/components/PageGrid.vue.d.ts +1 -1
  100. package/dist/runtime/components/PageHeader.vue.d.ts +1 -1
  101. package/dist/runtime/components/PageHero.vue.d.ts +1 -1
  102. package/dist/runtime/components/PageLinks.vue.d.ts +1 -1
  103. package/dist/runtime/components/PageList.vue.d.ts +1 -1
  104. package/dist/runtime/components/PageLogos.vue.d.ts +1 -1
  105. package/dist/runtime/components/PageMarquee.vue.d.ts +1 -1
  106. package/dist/runtime/components/PageSection.vue.d.ts +1 -1
  107. package/dist/runtime/components/Pagination.vue.d.ts +1 -1
  108. package/dist/runtime/components/PinInput.vue.d.ts +1 -1
  109. package/dist/runtime/components/Popover.vue +2 -1
  110. package/dist/runtime/components/Popover.vue.d.ts +8 -2
  111. package/dist/runtime/components/PricingPlan.vue.d.ts +1 -1
  112. package/dist/runtime/components/PricingPlans.vue.d.ts +1 -1
  113. package/dist/runtime/components/PricingTable.vue +14 -2
  114. package/dist/runtime/components/PricingTable.vue.d.ts +1 -1
  115. package/dist/runtime/components/Progress.vue.d.ts +1 -1
  116. package/dist/runtime/components/RadioGroup.vue +1 -1
  117. package/dist/runtime/components/RadioGroup.vue.d.ts +5 -4
  118. package/dist/runtime/components/ScrollToSection.vue +62 -0
  119. package/dist/runtime/components/ScrollToSection.vue.d.ts +36 -0
  120. package/dist/runtime/components/Select.vue.d.ts +1 -1
  121. package/dist/runtime/components/SelectMenu.vue +9 -6
  122. package/dist/runtime/components/SelectMenu.vue.d.ts +4 -4
  123. package/dist/runtime/components/Separator.vue.d.ts +1 -1
  124. package/dist/runtime/components/Skeleton.vue.d.ts +1 -1
  125. package/dist/runtime/components/Slideover.vue.d.ts +2 -2
  126. package/dist/runtime/components/Slider.vue.d.ts +5 -5
  127. package/dist/runtime/components/Stepper.vue.d.ts +1 -1
  128. package/dist/runtime/components/Switch.vue.d.ts +1 -1
  129. package/dist/runtime/components/Table.vue +83 -8
  130. package/dist/runtime/components/Table.vue.d.ts +20 -4
  131. package/dist/runtime/components/Tabs.vue +36 -16
  132. package/dist/runtime/components/Tabs.vue.d.ts +8 -3
  133. package/dist/runtime/components/Textarea.vue +10 -7
  134. package/dist/runtime/components/Textarea.vue.d.ts +10 -9
  135. package/dist/runtime/components/Timeline.vue.d.ts +1 -1
  136. package/dist/runtime/components/Toast.vue +12 -4
  137. package/dist/runtime/components/Toast.vue.d.ts +14 -13
  138. package/dist/runtime/components/Toaster.vue.d.ts +1 -1
  139. package/dist/runtime/components/Tooltip.vue +2 -1
  140. package/dist/runtime/components/Tooltip.vue.d.ts +8 -2
  141. package/dist/runtime/components/Tree.vue +3 -2
  142. package/dist/runtime/components/Tree.vue.d.ts +1 -1
  143. package/dist/runtime/components/User.vue.d.ts +1 -1
  144. package/dist/runtime/components/color-mode/ColorModeAvatar.vue.d.ts +1 -1
  145. package/dist/runtime/components/color-mode/ColorModeButton.vue.d.ts +1 -1
  146. package/dist/runtime/components/color-mode/ColorModeImage.vue.d.ts +1 -1
  147. package/dist/runtime/components/color-mode/ColorModeSelect.vue +1 -1
  148. package/dist/runtime/components/color-mode/ColorModeSelect.vue.d.ts +1 -1
  149. package/dist/runtime/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  150. package/dist/runtime/components/content/ContentNavigation.vue.d.ts +1 -1
  151. package/dist/runtime/components/content/ContentSearch.vue +1 -2
  152. package/dist/runtime/components/content/ContentSearchButton.vue.d.ts +1 -1
  153. package/dist/runtime/components/content/ContentSurround.vue.d.ts +1 -1
  154. package/dist/runtime/components/content/ContentToc.vue.d.ts +1 -1
  155. package/dist/runtime/components/locale/LocaleSelect.vue.d.ts +1 -1
  156. package/dist/runtime/components/prose/A.vue.d.ts +1 -1
  157. package/dist/runtime/components/prose/Accordion.vue.d.ts +1 -1
  158. package/dist/runtime/components/prose/AccordionItem.vue.d.ts +1 -1
  159. package/dist/runtime/components/prose/Badge.vue.d.ts +1 -1
  160. package/dist/runtime/components/prose/Blockquote.vue.d.ts +1 -1
  161. package/dist/runtime/components/prose/Callout.vue.d.ts +1 -1
  162. package/dist/runtime/components/prose/Card.vue.d.ts +1 -1
  163. package/dist/runtime/components/prose/CardGroup.vue.d.ts +1 -1
  164. package/dist/runtime/components/prose/Code.vue.d.ts +1 -1
  165. package/dist/runtime/components/prose/CodeCollapse.vue.d.ts +1 -1
  166. package/dist/runtime/components/prose/CodeGroup.vue.d.ts +1 -1
  167. package/dist/runtime/components/prose/CodeIcon.vue.d.ts +1 -1
  168. package/dist/runtime/components/prose/CodePreview.vue.d.ts +1 -1
  169. package/dist/runtime/components/prose/CodeTree.vue.d.ts +1 -1
  170. package/dist/runtime/components/prose/Collapsible.vue.d.ts +1 -1
  171. package/dist/runtime/components/prose/Em.vue.d.ts +1 -1
  172. package/dist/runtime/components/prose/Field.vue.d.ts +1 -1
  173. package/dist/runtime/components/prose/FieldGroup.vue.d.ts +1 -1
  174. package/dist/runtime/components/prose/H1.vue.d.ts +1 -1
  175. package/dist/runtime/components/prose/H2.vue.d.ts +1 -1
  176. package/dist/runtime/components/prose/H3.vue.d.ts +1 -1
  177. package/dist/runtime/components/prose/H4.vue.d.ts +1 -1
  178. package/dist/runtime/components/prose/Hr.vue.d.ts +1 -1
  179. package/dist/runtime/components/prose/Icon.vue.d.ts +1 -1
  180. package/dist/runtime/components/prose/Img.vue.d.ts +1 -1
  181. package/dist/runtime/components/prose/Kbd.vue.d.ts +1 -1
  182. package/dist/runtime/components/prose/Li.vue.d.ts +1 -1
  183. package/dist/runtime/components/prose/Ol.vue.d.ts +1 -1
  184. package/dist/runtime/components/prose/P.vue.d.ts +1 -1
  185. package/dist/runtime/components/prose/Pre.vue.d.ts +1 -1
  186. package/dist/runtime/components/prose/Script.vue.d.ts +1 -1
  187. package/dist/runtime/components/prose/Steps.vue.d.ts +1 -1
  188. package/dist/runtime/components/prose/Strong.vue.d.ts +1 -1
  189. package/dist/runtime/components/prose/Table.vue.d.ts +1 -1
  190. package/dist/runtime/components/prose/Tabs.vue.d.ts +1 -1
  191. package/dist/runtime/components/prose/TabsItem.vue.d.ts +1 -1
  192. package/dist/runtime/components/prose/Tbody.vue.d.ts +1 -1
  193. package/dist/runtime/components/prose/Td.vue.d.ts +1 -1
  194. package/dist/runtime/components/prose/Th.vue.d.ts +1 -1
  195. package/dist/runtime/components/prose/Thead.vue.d.ts +1 -1
  196. package/dist/runtime/components/prose/Tr.vue.d.ts +1 -1
  197. package/dist/runtime/components/prose/Ul.vue.d.ts +1 -1
  198. package/dist/runtime/components/prose/callout/Caution.vue.d.ts +3 -3
  199. package/dist/runtime/components/prose/callout/Note.vue.d.ts +3 -3
  200. package/dist/runtime/components/prose/callout/Tip.vue.d.ts +3 -3
  201. package/dist/runtime/components/prose/callout/Warning.vue.d.ts +3 -3
  202. package/dist/runtime/composables/defineShortcuts.js +5 -3
  203. package/dist/runtime/composables/useFileUpload.d.ts +19 -0
  204. package/dist/runtime/composables/useFileUpload.js +63 -0
  205. package/dist/runtime/composables/useFormField.d.ts +1 -4
  206. package/dist/runtime/composables/useFormField.js +5 -2
  207. package/dist/runtime/composables/useKbd.d.ts +1 -1
  208. package/dist/runtime/composables/useLocale.js +2 -2
  209. package/dist/runtime/composables/useOverlay.d.ts +28 -1
  210. package/dist/runtime/composables/useOverlay.js +4 -4
  211. package/dist/runtime/inertia/components/Link.vue.d.ts +1 -1
  212. package/dist/runtime/inertia/components/LinkBase.vue.d.ts +1 -1
  213. package/dist/runtime/inertia/stubs.d.ts +1 -0
  214. package/dist/runtime/inertia/stubs.js +4 -2
  215. package/dist/runtime/locale/ar.js +2 -1
  216. package/dist/runtime/locale/az.js +1 -0
  217. package/dist/runtime/locale/bg.js +1 -0
  218. package/dist/runtime/locale/bn.js +1 -0
  219. package/dist/runtime/locale/ca.js +1 -0
  220. package/dist/runtime/locale/ckb.js +2 -1
  221. package/dist/runtime/locale/cs.js +1 -0
  222. package/dist/runtime/locale/da.js +1 -0
  223. package/dist/runtime/locale/de.js +1 -0
  224. package/dist/runtime/locale/el.js +1 -0
  225. package/dist/runtime/locale/en.js +1 -0
  226. package/dist/runtime/locale/es.js +1 -0
  227. package/dist/runtime/locale/et.js +1 -0
  228. package/dist/runtime/locale/fa_ir.js +1 -0
  229. package/dist/runtime/locale/fi.js +1 -0
  230. package/dist/runtime/locale/fr.js +1 -0
  231. package/dist/runtime/locale/he.js +1 -0
  232. package/dist/runtime/locale/hi.js +2 -1
  233. package/dist/runtime/locale/hu.js +1 -0
  234. package/dist/runtime/locale/hy.js +1 -0
  235. package/dist/runtime/locale/id.js +1 -0
  236. package/dist/runtime/locale/it.js +1 -0
  237. package/dist/runtime/locale/ja.js +1 -0
  238. package/dist/runtime/locale/kk.js +1 -0
  239. package/dist/runtime/locale/km.js +2 -1
  240. package/dist/runtime/locale/ko.js +1 -0
  241. package/dist/runtime/locale/ky.js +1 -0
  242. package/dist/runtime/locale/lb.js +1 -0
  243. package/dist/runtime/locale/lt.js +1 -0
  244. package/dist/runtime/locale/mn.js +1 -0
  245. package/dist/runtime/locale/ms.js +1 -0
  246. package/dist/runtime/locale/nb_no.js +1 -0
  247. package/dist/runtime/locale/nl.js +1 -0
  248. package/dist/runtime/locale/pl.js +1 -0
  249. package/dist/runtime/locale/pt.js +1 -0
  250. package/dist/runtime/locale/pt_br.js +1 -0
  251. package/dist/runtime/locale/ro.js +1 -0
  252. package/dist/runtime/locale/ru.js +1 -0
  253. package/dist/runtime/locale/sk.js +1 -0
  254. package/dist/runtime/locale/sl.js +1 -0
  255. package/dist/runtime/locale/sv.js +1 -0
  256. package/dist/runtime/locale/th.js +1 -0
  257. package/dist/runtime/locale/tj.js +1 -0
  258. package/dist/runtime/locale/tr.js +1 -0
  259. package/dist/runtime/locale/ug_cn.js +1 -0
  260. package/dist/runtime/locale/uk.js +1 -0
  261. package/dist/runtime/locale/ur.js +1 -0
  262. package/dist/runtime/locale/uz.js +1 -0
  263. package/dist/runtime/locale/vi.js +1 -0
  264. package/dist/runtime/locale/zh_cn.js +1 -0
  265. package/dist/runtime/locale/zh_tw.js +1 -0
  266. package/dist/runtime/types/index.d.ts +2 -0
  267. package/dist/runtime/types/index.js +2 -0
  268. package/dist/runtime/types/locale.d.ts +1 -0
  269. package/dist/runtime/utils/content.d.ts +18 -6
  270. package/dist/runtime/utils/content.js +51 -25
  271. package/dist/runtime/utils/index.d.ts +1 -0
  272. package/dist/runtime/utils/index.js +9 -0
  273. package/dist/runtime/vue/components/Icon.vue.d.ts +1 -1
  274. package/dist/runtime/vue/components/Link.vue.d.ts +1 -1
  275. package/dist/runtime/vue/components/color-mode/ColorModeButton.vue.d.ts +1 -1
  276. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue +1 -1
  277. package/dist/runtime/vue/components/color-mode/ColorModeSelect.vue.d.ts +1 -1
  278. package/dist/runtime/vue/components/color-mode/ColorModeSwitch.vue.d.ts +1 -1
  279. package/dist/runtime/vue/stubs.d.ts +1 -0
  280. package/dist/runtime/vue/stubs.js +3 -1
  281. package/dist/shared/{ui.i6pGHFq6.mjs → ui.CgUuvRXi.mjs} +282 -29
  282. package/dist/unplugin.d.mts +2 -1
  283. package/dist/unplugin.mjs +6 -3
  284. package/dist/vite.mjs +1 -1
  285. package/package.json +57 -41
  286. package/dist/runtime/composables/useQuerySection.d.ts +0 -14
  287. package/dist/runtime/composables/useQuerySection.js +0 -44
@@ -3,7 +3,7 @@ import theme from "#build/ui/input-menu";
3
3
  </script>
4
4
 
5
5
  <script setup>
6
- import { computed, ref, toRef, onMounted, toRaw } from "vue";
6
+ import { computed, ref, toRef, onMounted, toRaw, nextTick } from "vue";
7
7
  import { ComboboxRoot, ComboboxArrow, ComboboxAnchor, ComboboxInput, ComboboxTrigger, ComboboxPortal, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxLabel, ComboboxSeparator, ComboboxItem, ComboboxItemIndicator, TagsInputRoot, TagsInputItem, TagsInputItemText, TagsInputItemDelete, TagsInputInput, useForwardPropsEmits, useFilter } from "reka-ui";
8
8
  import { defu } from "defu";
9
9
  import { isEqual } from "ohash/utils";
@@ -64,7 +64,7 @@ const props = defineProps({
64
64
  loading: { type: Boolean, required: false },
65
65
  loadingIcon: { type: String, required: false }
66
66
  });
67
- const emits = defineEmits(["update:open", "change", "blur", "focus", "create", "highlight", "update:modelValue"]);
67
+ const emits = defineEmits(["update:open", "change", "blur", "focus", "create", "highlight", "remove-tag", "update:modelValue"]);
68
68
  const slots = defineSlots();
69
69
  const searchTerm = defineModel("searchTerm", { type: String, ...{ default: "" } });
70
70
  const { t } = useLocale();
@@ -91,10 +91,7 @@ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.inputMenu ||
91
91
  buttonGroup: orientation.value
92
92
  }));
93
93
  function displayValue(value) {
94
- if (!props.valueKey) {
95
- return value && (typeof value === "object" ? get(value, props.labelKey) : value);
96
- }
97
- const item = items.value.find((item2) => compare(typeof item2 === "object" ? get(item2, props.valueKey) : item2, value));
94
+ const item = items.value.find((item2) => compare(typeof item2 === "object" && props.valueKey ? get(item2, props.valueKey) : item2, value));
98
95
  return item && (typeof item === "object" ? get(item, props.labelKey) : item);
99
96
  }
100
97
  const groups = computed(
@@ -106,14 +103,20 @@ const filteredGroups = computed(() => {
106
103
  return groups.value;
107
104
  }
108
105
  const fields = Array.isArray(props.filterFields) ? props.filterFields : [props.labelKey];
109
- return groups.value.map((group) => group.filter((item) => {
110
- if (typeof item !== "object" || item === null) {
106
+ return groups.value.map((items2) => items2.filter((item) => {
107
+ if (item === void 0 || item === null) {
108
+ return false;
109
+ }
110
+ if (typeof item !== "object") {
111
111
  return contains(String(item), searchTerm.value);
112
112
  }
113
113
  if (item.type && ["label", "separator"].includes(item.type)) {
114
114
  return true;
115
115
  }
116
- return fields.some((field) => contains(get(item, field), searchTerm.value));
116
+ return fields.some((field) => {
117
+ const value = get(item, field);
118
+ return value !== void 0 && value !== null && contains(String(value), searchTerm.value);
119
+ });
117
120
  })).filter((group) => group.filter(
118
121
  (item) => !isInputItem(item) || (!item.type || !["label", "separator"].includes(item.type))
119
122
  ).length > 0);
@@ -137,6 +140,9 @@ function autoFocus() {
137
140
  }
138
141
  }
139
142
  onMounted(() => {
143
+ nextTick(() => {
144
+ searchTerm.value = "";
145
+ });
140
146
  setTimeout(() => {
141
147
  autoFocus();
142
148
  }, props.autofocusDelay);
@@ -185,6 +191,7 @@ function onRemoveTag(event) {
185
191
  const modelValue = props.modelValue;
186
192
  const filteredValue = modelValue.filter((value) => !isEqual(value, event));
187
193
  emits("update:modelValue", filteredValue);
194
+ emits("remove-tag", event);
188
195
  onUpdate(filteredValue);
189
196
  }
190
197
  }
@@ -252,7 +259,7 @@ defineExpose({
252
259
  <TagsInputItem v-for="(item, index) in tags" :key="index" :value="item" :class="ui.tagsItem({ class: [props.ui?.tagsItem, isInputItem(item) && item.ui?.tagsItem] })">
253
260
  <TagsInputItemText :class="ui.tagsItemText({ class: [props.ui?.tagsItemText, isInputItem(item) && item.ui?.tagsItemText] })">
254
261
  <slot name="tags-item-text" :item="item" :index="index">
255
- {{ displayValue(item) }}
262
+ {{ displayValue(item) ?? item }}
256
263
  </slot>
257
264
  </TagsInputItemText>
258
265
 
@@ -1,3 +1,4 @@
1
+ import { nextTick } from 'vue';
1
2
  import type { InputHTMLAttributes } from 'vue';
2
3
  import type { ComboboxRootProps, ComboboxRootEmits, ComboboxContentProps, ComboboxContentEmits, ComboboxArrowProps } from 'reka-ui';
3
4
  import type { AppConfig } from '@nuxt/schema';
@@ -126,17 +127,18 @@ export interface InputMenuProps<T extends ArrayOrNested<InputMenuItem> = ArrayOr
126
127
  ui?: InputMenu['slots'];
127
128
  }
128
129
  export type InputMenuEmits<A extends ArrayOrNested<InputMenuItem>, VK extends GetItemKeys<A> | undefined, M extends boolean> = Pick<ComboboxRootEmits, 'update:open'> & {
129
- change: [payload: Event];
130
- blur: [payload: FocusEvent];
131
- focus: [payload: FocusEvent];
132
- create: [item: string];
130
+ 'change': [payload: Event];
131
+ 'blur': [payload: FocusEvent];
132
+ 'focus': [payload: FocusEvent];
133
+ 'create': [item: string];
133
134
  /** Event handler when highlighted element changes. */
134
- highlight: [
135
+ 'highlight': [
135
136
  payload: {
136
137
  ref: HTMLElement;
137
138
  value: GetModelValue<A, VK, M>;
138
139
  } | undefined
139
140
  ];
141
+ 'remove-tag': [item: GetModelValue<A, VK, M>];
140
142
  } & GetModelValueEmits<A, VK, M>;
141
143
  type SlotProps<T extends InputMenuItem> = (props: {
142
144
  item: T;
@@ -179,13 +181,14 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
179
181
  readonly onFocus?: ((payload: FocusEvent) => any) | undefined;
180
182
  readonly onCreate?: ((item: string) => any) | undefined;
181
183
  readonly "onUpdate:open"?: ((value: boolean) => any) | undefined;
184
+ readonly "onUpdate:modelValue"?: ((payload: GetModelValue<T, VK, M>) => any) | undefined;
182
185
  readonly onHighlight?: ((payload: {
183
186
  ref: HTMLElement;
184
187
  value: GetModelValue<T, VK, M>;
185
188
  } | undefined) => any) | undefined;
186
- readonly "onUpdate:modelValue"?: ((payload: GetModelValue<T, VK, M>) => any) | undefined;
187
189
  readonly "onUpdate:searchTerm"?: ((value: string) => any) | undefined;
188
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onFocus" | "onBlur" | "onChange" | "onUpdate:open" | "onUpdate:modelValue" | "onHighlight" | "onUpdate:searchTerm" | "onCreate"> & (InputMenuProps<T, VK, M> & {
190
+ readonly "onRemove-tag"?: ((item: GetModelValue<T, VK, M>) => any) | undefined;
191
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onFocus" | "onBlur" | "onChange" | "onUpdate:open" | "onUpdate:modelValue" | "onHighlight" | "onUpdate:searchTerm" | "onCreate" | "onRemove-tag"> & (InputMenuProps<T, VK, M> & {
189
192
  searchTerm?: string;
190
193
  }) & Partial<{}>> & import("vue").PublicProps;
191
194
  expose(exposed: import("vue").ShallowUnwrapRef<{
@@ -293,7 +296,7 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
293
296
  errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void)[];
294
297
  };
295
298
  $forceUpdate: () => void;
296
- $nextTick: typeof import("vue").nextTick;
299
+ $nextTick: typeof nextTick;
297
300
  $watch<T_1 extends string | ((...args: any) => any)>(source: T_1, cb: T_1 extends (...args: any) => infer R ? (...args: [R, R, import("@vue/reactivity").OnCleanup]) => any : (...args: [any, any, import("@vue/reactivity").OnCleanup]) => any, options?: import("vue").WatchOptions): import("vue").WatchStopHandle;
298
301
  } & Readonly<{
299
302
  as: import("reka-ui").AsTag | import("vue").Component;
@@ -343,7 +346,7 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
343
346
  errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void)[];
344
347
  };
345
348
  $forceUpdate: () => void;
346
- $nextTick: typeof import("vue").nextTick;
349
+ $nextTick: typeof nextTick;
347
350
  $watch<T_1 extends string | ((...args: any) => any)>(source: T_1, cb: T_1 extends (...args: any) => infer R ? (...args: [R, R, import("@vue/reactivity").OnCleanup]) => any : (...args: [any, any, import("@vue/reactivity").OnCleanup]) => any, options?: import("vue").WatchOptions): import("vue").WatchStopHandle;
348
351
  } & Readonly<{
349
352
  as: import("reka-ui").AsTag | import("vue").Component;
@@ -457,7 +460,7 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
457
460
  errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void)[];
458
461
  };
459
462
  $forceUpdate: () => void;
460
- $nextTick: typeof import("vue").nextTick;
463
+ $nextTick: typeof nextTick;
461
464
  $watch<T_1 extends string | ((...args: any) => any)>(source: T_1, cb: T_1 extends (...args: any) => infer R ? (...args: [R, R, import("@vue/reactivity").OnCleanup]) => any : (...args: [any, any, import("@vue/reactivity").OnCleanup]) => any, options?: import("vue").WatchOptions): import("vue").WatchStopHandle;
462
465
  } & Readonly<{
463
466
  as: import("reka-ui").AsTag | import("vue").Component;
@@ -507,7 +510,7 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
507
510
  errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void)[];
508
511
  };
509
512
  $forceUpdate: () => void;
510
- $nextTick: typeof import("vue").nextTick;
513
+ $nextTick: typeof nextTick;
511
514
  $watch<T_1 extends string | ((...args: any) => any)>(source: T_1, cb: T_1 extends (...args: any) => infer R ? (...args: [R, R, import("@vue/reactivity").OnCleanup]) => any : (...args: [any, any, import("@vue/reactivity").OnCleanup]) => any, options?: import("vue").WatchOptions): import("vue").WatchStopHandle;
512
515
  } & Readonly<{
513
516
  as: import("reka-ui").AsTag | import("vue").Component;
@@ -521,14 +524,14 @@ declare const _default: <T extends ArrayOrNested<InputMenuItem>, VK extends GetI
521
524
  }>): void;
522
525
  attrs: any;
523
526
  slots: InputMenuSlots<T, VK, M, NestedItem<T>>;
524
- emit: (((evt: "blur", payload: FocusEvent) => void) & ((evt: "change", payload: Event) => void) & ((evt: "focus", payload: FocusEvent) => void) & ((evt: "create", item: string) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "highlight", payload: {
527
+ emit: (((evt: "blur", payload: FocusEvent) => void) & ((evt: "change", payload: Event) => void) & ((evt: "focus", payload: FocusEvent) => void) & ((evt: "create", item: string) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:modelValue", payload: GetModelValue<T, VK, M>) => void) & ((evt: "highlight", payload: {
525
528
  ref: HTMLElement;
526
529
  value: GetModelValue<T, VK, M>;
527
- } | undefined) => void) & ((evt: "update:modelValue", payload: GetModelValue<T, VK, M>) => void)) & ((evt: "update:searchTerm", value: string) => void);
530
+ } | undefined) => void) & ((evt: "remove-tag", item: GetModelValue<T, VK, M>) => void)) & ((evt: "update:searchTerm", value: string) => void);
528
531
  }>) => import("vue").VNode & {
529
532
  __ctx?: Awaited<typeof __VLS_setup>;
530
533
  };
531
534
  export default _default;
532
535
  type __VLS_PrettifyLocal<T> = {
533
- [K in keyof T]: T[K];
536
+ [K in keyof T as K]: T[K];
534
537
  } & {};
@@ -59,9 +59,9 @@ export interface InputNumberProps extends Pick<NumberFieldRootProps, 'modelValue
59
59
  ui?: InputNumber['slots'];
60
60
  }
61
61
  export interface InputNumberEmits {
62
- (e: 'update:modelValue', payload: number): void;
63
- (e: 'blur', event: FocusEvent): void;
64
- (e: 'change', payload: Event): void;
62
+ 'update:modelValue': [payload: number];
63
+ 'blur': [event: FocusEvent];
64
+ 'change': [payload: Event];
65
65
  }
66
66
  export interface InputNumberSlots {
67
67
  increment(props?: {}): any;
@@ -241,7 +241,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<InputNumbe
241
241
  default?(_: {}): any;
242
242
  };
243
243
  }) | null>;
244
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
244
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
245
245
  blur: (event: FocusEvent) => any;
246
246
  change: (payload: Event) => any;
247
247
  "update:modelValue": (payload: number) => any;
@@ -17,6 +17,7 @@ defineOptions({ inheritAttrs: false });
17
17
  const props = defineProps({
18
18
  as: { type: null, required: false },
19
19
  placeholder: { type: String, required: false },
20
+ maxLength: { type: Number, required: false },
20
21
  color: { type: null, required: false },
21
22
  variant: { type: null, required: false },
22
23
  size: { type: null, required: false },
@@ -138,6 +139,7 @@ defineExpose({
138
139
  ref="inputRef"
139
140
  v-bind="{ ...$attrs, ...ariaAttrs }"
140
141
  :placeholder="placeholder"
142
+ :max-length="maxLength"
141
143
  :class="ui.input({ class: props.ui?.input })"
142
144
  />
143
145
 
@@ -13,6 +13,8 @@ export interface InputTagsProps<T extends InputTagItem = InputTagItem> extends P
13
13
  as?: any;
14
14
  /** The placeholder text when the input is empty. */
15
15
  placeholder?: string;
16
+ /** The maximum number of character allowed. */
17
+ maxLength?: number;
16
18
  /**
17
19
  * @defaultValue 'primary'
18
20
  */
@@ -61,8 +63,8 @@ declare const _default: <T extends InputTagItem>(__VLS_props: NonNullable<Awaite
61
63
  readonly onFocus?: ((event: FocusEvent) => any) | undefined;
62
64
  readonly onInvalid?: ((payload: T) => any) | undefined;
63
65
  readonly "onUpdate:modelValue"?: ((payload: T[]) => any) | undefined;
64
- readonly onAddTag?: ((payload: T) => any) | undefined;
65
66
  readonly onRemoveTag?: ((payload: T) => any) | undefined;
67
+ readonly onAddTag?: ((payload: T) => any) | undefined;
66
68
  } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onFocus" | "onBlur" | "onChange" | "onInvalid" | "onUpdate:modelValue" | "onRemoveTag" | "onAddTag"> & InputTagsProps<T> & Partial<{}>> & import("vue").PublicProps;
67
69
  expose(exposed: import("vue").ShallowUnwrapRef<{
68
70
  inputRef: import("vue").Ref<({
@@ -173,11 +175,11 @@ declare const _default: <T extends InputTagItem>(__VLS_props: NonNullable<Awaite
173
175
  }>): void;
174
176
  attrs: any;
175
177
  slots: InputTagsSlots<T>;
176
- emit: ((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "invalid", payload: T) => void) & ((evt: "update:modelValue", payload: T[]) => void) & ((evt: "addTag", payload: T) => void) & ((evt: "removeTag", payload: T) => void);
178
+ emit: ((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "invalid", payload: T) => void) & ((evt: "update:modelValue", payload: T[]) => void) & ((evt: "removeTag", payload: T) => void) & ((evt: "addTag", payload: T) => void);
177
179
  }>) => import("vue").VNode & {
178
180
  __ctx?: Awaited<typeof __VLS_setup>;
179
181
  };
180
182
  export default _default;
181
183
  type __VLS_PrettifyLocal<T> = {
182
- [K in keyof T]: T[K];
184
+ [K in keyof T as K]: T[K];
183
185
  } & {};
@@ -11,6 +11,7 @@ import { tv } from "../utils/tv";
11
11
  const props = defineProps({
12
12
  as: { type: null, required: false, default: "kbd" },
13
13
  value: { type: null, required: false },
14
+ color: { type: null, required: false },
14
15
  variant: { type: null, required: false },
15
16
  size: { type: null, required: false },
16
17
  class: { type: null, required: false }
@@ -22,7 +23,7 @@ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.kbd || {} }))
22
23
  </script>
23
24
 
24
25
  <template>
25
- <Primitive :as="as" :class="ui({ variant, size, class: props.class })">
26
+ <Primitive :as="as" :class="ui({ class: props.class, color: props.color, variant: props.variant, size: props.size })">
26
27
  <slot>
27
28
  {{ getKbdKey(value) }}
28
29
  </slot>
@@ -10,6 +10,10 @@ export interface KbdProps {
10
10
  */
11
11
  as?: any;
12
12
  value?: KbdKey | string;
13
+ /**
14
+ * @defaultValue 'neutral'
15
+ */
16
+ color?: Kbd['variants']['color'];
13
17
  /**
14
18
  * @defaultValue 'outline'
15
19
  */
@@ -23,7 +27,7 @@ export interface KbdProps {
23
27
  export interface KbdSlots {
24
28
  default(props?: {}): any;
25
29
  }
26
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<KbdProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KbdProps> & Readonly<{}>, {
30
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<KbdProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KbdProps> & Readonly<{}>, {
27
31
  as: any;
28
32
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, KbdSlots>;
29
33
  export default _default;
@@ -4,11 +4,12 @@ import theme from "#build/ui/link";
4
4
 
5
5
  <script setup>
6
6
  import { computed } from "vue";
7
- import { defu } from "defu";
8
7
  import { isEqual } from "ohash/utils";
9
8
  import { useForwardProps } from "reka-ui";
9
+ import { defu } from "defu";
10
10
  import { reactiveOmit } from "@vueuse/core";
11
11
  import { useRoute, useAppConfig } from "#imports";
12
+ import { mergeClasses } from "../utils";
12
13
  import { tv } from "../utils/tv";
13
14
  import { isPartiallyEqual } from "../utils/link";
14
15
  import ULinkBase from "./LinkBase.vue";
@@ -21,7 +22,7 @@ const props = defineProps({
21
22
  exact: { type: Boolean, required: false },
22
23
  exactQuery: { type: [Boolean, String], required: false },
23
24
  exactHash: { type: Boolean, required: false },
24
- inactiveClass: { type: String, required: false, default: "" },
25
+ inactiveClass: { type: String, required: false },
25
26
  custom: { type: Boolean, required: false },
26
27
  raw: { type: Boolean, required: false },
27
28
  class: { type: null, required: false },
@@ -35,7 +36,7 @@ const props = defineProps({
35
36
  prefetch: { type: Boolean, required: false },
36
37
  prefetchOn: { type: [String, Object], required: false },
37
38
  noPrefetch: { type: Boolean, required: false },
38
- activeClass: { type: String, required: false, default: "" },
39
+ activeClass: { type: String, required: false },
39
40
  exactActiveClass: { type: String, required: false },
40
41
  ariaCurrentValue: { type: String, required: false, default: "page" },
41
42
  viewTransition: { type: Boolean, required: false },
@@ -50,8 +51,8 @@ const ui = computed(() => tv({
50
51
  ...defu({
51
52
  variants: {
52
53
  active: {
53
- true: props.activeClass,
54
- false: props.inactiveClass
54
+ true: mergeClasses(appConfig.ui?.link?.variants?.active?.true, props.activeClass),
55
+ false: mergeClasses(appConfig.ui?.link?.variants?.active?.false, props.inactiveClass)
55
56
  }
56
57
  }
57
58
  }, appConfig.ui?.link || {})
@@ -77,13 +77,11 @@ export interface LinkSlots {
77
77
  active: boolean;
78
78
  }): any;
79
79
  }
80
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {
80
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<LinkProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkProps> & Readonly<{}>, {
81
81
  type: "reset" | "submit" | "button";
82
82
  as: any;
83
- activeClass: string;
84
83
  ariaCurrentValue: "page" | "step" | "location" | "date" | "time" | "true" | "false";
85
84
  active: boolean;
86
- inactiveClass: string;
87
85
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, LinkSlots>;
88
86
  export default _default;
89
87
  type __VLS_WithSlots<T, S> = T & {
@@ -11,7 +11,7 @@ export interface LinkBaseProps {
11
11
  active?: boolean;
12
12
  isExternal?: boolean;
13
13
  }
14
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<LinkBaseProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkBaseProps> & Readonly<{}>, {
14
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<LinkBaseProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<LinkBaseProps> & Readonly<{}>, {
15
15
  type: string;
16
16
  as: string;
17
17
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
@@ -9,7 +9,7 @@ export interface MainProps {
9
9
  export interface MainSlots {
10
10
  default(props?: {}): any;
11
11
  }
12
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<MainProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MainProps> & Readonly<{}>, {
12
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<MainProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MainProps> & Readonly<{}>, {
13
13
  as: any;
14
14
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, MainSlots>;
15
15
  export default _default;
@@ -80,7 +80,7 @@ export interface ModalSlots {
80
80
  close: () => void;
81
81
  }): any;
82
82
  }
83
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ModalProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
83
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ModalProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
84
84
  "update:open": (value: boolean) => any;
85
85
  "after:leave": () => any;
86
86
  "after:enter": () => any;
@@ -93,9 +93,9 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ModalProps
93
93
  }>, {
94
94
  close: boolean | Partial<ButtonProps>;
95
95
  modal: boolean;
96
- transition: boolean;
97
96
  portal: boolean | string | HTMLElement;
98
97
  overlay: boolean;
98
+ transition: boolean;
99
99
  dismissible: boolean;
100
100
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ModalSlots>;
101
101
  export default _default;
@@ -18,6 +18,7 @@ import UIcon from "./Icon.vue";
18
18
  import UBadge from "./Badge.vue";
19
19
  import UPopover from "./Popover.vue";
20
20
  import UTooltip from "./Tooltip.vue";
21
+ defineOptions({ inheritAttrs: false });
21
22
  const props = defineProps({
22
23
  as: { type: null, required: false },
23
24
  trailingIcon: { type: String, required: false },
@@ -121,7 +122,7 @@ function getAccordionDefaultValue(list, level = 0) {
121
122
  <component :is="orientation === 'vertical' && item.children?.length && !collapsed ? AccordionTrigger : 'span'" v-if="(!collapsed || orientation !== 'vertical') && (item.badge || orientation === 'horizontal' && (item.children?.length || !!slots[item.slot ? `${item.slot}-content` : 'item-content']) || orientation === 'vertical' && item.children?.length || item.trailingIcon || !!slots[item.slot ? `${item.slot}-trailing` : 'item-trailing'])" as="span" :class="ui.linkTrailing({ class: [props.ui?.linkTrailing, item.ui?.linkTrailing] })" @click.stop.prevent>
122
123
  <slot :name="item.slot ? `${item.slot}-trailing` : 'item-trailing'" :item="item" :active="active" :index="index">
123
124
  <UBadge
124
- v-if="item.badge"
125
+ v-if="item.badge !== void 0"
125
126
  color="neutral"
126
127
  variant="outline"
127
128
  :size="item.ui?.linkTrailingBadgeSize || props.ui?.linkTrailingBadgeSize || ui.linkTrailingBadgeSize()"
@@ -243,7 +244,7 @@ function getAccordionDefaultValue(list, level = 0) {
243
244
  </component>
244
245
  </DefineItemTemplate>
245
246
 
246
- <NavigationMenuRoot v-bind="rootProps" :data-collapsed="collapsed" :class="ui.root({ class: [props.ui?.root, props.class] })">
247
+ <NavigationMenuRoot v-bind="{ ...rootProps, ...$attrs }" :data-collapsed="collapsed" :class="ui.root({ class: [props.ui?.root, props.class] })">
247
248
  <slot name="list-leading" />
248
249
 
249
250
  <template v-for="(list, listIndex) in lists" :key="`list-${listIndex}`">
@@ -166,5 +166,5 @@ declare const _default: <T extends ArrayOrNested<NavigationMenuItem>>(__VLS_prop
166
166
  };
167
167
  export default _default;
168
168
  type __VLS_PrettifyLocal<T> = {
169
- [K in keyof T]: T[K];
169
+ [K in keyof T as K]: T[K];
170
170
  } & {};
@@ -1,2 +1,2 @@
1
- declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1
+ declare const _default: import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2
2
  export default _default;
@@ -16,7 +16,7 @@ export interface PageSlots {
16
16
  default(props?: {}): any;
17
17
  right(props?: {}): any;
18
18
  }
19
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageSlots>;
19
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageSlots>;
20
20
  export default _default;
21
21
  type __VLS_WithSlots<T, S> = T & {
22
22
  new (): {
@@ -10,7 +10,7 @@ export interface PageAccordionProps<T extends AccordionItem = AccordionItem> ext
10
10
  export type PageAccordionSlots<T extends AccordionItem = AccordionItem> = AccordionSlots<T & {
11
11
  slot?: string;
12
12
  }>;
13
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAccordionProps<AccordionItem>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAccordionProps<AccordionItem>> & Readonly<{}>, {
13
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAccordionProps<AccordionItem>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAccordionProps<AccordionItem>> & Readonly<{}>, {
14
14
  type: "multiple" | "single";
15
15
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageAccordionSlots<AccordionItem>>;
16
16
  export default _default;
@@ -31,7 +31,7 @@ export interface PageAnchorsSlots<T extends PageAnchor = PageAnchor> {
31
31
  'link-label': SlotProps<T>;
32
32
  'link-trailing': SlotProps<T>;
33
33
  }
34
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAnchorsProps<PageAnchor>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAnchorsProps<PageAnchor>> & Readonly<{}>, {
34
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAnchorsProps<PageAnchor>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAnchorsProps<PageAnchor>> & Readonly<{}>, {
35
35
  as: any;
36
36
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageAnchorsSlots<PageAnchor>>;
37
37
  export default _default;
@@ -16,7 +16,7 @@ export interface PageAsideSlots {
16
16
  default(props?: {}): any;
17
17
  bottom(props?: {}): any;
18
18
  }
19
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAsideProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAsideProps> & Readonly<{}>, {
19
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageAsideProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageAsideProps> & Readonly<{}>, {
20
20
  as: any;
21
21
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageAsideSlots>;
22
22
  export default _default;
@@ -9,7 +9,7 @@ export interface PageBodyProps {
9
9
  export interface PageBodySlots {
10
10
  default(props?: {}): any;
11
11
  }
12
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageBodyProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageBodyProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageBodySlots>;
12
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageBodyProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageBodyProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageBodySlots>;
13
13
  export default _default;
14
14
  type __VLS_WithSlots<T, S> = T & {
15
15
  new (): {
@@ -38,7 +38,7 @@ export interface PageCTASlots {
38
38
  description(props?: {}): any;
39
39
  links(props?: {}): any;
40
40
  }
41
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCTAProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCTAProps> & Readonly<{}>, {
41
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCTAProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCTAProps> & Readonly<{}>, {
42
42
  orientation: PageCTA["variants"]["orientation"];
43
43
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageCTASlots>;
44
44
  export default _default;
@@ -60,7 +60,7 @@ export interface PageCardSlots {
60
60
  footer(props?: {}): any;
61
61
  default(props?: {}): any;
62
62
  }
63
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCardProps> & Readonly<{}>, {
63
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageCardProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageCardProps> & Readonly<{}>, {
64
64
  orientation: PageCard["variants"]["orientation"];
65
65
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageCardSlots>;
66
66
  export default _default;
@@ -9,7 +9,7 @@ export interface PageColumnsProps {
9
9
  export interface PageColumnsSlots {
10
10
  default(props?: {}): any;
11
11
  }
12
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageColumnsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageColumnsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageColumnsSlots>;
12
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageColumnsProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageColumnsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageColumnsSlots>;
13
13
  export default _default;
14
14
  type __VLS_WithSlots<T, S> = T & {
15
15
  new (): {
@@ -32,7 +32,7 @@ export interface PageFeatureSlots {
32
32
  description(props?: {}): any;
33
33
  default(props?: {}): any;
34
34
  }
35
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageFeatureProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageFeatureProps> & Readonly<{}>, {
35
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageFeatureProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageFeatureProps> & Readonly<{}>, {
36
36
  orientation: PageFeature["variants"]["orientation"];
37
37
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageFeatureSlots>;
38
38
  export default _default;
@@ -9,7 +9,7 @@ export interface PageGridProps {
9
9
  export interface PageGridSlots {
10
10
  default(props?: {}): any;
11
11
  }
12
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageGridProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageGridProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageGridSlots>;
12
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageGridProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageGridProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageGridSlots>;
13
13
  export default _default;
14
14
  type __VLS_WithSlots<T, S> = T & {
15
15
  new (): {
@@ -26,7 +26,7 @@ export interface PageHeaderSlots {
26
26
  links(props?: {}): any;
27
27
  default(props?: {}): any;
28
28
  }
29
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeaderProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeaderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageHeaderSlots>;
29
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeaderProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeaderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageHeaderSlots>;
30
30
  export default _default;
31
31
  type __VLS_WithSlots<T, S> = T & {
32
32
  new (): {
@@ -38,7 +38,7 @@ export interface PageHeroSlots {
38
38
  description(props?: {}): any;
39
39
  links(props?: {}): any;
40
40
  }
41
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeroProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeroProps> & Readonly<{}>, {
41
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageHeroProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageHeroProps> & Readonly<{}>, {
42
42
  orientation: PageHero["variants"]["orientation"];
43
43
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageHeroSlots>;
44
44
  export default _default;
@@ -33,7 +33,7 @@ export interface PageLinksSlots<T extends PageLink = PageLink> {
33
33
  'link-label': SlotProps<T>;
34
34
  'link-trailing': SlotProps<T>;
35
35
  }
36
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageLinksProps<PageLink>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLinksProps<PageLink>> & Readonly<{}>, {
36
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageLinksProps<PageLink>, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLinksProps<PageLink>> & Readonly<{}>, {
37
37
  as: any;
38
38
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageLinksSlots<PageLink>>;
39
39
  export default _default;
@@ -10,7 +10,7 @@ export interface PageListProps {
10
10
  export interface PageListSlots {
11
11
  default(props?: {}): any;
12
12
  }
13
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageListProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageListProps> & Readonly<{}>, {
13
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageListProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageListProps> & Readonly<{}>, {
14
14
  divide: boolean;
15
15
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageListSlots>;
16
16
  export default _default;
@@ -21,7 +21,7 @@ export interface PageLogosProps {
21
21
  export interface PageLogosSlots {
22
22
  default(props?: {}): any;
23
23
  }
24
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageLogosProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLogosProps> & Readonly<{}>, {
24
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageLogosProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageLogosProps> & Readonly<{}>, {
25
25
  marquee: boolean | PageMarqueeProps;
26
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, PageLogosSlots>;
27
27
  export default _default;
@@ -19,7 +19,7 @@ export interface PageMarqueeProps {
19
19
  export interface PageMarqueeSlots {
20
20
  default(props?: {}): any;
21
21
  }
22
- declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageMarqueeProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageMarqueeProps> & Readonly<{}>, {
22
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<PageMarqueeProps, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PageMarqueeProps> & Readonly<{}>, {
23
23
  repeat: number;
24
24
  orientation: PageMarquee["variants"]["orientation"];
25
25
  overlay: boolean;