@nuxt/ui 4.6.1 → 4.7.1
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.
- package/README.md +7 -4
- package/cli/package.json +1 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +3 -2
- package/dist/runtime/components/Accordion.d.vue.ts +6 -1
- package/dist/runtime/components/Accordion.vue +1 -1
- package/dist/runtime/components/Accordion.vue.d.ts +6 -1
- package/dist/runtime/components/AuthForm.d.vue.ts +22 -29
- package/dist/runtime/components/AuthForm.vue +8 -6
- package/dist/runtime/components/AuthForm.vue.d.ts +22 -29
- package/dist/runtime/components/Button.vue +1 -0
- package/dist/runtime/components/Calendar.vue +4 -4
- package/dist/runtime/components/Card.d.vue.ts +4 -0
- package/dist/runtime/components/Card.vue +16 -2
- package/dist/runtime/components/Card.vue.d.ts +4 -0
- package/dist/runtime/components/ChatMessage.d.vue.ts +27 -17
- package/dist/runtime/components/ChatMessage.vue +10 -16
- package/dist/runtime/components/ChatMessage.vue.d.ts +27 -17
- package/dist/runtime/components/ChatMessages.d.vue.ts +27 -21
- package/dist/runtime/components/ChatMessages.vue +22 -23
- package/dist/runtime/components/ChatMessages.vue.d.ts +27 -21
- package/dist/runtime/components/ChatPromptSubmit.vue +3 -1
- package/dist/runtime/components/Checkbox.vue +5 -3
- package/dist/runtime/components/CommandPalette.d.vue.ts +18 -3
- package/dist/runtime/components/CommandPalette.vue +11 -7
- package/dist/runtime/components/CommandPalette.vue.d.ts +18 -3
- package/dist/runtime/components/ContextMenuContent.vue +68 -65
- package/dist/runtime/components/DashboardSearch.d.vue.ts +8 -37
- package/dist/runtime/components/DashboardSearch.vue +11 -10
- package/dist/runtime/components/DashboardSearch.vue.d.ts +8 -37
- package/dist/runtime/components/DashboardSidebar.vue +1 -5
- package/dist/runtime/components/Drawer.vue +44 -41
- package/dist/runtime/components/DropdownMenuContent.vue +90 -87
- package/dist/runtime/components/EditorEmojiMenu.d.vue.ts +1 -1
- package/dist/runtime/components/EditorEmojiMenu.vue +2 -0
- package/dist/runtime/components/EditorEmojiMenu.vue.d.ts +1 -1
- package/dist/runtime/components/EditorMentionMenu.d.vue.ts +1 -1
- package/dist/runtime/components/EditorMentionMenu.vue +2 -0
- package/dist/runtime/components/EditorMentionMenu.vue.d.ts +1 -1
- package/dist/runtime/components/EditorSuggestionMenu.d.vue.ts +1 -1
- package/dist/runtime/components/EditorSuggestionMenu.vue +2 -0
- package/dist/runtime/components/EditorSuggestionMenu.vue.d.ts +1 -1
- package/dist/runtime/components/FileUpload.vue +7 -5
- package/dist/runtime/components/FormField.d.vue.ts +1 -1
- package/dist/runtime/components/FormField.vue.d.ts +1 -1
- package/dist/runtime/components/Header.vue +1 -5
- package/dist/runtime/components/Input.vue +2 -2
- package/dist/runtime/components/InputDate.vue +6 -6
- package/dist/runtime/components/InputMenu.d.vue.ts +3 -3
- package/dist/runtime/components/InputMenu.vue +40 -38
- package/dist/runtime/components/InputMenu.vue.d.ts +3 -3
- package/dist/runtime/components/InputNumber.vue +2 -2
- package/dist/runtime/components/InputTags.vue +2 -2
- package/dist/runtime/components/InputTime.vue +2 -2
- package/dist/runtime/components/Link.d.vue.ts +10 -1
- package/dist/runtime/components/Link.vue +74 -9
- package/dist/runtime/components/Link.vue.d.ts +10 -1
- package/dist/runtime/components/Listbox.d.vue.ts +228 -0
- package/dist/runtime/components/Listbox.vue +242 -0
- package/dist/runtime/components/Listbox.vue.d.ts +228 -0
- package/dist/runtime/components/Modal.vue +13 -10
- package/dist/runtime/components/Popover.vue +7 -4
- package/dist/runtime/components/PricingTable.vue +60 -58
- package/dist/runtime/components/RadioGroup.vue +5 -3
- package/dist/runtime/components/Select.d.vue.ts +1 -1
- package/dist/runtime/components/Select.vue +84 -73
- package/dist/runtime/components/Select.vue.d.ts +1 -1
- package/dist/runtime/components/SelectMenu.d.vue.ts +3 -3
- package/dist/runtime/components/SelectMenu.vue +54 -52
- package/dist/runtime/components/SelectMenu.vue.d.ts +3 -3
- package/dist/runtime/components/Sidebar.vue +1 -4
- package/dist/runtime/components/Slideover.vue +67 -64
- package/dist/runtime/components/Table.d.vue.ts +1 -2
- package/dist/runtime/components/Table.vue +17 -29
- package/dist/runtime/components/Table.vue.d.ts +1 -2
- package/dist/runtime/components/Tabs.d.vue.ts +5 -1
- package/dist/runtime/components/Tabs.vue +2 -2
- package/dist/runtime/components/Tabs.vue.d.ts +5 -1
- package/dist/runtime/components/Textarea.d.vue.ts +1 -0
- package/dist/runtime/components/Textarea.vue +2 -1
- package/dist/runtime/components/Textarea.vue.d.ts +1 -0
- package/dist/runtime/components/Tooltip.vue +12 -9
- package/dist/runtime/components/content/ContentSearch.d.vue.ts +19 -35
- package/dist/runtime/components/content/ContentSearch.vue +10 -9
- package/dist/runtime/components/content/ContentSearch.vue.d.ts +19 -35
- package/dist/runtime/components/content/ContentToc.vue +19 -9
- package/dist/runtime/components/prose/Img.vue +7 -1
- package/dist/runtime/components/prose/Pre.vue +8 -3
- package/dist/runtime/components/prose/Prompt.d.vue.ts +32 -0
- package/dist/runtime/components/prose/Prompt.vue +88 -0
- package/dist/runtime/components/prose/Prompt.vue.d.ts +32 -0
- package/dist/runtime/composables/index.d.ts +1 -0
- package/dist/runtime/composables/index.js +1 -0
- package/dist/runtime/composables/useContentSearch.js +19 -5
- package/dist/runtime/composables/useEditorMenu.d.ts +5 -0
- package/dist/runtime/composables/useEditorMenu.js +3 -1
- package/dist/runtime/composables/useFieldGroup.d.ts +3 -0
- package/dist/runtime/composables/useFieldGroup.js +11 -1
- package/dist/runtime/composables/useResolvedVariants.d.ts +21 -0
- package/dist/runtime/composables/useResolvedVariants.js +14 -0
- package/dist/runtime/locale/ar.js +9 -0
- package/dist/runtime/locale/az.js +9 -0
- package/dist/runtime/locale/be.js +9 -0
- package/dist/runtime/locale/bg.js +9 -0
- package/dist/runtime/locale/bn.js +9 -0
- package/dist/runtime/locale/ca.js +9 -0
- package/dist/runtime/locale/ckb.js +10 -1
- package/dist/runtime/locale/cs.js +9 -0
- package/dist/runtime/locale/da.js +9 -0
- package/dist/runtime/locale/de.js +9 -0
- package/dist/runtime/locale/de_ch.js +9 -0
- package/dist/runtime/locale/el.js +9 -0
- package/dist/runtime/locale/en.js +10 -1
- package/dist/runtime/locale/es.js +9 -0
- package/dist/runtime/locale/et.js +9 -0
- package/dist/runtime/locale/eu.js +11 -2
- package/dist/runtime/locale/fa_ir.js +9 -0
- package/dist/runtime/locale/fi.js +9 -0
- package/dist/runtime/locale/fr.js +9 -0
- package/dist/runtime/locale/gl.js +9 -0
- package/dist/runtime/locale/he.js +9 -0
- package/dist/runtime/locale/hi.js +9 -0
- package/dist/runtime/locale/hr.js +9 -0
- package/dist/runtime/locale/hu.js +9 -0
- package/dist/runtime/locale/hy.js +9 -0
- package/dist/runtime/locale/id.js +9 -0
- package/dist/runtime/locale/is.js +9 -0
- package/dist/runtime/locale/it.js +9 -0
- package/dist/runtime/locale/ja.js +9 -0
- package/dist/runtime/locale/ka.js +9 -0
- package/dist/runtime/locale/kk.js +9 -0
- package/dist/runtime/locale/km.js +9 -0
- package/dist/runtime/locale/ko.js +9 -0
- package/dist/runtime/locale/ky.js +9 -0
- package/dist/runtime/locale/lb.js +11 -2
- package/dist/runtime/locale/lo.js +15 -6
- package/dist/runtime/locale/lt.js +9 -0
- package/dist/runtime/locale/mn.js +9 -0
- package/dist/runtime/locale/ms.js +9 -0
- package/dist/runtime/locale/nb_no.js +9 -0
- package/dist/runtime/locale/nl.js +9 -0
- package/dist/runtime/locale/pl.js +9 -0
- package/dist/runtime/locale/pt.js +9 -0
- package/dist/runtime/locale/pt_br.js +9 -0
- package/dist/runtime/locale/ro.js +9 -0
- package/dist/runtime/locale/ru.js +9 -0
- package/dist/runtime/locale/sk.js +9 -0
- package/dist/runtime/locale/sl.js +9 -0
- package/dist/runtime/locale/sq.js +9 -0
- package/dist/runtime/locale/sv.js +9 -0
- package/dist/runtime/locale/th.js +9 -0
- package/dist/runtime/locale/tj.js +9 -0
- package/dist/runtime/locale/tr.js +9 -0
- package/dist/runtime/locale/ug_cn.js +9 -0
- package/dist/runtime/locale/uk.js +9 -0
- package/dist/runtime/locale/ur.js +9 -0
- package/dist/runtime/locale/uz.js +9 -0
- package/dist/runtime/locale/vi.js +9 -0
- package/dist/runtime/locale/zh_cn.js +9 -0
- package/dist/runtime/locale/zh_tw.js +9 -0
- package/dist/runtime/plugins/colors.js +1 -1
- package/dist/runtime/types/index.d.ts +1 -0
- package/dist/runtime/types/index.js +1 -0
- package/dist/runtime/types/locale.d.ts +9 -0
- package/dist/runtime/types/prose.d.ts +1 -0
- package/dist/runtime/types/prose.js +1 -0
- package/dist/runtime/utils/link.d.ts +1 -1
- package/dist/runtime/utils/link.js +1 -0
- package/dist/runtime/vue/overrides/inertia/Link.vue +3 -3
- package/dist/runtime/vue/overrides/none/Link.vue +3 -2
- package/dist/runtime/vue/overrides/vue-router/Link.vue +27 -31
- package/dist/shared/{ui.DJUbBpE2.mjs → ui.C6mn7iap.mjs} +189 -37
- package/dist/unplugin.mjs +1 -1
- package/dist/vite.mjs +1 -1
- package/package.json +49 -40
|
@@ -9,6 +9,7 @@ import { DropdownMenu } from "reka-ui/namespaced";
|
|
|
9
9
|
import { useForwardPropsEmits } from "reka-ui";
|
|
10
10
|
import { reactiveOmit, createReusableTemplate } from "@vueuse/core";
|
|
11
11
|
import { useAppConfig } from "#imports";
|
|
12
|
+
import { FieldGroupReset } from "../composables/useFieldGroup";
|
|
12
13
|
import { useFilter } from "../composables/useFilter";
|
|
13
14
|
import { useLocale } from "../composables/useLocale";
|
|
14
15
|
import { usePortal } from "../composables/usePortal";
|
|
@@ -136,103 +137,105 @@ const hasFilteredItems = computed(() => filteredGroups.value.some((group) => gro
|
|
|
136
137
|
</DefineItemTemplate>
|
|
137
138
|
|
|
138
139
|
<DropdownMenu.Portal v-bind="portalProps">
|
|
139
|
-
<
|
|
140
|
-
<DropdownMenu.
|
|
141
|
-
<
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
140
|
+
<FieldGroupReset>
|
|
141
|
+
<component :is="sub ? DropdownMenu.SubContent : DropdownMenu.Content" data-slot="content" :class="ui.content({ class: [uiOverride?.content, props.class] })" v-bind="contentProps">
|
|
142
|
+
<DropdownMenu.Filter v-if="!!filter" v-model="searchTerm" as-child>
|
|
143
|
+
<UInput
|
|
144
|
+
autofocus
|
|
145
|
+
autocomplete="off"
|
|
146
|
+
:size="size"
|
|
147
|
+
v-bind="inputProps"
|
|
148
|
+
data-slot="input"
|
|
149
|
+
:class="ui.input({ class: uiOverride?.input })"
|
|
150
|
+
@change.stop
|
|
151
|
+
/>
|
|
152
|
+
</DropdownMenu.Filter>
|
|
151
153
|
|
|
152
|
-
|
|
154
|
+
<slot name="content-top" :sub="sub ?? false" />
|
|
153
155
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
<ReuseItemTemplate :item="item" :index="index" />
|
|
159
|
-
</DropdownMenu.Label>
|
|
160
|
-
<DropdownMenu.Separator v-else-if="item.type === 'separator'" data-slot="separator" :class="ui.separator({ class: [uiOverride?.separator, item.ui?.separator, item.class] })" />
|
|
161
|
-
<DropdownMenu.Sub v-else-if="item?.children?.length" :open="item.open" :default-open="item.defaultOpen">
|
|
162
|
-
<DropdownMenu.SubTrigger
|
|
163
|
-
as="button"
|
|
164
|
-
type="button"
|
|
165
|
-
:disabled="item.disabled"
|
|
166
|
-
:text-value="get(item, props.labelKey)"
|
|
167
|
-
data-slot="item"
|
|
168
|
-
:class="ui.item({ class: [uiOverride?.item, item.ui?.item, item.class], color: item?.color })"
|
|
169
|
-
>
|
|
156
|
+
<div v-if="!searchTerm || hasFilteredItems" role="presentation" data-slot="viewport" :class="ui.viewport({ class: uiOverride?.viewport })">
|
|
157
|
+
<DropdownMenu.Group v-for="(group, groupIndex) in filteredGroups" :key="`group-${groupIndex}`" data-slot="group" :class="ui.group({ class: uiOverride?.group })">
|
|
158
|
+
<template v-for="(item, index) in group" :key="`group-${groupIndex}-${index}`">
|
|
159
|
+
<DropdownMenu.Label v-if="item.type === 'label'" data-slot="label" :class="ui.label({ class: [uiOverride?.label, item.ui?.label, item.class] })">
|
|
170
160
|
<ReuseItemTemplate :item="item" :index="index" />
|
|
171
|
-
</DropdownMenu.
|
|
161
|
+
</DropdownMenu.Label>
|
|
162
|
+
<DropdownMenu.Separator v-else-if="item.type === 'separator'" data-slot="separator" :class="ui.separator({ class: [uiOverride?.separator, item.ui?.separator, item.class] })" />
|
|
163
|
+
<DropdownMenu.Sub v-else-if="item?.children?.length" :open="item.open" :default-open="item.defaultOpen">
|
|
164
|
+
<DropdownMenu.SubTrigger
|
|
165
|
+
as="button"
|
|
166
|
+
type="button"
|
|
167
|
+
:disabled="item.disabled"
|
|
168
|
+
:text-value="get(item, props.labelKey)"
|
|
169
|
+
data-slot="item"
|
|
170
|
+
:class="ui.item({ class: [uiOverride?.item, item.ui?.item, item.class], color: item?.color })"
|
|
171
|
+
>
|
|
172
|
+
<ReuseItemTemplate :item="item" :index="index" />
|
|
173
|
+
</DropdownMenu.SubTrigger>
|
|
172
174
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
:disabled="item.disabled"
|
|
203
|
-
:text-value="get(item, props.labelKey)"
|
|
204
|
-
data-slot="item"
|
|
205
|
-
:class="ui.item({ class: [uiOverride?.item, item.ui?.item, item.class], color: item?.color })"
|
|
206
|
-
@update:model-value="item.onUpdateChecked"
|
|
207
|
-
@select="item.onSelect"
|
|
208
|
-
>
|
|
209
|
-
<ReuseItemTemplate :item="item" :index="index" />
|
|
210
|
-
</DropdownMenu.CheckboxItem>
|
|
211
|
-
<ULink v-else v-slot="{ active, ...slotProps }" v-bind="pickLinkProps(item)" custom>
|
|
212
|
-
<DropdownMenu.Item
|
|
213
|
-
as-child
|
|
175
|
+
<UDropdownMenuContent
|
|
176
|
+
sub
|
|
177
|
+
:class="item.ui?.content"
|
|
178
|
+
:ui="ui"
|
|
179
|
+
:ui-override="uiOverride"
|
|
180
|
+
:portal="portal"
|
|
181
|
+
:items="item.children"
|
|
182
|
+
align="start"
|
|
183
|
+
:align-offset="-4"
|
|
184
|
+
:side-offset="3"
|
|
185
|
+
:label-key="labelKey"
|
|
186
|
+
:description-key="descriptionKey"
|
|
187
|
+
:checked-icon="checkedIcon"
|
|
188
|
+
:loading-icon="loadingIcon"
|
|
189
|
+
:external-icon="externalIcon"
|
|
190
|
+
:size="size"
|
|
191
|
+
:filter="item.filter"
|
|
192
|
+
:filter-fields="item.filterFields || filterFields"
|
|
193
|
+
:ignore-filter="item.ignoreFilter ?? ignoreFilter"
|
|
194
|
+
v-bind="item.content"
|
|
195
|
+
>
|
|
196
|
+
<template v-for="(_, name) in getProxySlots()" #[name]="slotData">
|
|
197
|
+
<slot :name="name" v-bind="slotData" />
|
|
198
|
+
</template>
|
|
199
|
+
</UDropdownMenuContent>
|
|
200
|
+
</DropdownMenu.Sub>
|
|
201
|
+
<DropdownMenu.CheckboxItem
|
|
202
|
+
v-else-if="item.type === 'checkbox'"
|
|
203
|
+
:model-value="item.checked"
|
|
214
204
|
:disabled="item.disabled"
|
|
215
205
|
:text-value="get(item, props.labelKey)"
|
|
206
|
+
data-slot="item"
|
|
207
|
+
:class="ui.item({ class: [uiOverride?.item, item.ui?.item, item.class], color: item?.color })"
|
|
208
|
+
@update:model-value="item.onUpdateChecked"
|
|
216
209
|
@select="item.onSelect"
|
|
217
210
|
>
|
|
218
|
-
<
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
211
|
+
<ReuseItemTemplate :item="item" :index="index" />
|
|
212
|
+
</DropdownMenu.CheckboxItem>
|
|
213
|
+
<ULink v-else v-slot="{ active, ...slotProps }" v-bind="pickLinkProps(item)" custom>
|
|
214
|
+
<DropdownMenu.Item
|
|
215
|
+
as-child
|
|
216
|
+
:disabled="item.disabled"
|
|
217
|
+
:text-value="get(item, props.labelKey)"
|
|
218
|
+
@select="item.onSelect"
|
|
219
|
+
>
|
|
220
|
+
<ULinkBase v-bind="slotProps" data-slot="item" :class="ui.item({ class: [uiOverride?.item, item.ui?.item, item.class], color: item?.color, active })">
|
|
221
|
+
<ReuseItemTemplate :item="item" :active="active" :index="index" />
|
|
222
|
+
</ULinkBase>
|
|
223
|
+
</DropdownMenu.Item>
|
|
224
|
+
</ULink>
|
|
225
|
+
</template>
|
|
226
|
+
</DropdownMenu.Group>
|
|
227
|
+
</div>
|
|
226
228
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
229
|
+
<div v-if="searchTerm && !hasFilteredItems" data-slot="empty" :class="ui.empty({ class: uiOverride?.empty })">
|
|
230
|
+
<slot name="empty" :search-term="searchTerm">
|
|
231
|
+
{{ t("dropdownMenu.noMatch", { searchTerm }) }}
|
|
232
|
+
</slot>
|
|
233
|
+
</div>
|
|
232
234
|
|
|
233
|
-
|
|
235
|
+
<slot />
|
|
234
236
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
+
<slot name="content-bottom" :sub="sub ?? false" />
|
|
238
|
+
</component>
|
|
239
|
+
</FieldGroupReset>
|
|
237
240
|
</DropdownMenu.Portal>
|
|
238
241
|
</template>
|
|
@@ -12,7 +12,7 @@ export interface EditorEmojiMenuItem {
|
|
|
12
12
|
fallbackImage?: string;
|
|
13
13
|
[key: string]: any;
|
|
14
14
|
}
|
|
15
|
-
export interface EditorEmojiMenuProps<T extends EditorEmojiMenuItem = EditorEmojiMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo'>> {
|
|
15
|
+
export interface EditorEmojiMenuProps<T extends EditorEmojiMenuItem = EditorEmojiMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo'>> {
|
|
16
16
|
/**
|
|
17
17
|
* @defaultValue 'md'
|
|
18
18
|
*/
|
|
@@ -19,6 +19,7 @@ const props = defineProps({
|
|
|
19
19
|
filterFields: { type: Array, required: false, default: () => ["name", "shortcodes", "tags"] },
|
|
20
20
|
limit: { type: Number, required: false },
|
|
21
21
|
options: { type: Object, required: false },
|
|
22
|
+
suggestion: { type: Object, required: false },
|
|
22
23
|
appendTo: { type: Function, required: false, skipCheck: true }
|
|
23
24
|
});
|
|
24
25
|
const appConfig = useAppConfig();
|
|
@@ -39,6 +40,7 @@ onMounted(async () => {
|
|
|
39
40
|
filterFields: props.filterFields,
|
|
40
41
|
limit: props.limit,
|
|
41
42
|
options: props.options,
|
|
43
|
+
suggestion: props.suggestion,
|
|
42
44
|
appendTo: props.appendTo,
|
|
43
45
|
ui,
|
|
44
46
|
onSelect: (editor, range, item) => {
|
|
@@ -12,7 +12,7 @@ export interface EditorEmojiMenuItem {
|
|
|
12
12
|
fallbackImage?: string;
|
|
13
13
|
[key: string]: any;
|
|
14
14
|
}
|
|
15
|
-
export interface EditorEmojiMenuProps<T extends EditorEmojiMenuItem = EditorEmojiMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo'>> {
|
|
15
|
+
export interface EditorEmojiMenuProps<T extends EditorEmojiMenuItem = EditorEmojiMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo'>> {
|
|
16
16
|
/**
|
|
17
17
|
* @defaultValue 'md'
|
|
18
18
|
*/
|
|
@@ -16,7 +16,7 @@ export interface EditorMentionMenuItem {
|
|
|
16
16
|
class?: any;
|
|
17
17
|
[key: string]: any;
|
|
18
18
|
}
|
|
19
|
-
export interface EditorMentionMenuProps<T extends EditorMentionMenuItem = EditorMentionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo' | 'ignoreFilter'>> {
|
|
19
|
+
export interface EditorMentionMenuProps<T extends EditorMentionMenuItem = EditorMentionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo' | 'ignoreFilter'>> {
|
|
20
20
|
/**
|
|
21
21
|
* @defaultValue 'md'
|
|
22
22
|
*/
|
|
@@ -21,6 +21,7 @@ const props = defineProps({
|
|
|
21
21
|
filterFields: { type: Array, required: false },
|
|
22
22
|
limit: { type: Number, required: false },
|
|
23
23
|
options: { type: Object, required: false },
|
|
24
|
+
suggestion: { type: Object, required: false },
|
|
24
25
|
appendTo: { type: Function, required: false, skipCheck: true },
|
|
25
26
|
ignoreFilter: { type: Boolean, required: false }
|
|
26
27
|
});
|
|
@@ -44,6 +45,7 @@ onMounted(async () => {
|
|
|
44
45
|
ignoreFilter: props.ignoreFilter,
|
|
45
46
|
limit: props.limit,
|
|
46
47
|
options: props.options,
|
|
48
|
+
suggestion: props.suggestion,
|
|
47
49
|
appendTo: props.appendTo,
|
|
48
50
|
searchTerm,
|
|
49
51
|
ui,
|
|
@@ -16,7 +16,7 @@ export interface EditorMentionMenuItem {
|
|
|
16
16
|
class?: any;
|
|
17
17
|
[key: string]: any;
|
|
18
18
|
}
|
|
19
|
-
export interface EditorMentionMenuProps<T extends EditorMentionMenuItem = EditorMentionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo' | 'ignoreFilter'>> {
|
|
19
|
+
export interface EditorMentionMenuProps<T extends EditorMentionMenuItem = EditorMentionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo' | 'ignoreFilter'>> {
|
|
20
20
|
/**
|
|
21
21
|
* @defaultValue 'md'
|
|
22
22
|
*/
|
|
@@ -29,7 +29,7 @@ type EditorSuggestionMenuActionItem<H extends EditorCustomHandlers = EditorCusto
|
|
|
29
29
|
[key: string]: any;
|
|
30
30
|
} & EditorItem<H>;
|
|
31
31
|
export type EditorSuggestionMenuItem<H extends EditorCustomHandlers = EditorCustomHandlers> = EditorSuggestionMenuLabelItem | EditorSuggestionMenuSeparatorItem | EditorSuggestionMenuActionItem<H>;
|
|
32
|
-
export interface EditorSuggestionMenuProps<T extends EditorSuggestionMenuItem = EditorSuggestionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo'>> {
|
|
32
|
+
export interface EditorSuggestionMenuProps<T extends EditorSuggestionMenuItem = EditorSuggestionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo'>> {
|
|
33
33
|
/**
|
|
34
34
|
* @defaultValue 'md'
|
|
35
35
|
*/
|
|
@@ -21,6 +21,7 @@ const props = defineProps({
|
|
|
21
21
|
filterFields: { type: Array, required: false },
|
|
22
22
|
limit: { type: Number, required: false },
|
|
23
23
|
options: { type: Object, required: false },
|
|
24
|
+
suggestion: { type: Object, required: false },
|
|
24
25
|
appendTo: { type: Function, required: false, skipCheck: true }
|
|
25
26
|
});
|
|
26
27
|
const appConfig = useAppConfig();
|
|
@@ -42,6 +43,7 @@ onMounted(async () => {
|
|
|
42
43
|
filterFields: props.filterFields,
|
|
43
44
|
limit: props.limit,
|
|
44
45
|
options: props.options,
|
|
46
|
+
suggestion: props.suggestion,
|
|
45
47
|
appendTo: props.appendTo,
|
|
46
48
|
ui,
|
|
47
49
|
onSelect: (editor, range, item) => {
|
|
@@ -29,7 +29,7 @@ type EditorSuggestionMenuActionItem<H extends EditorCustomHandlers = EditorCusto
|
|
|
29
29
|
[key: string]: any;
|
|
30
30
|
} & EditorItem<H>;
|
|
31
31
|
export type EditorSuggestionMenuItem<H extends EditorCustomHandlers = EditorCustomHandlers> = EditorSuggestionMenuLabelItem | EditorSuggestionMenuSeparatorItem | EditorSuggestionMenuActionItem<H>;
|
|
32
|
-
export interface EditorSuggestionMenuProps<T extends EditorSuggestionMenuItem = EditorSuggestionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'appendTo'>> {
|
|
32
|
+
export interface EditorSuggestionMenuProps<T extends EditorSuggestionMenuItem = EditorSuggestionMenuItem> extends Partial<Pick<EditorMenuOptions<T>, 'editor' | 'char' | 'pluginKey' | 'filterFields' | 'limit' | 'options' | 'suggestion' | 'appendTo'>> {
|
|
33
33
|
/**
|
|
34
34
|
* @defaultValue 'md'
|
|
35
35
|
*/
|
|
@@ -9,6 +9,7 @@ import { createReusableTemplate } from "@vueuse/core";
|
|
|
9
9
|
import { useAppConfig } from "#imports";
|
|
10
10
|
import { useLocale } from "../composables/useLocale";
|
|
11
11
|
import { useComponentUI } from "../composables/useComponentUI";
|
|
12
|
+
import { useResolvedVariants } from "../composables/useResolvedVariants";
|
|
12
13
|
import { useFormField } from "../composables/useFormField";
|
|
13
14
|
import { useFileUpload } from "../composables/useFileUpload";
|
|
14
15
|
import { tv } from "../utils/tv";
|
|
@@ -59,9 +60,10 @@ const { isDragging, open, inputRef, dropzoneRef } = useFileUpload({
|
|
|
59
60
|
dropzone: props.dropzone,
|
|
60
61
|
onUpdate
|
|
61
62
|
});
|
|
62
|
-
const { emitFormInput, emitFormChange, id, name, disabled, ariaAttrs } = useFormField(props);
|
|
63
|
-
const variant =
|
|
64
|
-
const
|
|
63
|
+
const { emitFormInput, emitFormChange, id, name, color, highlight, disabled, ariaAttrs } = useFormField(props);
|
|
64
|
+
const { variant: resolvedVariant } = useResolvedVariants("fileUpload", props, theme, ["variant"]);
|
|
65
|
+
const variant = computed(() => props.multiple ? "area" : resolvedVariant.value);
|
|
66
|
+
const layout = computed(() => resolvedVariant.value === "button" && !props.multiple ? "grid" : props.layout);
|
|
65
67
|
const position = computed(() => {
|
|
66
68
|
if (layout.value === "grid" && props.multiple) {
|
|
67
69
|
return "inside";
|
|
@@ -74,13 +76,13 @@ const position = computed(() => {
|
|
|
74
76
|
const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.fileUpload || {} })({
|
|
75
77
|
dropzone: props.dropzone,
|
|
76
78
|
interactive: props.interactive,
|
|
77
|
-
color:
|
|
79
|
+
color: color.value,
|
|
78
80
|
size: props.size,
|
|
79
81
|
variant: variant.value,
|
|
80
82
|
layout: layout.value,
|
|
81
83
|
position: position.value,
|
|
82
84
|
multiple: props.multiple,
|
|
83
|
-
highlight:
|
|
85
|
+
highlight: highlight.value,
|
|
84
86
|
disabled: props.disabled
|
|
85
87
|
}));
|
|
86
88
|
function createObjectUrl(file) {
|
|
@@ -11,7 +11,7 @@ export interface FormFieldProps {
|
|
|
11
11
|
as?: any;
|
|
12
12
|
/** The name of the FormField. Also used to match form errors. */
|
|
13
13
|
name?: string;
|
|
14
|
-
/** A regular expression to match form error names. */
|
|
14
|
+
/** A regular expression to match form error names. Useful for components with array values such as InputTags, where errors include array indices in their name (e.g. `tags.0`). */
|
|
15
15
|
errorPattern?: RegExp;
|
|
16
16
|
label?: string;
|
|
17
17
|
description?: string;
|
|
@@ -11,7 +11,7 @@ export interface FormFieldProps {
|
|
|
11
11
|
as?: any;
|
|
12
12
|
/** The name of the FormField. Also used to match form errors. */
|
|
13
13
|
name?: string;
|
|
14
|
-
/** A regular expression to match form error names. */
|
|
14
|
+
/** A regular expression to match form error names. Useful for components with array values such as InputTags, where errors include array indices in their name (e.g. `tags.0`). */
|
|
15
15
|
errorPattern?: RegExp;
|
|
16
16
|
label?: string;
|
|
17
17
|
description?: string;
|
|
@@ -54,11 +54,7 @@ const Menu = computed(() => ({
|
|
|
54
54
|
modal: UModal,
|
|
55
55
|
drawer: UDrawer
|
|
56
56
|
})[props.mode]);
|
|
57
|
-
const menuProps = toRef(() => defu(props.menu, {
|
|
58
|
-
content: {
|
|
59
|
-
onOpenAutoFocus: (e) => e.preventDefault()
|
|
60
|
-
}
|
|
61
|
-
}, props.mode === "modal" ? { fullscreen: true, transition: false } : {}));
|
|
57
|
+
const menuProps = toRef(() => defu(props.menu, {}, props.mode === "modal" ? { fullscreen: true, transition: false } : {}));
|
|
62
58
|
function toggleOpen() {
|
|
63
59
|
open.value = !open.value;
|
|
64
60
|
}
|
|
@@ -51,10 +51,10 @@ const slots = defineSlots();
|
|
|
51
51
|
const modelValue = useVModel(props, "modelValue", emits, { defaultValue: props.defaultValue });
|
|
52
52
|
const appConfig = useAppConfig();
|
|
53
53
|
const uiProp = useComponentUI("input", props);
|
|
54
|
-
const { emitFormBlur, emitFormInput, emitFormChange, size:
|
|
54
|
+
const { emitFormBlur, emitFormInput, emitFormChange, size: formFieldSize, color, id, name, highlight, disabled, emitFormFocus, ariaAttrs } = useFormField(props, { deferInputValidation: true });
|
|
55
55
|
const { orientation, size: fieldGroupSize } = useFieldGroup(props);
|
|
56
56
|
const { isLeading, isTrailing, leadingIconName, trailingIconName } = useComponentIcons(props);
|
|
57
|
-
const inputSize = computed(() => fieldGroupSize.value ||
|
|
57
|
+
const inputSize = computed(() => fieldGroupSize.value || formFieldSize.value);
|
|
58
58
|
const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.input || {} })({
|
|
59
59
|
type: props.type,
|
|
60
60
|
color: color.value,
|
|
@@ -39,14 +39,14 @@ const props = defineProps({
|
|
|
39
39
|
trailingIcon: { type: null, required: false },
|
|
40
40
|
loading: { type: Boolean, required: false },
|
|
41
41
|
loadingIcon: { type: null, required: false },
|
|
42
|
-
defaultPlaceholder: { type:
|
|
43
|
-
placeholder: { type:
|
|
42
|
+
defaultPlaceholder: { type: Object, required: false },
|
|
43
|
+
placeholder: { type: Object, required: false },
|
|
44
44
|
hourCycle: { type: null, required: false },
|
|
45
45
|
step: { type: Object, required: false },
|
|
46
46
|
granularity: { type: String, required: false },
|
|
47
47
|
hideTimeZone: { type: Boolean, required: false },
|
|
48
|
-
maxValue: { type:
|
|
49
|
-
minValue: { type:
|
|
48
|
+
maxValue: { type: Object, required: false },
|
|
49
|
+
minValue: { type: Object, required: false },
|
|
50
50
|
disabled: { type: Boolean, required: false },
|
|
51
51
|
readonly: { type: Boolean, required: false },
|
|
52
52
|
isDateUnavailable: { type: Function, required: false },
|
|
@@ -59,11 +59,11 @@ const slots = defineSlots();
|
|
|
59
59
|
const appConfig = useAppConfig();
|
|
60
60
|
const uiProp = useComponentUI("inputDate", props);
|
|
61
61
|
const rootProps = useForwardPropsEmits(reactiveOmit(props, "id", "name", "range", "modelValue", "defaultValue", "color", "variant", "size", "highlight", "fixed", "disabled", "autofocus", "autofocusDelay", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "separatorIcon", "class", "ui"), emits);
|
|
62
|
-
const { emitFormBlur, emitFormFocus, emitFormChange, emitFormInput, size:
|
|
62
|
+
const { emitFormBlur, emitFormFocus, emitFormChange, emitFormInput, size: formFieldSize, color, id, name, highlight, disabled, ariaAttrs } = useFormField(props);
|
|
63
63
|
const { orientation, size: fieldGroupSize } = useFieldGroup(props);
|
|
64
64
|
const { isLeading, isTrailing, leadingIconName, trailingIconName } = useComponentIcons(props);
|
|
65
65
|
const [DefineSegmentsTemplate, ReuseSegmentsTemplate] = createReusableTemplate();
|
|
66
|
-
const inputSize = computed(() => fieldGroupSize.value ||
|
|
66
|
+
const inputSize = computed(() => fieldGroupSize.value || formFieldSize.value);
|
|
67
67
|
const ui = computed(() => tv({ extend: tv(theme), ...appConfig.ui?.inputDate || {} })({
|
|
68
68
|
color: color.value,
|
|
69
69
|
variant: props.variant,
|
|
@@ -241,7 +241,6 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
241
241
|
props: import("vue").PublicProps & __VLS_PrettifyLocal<(InputMenuProps<T, VK, M, Mod, C> & {
|
|
242
242
|
searchTerm?: string;
|
|
243
243
|
}) & {
|
|
244
|
-
onClear?: (() => any) | undefined;
|
|
245
244
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
246
245
|
onChange?: ((event: Event) => any) | undefined;
|
|
247
246
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
@@ -269,6 +268,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
269
268
|
nullable: true;
|
|
270
269
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | IsClearUsed<M, C>;
|
|
271
270
|
} | undefined) => any) | undefined;
|
|
271
|
+
onClear?: (() => any) | undefined;
|
|
272
272
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
273
273
|
onCreate?: ((item: string) => any) | undefined;
|
|
274
274
|
"onUpdate:modelValue"?: ((value: (Mod extends {
|
|
@@ -323,7 +323,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
323
323
|
}>) => void;
|
|
324
324
|
attrs: any;
|
|
325
325
|
slots: InputMenuSlots<T, VK, M, Mod, C, NestedItem<T>>;
|
|
326
|
-
emit: (((evt: "
|
|
326
|
+
emit: (((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "highlight", payload: {
|
|
327
327
|
ref: HTMLElement;
|
|
328
328
|
value: (Mod extends {
|
|
329
329
|
number: true;
|
|
@@ -346,7 +346,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
346
346
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | undefined : Mod extends {
|
|
347
347
|
nullable: true;
|
|
348
348
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | IsClearUsed<M, C>;
|
|
349
|
-
} | undefined) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: (Mod extends {
|
|
349
|
+
} | undefined) => void) & ((evt: "clear") => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: (Mod extends {
|
|
350
350
|
number: true;
|
|
351
351
|
} ? (Mod extends {
|
|
352
352
|
optional: true;
|
|
@@ -11,7 +11,7 @@ import { isEqual } from "ohash/utils";
|
|
|
11
11
|
import { reactivePick, reactiveOmit, createReusableTemplate } from "@vueuse/core";
|
|
12
12
|
import { useAppConfig } from "#imports";
|
|
13
13
|
import { useComponentUI } from "../composables/useComponentUI";
|
|
14
|
-
import { useFieldGroup } from "../composables/useFieldGroup";
|
|
14
|
+
import { useFieldGroup, FieldGroupReset } from "../composables/useFieldGroup";
|
|
15
15
|
import { useComponentIcons } from "../composables/useComponentIcons";
|
|
16
16
|
import { useFormField } from "../composables/useFormField";
|
|
17
17
|
import { useFilter } from "../composables/useFilter";
|
|
@@ -100,10 +100,10 @@ const virtualizerProps = toRef(() => {
|
|
|
100
100
|
estimateSize: getEstimateSize(filteredItems.value, inputSize.value || "md", props.descriptionKey, !!slots["item-description"])
|
|
101
101
|
});
|
|
102
102
|
});
|
|
103
|
-
const { emitFormBlur, emitFormFocus, emitFormChange, emitFormInput, size:
|
|
103
|
+
const { emitFormBlur, emitFormFocus, emitFormChange, emitFormInput, size: formFieldSize, color, id, name, highlight, disabled, ariaAttrs } = useFormField(props);
|
|
104
104
|
const { orientation, size: fieldGroupSize } = useFieldGroup(props);
|
|
105
105
|
const { isLeading, isTrailing, leadingIconName, trailingIconName } = useComponentIcons(toRef(() => defu(props, { trailingIcon: appConfig.ui.icons.chevronDown })));
|
|
106
|
-
const inputSize = computed(() => fieldGroupSize.value ||
|
|
106
|
+
const inputSize = computed(() => fieldGroupSize.value || formFieldSize.value);
|
|
107
107
|
const [DefineCreateItemTemplate, ReuseCreateItemTemplate] = createReusableTemplate();
|
|
108
108
|
const [DefineItemTemplate, ReuseItemTemplate] = createReusableTemplate({
|
|
109
109
|
props: {
|
|
@@ -453,50 +453,52 @@ defineExpose({
|
|
|
453
453
|
</Component.Anchor>
|
|
454
454
|
|
|
455
455
|
<Component.Portal v-bind="portalProps">
|
|
456
|
-
<
|
|
457
|
-
<slot
|
|
456
|
+
<FieldGroupReset>
|
|
457
|
+
<Component.Content data-slot="content" :class="ui.content({ class: uiProp?.content })" v-bind="contentProps" @focus-outside.prevent>
|
|
458
|
+
<slot name="content-top" />
|
|
458
459
|
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
460
|
+
<Component.Empty data-slot="empty" :class="ui.empty({ class: uiProp?.empty })">
|
|
461
|
+
<slot name="empty" :search-term="searchTerm">
|
|
462
|
+
{{ searchTerm ? t("inputMenu.noMatch", { searchTerm }) : t("inputMenu.noData") }}
|
|
463
|
+
</slot>
|
|
464
|
+
</Component.Empty>
|
|
464
465
|
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
466
|
+
<div ref="viewportRef" role="presentation" data-slot="viewport" :class="ui.viewport({ class: uiProp?.viewport })">
|
|
467
|
+
<template v-if="!!virtualize">
|
|
468
|
+
<ReuseCreateItemTemplate v-if="createItem && createItemPosition === 'top'" />
|
|
468
469
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
470
|
+
<Component.Virtualizer
|
|
471
|
+
v-slot="{ option: item, virtualItem }"
|
|
472
|
+
:options="filteredItems"
|
|
473
|
+
:text-content="(item2) => isInputItem(item2) ? get(item2, props.labelKey) : String(item2)"
|
|
474
|
+
v-bind="virtualizerProps"
|
|
475
|
+
>
|
|
476
|
+
<ReuseItemTemplate :item="item" :index="virtualItem.index" />
|
|
477
|
+
</Component.Virtualizer>
|
|
477
478
|
|
|
478
|
-
|
|
479
|
-
|
|
479
|
+
<ReuseCreateItemTemplate v-if="createItem && createItemPosition === 'bottom'" />
|
|
480
|
+
</template>
|
|
480
481
|
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
482
|
+
<template v-else>
|
|
483
|
+
<Component.Group v-if="createItem && createItemPosition === 'top'" data-slot="group" :class="ui.group({ class: uiProp?.group })">
|
|
484
|
+
<ReuseCreateItemTemplate />
|
|
485
|
+
</Component.Group>
|
|
485
486
|
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
487
|
+
<Component.Group v-for="(group, groupIndex) in filteredGroups" :key="`group-${groupIndex}`" data-slot="group" :class="ui.group({ class: uiProp?.group })">
|
|
488
|
+
<ReuseItemTemplate v-for="(item, index) in group" :key="`group-${groupIndex}-${index}`" :item="item" :index="index" />
|
|
489
|
+
</Component.Group>
|
|
489
490
|
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
491
|
+
<Component.Group v-if="createItem && createItemPosition === 'bottom'" data-slot="group" :class="ui.group({ class: uiProp?.group })">
|
|
492
|
+
<ReuseCreateItemTemplate />
|
|
493
|
+
</Component.Group>
|
|
494
|
+
</template>
|
|
495
|
+
</div>
|
|
495
496
|
|
|
496
|
-
|
|
497
|
+
<slot name="content-bottom" />
|
|
497
498
|
|
|
498
|
-
|
|
499
|
-
|
|
499
|
+
<Component.Arrow v-if="!!arrow" v-bind="arrowProps" data-slot="arrow" :class="ui.arrow({ class: uiProp?.arrow })" />
|
|
500
|
+
</Component.Content>
|
|
501
|
+
</FieldGroupReset>
|
|
500
502
|
</Component.Portal>
|
|
501
503
|
</Component.Root>
|
|
502
504
|
</template>
|
|
@@ -241,7 +241,6 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
241
241
|
props: import("vue").PublicProps & __VLS_PrettifyLocal<(InputMenuProps<T, VK, M, Mod, C> & {
|
|
242
242
|
searchTerm?: string;
|
|
243
243
|
}) & {
|
|
244
|
-
onClear?: (() => any) | undefined;
|
|
245
244
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
246
245
|
onChange?: ((event: Event) => any) | undefined;
|
|
247
246
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
@@ -269,6 +268,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
269
268
|
nullable: true;
|
|
270
269
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | IsClearUsed<M, C>;
|
|
271
270
|
} | undefined) => any) | undefined;
|
|
271
|
+
onClear?: (() => any) | undefined;
|
|
272
272
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
273
273
|
onCreate?: ((item: string) => any) | undefined;
|
|
274
274
|
"onUpdate:modelValue"?: ((value: (Mod extends {
|
|
@@ -323,7 +323,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
323
323
|
}>) => void;
|
|
324
324
|
attrs: any;
|
|
325
325
|
slots: InputMenuSlots<T, VK, M, Mod, C, NestedItem<T>>;
|
|
326
|
-
emit: (((evt: "
|
|
326
|
+
emit: (((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "highlight", payload: {
|
|
327
327
|
ref: HTMLElement;
|
|
328
328
|
value: (Mod extends {
|
|
329
329
|
number: true;
|
|
@@ -346,7 +346,7 @@ declare const __VLS_export: <T extends ArrayOrNested<InputMenuItem>, VK extends
|
|
|
346
346
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | undefined : Mod extends {
|
|
347
347
|
nullable: true;
|
|
348
348
|
} ? GetModelValue<T, VK, M, ExcludeItem> | null : GetModelValue<T, VK, M, ExcludeItem>) | IsClearUsed<M, C>;
|
|
349
|
-
} | undefined) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: (Mod extends {
|
|
349
|
+
} | undefined) => void) & ((evt: "clear") => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "create", item: string) => void) & ((evt: "update:modelValue", value: (Mod extends {
|
|
350
350
|
number: true;
|
|
351
351
|
} ? (Mod extends {
|
|
352
352
|
optional: true;
|