Search code examples
javascriptecmascript-6es6-promise

Callback to Async Await


I have been trying to use this library: https://github.com/xkeshi/image-compressor

example from there:

new ImageCompressor(file, {
    quality: .6,
    success(result) {
      ...
    },
    error(e) {
      ...
    },
  });

I want to wrap this function inside an async function called compress to use it like:

const compressed file = await compress(file)

Solution

  •   function compress(file) {
        return new Promise((resolve, reject) => {
           new ImageCompressor(file, {
             quality: .6,
             success: resolve,
             error: reject
          });
       });
     }