mime.ts 588 B

1234567891011121314151617181920
  1. import db from 'mime-db'
  2. // [Alaister]: This is going to be moved to the server side
  3. // so can be removed once the server side is ready
  4. export const MIME_TYPES_BY_EXTENSION = Object.fromEntries(
  5. Object.entries(db)
  6. .filter(([, { extensions }]) => extensions !== undefined)
  7. .flatMap(([mime, { extensions }]) =>
  8. extensions!.map((extension) => [extension.toLowerCase(), mime])
  9. )
  10. )
  11. export function lookupMime(extension?: string): string | undefined {
  12. if (extension === undefined) {
  13. return undefined
  14. }
  15. return MIME_TYPES_BY_EXTENSION[extension.toLowerCase()]
  16. }