diff options
Diffstat (limited to 'src/utils')
-rw-r--r-- | src/utils/files.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/utils/files.ts b/src/utils/files.ts index 98c342c..5d16fdb 100644 --- a/src/utils/files.ts +++ b/src/utils/files.ts @@ -1,3 +1,6 @@ +import Compressor from 'compressorjs'; + + export const getLocalFileUrl = (file: File): Promise<string> => { return new Promise((resolve, reject) => { const reader = new FileReader(); @@ -13,3 +16,14 @@ export const getLocalFileUrl = (file: File): Promise<string> => { if (file) reader.readAsDataURL(file); }); }; + +export const compressFile = (file: File, quality = 0.6): Promise<Blob> => { + return new Promise((resolve, reject) => { + return new Compressor(file, { + success: result => resolve(result), + error: err => reject(err), + quality + }); + }); +}; + |