@hichchi/utils 0.0.1-alpha.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.
@@ -0,0 +1,1263 @@
1
+ "use strict";
2
+ // noinspection JSUnusedGlobalSymbols
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.saveAsFile = exports.getFileSize = exports.getFileExt = exports.mimeTypes = void 0;
5
+ const object_utils_1 = require("./object.utils");
6
+ /**
7
+ * Map of mime types to all file extensions.
8
+ */
9
+ exports.mimeTypes = new Map([
10
+ ["123", "application/vnd.lotus-1-2-3"],
11
+ ["1km", "application/vnd.1000minds.decision-model+xml"],
12
+ ["3dml", "text/vnd.in3d.3dml"],
13
+ ["3ds", "image/x-3ds"],
14
+ ["3g2", "video/3gpp2"],
15
+ ["3gp", "video/3gpp"],
16
+ ["3gpp", "video/3gpp"],
17
+ ["3mf", "model/3mf"],
18
+ ["7z", "application/x-7z-compressed"],
19
+ ["aab", "application/x-authorware-bin"],
20
+ ["aac", "audio/x-aac"],
21
+ ["aam", "application/x-authorware-map"],
22
+ ["aas", "application/x-authorware-seg"],
23
+ ["abw", "application/x-abiword"],
24
+ ["ac", "application/vnd.nokia.n-gage.ac+xml"],
25
+ ["acc", "application/vnd.americandynamics.acc"],
26
+ ["ace", "application/x-ace-compressed"],
27
+ ["acu", "application/vnd.acucobol"],
28
+ ["acutc", "application/vnd.acucorp"],
29
+ ["adp", "audio/adpcm"],
30
+ ["adts", "audio/aac"],
31
+ ["aep", "application/vnd.audiograph"],
32
+ ["afm", "application/x-font-type1"],
33
+ ["afp", "application/vnd.ibm.modcap"],
34
+ ["age", "application/vnd.age"],
35
+ ["ahead", "application/vnd.ahead.space"],
36
+ ["ai", "application/postscript"],
37
+ ["aif", "audio/x-aiff"],
38
+ ["aifc", "audio/x-aiff"],
39
+ ["aiff", "audio/x-aiff"],
40
+ ["air", "application/vnd.adobe.air-application-installer-package+zip"],
41
+ ["ait", "application/vnd.dvb.ait"],
42
+ ["ami", "application/vnd.amiga.ami"],
43
+ ["aml", "application/automationml-aml+xml"],
44
+ ["amlx", "application/automationml-amlx+zip"],
45
+ ["amr", "audio/amr"],
46
+ ["apk", "application/vnd.android.package-archive"],
47
+ ["apng", "image/apng"],
48
+ ["appcache", "text/cache-manifest"],
49
+ ["appinstaller", "application/appinstaller"],
50
+ ["application", "application/x-ms-application"],
51
+ ["appx", "application/appx"],
52
+ ["appxbundle", "application/appxbundle"],
53
+ ["apr", "application/vnd.lotus-approach"],
54
+ ["arc", "application/x-freearc"],
55
+ ["arj", "application/x-arj"],
56
+ ["asc", "application/pgp-signature"],
57
+ ["asf", "video/x-ms-asf"],
58
+ ["asm", "text/x-asm"],
59
+ ["aso", "application/vnd.accpac.simply.aso"],
60
+ ["asx", "video/x-ms-asf"],
61
+ ["atc", "application/vnd.acucorp"],
62
+ ["atom", "application/atom+xml"],
63
+ ["atomcat", "application/atomcat+xml"],
64
+ ["atomdeleted", "application/atomdeleted+xml"],
65
+ ["atomsvc", "application/atomsvc+xml"],
66
+ ["atx", "application/vnd.antix.game-component"],
67
+ ["au", "audio/basic"],
68
+ ["avci", "image/avci"],
69
+ ["avcs", "image/avcs"],
70
+ ["avi", "video/x-msvideo"],
71
+ ["avif", "image/avif"],
72
+ ["aw", "application/applixware"],
73
+ ["azf", "application/vnd.airzip.filesecure.azf"],
74
+ ["azs", "application/vnd.airzip.filesecure.azs"],
75
+ ["azv", "image/vnd.airzip.accelerator.azv"],
76
+ ["azw", "application/vnd.amazon.ebook"],
77
+ ["b16", "image/vnd.pco.b16"],
78
+ ["bat", "application/x-msdownload"],
79
+ ["bcpio", "application/x-bcpio"],
80
+ ["bdf", "application/x-font-bdf"],
81
+ ["bdm", "application/vnd.syncml.dm+wbxml"],
82
+ ["bdoc", "application/x-bdoc"],
83
+ ["bed", "application/vnd.realvnc.bed"],
84
+ ["bh2", "application/vnd.fujitsu.oasysprs"],
85
+ ["bin", "application/octet-stream"],
86
+ ["blb", "application/x-blorb"],
87
+ ["blorb", "application/x-blorb"],
88
+ ["bmi", "application/vnd.bmi"],
89
+ ["bmml", "application/vnd.balsamiq.bmml+xml"],
90
+ ["bmp", "image/x-ms-bmp"],
91
+ ["book", "application/vnd.framemaker"],
92
+ ["box", "application/vnd.previewsystems.box"],
93
+ ["boz", "application/x-bzip2"],
94
+ ["bpk", "application/octet-stream"],
95
+ ["bsp", "model/vnd.valve.source.compiled-map"],
96
+ ["btf", "image/prs.btif"],
97
+ ["btif", "image/prs.btif"],
98
+ ["buffer", "application/octet-stream"],
99
+ ["bz", "application/x-bzip"],
100
+ ["bz2", "application/x-bzip2"],
101
+ ["c", "text/x-c"],
102
+ ["c11amc", "application/vnd.cluetrust.cartomobile-config"],
103
+ ["c11amz", "application/vnd.cluetrust.cartomobile-config-pkg"],
104
+ ["c4d", "application/vnd.clonk.c4group"],
105
+ ["c4f", "application/vnd.clonk.c4group"],
106
+ ["c4g", "application/vnd.clonk.c4group"],
107
+ ["c4p", "application/vnd.clonk.c4group"],
108
+ ["c4u", "application/vnd.clonk.c4group"],
109
+ ["cab", "application/vnd.ms-cab-compressed"],
110
+ ["caf", "audio/x-caf"],
111
+ ["cap", "application/vnd.tcpdump.pcap"],
112
+ ["car", "application/vnd.curl.car"],
113
+ ["cat", "application/vnd.ms-pki.seccat"],
114
+ ["cb7", "application/x-cbr"],
115
+ ["cba", "application/x-cbr"],
116
+ ["cbr", "application/x-cbr"],
117
+ ["cbt", "application/x-cbr"],
118
+ ["cbz", "application/x-cbr"],
119
+ ["cc", "text/x-c"],
120
+ ["cco", "application/x-cocoa"],
121
+ ["cct", "application/x-director"],
122
+ ["ccxml", "application/ccxml+xml"],
123
+ ["cdbcmsg", "application/vnd.contact.cmsg"],
124
+ ["cdf", "application/x-netcdf"],
125
+ ["cdfx", "application/cdfx+xml"],
126
+ ["cdkey", "application/vnd.mediastation.cdkey"],
127
+ ["cdmia", "application/cdmi-capability"],
128
+ ["cdmic", "application/cdmi-container"],
129
+ ["cdmid", "application/cdmi-domain"],
130
+ ["cdmio", "application/cdmi-object"],
131
+ ["cdmiq", "application/cdmi-queue"],
132
+ ["cdx", "chemical/x-cdx"],
133
+ ["cdxml", "application/vnd.chemdraw+xml"],
134
+ ["cdy", "application/vnd.cinderella"],
135
+ ["cer", "application/pkix-cert"],
136
+ ["cfs", "application/x-cfs-compressed"],
137
+ ["cgm", "image/cgm"],
138
+ ["chat", "application/x-chat"],
139
+ ["chm", "application/vnd.ms-htmlhelp"],
140
+ ["chrt", "application/vnd.kde.kchart"],
141
+ ["cif", "chemical/x-cif"],
142
+ ["cii", "application/vnd.anser-web-certificate-issue-initiation"],
143
+ ["cil", "application/vnd.ms-artgalry"],
144
+ ["cjs", "application/node"],
145
+ ["cla", "application/vnd.claymore"],
146
+ ["class", "application/java-vm"],
147
+ ["cld", "model/vnd.cld"],
148
+ ["clkk", "application/vnd.crick.clicker.keyboard"],
149
+ ["clkp", "application/vnd.crick.clicker.palette"],
150
+ ["clkt", "application/vnd.crick.clicker.template"],
151
+ ["clkw", "application/vnd.crick.clicker.wordbank"],
152
+ ["clkx", "application/vnd.crick.clicker"],
153
+ ["clp", "application/x-msclip"],
154
+ ["cmc", "application/vnd.cosmocaller"],
155
+ ["cmdf", "chemical/x-cmdf"],
156
+ ["cml", "chemical/x-cml"],
157
+ ["cmp", "application/vnd.yellowriver-custom-menu"],
158
+ ["cmx", "image/x-cmx"],
159
+ ["cod", "application/vnd.rim.cod"],
160
+ ["coffee", "text/coffeescript"],
161
+ ["com", "application/x-msdownload"],
162
+ ["conf", "text/plain"],
163
+ ["cpio", "application/x-cpio"],
164
+ ["cpl", "application/cpl+xml"],
165
+ ["cpp", "text/x-c"],
166
+ ["cpt", "application/mac-compactpro"],
167
+ ["crd", "application/x-mscardfile"],
168
+ ["crl", "application/pkix-crl"],
169
+ ["crt", "application/x-x509-ca-cert"],
170
+ ["crx", "application/x-chrome-extension"],
171
+ ["cryptonote", "application/vnd.rig.cryptonote"],
172
+ ["csh", "application/x-csh"],
173
+ ["csl", "application/vnd.citationstyles.style+xml"],
174
+ ["csml", "chemical/x-csml"],
175
+ ["csp", "application/vnd.commonspace"],
176
+ ["css", "text/css"],
177
+ ["cst", "application/x-director"],
178
+ ["csv", "text/csv"],
179
+ ["cu", "application/cu-seeme"],
180
+ ["curl", "text/vnd.curl"],
181
+ ["cwl", "application/cwl"],
182
+ ["cww", "application/prs.cww"],
183
+ ["cxt", "application/x-director"],
184
+ ["cxx", "text/x-c"],
185
+ ["dae", "model/vnd.collada+xml"],
186
+ ["daf", "application/vnd.mobius.daf"],
187
+ ["dart", "application/vnd.dart"],
188
+ ["dataless", "application/vnd.fdsn.seed"],
189
+ ["davmount", "application/davmount+xml"],
190
+ ["dbf", "application/vnd.dbf"],
191
+ ["dbk", "application/docbook+xml"],
192
+ ["dcr", "application/x-director"],
193
+ ["dcurl", "text/vnd.curl.dcurl"],
194
+ ["dd2", "application/vnd.oma.dd2+xml"],
195
+ ["ddd", "application/vnd.fujixerox.ddd"],
196
+ ["ddf", "application/vnd.syncml.dmddf+xml"],
197
+ ["dds", "image/vnd.ms-dds"],
198
+ ["deb", "application/x-debian-package"],
199
+ ["def", "text/plain"],
200
+ ["deploy", "application/octet-stream"],
201
+ ["der", "application/x-x509-ca-cert"],
202
+ ["dfac", "application/vnd.dreamfactory"],
203
+ ["dgc", "application/x-dgc-compressed"],
204
+ ["dib", "image/bmp"],
205
+ ["dic", "text/x-c"],
206
+ ["dir", "application/x-director"],
207
+ ["dis", "application/vnd.mobius.dis"],
208
+ ["disposition-notification", "message/disposition-notification"],
209
+ ["dist", "application/octet-stream"],
210
+ ["distz", "application/octet-stream"],
211
+ ["djv", "image/vnd.djvu"],
212
+ ["djvu", "image/vnd.djvu"],
213
+ ["dll", "application/x-msdownload"],
214
+ ["dmg", "application/x-apple-diskimage"],
215
+ ["dmp", "application/vnd.tcpdump.pcap"],
216
+ ["dms", "application/octet-stream"],
217
+ ["dna", "application/vnd.dna"],
218
+ ["doc", "application/msword"],
219
+ ["docm", "application/vnd.ms-word.document.macroenabled.12"],
220
+ ["docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"],
221
+ ["dot", "application/msword"],
222
+ ["dotm", "application/vnd.ms-word.template.macroenabled.12"],
223
+ ["dotx", "application/vnd.openxmlformats-officedocument.wordprocessingml.template"],
224
+ ["dp", "application/vnd.osgi.dp"],
225
+ ["dpg", "application/vnd.dpgraph"],
226
+ ["dpx", "image/dpx"],
227
+ ["dra", "audio/vnd.dra"],
228
+ ["drle", "image/dicom-rle"],
229
+ ["dsc", "text/prs.lines.tag"],
230
+ ["dssc", "application/dssc+der"],
231
+ ["dtb", "application/x-dtbook+xml"],
232
+ ["dtd", "application/xml-dtd"],
233
+ ["dts", "audio/vnd.dts"],
234
+ ["dtshd", "audio/vnd.dts.hd"],
235
+ ["dump", "application/octet-stream"],
236
+ ["dvb", "video/vnd.dvb.file"],
237
+ ["dvi", "application/x-dvi"],
238
+ ["dwd", "application/atsc-dwd+xml"],
239
+ ["dwf", "model/vnd.dwf"],
240
+ ["dwg", "image/vnd.dwg"],
241
+ ["dxf", "image/vnd.dxf"],
242
+ ["dxp", "application/vnd.spotfire.dxp"],
243
+ ["dxr", "application/x-director"],
244
+ ["ear", "application/java-archive"],
245
+ ["ecelp4800", "audio/vnd.nuera.ecelp4800"],
246
+ ["ecelp7470", "audio/vnd.nuera.ecelp7470"],
247
+ ["ecelp9600", "audio/vnd.nuera.ecelp9600"],
248
+ ["ecma", "application/ecmascript"],
249
+ ["edm", "application/vnd.novadigm.edm"],
250
+ ["edx", "application/vnd.novadigm.edx"],
251
+ ["efif", "application/vnd.picsel"],
252
+ ["ei6", "application/vnd.pg.osasli"],
253
+ ["elc", "application/octet-stream"],
254
+ ["emf", "image/emf"],
255
+ ["eml", "message/rfc822"],
256
+ ["emma", "application/emma+xml"],
257
+ ["emotionml", "application/emotionml+xml"],
258
+ ["emz", "application/x-msmetafile"],
259
+ ["eol", "audio/vnd.digital-winds"],
260
+ ["eot", "application/vnd.ms-fontobject"],
261
+ ["eps", "application/postscript"],
262
+ ["epub", "application/epub+zip"],
263
+ ["es3", "application/vnd.eszigno3+xml"],
264
+ ["esa", "application/vnd.osgi.subsystem"],
265
+ ["esf", "application/vnd.epson.esf"],
266
+ ["et3", "application/vnd.eszigno3+xml"],
267
+ ["etx", "text/x-setext"],
268
+ ["eva", "application/x-eva"],
269
+ ["evy", "application/x-envoy"],
270
+ ["exe", "application/x-msdownload"],
271
+ ["exi", "application/exi"],
272
+ ["exp", "application/express"],
273
+ ["exr", "image/aces"],
274
+ ["ext", "application/vnd.novadigm.ext"],
275
+ ["ez", "application/andrew-inset"],
276
+ ["ez2", "application/vnd.ezpix-album"],
277
+ ["ez3", "application/vnd.ezpix-package"],
278
+ ["f", "text/x-fortran"],
279
+ ["f4v", "video/x-f4v"],
280
+ ["f77", "text/x-fortran"],
281
+ ["f90", "text/x-fortran"],
282
+ ["fbs", "image/vnd.fastbidsheet"],
283
+ ["fcdt", "application/vnd.adobe.formscentral.fcdt"],
284
+ ["fcs", "application/vnd.isac.fcs"],
285
+ ["fdf", "application/vnd.fdf"],
286
+ ["fdt", "application/fdt+xml"],
287
+ ["fe_launch", "application/vnd.denovo.fcselayout-link"],
288
+ ["fg5", "application/vnd.fujitsu.oasysgp"],
289
+ ["fgd", "application/x-director"],
290
+ ["fh", "image/x-freehand"],
291
+ ["fh4", "image/x-freehand"],
292
+ ["fh5", "image/x-freehand"],
293
+ ["fh7", "image/x-freehand"],
294
+ ["fhc", "image/x-freehand"],
295
+ ["fig", "application/x-xfig"],
296
+ ["fits", "image/fits"],
297
+ ["flac", "audio/x-flac"],
298
+ ["fli", "video/x-fli"],
299
+ ["flo", "application/vnd.micrografx.flo"],
300
+ ["flv", "video/x-flv"],
301
+ ["flw", "application/vnd.kde.kivio"],
302
+ ["flx", "text/vnd.fmi.flexstor"],
303
+ ["fly", "text/vnd.fly"],
304
+ ["fm", "application/vnd.framemaker"],
305
+ ["fnc", "application/vnd.frogans.fnc"],
306
+ ["fo", "application/vnd.software602.filler.form+xml"],
307
+ ["for", "text/x-fortran"],
308
+ ["fpx", "image/vnd.fpx"],
309
+ ["frame", "application/vnd.framemaker"],
310
+ ["fsc", "application/vnd.fsc.weblaunch"],
311
+ ["fst", "image/vnd.fst"],
312
+ ["ftc", "application/vnd.fluxtime.clip"],
313
+ ["fti", "application/vnd.anser-web-funds-transfer-initiation"],
314
+ ["fvt", "video/vnd.fvt"],
315
+ ["fxp", "application/vnd.adobe.fxp"],
316
+ ["fxpl", "application/vnd.adobe.fxp"],
317
+ ["fzs", "application/vnd.fuzzysheet"],
318
+ ["g2w", "application/vnd.geoplan"],
319
+ ["g3", "image/g3fax"],
320
+ ["g3w", "application/vnd.geospace"],
321
+ ["gac", "application/vnd.groove-account"],
322
+ ["gam", "application/x-tads"],
323
+ ["gbr", "application/rpki-ghostbusters"],
324
+ ["gca", "application/x-gca-compressed"],
325
+ ["gdl", "model/vnd.gdl"],
326
+ ["gdoc", "application/vnd.google-apps.document"],
327
+ ["ged", "text/vnd.familysearch.gedcom"],
328
+ ["geo", "application/vnd.dynageo"],
329
+ ["geojson", "application/geo+json"],
330
+ ["gex", "application/vnd.geometry-explorer"],
331
+ ["ggb", "application/vnd.geogebra.file"],
332
+ ["ggt", "application/vnd.geogebra.tool"],
333
+ ["ghf", "application/vnd.groove-help"],
334
+ ["gif", "image/gif"],
335
+ ["gim", "application/vnd.groove-identity-message"],
336
+ ["glb", "model/gltf-binary"],
337
+ ["gltf", "model/gltf+json"],
338
+ ["gml", "application/gml+xml"],
339
+ ["gmx", "application/vnd.gmx"],
340
+ ["gnumeric", "application/x-gnumeric"],
341
+ ["gph", "application/vnd.flographit"],
342
+ ["gpx", "application/gpx+xml"],
343
+ ["gqf", "application/vnd.grafeq"],
344
+ ["gqs", "application/vnd.grafeq"],
345
+ ["gram", "application/srgs"],
346
+ ["gramps", "application/x-gramps-xml"],
347
+ ["gre", "application/vnd.geometry-explorer"],
348
+ ["grv", "application/vnd.groove-injector"],
349
+ ["grxml", "application/srgs+xml"],
350
+ ["gsf", "application/x-font-ghostscript"],
351
+ ["gsheet", "application/vnd.google-apps.spreadsheet"],
352
+ ["gslides", "application/vnd.google-apps.presentation"],
353
+ ["gtar", "application/x-gtar"],
354
+ ["gtm", "application/vnd.groove-tool-message"],
355
+ ["gtw", "model/vnd.gtw"],
356
+ ["gv", "text/vnd.graphviz"],
357
+ ["gxf", "application/gxf"],
358
+ ["gxt", "application/vnd.geonext"],
359
+ ["gz", "application/gzip"],
360
+ ["h", "text/x-c"],
361
+ ["h261", "video/h261"],
362
+ ["h263", "video/h263"],
363
+ ["h264", "video/h264"],
364
+ ["hal", "application/vnd.hal+xml"],
365
+ ["hbci", "application/vnd.hbci"],
366
+ ["hbs", "text/x-handlebars-template"],
367
+ ["hdd", "application/x-virtualbox-hdd"],
368
+ ["hdf", "application/x-hdf"],
369
+ ["heic", "image/heic"],
370
+ ["heics", "image/heic-sequence"],
371
+ ["heif", "image/heif"],
372
+ ["heifs", "image/heif-sequence"],
373
+ ["hej2", "image/hej2k"],
374
+ ["held", "application/atsc-held+xml"],
375
+ ["hh", "text/x-c"],
376
+ ["hjson", "application/hjson"],
377
+ ["hlp", "application/winhlp"],
378
+ ["hpgl", "application/vnd.hp-hpgl"],
379
+ ["hpid", "application/vnd.hp-hpid"],
380
+ ["hps", "application/vnd.hp-hps"],
381
+ ["hqx", "application/mac-binhex40"],
382
+ ["hsj2", "image/hsj2"],
383
+ ["htc", "text/x-component"],
384
+ ["htke", "application/vnd.kenameaapp"],
385
+ ["htm", "text/html"],
386
+ ["html", "text/html"],
387
+ ["hvd", "application/vnd.yamaha.hv-dic"],
388
+ ["hvp", "application/vnd.yamaha.hv-voice"],
389
+ ["hvs", "application/vnd.yamaha.hv-script"],
390
+ ["i2g", "application/vnd.intergeo"],
391
+ ["icc", "application/vnd.iccprofile"],
392
+ ["ice", "x-conference/x-cooltalk"],
393
+ ["icm", "application/vnd.iccprofile"],
394
+ ["ico", "image/x-icon"],
395
+ ["ics", "text/calendar"],
396
+ ["ief", "image/ief"],
397
+ ["ifb", "text/calendar"],
398
+ ["ifm", "application/vnd.shana.informed.formdata"],
399
+ ["iges", "model/iges"],
400
+ ["igl", "application/vnd.igloader"],
401
+ ["igm", "application/vnd.insors.igm"],
402
+ ["igs", "model/iges"],
403
+ ["igx", "application/vnd.micrografx.igx"],
404
+ ["iif", "application/vnd.shana.informed.interchange"],
405
+ ["img", "application/octet-stream"],
406
+ ["imp", "application/vnd.accpac.simply.imp"],
407
+ ["ims", "application/vnd.ms-ims"],
408
+ ["in", "text/plain"],
409
+ ["ini", "text/plain"],
410
+ ["ink", "application/inkml+xml"],
411
+ ["inkml", "application/inkml+xml"],
412
+ ["install", "application/x-install-instructions"],
413
+ ["iota", "application/vnd.astraea-software.iota"],
414
+ ["ipfix", "application/ipfix"],
415
+ ["ipk", "application/vnd.shana.informed.package"],
416
+ ["irm", "application/vnd.ibm.rights-management"],
417
+ ["irp", "application/vnd.irepository.package+xml"],
418
+ ["iso", "application/x-iso9660-image"],
419
+ ["itp", "application/vnd.shana.informed.formtemplate"],
420
+ ["its", "application/its+xml"],
421
+ ["ivp", "application/vnd.immervision-ivp"],
422
+ ["ivu", "application/vnd.immervision-ivu"],
423
+ ["jad", "text/vnd.sun.j2me.app-descriptor"],
424
+ ["jade", "text/jade"],
425
+ ["jam", "application/vnd.jam"],
426
+ ["jar", "application/java-archive"],
427
+ ["jardiff", "application/x-java-archive-diff"],
428
+ ["java", "text/x-java-source"],
429
+ ["jhc", "image/jphc"],
430
+ ["jisp", "application/vnd.jisp"],
431
+ ["jls", "image/jls"],
432
+ ["jlt", "application/vnd.hp-jlyt"],
433
+ ["jng", "image/x-jng"],
434
+ ["jnlp", "application/x-java-jnlp-file"],
435
+ ["joda", "application/vnd.joost.joda-archive"],
436
+ ["jp2", "image/jp2"],
437
+ ["jpe", "image/jpeg"],
438
+ ["jpeg", "image/jpeg"],
439
+ ["jpf", "image/jpx"],
440
+ ["jpg", "image/jpeg"],
441
+ ["jpg2", "image/jp2"],
442
+ ["jpgm", "video/jpm"],
443
+ ["jpgv", "video/jpeg"],
444
+ ["jph", "image/jph"],
445
+ ["jpm", "video/jpm"],
446
+ ["jpx", "image/jpx"],
447
+ ["js", "text/javascript"],
448
+ ["json", "application/json"],
449
+ ["json5", "application/json5"],
450
+ ["jsonld", "application/ld+json"],
451
+ ["jsonml", "application/jsonml+json"],
452
+ ["jsx", "text/jsx"],
453
+ ["jt", "model/jt"],
454
+ ["jxr", "image/jxr"],
455
+ ["jxra", "image/jxra"],
456
+ ["jxrs", "image/jxrs"],
457
+ ["jxs", "image/jxs"],
458
+ ["jxsc", "image/jxsc"],
459
+ ["jxsi", "image/jxsi"],
460
+ ["jxss", "image/jxss"],
461
+ ["kar", "audio/midi"],
462
+ ["karbon", "application/vnd.kde.karbon"],
463
+ ["kdbx", "application/x-keepass2"],
464
+ ["key", "application/x-iwork-keynote-sffkey"],
465
+ ["kfo", "application/vnd.kde.kformula"],
466
+ ["kia", "application/vnd.kidspiration"],
467
+ ["kml", "application/vnd.google-earth.kml+xml"],
468
+ ["kmz", "application/vnd.google-earth.kmz"],
469
+ ["kne", "application/vnd.kinar"],
470
+ ["knp", "application/vnd.kinar"],
471
+ ["kon", "application/vnd.kde.kontour"],
472
+ ["kpr", "application/vnd.kde.kpresenter"],
473
+ ["kpt", "application/vnd.kde.kpresenter"],
474
+ ["kpxx", "application/vnd.ds-keypoint"],
475
+ ["ksp", "application/vnd.kde.kspread"],
476
+ ["ktr", "application/vnd.kahootz"],
477
+ ["ktx", "image/ktx"],
478
+ ["ktx2", "image/ktx2"],
479
+ ["ktz", "application/vnd.kahootz"],
480
+ ["kwd", "application/vnd.kde.kword"],
481
+ ["kwt", "application/vnd.kde.kword"],
482
+ ["lasxml", "application/vnd.las.las+xml"],
483
+ ["latex", "application/x-latex"],
484
+ ["lbd", "application/vnd.llamagraphics.life-balance.desktop"],
485
+ ["lbe", "application/vnd.llamagraphics.life-balance.exchange+xml"],
486
+ ["les", "application/vnd.hhe.lesson-player"],
487
+ ["less", "text/less"],
488
+ ["lgr", "application/lgr+xml"],
489
+ ["lha", "application/x-lzh-compressed"],
490
+ ["link66", "application/vnd.route66.link66+xml"],
491
+ ["list", "text/plain"],
492
+ ["list3820", "application/vnd.ibm.modcap"],
493
+ ["listafp", "application/vnd.ibm.modcap"],
494
+ ["litcoffee", "text/coffeescript"],
495
+ ["lnk", "application/x-ms-shortcut"],
496
+ ["log", "text/plain"],
497
+ ["lostxml", "application/lost+xml"],
498
+ ["lrf", "application/octet-stream"],
499
+ ["lrm", "application/vnd.ms-lrm"],
500
+ ["ltf", "application/vnd.frogans.ltf"],
501
+ ["lua", "text/x-lua"],
502
+ ["luac", "application/x-lua-bytecode"],
503
+ ["lvp", "audio/vnd.lucent.voice"],
504
+ ["lwp", "application/vnd.lotus-wordpro"],
505
+ ["lzh", "application/x-lzh-compressed"],
506
+ ["m13", "application/x-msmediaview"],
507
+ ["m14", "application/x-msmediaview"],
508
+ ["m1v", "video/mpeg"],
509
+ ["m21", "application/mp21"],
510
+ ["m2a", "audio/mpeg"],
511
+ ["m2v", "video/mpeg"],
512
+ ["m3a", "audio/mpeg"],
513
+ ["m3u", "audio/x-mpegurl"],
514
+ ["m3u8", "application/vnd.apple.mpegurl"],
515
+ ["m4a", "audio/x-m4a"],
516
+ ["m4p", "application/mp4"],
517
+ ["m4s", "video/iso.segment"],
518
+ ["m4u", "video/vnd.mpegurl"],
519
+ ["m4v", "video/x-m4v"],
520
+ ["ma", "application/mathematica"],
521
+ ["mads", "application/mads+xml"],
522
+ ["maei", "application/mmt-aei+xml"],
523
+ ["mag", "application/vnd.ecowin.chart"],
524
+ ["maker", "application/vnd.framemaker"],
525
+ ["man", "text/troff"],
526
+ ["manifest", "text/cache-manifest"],
527
+ ["map", "application/json"],
528
+ ["mar", "application/octet-stream"],
529
+ ["markdown", "text/markdown"],
530
+ ["mathml", "application/mathml+xml"],
531
+ ["mb", "application/mathematica"],
532
+ ["mbk", "application/vnd.mobius.mbk"],
533
+ ["mbox", "application/mbox"],
534
+ ["mc1", "application/vnd.medcalcdata"],
535
+ ["mcd", "application/vnd.mcd"],
536
+ ["mcurl", "text/vnd.curl.mcurl"],
537
+ ["md", "text/markdown"],
538
+ ["mdb", "application/x-msaccess"],
539
+ ["mdi", "image/vnd.ms-modi"],
540
+ ["mdx", "text/mdx"],
541
+ ["me", "text/troff"],
542
+ ["mesh", "model/mesh"],
543
+ ["meta4", "application/metalink4+xml"],
544
+ ["metalink", "application/metalink+xml"],
545
+ ["mets", "application/mets+xml"],
546
+ ["mfm", "application/vnd.mfmp"],
547
+ ["mft", "application/rpki-manifest"],
548
+ ["mgp", "application/vnd.osgeo.mapguide.package"],
549
+ ["mgz", "application/vnd.proteus.magazine"],
550
+ ["mid", "audio/midi"],
551
+ ["midi", "audio/midi"],
552
+ ["mie", "application/x-mie"],
553
+ ["mif", "application/vnd.mif"],
554
+ ["mime", "message/rfc822"],
555
+ ["mj2", "video/mj2"],
556
+ ["mjp2", "video/mj2"],
557
+ ["mjs", "text/javascript"],
558
+ ["mk3d", "video/x-matroska"],
559
+ ["mka", "audio/x-matroska"],
560
+ ["mkd", "text/x-markdown"],
561
+ ["mks", "video/x-matroska"],
562
+ ["mkv", "video/x-matroska"],
563
+ ["mlp", "application/vnd.dolby.mlp"],
564
+ ["mmd", "application/vnd.chipnuts.karaoke-mmd"],
565
+ ["mmf", "application/vnd.smaf"],
566
+ ["mml", "text/mathml"],
567
+ ["mmr", "image/vnd.fujixerox.edmics-mmr"],
568
+ ["mng", "video/x-mng"],
569
+ ["mny", "application/x-msmoney"],
570
+ ["mobi", "application/x-mobipocket-ebook"],
571
+ ["mods", "application/mods+xml"],
572
+ ["mov", "video/quicktime"],
573
+ ["movie", "video/x-sgi-movie"],
574
+ ["mp2", "audio/mpeg"],
575
+ ["mp21", "application/mp21"],
576
+ ["mp2a", "audio/mpeg"],
577
+ ["mp3", "audio/mpeg"],
578
+ ["mp4", "video/mp4"],
579
+ ["mp4a", "audio/mp4"],
580
+ ["mp4s", "application/mp4"],
581
+ ["mp4v", "video/mp4"],
582
+ ["mpc", "application/vnd.mophun.certificate"],
583
+ ["mpd", "application/dash+xml"],
584
+ ["mpe", "video/mpeg"],
585
+ ["mpeg", "video/mpeg"],
586
+ ["mpf", "application/media-policy-dataset+xml"],
587
+ ["mpg", "video/mpeg"],
588
+ ["mpg4", "video/mp4"],
589
+ ["mpga", "audio/mpeg"],
590
+ ["mpkg", "application/vnd.apple.installer+xml"],
591
+ ["mpm", "application/vnd.blueice.multipass"],
592
+ ["mpn", "application/vnd.mophun.application"],
593
+ ["mpp", "application/vnd.ms-project"],
594
+ ["mpt", "application/vnd.ms-project"],
595
+ ["mpy", "application/vnd.ibm.minipay"],
596
+ ["mqy", "application/vnd.mobius.mqy"],
597
+ ["mrc", "application/marc"],
598
+ ["mrcx", "application/marcxml+xml"],
599
+ ["ms", "text/troff"],
600
+ ["mscml", "application/mediaservercontrol+xml"],
601
+ ["mseed", "application/vnd.fdsn.mseed"],
602
+ ["mseq", "application/vnd.mseq"],
603
+ ["msf", "application/vnd.epson.msf"],
604
+ ["msg", "application/vnd.ms-outlook"],
605
+ ["msh", "model/mesh"],
606
+ ["msi", "application/x-msdownload"],
607
+ ["msix", "application/msix"],
608
+ ["msixbundle", "application/msixbundle"],
609
+ ["msl", "application/vnd.mobius.msl"],
610
+ ["msm", "application/octet-stream"],
611
+ ["msp", "application/octet-stream"],
612
+ ["msty", "application/vnd.muvee.style"],
613
+ ["mtl", "model/mtl"],
614
+ ["mts", "model/vnd.mts"],
615
+ ["mus", "application/vnd.musician"],
616
+ ["musd", "application/mmt-usd+xml"],
617
+ ["musicxml", "application/vnd.recordare.musicxml+xml"],
618
+ ["mvb", "application/x-msmediaview"],
619
+ ["mvt", "application/vnd.mapbox-vector-tile"],
620
+ ["mwf", "application/vnd.mfer"],
621
+ ["mxf", "application/mxf"],
622
+ ["mxl", "application/vnd.recordare.musicxml"],
623
+ ["mxmf", "audio/mobile-xmf"],
624
+ ["mxml", "application/xv+xml"],
625
+ ["mxs", "application/vnd.triscape.mxs"],
626
+ ["mxu", "video/vnd.mpegurl"],
627
+ ["n-gage", "application/vnd.nokia.n-gage.symbian.install"],
628
+ ["n3", "text/n3"],
629
+ ["nb", "application/mathematica"],
630
+ ["nbp", "application/vnd.wolfram.player"],
631
+ ["nc", "application/x-netcdf"],
632
+ ["ncx", "application/x-dtbncx+xml"],
633
+ ["nfo", "text/x-nfo"],
634
+ ["ngdat", "application/vnd.nokia.n-gage.data"],
635
+ ["nitf", "application/vnd.nitf"],
636
+ ["nlu", "application/vnd.neurolanguage.nlu"],
637
+ ["nml", "application/vnd.enliven"],
638
+ ["nnd", "application/vnd.noblenet-directory"],
639
+ ["nns", "application/vnd.noblenet-sealer"],
640
+ ["nnw", "application/vnd.noblenet-web"],
641
+ ["npx", "image/vnd.net-fpx"],
642
+ ["nq", "application/n-quads"],
643
+ ["nsc", "application/x-conference"],
644
+ ["nsf", "application/vnd.lotus-notes"],
645
+ ["nt", "application/n-triples"],
646
+ ["ntf", "application/vnd.nitf"],
647
+ ["numbers", "application/x-iwork-numbers-sffnumbers"],
648
+ ["nzb", "application/x-nzb"],
649
+ ["oa2", "application/vnd.fujitsu.oasys2"],
650
+ ["oa3", "application/vnd.fujitsu.oasys3"],
651
+ ["oas", "application/vnd.fujitsu.oasys"],
652
+ ["obd", "application/x-msbinder"],
653
+ ["obgx", "application/vnd.openblox.game+xml"],
654
+ ["obj", "model/obj"],
655
+ ["oda", "application/oda"],
656
+ ["odb", "application/vnd.oasis.opendocument.database"],
657
+ ["odc", "application/vnd.oasis.opendocument.chart"],
658
+ ["odf", "application/vnd.oasis.opendocument.formula"],
659
+ ["odft", "application/vnd.oasis.opendocument.formula-template"],
660
+ ["odg", "application/vnd.oasis.opendocument.graphics"],
661
+ ["odi", "application/vnd.oasis.opendocument.image"],
662
+ ["odm", "application/vnd.oasis.opendocument.text-master"],
663
+ ["odp", "application/vnd.oasis.opendocument.presentation"],
664
+ ["ods", "application/vnd.oasis.opendocument.spreadsheet"],
665
+ ["odt", "application/vnd.oasis.opendocument.text"],
666
+ ["oga", "audio/ogg"],
667
+ ["ogex", "model/vnd.opengex"],
668
+ ["ogg", "audio/ogg"],
669
+ ["ogv", "video/ogg"],
670
+ ["ogx", "application/ogg"],
671
+ ["omdoc", "application/omdoc+xml"],
672
+ ["onepkg", "application/onenote"],
673
+ ["onetmp", "application/onenote"],
674
+ ["onetoc", "application/onenote"],
675
+ ["onetoc2", "application/onenote"],
676
+ ["opf", "application/oebps-package+xml"],
677
+ ["opml", "text/x-opml"],
678
+ ["oprc", "application/vnd.palm"],
679
+ ["opus", "audio/ogg"],
680
+ ["org", "text/x-org"],
681
+ ["osf", "application/vnd.yamaha.openscoreformat"],
682
+ ["osfpvg", "application/vnd.yamaha.openscoreformat.osfpvg+xml"],
683
+ ["osm", "application/vnd.openstreetmap.data+xml"],
684
+ ["otc", "application/vnd.oasis.opendocument.chart-template"],
685
+ ["otf", "font/otf"],
686
+ ["otg", "application/vnd.oasis.opendocument.graphics-template"],
687
+ ["oth", "application/vnd.oasis.opendocument.text-web"],
688
+ ["oti", "application/vnd.oasis.opendocument.image-template"],
689
+ ["otp", "application/vnd.oasis.opendocument.presentation-template"],
690
+ ["ots", "application/vnd.oasis.opendocument.spreadsheet-template"],
691
+ ["ott", "application/vnd.oasis.opendocument.text-template"],
692
+ ["ova", "application/x-virtualbox-ova"],
693
+ ["ovf", "application/x-virtualbox-ovf"],
694
+ ["owl", "application/rdf+xml"],
695
+ ["oxps", "application/oxps"],
696
+ ["oxt", "application/vnd.openofficeorg.extension"],
697
+ ["p", "text/x-pascal"],
698
+ ["p10", "application/pkcs10"],
699
+ ["p12", "application/x-pkcs12"],
700
+ ["p7b", "application/x-pkcs7-certificates"],
701
+ ["p7c", "application/pkcs7-mime"],
702
+ ["p7m", "application/pkcs7-mime"],
703
+ ["p7r", "application/x-pkcs7-certreqresp"],
704
+ ["p7s", "application/pkcs7-signature"],
705
+ ["p8", "application/pkcs8"],
706
+ ["pac", "application/x-ns-proxy-autoconfig"],
707
+ ["pages", "application/x-iwork-pages-sffpages"],
708
+ ["pas", "text/x-pascal"],
709
+ ["paw", "application/vnd.pawaafile"],
710
+ ["pbd", "application/vnd.powerbuilder6"],
711
+ ["pbm", "image/x-portable-bitmap"],
712
+ ["pcap", "application/vnd.tcpdump.pcap"],
713
+ ["pcf", "application/x-font-pcf"],
714
+ ["pcl", "application/vnd.hp-pcl"],
715
+ ["pclxl", "application/vnd.hp-pclxl"],
716
+ ["pct", "image/x-pict"],
717
+ ["pcurl", "application/vnd.curl.pcurl"],
718
+ ["pcx", "image/x-pcx"],
719
+ ["pdb", "application/x-pilot"],
720
+ ["pde", "text/x-processing"],
721
+ ["pem", "application/x-x509-ca-cert"],
722
+ ["pfa", "application/x-font-type1"],
723
+ ["pfb", "application/x-font-type1"],
724
+ ["pfm", "application/x-font-type1"],
725
+ ["pfr", "application/font-tdpfr"],
726
+ ["pfx", "application/x-pkcs12"],
727
+ ["pgm", "image/x-portable-graymap"],
728
+ ["pgn", "application/x-chess-pgn"],
729
+ ["pgp", "application/pgp-encrypted"],
730
+ ["php", "application/x-httpd-php"],
731
+ ["pic", "image/x-pict"],
732
+ ["pkg", "application/octet-stream"],
733
+ ["pki", "application/pkixcmp"],
734
+ ["pkipath", "application/pkix-pkipath"],
735
+ ["pkpass", "application/vnd.apple.pkpass"],
736
+ ["pl", "application/x-perl"],
737
+ ["plb", "application/vnd.3gpp.pic-bw-large"],
738
+ ["plc", "application/vnd.mobius.plc"],
739
+ ["plf", "application/vnd.pocketlearn"],
740
+ ["pls", "application/pls+xml"],
741
+ ["pm", "application/x-perl"],
742
+ ["pml", "application/vnd.ctc-posml"],
743
+ ["png", "image/png"],
744
+ ["pnm", "image/x-portable-anymap"],
745
+ ["portpkg", "application/vnd.macports.portpkg"],
746
+ ["pot", "application/vnd.ms-powerpoint"],
747
+ ["potm", "application/vnd.ms-powerpoint.template.macroenabled.12"],
748
+ ["potx", "application/vnd.openxmlformats-officedocument.presentationml.template"],
749
+ ["ppam", "application/vnd.ms-powerpoint.addin.macroenabled.12"],
750
+ ["ppd", "application/vnd.cups-ppd"],
751
+ ["ppm", "image/x-portable-pixmap"],
752
+ ["pps", "application/vnd.ms-powerpoint"],
753
+ ["ppsm", "application/vnd.ms-powerpoint.slideshow.macroenabled.12"],
754
+ ["ppsx", "application/vnd.openxmlformats-officedocument.presentationml.slideshow"],
755
+ ["ppt", "application/vnd.ms-powerpoint"],
756
+ ["pptm", "application/vnd.ms-powerpoint.presentation.macroenabled.12"],
757
+ ["pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation"],
758
+ ["pqa", "application/vnd.palm"],
759
+ ["prc", "model/prc"],
760
+ ["pre", "application/vnd.lotus-freelance"],
761
+ ["prf", "application/pics-rules"],
762
+ ["provx", "application/provenance+xml"],
763
+ ["ps", "application/postscript"],
764
+ ["psb", "application/vnd.3gpp.pic-bw-small"],
765
+ ["psd", "image/vnd.adobe.photoshop"],
766
+ ["psf", "application/x-font-linux-psf"],
767
+ ["pskcxml", "application/pskc+xml"],
768
+ ["pti", "image/prs.pti"],
769
+ ["ptid", "application/vnd.pvi.ptid1"],
770
+ ["pub", "application/x-mspublisher"],
771
+ ["pvb", "application/vnd.3gpp.pic-bw-var"],
772
+ ["pwn", "application/vnd.3m.post-it-notes"],
773
+ ["pya", "audio/vnd.ms-playready.media.pya"],
774
+ ["pyo", "model/vnd.pytha.pyox"],
775
+ ["pyox", "model/vnd.pytha.pyox"],
776
+ ["pyv", "video/vnd.ms-playready.media.pyv"],
777
+ ["qam", "application/vnd.epson.quickanime"],
778
+ ["qbo", "application/vnd.intu.qbo"],
779
+ ["qfx", "application/vnd.intu.qfx"],
780
+ ["qps", "application/vnd.publishare-delta-tree"],
781
+ ["qt", "video/quicktime"],
782
+ ["qwd", "application/vnd.quark.quarkxpress"],
783
+ ["qwt", "application/vnd.quark.quarkxpress"],
784
+ ["qxb", "application/vnd.quark.quarkxpress"],
785
+ ["qxd", "application/vnd.quark.quarkxpress"],
786
+ ["qxl", "application/vnd.quark.quarkxpress"],
787
+ ["qxt", "application/vnd.quark.quarkxpress"],
788
+ ["ra", "audio/x-realaudio"],
789
+ ["ram", "audio/x-pn-realaudio"],
790
+ ["raml", "application/raml+yaml"],
791
+ ["rapd", "application/route-apd+xml"],
792
+ ["rar", "application/x-rar-compressed"],
793
+ ["ras", "image/x-cmu-raster"],
794
+ ["rcprofile", "application/vnd.ipunplugged.rcprofile"],
795
+ ["rdf", "application/rdf+xml"],
796
+ ["rdz", "application/vnd.data-vision.rdz"],
797
+ ["relo", "application/p2p-overlay+xml"],
798
+ ["rep", "application/vnd.businessobjects"],
799
+ ["res", "application/x-dtbresource+xml"],
800
+ ["rgb", "image/x-rgb"],
801
+ ["rif", "application/reginfo+xml"],
802
+ ["rip", "audio/vnd.rip"],
803
+ ["ris", "application/x-research-info-systems"],
804
+ ["rl", "application/resource-lists+xml"],
805
+ ["rlc", "image/vnd.fujixerox.edmics-rlc"],
806
+ ["rld", "application/resource-lists-diff+xml"],
807
+ ["rm", "application/vnd.rn-realmedia"],
808
+ ["rmi", "audio/midi"],
809
+ ["rmp", "audio/x-pn-realaudio-plugin"],
810
+ ["rms", "application/vnd.jcp.javame.midlet-rms"],
811
+ ["rmvb", "application/vnd.rn-realmedia-vbr"],
812
+ ["rnc", "application/relax-ng-compact-syntax"],
813
+ ["rng", "application/xml"],
814
+ ["roa", "application/rpki-roa"],
815
+ ["roff", "text/troff"],
816
+ ["rp9", "application/vnd.cloanto.rp9"],
817
+ ["rpm", "application/x-redhat-package-manager"],
818
+ ["rpss", "application/vnd.nokia.radio-presets"],
819
+ ["rpst", "application/vnd.nokia.radio-preset"],
820
+ ["rq", "application/sparql-query"],
821
+ ["rs", "application/rls-services+xml"],
822
+ ["rsat", "application/atsc-rsat+xml"],
823
+ ["rsd", "application/rsd+xml"],
824
+ ["rsheet", "application/urc-ressheet+xml"],
825
+ ["rss", "application/rss+xml"],
826
+ ["rtf", "text/rtf"],
827
+ ["rtx", "text/richtext"],
828
+ ["run", "application/x-makeself"],
829
+ ["rusd", "application/route-usd+xml"],
830
+ ["s", "text/x-asm"],
831
+ ["s3m", "audio/s3m"],
832
+ ["saf", "application/vnd.yamaha.smaf-audio"],
833
+ ["sass", "text/x-sass"],
834
+ ["sbml", "application/sbml+xml"],
835
+ ["sc", "application/vnd.ibm.secure-container"],
836
+ ["scd", "application/x-msschedule"],
837
+ ["scm", "application/vnd.lotus-screencam"],
838
+ ["scq", "application/scvp-cv-request"],
839
+ ["scs", "application/scvp-cv-response"],
840
+ ["scss", "text/x-scss"],
841
+ ["scurl", "text/vnd.curl.scurl"],
842
+ ["sda", "application/vnd.stardivision.draw"],
843
+ ["sdc", "application/vnd.stardivision.calc"],
844
+ ["sdd", "application/vnd.stardivision.impress"],
845
+ ["sdkd", "application/vnd.solent.sdkm+xml"],
846
+ ["sdkm", "application/vnd.solent.sdkm+xml"],
847
+ ["sdp", "application/sdp"],
848
+ ["sdw", "application/vnd.stardivision.writer"],
849
+ ["sea", "application/x-sea"],
850
+ ["see", "application/vnd.seemail"],
851
+ ["seed", "application/vnd.fdsn.seed"],
852
+ ["sema", "application/vnd.sema"],
853
+ ["semd", "application/vnd.semd"],
854
+ ["semf", "application/vnd.semf"],
855
+ ["senmlx", "application/senml+xml"],
856
+ ["sensmlx", "application/sensml+xml"],
857
+ ["ser", "application/java-serialized-object"],
858
+ ["setpay", "application/set-payment-initiation"],
859
+ ["setreg", "application/set-registration-initiation"],
860
+ ["sfd-hdstx", "application/vnd.hydrostatix.sof-data"],
861
+ ["sfs", "application/vnd.spotfire.sfs"],
862
+ ["sfv", "text/x-sfv"],
863
+ ["sgi", "image/sgi"],
864
+ ["sgl", "application/vnd.stardivision.writer-global"],
865
+ ["sgm", "text/sgml"],
866
+ ["sgml", "text/sgml"],
867
+ ["sh", "application/x-sh"],
868
+ ["shar", "application/x-shar"],
869
+ ["shex", "text/shex"],
870
+ ["shf", "application/shf+xml"],
871
+ ["shtml", "text/html"],
872
+ ["sid", "image/x-mrsid-image"],
873
+ ["sieve", "application/sieve"],
874
+ ["sig", "application/pgp-signature"],
875
+ ["sil", "audio/silk"],
876
+ ["silo", "model/mesh"],
877
+ ["sis", "application/vnd.symbian.install"],
878
+ ["sisx", "application/vnd.symbian.install"],
879
+ ["sit", "application/x-stuffit"],
880
+ ["sitx", "application/x-stuffitx"],
881
+ ["siv", "application/sieve"],
882
+ ["skd", "application/vnd.koan"],
883
+ ["skm", "application/vnd.koan"],
884
+ ["skp", "application/vnd.koan"],
885
+ ["skt", "application/vnd.koan"],
886
+ ["sldm", "application/vnd.ms-powerpoint.slide.macroenabled.12"],
887
+ ["sldx", "application/vnd.openxmlformats-officedocument.presentationml.slide"],
888
+ ["slim", "text/slim"],
889
+ ["slm", "text/slim"],
890
+ ["sls", "application/route-s-tsid+xml"],
891
+ ["slt", "application/vnd.epson.salt"],
892
+ ["sm", "application/vnd.stepmania.stepchart"],
893
+ ["smf", "application/vnd.stardivision.math"],
894
+ ["smi", "application/smil+xml"],
895
+ ["smil", "application/smil+xml"],
896
+ ["smv", "video/x-smv"],
897
+ ["smzip", "application/vnd.stepmania.package"],
898
+ ["snd", "audio/basic"],
899
+ ["snf", "application/x-font-snf"],
900
+ ["so", "application/octet-stream"],
901
+ ["spc", "application/x-pkcs7-certificates"],
902
+ ["spdx", "text/spdx"],
903
+ ["spf", "application/vnd.yamaha.smaf-phrase"],
904
+ ["spl", "application/x-futuresplash"],
905
+ ["spot", "text/vnd.in3d.spot"],
906
+ ["spp", "application/scvp-vp-response"],
907
+ ["spq", "application/scvp-vp-request"],
908
+ ["spx", "audio/ogg"],
909
+ ["sql", "application/x-sql"],
910
+ ["src", "application/x-wais-source"],
911
+ ["srt", "application/x-subrip"],
912
+ ["sru", "application/sru+xml"],
913
+ ["srx", "application/sparql-results+xml"],
914
+ ["ssdl", "application/ssdl+xml"],
915
+ ["sse", "application/vnd.kodak-descriptor"],
916
+ ["ssf", "application/vnd.epson.ssf"],
917
+ ["ssml", "application/ssml+xml"],
918
+ ["st", "application/vnd.sailingtracker.track"],
919
+ ["stc", "application/vnd.sun.xml.calc.template"],
920
+ ["std", "application/vnd.sun.xml.draw.template"],
921
+ ["stf", "application/vnd.wt.stf"],
922
+ ["sti", "application/vnd.sun.xml.impress.template"],
923
+ ["stk", "application/hyperstudio"],
924
+ ["stl", "model/stl"],
925
+ ["stpx", "model/step+xml"],
926
+ ["stpxz", "model/step-xml+zip"],
927
+ ["stpz", "model/step+zip"],
928
+ ["str", "application/vnd.pg.format"],
929
+ ["stw", "application/vnd.sun.xml.writer.template"],
930
+ ["styl", "text/stylus"],
931
+ ["stylus", "text/stylus"],
932
+ ["sub", "text/vnd.dvb.subtitle"],
933
+ ["sus", "application/vnd.sus-calendar"],
934
+ ["susp", "application/vnd.sus-calendar"],
935
+ ["sv4cpio", "application/x-sv4cpio"],
936
+ ["sv4crc", "application/x-sv4crc"],
937
+ ["svc", "application/vnd.dvb.service"],
938
+ ["svd", "application/vnd.svd"],
939
+ ["svg", "image/svg+xml"],
940
+ ["svgz", "image/svg+xml"],
941
+ ["swa", "application/x-director"],
942
+ ["swf", "application/x-shockwave-flash"],
943
+ ["swi", "application/vnd.aristanetworks.swi"],
944
+ ["swidtag", "application/swid+xml"],
945
+ ["sxc", "application/vnd.sun.xml.calc"],
946
+ ["sxd", "application/vnd.sun.xml.draw"],
947
+ ["sxg", "application/vnd.sun.xml.writer.global"],
948
+ ["sxi", "application/vnd.sun.xml.impress"],
949
+ ["sxm", "application/vnd.sun.xml.math"],
950
+ ["sxw", "application/vnd.sun.xml.writer"],
951
+ ["t", "text/troff"],
952
+ ["t3", "application/x-t3vm-image"],
953
+ ["t38", "image/t38"],
954
+ ["taglet", "application/vnd.mynfc"],
955
+ ["tao", "application/vnd.tao.intent-module-archive"],
956
+ ["tap", "image/vnd.tencent.tap"],
957
+ ["tar", "application/x-tar"],
958
+ ["tcap", "application/vnd.3gpp2.tcap"],
959
+ ["tcl", "application/x-tcl"],
960
+ ["td", "application/urc-targetdesc+xml"],
961
+ ["teacher", "application/vnd.smart.teacher"],
962
+ ["tei", "application/tei+xml"],
963
+ ["teicorpus", "application/tei+xml"],
964
+ ["tex", "application/x-tex"],
965
+ ["texi", "application/x-texinfo"],
966
+ ["texinfo", "application/x-texinfo"],
967
+ ["text", "text/plain"],
968
+ ["tfi", "application/thraud+xml"],
969
+ ["tfm", "application/x-tex-tfm"],
970
+ ["tfx", "image/tiff-fx"],
971
+ ["tga", "image/x-tga"],
972
+ ["thmx", "application/vnd.ms-officetheme"],
973
+ ["tif", "image/tiff"],
974
+ ["tiff", "image/tiff"],
975
+ ["tk", "application/x-tcl"],
976
+ ["tmo", "application/vnd.tmobile-livetv"],
977
+ ["toml", "application/toml"],
978
+ ["torrent", "application/x-bittorrent"],
979
+ ["tpl", "application/vnd.groove-tool-template"],
980
+ ["tpt", "application/vnd.trid.tpt"],
981
+ ["tr", "text/troff"],
982
+ ["tra", "application/vnd.trueapp"],
983
+ ["trig", "application/trig"],
984
+ ["trm", "application/x-msterminal"],
985
+ ["ts", "video/mp2t"],
986
+ ["tsd", "application/timestamped-data"],
987
+ ["tsv", "text/tab-separated-values"],
988
+ ["ttc", "font/collection"],
989
+ ["ttf", "font/ttf"],
990
+ ["ttl", "text/turtle"],
991
+ ["ttml", "application/ttml+xml"],
992
+ ["twd", "application/vnd.simtech-mindmapper"],
993
+ ["twds", "application/vnd.simtech-mindmapper"],
994
+ ["txd", "application/vnd.genomatix.tuxedo"],
995
+ ["txf", "application/vnd.mobius.txf"],
996
+ ["txt", "text/plain"],
997
+ ["u32", "application/x-authorware-bin"],
998
+ ["u3d", "model/u3d"],
999
+ ["u8dsn", "message/global-delivery-status"],
1000
+ ["u8hdr", "message/global-headers"],
1001
+ ["u8mdn", "message/global-disposition-notification"],
1002
+ ["u8msg", "message/global"],
1003
+ ["ubj", "application/ubjson"],
1004
+ ["udeb", "application/x-debian-package"],
1005
+ ["ufd", "application/vnd.ufdl"],
1006
+ ["ufdl", "application/vnd.ufdl"],
1007
+ ["ulx", "application/x-glulx"],
1008
+ ["umj", "application/vnd.umajin"],
1009
+ ["unityweb", "application/vnd.unity"],
1010
+ ["uo", "application/vnd.uoml+xml"],
1011
+ ["uoml", "application/vnd.uoml+xml"],
1012
+ ["uri", "text/uri-list"],
1013
+ ["uris", "text/uri-list"],
1014
+ ["urls", "text/uri-list"],
1015
+ ["usda", "model/vnd.usda"],
1016
+ ["usdz", "model/vnd.usdz+zip"],
1017
+ ["ustar", "application/x-ustar"],
1018
+ ["utz", "application/vnd.uiq.theme"],
1019
+ ["uu", "text/x-uuencode"],
1020
+ ["uva", "audio/vnd.dece.audio"],
1021
+ ["uvd", "application/vnd.dece.data"],
1022
+ ["uvf", "application/vnd.dece.data"],
1023
+ ["uvg", "image/vnd.dece.graphic"],
1024
+ ["uvh", "video/vnd.dece.hd"],
1025
+ ["uvi", "image/vnd.dece.graphic"],
1026
+ ["uvm", "video/vnd.dece.mobile"],
1027
+ ["uvp", "video/vnd.dece.pd"],
1028
+ ["uvs", "video/vnd.dece.sd"],
1029
+ ["uvt", "application/vnd.dece.ttml+xml"],
1030
+ ["uvu", "video/vnd.uvvu.mp4"],
1031
+ ["uvv", "video/vnd.dece.video"],
1032
+ ["uvva", "audio/vnd.dece.audio"],
1033
+ ["uvvd", "application/vnd.dece.data"],
1034
+ ["uvvf", "application/vnd.dece.data"],
1035
+ ["uvvg", "image/vnd.dece.graphic"],
1036
+ ["uvvh", "video/vnd.dece.hd"],
1037
+ ["uvvi", "image/vnd.dece.graphic"],
1038
+ ["uvvm", "video/vnd.dece.mobile"],
1039
+ ["uvvp", "video/vnd.dece.pd"],
1040
+ ["uvvs", "video/vnd.dece.sd"],
1041
+ ["uvvt", "application/vnd.dece.ttml+xml"],
1042
+ ["uvvu", "video/vnd.uvvu.mp4"],
1043
+ ["uvvv", "video/vnd.dece.video"],
1044
+ ["uvvx", "application/vnd.dece.unspecified"],
1045
+ ["uvvz", "application/vnd.dece.zip"],
1046
+ ["uvx", "application/vnd.dece.unspecified"],
1047
+ ["uvz", "application/vnd.dece.zip"],
1048
+ ["vbox", "application/x-virtualbox-vbox"],
1049
+ ["vbox-extpack", "application/x-virtualbox-vbox-extpack"],
1050
+ ["vcard", "text/vcard"],
1051
+ ["vcd", "application/x-cdlink"],
1052
+ ["vcf", "text/x-vcard"],
1053
+ ["vcg", "application/vnd.groove-vcard"],
1054
+ ["vcs", "text/x-vcalendar"],
1055
+ ["vcx", "application/vnd.vcx"],
1056
+ ["vdi", "application/x-virtualbox-vdi"],
1057
+ ["vds", "model/vnd.sap.vds"],
1058
+ ["vhd", "application/x-virtualbox-vhd"],
1059
+ ["vis", "application/vnd.visionary"],
1060
+ ["viv", "video/vnd.vivo"],
1061
+ ["vmdk", "application/x-virtualbox-vmdk"],
1062
+ ["vob", "video/x-ms-vob"],
1063
+ ["vor", "application/vnd.stardivision.writer"],
1064
+ ["vox", "application/x-authorware-bin"],
1065
+ ["vrml", "model/vrml"],
1066
+ ["vsd", "application/vnd.visio"],
1067
+ ["vsf", "application/vnd.vsf"],
1068
+ ["vss", "application/vnd.visio"],
1069
+ ["vst", "application/vnd.visio"],
1070
+ ["vsw", "application/vnd.visio"],
1071
+ ["vtf", "image/vnd.valve.source.texture"],
1072
+ ["vtt", "text/vtt"],
1073
+ ["vtu", "model/vnd.vtu"],
1074
+ ["vxml", "application/voicexml+xml"],
1075
+ ["w3d", "application/x-director"],
1076
+ ["wad", "application/x-doom"],
1077
+ ["wadl", "application/vnd.sun.wadl+xml"],
1078
+ ["war", "application/java-archive"],
1079
+ ["wasm", "application/wasm"],
1080
+ ["wav", "audio/x-wav"],
1081
+ ["wax", "audio/x-ms-wax"],
1082
+ ["wbmp", "image/vnd.wap.wbmp"],
1083
+ ["wbs", "application/vnd.criticaltools.wbs+xml"],
1084
+ ["wbxml", "application/vnd.wap.wbxml"],
1085
+ ["wcm", "application/vnd.ms-works"],
1086
+ ["wdb", "application/vnd.ms-works"],
1087
+ ["wdp", "image/vnd.ms-photo"],
1088
+ ["weba", "audio/webm"],
1089
+ ["webapp", "application/x-web-app-manifest+json"],
1090
+ ["webm", "video/webm"],
1091
+ ["webmanifest", "application/manifest+json"],
1092
+ ["webp", "image/webp"],
1093
+ ["wg", "application/vnd.pmi.widget"],
1094
+ ["wgsl", "text/wgsl"],
1095
+ ["wgt", "application/widget"],
1096
+ ["wif", "application/watcherinfo+xml"],
1097
+ ["wks", "application/vnd.ms-works"],
1098
+ ["wm", "video/x-ms-wm"],
1099
+ ["wma", "audio/x-ms-wma"],
1100
+ ["wmd", "application/x-ms-wmd"],
1101
+ ["wmf", "image/wmf"],
1102
+ ["wml", "text/vnd.wap.wml"],
1103
+ ["wmlc", "application/vnd.wap.wmlc"],
1104
+ ["wmls", "text/vnd.wap.wmlscript"],
1105
+ ["wmlsc", "application/vnd.wap.wmlscriptc"],
1106
+ ["wmv", "video/x-ms-wmv"],
1107
+ ["wmx", "video/x-ms-wmx"],
1108
+ ["wmz", "application/x-msmetafile"],
1109
+ ["woff", "font/woff"],
1110
+ ["woff2", "font/woff2"],
1111
+ ["wpd", "application/vnd.wordperfect"],
1112
+ ["wpl", "application/vnd.ms-wpl"],
1113
+ ["wps", "application/vnd.ms-works"],
1114
+ ["wqd", "application/vnd.wqd"],
1115
+ ["wri", "application/x-mswrite"],
1116
+ ["wrl", "model/vrml"],
1117
+ ["wsc", "message/vnd.wfa.wsc"],
1118
+ ["wsdl", "application/wsdl+xml"],
1119
+ ["wspolicy", "application/wspolicy+xml"],
1120
+ ["wtb", "application/vnd.webturbo"],
1121
+ ["wvx", "video/x-ms-wvx"],
1122
+ ["x32", "application/x-authorware-bin"],
1123
+ ["x3d", "model/x3d+xml"],
1124
+ ["x3db", "model/x3d+fastinfoset"],
1125
+ ["x3dbz", "model/x3d+binary"],
1126
+ ["x3dv", "model/x3d-vrml"],
1127
+ ["x3dvz", "model/x3d+vrml"],
1128
+ ["x3dz", "model/x3d+xml"],
1129
+ ["x_b", "model/vnd.parasolid.transmit.binary"],
1130
+ ["x_t", "model/vnd.parasolid.transmit.text"],
1131
+ ["xaml", "application/xaml+xml"],
1132
+ ["xap", "application/x-silverlight-app"],
1133
+ ["xar", "application/vnd.xara"],
1134
+ ["xav", "application/xcap-att+xml"],
1135
+ ["xbap", "application/x-ms-xbap"],
1136
+ ["xbd", "application/vnd.fujixerox.docuworks.binder"],
1137
+ ["xbm", "image/x-xbitmap"],
1138
+ ["xca", "application/xcap-caps+xml"],
1139
+ ["xcs", "application/calendar+xml"],
1140
+ ["xdf", "application/xcap-diff+xml"],
1141
+ ["xdm", "application/vnd.syncml.dm+xml"],
1142
+ ["xdp", "application/vnd.adobe.xdp+xml"],
1143
+ ["xdssc", "application/dssc+xml"],
1144
+ ["xdw", "application/vnd.fujixerox.docuworks"],
1145
+ ["xel", "application/xcap-el+xml"],
1146
+ ["xenc", "application/xenc+xml"],
1147
+ ["xer", "application/patch-ops-error+xml"],
1148
+ ["xfdf", "application/xfdf"],
1149
+ ["xfdl", "application/vnd.xfdl"],
1150
+ ["xht", "application/xhtml+xml"],
1151
+ ["xhtm", "application/vnd.pwg-xhtml-print+xml"],
1152
+ ["xhtml", "application/xhtml+xml"],
1153
+ ["xhvml", "application/xv+xml"],
1154
+ ["xif", "image/vnd.xiff"],
1155
+ ["xla", "application/vnd.ms-excel"],
1156
+ ["xlam", "application/vnd.ms-excel.addin.macroenabled.12"],
1157
+ ["xlc", "application/vnd.ms-excel"],
1158
+ ["xlf", "application/xliff+xml"],
1159
+ ["xlm", "application/vnd.ms-excel"],
1160
+ ["xls", "application/vnd.ms-excel"],
1161
+ ["xlsb", "application/vnd.ms-excel.sheet.binary.macroenabled.12"],
1162
+ ["xlsm", "application/vnd.ms-excel.sheet.macroenabled.12"],
1163
+ ["xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],
1164
+ ["xlt", "application/vnd.ms-excel"],
1165
+ ["xltm", "application/vnd.ms-excel.template.macroenabled.12"],
1166
+ ["xltx", "application/vnd.openxmlformats-officedocument.spreadsheetml.template"],
1167
+ ["xlw", "application/vnd.ms-excel"],
1168
+ ["xm", "audio/xm"],
1169
+ ["xml", "text/xml"],
1170
+ ["xns", "application/xcap-ns+xml"],
1171
+ ["xo", "application/vnd.olpc-sugar"],
1172
+ ["xop", "application/xop+xml"],
1173
+ ["xpi", "application/x-xpinstall"],
1174
+ ["xpl", "application/xproc+xml"],
1175
+ ["xpm", "image/x-xpixmap"],
1176
+ ["xpr", "application/vnd.is-xpr"],
1177
+ ["xps", "application/vnd.ms-xpsdocument"],
1178
+ ["xpw", "application/vnd.intercon.formnet"],
1179
+ ["xpx", "application/vnd.intercon.formnet"],
1180
+ ["xsd", "application/xml"],
1181
+ ["xsf", "application/prs.xsf+xml"],
1182
+ ["xsl", "application/xslt+xml"],
1183
+ ["xslt", "application/xslt+xml"],
1184
+ ["xsm", "application/vnd.syncml+xml"],
1185
+ ["xspf", "application/xspf+xml"],
1186
+ ["xul", "application/vnd.mozilla.xul+xml"],
1187
+ ["xvm", "application/xv+xml"],
1188
+ ["xvml", "application/xv+xml"],
1189
+ ["xwd", "image/x-xwindowdump"],
1190
+ ["xyz", "chemical/x-xyz"],
1191
+ ["xz", "application/x-xz"],
1192
+ ["yaml", "text/yaml"],
1193
+ ["yang", "application/yang"],
1194
+ ["yin", "application/yin+xml"],
1195
+ ["yml", "text/yaml"],
1196
+ ["ymp", "text/x-suse-ymp"],
1197
+ ["z1", "application/x-zmachine"],
1198
+ ["z2", "application/x-zmachine"],
1199
+ ["z3", "application/x-zmachine"],
1200
+ ["z4", "application/x-zmachine"],
1201
+ ["z5", "application/x-zmachine"],
1202
+ ["z6", "application/x-zmachine"],
1203
+ ["z7", "application/x-zmachine"],
1204
+ ["z8", "application/x-zmachine"],
1205
+ ["zaz", "application/vnd.zzazz.deck+xml"],
1206
+ ["zip", "application/zip"],
1207
+ ["zir", "application/vnd.zul"],
1208
+ ["zirz", "application/vnd.zul"],
1209
+ ["zmm", "application/vnd.handheld-entertainment+xml"],
1210
+ ]);
1211
+ /**
1212
+ * Get the file extension of the given mime type.
1213
+ * @param mimeType - Mime type.
1214
+ * @param allowedMimeTypes - Allowed mime types.
1215
+ * @returns File extension.
1216
+ */
1217
+ const getFileExt = (mimeType, allowedMimeTypes) => {
1218
+ return (0, object_utils_1.getMapKey)(allowedMimeTypes !== null && allowedMimeTypes !== void 0 ? allowedMimeTypes : exports.mimeTypes, mimeType);
1219
+ };
1220
+ exports.getFileExt = getFileExt;
1221
+ /**
1222
+ * Get file size in human-readable format.
1223
+ * @param size - File size in bytes.
1224
+ * @param round - Whether to round the size.
1225
+ * @returns File size in human-readable format.
1226
+ */
1227
+ const getFileSize = (size, round) => {
1228
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1229
+ if (size < 1024) {
1230
+ return `${Math.round(size)} B`;
1231
+ }
1232
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1233
+ if (size < 1024 * 1024) {
1234
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1235
+ return `${(size / 1024).toFixed(round ? 0 : 2)} KB`;
1236
+ }
1237
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1238
+ if (size < 1024 * 1024 * 1024) {
1239
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1240
+ return `${(size / 1024 / 1024).toFixed(round ? 0 : 2)} MB`;
1241
+ }
1242
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
1243
+ return `${(size / 1024 / 1024 / 1024).toFixed(round ? 0 : 2)} GB`;
1244
+ };
1245
+ exports.getFileSize = getFileSize;
1246
+ /**
1247
+ * Save a StreamableBlob as a file.
1248
+ * @param blob - Blob to save.
1249
+ * @param filename - File name.
1250
+ * @throws {Error} - Throws an error if used in a Node.js environment.
1251
+ */
1252
+ const saveAsFile = (blob, filename) => {
1253
+ if (typeof window === "undefined" || typeof document === "undefined") {
1254
+ throw new Error("saveAsFile should be used only in the browser environment.");
1255
+ }
1256
+ const downloadURL = window.URL.createObjectURL(blob);
1257
+ const link = document.createElement("a");
1258
+ link.href = downloadURL;
1259
+ link.download = filename;
1260
+ link.click();
1261
+ };
1262
+ exports.saveAsFile = saveAsFile;
1263
+ //# sourceMappingURL=file.utils.js.map