auto complete
This commit is contained in:
parent
642ccf4c1a
commit
1ee3b2d207
9 changed files with 2166 additions and 2163 deletions
3934
dist/eli-vue.es.js
vendored
3934
dist/eli-vue.es.js
vendored
File diff suppressed because one or more lines are too long
74
dist/eli-vue.umd.js
vendored
74
dist/eli-vue.umd.js
vendored
File diff suppressed because one or more lines are too long
|
|
@ -1,5 +1,6 @@
|
|||
import { type PropType } from "vue";
|
||||
import type { PadroesEntradas } from "./tiposEntradas";
|
||||
import { filtroSelecao } from "./utils/filtroSelecao";
|
||||
type EntradaSelecao = PadroesEntradas["selecao"];
|
||||
type ItemSelecao = {
|
||||
chave: string;
|
||||
|
|
@ -31,6 +32,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
itemProps: import("vue").ComputedRef<((item: ItemSelecao) => {
|
||||
disabled: boolean;
|
||||
}) | undefined>;
|
||||
filtroSelecao: typeof filtroSelecao;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
"update:value": (_v: EntradaSelecao["value"]) => true;
|
||||
input: (_v: EntradaSelecao["value"]) => true;
|
||||
|
|
@ -55,7 +57,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
value: string | null | undefined;
|
||||
}, {}, {
|
||||
VSelect: {
|
||||
VAutocomplete: {
|
||||
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{
|
||||
style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -68,11 +70,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -106,6 +103,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -618,19 +616,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -2286,12 +2286,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -2813,9 +2814,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
});
|
||||
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{
|
||||
"update:focused": (focused: boolean) => true;
|
||||
"update:search": (value: any) => true;
|
||||
"update:modelValue": (value: any) => true;
|
||||
"update:menu": (ue: boolean) => true;
|
||||
"update:search": (value: string) => true;
|
||||
"update:menu": (value: boolean) => true;
|
||||
}, "$children" | "itemProps" | "itemTitle" | "itemValue" | "items" | "modelValue" | "multiple" | "returnObject" | "update:modelValue" | "v-slot:append" | "v-slot:append-inner" | "v-slot:append-item" | "v-slot:chip" | "v-slot:clear" | "v-slot:details" | "v-slot:divider" | "v-slot:item" | "v-slot:label" | "v-slot:loader" | "v-slot:menu-footer" | "v-slot:menu-header" | "v-slot:message" | "v-slot:no-data" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader" | "v-slots">, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
|
||||
style: import("vue").StyleValue;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -2829,11 +2830,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -2868,6 +2864,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}, true, {}, import("vue").SlotsType<Partial<{
|
||||
prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
|
|
@ -2973,11 +2970,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -3011,6 +3003,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -3523,19 +3516,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -5191,12 +5186,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -5729,11 +5725,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -5768,6 +5759,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}>;
|
||||
__isFragment?: undefined;
|
||||
__isTeleport?: undefined;
|
||||
|
|
@ -5784,11 +5776,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -5822,6 +5809,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -6334,19 +6322,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -7937,12 +7927,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
} & import("vue").ComponentCustomProperties, "flat" | "name" | "color" | "type" | "variant" | "disabled" | "loading" | "reverse" | "error" | "label" | "style" | "class" | keyof import("vue").VNodeProps | "centerAffix" | "density" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "theme" | "onUpdate:focused" | "validateOn" | "validationValue" | "maxWidth" | "minWidth" | "width" | "id" | "appendIcon" | "baseColor" | "iconColor" | "prependIcon" | "hideDetails" | "hint" | "onClick:prepend" | "onClick:append" | "$children" | "modelValue" | "onUpdate:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "v-slot:label" | "v-slot:loader" | "role" | "placeholder" | "rounded" | "tile" | "appendInnerIcon" | "bgColor" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "prependInnerIcon" | "singleLine" | "onClick:clear" | "onClick:appendInner" | "onClick:prependInner" | "autocomplete" | "autofocus" | "counter" | "counterValue" | "prefix" | "persistentPlaceholder" | "persistentCounter" | "suffix" | "modelModifiers" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:prepend-inner" | "onClick:control" | "onMousedown:control">, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -8464,9 +8455,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
});
|
||||
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{
|
||||
"update:focused": (focused: boolean) => true;
|
||||
"update:search": (value: any) => true;
|
||||
"update:modelValue": (value: any) => true;
|
||||
"update:menu": (ue: boolean) => true;
|
||||
"update:search": (value: string) => true;
|
||||
"update:menu": (value: boolean) => true;
|
||||
}, "$children" | "modelValue" | "v-slot:append" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "update:modelValue" | "v-slot:label" | "v-slot:loader" | "multiple" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:prepend-inner" | "itemProps" | "itemTitle" | "itemValue" | "items" | "returnObject" | "v-slot:append-item" | "v-slot:chip" | "v-slot:divider" | "v-slot:item" | "v-slot:menu-footer" | "v-slot:menu-header" | "v-slot:no-data" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader">, string, {
|
||||
style: import("vue").StyleValue;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -8480,11 +8471,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -8519,6 +8505,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}, {}, string, import("vue").SlotsType<Partial<{
|
||||
prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
|
|
@ -8605,11 +8592,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new <T extends readonly any[], Item = import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>, ReturnObject extends boolean = false, Multiple extends boolean = false, V extends import("vuetify/lib/components/VSelect/VSelect.mjs").Value<Item, ReturnObject, Multiple> = import("vuetify/lib/components/VSelect/VSelect.mjs").Value<Item, ReturnObject, Multiple>>(props: {
|
||||
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new <T extends readonly any[], Item = import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>, ReturnObject extends boolean = false, Multiple extends boolean = false, V extends import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").Value<Item, ReturnObject, Multiple> = import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").Value<Item, ReturnObject, Multiple>>(props: {
|
||||
items?: T | undefined;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
returnObject?: ReturnObject | undefined;
|
||||
multiple?: Multiple | undefined;
|
||||
modelValue?: V | null | undefined;
|
||||
|
|
@ -8650,9 +8637,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
}) => import("vuetify/lib/util/defineComponent.mjs").GenericProps<{
|
||||
items?: T | undefined;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
returnObject?: ReturnObject | undefined;
|
||||
multiple?: Multiple | undefined;
|
||||
modelValue?: V | null | undefined;
|
||||
|
|
@ -8747,18 +8734,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
minWidth: (NumberConstructor | StringConstructor)[];
|
||||
width: (NumberConstructor | StringConstructor)[];
|
||||
loading: (BooleanConstructor | StringConstructor)[];
|
||||
transition: {
|
||||
type: PropType<string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
default: {
|
||||
component: import("vue").Component;
|
||||
} | NonNullable<string | boolean | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
prependIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
|
|
@ -9356,6 +9331,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
openOnClear: BooleanConstructor;
|
||||
itemColor: StringConstructor;
|
||||
noAutoScroll: BooleanConstructor;
|
||||
autoSelectFirst: {
|
||||
type: PropType<"exact" | boolean>;
|
||||
};
|
||||
clearOnSelect: BooleanConstructor;
|
||||
search: StringConstructor;
|
||||
}, import("vue").ExtractPropTypes<{
|
||||
theme: StringConstructor;
|
||||
|
|
@ -9413,18 +9392,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
minWidth: (NumberConstructor | StringConstructor)[];
|
||||
width: (NumberConstructor | StringConstructor)[];
|
||||
loading: (BooleanConstructor | StringConstructor)[];
|
||||
transition: {
|
||||
type: PropType<string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
default: {
|
||||
component: import("vue").Component;
|
||||
} | NonNullable<string | boolean | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
prependIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
|
|
@ -10022,6 +9989,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
openOnClear: BooleanConstructor;
|
||||
itemColor: StringConstructor;
|
||||
noAutoScroll: BooleanConstructor;
|
||||
autoSelectFirst: {
|
||||
type: PropType<"exact" | boolean>;
|
||||
};
|
||||
clearOnSelect: BooleanConstructor;
|
||||
search: StringConstructor;
|
||||
}>>;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import { type PropType } from "vue";
|
||||
import type { PadroesEntradas } from "./tiposEntradas";
|
||||
import { filtroSelecao } from "./utils/filtroSelecao";
|
||||
type EntradaSelecaoMultipla = PadroesEntradas["selecaoMultipla"];
|
||||
type ItemSelecao = {
|
||||
chave: string;
|
||||
|
|
@ -31,6 +32,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
itemProps: import("vue").ComputedRef<((item: ItemSelecao) => {
|
||||
disabled: boolean;
|
||||
}) | undefined>;
|
||||
filtroSelecao: typeof filtroSelecao;
|
||||
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
||||
"update:value": (_v: EntradaSelecaoMultipla["value"]) => true;
|
||||
input: (_v: EntradaSelecaoMultipla["value"]) => true;
|
||||
|
|
@ -55,7 +57,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}>, {
|
||||
value: string[] | null | undefined;
|
||||
}, {}, {
|
||||
VSelect: {
|
||||
VAutocomplete: {
|
||||
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{
|
||||
style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -68,11 +70,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -106,6 +103,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -618,19 +616,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -2286,12 +2286,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -2813,9 +2814,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
});
|
||||
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{
|
||||
"update:focused": (focused: boolean) => true;
|
||||
"update:search": (value: any) => true;
|
||||
"update:modelValue": (value: any) => true;
|
||||
"update:menu": (ue: boolean) => true;
|
||||
"update:search": (value: string) => true;
|
||||
"update:menu": (value: boolean) => true;
|
||||
}, "$children" | "itemProps" | "itemTitle" | "itemValue" | "items" | "modelValue" | "multiple" | "returnObject" | "update:modelValue" | "v-slot:append" | "v-slot:append-inner" | "v-slot:append-item" | "v-slot:chip" | "v-slot:clear" | "v-slot:details" | "v-slot:divider" | "v-slot:item" | "v-slot:label" | "v-slot:loader" | "v-slot:menu-footer" | "v-slot:menu-header" | "v-slot:message" | "v-slot:no-data" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader" | "v-slots">, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {
|
||||
style: import("vue").StyleValue;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -2829,11 +2830,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -2868,6 +2864,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}, true, {}, import("vue").SlotsType<Partial<{
|
||||
prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
|
|
@ -2973,11 +2970,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -3011,6 +3003,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -3523,19 +3516,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -5191,12 +5186,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -5729,11 +5725,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -5768,6 +5759,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}>;
|
||||
__isFragment?: undefined;
|
||||
__isTeleport?: undefined;
|
||||
|
|
@ -5784,11 +5776,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
rules: readonly (string | boolean | PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult> | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike<import("vuetify/lib/composables/validation.mjs").ValidationResult>) | [string, any, (string | undefined)?])[];
|
||||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -5822,6 +5809,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
} & {
|
||||
theme?: string | undefined;
|
||||
class?: any;
|
||||
|
|
@ -6334,19 +6322,21 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNodeChild) | undefined;
|
||||
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined;
|
||||
itemColor?: string | undefined;
|
||||
autoSelectFirst?: "exact" | boolean | undefined;
|
||||
search?: string | undefined;
|
||||
} & {
|
||||
"onUpdate:focused"?: ((focused: boolean) => any) | undefined;
|
||||
"onUpdate:menu"?: ((ue: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: string) => any) | undefined;
|
||||
"onUpdate:menu"?: ((value: boolean) => any) | undefined;
|
||||
"onUpdate:search"?: ((value: any) => any) | undefined;
|
||||
}, {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -7937,12 +7927,13 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
} & import("vue").ComponentCustomProperties, "flat" | "name" | "color" | "type" | "variant" | "disabled" | "loading" | "reverse" | "error" | "label" | "style" | "class" | keyof import("vue").VNodeProps | "centerAffix" | "density" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "theme" | "onUpdate:focused" | "validateOn" | "validationValue" | "maxWidth" | "minWidth" | "width" | "id" | "appendIcon" | "baseColor" | "iconColor" | "prependIcon" | "hideDetails" | "hint" | "onClick:prepend" | "onClick:append" | "$children" | "modelValue" | "onUpdate:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "v-slot:label" | "v-slot:loader" | "role" | "placeholder" | "rounded" | "tile" | "appendInnerIcon" | "bgColor" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "prependInnerIcon" | "singleLine" | "onClick:clear" | "onClick:appendInner" | "onClick:prependInner" | "autocomplete" | "autofocus" | "counter" | "counterValue" | "prefix" | "persistentPlaceholder" | "persistentCounter" | "suffix" | "modelModifiers" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:prepend-inner" | "onClick:control" | "onMousedown:control">, `$${any}`> & {
|
||||
_allExposed: {
|
||||
isFocused: import("vue").ShallowRef<boolean, boolean>;
|
||||
isPristine: import("vue").ShallowRef<boolean, boolean>;
|
||||
menu: import("vue").WritableComputedRef<boolean, boolean>;
|
||||
search: import("vue").Ref<string | undefined, string | undefined> & {
|
||||
readonly externalValue: string | undefined;
|
||||
};
|
||||
filteredItems: import("vue").ShallowRef<import("vuetify/lib/composables/list-items.mjs").ListItem<any>[], import("vuetify/lib/composables/list-items.mjs").ListItem<any>[]>;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any>, set?: boolean | null) => void;
|
||||
select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem<any> | undefined, set?: boolean | null) => void;
|
||||
} | (HTMLInputElement & Omit<Omit<{
|
||||
$: import("vue").ComponentInternalInstance;
|
||||
$data: {};
|
||||
|
|
@ -8464,9 +8455,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
});
|
||||
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{
|
||||
"update:focused": (focused: boolean) => true;
|
||||
"update:search": (value: any) => true;
|
||||
"update:modelValue": (value: any) => true;
|
||||
"update:menu": (ue: boolean) => true;
|
||||
"update:search": (value: string) => true;
|
||||
"update:menu": (value: boolean) => true;
|
||||
}, "$children" | "modelValue" | "v-slot:append" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "update:modelValue" | "v-slot:label" | "v-slot:loader" | "multiple" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:prepend-inner" | "itemProps" | "itemTitle" | "itemValue" | "items" | "returnObject" | "v-slot:append-item" | "v-slot:chip" | "v-slot:divider" | "v-slot:item" | "v-slot:menu-footer" | "v-slot:menu-header" | "v-slot:no-data" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader">, string, {
|
||||
style: import("vue").StyleValue;
|
||||
filterKeys: import("vuetify/lib/composables/filter.mjs").FilterKeys;
|
||||
|
|
@ -8480,11 +8471,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
density: import("vuetify/lib/composables/density.mjs").Density;
|
||||
rounded: string | number | boolean;
|
||||
tile: boolean;
|
||||
transition: string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null;
|
||||
hideSpinButtons: boolean;
|
||||
persistentHint: boolean;
|
||||
messages: string | readonly string[];
|
||||
|
|
@ -8519,6 +8505,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
noDataText: string;
|
||||
openOnClear: boolean;
|
||||
noAutoScroll: boolean;
|
||||
clearOnSelect: boolean;
|
||||
}, {}, string, import("vue").SlotsType<Partial<{
|
||||
prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
|
|
@ -8605,11 +8592,11 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
}) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
||||
[key: string]: any;
|
||||
}>[];
|
||||
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new <T extends readonly any[], Item = import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>, ReturnObject extends boolean = false, Multiple extends boolean = false, V extends import("vuetify/lib/components/VSelect/VSelect.mjs").Value<Item, ReturnObject, Multiple> = import("vuetify/lib/components/VSelect/VSelect.mjs").Value<Item, ReturnObject, Multiple>>(props: {
|
||||
}>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new <T extends readonly any[], Item = import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>, ReturnObject extends boolean = false, Multiple extends boolean = false, V extends import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").Value<Item, ReturnObject, Multiple> = import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").Value<Item, ReturnObject, Multiple>>(props: {
|
||||
items?: T | undefined;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
returnObject?: ReturnObject | undefined;
|
||||
multiple?: Multiple | undefined;
|
||||
modelValue?: V | null | undefined;
|
||||
|
|
@ -8650,9 +8637,9 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
};
|
||||
}) => import("vuetify/lib/util/defineComponent.mjs").GenericProps<{
|
||||
items?: T | undefined;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VSelect/VSelect.mjs").ItemType<T>>;
|
||||
itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey<import("vuetify/lib/components/VAutocomplete/VAutocomplete.mjs").ItemType<T>>;
|
||||
returnObject?: ReturnObject | undefined;
|
||||
multiple?: Multiple | undefined;
|
||||
modelValue?: V | null | undefined;
|
||||
|
|
@ -8747,18 +8734,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
minWidth: (NumberConstructor | StringConstructor)[];
|
||||
width: (NumberConstructor | StringConstructor)[];
|
||||
loading: (BooleanConstructor | StringConstructor)[];
|
||||
transition: {
|
||||
type: PropType<string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
default: {
|
||||
component: import("vue").Component;
|
||||
} | NonNullable<string | boolean | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
prependIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
|
|
@ -9356,6 +9331,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
openOnClear: BooleanConstructor;
|
||||
itemColor: StringConstructor;
|
||||
noAutoScroll: BooleanConstructor;
|
||||
autoSelectFirst: {
|
||||
type: PropType<"exact" | boolean>;
|
||||
};
|
||||
clearOnSelect: BooleanConstructor;
|
||||
search: StringConstructor;
|
||||
}, import("vue").ExtractPropTypes<{
|
||||
theme: StringConstructor;
|
||||
|
|
@ -9413,18 +9392,6 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
minWidth: (NumberConstructor | StringConstructor)[];
|
||||
width: (NumberConstructor | StringConstructor)[];
|
||||
loading: (BooleanConstructor | StringConstructor)[];
|
||||
transition: {
|
||||
type: PropType<string | boolean | {
|
||||
component: import("vue").Component;
|
||||
} | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
default: {
|
||||
component: import("vue").Component;
|
||||
} | NonNullable<string | boolean | (import("vue").TransitionProps & {
|
||||
component?: import("vue").Component | undefined;
|
||||
}) | null>;
|
||||
};
|
||||
id: StringConstructor;
|
||||
appendIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
prependIcon: PropType<import("vuetify/lib/composables/icons.mjs").IconValue>;
|
||||
|
|
@ -10022,6 +9989,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
|
|||
openOnClear: BooleanConstructor;
|
||||
itemColor: StringConstructor;
|
||||
noAutoScroll: BooleanConstructor;
|
||||
autoSelectFirst: {
|
||||
type: PropType<"exact" | boolean>;
|
||||
};
|
||||
clearOnSelect: BooleanConstructor;
|
||||
search: StringConstructor;
|
||||
}>>;
|
||||
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
|
|
|
|||
15
dist/types/componentes/EliEntrada/utils/filtroSelecao.d.ts
vendored
Normal file
15
dist/types/componentes/EliEntrada/utils/filtroSelecao.d.ts
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
/**
|
||||
* Utilitário de filtragem para os componentes de seleção (EliEntradaSelecao e EliEntradaSelecaoMultipla).
|
||||
*
|
||||
* Normaliza a string removendo acentos e convertendo para minúsculas antes de comparar,
|
||||
* garantindo que "São Paulo" seja encontrado digitando "sao paulo" ou "SÃO PAULO".
|
||||
*/
|
||||
/**
|
||||
* Função de filtro customizada para v-autocomplete do Vuetify.
|
||||
*
|
||||
* Vuetify passa (value, query, item):
|
||||
* - `value` → texto do item renderizado (item-title resolvido)
|
||||
* - `query` → texto digitado pelo usuário
|
||||
* - `item` → objeto completo do item (não usado aqui)
|
||||
*/
|
||||
export declare function filtroSelecao(value: string, query: string): boolean;
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "eli-vue",
|
||||
"version": "0.1.218",
|
||||
"version": "0.1.222",
|
||||
"private": false,
|
||||
"main": "./dist/eli-vue.umd.js",
|
||||
"module": "./dist/eli-vue.es.js",
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<v-select
|
||||
<v-autocomplete
|
||||
v-model="localValue"
|
||||
:label="opcoes?.rotulo"
|
||||
:placeholder="opcoes?.placeholder"
|
||||
|
|
@ -18,6 +18,9 @@
|
|||
:density="opcoes?.densidade ?? 'comfortable'"
|
||||
:variant="opcoes?.variante ?? 'outlined'"
|
||||
:readonly="Boolean(opcoes?.apenasLeitura)"
|
||||
:custom-filter="filtroSelecao"
|
||||
auto-select-first
|
||||
no-data-text="Nenhum resultado encontrado"
|
||||
v-bind="attrs"
|
||||
@focus="() => emit('focus')"
|
||||
@blur="() => emit('blur')"
|
||||
|
|
@ -26,15 +29,16 @@
|
|||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, onMounted, type PropType, ref, watch } from "vue"
|
||||
import { VSelect } from "vuetify/components"
|
||||
import { VAutocomplete } from "vuetify/components"
|
||||
import type { PadroesEntradas } from "./tiposEntradas"
|
||||
import { filtroSelecao } from "./utils/filtroSelecao"
|
||||
|
||||
type EntradaSelecao = PadroesEntradas["selecao"]
|
||||
type ItemSelecao = { chave: string; rotulo: string }
|
||||
|
||||
export default defineComponent({
|
||||
name: "EliEntradaSelecao",
|
||||
components: { VSelect },
|
||||
components: { VAutocomplete },
|
||||
inheritAttrs: false,
|
||||
props: {
|
||||
value: {
|
||||
|
|
@ -109,7 +113,7 @@ export default defineComponent({
|
|||
return (item: ItemSelecao) => ({ disabled: desativados.includes(item.chave) })
|
||||
})
|
||||
|
||||
return { attrs, emit, localValue, itens, carregando, itemProps }
|
||||
return { attrs, emit, localValue, itens, carregando, itemProps, filtroSelecao }
|
||||
},
|
||||
})
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<v-select
|
||||
<v-autocomplete
|
||||
v-model="localValue"
|
||||
:label="opcoes?.rotulo"
|
||||
:placeholder="opcoes?.placeholder"
|
||||
|
|
@ -20,6 +20,8 @@
|
|||
multiple
|
||||
chips
|
||||
closable-chips
|
||||
:custom-filter="filtroSelecao"
|
||||
no-data-text="Nenhum resultado encontrado"
|
||||
:readonly="Boolean(opcoes?.apenasLeitura)"
|
||||
v-bind="attrs"
|
||||
@focus="() => emit('focus')"
|
||||
|
|
@ -29,15 +31,16 @@
|
|||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, onMounted, type PropType, ref, watch } from "vue"
|
||||
import { VSelect } from "vuetify/components"
|
||||
import { VAutocomplete } from "vuetify/components"
|
||||
import type { PadroesEntradas } from "./tiposEntradas"
|
||||
import { filtroSelecao } from "./utils/filtroSelecao"
|
||||
|
||||
type EntradaSelecaoMultipla = PadroesEntradas["selecaoMultipla"]
|
||||
type ItemSelecao = { chave: string; rotulo: string }
|
||||
|
||||
export default defineComponent({
|
||||
name: "EliEntradaSelecaoMultipla",
|
||||
components: { VSelect },
|
||||
components: { VAutocomplete },
|
||||
inheritAttrs: false,
|
||||
props: {
|
||||
value: {
|
||||
|
|
@ -98,7 +101,7 @@ export default defineComponent({
|
|||
return (item: ItemSelecao) => ({ disabled: desativados.includes(item.chave) })
|
||||
})
|
||||
|
||||
return { attrs, emit, localValue, itens, carregando, itemProps }
|
||||
return { attrs, emit, localValue, itens, carregando, itemProps, filtroSelecao }
|
||||
},
|
||||
})
|
||||
</script>
|
||||
|
|
|
|||
27
src/componentes/EliEntrada/utils/filtroSelecao.ts
Normal file
27
src/componentes/EliEntrada/utils/filtroSelecao.ts
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
/**
|
||||
* Utilitário de filtragem para os componentes de seleção (EliEntradaSelecao e EliEntradaSelecaoMultipla).
|
||||
*
|
||||
* Normaliza a string removendo acentos e convertendo para minúsculas antes de comparar,
|
||||
* garantindo que "São Paulo" seja encontrado digitando "sao paulo" ou "SÃO PAULO".
|
||||
*/
|
||||
|
||||
/** Remove acentos e converte para minúsculas para comparação insensível. */
|
||||
function normalizar(texto: string): string {
|
||||
return texto
|
||||
.normalize("NFD") // decompõe caracteres acentuados (ex: "ã" → "a" + diacrítico)
|
||||
.replace(/\p{Diacritic}/gu, "") // remove os diacríticos
|
||||
.toLowerCase()
|
||||
}
|
||||
|
||||
/**
|
||||
* Função de filtro customizada para v-autocomplete do Vuetify.
|
||||
*
|
||||
* Vuetify passa (value, query, item):
|
||||
* - `value` → texto do item renderizado (item-title resolvido)
|
||||
* - `query` → texto digitado pelo usuário
|
||||
* - `item` → objeto completo do item (não usado aqui)
|
||||
*/
|
||||
export function filtroSelecao(value: string, query: string): boolean {
|
||||
if (!query) return true
|
||||
return normalizar(value).includes(normalizar(query))
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue