{"version":3,"file":"typeFromMime.mjs","sources":["../../../admin/src/utils/typeFromMime.ts"],"sourcesContent":["import { AssetType, DocType } from '../enums';\n\nconst MIME_TYPE_MAP: Record<string, AssetType | DocType> = {\n  image: AssetType.Image,\n  video: AssetType.Video,\n  audio: AssetType.Audio,\n  pdf: DocType.Pdf,\n  csv: DocType.Csv,\n  // For XLS files the mime is application/vnd.ms-excel so we need to check for 'excel' not 'xls'\n  excel: DocType.Xls,\n  zip: DocType.Zip,\n};\n\nconst MIME_TYPE_KEYS = Object.keys(MIME_TYPE_MAP) as Array<keyof typeof MIME_TYPE_MAP>;\n\nexport const typeFromMime = (mime: string): AssetType | DocType => {\n  const mimeTypeKey = MIME_TYPE_KEYS.find((m) => mime.toLowerCase().includes(m));\n\n  if (mimeTypeKey === undefined) return AssetType.Document;\n\n  return MIME_TYPE_MAP[mimeTypeKey] ?? AssetType.Document;\n};\n"],"names":["MIME_TYPE_MAP","image","AssetType","Image","video","Video","audio","Audio","pdf","DocType","Pdf","csv","Csv","excel","Xls","zip","Zip","MIME_TYPE_KEYS","Object","keys","typeFromMime","mime","mimeTypeKey","find","m","toLowerCase","includes","undefined","Document"],"mappings":";;AAEA,MAAMA,aAAAA,GAAqD;AACzDC,IAAAA,KAAAA,EAAOC,UAAUC,KAAK;AACtBC,IAAAA,KAAAA,EAAOF,UAAUG,KAAK;AACtBC,IAAAA,KAAAA,EAAOJ,UAAUK,KAAK;AACtBC,IAAAA,GAAAA,EAAKC,QAAQC,GAAG;AAChBC,IAAAA,GAAAA,EAAKF,QAAQG,GAAG;;AAEhBC,IAAAA,KAAAA,EAAOJ,QAAQK,GAAG;AAClBC,IAAAA,GAAAA,EAAKN,QAAQO;AACf,CAAA;AAEA,MAAMC,cAAAA,GAAiBC,MAAAA,CAAOC,IAAI,CAACnB,aAAAA,CAAAA;AAE5B,MAAMoB,eAAe,CAACC,IAAAA,GAAAA;IAC3B,MAAMC,WAAAA,GAAcL,cAAAA,CAAeM,IAAI,CAAC,CAACC,IAAMH,IAAAA,CAAKI,WAAW,EAAA,CAAGC,QAAQ,CAACF,CAAAA,CAAAA,CAAAA;AAE3E,IAAA,IAAIF,WAAAA,KAAgBK,SAAAA,EAAW,OAAOzB,SAAAA,CAAU0B,QAAQ;AAExD,IAAA,OAAO5B,aAAa,CAACsB,WAAAA,CAAY,IAAIpB,UAAU0B,QAAQ;AACzD;;;;"}