@limetech/lime-elements
Version:
71 lines • 2.73 kB
TypeScript
import { EventEmitter } from '../../stencil-public-runtime';
import { FileInfo } from '../../global/shared-types/file.types';
/**
* This component enables you to seamlessly convert any region of the user interface into
* a file dropzone area, just by wrapping it inside the `limel-file-dropzone`.
*
* The file dropzone can then be used to allow end-users to upload files
* by dragging and dropping them into the specified area, for example to trigger an upload process.
*
* After receiving the files, the component emits a `filesSelected` event. For unsupported
* files (specified with the `accept` prop) a `filesRejected` event will be emitted.
*
* The event detail would be an array of `FileInfo` objects,
* each representing a file dropped into the dropzone.
*
* @exampleComponent limel-example-file-dropzone
* @exampleComponent limel-example-file-dropzone-type-filtering
* @private
*/
export declare class FileDropzone {
/**
* Specifies the types of files that the dropzone will accept. By default, all file types are accepted.
*
* For media files, formats can be specified using: `audio/*`, `video/*`, `image/*`.
* Unique file type specifiers can also be used, for example: `.jpg`, `.pdf`.
* A comma-separated list of file extensions or MIME types is also acceptable, e.g., `image/png, image/jpeg` or
* `.png, .jpg, .jpeg`.
*
* @see [HTML attribute: accept](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept) for more
* details.
*/
accept: string;
/**
* Set to `true` to disable the file dropzone.
*/
disabled: boolean;
/**
* Is displayed when the user is dragging a file over the dropzone.
* A suitable text could for instance be "Drop your files here".
*/
text: string;
/**
* Is displayed to provide supplementary information to the end users,
* for instance, which filetypes or file sizes are accepted.
*/
helperText?: string;
/**
* Sets to true when there is a file to drop
*/
private hasFileToDrop;
/**
* Emitted when files are selected
*/
filesSelected: EventEmitter<FileInfo[]>;
/**
* Emitted when files are selected but do not conform with the `accept` property specifications.
* This can happen when the file types or formats of the selected files are not among the ones allowed by the dropzone,
* as defined by the `accept` property.
*
* @see `accept` for details on how to specify acceptable file types.
*/
filesRejected: EventEmitter<FileInfo[]>;
render(): any;
private renderOnDragLayout;
private renderText;
private renderHelperText;
private handleDrop;
private handleDragOver;
private handleDragLeave;
}
//# sourceMappingURL=file-dropzone.d.ts.map