123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.toFileWithPath = exports.COMMON_MIME_TYPES = void 0;
- exports.COMMON_MIME_TYPES = new Map([
- // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types
- ['aac', 'audio/aac'],
- ['abw', 'application/x-abiword'],
- ['arc', 'application/x-freearc'],
- ['avif', 'image/avif'],
- ['avi', 'video/x-msvideo'],
- ['azw', 'application/vnd.amazon.ebook'],
- ['bin', 'application/octet-stream'],
- ['bmp', 'image/bmp'],
- ['bz', 'application/x-bzip'],
- ['bz2', 'application/x-bzip2'],
- ['cda', 'application/x-cdf'],
- ['csh', 'application/x-csh'],
- ['css', 'text/css'],
- ['csv', 'text/csv'],
- ['doc', 'application/msword'],
- ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],
- ['eot', 'application/vnd.ms-fontobject'],
- ['epub', 'application/epub+zip'],
- ['gz', 'application/gzip'],
- ['gif', 'image/gif'],
- ['heic', 'image/heic'],
- ['heif', 'image/heif'],
- ['htm', 'text/html'],
- ['html', 'text/html'],
- ['ico', 'image/vnd.microsoft.icon'],
- ['ics', 'text/calendar'],
- ['jar', 'application/java-archive'],
- ['jpeg', 'image/jpeg'],
- ['jpg', 'image/jpeg'],
- ['js', 'text/javascript'],
- ['json', 'application/json'],
- ['jsonld', 'application/ld+json'],
- ['mid', 'audio/midi'],
- ['midi', 'audio/midi'],
- ['mjs', 'text/javascript'],
- ['mp3', 'audio/mpeg'],
- ['mp4', 'video/mp4'],
- ['mpeg', 'video/mpeg'],
- ['mpkg', 'application/vnd.apple.installer+xml'],
- ['odp', 'application/vnd.oasis.opendocument.presentation'],
- ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],
- ['odt', 'application/vnd.oasis.opendocument.text'],
- ['oga', 'audio/ogg'],
- ['ogv', 'video/ogg'],
- ['ogx', 'application/ogg'],
- ['opus', 'audio/opus'],
- ['otf', 'font/otf'],
- ['png', 'image/png'],
- ['pdf', 'application/pdf'],
- ['php', 'application/x-httpd-php'],
- ['ppt', 'application/vnd.ms-powerpoint'],
- ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],
- ['rar', 'application/vnd.rar'],
- ['rtf', 'application/rtf'],
- ['sh', 'application/x-sh'],
- ['svg', 'image/svg+xml'],
- ['swf', 'application/x-shockwave-flash'],
- ['tar', 'application/x-tar'],
- ['tif', 'image/tiff'],
- ['tiff', 'image/tiff'],
- ['ts', 'video/mp2t'],
- ['ttf', 'font/ttf'],
- ['txt', 'text/plain'],
- ['vsd', 'application/vnd.visio'],
- ['wav', 'audio/wav'],
- ['weba', 'audio/webm'],
- ['webm', 'video/webm'],
- ['webp', 'image/webp'],
- ['woff', 'font/woff'],
- ['woff2', 'font/woff2'],
- ['xhtml', 'application/xhtml+xml'],
- ['xls', 'application/vnd.ms-excel'],
- ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],
- ['xml', 'application/xml'],
- ['xul', 'application/vnd.mozilla.xul+xml'],
- ['zip', 'application/zip'],
- ['7z', 'application/x-7z-compressed'],
- // Others
- ['mkv', 'video/x-matroska'],
- ['mov', 'video/quicktime'],
- ['msg', 'application/vnd.ms-outlook']
- ]);
- function toFileWithPath(file, path) {
- var f = withMimeType(file);
- if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path
- var webkitRelativePath = file.webkitRelativePath;
- Object.defineProperty(f, 'path', {
- value: typeof path === 'string'
- ? path
- // If <input webkitdirectory> is set,
- // the File will have a {webkitRelativePath} property
- // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory
- : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0
- ? webkitRelativePath
- : file.name,
- writable: false,
- configurable: false,
- enumerable: true
- });
- }
- return f;
- }
- exports.toFileWithPath = toFileWithPath;
- function withMimeType(file) {
- var name = file.name;
- var hasExtension = name && name.lastIndexOf('.') !== -1;
- if (hasExtension && !file.type) {
- var ext = name.split('.')
- .pop().toLowerCase();
- var type = exports.COMMON_MIME_TYPES.get(ext);
- if (type) {
- Object.defineProperty(file, 'type', {
- value: type,
- writable: false,
- configurable: false,
- enumerable: true
- });
- }
- }
- return file;
- }
- //# sourceMappingURL=file.js.map
|