Optional
acceptOptional
acceptCustom accept check function
acceptFn: (file, options) => {
return options.mimeFromMagicBytes(file.originalFile).then((res) => { // we can check mimetype from magic bytes
//console.log(options.mimeFromExtension(file.originalFile.name)); // or check extension from filestack extensions database
// throw new Error('Cannot accept that file') // we can throw exception to block file upload
// return Promise.reject('Cannot accept that file'') // or reject a promise
return Promise.resolve();
});
}
Optional
allowPrevent modal close on upload failure and allow users to retry.
Optional
cleanupTurn on cleaning JPEG image exif. Method can keep image orientation or color profiles
cleanupImageExif: {
keepOrientation: true
keepICCandAPP: true
}
Optional
concurrencyMax number of files to upload concurrently. Default is 4.
Optional
containerContainer where picker should be appended. Only relevant for inline
and dropPane
display modes.
Optional
customCustomize the text on the cloud authentication screen in Picker. Use a cloud source name (see fromSources) or a 'default' as a key, then put your custom notice or consent to the 'top' or the 'bottom' key to show it respectivly above or under 'Connect button'.
customAuthText: {
// use it for every cloud authentication screen
default: {
top: [
'default top first line',
'default top second line'
],
bottom: [
'default bottom first line',
'default bottom second line'
]
},
// override a default bottom text for only gmail
gmail: {
bottom: [
'We need your permission to access your data and',
'process it with our machine learning system.'
]
}
}
Optional
customSet the default container for your custom source.
Optional
customSet the display name for the custom source.
Optional
customSet the default path for your custom source container.
Optional
customProvide an object for mapping picker strings to your own strings.
Strings surrounded by brackets, { foobar }
, are interpolated with runtime values.
Source labels are also available to override, e.g. Facebook, Instagram, Dropbox, etc.
Optional
disableDisables alt text view/edit in the summary screen.
Optional
disableWhen true removes the hash prefix on stored files.
Optional
disableDisables local image thumbnail previews in the summary screen.
Optional
disableWhen true removes ability to edit images.
Optional
displayPicker display mode, one of 'inline'
, 'overlay'
, 'dropPane'
- default is 'overlay'
.
Optional
dropConfigure the drop pane behavior, i.e. when displayMode
is dropPane
.
Optional
errorsTimeout for error messages
Optional
exposeWhen true the originalFile
metadata will be the actual File
object instead of a POJO
Optional
fromValid sources are:
Optional
globalToggle the drop zone to be active on all views. Default is active only on local file source.
Optional
hideHide the picker modal UI once uploading begins. Defaults to false
.
Optional
imageSpecify image dimensions. e.g. [800, 600]. Only for JPEG, PNG, and BMP files. Local and cropped images will be resized (upscaled or downscaled) to the specified dimensions before uploading. The original height to width ratio is maintained. To resize all images based on the width, set [width, null], e.g. [800, null]. For the height set [null, height], e.g. [null, 600].
Optional
imageSpecify maximum image dimensions. e.g. [800, 600]. Only for JPEG, PNG, and BMP files. Images bigger than the specified dimensions will be resized to the maximum size while maintaining the original aspect ratio. The output will not be exactly 800x600 unless the imageMax matches the aspect ratio of the original image.
Optional
imageSpecify minimum image dimensions. e.g. [800, 600]. Only for JPEG, PNG, and BMP files. Images smaller than the specified dimensions will be upscaled to the minimum size while maintaining the original aspect ratio. The output will not be exactly 800x600 unless the imageMin matches the aspect ratio of the original image.
Optional
langSets locale. Accepts: ca, da, de, en, es, fr, he, it, ja, ko, nl, no, pl, pt, sv, ru, vi, zh, tr
Optional
maxMaximum number of files allowed to upload. Defaults to 1.
Optional
maxRestrict selected files to a maximum number of bytes. (e.g. 10 * 1024 * 1024 for 10MB limit).
Optional
minMinimum number of files required to start uploading. Defaults to 1.
Optional
modalSpecify [width, height] in pixels of the desktop modal.
Optional
onCalled when all uploads in a pick are cancelled.
Optional
onCalled when the UI is exited.
Optional
onCalled when file is cropped in picker
Optional
onCalled whenever user selects a file.
// Using to veto file selection
// If you throw any error in this function it will reject the file selection.
// The error message will be displayed to the user as an alert.
onFileSelected(file) {
if (file.size > 1000 * 1000) {
throw new Error('File too big, select something smaller than 1MB');
}
}
// Using to change selected file name
// NOTE: This currently only works for local uploads
onFileSelected(file) {
// It's important to return a new file by the end of this function.
return { ...file, name: 'foo' };
}
The callback function can also return a Promise to allow asynchronous validation logic.
You can pass a file object to resolve
for changing the file name, it will behave the same as when
the file is returned from the non-async callback.
onFileSelected(file) {
return new Promise((resolve, reject) => {
// Do something async
resolve();
// Or reject the selection with reject()
});
}
Optional
onCalled when a file upload has been canceled.
Optional
onCalled when uploading a file fails.
Optional
onCalled when a file is done uploading.
Optional
onCalled during multi-part upload progress events. Local files only.
Optional
onCalled when a file begins uploading.
Optional
onCalled when the UI is mounted.
Optional
onCalled when all files have been uploaded.
Optional
onCalled when uploading starts (user initiates uploading).
Optional
pasteSpecify which Picker instance should respond to paste event. By default only hovered instance responds to event.
If none instance is hovered take first picker instance fully visible in viewport
If none instance is hovered take first picker instance that is initialized
is checked first
Optional
pasteOptional
pasteOptional
rootDefine a unique id for the application mount point. May be useful for more advanced use cases. For example, if you wish to have more than one picker instance open at once, then each will need their own unique rootId.
Note: This option is ignored when displayMode
is dropPane
.
Optional
startWhether to start uploading automatically when maxFiles is hit. Defaults to false
.
Optional
storeOptions for file storage.
Optional
supportset support email to display in case of error
Optional
transformationsSpecify options for images passed to the crop UI.
Optional
transformationsUIWhether to use the new transformations UI. Defaults to false
.
Optional
uploadOptions for local file uploads.
Optional
uploadStart uploading immediately on file selection. Defaults to true
.
The feature is can be enabled only if crop is disabled - disableTransformer: true
Optional
useUse Sentry Breadcrumbs mechanism to log information about occured errors.
It can override global objects like console, error etc. Defaults to true
.
Optional
videoSets the resolution of recorded video. One of "320x240", "640x480" or "1280x720". Default is "640x480"
.
Optional
viewDefault view type option for file browser
Optional
websearchProvide default text value for Image Search
websearch: {
predefinedText: 'Sample text'
}
Restrict file types that are allowed to be picked. Formats accepted: