file-type 16.0.0 → 16.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core.d.ts +8 -3
- package/core.js +27 -12
- package/package.json +6 -3
- package/readme.md +82 -79
- package/supported.js +8 -2
package/core.d.ts
CHANGED
|
@@ -135,7 +135,10 @@ declare namespace core {
|
|
|
135
135
|
| 'lzh'
|
|
136
136
|
| 'pgp'
|
|
137
137
|
| 'asar'
|
|
138
|
-
| 'stl'
|
|
138
|
+
| 'stl'
|
|
139
|
+
| 'chm'
|
|
140
|
+
| '3mf'
|
|
141
|
+
| 'zst';
|
|
139
142
|
|
|
140
143
|
type MimeType =
|
|
141
144
|
| 'image/jpeg'
|
|
@@ -264,7 +267,10 @@ declare namespace core {
|
|
|
264
267
|
| 'application/x-lzh-compressed'
|
|
265
268
|
| 'application/pgp-encrypted'
|
|
266
269
|
| 'application/x-asar'
|
|
267
|
-
| 'model/stl'
|
|
270
|
+
| 'model/stl'
|
|
271
|
+
| 'application/vnd.ms-htmlhelp'
|
|
272
|
+
| 'model/3mf'
|
|
273
|
+
| 'application/zstd';
|
|
268
274
|
|
|
269
275
|
interface FileTypeResult {
|
|
270
276
|
/**
|
|
@@ -372,4 +378,3 @@ declare namespace core {
|
|
|
372
378
|
}
|
|
373
379
|
|
|
374
380
|
export = core;
|
|
375
|
-
|
package/core.js
CHANGED
|
@@ -55,15 +55,6 @@ function _check(buffer, headers, options) {
|
|
|
55
55
|
return true;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
async function _checkSequence(sequence, tokenizer, ignoreBytes) {
|
|
59
|
-
const buffer = Buffer.alloc(minimumBytes);
|
|
60
|
-
await tokenizer.ignore(ignoreBytes);
|
|
61
|
-
|
|
62
|
-
await tokenizer.peekBuffer(buffer, {mayBeLess: true});
|
|
63
|
-
|
|
64
|
-
return buffer.includes(Buffer.from(sequence));
|
|
65
|
-
}
|
|
66
|
-
|
|
67
58
|
async function fromTokenizer(tokenizer) {
|
|
68
59
|
try {
|
|
69
60
|
return _fromTokenizer(tokenizer);
|
|
@@ -79,7 +70,6 @@ async function _fromTokenizer(tokenizer) {
|
|
|
79
70
|
const bytesRead = 12;
|
|
80
71
|
const check = (header, options) => _check(buffer, header, options);
|
|
81
72
|
const checkString = (header, options) => check(stringToBytes(header), options);
|
|
82
|
-
const checkSequence = (sequence, ignoreBytes) => _checkSequence(sequence, tokenizer, ignoreBytes);
|
|
83
73
|
|
|
84
74
|
// Keep reading until EOF if the file size is unknown.
|
|
85
75
|
if (!tokenizer.fileInfo.size) {
|
|
@@ -318,6 +308,13 @@ async function _fromTokenizer(tokenizer) {
|
|
|
318
308
|
};
|
|
319
309
|
}
|
|
320
310
|
|
|
311
|
+
if (zipHeader.filename.startsWith('3D/') && zipHeader.filename.endsWith('.model')) {
|
|
312
|
+
return {
|
|
313
|
+
ext: '3mf',
|
|
314
|
+
mime: 'model/3mf'
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
|
|
321
318
|
// The docx, xlsx and pptx file types extend the Office Open XML file format:
|
|
322
319
|
// https://en.wikipedia.org/wiki/Office_Open_XML_file_formats
|
|
323
320
|
// We look for:
|
|
@@ -589,9 +586,13 @@ async function _fromTokenizer(tokenizer) {
|
|
|
589
586
|
}
|
|
590
587
|
|
|
591
588
|
if (checkString('%PDF')) {
|
|
589
|
+
await tokenizer.ignore(1350);
|
|
590
|
+
const maxBufferSize = 10 * 1024 * 1024;
|
|
591
|
+
const buffer = Buffer.alloc(Math.min(maxBufferSize, tokenizer.fileInfo.size));
|
|
592
|
+
await tokenizer.readBuffer(buffer, {mayBeLess: true});
|
|
593
|
+
|
|
592
594
|
// Check if this is an Adobe Illustrator file
|
|
593
|
-
|
|
594
|
-
if (isAiFile) {
|
|
595
|
+
if (buffer.includes(Buffer.from('AIPrivateData'))) {
|
|
595
596
|
return {
|
|
596
597
|
ext: 'ai',
|
|
597
598
|
mime: 'application/postscript'
|
|
@@ -804,6 +805,13 @@ async function _fromTokenizer(tokenizer) {
|
|
|
804
805
|
};
|
|
805
806
|
}
|
|
806
807
|
|
|
808
|
+
if (check([0x28, 0xB5, 0x2F, 0xFD])) {
|
|
809
|
+
return {
|
|
810
|
+
ext: 'zst',
|
|
811
|
+
mime: 'application/zstd'
|
|
812
|
+
};
|
|
813
|
+
}
|
|
814
|
+
|
|
807
815
|
// -- 5-byte signatures --
|
|
808
816
|
|
|
809
817
|
if (check([0x4F, 0x54, 0x54, 0x4F, 0x00])) {
|
|
@@ -880,6 +888,13 @@ async function _fromTokenizer(tokenizer) {
|
|
|
880
888
|
}
|
|
881
889
|
}
|
|
882
890
|
|
|
891
|
+
if (checkString('ITSF')) {
|
|
892
|
+
return {
|
|
893
|
+
ext: 'chm',
|
|
894
|
+
mime: 'application/vnd.ms-htmlhelp'
|
|
895
|
+
};
|
|
896
|
+
}
|
|
897
|
+
|
|
883
898
|
// -- 6-byte signatures --
|
|
884
899
|
|
|
885
900
|
if (check([0xFD, 0x37, 0x7A, 0x58, 0x5A, 0x00])) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "file-type",
|
|
3
|
-
"version": "16.
|
|
3
|
+
"version": "16.3.0",
|
|
4
4
|
"description": "Detect the file type of a Buffer/Uint8Array/ArrayBuffer",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "sindresorhus/file-type",
|
|
@@ -179,7 +179,10 @@
|
|
|
179
179
|
"lzh",
|
|
180
180
|
"pgp",
|
|
181
181
|
"asar",
|
|
182
|
-
"stl"
|
|
182
|
+
"stl",
|
|
183
|
+
"chm",
|
|
184
|
+
"3mf",
|
|
185
|
+
"zst"
|
|
183
186
|
],
|
|
184
187
|
"devDependencies": {
|
|
185
188
|
"@types/node": "^13.1.4",
|
|
@@ -190,7 +193,7 @@
|
|
|
190
193
|
"xo": "^0.25.3"
|
|
191
194
|
},
|
|
192
195
|
"dependencies": {
|
|
193
|
-
"readable-web-to-node-stream": "^
|
|
196
|
+
"readable-web-to-node-stream": "^3.0.0",
|
|
194
197
|
"strtok3": "^6.0.3",
|
|
195
198
|
"token-types": "^2.0.0",
|
|
196
199
|
"typedarray-to-buffer": "^3.1.5"
|
package/readme.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# file-type
|
|
1
|
+
# file-type
|
|
2
2
|
|
|
3
3
|
> Detect the file type of a Buffer/Uint8Array/ArrayBuffer
|
|
4
4
|
|
|
@@ -272,12 +272,12 @@ Returns a set of supported MIME types.
|
|
|
272
272
|
|
|
273
273
|
## Supported file types
|
|
274
274
|
|
|
275
|
-
- [`jpg`](https://en.wikipedia.org/wiki/JPEG)
|
|
276
|
-
- [`png`](https://en.wikipedia.org/wiki/Portable_Network_Graphics)
|
|
275
|
+
- [`jpg`](https://en.wikipedia.org/wiki/JPEG) - Joint Photographic Experts Group image
|
|
276
|
+
- [`png`](https://en.wikipedia.org/wiki/Portable_Network_Graphics) - Portable Network Graphics
|
|
277
277
|
- [`apng`](https://en.wikipedia.org/wiki/APNG) - Animated Portable Network Graphics
|
|
278
|
-
- [`gif`](https://en.wikipedia.org/wiki/GIF)
|
|
279
|
-
- [`webp`](https://en.wikipedia.org/wiki/WebP)
|
|
280
|
-
- [`flif`](https://en.wikipedia.org/wiki/Free_Lossless_Image_Format)
|
|
278
|
+
- [`gif`](https://en.wikipedia.org/wiki/GIF) - Graphics Interchange Format
|
|
279
|
+
- [`webp`](https://en.wikipedia.org/wiki/WebP) - Web Picture format
|
|
280
|
+
- [`flif`](https://en.wikipedia.org/wiki/Free_Lossless_Image_Format) - Free Lossless Image Format
|
|
281
281
|
- [`cr2`](https://fileinfo.com/extension/cr2) - Canon Raw image file (v2)
|
|
282
282
|
- [`cr3`](https://fileinfo.com/extension/cr3) - Canon Raw image file (v3)
|
|
283
283
|
- [`orf`](https://en.wikipedia.org/wiki/ORF_format) - Olympus Raw image file
|
|
@@ -286,86 +286,87 @@ Returns a set of supported MIME types.
|
|
|
286
286
|
- [`nef`](https://www.nikonusa.com/en/learn-and-explore/a/products-and-innovation/nikon-electronic-format-nef.html) - Nikon Electronic Format image file
|
|
287
287
|
- [`rw2`](https://en.wikipedia.org/wiki/Raw_image_format) - Panasonic RAW image file
|
|
288
288
|
- [`raf`](https://en.wikipedia.org/wiki/Raw_image_format) - Fujifilm RAW image file
|
|
289
|
-
- [`tif`](https://en.wikipedia.org/wiki/Tagged_Image_File_Format)
|
|
290
|
-
- [`bmp`](https://en.wikipedia.org/wiki/BMP_file_format)
|
|
291
|
-
- [`icns`](https://en.wikipedia.org/wiki/Apple_Icon_Image_format)
|
|
292
|
-
- [`jxr`](https://en.wikipedia.org/wiki/JPEG_XR)
|
|
293
|
-
- [`psd`](https://en.wikipedia.org/wiki/Adobe_Photoshop#File_format)
|
|
294
|
-
- [`indd`](https://en.wikipedia.org/wiki/Adobe_InDesign#File_format)
|
|
295
|
-
- [`zip`](https://en.wikipedia.org/wiki/Zip_(file_format))
|
|
296
|
-
- [`tar`](https://en.wikipedia.org/wiki/Tar_(computing)#File_format)
|
|
297
|
-
- [`rar`](https://en.wikipedia.org/wiki/RAR_(file_format))
|
|
298
|
-
- [`gz`](https://en.wikipedia.org/wiki/Gzip)
|
|
299
|
-
- [`bz2`](https://en.wikipedia.org/wiki/Bzip2)
|
|
300
|
-
- [`
|
|
301
|
-
- [`
|
|
302
|
-
- [`
|
|
303
|
-
- [`
|
|
304
|
-
- [`
|
|
305
|
-
- [`
|
|
306
|
-
- [`
|
|
307
|
-
- [`
|
|
308
|
-
- [`
|
|
289
|
+
- [`tif`](https://en.wikipedia.org/wiki/Tagged_Image_File_Format) - Tagged Image file
|
|
290
|
+
- [`bmp`](https://en.wikipedia.org/wiki/BMP_file_format) - Bitmap image file
|
|
291
|
+
- [`icns`](https://en.wikipedia.org/wiki/Apple_Icon_Image_format) - Apple Icon image
|
|
292
|
+
- [`jxr`](https://en.wikipedia.org/wiki/JPEG_XR) - Joint Photographic Experts Group extended range
|
|
293
|
+
- [`psd`](https://en.wikipedia.org/wiki/Adobe_Photoshop#File_format) - Adobe Photoshop document
|
|
294
|
+
- [`indd`](https://en.wikipedia.org/wiki/Adobe_InDesign#File_format) - Adobe InDesign document
|
|
295
|
+
- [`zip`](https://en.wikipedia.org/wiki/Zip_(file_format)) - Archive file
|
|
296
|
+
- [`tar`](https://en.wikipedia.org/wiki/Tar_(computing)#File_format) - Tarball archive file
|
|
297
|
+
- [`rar`](https://en.wikipedia.org/wiki/RAR_(file_format)) - Archive file
|
|
298
|
+
- [`gz`](https://en.wikipedia.org/wiki/Gzip) - Archive file
|
|
299
|
+
- [`bz2`](https://en.wikipedia.org/wiki/Bzip2) - Archive file
|
|
300
|
+
- [`zst`](https://en.wikipedia.org/wiki/Zstandard) - Archive file
|
|
301
|
+
- [`7z`](https://en.wikipedia.org/wiki/7z) - 7-Zip archive
|
|
302
|
+
- [`dmg`](https://en.wikipedia.org/wiki/Apple_Disk_Image) - Apple Disk Image
|
|
303
|
+
- [`mp4`](https://en.wikipedia.org/wiki/MPEG-4_Part_14#Filename_extensions) - MPEG-4 Part 14 video file
|
|
304
|
+
- [`mid`](https://en.wikipedia.org/wiki/MIDI) - Musical Instrument Digital Interface file
|
|
305
|
+
- [`mkv`](https://en.wikipedia.org/wiki/Matroska) - Matroska video file
|
|
306
|
+
- [`webm`](https://en.wikipedia.org/wiki/WebM) - Web video file
|
|
307
|
+
- [`mov`](https://en.wikipedia.org/wiki/QuickTime_File_Format) - QuickTime video file
|
|
308
|
+
- [`avi`](https://en.wikipedia.org/wiki/Audio_Video_Interleave) - Audio Video Interleave file
|
|
309
|
+
- [`mpg`](https://en.wikipedia.org/wiki/MPEG-1) - MPEG-1 file
|
|
309
310
|
- [`mp1`](https://en.wikipedia.org/wiki/MPEG-1_Audio_Layer_I) - MPEG-1 Audio Layer I
|
|
310
|
-
- [`mp2`](https://en.wikipedia.org/wiki/MPEG-1_Audio_Layer_II)
|
|
311
|
-
- [`mp3`](https://en.wikipedia.org/wiki/MP3)
|
|
312
|
-
- [`ogg`](https://en.wikipedia.org/wiki/Ogg)
|
|
313
|
-
- [`ogv`](https://en.wikipedia.org/wiki/Ogg)
|
|
314
|
-
- [`ogm`](https://en.wikipedia.org/wiki/Ogg)
|
|
315
|
-
- [`oga`](https://en.wikipedia.org/wiki/Ogg)
|
|
316
|
-
- [`spx`](https://en.wikipedia.org/wiki/Ogg)
|
|
317
|
-
- [`ogx`](https://en.wikipedia.org/wiki/Ogg)
|
|
318
|
-
- [`opus`](https://en.wikipedia.org/wiki/Opus_(audio_format))
|
|
319
|
-
- [`flac`](https://en.wikipedia.org/wiki/FLAC)
|
|
320
|
-
- [`wav`](https://en.wikipedia.org/wiki/WAV)
|
|
321
|
-
- [`qcp`](https://en.wikipedia.org/wiki/QCP)
|
|
322
|
-
- [`amr`](https://en.wikipedia.org/wiki/Adaptive_Multi-Rate_audio_codec)
|
|
323
|
-
- [`pdf`](https://en.wikipedia.org/wiki/Portable_Document_Format)
|
|
324
|
-
- [`epub`](https://en.wikipedia.org/wiki/EPUB)
|
|
311
|
+
- [`mp2`](https://en.wikipedia.org/wiki/MPEG-1_Audio_Layer_II) - MPEG-1 Audio Layer II
|
|
312
|
+
- [`mp3`](https://en.wikipedia.org/wiki/MP3) - Audio file
|
|
313
|
+
- [`ogg`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
314
|
+
- [`ogv`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
315
|
+
- [`ogm`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
316
|
+
- [`oga`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
317
|
+
- [`spx`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
318
|
+
- [`ogx`](https://en.wikipedia.org/wiki/Ogg) - Audio file
|
|
319
|
+
- [`opus`](https://en.wikipedia.org/wiki/Opus_(audio_format)) - Audio file
|
|
320
|
+
- [`flac`](https://en.wikipedia.org/wiki/FLAC) - Free Lossless Audio Codec
|
|
321
|
+
- [`wav`](https://en.wikipedia.org/wiki/WAV) - Waveform Audio file
|
|
322
|
+
- [`qcp`](https://en.wikipedia.org/wiki/QCP) - Tagged and chunked data
|
|
323
|
+
- [`amr`](https://en.wikipedia.org/wiki/Adaptive_Multi-Rate_audio_codec) - Adaptive Multi-Rate audio codec
|
|
324
|
+
- [`pdf`](https://en.wikipedia.org/wiki/Portable_Document_Format) - Portable Document Format
|
|
325
|
+
- [`epub`](https://en.wikipedia.org/wiki/EPUB) - E-book file
|
|
325
326
|
- [`mobi`](https://en.wikipedia.org/wiki/Mobipocket) - Mobipocket
|
|
326
|
-
- [`exe`](https://en.wikipedia.org/wiki/.exe)
|
|
327
|
-
- [`swf`](https://en.wikipedia.org/wiki/SWF)
|
|
328
|
-
- [`rtf`](https://en.wikipedia.org/wiki/Rich_Text_Format)
|
|
329
|
-
- [`woff`](https://en.wikipedia.org/wiki/Web_Open_Font_Format)
|
|
330
|
-
- [`woff2`](https://en.wikipedia.org/wiki/Web_Open_Font_Format)
|
|
331
|
-
- [`eot`](https://en.wikipedia.org/wiki/Embedded_OpenType)
|
|
332
|
-
- [`ttf`](https://en.wikipedia.org/wiki/TrueType)
|
|
333
|
-
- [`otf`](https://en.wikipedia.org/wiki/OpenType)
|
|
334
|
-
- [`ico`](https://en.wikipedia.org/wiki/ICO_(file_format))
|
|
335
|
-
- [`flv`](https://en.wikipedia.org/wiki/Flash_Video)
|
|
336
|
-
- [`ps`](https://en.wikipedia.org/wiki/Postscript)
|
|
337
|
-
- [`xz`](https://en.wikipedia.org/wiki/Xz)
|
|
338
|
-
- [`sqlite`](https://www.sqlite.org/fileformat2.html)
|
|
339
|
-
- [`nes`](https://fileinfo.com/extension/nes)
|
|
340
|
-
- [`crx`](https://developer.chrome.com/extensions/crx)
|
|
341
|
-
- [`xpi`](https://en.wikipedia.org/wiki/XPInstall)
|
|
342
|
-
- [`cab`](https://en.wikipedia.org/wiki/Cabinet_(file_format))
|
|
343
|
-
- [`deb`](https://en.wikipedia.org/wiki/Deb_(file_format))
|
|
344
|
-
- [`ar`](https://en.wikipedia.org/wiki/Ar_(Unix))
|
|
345
|
-
- [`rpm`](https://fileinfo.com/extension/rpm)
|
|
346
|
-
- [`Z`](https://fileinfo.com/extension/z)
|
|
347
|
-
- [`lz`](https://en.wikipedia.org/wiki/Lzip)
|
|
348
|
-
- [`cfb`](https://en.wikipedia.org/wiki/Compound_File_Binary_Format)
|
|
349
|
-
- [`mxf`](https://en.wikipedia.org/wiki/Material_Exchange_Format)
|
|
350
|
-
- [`mts`](https://en.wikipedia.org/wiki/.m2ts)
|
|
351
|
-
- [`wasm`](https://en.wikipedia.org/wiki/WebAssembly)
|
|
352
|
-
- [`blend`](https://wiki.blender.org/index.php/Dev:Source/Architecture/File_Format)
|
|
353
|
-
- [`bpg`](https://bellard.org/bpg/)
|
|
354
|
-
- [`docx`](https://en.wikipedia.org/wiki/Office_Open_XML)
|
|
355
|
-
- [`pptx`](https://en.wikipedia.org/wiki/Office_Open_XML)
|
|
356
|
-
- [`xlsx`](https://en.wikipedia.org/wiki/Office_Open_XML)
|
|
327
|
+
- [`exe`](https://en.wikipedia.org/wiki/.exe) - Executable file
|
|
328
|
+
- [`swf`](https://en.wikipedia.org/wiki/SWF) - Adobe Flash Player file
|
|
329
|
+
- [`rtf`](https://en.wikipedia.org/wiki/Rich_Text_Format) - Rich Text Format
|
|
330
|
+
- [`woff`](https://en.wikipedia.org/wiki/Web_Open_Font_Format) - Web Open Font Format
|
|
331
|
+
- [`woff2`](https://en.wikipedia.org/wiki/Web_Open_Font_Format) - Web Open Font Format
|
|
332
|
+
- [`eot`](https://en.wikipedia.org/wiki/Embedded_OpenType) - Embedded OpenType font
|
|
333
|
+
- [`ttf`](https://en.wikipedia.org/wiki/TrueType) - TrueType font
|
|
334
|
+
- [`otf`](https://en.wikipedia.org/wiki/OpenType) - OpenType font
|
|
335
|
+
- [`ico`](https://en.wikipedia.org/wiki/ICO_(file_format)) - Windows icon file
|
|
336
|
+
- [`flv`](https://en.wikipedia.org/wiki/Flash_Video) - Flash video
|
|
337
|
+
- [`ps`](https://en.wikipedia.org/wiki/Postscript) - Postscript
|
|
338
|
+
- [`xz`](https://en.wikipedia.org/wiki/Xz) - Compressed file
|
|
339
|
+
- [`sqlite`](https://www.sqlite.org/fileformat2.html) - SQLite file
|
|
340
|
+
- [`nes`](https://fileinfo.com/extension/nes) - Nintendo NES ROM
|
|
341
|
+
- [`crx`](https://developer.chrome.com/extensions/crx) - Google Chrome extension
|
|
342
|
+
- [`xpi`](https://en.wikipedia.org/wiki/XPInstall) - XPInstall file
|
|
343
|
+
- [`cab`](https://en.wikipedia.org/wiki/Cabinet_(file_format)) - Cabinet file
|
|
344
|
+
- [`deb`](https://en.wikipedia.org/wiki/Deb_(file_format)) - Debian package
|
|
345
|
+
- [`ar`](https://en.wikipedia.org/wiki/Ar_(Unix)) - Archive file
|
|
346
|
+
- [`rpm`](https://fileinfo.com/extension/rpm) - Red Hat Package Manager file
|
|
347
|
+
- [`Z`](https://fileinfo.com/extension/z) - Unix Compressed File
|
|
348
|
+
- [`lz`](https://en.wikipedia.org/wiki/Lzip) - Arhive file
|
|
349
|
+
- [`cfb`](https://en.wikipedia.org/wiki/Compound_File_Binary_Format) - Compount File Binary Format
|
|
350
|
+
- [`mxf`](https://en.wikipedia.org/wiki/Material_Exchange_Format) - Material Exchange Format
|
|
351
|
+
- [`mts`](https://en.wikipedia.org/wiki/.m2ts) - Blu-ray Disc Audio-Video MPEG-2 Transport Stream
|
|
352
|
+
- [`wasm`](https://en.wikipedia.org/wiki/WebAssembly) - WebAssembly intermediate compiled format
|
|
353
|
+
- [`blend`](https://wiki.blender.org/index.php/Dev:Source/Architecture/File_Format) - Blender project
|
|
354
|
+
- [`bpg`](https://bellard.org/bpg/) - Better Portable Graphics file
|
|
355
|
+
- [`docx`](https://en.wikipedia.org/wiki/Office_Open_XML) - Microsoft Word
|
|
356
|
+
- [`pptx`](https://en.wikipedia.org/wiki/Office_Open_XML) - Microsoft Powerpoint
|
|
357
|
+
- [`xlsx`](https://en.wikipedia.org/wiki/Office_Open_XML) - Microsoft Excel
|
|
357
358
|
- [`jp2`](https://en.wikipedia.org/wiki/JPEG_2000) - JPEG 2000
|
|
358
359
|
- [`jpm`](https://en.wikipedia.org/wiki/JPEG_2000) - JPEG 2000
|
|
359
360
|
- [`jpx`](https://en.wikipedia.org/wiki/JPEG_2000) - JPEG 2000
|
|
360
361
|
- [`mj2`](https://en.wikipedia.org/wiki/Motion_JPEG_2000) - Motion JPEG 2000
|
|
361
|
-
- [`aif`](https://en.wikipedia.org/wiki/Audio_Interchange_File_Format)
|
|
362
|
+
- [`aif`](https://en.wikipedia.org/wiki/Audio_Interchange_File_Format) - Audio Interchange file
|
|
362
363
|
- [`odt`](https://en.wikipedia.org/wiki/OpenDocument) - OpenDocument for word processing
|
|
363
364
|
- [`ods`](https://en.wikipedia.org/wiki/OpenDocument) - OpenDocument for spreadsheets
|
|
364
365
|
- [`odp`](https://en.wikipedia.org/wiki/OpenDocument) - OpenDocument for presentations
|
|
365
|
-
- [`xml`](https://en.wikipedia.org/wiki/XML)
|
|
366
|
-
- [`heic`](https://nokiatech.github.io/heif/technical.html)
|
|
367
|
-
- [`cur`](https://en.wikipedia.org/wiki/ICO_(file_format))
|
|
368
|
-
- [`ktx`](https://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/)
|
|
366
|
+
- [`xml`](https://en.wikipedia.org/wiki/XML) - eXtensible Markup Language
|
|
367
|
+
- [`heic`](https://nokiatech.github.io/heif/technical.html) - High Efficiency Image File Format
|
|
368
|
+
- [`cur`](https://en.wikipedia.org/wiki/ICO_(file_format)) - Icon file
|
|
369
|
+
- [`ktx`](https://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/) - OpenGL and OpenGL ES textures
|
|
369
370
|
- [`ape`](https://en.wikipedia.org/wiki/Monkey%27s_Audio) - Monkey's Audio
|
|
370
371
|
- [`wv`](https://en.wikipedia.org/wiki/WavPack) - WavPack
|
|
371
372
|
- [`asf`](https://en.wikipedia.org/wiki/Advanced_Systems_Format) - Advanced Systems Format
|
|
@@ -404,13 +405,15 @@ Returns a set of supported MIME types.
|
|
|
404
405
|
- [`pgp`](https://en.wikipedia.org/wiki/Pretty_Good_Privacy) - Pretty Good Privacy
|
|
405
406
|
- [`asar`](https://github.com/electron/asar#format) - Archive format primarily used to enclose Electron applications
|
|
406
407
|
- [`stl`](https://en.wikipedia.org/wiki/STL_(file_format)) - Standard Tesselated Geometry File Format (ASCII only)
|
|
408
|
+
- [`chm`](https://en.wikipedia.org/wiki/Microsoft_Compiled_HTML_Help) - Microsoft Compiled HTML Help
|
|
409
|
+
- [`3mf`](https://en.wikipedia.org/wiki/3D_Manufacturing_Format) - 3D Manufacturing Format
|
|
407
410
|
|
|
408
411
|
*Pull requests are welcome for additional commonly used file types.*
|
|
409
412
|
|
|
410
413
|
The following file types will not be accepted:
|
|
411
414
|
- [MS-CFB: Microsoft Compound File Binary File Format based formats](https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cfb/53989ce4-7b05-4f8d-829b-d08d6148375b), too old and difficult to parse:
|
|
412
|
-
- `.doc` - Microsoft Word 97-2003 Document
|
|
413
|
-
- `.xls` - Microsoft Excel 97-2003 Document
|
|
415
|
+
- `.doc` - Microsoft Word 97-2003 Document
|
|
416
|
+
- `.xls` - Microsoft Excel 97-2003 Document
|
|
414
417
|
- `.ppt` - Microsoft PowerPoint97-2003 Document
|
|
415
418
|
- `.msi` - Microsoft Windows Installer
|
|
416
419
|
- `.csv` - [Reason.](https://github.com/sindresorhus/file-type/issues/264#issuecomment-568439196)
|
package/supported.js
CHANGED
|
@@ -133,7 +133,10 @@ module.exports = {
|
|
|
133
133
|
'lzh',
|
|
134
134
|
'pgp',
|
|
135
135
|
'asar',
|
|
136
|
-
'stl'
|
|
136
|
+
'stl',
|
|
137
|
+
'chm',
|
|
138
|
+
'3mf',
|
|
139
|
+
'zst'
|
|
137
140
|
],
|
|
138
141
|
mimeTypes: [
|
|
139
142
|
'image/jpeg',
|
|
@@ -262,6 +265,9 @@ module.exports = {
|
|
|
262
265
|
'application/x-lzh-compressed',
|
|
263
266
|
'application/pgp-encrypted',
|
|
264
267
|
'application/x-asar',
|
|
265
|
-
'model/stl'
|
|
268
|
+
'model/stl',
|
|
269
|
+
'application/vnd.ms-htmlhelp',
|
|
270
|
+
'model/3mf',
|
|
271
|
+
'application/zstd'
|
|
266
272
|
]
|
|
267
273
|
};
|