@volverjs/ui-vue
Version:
@volverjs/ui-vue is a lightweight Vue 3 component library to accompany @volverjs/style.
198 lines (197 loc) • 4.58 kB
TypeScript
import type { VvIconProps } from '../VvIcon';
import type { UploadedFile } from '@/types';
export type VvInputFileEvents = {
'remove': [
File | UploadedFile
];
'download': [
File | UploadedFile
];
'update:modelValue': [
File | UploadedFile | (File | UploadedFile)[] | undefined
];
};
export declare const VvInputFileProps: {
/**
* Input value
*/
modelValue: {
type: PropType<File | UploadedFile | (File | UploadedFile)[]>;
};
/**
* Whether to show progress bar
*/
progress: {
type: (StringConstructor | NumberConstructor)[];
default: undefined;
};
/**
* Input
* Text that appears in the form control when it has no value set
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#placeholder
*/
placeholder: {
type: StringConstructor;
default: undefined;
};
/**
* File types to accept
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept
*/
accept: {
type: StringConstructor;
default: string;
};
/**
* Whether to allow multiple values
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#multiple
*/
multiple: {
type: BooleanConstructor;
default: boolean;
};
/**
* Front or rear camera
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/capture
*/
capture: {
type: PropType<"user" | "environment">;
default: undefined;
validation: (value?: string) => boolean;
};
/**
* Max number of files
*/
max: {
type: (StringConstructor | NumberConstructor)[];
default: undefined;
};
/**
* Show drop area
*/
dropArea: {
type: BooleanConstructor;
default: boolean;
};
/**
* Enable sorting
*/
sortable: {
type: BooleanConstructor;
default: boolean;
};
/**
* Label for add button
*/
labelAdd: {
type: StringConstructor;
default: string;
};
/**
* VvIcon name for add button
* @see VvIcon
*/
iconAdd: {
type: PropType<string | VvIconProps>;
default: "add";
};
/**
* Label for replace button
*/
labelReplace: {
type: StringConstructor;
default: string;
};
/**
* VvIcon name for replace button
* @see VvIcon
*/
iconReplace: {
type: PropType<string | VvIconProps>;
default: "edit";
};
/**
* Label for download button
*/
labelDownload: {
type: StringConstructor;
default: string;
};
/**
* VvIcon name for download button
* @see VvIcon
*/
iconDownload: {
type: PropType<string | VvIconProps>;
default: "download";
};
/**
* Label for remove button
*/
labelRemove: {
type: StringConstructor;
default: string;
};
icon: {
type: PropType<string | VvIconProps>;
default: undefined;
};
iconPosition: {
type: PropType<`${import("../../constants").Position}`>;
default: import("../../constants").Position;
validation: (value: import("../../constants").Position) => boolean;
};
required: {
type: BooleanConstructor;
default: boolean;
};
disabled: {
type: BooleanConstructor;
default: boolean;
};
readonly: {
type: BooleanConstructor;
default: boolean;
};
loading: {
type: BooleanConstructor;
default: boolean;
};
loadingLabel: {
type: StringConstructor;
default: string;
};
label: {
type: (StringConstructor | NumberConstructor)[];
default: undefined;
};
hintLabel: {
type: StringConstructor;
default: string;
};
invalid: {
type: BooleanConstructor;
default: boolean;
};
invalidLabel: {
type: (ArrayConstructor | StringConstructor)[];
default: undefined;
};
valid: {
type: BooleanConstructor;
default: boolean;
};
validLabel: {
type: (ArrayConstructor | StringConstructor)[];
default: undefined;
};
modifiers: {
type: PropType<string | string[]>;
default: undefined;
};
name: {
type: StringConstructor;
required: boolean;
};
id: (StringConstructor | NumberConstructor)[];
};