UNPKG

@gits-id/multi-select

Version:

Vue Multi Select Component

805 lines (804 loc) 25.8 kB
import { nextTick, PropType } from 'vue'; import { FieldOptions } from 'vee-validate'; import '@gits-id/tooltip/dist/style.css'; import { VMultiSelectItem } from './types'; import { type ValidationMode } from '@gits-id/forms'; declare const _default: { new (...args: any[]): { $: import("vue").ComponentInternalInstance; $data: {}; $props: Partial<{ readonly: boolean; label: string; error: boolean; modelValue: VMultiSelectItem[]; items: VMultiSelectItem[]; itemText: string; itemValue: string; searchBy: string | ((item: VMultiSelectItem, search: string) => boolean); maxBadge: number; placeholder: string; delay: number; id: string; name: string; inputProps: Record<string, any>; selectAll: boolean; loading: boolean; errorMessages: unknown[]; wrapperClass: string; inputClass: string; badgeColor: string; badgeClass: string; badgeProps: Record<string, any>; dropdownClass: string; itemClass: string; checkWrapperClass: string; checkIconClass: string; noDataClass: string; loadingClass: string; labelClass: string; rules: string; errorClass: string; transition: string; iconSize: string; disabled: boolean; validationMode: ValidationMode; fieldOptions: FieldOptions<any>; hideError: boolean; hint: string; }> & Omit<Readonly<import("vue").ExtractPropTypes<{ modelValue: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; items: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; itemText: { type: StringConstructor; default: string; }; itemValue: { type: StringConstructor; default: string; }; searchBy: { type: PropType<string | ((item: VMultiSelectItem, search: string) => boolean)>; default: string; }; maxBadge: { type: NumberConstructor; default: number; }; placeholder: { type: StringConstructor; default: string; }; delay: { type: NumberConstructor; default: number; }; id: { type: StringConstructor; default: string; }; name: { type: StringConstructor; default: string; }; inputProps: { type: PropType<Record<string, any>>; default: () => {}; }; selectAll: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessages: { type: ArrayConstructor; default: () => never[]; }; wrapperClass: { type: StringConstructor; default: string; }; inputClass: { type: StringConstructor; default: string; }; badgeColor: { type: StringConstructor; default: string; }; badgeClass: { type: StringConstructor; default: string; }; badgeProps: { type: ObjectConstructor; default: () => {}; }; dropdownClass: { type: StringConstructor; default: string; }; itemClass: { type: StringConstructor; default: string; }; checkWrapperClass: { type: StringConstructor; default: string; }; checkIconClass: { type: StringConstructor; default: string; }; noDataClass: { type: StringConstructor; default: string; }; loadingClass: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; labelClass: { type: StringConstructor; default: string; }; rules: { type: StringConstructor; default: string; }; errorClass: { type: StringConstructor; default: string; }; transition: { type: StringConstructor; default: string; }; iconSize: { type: StringConstructor; default: string; }; readonly: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; validationMode: { type: PropType<ValidationMode>; default: string; }; fieldOptions: { type: PropType<FieldOptions<any>>; default: () => {}; }; hideError: { type: BooleanConstructor; default: boolean; }; hint: { type: StringConstructor; default: string; }; }>> & { "onClick:outside"?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onSearch?: ((...args: any[]) => any) | undefined; onSelected?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "readonly" | "label" | "error" | "modelValue" | "items" | "itemText" | "itemValue" | "searchBy" | "maxBadge" | "placeholder" | "delay" | "id" | "name" | "inputProps" | "selectAll" | "loading" | "errorMessages" | "wrapperClass" | "inputClass" | "badgeColor" | "badgeClass" | "badgeProps" | "dropdownClass" | "itemClass" | "checkWrapperClass" | "checkIconClass" | "noDataClass" | "loadingClass" | "labelClass" | "rules" | "errorClass" | "transition" | "iconSize" | "disabled" | "validationMode" | "fieldOptions" | "hideError" | "hint">; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null; $emit: (event: "click:outside" | "update:modelValue" | "search" | "selected" | "clear", ...args: any[]) => void; $el: any; $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{ modelValue: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; items: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; itemText: { type: StringConstructor; default: string; }; itemValue: { type: StringConstructor; default: string; }; searchBy: { type: PropType<string | ((item: VMultiSelectItem, search: string) => boolean)>; default: string; }; maxBadge: { type: NumberConstructor; default: number; }; placeholder: { type: StringConstructor; default: string; }; delay: { type: NumberConstructor; default: number; }; id: { type: StringConstructor; default: string; }; name: { type: StringConstructor; default: string; }; inputProps: { type: PropType<Record<string, any>>; default: () => {}; }; selectAll: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessages: { type: ArrayConstructor; default: () => never[]; }; wrapperClass: { type: StringConstructor; default: string; }; inputClass: { type: StringConstructor; default: string; }; badgeColor: { type: StringConstructor; default: string; }; badgeClass: { type: StringConstructor; default: string; }; badgeProps: { type: ObjectConstructor; default: () => {}; }; dropdownClass: { type: StringConstructor; default: string; }; itemClass: { type: StringConstructor; default: string; }; checkWrapperClass: { type: StringConstructor; default: string; }; checkIconClass: { type: StringConstructor; default: string; }; noDataClass: { type: StringConstructor; default: string; }; loadingClass: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; labelClass: { type: StringConstructor; default: string; }; rules: { type: StringConstructor; default: string; }; errorClass: { type: StringConstructor; default: string; }; transition: { type: StringConstructor; default: string; }; iconSize: { type: StringConstructor; default: string; }; readonly: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; validationMode: { type: PropType<ValidationMode>; default: string; }; fieldOptions: { type: PropType<FieldOptions<any>>; default: () => {}; }; hideError: { type: BooleanConstructor; default: boolean; }; hint: { type: StringConstructor; default: string; }; }>> & { "onClick:outside"?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onSearch?: ((...args: any[]) => any) | undefined; onSelected?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click:outside" | "update:modelValue" | "search" | "selected" | "clear")[], string, { readonly: boolean; label: string; error: boolean; modelValue: VMultiSelectItem[]; items: VMultiSelectItem[]; itemText: string; itemValue: string; searchBy: string | ((item: VMultiSelectItem, search: string) => boolean); maxBadge: number; placeholder: string; delay: number; id: string; name: string; inputProps: Record<string, any>; selectAll: boolean; loading: boolean; errorMessages: unknown[]; wrapperClass: string; inputClass: string; badgeColor: string; badgeClass: string; badgeProps: Record<string, any>; dropdownClass: string; itemClass: string; checkWrapperClass: string; checkIconClass: string; noDataClass: string; loadingClass: string; labelClass: string; rules: string; errorClass: string; transition: string; iconSize: string; disabled: boolean; validationMode: ValidationMode; fieldOptions: FieldOptions<any>; hideError: boolean; hint: string; }> & { beforeCreate?: ((() => void) | (() => void)[]) | undefined; created?: ((() => void) | (() => void)[]) | undefined; beforeMount?: ((() => void) | (() => void)[]) | undefined; mounted?: ((() => void) | (() => void)[]) | undefined; beforeUpdate?: ((() => void) | (() => void)[]) | undefined; updated?: ((() => void) | (() => void)[]) | undefined; activated?: ((() => void) | (() => void)[]) | undefined; deactivated?: ((() => void) | (() => void)[]) | undefined; beforeDestroy?: ((() => void) | (() => void)[]) | undefined; beforeUnmount?: ((() => void) | (() => void)[]) | undefined; destroyed?: ((() => void) | (() => void)[]) | undefined; unmounted?: ((() => void) | (() => void)[]) | undefined; renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined; }; $forceUpdate: () => void; $nextTick: typeof nextTick; $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle; } & Readonly<import("vue").ExtractPropTypes<{ modelValue: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; items: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; itemText: { type: StringConstructor; default: string; }; itemValue: { type: StringConstructor; default: string; }; searchBy: { type: PropType<string | ((item: VMultiSelectItem, search: string) => boolean)>; default: string; }; maxBadge: { type: NumberConstructor; default: number; }; placeholder: { type: StringConstructor; default: string; }; delay: { type: NumberConstructor; default: number; }; id: { type: StringConstructor; default: string; }; name: { type: StringConstructor; default: string; }; inputProps: { type: PropType<Record<string, any>>; default: () => {}; }; selectAll: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessages: { type: ArrayConstructor; default: () => never[]; }; wrapperClass: { type: StringConstructor; default: string; }; inputClass: { type: StringConstructor; default: string; }; badgeColor: { type: StringConstructor; default: string; }; badgeClass: { type: StringConstructor; default: string; }; badgeProps: { type: ObjectConstructor; default: () => {}; }; dropdownClass: { type: StringConstructor; default: string; }; itemClass: { type: StringConstructor; default: string; }; checkWrapperClass: { type: StringConstructor; default: string; }; checkIconClass: { type: StringConstructor; default: string; }; noDataClass: { type: StringConstructor; default: string; }; loadingClass: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; labelClass: { type: StringConstructor; default: string; }; rules: { type: StringConstructor; default: string; }; errorClass: { type: StringConstructor; default: string; }; transition: { type: StringConstructor; default: string; }; iconSize: { type: StringConstructor; default: string; }; readonly: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; validationMode: { type: PropType<ValidationMode>; default: string; }; fieldOptions: { type: PropType<FieldOptions<any>>; default: () => {}; }; hideError: { type: BooleanConstructor; default: boolean; }; hint: { type: StringConstructor; default: string; }; }>> & { "onClick:outside"?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onSearch?: ((...args: any[]) => any) | undefined; onSelected?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; } & import("vue").ShallowUnwrapRef<{}> & {} & import("vue").ComponentCustomProperties; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{ modelValue: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; items: { type: PropType<VMultiSelectItem[]>; default: () => never[]; }; itemText: { type: StringConstructor; default: string; }; itemValue: { type: StringConstructor; default: string; }; searchBy: { type: PropType<string | ((item: VMultiSelectItem, search: string) => boolean)>; default: string; }; maxBadge: { type: NumberConstructor; default: number; }; placeholder: { type: StringConstructor; default: string; }; delay: { type: NumberConstructor; default: number; }; id: { type: StringConstructor; default: string; }; name: { type: StringConstructor; default: string; }; inputProps: { type: PropType<Record<string, any>>; default: () => {}; }; selectAll: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessages: { type: ArrayConstructor; default: () => never[]; }; wrapperClass: { type: StringConstructor; default: string; }; inputClass: { type: StringConstructor; default: string; }; badgeColor: { type: StringConstructor; default: string; }; badgeClass: { type: StringConstructor; default: string; }; badgeProps: { type: ObjectConstructor; default: () => {}; }; dropdownClass: { type: StringConstructor; default: string; }; itemClass: { type: StringConstructor; default: string; }; checkWrapperClass: { type: StringConstructor; default: string; }; checkIconClass: { type: StringConstructor; default: string; }; noDataClass: { type: StringConstructor; default: string; }; loadingClass: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; labelClass: { type: StringConstructor; default: string; }; rules: { type: StringConstructor; default: string; }; errorClass: { type: StringConstructor; default: string; }; transition: { type: StringConstructor; default: string; }; iconSize: { type: StringConstructor; default: string; }; readonly: { type: BooleanConstructor; default: boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; validationMode: { type: PropType<ValidationMode>; default: string; }; fieldOptions: { type: PropType<FieldOptions<any>>; default: () => {}; }; hideError: { type: BooleanConstructor; default: boolean; }; hint: { type: StringConstructor; default: string; }; }>> & { "onClick:outside"?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onSearch?: ((...args: any[]) => any) | undefined; onSelected?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click:outside" | "update:modelValue" | "search" | "selected" | "clear")[], "search" | "click:outside" | "update:modelValue" | "selected" | "clear", { readonly: boolean; label: string; error: boolean; modelValue: VMultiSelectItem[]; items: VMultiSelectItem[]; itemText: string; itemValue: string; searchBy: string | ((item: VMultiSelectItem, search: string) => boolean); maxBadge: number; placeholder: string; delay: number; id: string; name: string; inputProps: Record<string, any>; selectAll: boolean; loading: boolean; errorMessages: unknown[]; wrapperClass: string; inputClass: string; badgeColor: string; badgeClass: string; badgeProps: Record<string, any>; dropdownClass: string; itemClass: string; checkWrapperClass: string; checkIconClass: string; noDataClass: string; loadingClass: string; labelClass: string; rules: string; errorClass: string; transition: string; iconSize: string; disabled: boolean; validationMode: ValidationMode; fieldOptions: FieldOptions<any>; hideError: boolean; hint: string; }> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => { $slots: typeof import('./VMultiSelect.vue.__VLS_template').default; }); export default _default;