@hichchi/utils 0.0.1-beta.2 → 0.0.2

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