// List of supported mime types and their extensions.
//
// https://github.com/gabriel-vasile/mimetype/blob/master/supported_mimes.md
window.app = window.app || {};
window.app.utils = window.app.utils || {};
window.app.utils.mimeTypes = [
    { ext: "", mimeType: "application/octet-stream" },
    { ext: ".xpm", mimeType: "image/x-xpixmap" },
    { ext: ".7z", mimeType: "application/x-7z-compressed" },
    { ext: ".zip", mimeType: "application/zip" },
    { ext: ".xlsx", mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" },
    {
        ext: ".docx",
        mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
    },
    {
        ext: ".pptx",
        mimeType: "application/vnd.openxmlformats-officedocument.presentationml.presentation",
    },
    { ext: ".epub", mimeType: "application/epub+zip" },
    { ext: ".apk", mimeType: "application/vnd.android.package-archive" },
    { ext: ".jar", mimeType: "application/jar" },
    { ext: ".odt", mimeType: "application/vnd.oasis.opendocument.text" },
    { ext: ".ott", mimeType: "application/vnd.oasis.opendocument.text-template" },
    { ext: ".ods", mimeType: "application/vnd.oasis.opendocument.spreadsheet" },
    { ext: ".ots", mimeType: "application/vnd.oasis.opendocument.spreadsheet-template" },
    { ext: ".odp", mimeType: "application/vnd.oasis.opendocument.presentation" },
    { ext: ".otp", mimeType: "application/vnd.oasis.opendocument.presentation-template" },
    { ext: ".odg", mimeType: "application/vnd.oasis.opendocument.graphics" },
    { ext: ".otg", mimeType: "application/vnd.oasis.opendocument.graphics-template" },
    { ext: ".odf", mimeType: "application/vnd.oasis.opendocument.formula" },
    { ext: ".odc", mimeType: "application/vnd.oasis.opendocument.chart" },
    { ext: ".sxc", mimeType: "application/vnd.sun.xml.calc" },
    { ext: ".pdf", mimeType: "application/pdf" },
    { ext: ".fdf", mimeType: "application/vnd.fdf" },
    { ext: "", mimeType: "application/x-ole-storage" },
    { ext: ".msi", mimeType: "application/x-ms-installer" },
    { ext: ".aaf", mimeType: "application/octet-stream" },
    { ext: ".msg", mimeType: "application/vnd.ms-outlook" },
    { ext: ".xls", mimeType: "application/vnd.ms-excel" },
    { ext: ".pub", mimeType: "application/vnd.ms-publisher" },
    { ext: ".ppt", mimeType: "application/vnd.ms-powerpoint" },
    { ext: ".doc", mimeType: "application/msword" },
    { ext: ".ps", mimeType: "application/postscript" },
    { ext: ".psd", mimeType: "image/vnd.adobe.photoshop" },
    { ext: ".p7s", mimeType: "application/pkcs7-signature" },
    { ext: ".ogg", mimeType: "application/ogg" },
    { ext: ".oga", mimeType: "audio/ogg" },
    { ext: ".ogv", mimeType: "video/ogg" },
    { ext: ".png", mimeType: "image/png" },
    { ext: ".png", mimeType: "image/vnd.mozilla.apng" },
    { ext: ".jpg", mimeType: "image/jpeg" },
    { ext: ".jxl", mimeType: "image/jxl" },
    { ext: ".jp2", mimeType: "image/jp2" },
    { ext: ".jpf", mimeType: "image/jpx" },
    { ext: ".jpm", mimeType: "image/jpm" },
    { ext: ".jxs", mimeType: "image/jxs" },
    { ext: ".gif", mimeType: "image/gif" },
    { ext: ".webp", mimeType: "image/webp" },
    { ext: ".exe", mimeType: "application/vnd.microsoft.portable-executable" },
    { ext: "", mimeType: "application/x-elf" },
    { ext: "", mimeType: "application/x-object" },
    { ext: "", mimeType: "application/x-executable" },
    { ext: ".so", mimeType: "application/x-sharedlib" },
    { ext: "", mimeType: "application/x-coredump" },
    { ext: ".a", mimeType: "application/x-archive" },
    { ext: ".deb", mimeType: "application/vnd.debian.binary-package" },
    { ext: ".tar", mimeType: "application/x-tar" },
    { ext: ".xar", mimeType: "application/x-xar" },
    { ext: ".bz2", mimeType: "application/x-bzip2" },
    { ext: ".fits", mimeType: "application/fits" },
    { ext: ".tiff", mimeType: "image/tiff" },
    { ext: ".bmp", mimeType: "image/bmp" },
    { ext: ".ico", mimeType: "image/x-icon" },
    { ext: ".mp3", mimeType: "audio/mpeg" },
    { ext: ".flac", mimeType: "audio/flac" },
    { ext: ".midi", mimeType: "audio/midi" },
    { ext: ".ape", mimeType: "audio/ape" },
    { ext: ".mpc", mimeType: "audio/musepack" },
    { ext: ".amr", mimeType: "audio/amr" },
    { ext: ".wav", mimeType: "audio/wav" },
    { ext: ".aiff", mimeType: "audio/aiff" },
    { ext: ".au", mimeType: "audio/basic" },
    { ext: ".mpeg", mimeType: "video/mpeg" },
    { ext: ".mov", mimeType: "video/quicktime" },
    { ext: ".mp4", mimeType: "video/mp4" },
    { ext: ".avif", mimeType: "image/avif" },
    { ext: ".3gp", mimeType: "video/3gpp" },
    { ext: ".3g2", mimeType: "video/3gpp2" },
    { ext: ".mp4", mimeType: "audio/mp4" },
    { ext: ".mqv", mimeType: "video/quicktime" },
    { ext: ".m4a", mimeType: "audio/x-m4a" },
    { ext: ".m4v", mimeType: "video/x-m4v" },
    { ext: ".heic", mimeType: "image/heic" },
    { ext: ".heic", mimeType: "image/heic-sequence" },
    { ext: ".heif", mimeType: "image/heif" },
    { ext: ".heif", mimeType: "image/heif-sequence" },
    { ext: ".mj2", mimeType: "video/mj2" },
    { ext: ".dvb", mimeType: "video/vnd.dvb.file" },
    { ext: ".webm", mimeType: "video/webm" },
    { ext: ".avi", mimeType: "video/x-msvideo" },
    { ext: ".flv", mimeType: "video/x-flv" },
    { ext: ".mkv", mimeType: "video/x-matroska" },
    { ext: ".asf", mimeType: "video/x-ms-asf" },
    { ext: ".asf", mimeType: "video/x-ms-wmv" },
    { ext: ".asf", mimeType: "video/asf" },
    { ext: ".aac", mimeType: "audio/aac" },
    { ext: ".voc", mimeType: "audio/x-unknown" },
    { ext: ".m3u", mimeType: "application/vnd.apple.mpegurl" },
    { ext: ".rmvb", mimeType: "application/vnd.rn-realmedia-vbr" },
    { ext: ".gz", mimeType: "application/gzip" },
    { ext: ".class", mimeType: "application/x-java-applet" },
    { ext: ".swf", mimeType: "application/x-shockwave-flash" },
    { ext: ".crx", mimeType: "application/x-chrome-extension" },
    { ext: ".ttf", mimeType: "font/ttf" },
    { ext: ".woff", mimeType: "font/woff" },
    { ext: ".woff2", mimeType: "font/woff2" },
    { ext: ".otf", mimeType: "font/otf" },
    { ext: ".ttc", mimeType: "font/collection" },
    { ext: ".eot", mimeType: "application/vnd.ms-fontobject" },
    { ext: ".wasm", mimeType: "application/wasm" },
    { ext: ".shx", mimeType: "application/vnd.shx" },
    { ext: ".shp", mimeType: "application/vnd.shp" },
    { ext: ".dbf", mimeType: "application/x-dbf" },
    { ext: ".dcm", mimeType: "application/dicom" },
    { ext: ".rar", mimeType: "application/x-rar-compressed" },
    { ext: ".djvu", mimeType: "image/vnd.djvu" },
    { ext: ".mobi", mimeType: "application/x-mobipocket-ebook" },
    { ext: ".lit", mimeType: "application/x-ms-reader" },
    { ext: ".bpg", mimeType: "image/bpg" },
    { ext: ".cbor", mimeType: "application/cbor" },
    { ext: ".sqlite", mimeType: "application/vnd.sqlite3" },
    { ext: ".dwg", mimeType: "image/vnd.dwg" },
    { ext: ".nes", mimeType: "application/vnd.nintendo.snes.rom" },
    { ext: ".lnk", mimeType: "application/x-ms-shortcut" },
    { ext: ".macho", mimeType: "application/x-mach-binary" },
    { ext: ".qcp", mimeType: "audio/qcelp" },
    { ext: ".icns", mimeType: "image/x-icns" },
    { ext: ".hdr", mimeType: "image/vnd.radiance" },
    { ext: ".mrc", mimeType: "application/marc" },
    { ext: ".mdb", mimeType: "application/x-msaccess" },
    { ext: ".accdb", mimeType: "application/x-msaccess" },
    { ext: ".zst", mimeType: "application/zstd" },
    { ext: ".cab", mimeType: "application/vnd.ms-cab-compressed" },
    { ext: ".rpm", mimeType: "application/x-rpm" },
    { ext: ".xz", mimeType: "application/x-xz" },
    { ext: ".lz", mimeType: "application/lzip" },
    { ext: ".torrent", mimeType: "application/x-bittorrent" },
    { ext: ".cpio", mimeType: "application/x-cpio" },
    { ext: "", mimeType: "application/tzif" },
    { ext: ".xcf", mimeType: "image/x-xcf" },
    { ext: ".pat", mimeType: "image/x-gimp-pat" },
    { ext: ".gbr", mimeType: "image/x-gimp-gbr" },
    { ext: ".glb", mimeType: "model/gltf-binary" },
    { ext: ".cab", mimeType: "application/x-installshield" },
    { ext: ".jxr", mimeType: "image/jxr" },
    { ext: ".parquet", mimeType: "application/vnd.apache.parquet" },
    { ext: ".txt", mimeType: "text/plain" },
    { ext: ".html", mimeType: "text/html" },
    { ext: ".svg", mimeType: "image/svg+xml" },
    { ext: ".xml", mimeType: "text/xml" },
    { ext: ".rss", mimeType: "application/rss+xml" },
    { ext: ".atom", mimeType: "application/atom+xml" },
    { ext: ".x3d", mimeType: "model/x3d+xml" },
    { ext: ".kml", mimeType: "application/vnd.google-earth.kml+xml" },
    { ext: ".xlf", mimeType: "application/x-xliff+xml" },
    { ext: ".dae", mimeType: "model/vnd.collada+xml" },
    { ext: ".gml", mimeType: "application/gml+xml" },
    { ext: ".gpx", mimeType: "application/gpx+xml" },
    { ext: ".tcx", mimeType: "application/vnd.garmin.tcx+xml" },
    { ext: ".amf", mimeType: "application/x-amf" },
    { ext: ".3mf", mimeType: "application/vnd.ms-package.3dmanufacturing-3dmodel+xml" },
    { ext: ".xfdf", mimeType: "application/vnd.adobe.xfdf" },
    { ext: ".owl", mimeType: "application/owl+xml" },
    { ext: ".php", mimeType: "text/x-php" },
    { ext: ".js", mimeType: "text/javascript" },
    { ext: ".lua", mimeType: "text/x-lua" },
    { ext: ".pl", mimeType: "text/x-perl" },
    { ext: ".py", mimeType: "text/x-python" },
    { ext: ".json", mimeType: "application/json" },
    { ext: ".geojson", mimeType: "application/geo+json" },
    { ext: ".har", mimeType: "application/json" },
    { ext: ".ndjson", mimeType: "application/x-ndjson" },
    { ext: ".rtf", mimeType: "text/rtf" },
    { ext: ".srt", mimeType: "application/x-subrip" },
    { ext: ".tcl", mimeType: "text/x-tcl" },
    { ext: ".csv", mimeType: "text/csv" },
    { ext: ".tsv", mimeType: "text/tab-separated-values" },
    { ext: ".vcf", mimeType: "text/vcard" },
    { ext: ".ics", mimeType: "text/calendar" },
    { ext: ".warc", mimeType: "application/warc" },
    { ext: ".vtt", mimeType: "text/vtt" },
    { ext: ".pbm", mimeType: "image/x-portable-bitmap" },
    { ext: ".pgm", mimeType: "image/x-portable-graymap" },
    { ext: ".ppm", mimeType: "image/x-portable-pixmap" },
    { ext: ".eml", mimeType: "message/rfc822" },
];
