@nuxt/ui 3.1.0 → 3.1.2

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 (187) hide show
  1. package/.nuxt/ui/accordion.ts +2 -23
  2. package/.nuxt/ui/alert.ts +2 -28
  3. package/.nuxt/ui/avatar-group.ts +2 -23
  4. package/.nuxt/ui/avatar.ts +2 -23
  5. package/.nuxt/ui/badge.ts +32 -30
  6. package/.nuxt/ui/breadcrumb.ts +2 -23
  7. package/.nuxt/ui/button-group.ts +2 -36
  8. package/.nuxt/ui/button.ts +4 -30
  9. package/.nuxt/ui/calendar.ts +4 -25
  10. package/.nuxt/ui/card.ts +2 -23
  11. package/.nuxt/ui/carousel.ts +2 -28
  12. package/.nuxt/ui/checkbox-group.ts +146 -24
  13. package/.nuxt/ui/checkbox.ts +2 -23
  14. package/.nuxt/ui/chip.ts +2 -23
  15. package/.nuxt/ui/collapsible.ts +2 -23
  16. package/.nuxt/ui/color-picker.ts +4 -25
  17. package/.nuxt/ui/command-palette.ts +2 -23
  18. package/.nuxt/ui/container.ts +2 -23
  19. package/.nuxt/ui/context-menu.ts +2 -23
  20. package/.nuxt/ui/drawer.ts +2 -23
  21. package/.nuxt/ui/dropdown-menu.ts +2 -23
  22. package/.nuxt/ui/form-field.ts +2 -23
  23. package/.nuxt/ui/form.ts +2 -23
  24. package/.nuxt/ui/input-menu.ts +4 -34
  25. package/.nuxt/ui/input-number.ts +12 -23
  26. package/.nuxt/ui/input.ts +4 -34
  27. package/.nuxt/ui/kbd.ts +2 -23
  28. package/.nuxt/ui/link.ts +14 -28
  29. package/.nuxt/ui/modal.ts +2 -23
  30. package/.nuxt/ui/navigation-menu.ts +3 -24
  31. package/.nuxt/ui/pagination.ts +2 -23
  32. package/.nuxt/ui/pin-input.ts +2 -23
  33. package/.nuxt/ui/popover.ts +2 -23
  34. package/.nuxt/ui/progress.ts +2 -23
  35. package/.nuxt/ui/radio-group.ts +2 -23
  36. package/.nuxt/ui/select-menu.ts +4 -34
  37. package/.nuxt/ui/select.ts +4 -34
  38. package/.nuxt/ui/separator.ts +2 -23
  39. package/.nuxt/ui/skeleton.ts +2 -23
  40. package/.nuxt/ui/slideover.ts +2 -23
  41. package/.nuxt/ui/slider.ts +2 -23
  42. package/.nuxt/ui/stepper.ts +2 -23
  43. package/.nuxt/ui/switch.ts +2 -23
  44. package/.nuxt/ui/table.ts +2 -23
  45. package/.nuxt/ui/tabs.ts +6 -26
  46. package/.nuxt/ui/textarea.ts +4 -34
  47. package/.nuxt/ui/toast.ts +2 -28
  48. package/.nuxt/ui/toaster.ts +2 -23
  49. package/.nuxt/ui/tooltip.ts +2 -23
  50. package/.nuxt/ui/tree.ts +2 -23
  51. package/.nuxt/ui.css +15 -8
  52. package/README.md +4 -0
  53. package/cli/templates.mjs +2 -2
  54. package/dist/module.json +1 -1
  55. package/dist/module.mjs +15 -5
  56. package/dist/runtime/components/Accordion.vue +9 -9
  57. package/dist/runtime/components/Accordion.vue.d.ts +6 -20
  58. package/dist/runtime/components/Alert.vue +1 -1
  59. package/dist/runtime/components/Alert.vue.d.ts +7 -22
  60. package/dist/runtime/components/App.vue.d.ts +2 -2
  61. package/dist/runtime/components/Avatar.vue +2 -2
  62. package/dist/runtime/components/Avatar.vue.d.ts +4 -25
  63. package/dist/runtime/components/AvatarGroup.vue +1 -1
  64. package/dist/runtime/components/AvatarGroup.vue.d.ts +2 -11
  65. package/dist/runtime/components/Badge.vue +5 -3
  66. package/dist/runtime/components/Badge.vue.d.ts +5 -24
  67. package/dist/runtime/components/Breadcrumb.vue +8 -8
  68. package/dist/runtime/components/Breadcrumb.vue.d.ts +4 -20
  69. package/dist/runtime/components/Button.vue +2 -3
  70. package/dist/runtime/components/Button.vue.d.ts +4 -29
  71. package/dist/runtime/components/ButtonGroup.vue.d.ts +3 -24
  72. package/dist/runtime/components/Calendar.vue +2 -1
  73. package/dist/runtime/components/Calendar.vue.d.ts +6 -2
  74. package/dist/runtime/components/Card.vue +1 -1
  75. package/dist/runtime/components/Card.vue.d.ts +2 -11
  76. package/dist/runtime/components/Carousel.vue +5 -2
  77. package/dist/runtime/components/Carousel.vue.d.ts +10 -3
  78. package/dist/runtime/components/Checkbox.vue +2 -2
  79. package/dist/runtime/components/Checkbox.vue.d.ts +10 -13
  80. package/dist/runtime/components/CheckboxGroup.vue +8 -5
  81. package/dist/runtime/components/CheckboxGroup.vue.d.ts +12 -3
  82. package/dist/runtime/components/Chip.vue +1 -1
  83. package/dist/runtime/components/Chip.vue.d.ts +10 -24
  84. package/dist/runtime/components/Collapsible.vue +1 -1
  85. package/dist/runtime/components/Collapsible.vue.d.ts +7 -22
  86. package/dist/runtime/components/ColorPicker.vue +1 -1
  87. package/dist/runtime/components/ColorPicker.vue.d.ts +9 -24
  88. package/dist/runtime/components/CommandPalette.vue +17 -17
  89. package/dist/runtime/components/CommandPalette.vue.d.ts +17 -27
  90. package/dist/runtime/components/Container.vue.d.ts +2 -11
  91. package/dist/runtime/components/ContextMenu.vue.d.ts +6 -24
  92. package/dist/runtime/components/ContextMenuContent.vue +15 -15
  93. package/dist/runtime/components/ContextMenuContent.vue.d.ts +17 -57
  94. package/dist/runtime/components/Drawer.vue.d.ts +17 -27
  95. package/dist/runtime/components/DropdownMenu.vue.d.ts +6 -28
  96. package/dist/runtime/components/DropdownMenuContent.vue +15 -15
  97. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +19 -6
  98. package/dist/runtime/components/Form.vue.d.ts +5 -2
  99. package/dist/runtime/components/FormField.vue +5 -5
  100. package/dist/runtime/components/FormField.vue.d.ts +2 -11
  101. package/dist/runtime/components/Icon.vue.d.ts +1 -10
  102. package/dist/runtime/components/Input.vue +2 -2
  103. package/dist/runtime/components/Input.vue.d.ts +20 -41
  104. package/dist/runtime/components/InputMenu.vue +17 -17
  105. package/dist/runtime/components/InputMenu.vue.d.ts +227 -5
  106. package/dist/runtime/components/InputNumber.vue +13 -7
  107. package/dist/runtime/components/InputNumber.vue.d.ts +90 -23
  108. package/dist/runtime/components/Kbd.vue.d.ts +3 -24
  109. package/dist/runtime/components/Link.vue +5 -14
  110. package/dist/runtime/components/Link.vue.d.ts +3 -34
  111. package/dist/runtime/components/LinkBase.vue.d.ts +4 -27
  112. package/dist/runtime/components/Modal.vue.d.ts +12 -28
  113. package/dist/runtime/components/NavigationMenu.vue +35 -28
  114. package/dist/runtime/components/NavigationMenu.vue.d.ts +24 -26
  115. package/dist/runtime/components/Pagination.vue +1 -1
  116. package/dist/runtime/components/Pagination.vue.d.ts +9 -33
  117. package/dist/runtime/components/PinInput.vue +1 -1
  118. package/dist/runtime/components/PinInput.vue.d.ts +13 -24
  119. package/dist/runtime/components/Popover.vue.d.ts +9 -26
  120. package/dist/runtime/components/Progress.vue +1 -1
  121. package/dist/runtime/components/Progress.vue.d.ts +10 -41
  122. package/dist/runtime/components/RadioGroup.vue +8 -8
  123. package/dist/runtime/components/RadioGroup.vue.d.ts +8 -3
  124. package/dist/runtime/components/Select.vue +12 -12
  125. package/dist/runtime/components/Select.vue.d.ts +11 -3
  126. package/dist/runtime/components/SelectMenu.vue +13 -13
  127. package/dist/runtime/components/SelectMenu.vue.d.ts +19 -5
  128. package/dist/runtime/components/Separator.vue +1 -1
  129. package/dist/runtime/components/Separator.vue.d.ts +3 -24
  130. package/dist/runtime/components/Skeleton.vue.d.ts +3 -12
  131. package/dist/runtime/components/Slideover.vue.d.ts +12 -29
  132. package/dist/runtime/components/Slider.vue +16 -4
  133. package/dist/runtime/components/Slider.vue.d.ts +23 -36
  134. package/dist/runtime/components/Stepper.vue +10 -10
  135. package/dist/runtime/components/Stepper.vue.d.ts +10 -14
  136. package/dist/runtime/components/Switch.vue +1 -1
  137. package/dist/runtime/components/Switch.vue.d.ts +10 -13
  138. package/dist/runtime/components/Table.vue +2 -2
  139. package/dist/runtime/components/Table.vue.d.ts +17 -17
  140. package/dist/runtime/components/Tabs.vue +6 -6
  141. package/dist/runtime/components/Tabs.vue.d.ts +6 -20
  142. package/dist/runtime/components/Textarea.vue +3 -3
  143. package/dist/runtime/components/Textarea.vue.d.ts +20 -44
  144. package/dist/runtime/components/Toast.vue +3 -2
  145. package/dist/runtime/components/Toast.vue.d.ts +92 -24
  146. package/dist/runtime/components/Toaster.vue +4 -4
  147. package/dist/runtime/components/Toaster.vue.d.ts +9 -28
  148. package/dist/runtime/components/Tooltip.vue.d.ts +7 -22
  149. package/dist/runtime/components/Tree.vue +10 -10
  150. package/dist/runtime/components/Tree.vue.d.ts +7 -22
  151. package/dist/runtime/composables/defineShortcuts.js +6 -0
  152. package/dist/runtime/composables/useAvatarGroup.d.ts +1 -1
  153. package/dist/runtime/composables/useButtonGroup.d.ts +1 -1
  154. package/dist/runtime/composables/useFormField.d.ts +2 -2
  155. package/dist/runtime/composables/useFormField.js +2 -1
  156. package/dist/runtime/composables/useKbd.d.ts +1 -0
  157. package/dist/runtime/composables/useKbd.js +4 -3
  158. package/dist/runtime/composables/useOverlay.d.ts +9 -10
  159. package/dist/runtime/composables/useOverlay.js +11 -6
  160. package/dist/runtime/inertia/components/Link.vue +46 -60
  161. package/dist/runtime/inertia/components/Link.vue.d.ts +4 -33
  162. package/dist/runtime/inertia/components/LinkBase.vue +68 -0
  163. package/dist/runtime/inertia/components/LinkBase.vue.d.ts +25 -0
  164. package/dist/runtime/inertia/stubs.d.ts +1 -1
  165. package/dist/runtime/inertia/stubs.js +1 -1
  166. package/dist/runtime/locale/index.d.ts +1 -0
  167. package/dist/runtime/locale/index.js +1 -0
  168. package/dist/runtime/locale/sl.d.ts +3 -0
  169. package/dist/runtime/locale/sl.js +54 -0
  170. package/dist/runtime/types/tv.d.ts +53 -0
  171. package/dist/runtime/types/tv.js +0 -0
  172. package/dist/runtime/types/utils.d.ts +2 -52
  173. package/dist/runtime/types/utils.js +1 -0
  174. package/dist/runtime/utils/link.d.ts +1 -0
  175. package/dist/runtime/utils/link.js +12 -0
  176. package/dist/runtime/vue/components/Icon.vue.d.ts +1 -10
  177. package/dist/runtime/vue/components/Link.vue +27 -40
  178. package/dist/runtime/vue/components/Link.vue.d.ts +3 -34
  179. package/dist/runtime/vue/composables/useAppConfig.js +3 -1
  180. package/dist/runtime/vue/stubs.d.ts +1 -1
  181. package/dist/runtime/vue/stubs.js +1 -1
  182. package/dist/shared/{ui.D7lOOabO.mjs → ui.BvUP-pSb.mjs} +120 -27
  183. package/dist/unplugin.d.mts +2 -2
  184. package/dist/unplugin.mjs +1 -1
  185. package/dist/vite.d.mts +1 -1
  186. package/dist/vite.mjs +2 -2
  187. package/package.json +28 -27
@@ -11,7 +11,12 @@ import theme from '#build/ui/carousel';
11
11
  import type { ButtonProps } from '../types';
12
12
  import type { ComponentConfig } from '../types/utils';
13
13
  type Carousel = ComponentConfig<typeof theme, AppConfig, 'carousel'>;
14
- export type CarouselItem = AcceptableValue;
14
+ interface _CarouselItem {
15
+ class?: any;
16
+ ui?: Pick<Carousel['slots'], 'item'>;
17
+ [key: string]: any;
18
+ }
19
+ export type CarouselItem = _CarouselItem | AcceptableValue;
15
20
  export interface CarouselProps<T extends CarouselItem = CarouselItem> extends Omit<EmblaOptionsType, 'axis' | 'container' | 'slides' | 'direction'> {
16
21
  /**
17
22
  * The element or component this component should render as.
@@ -103,13 +108,15 @@ export interface CarouselEmits {
103
108
  select: [selectedIndex: number];
104
109
  }
105
110
  declare const _default: <T extends CarouselItem>(__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<{
106
- props: __VLS_PrettifyLocal<any & CarouselProps<T> & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
111
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
112
+ readonly onSelect?: ((selectedIndex: number) => any) | undefined;
113
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onSelect"> & CarouselProps<T> & Partial<{}>> & import("vue").PublicProps;
107
114
  expose(exposed: import("vue").ShallowUnwrapRef<{
108
115
  emblaRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
109
116
  emblaApi: import("vue").Ref<EmblaCarouselType | undefined, EmblaCarouselType | undefined>;
110
117
  }>): void;
111
118
  attrs: any;
112
- slots: Readonly<CarouselSlots<T>> & CarouselSlots<T>;
119
+ slots: CarouselSlots<T>;
113
120
  emit: (evt: "select", selectedIndex: number) => void;
114
121
  }>) => import("vue").VNode & {
115
122
  __ctx?: Awaited<typeof __VLS_setup>;
@@ -54,7 +54,7 @@ function onUpdate(value) {
54
54
  </script>
55
55
 
56
56
  <template>
57
- <Primitive :as="variant === 'list' ? as : Label" :class="ui.root({ class: [props.class, props.ui?.root] })">
57
+ <Primitive :as="!variant || variant === 'list' ? as : Label" :class="ui.root({ class: [props.ui?.root, props.class] })">
58
58
  <div :class="ui.container({ class: props.ui?.container })">
59
59
  <CheckboxRoot
60
60
  :id="id"
@@ -75,7 +75,7 @@ function onUpdate(value) {
75
75
  </div>
76
76
 
77
77
  <div v-if="label || !!slots.label || (description || !!slots.description)" :class="ui.wrapper({ class: props.ui?.wrapper })">
78
- <component :is="variant === 'list' ? Label : 'p'" v-if="label || !!slots.label" :for="id" :class="ui.label({ class: props.ui?.label })">
78
+ <component :is="!variant || variant === 'list' ? Label : 'p'" v-if="label || !!slots.label" :for="id" :class="ui.label({ class: props.ui?.label })">
79
79
  <slot name="label" :label="label">
80
80
  {{ label }}
81
81
  </slot>
@@ -54,22 +54,19 @@ export interface CheckboxSlots {
54
54
  description?: string;
55
55
  }): any;
56
56
  }
57
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<{
57
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<CheckboxProps & {
58
58
  modelValue?: boolean | "indeterminate";
59
- } & CheckboxProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<{
59
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
60
+ change: (payload: Event) => any;
61
+ "update:modelValue": (value: boolean | "indeterminate") => any;
62
+ }, string, import("vue").PublicProps, Readonly<CheckboxProps & {
60
63
  modelValue?: boolean | "indeterminate";
61
- } & CheckboxProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<CheckboxSlots> & CheckboxSlots>;
64
+ }> & Readonly<{
65
+ onChange?: ((payload: Event) => any) | undefined;
66
+ "onUpdate:modelValue"?: ((value: boolean | "indeterminate") => any) | undefined;
67
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, CheckboxSlots>;
62
68
  export default _default;
63
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
64
- type __VLS_TypePropsToOption<T> = {
65
- [K in keyof T]-?: {} extends Pick<T, K> ? {
66
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
67
- } : {
68
- type: import('vue').PropType<T[K]>;
69
- required: true;
70
- };
71
- };
72
- type __VLS_WithTemplateSlots<T, S> = T & {
69
+ type __VLS_WithSlots<T, S> = T & {
73
70
  new (): {
74
71
  $slots: S;
75
72
  };
@@ -10,6 +10,7 @@ import { useAppConfig } from "#imports";
10
10
  import { useFormField } from "../composables/useFormField";
11
11
  import { get, omit } from "../utils";
12
12
  import { tv } from "../utils/tv";
13
+ import UCheckbox from "./Checkbox.vue";
13
14
  const props = defineProps({
14
15
  as: { type: null, required: false },
15
16
  legend: { type: String, required: false },
@@ -18,6 +19,7 @@ const props = defineProps({
18
19
  descriptionKey: { type: String, required: false, default: "description" },
19
20
  items: { type: Array, required: false },
20
21
  size: { type: null, required: false },
22
+ variant: { type: null, required: false },
21
23
  orientation: { type: null, required: false, default: "vertical" },
22
24
  class: { type: null, required: false },
23
25
  ui: { type: void 0, required: false },
@@ -28,7 +30,6 @@ const props = defineProps({
28
30
  name: { type: String, required: false },
29
31
  required: { type: Boolean, required: false },
30
32
  color: { type: null, required: false },
31
- variant: { type: null, required: false },
32
33
  indicator: { type: null, required: false },
33
34
  icon: { type: String, required: false }
34
35
  });
@@ -43,7 +44,9 @@ const id = _id.value ?? useId();
43
44
  const ui = computed(() => tv({ extend: theme, ...appConfig.ui?.checkboxGroup || {} })({
44
45
  size: size.value,
45
46
  required: props.required,
46
- orientation: props.orientation
47
+ orientation: props.orientation,
48
+ color: props.color,
49
+ variant: props.variant
47
50
  }));
48
51
  function normalizeItem(item) {
49
52
  if (item === null) {
@@ -91,7 +94,7 @@ function onUpdate(value) {
91
94
  v-bind="rootProps"
92
95
  :name="name"
93
96
  :disabled="disabled"
94
- :class="ui.root({ class: [props.class, props.ui?.root] })"
97
+ :class="ui.root({ class: [props.ui?.root, props.class] })"
95
98
  @update:model-value="onUpdate"
96
99
  >
97
100
  <fieldset :class="ui.fieldset({ class: props.ui?.fieldset })" v-bind="ariaAttrs">
@@ -109,8 +112,8 @@ function onUpdate(value) {
109
112
  :size="size"
110
113
  :name="name"
111
114
  :disabled="item.disabled || disabled"
112
- :ui="props.ui ? omit(props.ui, ['root']) : void 0"
113
- :class="ui.item({ class: props.ui?.item })"
115
+ :ui="{ ...props.ui ? omit(props.ui, ['root']) : void 0, ...item.ui || {} }"
116
+ :class="ui.item({ class: [props.ui?.item, item.ui?.item, item.class] })"
114
117
  >
115
118
  <template v-for="(_, name) in proxySlots" #[name]>
116
119
  <slot :name="name" :item="item" />
@@ -10,9 +10,11 @@ export type CheckboxGroupItem = {
10
10
  description?: string;
11
11
  disabled?: boolean;
12
12
  value?: string;
13
+ class?: any;
14
+ ui?: Pick<CheckboxGroup['slots'], 'item'> & Omit<Required<CheckboxProps>['ui'], 'root'>;
13
15
  [key: string]: any;
14
16
  } | CheckboxGroupValue;
15
- export interface CheckboxGroupProps<T extends CheckboxGroupItem = CheckboxGroupItem> extends Pick<CheckboxGroupRootProps, 'defaultValue' | 'disabled' | 'loop' | 'modelValue' | 'name' | 'required'>, Pick<CheckboxProps, 'color' | 'variant' | 'indicator' | 'icon'> {
17
+ export interface CheckboxGroupProps<T extends CheckboxGroupItem = CheckboxGroupItem> extends Pick<CheckboxGroupRootProps, 'defaultValue' | 'disabled' | 'loop' | 'modelValue' | 'name' | 'required'>, Pick<CheckboxProps, 'color' | 'indicator' | 'icon'> {
16
18
  /**
17
19
  * The element or component this component should render as.
18
20
  * @defaultValue 'div'
@@ -39,6 +41,10 @@ export interface CheckboxGroupProps<T extends CheckboxGroupItem = CheckboxGroupI
39
41
  * @defaultValue 'md'
40
42
  */
41
43
  size?: CheckboxGroup['variants']['size'];
44
+ /**
45
+ * @defaultValue 'list'
46
+ */
47
+ variant?: CheckboxGroup['variants']['variant'];
42
48
  /**
43
49
  * The orientation the checkbox buttons are laid out.
44
50
  * @defaultValue 'vertical'
@@ -61,10 +67,13 @@ export interface CheckboxGroupSlots<T extends CheckboxGroupItem = CheckboxGroupI
61
67
  description: SlotProps<T>;
62
68
  }
63
69
  declare const _default: <T extends CheckboxGroupItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
64
- props: __VLS_PrettifyLocal<any & CheckboxGroupProps<T> & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
70
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
71
+ readonly onChange?: ((payload: Event) => any) | undefined;
72
+ readonly "onUpdate:modelValue"?: ((value: import("reka-ui").AcceptableValue[]) => any) | undefined;
73
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onChange" | "onUpdate:modelValue"> & CheckboxGroupProps<T> & Partial<{}>> & import("vue").PublicProps;
65
74
  expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
66
75
  attrs: any;
67
- slots: Readonly<CheckboxGroupSlots<T>> & CheckboxGroupSlots<T>;
76
+ slots: CheckboxGroupSlots<T>;
68
77
  emit: ((evt: "change", payload: Event) => void) & ((evt: "update:modelValue", value: import("reka-ui").AcceptableValue[]) => void);
69
78
  }>) => import("vue").VNode & {
70
79
  __ctx?: Awaited<typeof __VLS_setup>;
@@ -34,7 +34,7 @@ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.chip || {} })
34
34
  </script>
35
35
 
36
36
  <template>
37
- <Primitive :as="as" :class="ui.root({ class: [props.class, props.ui?.root] })">
37
+ <Primitive :as="as" :class="ui.root({ class: [props.ui?.root, props.class] })">
38
38
  <Slot v-bind="$attrs">
39
39
  <slot />
40
40
  </Slot>
@@ -37,35 +37,21 @@ export interface ChipSlots {
37
37
  default(props?: {}): any;
38
38
  content(props?: {}): any;
39
39
  }
40
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<{
40
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ChipProps & {
41
41
  show?: boolean;
42
- } & ChipProps>, {
43
- inset: boolean;
44
- standalone: boolean;
45
- }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
42
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
43
+ "update:show": (value: boolean) => any;
44
+ }, string, import("vue").PublicProps, Readonly<ChipProps & {
45
+ show?: boolean;
46
+ }> & Readonly<{
47
+ "onUpdate:show"?: ((value: boolean) => any) | undefined;
48
+ }>, {
46
49
  inset: boolean;
47
50
  standalone: boolean;
48
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<ChipSlots> & ChipSlots>;
51
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChipSlots>;
49
52
  export default _default;
50
- type __VLS_WithDefaults<P, D> = {
51
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
52
- default: D[K];
53
- }> : P[K];
54
- };
55
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
56
- type __VLS_TypePropsToOption<T> = {
57
- [K in keyof T]-?: {} extends Pick<T, K> ? {
58
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
59
- } : {
60
- type: import('vue').PropType<T[K]>;
61
- required: true;
62
- };
63
- };
64
- type __VLS_WithTemplateSlots<T, S> = T & {
53
+ type __VLS_WithSlots<T, S> = T & {
65
54
  new (): {
66
55
  $slots: S;
67
56
  };
68
57
  };
69
- type __VLS_PrettifyLocal<T> = {
70
- [K in keyof T]: T[K];
71
- } & {};
@@ -25,7 +25,7 @@ const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.collapsible |
25
25
  </script>
26
26
 
27
27
  <template>
28
- <CollapsibleRoot v-slot="{ open }" v-bind="rootProps" :class="ui.root({ class: [props.class, props.ui?.root] })">
28
+ <CollapsibleRoot v-slot="{ open }" v-bind="rootProps" :class="ui.root({ class: [props.ui?.root, props.class] })">
29
29
  <CollapsibleTrigger v-if="!!slots.default" as-child>
30
30
  <slot :open="open" />
31
31
  </CollapsibleTrigger>
@@ -20,31 +20,16 @@ export interface CollapsibleSlots {
20
20
  }): any;
21
21
  content(props?: {}): any;
22
22
  }
23
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<CollapsibleProps>, {
23
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<CollapsibleProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
24
+ "update:open": (value: boolean) => any;
25
+ }, string, import("vue").PublicProps, Readonly<CollapsibleProps> & Readonly<{
26
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
27
+ }>, {
24
28
  unmountOnHide: boolean;
25
- }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
26
- unmountOnHide: boolean;
27
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<CollapsibleSlots> & CollapsibleSlots>;
29
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, CollapsibleSlots>;
28
30
  export default _default;
29
- type __VLS_WithDefaults<P, D> = {
30
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
31
- default: D[K];
32
- }> : P[K];
33
- };
34
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
35
- type __VLS_TypePropsToOption<T> = {
36
- [K in keyof T]-?: {} extends Pick<T, K> ? {
37
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
38
- } : {
39
- type: import('vue').PropType<T[K]>;
40
- required: true;
41
- };
42
- };
43
- type __VLS_WithTemplateSlots<T, S> = T & {
31
+ type __VLS_WithSlots<T, S> = T & {
44
32
  new (): {
45
33
  $slots: S;
46
34
  };
47
35
  };
48
- type __VLS_PrettifyLocal<T> = {
49
- [K in keyof T]: T[K];
50
- } & {};
@@ -179,7 +179,7 @@ const trackThumbStyle = computed(() => ({
179
179
  </script>
180
180
 
181
181
  <template>
182
- <Primitive :as="as" :class="ui.root({ class: [props.class, props.ui?.root] })" :data-disabled="disabled ? true : void 0">
182
+ <Primitive :as="as" :class="ui.root({ class: [props.ui?.root, props.class] })" :data-disabled="disabled ? true : void 0">
183
183
  <div :class="ui.picker({ class: props.ui?.picker })">
184
184
  <div
185
185
  ref="selectorRef"
@@ -32,32 +32,17 @@ export type ColorPickerProps = {
32
32
  class?: any;
33
33
  ui?: ColorPicker['slots'];
34
34
  };
35
- declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<{
35
+ declare const _default: import("vue").DefineComponent<ColorPickerProps & {
36
36
  modelValue?: string;
37
- } & ColorPickerProps>, {
38
- format: string;
39
- throttle: number;
40
- defaultValue: string;
41
- }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
37
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
38
+ "update:modelValue": (value: string | undefined) => any;
39
+ }, string, import("vue").PublicProps, Readonly<ColorPickerProps & {
40
+ modelValue?: string;
41
+ }> & Readonly<{
42
+ "onUpdate:modelValue"?: ((value: string | undefined) => any) | undefined;
43
+ }>, {
42
44
  format: "hex" | "rgb" | "hsl" | "cmyk" | "lab";
43
45
  defaultValue: string;
44
46
  throttle: number;
45
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
47
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
46
48
  export default _default;
47
- type __VLS_WithDefaults<P, D> = {
48
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
49
- default: D[K];
50
- }> : P[K];
51
- };
52
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
53
- type __VLS_TypePropsToOption<T> = {
54
- [K in keyof T]-?: {} extends Pick<T, K> ? {
55
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
56
- } : {
57
- type: import('vue').PropType<T[K]>;
58
- required: true;
59
- };
60
- };
61
- type __VLS_PrettifyLocal<T> = {
62
- [K in keyof T]: T[K];
63
- } & {};
@@ -112,7 +112,7 @@ const groups = computed(() => {
112
112
  </script>
113
113
 
114
114
  <template>
115
- <ListboxRoot v-bind="rootProps" :class="ui.root({ class: [props.class, props.ui?.root] })">
115
+ <ListboxRoot v-bind="rootProps" :class="ui.root({ class: [props.ui?.root, props.class] })">
116
116
  <ListboxFilter v-model="searchTerm" as-child>
117
117
  <UInput
118
118
  :placeholder="placeholder || t('commandPalette.placeholder')"
@@ -156,42 +156,42 @@ const groups = computed(() => {
156
156
  @select="item.onSelect"
157
157
  >
158
158
  <ULink v-slot="{ active, ...slotProps }" v-bind="pickLinkProps(item)" custom>
159
- <ULinkBase v-bind="slotProps" :class="ui.item({ class: props.ui?.item, active: active || item.active })">
159
+ <ULinkBase v-bind="slotProps" :class="ui.item({ class: [props.ui?.item, item.ui?.item, item.class], active: active || item.active })">
160
160
  <slot :name="item.slot || group.slot || 'item'" :item="item" :index="index">
161
161
  <slot :name="item.slot ? `${item.slot}-leading` : group.slot ? `${group.slot}-leading` : `item-leading`" :item="item" :index="index">
162
- <UIcon v-if="item.loading" :name="loadingIcon || appConfig.ui.icons.loading" :class="ui.itemLeadingIcon({ class: props.ui?.itemLeadingIcon, loading: true })" />
163
- <UIcon v-else-if="item.icon" :name="item.icon" :class="ui.itemLeadingIcon({ class: props.ui?.itemLeadingIcon, active: active || item.active })" />
164
- <UAvatar v-else-if="item.avatar" :size="props.ui?.itemLeadingAvatarSize || ui.itemLeadingAvatarSize()" v-bind="item.avatar" :class="ui.itemLeadingAvatar({ class: props.ui?.itemLeadingAvatar, active: active || item.active })" />
162
+ <UIcon v-if="item.loading" :name="loadingIcon || appConfig.ui.icons.loading" :class="ui.itemLeadingIcon({ class: [props.ui?.itemLeadingIcon, item.ui?.itemLeadingIcon], loading: true })" />
163
+ <UIcon v-else-if="item.icon" :name="item.icon" :class="ui.itemLeadingIcon({ class: [props.ui?.itemLeadingIcon, item.ui?.itemLeadingIcon], active: active || item.active })" />
164
+ <UAvatar v-else-if="item.avatar" :size="item.ui?.itemLeadingAvatarSize || props.ui?.itemLeadingAvatarSize || ui.itemLeadingAvatarSize()" v-bind="item.avatar" :class="ui.itemLeadingAvatar({ class: [props.ui?.itemLeadingAvatar, item.ui?.itemLeadingAvatar], active: active || item.active })" />
165
165
  <UChip
166
166
  v-else-if="item.chip"
167
- :size="props.ui?.itemLeadingChipSize || ui.itemLeadingChipSize()"
167
+ :size="item.ui?.itemLeadingChipSize || props.ui?.itemLeadingChipSize || ui.itemLeadingChipSize()"
168
168
  inset
169
169
  standalone
170
170
  v-bind="item.chip"
171
- :class="ui.itemLeadingChip({ class: props.ui?.itemLeadingChip, active: active || item.active })"
171
+ :class="ui.itemLeadingChip({ class: [props.ui?.itemLeadingChip, item.ui?.itemLeadingChip], active: active || item.active })"
172
172
  />
173
173
  </slot>
174
174
 
175
- <span v-if="item.labelHtml || get(item, props.labelKey) || !!slots[item.slot ? `${item.slot}-label` : group.slot ? `${group.slot}-label` : `item-label`]" :class="ui.itemLabel({ class: props.ui?.itemLabel, active: active || item.active })">
175
+ <span v-if="item.labelHtml || get(item, props.labelKey) || !!slots[item.slot ? `${item.slot}-label` : group.slot ? `${group.slot}-label` : `item-label`]" :class="ui.itemLabel({ class: [props.ui?.itemLabel, item.ui?.itemLabel], active: active || item.active })">
176
176
  <slot :name="item.slot ? `${item.slot}-label` : group.slot ? `${group.slot}-label` : `item-label`" :item="item" :index="index">
177
- <span v-if="item.prefix" :class="ui.itemLabelPrefix({ class: props.ui?.itemLabelPrefix })">{{ item.prefix }}</span>
177
+ <span v-if="item.prefix" :class="ui.itemLabelPrefix({ class: [props.ui?.itemLabelPrefix, item.ui?.itemLabelPrefix] })">{{ item.prefix }}</span>
178
178
 
179
- <span :class="ui.itemLabelBase({ class: props.ui?.itemLabelBase, active: active || item.active })" v-html="item.labelHtml || get(item, props.labelKey)" />
179
+ <span :class="ui.itemLabelBase({ class: [props.ui?.itemLabelBase, item.ui?.itemLabelBase], active: active || item.active })" v-html="item.labelHtml || get(item, props.labelKey)" />
180
180
 
181
- <span :class="ui.itemLabelSuffix({ class: props.ui?.itemLabelSuffix, active: active || item.active })" v-html="item.suffixHtml || item.suffix" />
181
+ <span :class="ui.itemLabelSuffix({ class: [props.ui?.itemLabelSuffix, item.ui?.itemLabelSuffix], active: active || item.active })" v-html="item.suffixHtml || item.suffix" />
182
182
  </slot>
183
183
  </span>
184
184
 
185
- <span :class="ui.itemTrailing({ class: props.ui?.itemTrailing })">
185
+ <span :class="ui.itemTrailing({ class: [props.ui?.itemTrailing, item.ui?.itemTrailing] })">
186
186
  <slot :name="item.slot ? `${item.slot}-trailing` : group.slot ? `${group.slot}-trailing` : `item-trailing`" :item="item" :index="index">
187
- <span v-if="item.kbds?.length" :class="ui.itemTrailingKbds({ class: props.ui?.itemTrailingKbds })">
188
- <UKbd v-for="(kbd, kbdIndex) in item.kbds" :key="kbdIndex" :size="props.ui?.itemTrailingKbdsSize || ui.itemTrailingKbdsSize()" v-bind="typeof kbd === 'string' ? { value: kbd } : kbd" />
187
+ <span v-if="item.kbds?.length" :class="ui.itemTrailingKbds({ class: [props.ui?.itemTrailingKbds, item.ui?.itemTrailingKbds] })">
188
+ <UKbd v-for="(kbd, kbdIndex) in item.kbds" :key="kbdIndex" :size="item.ui?.itemTrailingKbdsSize || props.ui?.itemTrailingKbdsSize || ui.itemTrailingKbdsSize()" v-bind="typeof kbd === 'string' ? { value: kbd } : kbd" />
189
189
  </span>
190
- <UIcon v-else-if="group.highlightedIcon" :name="group.highlightedIcon" :class="ui.itemTrailingHighlightedIcon({ class: props.ui?.itemTrailingHighlightedIcon })" />
190
+ <UIcon v-else-if="group.highlightedIcon" :name="group.highlightedIcon" :class="ui.itemTrailingHighlightedIcon({ class: [props.ui?.itemTrailingHighlightedIcon, item.ui?.itemTrailingHighlightedIcon] })" />
191
191
  </slot>
192
192
 
193
193
  <ListboxItemIndicator as-child>
194
- <UIcon :name="selectedIcon || appConfig.ui.icons.check" :class="ui.itemTrailingIcon({ class: props.ui?.itemTrailingIcon })" />
194
+ <UIcon :name="selectedIcon || appConfig.ui.icons.check" :class="ui.itemTrailingIcon({ class: [props.ui?.itemTrailingIcon, item.ui?.itemTrailingIcon] })" />
195
195
  </ListboxItemIndicator>
196
196
  </span>
197
197
  </slot>
@@ -203,7 +203,7 @@ const groups = computed(() => {
203
203
 
204
204
  <div v-else :class="ui.empty({ class: props.ui?.empty })">
205
205
  <slot name="empty" :search-term="searchTerm">
206
- {{ searchTerm ? t('commandPalette.noMatch', { searchTerm }) : t('commandPalette.noData') }}
206
+ {{ searchTerm ? t("commandPalette.noMatch", { searchTerm }) : t("commandPalette.noData") }}
207
207
  </slot>
208
208
  </div>
209
209
  </ListboxContent>
@@ -22,6 +22,8 @@ export interface CommandPaletteItem extends Omit<LinkProps, 'type' | 'raw' | 'cu
22
22
  disabled?: boolean;
23
23
  slot?: string;
24
24
  onSelect?(e?: Event): void;
25
+ class?: any;
26
+ ui?: Pick<CommandPalette['slots'], 'item' | 'itemLeadingIcon' | 'itemLeadingAvatarSize' | 'itemLeadingAvatar' | 'itemLeadingChipSize' | 'itemLeadingChip' | 'itemLabel' | 'itemLabelPrefix' | 'itemLabelBase' | 'itemLabelSuffix' | 'itemTrailing' | 'itemTrailingKbds' | 'itemTrailingKbdsSize' | 'itemTrailingHighlightedIcon' | 'itemTrailingIcon'>;
25
27
  [key: string]: any;
26
28
  }
27
29
  export interface CommandPaletteGroup<T> {
@@ -132,38 +134,26 @@ export type CommandPaletteSlots<G extends {
132
134
  'item-trailing': SlotProps<T>;
133
135
  } & Record<string, SlotProps<G>> & Record<string, SlotProps<T>>;
134
136
  declare const _default: <G extends CommandPaletteGroup<T>, T extends CommandPaletteItem>(__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<{
135
- props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, never> & ({
137
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
138
+ readonly "onUpdate:open"?: ((value: boolean) => any) | undefined;
139
+ readonly "onUpdate:modelValue"?: ((value: T) => any) | undefined;
140
+ readonly onHighlight?: ((payload: {
141
+ ref: HTMLElement;
142
+ value: T;
143
+ } | undefined) => any) | undefined;
144
+ readonly "onUpdate:searchTerm"?: ((value: string) => any) | undefined;
145
+ readonly onEntryFocus?: ((event: CustomEvent<any>) => any) | undefined;
146
+ readonly onLeave?: ((event: Event) => any) | undefined;
147
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onUpdate:open" | "onUpdate:modelValue" | "onHighlight" | "onUpdate:searchTerm" | "onEntryFocus" | "onLeave"> & (CommandPaletteProps<G, T> & {
136
148
  searchTerm?: string;
137
- } & CommandPaletteProps<G, T>) & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
149
+ }) & Partial<{}>> & import("vue").PublicProps;
138
150
  expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
139
151
  attrs: any;
140
- slots: Readonly<{
141
- empty(props: {
142
- searchTerm?: string;
143
- }): any;
144
- close(props: {
145
- ui: { [K in keyof Required<CommandPalette["slots"]>]: (props?: Record<string, any>) => string; };
146
- }): any;
147
- item: SlotProps<T>;
148
- 'item-leading': SlotProps<T>;
149
- 'item-label': SlotProps<T>;
150
- 'item-trailing': SlotProps<T>;
151
- } & Record<string, SlotProps<G>> & Record<string, SlotProps<T>>> & {
152
- empty(props: {
153
- searchTerm?: string;
154
- }): any;
155
- close(props: {
156
- ui: { [K in keyof Required<CommandPalette["slots"]>]: (props?: Record<string, any>) => string; };
157
- }): any;
158
- item: SlotProps<T>;
159
- 'item-leading': SlotProps<T>;
160
- 'item-label': SlotProps<T>;
161
- 'item-trailing': SlotProps<T>;
162
- } & Record<string, SlotProps<G>> & Record<string, SlotProps<T>>;
163
- emit: (((evt: "highlight", payload: {
152
+ slots: CommandPaletteSlots<G, T>;
153
+ emit: (((evt: "update:open", value: boolean) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "highlight", payload: {
164
154
  ref: HTMLElement;
165
155
  value: T;
166
- } | undefined) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "entryFocus", event: CustomEvent<any>) => void) & ((evt: "leave", event: Event) => void)) & ((evt: "update:searchTerm", value: string) => void);
156
+ } | undefined) => void) & ((evt: "entryFocus", event: CustomEvent<any>) => void) & ((evt: "leave", event: Event) => void)) & ((evt: "update:searchTerm", value: string) => void);
167
157
  }>) => import("vue").VNode & {
168
158
  __ctx?: Awaited<typeof __VLS_setup>;
169
159
  };
@@ -9,18 +9,9 @@ export interface ContainerProps {
9
9
  export interface ContainerSlots {
10
10
  default(props?: {}): any;
11
11
  }
12
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<ContainerProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<ContainerProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<ContainerSlots> & ContainerSlots>;
12
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<ContainerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ContainerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ContainerSlots>;
13
13
  export default _default;
14
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
15
- type __VLS_TypePropsToOption<T> = {
16
- [K in keyof T]-?: {} extends Pick<T, K> ? {
17
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
18
- } : {
19
- type: import('vue').PropType<T[K]>;
20
- required: true;
21
- };
22
- };
23
- type __VLS_WithTemplateSlots<T, S> = T & {
14
+ type __VLS_WithSlots<T, S> = T & {
24
15
  new (): {
25
16
  $slots: S;
26
17
  };
@@ -28,6 +28,8 @@ export interface ContextMenuItem extends Omit<LinkProps, 'type' | 'raw' | 'custo
28
28
  children?: ArrayOrNested<ContextMenuItem>;
29
29
  onSelect?(e: Event): void;
30
30
  onUpdateChecked?(checked: boolean): void;
31
+ class?: any;
32
+ ui?: Pick<ContextMenu['slots'], 'item' | 'label' | 'separator' | 'itemLeadingIcon' | 'itemLeadingAvatarSize' | 'itemLeadingAvatar' | 'itemLabel' | 'itemLabelExternalIcon' | 'itemTrailing' | 'itemTrailingIcon' | 'itemTrailingKbds' | 'itemTrailingKbdsSize'>;
31
33
  [key: string]: any;
32
34
  }
33
35
  export interface ContextMenuProps<T extends ArrayOrNested<ContextMenuItem> = ArrayOrNested<ContextMenuItem>> extends Omit<ContextMenuRootProps, 'dir'> {
@@ -91,32 +93,12 @@ export type ContextMenuSlots<A extends ArrayOrNested<ContextMenuItem> = ArrayOrN
91
93
  index: number;
92
94
  }>;
93
95
  declare const _default: <T extends ArrayOrNested<ContextMenuItem>>(__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<{
94
- props: __VLS_PrettifyLocal<any & ContextMenuProps<T> & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
96
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
97
+ readonly "onUpdate:open"?: ((payload: boolean) => any) | undefined;
98
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onUpdate:open"> & ContextMenuProps<T> & Partial<{}>> & import("vue").PublicProps;
95
99
  expose(exposed: import("vue").ShallowUnwrapRef<{}>): void;
96
100
  attrs: any;
97
- slots: Readonly<{
98
- default(props?: {}): any;
99
- item: SlotProps<NestedItem<T>>;
100
- 'item-leading': SlotProps<NestedItem<T>>;
101
- 'item-label': SlotProps<NestedItem<T>>;
102
- 'item-trailing': SlotProps<NestedItem<T>>;
103
- 'content-top': (props?: {}) => any;
104
- 'content-bottom': (props?: {}) => any;
105
- } & DynamicSlots<MergeTypes<NestedItem<T>>, "trailing" | "leading" | "label", {
106
- active?: boolean;
107
- index: number;
108
- }>> & {
109
- default(props?: {}): any;
110
- item: SlotProps<NestedItem<T>>;
111
- 'item-leading': SlotProps<NestedItem<T>>;
112
- 'item-label': SlotProps<NestedItem<T>>;
113
- 'item-trailing': SlotProps<NestedItem<T>>;
114
- 'content-top': (props?: {}) => any;
115
- 'content-bottom': (props?: {}) => any;
116
- } & DynamicSlots<MergeTypes<NestedItem<T>>, "trailing" | "leading" | "label", {
117
- active?: boolean;
118
- index: number;
119
- }>;
101
+ slots: ContextMenuSlots<T, NestedItem<T>>;
120
102
  emit: (evt: "update:open", payload: boolean) => void;
121
103
  }>) => import("vue").VNode & {
122
104
  __ctx?: Awaited<typeof __VLS_setup>;