231 lines
6.5 KiB
TypeScript
Executable File
231 lines
6.5 KiB
TypeScript
Executable File
import '../sass/form.sass';
|
|
import '../../dropdown/dropdown.sass';
|
|
import './autocomplete.sass';
|
|
import { Eq } from 'fp-ts/lib/Eq';
|
|
import { FunctionN, Predicate } from 'fp-ts/lib/function';
|
|
import { PropType, VNode } from 'vue';
|
|
export interface AutocompleteItem<T> {
|
|
id: string;
|
|
isSelected: boolean;
|
|
isHovered: boolean;
|
|
text: string;
|
|
value: T;
|
|
index: number;
|
|
}
|
|
export declare const BAutocomplete: import("vue").DefineComponent<{
|
|
selectedItems: {
|
|
type: PropType<unknown[]>;
|
|
required: true;
|
|
};
|
|
items: {
|
|
type: PropType<unknown[]>;
|
|
default: import("fp-ts/lib/function").Lazy<never[]>;
|
|
};
|
|
itemFilter: {
|
|
type: PropType<FunctionN<[string], Predicate<unknown>>>;
|
|
required: false;
|
|
};
|
|
itemId: {
|
|
type: PropType<(item: unknown) => any>;
|
|
default: string;
|
|
};
|
|
itemText: {
|
|
type: PropType<(item: unknown) => any>;
|
|
default: string;
|
|
};
|
|
closeOnSelect: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
clearOnSelect: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
openOnFocus: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
onSelected: {
|
|
type: PropType<FunctionN<[unknown], void>>;
|
|
required: false;
|
|
};
|
|
"onUpdate:selectedItems": {
|
|
type: PropType<FunctionN<[unknown[]], void>>;
|
|
default: import("fp-ts/lib/function").Lazy<FunctionN<[unknown[]], void>>;
|
|
};
|
|
modelValue: {
|
|
type: PropType<string>;
|
|
required: false;
|
|
};
|
|
'onUpdate:modelValue': {
|
|
type: PropType<FunctionN<[string], void>>;
|
|
default: import("fp-ts/lib/function").Lazy<FunctionN<[string], void>>;
|
|
};
|
|
themeMap: {
|
|
type: PropType<import("../../..").ThemeColorMap>;
|
|
required: boolean;
|
|
default: import("fp-ts/lib/function").Lazy<import("../../..").ThemeColorMap>;
|
|
};
|
|
isThemeable: {
|
|
type: PropType<boolean>;
|
|
required: boolean;
|
|
default: boolean;
|
|
};
|
|
eq: {
|
|
type: PropType<Eq<unknown>>;
|
|
default: import("fp-ts/lib/function").Lazy<Eq<unknown>>;
|
|
};
|
|
isFocused: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
onFocus: {
|
|
type: PropType<(e?: Event | undefined) => void>;
|
|
required: false;
|
|
};
|
|
onBlur: {
|
|
type: PropType<(e?: Event | undefined) => void>;
|
|
required: false;
|
|
};
|
|
focusOnMount: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
isDisabled: {
|
|
type: PropType<boolean>;
|
|
required: boolean;
|
|
default: boolean;
|
|
};
|
|
isReadonly: {
|
|
type: PropType<boolean>;
|
|
required: boolean;
|
|
default: boolean;
|
|
};
|
|
disableIfReadonly: {
|
|
type: PropType<boolean>;
|
|
required: boolean;
|
|
default: boolean;
|
|
};
|
|
useNativeValidation: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
isValid: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
'onUpdate:isValid': {
|
|
type: PropType<FunctionN<[boolean], void>>;
|
|
default: import("fp-ts/lib/function").Lazy<() => void>;
|
|
};
|
|
variant: {
|
|
type: PropType<import("../../..").ColorVariant>;
|
|
default: "";
|
|
};
|
|
type: {
|
|
type: PropType<string>;
|
|
};
|
|
autocomplete: {
|
|
type: PropType<string>;
|
|
};
|
|
placeholder: {
|
|
type: PropType<string>;
|
|
};
|
|
size: {
|
|
type: PropType<import("../../..").SizeVariant>;
|
|
default: import("../../..").SizeVariant;
|
|
};
|
|
isRequired: {
|
|
type: BooleanConstructor;
|
|
default: boolean;
|
|
};
|
|
isExpanded: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
isLoading: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
isRounded: {
|
|
type: PropType<boolean>;
|
|
default: boolean;
|
|
};
|
|
maxlength: {
|
|
type: PropType<string | number>;
|
|
};
|
|
icon: null;
|
|
usePasswordReveal: {
|
|
type: PropType<boolean>;
|
|
default: undefined;
|
|
};
|
|
}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
[key: string]: any;
|
|
}>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
isThemeable: boolean;
|
|
themeMap: import("../../..").ThemeColorMap;
|
|
variant: import("../../..").ColorVariant;
|
|
size: import("../../..").SizeVariant;
|
|
isExpanded: boolean;
|
|
isRounded: boolean;
|
|
isLoading: boolean;
|
|
isFocused: boolean;
|
|
isDisabled: boolean;
|
|
focusOnMount: boolean;
|
|
"onUpdate:modelValue": FunctionN<[string], void>;
|
|
isReadonly: boolean;
|
|
disableIfReadonly: boolean;
|
|
useNativeValidation: boolean;
|
|
isValid: boolean;
|
|
"onUpdate:isValid": FunctionN<[boolean], void>;
|
|
isRequired: boolean;
|
|
usePasswordReveal: boolean;
|
|
selectedItems: unknown[];
|
|
"onUpdate:selectedItems": FunctionN<[unknown[]], void>;
|
|
items: unknown[];
|
|
itemId: (item: unknown) => any;
|
|
itemText: (item: unknown) => any;
|
|
closeOnSelect: boolean;
|
|
clearOnSelect: boolean;
|
|
openOnFocus: boolean;
|
|
eq: Eq<unknown>;
|
|
} & {
|
|
icon?: any;
|
|
type?: string | undefined;
|
|
onFocus?: ((e?: Event | undefined) => void) | undefined;
|
|
onBlur?: ((e?: Event | undefined) => void) | undefined;
|
|
modelValue?: string | undefined;
|
|
autocomplete?: string | undefined;
|
|
placeholder?: string | undefined;
|
|
maxlength?: string | number | undefined;
|
|
itemFilter?: FunctionN<[string], Predicate<unknown>> | undefined;
|
|
onSelected?: FunctionN<[unknown], void> | undefined;
|
|
}>, {
|
|
isThemeable: boolean;
|
|
themeMap: import("../../..").ThemeColorMap;
|
|
variant: import("../../..").ColorVariant;
|
|
size: import("../../..").SizeVariant;
|
|
isExpanded: boolean;
|
|
isRounded: boolean;
|
|
isLoading: boolean;
|
|
isFocused: boolean;
|
|
isDisabled: boolean;
|
|
focusOnMount: boolean;
|
|
"onUpdate:modelValue": FunctionN<[string], void>;
|
|
isReadonly: boolean;
|
|
disableIfReadonly: boolean;
|
|
useNativeValidation: boolean;
|
|
isValid: boolean;
|
|
"onUpdate:isValid": FunctionN<[boolean], void>;
|
|
isRequired: boolean;
|
|
usePasswordReveal: boolean;
|
|
"onUpdate:selectedItems": FunctionN<[unknown[]], void>;
|
|
items: unknown[];
|
|
itemId: (item: unknown) => any;
|
|
itemText: (item: unknown) => any;
|
|
closeOnSelect: boolean;
|
|
clearOnSelect: boolean;
|
|
openOnFocus: boolean;
|
|
eq: Eq<unknown>;
|
|
}>;
|