Mimes to Extensions

A helpful utility that converts mimes to react-dropzone compatible accept format.

export function mimeToExtensions(mimes: string[]) {
  return mimes.reduce((acc, mime) => {
    const extension = "." + mime.split("/")[1];
    return {
      ...acc,
      [mime]: [extension],
    };
  }, {});
}

Usage

useDropzone({
  accept: mimeToExtensions(["image/jpeg", "image/jpg", "image/png"])
})

Converts ["image/jpeg", "image/jpg", "image/png"] to:

{
  'image/jpeg': ['.jpeg'],
  'image/jpg': ['.jpg'],
  'image/png': ['.png']
}

Loved this post?

Comments

Interested in
working
with me?