@gits-id/multi-select
Version:
Vue Multi Select Component
805 lines (804 loc) • 25.8 kB
TypeScript
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;