@filerobot/thumbnail-generator
A helper plugin used in generating thumbnails for files to be shown in Filerobot widget.
Usage
From NPM
The plugin is on NPM as @filerobot/thumbnail-generator
npm install --save @filerobot/thumbnail-generator
then
import ThumbnailGenerator from '@filerobot/thumbnail-generator'
...
...
...
filerobot.use(ThumbnailGenerator, optionsObject)
From CDN
The plugin from CDN is found inside Filerobot
global object Filerobot.ThumbnailGenerator
const ThumbnailGenerator = window.Filerobot.ThumbnailGenerator
...
...
...
filerobot.use(ThumbnailGenerator, optionsObject)
If you are using @filerobot/explorer
pluign you don't need to manually import this plugin as it is being imported automatically there and the default id Explorer:thumbnail-generator
Unless the Explorer id is changed.
Options
id: string
(optional)
default: 'ThumbnailGenerator'
An unique identifier for the plugin to be indentified between the other plugins through it.
thumbnailWidth: number
(optional)
default: 200
The width of the generated thumbnail to be, if it is not provided the default width would be used.
thumbnailHeight: number
(optional)
default: 170
The height of the generated thumbnail to be, if it is not provided the default height would be used.
waitForThumbnailsBeforeUpload: boolean
(optional)
default: false
Delays the start of uploading process till the thumbnails for files selected to be uploaded are generated.
lazy: boolean
(optional)
default: false
Starts the thumbnail generating process manually through the below events not automatically.
Events
The plugin emits different events that you could subscribe to or add your handler to be called with the provided arguments passed while emitting/firing the event, the events are listed below with examples show the parameters for handler:
Emitted
thumbnail:all-generated
Emitted when all the thumbnails are generated.
params
: No params returned.
example
filerobot.on('thumbnail:all-generated', () => {
console.log('all thumbnails generated')
})
thumbnail:generated
Emitted when a file's thumbnail is generated.
params
:
file
: The file object whom thumbnail is generated.preview
: The generated thumbnail image local url.
example
filerobot.on('thumbnail:generated', (file, previewUrl) => {
console.log('[Thumbnail-generator]: File's thumbnail is generated', file)
const img = document.createElement('img')
img.src = previewUrl
img.width = 111
document.body.appendChild(img)
})
thumbnail:error
Emitted when a file's thumbnail generating faced an error.
params
:
file
: The file object whom thumbnail is generated.error
: The error faced while generated.
example
filerobot.on('thumbnail:generated', (file, error) => {
console.log('[Thumbnail-generator]: File's thumbnail had an error while generating', file)
console.log('The error: ', error)
})
Subscribed
thumbnail:request
handler
: (fileObject) => ...
Subscribes the handler of generating thumbnail for a file, fired when the event is emitted.
thumbnail:update
handler
: (fileObject) => ...
Subscribes the handler of updating a generated thumbnail for a file, fired when the event is emitted.