light-upload
Version:
The most powerful lightweight file upload component. Based on JS worker thread technology, it supports multi-threaded file uploads, uploads of files of any size, resumable uploads, and concurrent uploads. File uploads do not block the UI main thread. Note
1,369 lines • 482 kB
JavaScript
import { jsx as X, Fragment as Fr, jsxs as ve } from "react/jsx-runtime";
import * as f from "react";
import dl, { useMemo as st, useRef as Ge, useReducer as ul, useEffect as tt, useCallback as ye, forwardRef as Sn, useImperativeHandle as zr, Fragment as pl, createElement as fi, useLayoutEffect as fl, useState as Ie } from "react";
import * as Jr from "react-dom";
import ml from "react-dom";
function hl(e) {
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
}
var mi = { exports: {} }, Mt = { exports: {} }, re = {};
/** @license React v16.13.1
* react-is.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ro;
function bl() {
if (ro) return re;
ro = 1;
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, i = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, r = e ? Symbol.for("react.profiler") : 60114, a = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, u = e ? Symbol.for("react.suspense") : 60113, p = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, h = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, g = e ? Symbol.for("react.fundamental") : 60117, v = e ? Symbol.for("react.responder") : 60118, G = e ? Symbol.for("react.scope") : 60119;
function Z(y) {
if (typeof y == "object" && y !== null) {
var N = y.$$typeof;
switch (N) {
case t:
switch (y = y.type, y) {
case l:
case c:
case i:
case r:
case o:
case u:
return y;
default:
switch (y = y && y.$$typeof, y) {
case s:
case d:
case h:
case b:
case a:
return y;
default:
return N;
}
}
case n:
return N;
}
}
}
function R(y) {
return Z(y) === c;
}
return re.AsyncMode = l, re.ConcurrentMode = c, re.ContextConsumer = s, re.ContextProvider = a, re.Element = t, re.ForwardRef = d, re.Fragment = i, re.Lazy = h, re.Memo = b, re.Portal = n, re.Profiler = r, re.StrictMode = o, re.Suspense = u, re.isAsyncMode = function(y) {
return R(y) || Z(y) === l;
}, re.isConcurrentMode = R, re.isContextConsumer = function(y) {
return Z(y) === s;
}, re.isContextProvider = function(y) {
return Z(y) === a;
}, re.isElement = function(y) {
return typeof y == "object" && y !== null && y.$$typeof === t;
}, re.isForwardRef = function(y) {
return Z(y) === d;
}, re.isFragment = function(y) {
return Z(y) === i;
}, re.isLazy = function(y) {
return Z(y) === h;
}, re.isMemo = function(y) {
return Z(y) === b;
}, re.isPortal = function(y) {
return Z(y) === n;
}, re.isProfiler = function(y) {
return Z(y) === r;
}, re.isStrictMode = function(y) {
return Z(y) === o;
}, re.isSuspense = function(y) {
return Z(y) === u;
}, re.isValidElementType = function(y) {
return typeof y == "string" || typeof y == "function" || y === i || y === c || y === r || y === o || y === u || y === p || typeof y == "object" && y !== null && (y.$$typeof === h || y.$$typeof === b || y.$$typeof === a || y.$$typeof === s || y.$$typeof === d || y.$$typeof === g || y.$$typeof === v || y.$$typeof === G || y.$$typeof === m);
}, re.typeOf = Z, re;
}
var ae = {};
/** @license React v16.13.1
* react-is.development.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
var ao;
function gl() {
return ao || (ao = 1, process.env.NODE_ENV !== "production" && function() {
var e = typeof Symbol == "function" && Symbol.for, t = e ? Symbol.for("react.element") : 60103, n = e ? Symbol.for("react.portal") : 60106, i = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, r = e ? Symbol.for("react.profiler") : 60114, a = e ? Symbol.for("react.provider") : 60109, s = e ? Symbol.for("react.context") : 60110, l = e ? Symbol.for("react.async_mode") : 60111, c = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, u = e ? Symbol.for("react.suspense") : 60113, p = e ? Symbol.for("react.suspense_list") : 60120, b = e ? Symbol.for("react.memo") : 60115, h = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, g = e ? Symbol.for("react.fundamental") : 60117, v = e ? Symbol.for("react.responder") : 60118, G = e ? Symbol.for("react.scope") : 60119;
function Z(w) {
return typeof w == "string" || typeof w == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
w === i || w === c || w === r || w === o || w === u || w === p || typeof w == "object" && w !== null && (w.$$typeof === h || w.$$typeof === b || w.$$typeof === a || w.$$typeof === s || w.$$typeof === d || w.$$typeof === g || w.$$typeof === v || w.$$typeof === G || w.$$typeof === m);
}
function R(w) {
if (typeof w == "object" && w !== null) {
var j = w.$$typeof;
switch (j) {
case t:
var ce = w.type;
switch (ce) {
case l:
case c:
case i:
case r:
case o:
case u:
return ce;
default:
var ge = ce && ce.$$typeof;
switch (ge) {
case s:
case d:
case h:
case b:
case a:
return ge;
default:
return j;
}
}
case n:
return j;
}
}
}
var y = l, N = c, W = s, C = a, I = t, F = d, ee = i, Q = h, oe = b, z = n, O = r, U = o, _ = u, V = !1;
function J(w) {
return V || (V = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), S(w) || R(w) === l;
}
function S(w) {
return R(w) === c;
}
function k(w) {
return R(w) === s;
}
function H(w) {
return R(w) === a;
}
function Y(w) {
return typeof w == "object" && w !== null && w.$$typeof === t;
}
function T(w) {
return R(w) === d;
}
function $(w) {
return R(w) === i;
}
function M(w) {
return R(w) === h;
}
function E(w) {
return R(w) === b;
}
function q(w) {
return R(w) === n;
}
function te(w) {
return R(w) === r;
}
function D(w) {
return R(w) === o;
}
function se(w) {
return R(w) === u;
}
ae.AsyncMode = y, ae.ConcurrentMode = N, ae.ContextConsumer = W, ae.ContextProvider = C, ae.Element = I, ae.ForwardRef = F, ae.Fragment = ee, ae.Lazy = Q, ae.Memo = oe, ae.Portal = z, ae.Profiler = O, ae.StrictMode = U, ae.Suspense = _, ae.isAsyncMode = J, ae.isConcurrentMode = S, ae.isContextConsumer = k, ae.isContextProvider = H, ae.isElement = Y, ae.isForwardRef = T, ae.isFragment = $, ae.isLazy = M, ae.isMemo = E, ae.isPortal = q, ae.isProfiler = te, ae.isStrictMode = D, ae.isSuspense = se, ae.isValidElementType = Z, ae.typeOf = R;
}()), ae;
}
var so;
function Or() {
return so || (so = 1, process.env.NODE_ENV === "production" ? Mt.exports = bl() : Mt.exports = gl()), Mt.exports;
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var Mn, lo;
function yl() {
if (lo) return Mn;
lo = 1;
var e = Object.getOwnPropertySymbols, t = Object.prototype.hasOwnProperty, n = Object.prototype.propertyIsEnumerable;
function i(r) {
if (r == null)
throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(r);
}
function o() {
try {
if (!Object.assign)
return !1;
var r = new String("abc");
if (r[5] = "de", Object.getOwnPropertyNames(r)[0] === "5")
return !1;
for (var a = {}, s = 0; s < 10; s++)
a["_" + String.fromCharCode(s)] = s;
var l = Object.getOwnPropertyNames(a).map(function(d) {
return a[d];
});
if (l.join("") !== "0123456789")
return !1;
var c = {};
return "abcdefghijklmnopqrst".split("").forEach(function(d) {
c[d] = d;
}), Object.keys(Object.assign({}, c)).join("") === "abcdefghijklmnopqrst";
} catch {
return !1;
}
}
return Mn = o() ? Object.assign : function(r, a) {
for (var s, l = i(r), c, d = 1; d < arguments.length; d++) {
s = Object(arguments[d]);
for (var u in s)
t.call(s, u) && (l[u] = s[u]);
if (e) {
c = e(s);
for (var p = 0; p < c.length; p++)
n.call(s, c[p]) && (l[c[p]] = s[c[p]]);
}
}
return l;
}, Mn;
}
var jn, co;
function Ki() {
if (co) return jn;
co = 1;
var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
return jn = e, jn;
}
var Un, uo;
function Hr() {
return uo || (uo = 1, Un = Function.call.bind(Object.prototype.hasOwnProperty)), Un;
}
var An, po;
function vl() {
if (po) return An;
po = 1;
var e = function() {
};
if (process.env.NODE_ENV !== "production") {
var t = Ki(), n = {}, i = Hr();
e = function(r) {
var a = "Warning: " + r;
typeof console < "u" && console.error(a);
try {
throw new Error(a);
} catch {
}
};
}
function o(r, a, s, l, c) {
if (process.env.NODE_ENV !== "production") {
for (var d in r)
if (i(r, d)) {
var u;
try {
if (typeof r[d] != "function") {
var p = Error(
(l || "React class") + ": " + s + " type `" + d + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof r[d] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`."
);
throw p.name = "Invariant Violation", p;
}
u = r[d](a, d, l, s, null, t);
} catch (h) {
u = h;
}
if (u && !(u instanceof Error) && e(
(l || "React class") + ": type specification of " + s + " `" + d + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof u + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."
), u instanceof Error && !(u.message in n)) {
n[u.message] = !0;
var b = c ? c() : "";
e(
"Failed " + s + " type: " + u.message + (b ?? "")
);
}
}
}
}
return o.resetWarningCache = function() {
process.env.NODE_ENV !== "production" && (n = {});
}, An = o, An;
}
var Dn, fo;
function xl() {
if (fo) return Dn;
fo = 1;
var e = Or(), t = yl(), n = Ki(), i = Hr(), o = vl(), r = function() {
};
process.env.NODE_ENV !== "production" && (r = function(s) {
var l = "Warning: " + s;
typeof console < "u" && console.error(l);
try {
throw new Error(l);
} catch {
}
});
function a() {
return null;
}
return Dn = function(s, l) {
var c = typeof Symbol == "function" && Symbol.iterator, d = "@@iterator";
function u(S) {
var k = S && (c && S[c] || S[d]);
if (typeof k == "function")
return k;
}
var p = "<<anonymous>>", b = {
array: v("array"),
bigint: v("bigint"),
bool: v("boolean"),
func: v("function"),
number: v("number"),
object: v("object"),
string: v("string"),
symbol: v("symbol"),
any: G(),
arrayOf: Z,
element: R(),
elementType: y(),
instanceOf: N,
node: F(),
objectOf: C,
oneOf: W,
oneOfType: I,
shape: Q,
exact: oe
};
function h(S, k) {
return S === k ? S !== 0 || 1 / S === 1 / k : S !== S && k !== k;
}
function m(S, k) {
this.message = S, this.data = k && typeof k == "object" ? k : {}, this.stack = "";
}
m.prototype = Error.prototype;
function g(S) {
if (process.env.NODE_ENV !== "production")
var k = {}, H = 0;
function Y($, M, E, q, te, D, se) {
if (q = q || p, D = D || E, se !== n) {
if (l) {
var w = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types"
);
throw w.name = "Invariant Violation", w;
} else if (process.env.NODE_ENV !== "production" && typeof console < "u") {
var j = q + ":" + E;
!k[j] && // Avoid spamming the console because they are often not actionable except for lib authors
H < 3 && (r(
"You are manually calling a React.PropTypes validation function for the `" + D + "` prop on `" + q + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."
), k[j] = !0, H++);
}
}
return M[E] == null ? $ ? M[E] === null ? new m("The " + te + " `" + D + "` is marked as required " + ("in `" + q + "`, but its value is `null`.")) : new m("The " + te + " `" + D + "` is marked as required in " + ("`" + q + "`, but its value is `undefined`.")) : null : S(M, E, q, te, D);
}
var T = Y.bind(null, !1);
return T.isRequired = Y.bind(null, !0), T;
}
function v(S) {
function k(H, Y, T, $, M, E) {
var q = H[Y], te = U(q);
if (te !== S) {
var D = _(q);
return new m(
"Invalid " + $ + " `" + M + "` of type " + ("`" + D + "` supplied to `" + T + "`, expected ") + ("`" + S + "`."),
{ expectedType: S }
);
}
return null;
}
return g(k);
}
function G() {
return g(a);
}
function Z(S) {
function k(H, Y, T, $, M) {
if (typeof S != "function")
return new m("Property `" + M + "` of component `" + T + "` has invalid PropType notation inside arrayOf.");
var E = H[Y];
if (!Array.isArray(E)) {
var q = U(E);
return new m("Invalid " + $ + " `" + M + "` of type " + ("`" + q + "` supplied to `" + T + "`, expected an array."));
}
for (var te = 0; te < E.length; te++) {
var D = S(E, te, T, $, M + "[" + te + "]", n);
if (D instanceof Error)
return D;
}
return null;
}
return g(k);
}
function R() {
function S(k, H, Y, T, $) {
var M = k[H];
if (!s(M)) {
var E = U(M);
return new m("Invalid " + T + " `" + $ + "` of type " + ("`" + E + "` supplied to `" + Y + "`, expected a single ReactElement."));
}
return null;
}
return g(S);
}
function y() {
function S(k, H, Y, T, $) {
var M = k[H];
if (!e.isValidElementType(M)) {
var E = U(M);
return new m("Invalid " + T + " `" + $ + "` of type " + ("`" + E + "` supplied to `" + Y + "`, expected a single ReactElement type."));
}
return null;
}
return g(S);
}
function N(S) {
function k(H, Y, T, $, M) {
if (!(H[Y] instanceof S)) {
var E = S.name || p, q = J(H[Y]);
return new m("Invalid " + $ + " `" + M + "` of type " + ("`" + q + "` supplied to `" + T + "`, expected ") + ("instance of `" + E + "`."));
}
return null;
}
return g(k);
}
function W(S) {
if (!Array.isArray(S))
return process.env.NODE_ENV !== "production" && (arguments.length > 1 ? r(
"Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."
) : r("Invalid argument supplied to oneOf, expected an array.")), a;
function k(H, Y, T, $, M) {
for (var E = H[Y], q = 0; q < S.length; q++)
if (h(E, S[q]))
return null;
var te = JSON.stringify(S, function(se, w) {
var j = _(w);
return j === "symbol" ? String(w) : w;
});
return new m("Invalid " + $ + " `" + M + "` of value `" + String(E) + "` " + ("supplied to `" + T + "`, expected one of " + te + "."));
}
return g(k);
}
function C(S) {
function k(H, Y, T, $, M) {
if (typeof S != "function")
return new m("Property `" + M + "` of component `" + T + "` has invalid PropType notation inside objectOf.");
var E = H[Y], q = U(E);
if (q !== "object")
return new m("Invalid " + $ + " `" + M + "` of type " + ("`" + q + "` supplied to `" + T + "`, expected an object."));
for (var te in E)
if (i(E, te)) {
var D = S(E, te, T, $, M + "." + te, n);
if (D instanceof Error)
return D;
}
return null;
}
return g(k);
}
function I(S) {
if (!Array.isArray(S))
return process.env.NODE_ENV !== "production" && r("Invalid argument supplied to oneOfType, expected an instance of array."), a;
for (var k = 0; k < S.length; k++) {
var H = S[k];
if (typeof H != "function")
return r(
"Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + V(H) + " at index " + k + "."
), a;
}
function Y(T, $, M, E, q) {
for (var te = [], D = 0; D < S.length; D++) {
var se = S[D], w = se(T, $, M, E, q, n);
if (w == null)
return null;
w.data && i(w.data, "expectedType") && te.push(w.data.expectedType);
}
var j = te.length > 0 ? ", expected one of type [" + te.join(", ") + "]" : "";
return new m("Invalid " + E + " `" + q + "` supplied to " + ("`" + M + "`" + j + "."));
}
return g(Y);
}
function F() {
function S(k, H, Y, T, $) {
return z(k[H]) ? null : new m("Invalid " + T + " `" + $ + "` supplied to " + ("`" + Y + "`, expected a ReactNode."));
}
return g(S);
}
function ee(S, k, H, Y, T) {
return new m(
(S || "React class") + ": " + k + " type `" + H + "." + Y + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + T + "`."
);
}
function Q(S) {
function k(H, Y, T, $, M) {
var E = H[Y], q = U(E);
if (q !== "object")
return new m("Invalid " + $ + " `" + M + "` of type `" + q + "` " + ("supplied to `" + T + "`, expected `object`."));
for (var te in S) {
var D = S[te];
if (typeof D != "function")
return ee(T, $, M, te, _(D));
var se = D(E, te, T, $, M + "." + te, n);
if (se)
return se;
}
return null;
}
return g(k);
}
function oe(S) {
function k(H, Y, T, $, M) {
var E = H[Y], q = U(E);
if (q !== "object")
return new m("Invalid " + $ + " `" + M + "` of type `" + q + "` " + ("supplied to `" + T + "`, expected `object`."));
var te = t({}, H[Y], S);
for (var D in te) {
var se = S[D];
if (i(S, D) && typeof se != "function")
return ee(T, $, M, D, _(se));
if (!se)
return new m(
"Invalid " + $ + " `" + M + "` key `" + D + "` supplied to `" + T + "`.\nBad object: " + JSON.stringify(H[Y], null, " ") + `
Valid keys: ` + JSON.stringify(Object.keys(S), null, " ")
);
var w = se(E, D, T, $, M + "." + D, n);
if (w)
return w;
}
return null;
}
return g(k);
}
function z(S) {
switch (typeof S) {
case "number":
case "string":
case "undefined":
return !0;
case "boolean":
return !S;
case "object":
if (Array.isArray(S))
return S.every(z);
if (S === null || s(S))
return !0;
var k = u(S);
if (k) {
var H = k.call(S), Y;
if (k !== S.entries) {
for (; !(Y = H.next()).done; )
if (!z(Y.value))
return !1;
} else
for (; !(Y = H.next()).done; ) {
var T = Y.value;
if (T && !z(T[1]))
return !1;
}
} else
return !1;
return !0;
default:
return !1;
}
}
function O(S, k) {
return S === "symbol" ? !0 : k ? k["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && k instanceof Symbol : !1;
}
function U(S) {
var k = typeof S;
return Array.isArray(S) ? "array" : S instanceof RegExp ? "object" : O(k, S) ? "symbol" : k;
}
function _(S) {
if (typeof S > "u" || S === null)
return "" + S;
var k = U(S);
if (k === "object") {
if (S instanceof Date)
return "date";
if (S instanceof RegExp)
return "regexp";
}
return k;
}
function V(S) {
var k = _(S);
switch (k) {
case "array":
case "object":
return "an " + k;
case "boolean":
case "date":
case "regexp":
return "a " + k;
default:
return k;
}
}
function J(S) {
return !S.constructor || !S.constructor.name ? p : S.constructor.name;
}
return b.checkPropTypes = o, b.resetWarningCache = o.resetWarningCache, b.PropTypes = b, b;
}, Dn;
}
var Bn, mo;
function Zl() {
if (mo) return Bn;
mo = 1;
var e = Ki();
function t() {
}
function n() {
}
return n.resetWarningCache = t, Bn = function() {
function i(a, s, l, c, d, u) {
if (u !== e) {
var p = new Error(
"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types"
);
throw p.name = "Invariant Violation", p;
}
}
i.isRequired = i;
function o() {
return i;
}
var r = {
array: i,
bigint: i,
bool: i,
func: i,
number: i,
object: i,
string: i,
symbol: i,
any: i,
arrayOf: o,
element: i,
elementType: i,
instanceOf: o,
node: i,
objectOf: o,
oneOf: o,
oneOfType: o,
shape: o,
exact: o,
checkPropTypes: n,
resetWarningCache: t
};
return r.PropTypes = r, r;
}, Bn;
}
if (process.env.NODE_ENV !== "production") {
var wl = Or(), Sl = !0;
mi.exports = xl()(wl.isElement, Sl);
} else
mi.exports = Zl()();
var Rl = mi.exports;
const le = /* @__PURE__ */ hl(Rl);
var Te = function() {
return Te = Object.assign || function(t) {
for (var n, i = 1, o = arguments.length; i < o; i++) {
n = arguments[i];
for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r]);
}
return t;
}, Te.apply(this, arguments);
};
function Mr(e, t) {
var n = {};
for (var i in e) Object.prototype.hasOwnProperty.call(e, i) && t.indexOf(i) < 0 && (n[i] = e[i]);
if (e != null && typeof Object.getOwnPropertySymbols == "function")
for (var o = 0, i = Object.getOwnPropertySymbols(e); o < i.length; o++)
t.indexOf(i[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, i[o]) && (n[i[o]] = e[i[o]]);
return n;
}
function rt(e, t, n, i) {
function o(r) {
return r instanceof n ? r : new n(function(a) {
a(r);
});
}
return new (n || (n = Promise))(function(r, a) {
function s(d) {
try {
c(i.next(d));
} catch (u) {
a(u);
}
}
function l(d) {
try {
c(i.throw(d));
} catch (u) {
a(u);
}
}
function c(d) {
d.done ? r(d.value) : o(d.value).then(s, l);
}
c((i = i.apply(e, t || [])).next());
});
}
function Gl(e, t, n) {
if (n || arguments.length === 2) for (var i = 0, o = t.length, r; i < o; i++)
(r || !(i in t)) && (r || (r = Array.prototype.slice.call(t, 0, i)), r[i] = t[i]);
return e.concat(r || Array.prototype.slice.call(t));
}
const Cl = /* @__PURE__ */ new Map([
// https://github.com/guzzle/psr7/blob/2d9260799e713f1c475d3c5fdc3d6561ff7441b2/src/MimeType.php
["1km", "application/vnd.1000minds.decision-model+xml"],
["3dml", "text/vnd.in3d.3dml"],
["3ds", "image/x-3ds"],
["3g2", "video/3gpp2"],
["3gp", "video/3gp"],
["3gpp", "video/3gpp"],
["3mf", "model/3mf"],
["7z", "application/x-7z-compressed"],
["7zip", "application/x-7z-compressed"],
["123", "application/vnd.lotus-1-2-3"],
["aab", "application/x-authorware-bin"],
["aac", "audio/x-acc"],
["aam", "application/x-authorware-map"],
["aas", "application/x-authorware-seg"],
["abw", "application/x-abiword"],
["ac", "application/vnd.nokia.n-gage.ac+xml"],
["ac3", "audio/ac3"],
["acc", "application/vnd.americandynamics.acc"],
["ace", "application/x-ace-compressed"],
["acu", "application/vnd.acucobol"],
["acutc", "application/vnd.acucorp"],
["adp", "audio/adpcm"],
["aep", "application/vnd.audiograph"],
["afm", "application/x-font-type1"],
["afp", "application/vnd.ibm.modcap"],
["ahead", "application/vnd.ahead.space"],
["ai", "application/pdf"],
["aif", "audio/x-aiff"],
["aifc", "audio/x-aiff"],
["aiff", "audio/x-aiff"],
["air", "application/vnd.adobe.air-application-installer-package+zip"],
["ait", "application/vnd.dvb.ait"],
["ami", "application/vnd.amiga.ami"],
["amr", "audio/amr"],
["apk", "application/vnd.android.package-archive"],
["apng", "image/apng"],
["appcache", "text/cache-manifest"],
["application", "application/x-ms-application"],
["apr", "application/vnd.lotus-approach"],
["arc", "application/x-freearc"],
["arj", "application/x-arj"],
["asc", "application/pgp-signature"],
["asf", "video/x-ms-asf"],
["asm", "text/x-asm"],
["aso", "application/vnd.accpac.simply.aso"],
["asx", "video/x-ms-asf"],
["atc", "application/vnd.acucorp"],
["atom", "application/atom+xml"],
["atomcat", "application/atomcat+xml"],
["atomdeleted", "application/atomdeleted+xml"],
["atomsvc", "application/atomsvc+xml"],
["atx", "application/vnd.antix.game-component"],
["au", "audio/x-au"],
["avi", "video/x-msvideo"],
["avif", "image/avif"],
["aw", "application/applixware"],
["azf", "application/vnd.airzip.filesecure.azf"],
["azs", "application/vnd.airzip.filesecure.azs"],
["azv", "image/vnd.airzip.accelerator.azv"],
["azw", "application/vnd.amazon.ebook"],
["b16", "image/vnd.pco.b16"],
["bat", "application/x-msdownload"],
["bcpio", "application/x-bcpio"],
["bdf", "application/x-font-bdf"],
["bdm", "application/vnd.syncml.dm+wbxml"],
["bdoc", "application/x-bdoc"],
["bed", "application/vnd.realvnc.bed"],
["bh2", "application/vnd.fujitsu.oasysprs"],
["bin", "application/octet-stream"],
["blb", "application/x-blorb"],
["blorb", "application/x-blorb"],
["bmi", "application/vnd.bmi"],
["bmml", "application/vnd.balsamiq.bmml+xml"],
["bmp", "image/bmp"],
["book", "application/vnd.framemaker"],
["box", "application/vnd.previewsystems.box"],
["boz", "application/x-bzip2"],
["bpk", "application/octet-stream"],
["bpmn", "application/octet-stream"],
["bsp", "model/vnd.valve.source.compiled-map"],
["btif", "image/prs.btif"],
["buffer", "application/octet-stream"],
["bz", "application/x-bzip"],
["bz2", "application/x-bzip2"],
["c", "text/x-c"],
["c4d", "application/vnd.clonk.c4group"],
["c4f", "application/vnd.clonk.c4group"],
["c4g", "application/vnd.clonk.c4group"],
["c4p", "application/vnd.clonk.c4group"],
["c4u", "application/vnd.clonk.c4group"],
["c11amc", "application/vnd.cluetrust.cartomobile-config"],
["c11amz", "application/vnd.cluetrust.cartomobile-config-pkg"],
["cab", "application/vnd.ms-cab-compressed"],
["caf", "audio/x-caf"],
["cap", "application/vnd.tcpdump.pcap"],
["car", "application/vnd.curl.car"],
["cat", "application/vnd.ms-pki.seccat"],
["cb7", "application/x-cbr"],
["cba", "application/x-cbr"],
["cbr", "application/x-cbr"],
["cbt", "application/x-cbr"],
["cbz", "application/x-cbr"],
["cc", "text/x-c"],
["cco", "application/x-cocoa"],
["cct", "application/x-director"],
["ccxml", "application/ccxml+xml"],
["cdbcmsg", "application/vnd.contact.cmsg"],
["cda", "application/x-cdf"],
["cdf", "application/x-netcdf"],
["cdfx", "application/cdfx+xml"],
["cdkey", "application/vnd.mediastation.cdkey"],
["cdmia", "application/cdmi-capability"],
["cdmic", "application/cdmi-container"],
["cdmid", "application/cdmi-domain"],
["cdmio", "application/cdmi-object"],
["cdmiq", "application/cdmi-queue"],
["cdr", "application/cdr"],
["cdx", "chemical/x-cdx"],
["cdxml", "application/vnd.chemdraw+xml"],
["cdy", "application/vnd.cinderella"],
["cer", "application/pkix-cert"],
["cfs", "application/x-cfs-compressed"],
["cgm", "image/cgm"],
["chat", "application/x-chat"],
["chm", "application/vnd.ms-htmlhelp"],
["chrt", "application/vnd.kde.kchart"],
["cif", "chemical/x-cif"],
["cii", "application/vnd.anser-web-certificate-issue-initiation"],
["cil", "application/vnd.ms-artgalry"],
["cjs", "application/node"],
["cla", "application/vnd.claymore"],
["class", "application/octet-stream"],
["clkk", "application/vnd.crick.clicker.keyboard"],
["clkp", "application/vnd.crick.clicker.palette"],
["clkt", "application/vnd.crick.clicker.template"],
["clkw", "application/vnd.crick.clicker.wordbank"],
["clkx", "application/vnd.crick.clicker"],
["clp", "application/x-msclip"],
["cmc", "application/vnd.cosmocaller"],
["cmdf", "chemical/x-cmdf"],
["cml", "chemical/x-cml"],
["cmp", "application/vnd.yellowriver-custom-menu"],
["cmx", "image/x-cmx"],
["cod", "application/vnd.rim.cod"],
["coffee", "text/coffeescript"],
["com", "application/x-msdownload"],
["conf", "text/plain"],
["cpio", "application/x-cpio"],
["cpp", "text/x-c"],
["cpt", "application/mac-compactpro"],
["crd", "application/x-mscardfile"],
["crl", "application/pkix-crl"],
["crt", "application/x-x509-ca-cert"],
["crx", "application/x-chrome-extension"],
["cryptonote", "application/vnd.rig.cryptonote"],
["csh", "application/x-csh"],
["csl", "application/vnd.citationstyles.style+xml"],
["csml", "chemical/x-csml"],
["csp", "application/vnd.commonspace"],
["csr", "application/octet-stream"],
["css", "text/css"],
["cst", "application/x-director"],
["csv", "text/csv"],
["cu", "application/cu-seeme"],
["curl", "text/vnd.curl"],
["cww", "application/prs.cww"],
["cxt", "application/x-director"],
["cxx", "text/x-c"],
["dae", "model/vnd.collada+xml"],
["daf", "application/vnd.mobius.daf"],
["dart", "application/vnd.dart"],
["dataless", "application/vnd.fdsn.seed"],
["davmount", "application/davmount+xml"],
["dbf", "application/vnd.dbf"],
["dbk", "application/docbook+xml"],
["dcr", "application/x-director"],
["dcurl", "text/vnd.curl.dcurl"],
["dd2", "application/vnd.oma.dd2+xml"],
["ddd", "application/vnd.fujixerox.ddd"],
["ddf", "application/vnd.syncml.dmddf+xml"],
["dds", "image/vnd.ms-dds"],
["deb", "application/x-debian-package"],
["def", "text/plain"],
["deploy", "application/octet-stream"],
["der", "application/x-x509-ca-cert"],
["dfac", "application/vnd.dreamfactory"],
["dgc", "application/x-dgc-compressed"],
["dic", "text/x-c"],
["dir", "application/x-director"],
["dis", "application/vnd.mobius.dis"],
["disposition-notification", "message/disposition-notification"],
["dist", "application/octet-stream"],
["distz", "application/octet-stream"],
["djv", "image/vnd.djvu"],
["djvu", "image/vnd.djvu"],
["dll", "application/octet-stream"],
["dmg", "application/x-apple-diskimage"],
["dmn", "application/octet-stream"],
["dmp", "application/vnd.tcpdump.pcap"],
["dms", "application/octet-stream"],
["dna", "application/vnd.dna"],
["doc", "application/msword"],
["docm", "application/vnd.ms-word.template.macroEnabled.12"],
["docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"],
["dot", "application/msword"],
["dotm", "application/vnd.ms-word.template.macroEnabled.12"],
["dotx", "application/vnd.openxmlformats-officedocument.wordprocessingml.template"],
["dp", "application/vnd.osgi.dp"],
["dpg", "application/vnd.dpgraph"],
["dra", "audio/vnd.dra"],
["drle", "image/dicom-rle"],
["dsc", "text/prs.lines.tag"],
["dssc", "application/dssc+der"],
["dtb", "application/x-dtbook+xml"],
["dtd", "application/xml-dtd"],
["dts", "audio/vnd.dts"],
["dtshd", "audio/vnd.dts.hd"],
["dump", "application/octet-stream"],
["dvb", "video/vnd.dvb.file"],
["dvi", "application/x-dvi"],
["dwd", "application/atsc-dwd+xml"],
["dwf", "model/vnd.dwf"],
["dwg", "image/vnd.dwg"],
["dxf", "image/vnd.dxf"],
["dxp", "application/vnd.spotfire.dxp"],
["dxr", "application/x-director"],
["ear", "application/java-archive"],
["ecelp4800", "audio/vnd.nuera.ecelp4800"],
["ecelp7470", "audio/vnd.nuera.ecelp7470"],
["ecelp9600", "audio/vnd.nuera.ecelp9600"],
["ecma", "application/ecmascript"],
["edm", "application/vnd.novadigm.edm"],
["edx", "application/vnd.novadigm.edx"],
["efif", "application/vnd.picsel"],
["ei6", "application/vnd.pg.osasli"],
["elc", "application/octet-stream"],
["emf", "image/emf"],
["eml", "message/rfc822"],
["emma", "application/emma+xml"],
["emotionml", "application/emotionml+xml"],
["emz", "application/x-msmetafile"],
["eol", "audio/vnd.digital-winds"],
["eot", "application/vnd.ms-fontobject"],
["eps", "application/postscript"],
["epub", "application/epub+zip"],
["es", "application/ecmascript"],
["es3", "application/vnd.eszigno3+xml"],
["esa", "application/vnd.osgi.subsystem"],
["esf", "application/vnd.epson.esf"],
["et3", "application/vnd.eszigno3+xml"],
["etx", "text/x-setext"],
["eva", "application/x-eva"],
["evy", "application/x-envoy"],
["exe", "application/octet-stream"],
["exi", "application/exi"],
["exp", "application/express"],
["exr", "image/aces"],
["ext", "application/vnd.novadigm.ext"],
["ez", "application/andrew-inset"],
["ez2", "application/vnd.ezpix-album"],
["ez3", "application/vnd.ezpix-package"],
["f", "text/x-fortran"],
["f4v", "video/mp4"],
["f77", "text/x-fortran"],
["f90", "text/x-fortran"],
["fbs", "image/vnd.fastbidsheet"],
["fcdt", "application/vnd.adobe.formscentral.fcdt"],
["fcs", "application/vnd.isac.fcs"],
["fdf", "application/vnd.fdf"],
["fdt", "application/fdt+xml"],
["fe_launch", "application/vnd.denovo.fcselayout-link"],
["fg5", "application/vnd.fujitsu.oasysgp"],
["fgd", "application/x-director"],
["fh", "image/x-freehand"],
["fh4", "image/x-freehand"],
["fh5", "image/x-freehand"],
["fh7", "image/x-freehand"],
["fhc", "image/x-freehand"],
["fig", "application/x-xfig"],
["fits", "image/fits"],
["flac", "audio/x-flac"],
["fli", "video/x-fli"],
["flo", "application/vnd.micrografx.flo"],
["flv", "video/x-flv"],
["flw", "application/vnd.kde.kivio"],
["flx", "text/vnd.fmi.flexstor"],
["fly", "text/vnd.fly"],
["fm", "application/vnd.framemaker"],
["fnc", "application/vnd.frogans.fnc"],
["fo", "application/vnd.software602.filler.form+xml"],
["for", "text/x-fortran"],
["fpx", "image/vnd.fpx"],
["frame", "application/vnd.framemaker"],
["fsc", "application/vnd.fsc.weblaunch"],
["fst", "image/vnd.fst"],
["ftc", "application/vnd.fluxtime.clip"],
["fti", "application/vnd.anser-web-funds-transfer-initiation"],
["fvt", "video/vnd.fvt"],
["fxp", "application/vnd.adobe.fxp"],
["fxpl", "application/vnd.adobe.fxp"],
["fzs", "application/vnd.fuzzysheet"],
["g2w", "application/vnd.geoplan"],
["g3", "image/g3fax"],
["g3w", "application/vnd.geospace"],
["gac", "application/vnd.groove-account"],
["gam", "application/x-tads"],
["gbr", "application/rpki-ghostbusters"],
["gca", "application/x-gca-compressed"],
["gdl", "model/vnd.gdl"],
["gdoc", "application/vnd.google-apps.document"],
["geo", "application/vnd.dynageo"],
["geojson", "application/geo+json"],
["gex", "application/vnd.geometry-explorer"],
["ggb", "application/vnd.geogebra.file"],
["ggt", "application/vnd.geogebra.tool"],
["ghf", "application/vnd.groove-help"],
["gif", "image/gif"],
["gim", "application/vnd.groove-identity-message"],
["glb", "model/gltf-binary"],
["gltf", "model/gltf+json"],
["gml", "application/gml+xml"],
["gmx", "application/vnd.gmx"],
["gnumeric", "application/x-gnumeric"],
["gpg", "application/gpg-keys"],
["gph", "application/vnd.flographit"],
["gpx", "application/gpx+xml"],
["gqf", "application/vnd.grafeq"],
["gqs", "application/vnd.grafeq"],
["gram", "application/srgs"],
["gramps", "application/x-gramps-xml"],
["gre", "application/vnd.geometry-explorer"],
["grv", "application/vnd.groove-injector"],
["grxml", "application/srgs+xml"],
["gsf", "application/x-font-ghostscript"],
["gsheet", "application/vnd.google-apps.spreadsheet"],
["gslides", "application/vnd.google-apps.presentation"],
["gtar", "application/x-gtar"],
["gtm", "application/vnd.groove-tool-message"],
["gtw", "model/vnd.gtw"],
["gv", "text/vnd.graphviz"],
["gxf", "application/gxf"],
["gxt", "application/vnd.geonext"],
["gz", "application/gzip"],
["gzip", "application/gzip"],
["h", "text/x-c"],
["h261", "video/h261"],
["h263", "video/h263"],
["h264", "video/h264"],
["hal", "application/vnd.hal+xml"],
["hbci", "application/vnd.hbci"],
["hbs", "text/x-handlebars-template"],
["hdd", "application/x-virtualbox-hdd"],
["hdf", "application/x-hdf"],
["heic", "image/heic"],
["heics", "image/heic-sequence"],
["heif", "image/heif"],
["heifs", "image/heif-sequence"],
["hej2", "image/hej2k"],
["held", "application/atsc-held+xml"],
["hh", "text/x-c"],
["hjson", "application/hjson"],
["hlp", "application/winhlp"],
["hpgl", "application/vnd.hp-hpgl"],
["hpid", "application/vnd.hp-hpid"],
["hps", "application/vnd.hp-hps"],
["hqx", "application/mac-binhex40"],
["hsj2", "image/hsj2"],
["htc", "text/x-component"],
["htke", "application/vnd.kenameaapp"],
["htm", "text/html"],
["html", "text/html"],
["hvd", "application/vnd.yamaha.hv-dic"],
["hvp", "application/vnd.yamaha.hv-voice"],
["hvs", "application/vnd.yamaha.hv-script"],
["i2g", "application/vnd.intergeo"],
["icc", "application/vnd.iccprofile"],
["ice", "x-conference/x-cooltalk"],
["icm", "application/vnd.iccprofile"],
["ico", "image/x-icon"],
["ics", "text/calendar"],
["ief", "image/ief"],
["ifb", "text/calendar"],
["ifm", "application/vnd.shana.informed.formdata"],
["iges", "model/iges"],
["igl", "application/vnd.igloader"],
["igm", "application/vnd.insors.igm"],
["igs", "model/iges"],
["igx", "application/vnd.micrografx.igx"],
["iif", "application/vnd.shana.informed.interchange"],
["img", "application/octet-stream"],
["imp", "application/vnd.accpac.simply.imp"],
["ims", "application/vnd.ms-ims"],
["in", "text/plain"],
["ini", "text/plain"],
["ink", "application/inkml+xml"],
["inkml", "application/inkml+xml"],
["install", "application/x-install-instructions"],
["iota", "application/vnd.astraea-software.iota"],
["ipfix", "application/ipfix"],
["ipk", "application/vnd.shana.informed.package"],
["irm", "application/vnd.ibm.rights-management"],
["irp", "application/vnd.irepository.package+xml"],
["iso", "application/x-iso9660-image"],
["itp", "application/vnd.shana.informed.formtemplate"],
["its", "application/its+xml"],
["ivp", "application/vnd.immervision-ivp"],
["ivu", "application/vnd.immervision-ivu"],
["jad", "text/vnd.sun.j2me.app-descriptor"],
["jade", "text/jade"],
["jam", "application/vnd.jam"],
["jar", "application/java-archive"],
["jardiff", "application/x-java-archive-diff"],
["java", "text/x-java-source"],
["jhc", "image/jphc"],
["jisp", "application/vnd.jisp"],
["jls", "image/jls"],
["jlt", "application/vnd.hp-jlyt"],
["jng", "image/x-jng"],
["jnlp", "application/x-java-jnlp-file"],
["joda", "application/vnd.joost.joda-archive"],
["jp2", "image/jp2"],
["jpe", "image/jpeg"],
["jpeg", "image/jpeg"],
["jpf", "image/jpx"],
["jpg", "image/jpeg"],
["jpg2", "image/jp2"],
["jpgm", "video/jpm"],
["jpgv", "video/jpeg"],
["jph", "image/jph"],
["jpm", "video/jpm"],
["jpx", "image/jpx"],
["js", "application/javascript"],
["json", "application/json"],
["json5", "application/json5"],
["jsonld", "application/ld+json"],
// https://jsonlines.org/
["jsonl", "application/jsonl"],
["jsonml", "application/jsonml+json"],
["jsx", "text/jsx"],
["jxr", "image/jxr"],
["jxra", "image/jxra"],
["jxrs", "image/jxrs"],
["jxs", "image/jxs"],
["jxsc", "image/jxsc"],
["jxsi", "image/jxsi"],
["jxss", "image/jxss"],
["kar", "audio/midi"],
["karbon", "application/vnd.kde.karbon"],
["kdb", "application/octet-stream"],
["kdbx", "application/x-keepass2"],
["key", "application/x-iwork-keynote-sffkey"],
["kfo", "application/vnd.kde.kformula"],
["kia", "application/vnd.kidspiration"],
["kml", "application/vnd.google-earth.kml+xml"],
["kmz", "application/vnd.google-earth.kmz"],
["kne", "application/vnd.kinar"],
["knp", "application/vnd.kinar"],
["kon", "application/vnd.kde.kontour"],
["kpr", "application/vnd.kde.kpresenter"],
["kpt", "application/vnd.kde.kpresenter"],
["kpxx", "application/vnd.ds-keypoint"],
["ksp", "application/vnd.kde.kspread"],
["ktr", "application/vnd.kahootz"],
["ktx", "image/ktx"],
["ktx2", "image/ktx2"],
["ktz", "application/vnd.kahootz"],
["kwd", "application/vnd.kde.kword"],
["kwt", "application/vnd.kde.kword"],
["lasxml", "application/vnd.las.las+xml"],
["latex", "application/x-latex"],
["lbd", "application/vnd.llamagraphics.life-balance.desktop"],
["lbe", "application/vnd.llamagraphics.life-balance.exchange+xml"],
["les", "application/vnd.hhe.lesson-player"],
["less", "text/less"],
["lgr", "application/lgr+xml"],
["lha", "application/octet-stream"],
["link66", "application/vnd.route66.link66+xml"],
["list", "text/plain"],
["list3820", "application/vnd.ibm.modcap"],
["listafp", "application/vnd.ibm.modcap"],
["litcoffee", "text/coffeescript"],
["lnk", "application/x-ms-shortcut"],
["log", "text/plain"],
["lostxml", "application/lost+xml"],
["lrf", "application/octet-stream"],
["lrm", "application/vnd.ms-lrm"],
["ltf", "application/vnd.frogans.ltf"],
["lua", "text/x-lua"],
["luac", "application/x-lua-bytecode"],
["lvp", "audio/vnd.lucent.voice"],
["lwp", "application/vnd.lotus-wordpro"],
["lzh", "application/octet-stream"],
["m1v", "video/mpeg"],
["m2a", "audio/mpeg"],
["m2v", "video/mpeg"],
["m3a", "audio/mpeg"],
["m3u", "text/plain"],
["m3u8", "application/vnd.apple.mpegurl"],
["m4a", "audio/x-m4a"],
["m4p", "application/mp4"],
["m4s", "video/iso.segment"],
["m4u", "application/vnd.mpegurl"],
["m4v", "video/x-m4v"],
["m13", "application/x-msmediaview"],
["m14", "application/x-msmediaview"],
["m21", "application/mp21"],
["ma", "application/mathematica"],
["mads", "application/mads+xml"],
["maei", "application/mmt-aei+xml"],
["mag", "application/vnd.ecowin.chart"],
["maker", "application/vnd.framemaker"],
["man", "text/troff"],
["manifest", "text/cache-manifest"],
["map", "application/json"],
["mar", "application/octet-stream"],
["markdown", "text/markdown"],
["mathml", "application/mathml+xml"],
["mb", "application/mathematica"],
["mbk", "application/vnd.mobius.mbk"],
["mbox", "application/mbox"],
["mc1", "application/vnd.medcalcdata"],
["mcd", "application/vnd.mcd"],
["mcurl", "text/vnd.curl.mcurl"],
["md", "text/markdown"],
["mdb", "application/x-msaccess"],
["mdi", "image/vnd.ms-modi"],
["mdx", "text/mdx"],
["me", "text/troff"],
["mesh", "model/mesh"],
["meta4", "application/metalink4+xml"],
["metalink", "application/metalink+xml"],
["mets", "application/mets+xml"],
["mfm", "application/vnd.mfmp"],
["mft", "application/rpki-manifest"],
["mgp", "application/vnd.osgeo.mapguide.package"],
["mgz", "application/vnd.proteus.magazine"],
["mid", "audio/midi"],
["midi", "audio/midi"],
["mie", "application/x-mie"],
["mif", "application/vnd.mif"],
["mime", "message/rfc822"],
["mj2", "video/mj2"],
["mjp2", "video/mj2"],
["mjs", "application/javascript"],
["mk3d", "video/x-matroska"],
["mka", "audio/x-matroska"],
["mkd", "text/x-markdown"],
["mks", "video/x-matroska"],
["mkv", "video/x-matroska"],
["mlp", "application/vnd.dolby.mlp"],
["mmd", "application/vnd.chipnuts.karaoke-mmd"],
["mmf", "application/vnd.smaf"],
["mml", "text/mathml"],
["mmr", "image/vnd.fujixerox.edmics-mmr"],
["mng", "video/x-mng"],
["mny", "application/x-msmoney"],
["mobi", "application/x-mobipocket-ebook"],
["mods", "application/mods+xml"],
["mov", "video/quicktime"],
["movie", "video/x-sgi-movie"],
["mp2", "audio/mpeg"],
["mp2a", "audio/mpeg"],
["mp3", "audio/mpeg"],
["mp4", "video/mp4"],
["mp4a", "audio/mp4"],
["mp4s", "application/mp4"],
["mp4v", "video/mp4"],
["mp21", "application/mp21"],
["mpc", "application/vnd.mophun.certificate"],
["mpd", "application/dash+xml"],
["mpe", "video/mpeg"],
["mpeg", "video/mpeg"],
["mpg", "video/mpeg"],
["mpg4", "video/mp4"],
["mpga", "audio/mpeg"],
["mpkg", "application/vnd.apple.installer+xml"],
["mpm", "application/vnd.blueice.multipass"],
["mpn", "application/vnd.mophun.application"],
["mpp", "application/vnd.ms-project"],
["mpt", "application/vnd.ms-project"],
["mpy", "application/vnd.ibm.minipay"],
["mqy", "application/vnd.mobius.mqy"],
["mrc", "application/marc"],
["mrcx", "application/marcxml+xml"],
["ms", "text/troff"],
["mscml", "application/mediaservercontrol+xml"],
["mseed", "application/vnd.fdsn.mseed"],
["mseq", "application/vnd.mseq"],
["msf", "application/vnd.epson.msf"],
["msg", "application/vnd.ms-outlook"],
["msh", "model/mesh"],
["msi", "application/x-msdownload"],
["msl", "application/vnd.mobius.msl"],
["msm", "application/octet-stream"],
["msp", "application/octet-stream"],
["msty", "application/vnd.muvee.style"],
["mtl", "model/mtl"],
["mts", "model/vnd.mts"],
["mus", "application/vnd.musician"],
["musd", "application/mmt-usd+xml"],
["musicxml", "application/vnd.recordare.musicxml+xml"],
["mvb", "application/x-msmediaview"],
["mvt", "application/vnd.mapbox-vector-tile"],
["mwf", "application/vnd.mfer"],
["mxf", "application/mxf"],
["mxl", "application/vnd.recordare.musicxml"],
["mxmf", "audio/mobile-xmf"],
["mxml", "application/xv+xml"],
["mxs", "application/vnd.triscape.mxs"],
["mxu", "video/vnd.mpegurl"],
["n-gage", "application/vnd.nokia.n-gage.symbian.install"],
["n3", "text/n3"],
["nb", "application/mathematica"],
["nbp", "application/vnd.wolfram.player"],
["nc", "application/x-netcdf"],
["ncx", "application/x-dtbncx+xml"],
["nfo", "text/x-nfo"],
["ngdat", "application/vnd.nokia.n-gage.data"],
["nitf", "application/vnd.nitf"],
["nlu", "application/vnd.neurolanguage.nlu"],
["nml", "application/vnd.enliven"],
["nnd", "application/vnd.noblenet-directory"],
["nns", "application/vnd.noblenet-sealer"],
["nnw", "application/vnd.noblenet-web"],
["npx", "image/vnd.net-fpx"],
["nq", "application/n-quads"],
["nsc", "application/x-conference"],
["nsf", "application/vnd.lotus-notes"],
["nt", "application/n-triples"],
["ntf", "application/vnd.nitf"],
["numbers", "application/x-iwork-numbers-sffnumbers"],
["nzb", "application/x-nzb"],
["oa2", "application/vnd.fujitsu.oasys2"],
["oa3", "application/vnd.fujitsu.oasys3"],
["oas", "application/vnd.fujitsu.oasys"],
["obd", "application/x-msbinder"],
["obgx", "application/vnd.openblox.game+xml"],
["obj", "model/obj"],
["oda", "application/oda"],
["odb", "application/vnd.oasis.opendocument.database"],
["odc", "application/vnd.oasis.opendocument.chart"],
["odf", "application/vnd.oasis.opendocument.formula"],
["odft", "application/vnd.oasis.opendocument.formula-template"],
["odg", "application/vnd.oasis.opendocument.graphics"],
["odi", "application/vnd.oasis.opendocument.image"],
["odm", "application/vnd.oasis.opendocument.text-master"],
["odp", "application/vnd.oasis.opendocument.presentation"],
["ods", "application/vnd.oasis.opendocument.spreadsheet"],
["odt", "application/vnd.oasis.opendocument.text"],
["oga", "audio/ogg"],
["ogex", "model/vnd.opengex"],
["ogg", "