FileUploader

FileUploader UI Component

Installation

npm i @synerise/ds-file-uploader
or
yarn add @synerise/ds-file-uploader

Usage

import FileUploader from '@synerise/ds-file-uploader'
<FileUploader
mode="single"
filesAmount={1}
files={[]}
accept={['image/png']}
texts={{
buttonLabel: 'Upload a new file',
buttonDescription: 'or drag one here',
size: 'Size:',
uploading: 'Uploading...',
}}
onUpload={files => processFiles(files)}
/>

Demo

FileUploader

PropertyDescriptionTypeDefault
modeuploader operation modesingle / multi-medium / multi-largesingle
modeuploader maximum files numbernumber-
descriptiondescription shown with uploaderstring-
disabledwhether the uploader should be disabledboolean-
removablewhether or not files should be removableboolean-
labellabel shown on top of the uploaderstring-
infoTooltipdisplay a tooltip near the label (label value is required for tooltip to appear)string-
errordisplay general errorstring-
textstexts to displayFileUploaderTexts-
filesuploaded filesExtendedFile[]-
acceptaccepted mime types to uploadstring[]-
onRemoveevent fired when a file is removed(file: File, index: number) => void-
onUploadevent fired when a file is removed(files: File[]) => void-

ExtendedFile

PropertyDescriptionTypeDefault
fileactual fileFileWithContent-
disabledwhether or not the file should be disabledboolean-
errorfile error textstring-
progressupload progressnumber-
successupload successboolean-

FileWithContent (extends File)

PropertyDescriptionTypeDefault
contentPlain text of txt files, for other file types contains nullstring, null, ArrayBuffernull

FileUploaderTexts

PropertyDescriptionTypeDefault
buttonLabelupload button labelstring / React.ReactNode-
buttonDescriptionupload button descriptionstring / React.ReactNode-
sizefile size labelstring / React.ReactNode-
uploadingtext to display when uploading a filestring / React.ReactNode-