{"version":3,"file":"index.mjs","sources":["../../node_modules/lucide-react/dist/esm/icons/rotate-cw.js","../../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js","../../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","../../node_modules/prop-types/node_modules/react-is/index.js","../../node_modules/object-assign/index.js","../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../node_modules/prop-types/lib/has.js","../../node_modules/prop-types/checkPropTypes.js","../../node_modules/prop-types/factoryWithTypeCheckers.js","../../node_modules/prop-types/factoryWithThrowingShims.js","../../node_modules/prop-types/index.js","../../node_modules/file-selector/dist/es2015/file.js","../../node_modules/file-selector/dist/es2015/file-selector.js","../../node_modules/attr-accept/dist/es/index.js","../../node_modules/react-dropzone/dist/es/utils/index.js","../../node_modules/react-dropzone/dist/es/index.js","../../src/examples/hooks/use-callback-ref.ts","../../src/hooks/use-controllable-state.ts","../../src/components/default/dropzone/FileUploader.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.479.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n  [\"path\", { d: \"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8\", key: \"1p45f6\" }],\n  [\"path\", { d: \"M21 3v5h-5\", key: \"1q7to0\" }]\n];\nconst RotateCw = createLucideIcon(\"RotateCw\", __iconNode);\n\nexport { __iconNode, RotateCw as default };\n//# sourceMappingURL=rotate-cw.js.map\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n  (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n  if (typeof object === 'object' && object !== null) {\n    var $$typeof = object.$$typeof;\n\n    switch ($$typeof) {\n      case REACT_ELEMENT_TYPE:\n        var type = object.type;\n\n        switch (type) {\n          case REACT_ASYNC_MODE_TYPE:\n          case REACT_CONCURRENT_MODE_TYPE:\n          case REACT_FRAGMENT_TYPE:\n          case REACT_PROFILER_TYPE:\n          case REACT_STRICT_MODE_TYPE:\n          case REACT_SUSPENSE_TYPE:\n            return type;\n\n          default:\n            var $$typeofType = type && type.$$typeof;\n\n            switch ($$typeofType) {\n              case REACT_CONTEXT_TYPE:\n              case REACT_FORWARD_REF_TYPE:\n              case REACT_LAZY_TYPE:\n              case REACT_MEMO_TYPE:\n              case REACT_PROVIDER_TYPE:\n                return $$typeofType;\n\n              default:\n                return $$typeof;\n            }\n\n        }\n\n      case REACT_PORTAL_TYPE:\n        return $$typeof;\n    }\n  }\n\n  return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n  {\n    if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n      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.');\n    }\n  }\n\n  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n  return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n  return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n  return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n  return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n  return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n  return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n  return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n  return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n  return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n  return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n  })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n  module.exports = require('./cjs/react-is.production.min.js');\n} else {\n  module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc');  // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n  var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n  var loggedTypeFailures = {};\n  var has = require('./lib/has');\n\n  printWarning = function(text) {\n    var message = 'Warning: ' + text;\n    if (typeof console !== 'undefined') {\n      console.error(message);\n    }\n    try {\n      // --- Welcome to debugging React ---\n      // This error was thrown as a convenience so that you can use this stack\n      // to find the callsite that caused this warning to fire.\n      throw new Error(message);\n    } catch (x) { /**/ }\n  };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n  if (process.env.NODE_ENV !== 'production') {\n    for (var typeSpecName in typeSpecs) {\n      if (has(typeSpecs, typeSpecName)) {\n        var error;\n        // Prop type validation may throw. In case they do, we don't want to\n        // fail the render phase where it didn't fail before. So we log it.\n        // After these have been cleaned up, we'll let them throw.\n        try {\n          // This is intentionally an invariant that gets caught. It's the same\n          // behavior as without this statement except with a better message.\n          if (typeof typeSpecs[typeSpecName] !== 'function') {\n            var err = Error(\n              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n              'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n            );\n            err.name = 'Invariant Violation';\n            throw err;\n          }\n          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n        } catch (ex) {\n          error = ex;\n        }\n        if (error && !(error instanceof Error)) {\n          printWarning(\n            (componentName || 'React class') + ': type specification of ' +\n            location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n            'You may have forgotten to pass an argument to the type checker ' +\n            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n            'shape all require an argument).'\n          );\n        }\n        if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n          // Only monitor this failure once because there tends to be a lot of the\n          // same error.\n          loggedTypeFailures[error.message] = true;\n\n          var stack = getStack ? getStack() : '';\n\n          printWarning(\n            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n          );\n        }\n      }\n    }\n  }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n  if (process.env.NODE_ENV !== 'production') {\n    loggedTypeFailures = {};\n  }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n  printWarning = function(text) {\n    var message = 'Warning: ' + text;\n    if (typeof console !== 'undefined') {\n      console.error(message);\n    }\n    try {\n      // --- Welcome to debugging React ---\n      // This error was thrown as a convenience so that you can use this stack\n      // to find the callsite that caused this warning to fire.\n      throw new Error(message);\n    } catch (x) {}\n  };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n  return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n  /* global Symbol */\n  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n  /**\n   * Returns the iterator method function contained on the iterable object.\n   *\n   * Be sure to invoke the function with the iterable as context:\n   *\n   *     var iteratorFn = getIteratorFn(myIterable);\n   *     if (iteratorFn) {\n   *       var iterator = iteratorFn.call(myIterable);\n   *       ...\n   *     }\n   *\n   * @param {?object} maybeIterable\n   * @return {?function}\n   */\n  function getIteratorFn(maybeIterable) {\n    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n    if (typeof iteratorFn === 'function') {\n      return iteratorFn;\n    }\n  }\n\n  /**\n   * Collection of methods that allow declaration and validation of props that are\n   * supplied to React components. Example usage:\n   *\n   *   var Props = require('ReactPropTypes');\n   *   var MyArticle = React.createClass({\n   *     propTypes: {\n   *       // An optional string prop named \"description\".\n   *       description: Props.string,\n   *\n   *       // A required enum prop named \"category\".\n   *       category: Props.oneOf(['News','Photos']).isRequired,\n   *\n   *       // A prop named \"dialog\" that requires an instance of Dialog.\n   *       dialog: Props.instanceOf(Dialog).isRequired\n   *     },\n   *     render: function() { ... }\n   *   });\n   *\n   * A more formal specification of how these methods are used:\n   *\n   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n   *   decl := ReactPropTypes.{type}(.isRequired)?\n   *\n   * Each and every declaration produces a function with the same signature. This\n   * allows the creation of custom validation functions. For example:\n   *\n   *  var MyLink = React.createClass({\n   *    propTypes: {\n   *      // An optional string or URI prop named \"href\".\n   *      href: function(props, propName, componentName) {\n   *        var propValue = props[propName];\n   *        if (propValue != null && typeof propValue !== 'string' &&\n   *            !(propValue instanceof URI)) {\n   *          return new Error(\n   *            'Expected a string or an URI for ' + propName + ' in ' +\n   *            componentName\n   *          );\n   *        }\n   *      }\n   *    },\n   *    render: function() {...}\n   *  });\n   *\n   * @internal\n   */\n\n  var ANONYMOUS = '<<anonymous>>';\n\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n  var ReactPropTypes = {\n    array: createPrimitiveTypeChecker('array'),\n    bigint: createPrimitiveTypeChecker('bigint'),\n    bool: createPrimitiveTypeChecker('boolean'),\n    func: createPrimitiveTypeChecker('function'),\n    number: createPrimitiveTypeChecker('number'),\n    object: createPrimitiveTypeChecker('object'),\n    string: createPrimitiveTypeChecker('string'),\n    symbol: createPrimitiveTypeChecker('symbol'),\n\n    any: createAnyTypeChecker(),\n    arrayOf: createArrayOfTypeChecker,\n    element: createElementTypeChecker(),\n    elementType: createElementTypeTypeChecker(),\n    instanceOf: createInstanceTypeChecker,\n    node: createNodeChecker(),\n    objectOf: createObjectOfTypeChecker,\n    oneOf: createEnumTypeChecker,\n    oneOfType: createUnionTypeChecker,\n    shape: createShapeTypeChecker,\n    exact: createStrictShapeTypeChecker,\n  };\n\n  /**\n   * inlined Object.is polyfill to avoid requiring consumers ship their own\n   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n   */\n  /*eslint-disable no-self-compare*/\n  function is(x, y) {\n    // SameValue algorithm\n    if (x === y) {\n      // Steps 1-5, 7-10\n      // Steps 6.b-6.e: +0 != -0\n      return x !== 0 || 1 / x === 1 / y;\n    } else {\n      // Step 6.a: NaN == NaN\n      return x !== x && y !== y;\n    }\n  }\n  /*eslint-enable no-self-compare*/\n\n  /**\n   * We use an Error-like object for backward compatibility as people may call\n   * PropTypes directly and inspect their output. However, we don't use real\n   * Errors anymore. We don't inspect their stack anyway, and creating them\n   * is prohibitively expensive if they are created too often, such as what\n   * happens in oneOfType() for any type before the one that matched.\n   */\n  function PropTypeError(message, data) {\n    this.message = message;\n    this.data = data && typeof data === 'object' ? data: {};\n    this.stack = '';\n  }\n  // Make `instanceof Error` still work for returned errors.\n  PropTypeError.prototype = Error.prototype;\n\n  function createChainableTypeChecker(validate) {\n    if (process.env.NODE_ENV !== 'production') {\n      var manualPropTypeCallCache = {};\n      var manualPropTypeWarningCount = 0;\n    }\n    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n      componentName = componentName || ANONYMOUS;\n      propFullName = propFullName || propName;\n\n      if (secret !== ReactPropTypesSecret) {\n        if (throwOnDirectAccess) {\n          // New behavior only for users of `prop-types` package\n          var err = new Error(\n            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n            'Use `PropTypes.checkPropTypes()` to call them. ' +\n            'Read more at http://fb.me/use-check-prop-types'\n          );\n          err.name = 'Invariant Violation';\n          throw err;\n        } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n          // Old behavior for people using React.PropTypes\n          var cacheKey = componentName + ':' + propName;\n          if (\n            !manualPropTypeCallCache[cacheKey] &&\n            // Avoid spamming the console because they are often not actionable except for lib authors\n            manualPropTypeWarningCount < 3\n          ) {\n            printWarning(\n              'You are manually calling a React.PropTypes validation ' +\n              'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n              'and will throw in the standalone `prop-types` package. ' +\n              'You may be seeing this warning due to a third-party PropTypes ' +\n              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n            );\n            manualPropTypeCallCache[cacheKey] = true;\n            manualPropTypeWarningCount++;\n          }\n        }\n      }\n      if (props[propName] == null) {\n        if (isRequired) {\n          if (props[propName] === null) {\n            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n          }\n          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n        }\n        return null;\n      } else {\n        return validate(props, propName, componentName, location, propFullName);\n      }\n    }\n\n    var chainedCheckType = checkType.bind(null, false);\n    chainedCheckType.isRequired = checkType.bind(null, true);\n\n    return chainedCheckType;\n  }\n\n  function createPrimitiveTypeChecker(expectedType) {\n    function validate(props, propName, componentName, location, propFullName, secret) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== expectedType) {\n        // `propValue` being instance of, say, date/regexp, pass the 'object'\n        // check, but we can offer a more precise error message here rather than\n        // 'of type `object`'.\n        var preciseType = getPreciseType(propValue);\n\n        return new PropTypeError(\n          'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n          {expectedType: expectedType}\n        );\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createAnyTypeChecker() {\n    return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n  }\n\n  function createArrayOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n      }\n      var propValue = props[propName];\n      if (!Array.isArray(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n      }\n      for (var i = 0; i < propValue.length; i++) {\n        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n        if (error instanceof Error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createElementTypeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      if (!isValidElement(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createElementTypeTypeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      if (!ReactIs.isValidElementType(propValue)) {\n        var propType = getPropType(propValue);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createInstanceTypeChecker(expectedClass) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!(props[propName] instanceof expectedClass)) {\n        var expectedClassName = expectedClass.name || ANONYMOUS;\n        var actualClassName = getClassName(props[propName]);\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createEnumTypeChecker(expectedValues) {\n    if (!Array.isArray(expectedValues)) {\n      if (process.env.NODE_ENV !== 'production') {\n        if (arguments.length > 1) {\n          printWarning(\n            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n          );\n        } else {\n          printWarning('Invalid argument supplied to oneOf, expected an array.');\n        }\n      }\n      return emptyFunctionThatReturnsNull;\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      for (var i = 0; i < expectedValues.length; i++) {\n        if (is(propValue, expectedValues[i])) {\n          return null;\n        }\n      }\n\n      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n        var type = getPreciseType(value);\n        if (type === 'symbol') {\n          return String(value);\n        }\n        return value;\n      });\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createObjectOfTypeChecker(typeChecker) {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (typeof typeChecker !== 'function') {\n        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n      }\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n      }\n      for (var key in propValue) {\n        if (has(propValue, key)) {\n          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n          if (error instanceof Error) {\n            return error;\n          }\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createUnionTypeChecker(arrayOfTypeCheckers) {\n    if (!Array.isArray(arrayOfTypeCheckers)) {\n      process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n      return emptyFunctionThatReturnsNull;\n    }\n\n    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n      var checker = arrayOfTypeCheckers[i];\n      if (typeof checker !== 'function') {\n        printWarning(\n          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n        );\n        return emptyFunctionThatReturnsNull;\n      }\n    }\n\n    function validate(props, propName, componentName, location, propFullName) {\n      var expectedTypes = [];\n      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n        var checker = arrayOfTypeCheckers[i];\n        var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n        if (checkerResult == null) {\n          return null;\n        }\n        if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n          expectedTypes.push(checkerResult.data.expectedType);\n        }\n      }\n      var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createNodeChecker() {\n    function validate(props, propName, componentName, location, propFullName) {\n      if (!isNode(props[propName])) {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function invalidValidatorError(componentName, location, propFullName, key, type) {\n    return new PropTypeError(\n      (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n      'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n    );\n  }\n\n  function createShapeTypeChecker(shapeTypes) {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n      }\n      for (var key in shapeTypes) {\n        var checker = shapeTypes[key];\n        if (typeof checker !== 'function') {\n          return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n        }\n        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n        if (error) {\n          return error;\n        }\n      }\n      return null;\n    }\n    return createChainableTypeChecker(validate);\n  }\n\n  function createStrictShapeTypeChecker(shapeTypes) {\n    function validate(props, propName, componentName, location, propFullName) {\n      var propValue = props[propName];\n      var propType = getPropType(propValue);\n      if (propType !== 'object') {\n        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n      }\n      // We need to check all keys in case some are required but missing from props.\n      var allKeys = assign({}, props[propName], shapeTypes);\n      for (var key in allKeys) {\n        var checker = shapeTypes[key];\n        if (has(shapeTypes, key) && typeof checker !== 'function') {\n          return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n        }\n        if (!checker) {\n          return new PropTypeError(\n            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n            '\\nBad object: ' + JSON.stringify(props[propName], null, '  ') +\n            '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, '  ')\n          );\n        }\n        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n        if (error) {\n          return error;\n        }\n      }\n      return null;\n    }\n\n    return createChainableTypeChecker(validate);\n  }\n\n  function isNode(propValue) {\n    switch (typeof propValue) {\n      case 'number':\n      case 'string':\n      case 'undefined':\n        return true;\n      case 'boolean':\n        return !propValue;\n      case 'object':\n        if (Array.isArray(propValue)) {\n          return propValue.every(isNode);\n        }\n        if (propValue === null || isValidElement(propValue)) {\n          return true;\n        }\n\n        var iteratorFn = getIteratorFn(propValue);\n        if (iteratorFn) {\n          var iterator = iteratorFn.call(propValue);\n          var step;\n          if (iteratorFn !== propValue.entries) {\n            while (!(step = iterator.next()).done) {\n              if (!isNode(step.value)) {\n                return false;\n              }\n            }\n          } else {\n            // Iterator will provide entry [k,v] tuples rather than values.\n            while (!(step = iterator.next()).done) {\n              var entry = step.value;\n              if (entry) {\n                if (!isNode(entry[1])) {\n                  return false;\n                }\n              }\n            }\n          }\n        } else {\n          return false;\n        }\n\n        return true;\n      default:\n        return false;\n    }\n  }\n\n  function isSymbol(propType, propValue) {\n    // Native Symbol.\n    if (propType === 'symbol') {\n      return true;\n    }\n\n    // falsy value can't be a Symbol\n    if (!propValue) {\n      return false;\n    }\n\n    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n    if (propValue['@@toStringTag'] === 'Symbol') {\n      return true;\n    }\n\n    // Fallback for non-spec compliant Symbols which are polyfilled.\n    if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n      return true;\n    }\n\n    return false;\n  }\n\n  // Equivalent of `typeof` but with special handling for array and regexp.\n  function getPropType(propValue) {\n    var propType = typeof propValue;\n    if (Array.isArray(propValue)) {\n      return 'array';\n    }\n    if (propValue instanceof RegExp) {\n      // Old webkits (at least until Android 4.0) return 'function' rather than\n      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n      // passes PropTypes.object.\n      return 'object';\n    }\n    if (isSymbol(propType, propValue)) {\n      return 'symbol';\n    }\n    return propType;\n  }\n\n  // This handles more types than `getPropType`. Only used for error messages.\n  // See `createPrimitiveTypeChecker`.\n  function getPreciseType(propValue) {\n    if (typeof propValue === 'undefined' || propValue === null) {\n      return '' + propValue;\n    }\n    var propType = getPropType(propValue);\n    if (propType === 'object') {\n      if (propValue instanceof Date) {\n        return 'date';\n      } else if (propValue instanceof RegExp) {\n        return 'regexp';\n      }\n    }\n    return propType;\n  }\n\n  // Returns a string that is postfixed to a warning about an invalid type.\n  // For example, \"undefined\" or \"of type array\"\n  function getPostfixForTypeWarning(value) {\n    var type = getPreciseType(value);\n    switch (type) {\n      case 'array':\n      case 'object':\n        return 'an ' + type;\n      case 'boolean':\n      case 'date':\n      case 'regexp':\n        return 'a ' + type;\n      default:\n        return type;\n    }\n  }\n\n  // Returns class name of the object, if any.\n  function getClassName(propValue) {\n    if (!propValue.constructor || !propValue.constructor.name) {\n      return ANONYMOUS;\n    }\n    return propValue.constructor.name;\n  }\n\n  ReactPropTypes.checkPropTypes = checkPropTypes;\n  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n  function shim(props, propName, componentName, location, propFullName, secret) {\n    if (secret === ReactPropTypesSecret) {\n      // It is still safe when called from React.\n      return;\n    }\n    var err = new Error(\n      'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n      'Use PropTypes.checkPropTypes() to call them. ' +\n      'Read more at http://fb.me/use-check-prop-types'\n    );\n    err.name = 'Invariant Violation';\n    throw err;\n  };\n  shim.isRequired = shim;\n  function getShim() {\n    return shim;\n  };\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n  var ReactPropTypes = {\n    array: shim,\n    bigint: shim,\n    bool: shim,\n    func: shim,\n    number: shim,\n    object: shim,\n    string: shim,\n    symbol: shim,\n\n    any: shim,\n    arrayOf: getShim,\n    element: shim,\n    elementType: shim,\n    instanceOf: getShim,\n    node: shim,\n    objectOf: getShim,\n    oneOf: getShim,\n    oneOfType: getShim,\n    shape: getShim,\n    exact: getShim,\n\n    checkPropTypes: emptyFunctionWithReset,\n    resetWarningCache: emptyFunction\n  };\n\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n  var ReactIs = require('react-is');\n\n  // By explicitly using `prop-types` you are opting into new development behavior.\n  // http://fb.me/prop-types-in-prod\n  var throwOnDirectAccess = true;\n  module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n  // By explicitly using `prop-types` you are opting into new production behavior.\n  // http://fb.me/prop-types-in-prod\n  module.exports = require('./factoryWithThrowingShims')();\n}\n","export const COMMON_MIME_TYPES = new Map([\n    // https://github.com/guzzle/psr7/blob/2d9260799e713f1c475d3c5fdc3d6561ff7441b2/src/MimeType.php\n    ['1km', 'application/vnd.1000minds.decision-model+xml'],\n    ['3dml', 'text/vnd.in3d.3dml'],\n    ['3ds', 'image/x-3ds'],\n    ['3g2', 'video/3gpp2'],\n    ['3gp', 'video/3gp'],\n    ['3gpp', 'video/3gpp'],\n    ['3mf', 'model/3mf'],\n    ['7z', 'application/x-7z-compressed'],\n    ['7zip', 'application/x-7z-compressed'],\n    ['123', 'application/vnd.lotus-1-2-3'],\n    ['aab', 'application/x-authorware-bin'],\n    ['aac', 'audio/x-acc'],\n    ['aam', 'application/x-authorware-map'],\n    ['aas', 'application/x-authorware-seg'],\n    ['abw', 'application/x-abiword'],\n    ['ac', 'application/vnd.nokia.n-gage.ac+xml'],\n    ['ac3', 'audio/ac3'],\n    ['acc', 'application/vnd.americandynamics.acc'],\n    ['ace', 'application/x-ace-compressed'],\n    ['acu', 'application/vnd.acucobol'],\n    ['acutc', 'application/vnd.acucorp'],\n    ['adp', 'audio/adpcm'],\n    ['aep', 'application/vnd.audiograph'],\n    ['afm', 'application/x-font-type1'],\n    ['afp', 'application/vnd.ibm.modcap'],\n    ['ahead', 'application/vnd.ahead.space'],\n    ['ai', 'application/pdf'],\n    ['aif', 'audio/x-aiff'],\n    ['aifc', 'audio/x-aiff'],\n    ['aiff', 'audio/x-aiff'],\n    ['air', 'application/vnd.adobe.air-application-installer-package+zip'],\n    ['ait', 'application/vnd.dvb.ait'],\n    ['ami', 'application/vnd.amiga.ami'],\n    ['amr', 'audio/amr'],\n    ['apk', 'application/vnd.android.package-archive'],\n    ['apng', 'image/apng'],\n    ['appcache', 'text/cache-manifest'],\n    ['application', 'application/x-ms-application'],\n    ['apr', 'application/vnd.lotus-approach'],\n    ['arc', 'application/x-freearc'],\n    ['arj', 'application/x-arj'],\n    ['asc', 'application/pgp-signature'],\n    ['asf', 'video/x-ms-asf'],\n    ['asm', 'text/x-asm'],\n    ['aso', 'application/vnd.accpac.simply.aso'],\n    ['asx', 'video/x-ms-asf'],\n    ['atc', 'application/vnd.acucorp'],\n    ['atom', 'application/atom+xml'],\n    ['atomcat', 'application/atomcat+xml'],\n    ['atomdeleted', 'application/atomdeleted+xml'],\n    ['atomsvc', 'application/atomsvc+xml'],\n    ['atx', 'application/vnd.antix.game-component'],\n    ['au', 'audio/x-au'],\n    ['avi', 'video/x-msvideo'],\n    ['avif', 'image/avif'],\n    ['aw', 'application/applixware'],\n    ['azf', 'application/vnd.airzip.filesecure.azf'],\n    ['azs', 'application/vnd.airzip.filesecure.azs'],\n    ['azv', 'image/vnd.airzip.accelerator.azv'],\n    ['azw', 'application/vnd.amazon.ebook'],\n    ['b16', 'image/vnd.pco.b16'],\n    ['bat', 'application/x-msdownload'],\n    ['bcpio', 'application/x-bcpio'],\n    ['bdf', 'application/x-font-bdf'],\n    ['bdm', 'application/vnd.syncml.dm+wbxml'],\n    ['bdoc', 'application/x-bdoc'],\n    ['bed', 'application/vnd.realvnc.bed'],\n    ['bh2', 'application/vnd.fujitsu.oasysprs'],\n    ['bin', 'application/octet-stream'],\n    ['blb', 'application/x-blorb'],\n    ['blorb', 'application/x-blorb'],\n    ['bmi', 'application/vnd.bmi'],\n    ['bmml', 'application/vnd.balsamiq.bmml+xml'],\n    ['bmp', 'image/bmp'],\n    ['book', 'application/vnd.framemaker'],\n    ['box', 'application/vnd.previewsystems.box'],\n    ['boz', 'application/x-bzip2'],\n    ['bpk', 'application/octet-stream'],\n    ['bpmn', 'application/octet-stream'],\n    ['bsp', 'model/vnd.valve.source.compiled-map'],\n    ['btif', 'image/prs.btif'],\n    ['buffer', 'application/octet-stream'],\n    ['bz', 'application/x-bzip'],\n    ['bz2', 'application/x-bzip2'],\n    ['c', 'text/x-c'],\n    ['c4d', 'application/vnd.clonk.c4group'],\n    ['c4f', 'application/vnd.clonk.c4group'],\n    ['c4g', 'application/vnd.clonk.c4group'],\n    ['c4p', 'application/vnd.clonk.c4group'],\n    ['c4u', 'application/vnd.clonk.c4group'],\n    ['c11amc', 'application/vnd.cluetrust.cartomobile-config'],\n    ['c11amz', 'application/vnd.cluetrust.cartomobile-config-pkg'],\n    ['cab', 'application/vnd.ms-cab-compressed'],\n    ['caf', 'audio/x-caf'],\n    ['cap', 'application/vnd.tcpdump.pcap'],\n    ['car', 'application/vnd.curl.car'],\n    ['cat', 'application/vnd.ms-pki.seccat'],\n    ['cb7', 'application/x-cbr'],\n    ['cba', 'application/x-cbr'],\n    ['cbr', 'application/x-cbr'],\n    ['cbt', 'application/x-cbr'],\n    ['cbz', 'application/x-cbr'],\n    ['cc', 'text/x-c'],\n    ['cco', 'application/x-cocoa'],\n    ['cct', 'application/x-director'],\n    ['ccxml', 'application/ccxml+xml'],\n    ['cdbcmsg', 'application/vnd.contact.cmsg'],\n    ['cda', 'application/x-cdf'],\n    ['cdf', 'application/x-netcdf'],\n    ['cdfx', 'application/cdfx+xml'],\n    ['cdkey', 'application/vnd.mediastation.cdkey'],\n    ['cdmia', 'application/cdmi-capability'],\n    ['cdmic', 'application/cdmi-container'],\n    ['cdmid', 'application/cdmi-domain'],\n    ['cdmio', 'application/cdmi-object'],\n    ['cdmiq', 'application/cdmi-queue'],\n    ['cdr', 'application/cdr'],\n    ['cdx', 'chemical/x-cdx'],\n    ['cdxml', 'application/vnd.chemdraw+xml'],\n    ['cdy', 'application/vnd.cinderella'],\n    ['cer', 'application/pkix-cert'],\n    ['cfs', 'application/x-cfs-compressed'],\n    ['cgm', 'image/cgm'],\n    ['chat', 'application/x-chat'],\n    ['chm', 'application/vnd.ms-htmlhelp'],\n    ['chrt', 'application/vnd.kde.kchart'],\n    ['cif', 'chemical/x-cif'],\n    ['cii', 'application/vnd.anser-web-certificate-issue-initiation'],\n    ['cil', 'application/vnd.ms-artgalry'],\n    ['cjs', 'application/node'],\n    ['cla', 'application/vnd.claymore'],\n    ['class', 'application/octet-stream'],\n    ['clkk', 'application/vnd.crick.clicker.keyboard'],\n    ['clkp', 'application/vnd.crick.clicker.palette'],\n    ['clkt', 'application/vnd.crick.clicker.template'],\n    ['clkw', 'application/vnd.crick.clicker.wordbank'],\n    ['clkx', 'application/vnd.crick.clicker'],\n    ['clp', 'application/x-msclip'],\n    ['cmc', 'application/vnd.cosmocaller'],\n    ['cmdf', 'chemical/x-cmdf'],\n    ['cml', 'chemical/x-cml'],\n    ['cmp', 'application/vnd.yellowriver-custom-menu'],\n    ['cmx', 'image/x-cmx'],\n    ['cod', 'application/vnd.rim.cod'],\n    ['coffee', 'text/coffeescript'],\n    ['com', 'application/x-msdownload'],\n    ['conf', 'text/plain'],\n    ['cpio', 'application/x-cpio'],\n    ['cpp', 'text/x-c'],\n    ['cpt', 'application/mac-compactpro'],\n    ['crd', 'application/x-mscardfile'],\n    ['crl', 'application/pkix-crl'],\n    ['crt', 'application/x-x509-ca-cert'],\n    ['crx', 'application/x-chrome-extension'],\n    ['cryptonote', 'application/vnd.rig.cryptonote'],\n    ['csh', 'application/x-csh'],\n    ['csl', 'application/vnd.citationstyles.style+xml'],\n    ['csml', 'chemical/x-csml'],\n    ['csp', 'application/vnd.commonspace'],\n    ['csr', 'application/octet-stream'],\n    ['css', 'text/css'],\n    ['cst', 'application/x-director'],\n    ['csv', 'text/csv'],\n    ['cu', 'application/cu-seeme'],\n    ['curl', 'text/vnd.curl'],\n    ['cww', 'application/prs.cww'],\n    ['cxt', 'application/x-director'],\n    ['cxx', 'text/x-c'],\n    ['dae', 'model/vnd.collada+xml'],\n    ['daf', 'application/vnd.mobius.daf'],\n    ['dart', 'application/vnd.dart'],\n    ['dataless', 'application/vnd.fdsn.seed'],\n    ['davmount', 'application/davmount+xml'],\n    ['dbf', 'application/vnd.dbf'],\n    ['dbk', 'application/docbook+xml'],\n    ['dcr', 'application/x-director'],\n    ['dcurl', 'text/vnd.curl.dcurl'],\n    ['dd2', 'application/vnd.oma.dd2+xml'],\n    ['ddd', 'application/vnd.fujixerox.ddd'],\n    ['ddf', 'application/vnd.syncml.dmddf+xml'],\n    ['dds', 'image/vnd.ms-dds'],\n    ['deb', 'application/x-debian-package'],\n    ['def', 'text/plain'],\n    ['deploy', 'application/octet-stream'],\n    ['der', 'application/x-x509-ca-cert'],\n    ['dfac', 'application/vnd.dreamfactory'],\n    ['dgc', 'application/x-dgc-compressed'],\n    ['dic', 'text/x-c'],\n    ['dir', 'application/x-director'],\n    ['dis', 'application/vnd.mobius.dis'],\n    ['disposition-notification', 'message/disposition-notification'],\n    ['dist', 'application/octet-stream'],\n    ['distz', 'application/octet-stream'],\n    ['djv', 'image/vnd.djvu'],\n    ['djvu', 'image/vnd.djvu'],\n    ['dll', 'application/octet-stream'],\n    ['dmg', 'application/x-apple-diskimage'],\n    ['dmn', 'application/octet-stream'],\n    ['dmp', 'application/vnd.tcpdump.pcap'],\n    ['dms', 'application/octet-stream'],\n    ['dna', 'application/vnd.dna'],\n    ['doc', 'application/msword'],\n    ['docm', 'application/vnd.ms-word.template.macroEnabled.12'],\n    ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],\n    ['dot', 'application/msword'],\n    ['dotm', 'application/vnd.ms-word.template.macroEnabled.12'],\n    ['dotx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.template'],\n    ['dp', 'application/vnd.osgi.dp'],\n    ['dpg', 'application/vnd.dpgraph'],\n    ['dra', 'audio/vnd.dra'],\n    ['drle', 'image/dicom-rle'],\n    ['dsc', 'text/prs.lines.tag'],\n    ['dssc', 'application/dssc+der'],\n    ['dtb', 'application/x-dtbook+xml'],\n    ['dtd', 'application/xml-dtd'],\n    ['dts', 'audio/vnd.dts'],\n    ['dtshd', 'audio/vnd.dts.hd'],\n    ['dump', 'application/octet-stream'],\n    ['dvb', 'video/vnd.dvb.file'],\n    ['dvi', 'application/x-dvi'],\n    ['dwd', 'application/atsc-dwd+xml'],\n    ['dwf', 'model/vnd.dwf'],\n    ['dwg', 'image/vnd.dwg'],\n    ['dxf', 'image/vnd.dxf'],\n    ['dxp', 'application/vnd.spotfire.dxp'],\n    ['dxr', 'application/x-director'],\n    ['ear', 'application/java-archive'],\n    ['ecelp4800', 'audio/vnd.nuera.ecelp4800'],\n    ['ecelp7470', 'audio/vnd.nuera.ecelp7470'],\n    ['ecelp9600', 'audio/vnd.nuera.ecelp9600'],\n    ['ecma', 'application/ecmascript'],\n    ['edm', 'application/vnd.novadigm.edm'],\n    ['edx', 'application/vnd.novadigm.edx'],\n    ['efif', 'application/vnd.picsel'],\n    ['ei6', 'application/vnd.pg.osasli'],\n    ['elc', 'application/octet-stream'],\n    ['emf', 'image/emf'],\n    ['eml', 'message/rfc822'],\n    ['emma', 'application/emma+xml'],\n    ['emotionml', 'application/emotionml+xml'],\n    ['emz', 'application/x-msmetafile'],\n    ['eol', 'audio/vnd.digital-winds'],\n    ['eot', 'application/vnd.ms-fontobject'],\n    ['eps', 'application/postscript'],\n    ['epub', 'application/epub+zip'],\n    ['es', 'application/ecmascript'],\n    ['es3', 'application/vnd.eszigno3+xml'],\n    ['esa', 'application/vnd.osgi.subsystem'],\n    ['esf', 'application/vnd.epson.esf'],\n    ['et3', 'application/vnd.eszigno3+xml'],\n    ['etx', 'text/x-setext'],\n    ['eva', 'application/x-eva'],\n    ['evy', 'application/x-envoy'],\n    ['exe', 'application/octet-stream'],\n    ['exi', 'application/exi'],\n    ['exp', 'application/express'],\n    ['exr', 'image/aces'],\n    ['ext', 'application/vnd.novadigm.ext'],\n    ['ez', 'application/andrew-inset'],\n    ['ez2', 'application/vnd.ezpix-album'],\n    ['ez3', 'application/vnd.ezpix-package'],\n    ['f', 'text/x-fortran'],\n    ['f4v', 'video/mp4'],\n    ['f77', 'text/x-fortran'],\n    ['f90', 'text/x-fortran'],\n    ['fbs', 'image/vnd.fastbidsheet'],\n    ['fcdt', 'application/vnd.adobe.formscentral.fcdt'],\n    ['fcs', 'application/vnd.isac.fcs'],\n    ['fdf', 'application/vnd.fdf'],\n    ['fdt', 'application/fdt+xml'],\n    ['fe_launch', 'application/vnd.denovo.fcselayout-link'],\n    ['fg5', 'application/vnd.fujitsu.oasysgp'],\n    ['fgd', 'application/x-director'],\n    ['fh', 'image/x-freehand'],\n    ['fh4', 'image/x-freehand'],\n    ['fh5', 'image/x-freehand'],\n    ['fh7', 'image/x-freehand'],\n    ['fhc', 'image/x-freehand'],\n    ['fig', 'application/x-xfig'],\n    ['fits', 'image/fits'],\n    ['flac', 'audio/x-flac'],\n    ['fli', 'video/x-fli'],\n    ['flo', 'application/vnd.micrografx.flo'],\n    ['flv', 'video/x-flv'],\n    ['flw', 'application/vnd.kde.kivio'],\n    ['flx', 'text/vnd.fmi.flexstor'],\n    ['fly', 'text/vnd.fly'],\n    ['fm', 'application/vnd.framemaker'],\n    ['fnc', 'application/vnd.frogans.fnc'],\n    ['fo', 'application/vnd.software602.filler.form+xml'],\n    ['for', 'text/x-fortran'],\n    ['fpx', 'image/vnd.fpx'],\n    ['frame', 'application/vnd.framemaker'],\n    ['fsc', 'application/vnd.fsc.weblaunch'],\n    ['fst', 'image/vnd.fst'],\n    ['ftc', 'application/vnd.fluxtime.clip'],\n    ['fti', 'application/vnd.anser-web-funds-transfer-initiation'],\n    ['fvt', 'video/vnd.fvt'],\n    ['fxp', 'application/vnd.adobe.fxp'],\n    ['fxpl', 'application/vnd.adobe.fxp'],\n    ['fzs', 'application/vnd.fuzzysheet'],\n    ['g2w', 'application/vnd.geoplan'],\n    ['g3', 'image/g3fax'],\n    ['g3w', 'application/vnd.geospace'],\n    ['gac', 'application/vnd.groove-account'],\n    ['gam', 'application/x-tads'],\n    ['gbr', 'application/rpki-ghostbusters'],\n    ['gca', 'application/x-gca-compressed'],\n    ['gdl', 'model/vnd.gdl'],\n    ['gdoc', 'application/vnd.google-apps.document'],\n    ['geo', 'application/vnd.dynageo'],\n    ['geojson', 'application/geo+json'],\n    ['gex', 'application/vnd.geometry-explorer'],\n    ['ggb', 'application/vnd.geogebra.file'],\n    ['ggt', 'application/vnd.geogebra.tool'],\n    ['ghf', 'application/vnd.groove-help'],\n    ['gif', 'image/gif'],\n    ['gim', 'application/vnd.groove-identity-message'],\n    ['glb', 'model/gltf-binary'],\n    ['gltf', 'model/gltf+json'],\n    ['gml', 'application/gml+xml'],\n    ['gmx', 'application/vnd.gmx'],\n    ['gnumeric', 'application/x-gnumeric'],\n    ['gpg', 'application/gpg-keys'],\n    ['gph', 'application/vnd.flographit'],\n    ['gpx', 'application/gpx+xml'],\n    ['gqf', 'application/vnd.grafeq'],\n    ['gqs', 'application/vnd.grafeq'],\n    ['gram', 'application/srgs'],\n    ['gramps', 'application/x-gramps-xml'],\n    ['gre', 'application/vnd.geometry-explorer'],\n    ['grv', 'application/vnd.groove-injector'],\n    ['grxml', 'application/srgs+xml'],\n    ['gsf', 'application/x-font-ghostscript'],\n    ['gsheet', 'application/vnd.google-apps.spreadsheet'],\n    ['gslides', 'application/vnd.google-apps.presentation'],\n    ['gtar', 'application/x-gtar'],\n    ['gtm', 'application/vnd.groove-tool-message'],\n    ['gtw', 'model/vnd.gtw'],\n    ['gv', 'text/vnd.graphviz'],\n    ['gxf', 'application/gxf'],\n    ['gxt', 'application/vnd.geonext'],\n    ['gz', 'application/gzip'],\n    ['gzip', 'application/gzip'],\n    ['h', 'text/x-c'],\n    ['h261', 'video/h261'],\n    ['h263', 'video/h263'],\n    ['h264', 'video/h264'],\n    ['hal', 'application/vnd.hal+xml'],\n    ['hbci', 'application/vnd.hbci'],\n    ['hbs', 'text/x-handlebars-template'],\n    ['hdd', 'application/x-virtualbox-hdd'],\n    ['hdf', 'application/x-hdf'],\n    ['heic', 'image/heic'],\n    ['heics', 'image/heic-sequence'],\n    ['heif', 'image/heif'],\n    ['heifs', 'image/heif-sequence'],\n    ['hej2', 'image/hej2k'],\n    ['held', 'application/atsc-held+xml'],\n    ['hh', 'text/x-c'],\n    ['hjson', 'application/hjson'],\n    ['hlp', 'application/winhlp'],\n    ['hpgl', 'application/vnd.hp-hpgl'],\n    ['hpid', 'application/vnd.hp-hpid'],\n    ['hps', 'application/vnd.hp-hps'],\n    ['hqx', 'application/mac-binhex40'],\n    ['hsj2', 'image/hsj2'],\n    ['htc', 'text/x-component'],\n    ['htke', 'application/vnd.kenameaapp'],\n    ['htm', 'text/html'],\n    ['html', 'text/html'],\n    ['hvd', 'application/vnd.yamaha.hv-dic'],\n    ['hvp', 'application/vnd.yamaha.hv-voice'],\n    ['hvs', 'application/vnd.yamaha.hv-script'],\n    ['i2g', 'application/vnd.intergeo'],\n    ['icc', 'application/vnd.iccprofile'],\n    ['ice', 'x-conference/x-cooltalk'],\n    ['icm', 'application/vnd.iccprofile'],\n    ['ico', 'image/x-icon'],\n    ['ics', 'text/calendar'],\n    ['ief', 'image/ief'],\n    ['ifb', 'text/calendar'],\n    ['ifm', 'application/vnd.shana.informed.formdata'],\n    ['iges', 'model/iges'],\n    ['igl', 'application/vnd.igloader'],\n    ['igm', 'application/vnd.insors.igm'],\n    ['igs', 'model/iges'],\n    ['igx', 'application/vnd.micrografx.igx'],\n    ['iif', 'application/vnd.shana.informed.interchange'],\n    ['img', 'application/octet-stream'],\n    ['imp', 'application/vnd.accpac.simply.imp'],\n    ['ims', 'application/vnd.ms-ims'],\n    ['in', 'text/plain'],\n    ['ini', 'text/plain'],\n    ['ink', 'application/inkml+xml'],\n    ['inkml', 'application/inkml+xml'],\n    ['install', 'application/x-install-instructions'],\n    ['iota', 'application/vnd.astraea-software.iota'],\n    ['ipfix', 'application/ipfix'],\n    ['ipk', 'application/vnd.shana.informed.package'],\n    ['irm', 'application/vnd.ibm.rights-management'],\n    ['irp', 'application/vnd.irepository.package+xml'],\n    ['iso', 'application/x-iso9660-image'],\n    ['itp', 'application/vnd.shana.informed.formtemplate'],\n    ['its', 'application/its+xml'],\n    ['ivp', 'application/vnd.immervision-ivp'],\n    ['ivu', 'application/vnd.immervision-ivu'],\n    ['jad', 'text/vnd.sun.j2me.app-descriptor'],\n    ['jade', 'text/jade'],\n    ['jam', 'application/vnd.jam'],\n    ['jar', 'application/java-archive'],\n    ['jardiff', 'application/x-java-archive-diff'],\n    ['java', 'text/x-java-source'],\n    ['jhc', 'image/jphc'],\n    ['jisp', 'application/vnd.jisp'],\n    ['jls', 'image/jls'],\n    ['jlt', 'application/vnd.hp-jlyt'],\n    ['jng', 'image/x-jng'],\n    ['jnlp', 'application/x-java-jnlp-file'],\n    ['joda', 'application/vnd.joost.joda-archive'],\n    ['jp2', 'image/jp2'],\n    ['jpe', 'image/jpeg'],\n    ['jpeg', 'image/jpeg'],\n    ['jpf', 'image/jpx'],\n    ['jpg', 'image/jpeg'],\n    ['jpg2', 'image/jp2'],\n    ['jpgm', 'video/jpm'],\n    ['jpgv', 'video/jpeg'],\n    ['jph', 'image/jph'],\n    ['jpm', 'video/jpm'],\n    ['jpx', 'image/jpx'],\n    ['js', 'application/javascript'],\n    ['json', 'application/json'],\n    ['json5', 'application/json5'],\n    ['jsonld', 'application/ld+json'],\n    // https://jsonlines.org/\n    ['jsonl', 'application/jsonl'],\n    ['jsonml', 'application/jsonml+json'],\n    ['jsx', 'text/jsx'],\n    ['jxr', 'image/jxr'],\n    ['jxra', 'image/jxra'],\n    ['jxrs', 'image/jxrs'],\n    ['jxs', 'image/jxs'],\n    ['jxsc', 'image/jxsc'],\n    ['jxsi', 'image/jxsi'],\n    ['jxss', 'image/jxss'],\n    ['kar', 'audio/midi'],\n    ['karbon', 'application/vnd.kde.karbon'],\n    ['kdb', 'application/octet-stream'],\n    ['kdbx', 'application/x-keepass2'],\n    ['key', 'application/x-iwork-keynote-sffkey'],\n    ['kfo', 'application/vnd.kde.kformula'],\n    ['kia', 'application/vnd.kidspiration'],\n    ['kml', 'application/vnd.google-earth.kml+xml'],\n    ['kmz', 'application/vnd.google-earth.kmz'],\n    ['kne', 'application/vnd.kinar'],\n    ['knp', 'application/vnd.kinar'],\n    ['kon', 'application/vnd.kde.kontour'],\n    ['kpr', 'application/vnd.kde.kpresenter'],\n    ['kpt', 'application/vnd.kde.kpresenter'],\n    ['kpxx', 'application/vnd.ds-keypoint'],\n    ['ksp', 'application/vnd.kde.kspread'],\n    ['ktr', 'application/vnd.kahootz'],\n    ['ktx', 'image/ktx'],\n    ['ktx2', 'image/ktx2'],\n    ['ktz', 'application/vnd.kahootz'],\n    ['kwd', 'application/vnd.kde.kword'],\n    ['kwt', 'application/vnd.kde.kword'],\n    ['lasxml', 'application/vnd.las.las+xml'],\n    ['latex', 'application/x-latex'],\n    ['lbd', 'application/vnd.llamagraphics.life-balance.desktop'],\n    ['lbe', 'application/vnd.llamagraphics.life-balance.exchange+xml'],\n    ['les', 'application/vnd.hhe.lesson-player'],\n    ['less', 'text/less'],\n    ['lgr', 'application/lgr+xml'],\n    ['lha', 'application/octet-stream'],\n    ['link66', 'application/vnd.route66.link66+xml'],\n    ['list', 'text/plain'],\n    ['list3820', 'application/vnd.ibm.modcap'],\n    ['listafp', 'application/vnd.ibm.modcap'],\n    ['litcoffee', 'text/coffeescript'],\n    ['lnk', 'application/x-ms-shortcut'],\n    ['log', 'text/plain'],\n    ['lostxml', 'application/lost+xml'],\n    ['lrf', 'application/octet-stream'],\n    ['lrm', 'application/vnd.ms-lrm'],\n    ['ltf', 'application/vnd.frogans.ltf'],\n    ['lua', 'text/x-lua'],\n    ['luac', 'application/x-lua-bytecode'],\n    ['lvp', 'audio/vnd.lucent.voice'],\n    ['lwp', 'application/vnd.lotus-wordpro'],\n    ['lzh', 'application/octet-stream'],\n    ['m1v', 'video/mpeg'],\n    ['m2a', 'audio/mpeg'],\n    ['m2v', 'video/mpeg'],\n    ['m3a', 'audio/mpeg'],\n    ['m3u', 'text/plain'],\n    ['m3u8', 'application/vnd.apple.mpegurl'],\n    ['m4a', 'audio/x-m4a'],\n    ['m4p', 'application/mp4'],\n    ['m4s', 'video/iso.segment'],\n    ['m4u', 'application/vnd.mpegurl'],\n    ['m4v', 'video/x-m4v'],\n    ['m13', 'application/x-msmediaview'],\n    ['m14', 'application/x-msmediaview'],\n    ['m21', 'application/mp21'],\n    ['ma', 'application/mathematica'],\n    ['mads', 'application/mads+xml'],\n    ['maei', 'application/mmt-aei+xml'],\n    ['mag', 'application/vnd.ecowin.chart'],\n    ['maker', 'application/vnd.framemaker'],\n    ['man', 'text/troff'],\n    ['manifest', 'text/cache-manifest'],\n    ['map', 'application/json'],\n    ['mar', 'application/octet-stream'],\n    ['markdown', 'text/markdown'],\n    ['mathml', 'application/mathml+xml'],\n    ['mb', 'application/mathematica'],\n    ['mbk', 'application/vnd.mobius.mbk'],\n    ['mbox', 'application/mbox'],\n    ['mc1', 'application/vnd.medcalcdata'],\n    ['mcd', 'application/vnd.mcd'],\n    ['mcurl', 'text/vnd.curl.mcurl'],\n    ['md', 'text/markdown'],\n    ['mdb', 'application/x-msaccess'],\n    ['mdi', 'image/vnd.ms-modi'],\n    ['mdx', 'text/mdx'],\n    ['me', 'text/troff'],\n    ['mesh', 'model/mesh'],\n    ['meta4', 'application/metalink4+xml'],\n    ['metalink', 'application/metalink+xml'],\n    ['mets', 'application/mets+xml'],\n    ['mfm', 'application/vnd.mfmp'],\n    ['mft', 'application/rpki-manifest'],\n    ['mgp', 'application/vnd.osgeo.mapguide.package'],\n    ['mgz', 'application/vnd.proteus.magazine'],\n    ['mid', 'audio/midi'],\n    ['midi', 'audio/midi'],\n    ['mie', 'application/x-mie'],\n    ['mif', 'application/vnd.mif'],\n    ['mime', 'message/rfc822'],\n    ['mj2', 'video/mj2'],\n    ['mjp2', 'video/mj2'],\n    ['mjs', 'application/javascript'],\n    ['mk3d', 'video/x-matroska'],\n    ['mka', 'audio/x-matroska'],\n    ['mkd', 'text/x-markdown'],\n    ['mks', 'video/x-matroska'],\n    ['mkv', 'video/x-matroska'],\n    ['mlp', 'application/vnd.dolby.mlp'],\n    ['mmd', 'application/vnd.chipnuts.karaoke-mmd'],\n    ['mmf', 'application/vnd.smaf'],\n    ['mml', 'text/mathml'],\n    ['mmr', 'image/vnd.fujixerox.edmics-mmr'],\n    ['mng', 'video/x-mng'],\n    ['mny', 'application/x-msmoney'],\n    ['mobi', 'application/x-mobipocket-ebook'],\n    ['mods', 'application/mods+xml'],\n    ['mov', 'video/quicktime'],\n    ['movie', 'video/x-sgi-movie'],\n    ['mp2', 'audio/mpeg'],\n    ['mp2a', 'audio/mpeg'],\n    ['mp3', 'audio/mpeg'],\n    ['mp4', 'video/mp4'],\n    ['mp4a', 'audio/mp4'],\n    ['mp4s', 'application/mp4'],\n    ['mp4v', 'video/mp4'],\n    ['mp21', 'application/mp21'],\n    ['mpc', 'application/vnd.mophun.certificate'],\n    ['mpd', 'application/dash+xml'],\n    ['mpe', 'video/mpeg'],\n    ['mpeg', 'video/mpeg'],\n    ['mpg', 'video/mpeg'],\n    ['mpg4', 'video/mp4'],\n    ['mpga', 'audio/mpeg'],\n    ['mpkg', 'application/vnd.apple.installer+xml'],\n    ['mpm', 'application/vnd.blueice.multipass'],\n    ['mpn', 'application/vnd.mophun.application'],\n    ['mpp', 'application/vnd.ms-project'],\n    ['mpt', 'application/vnd.ms-project'],\n    ['mpy', 'application/vnd.ibm.minipay'],\n    ['mqy', 'application/vnd.mobius.mqy'],\n    ['mrc', 'application/marc'],\n    ['mrcx', 'application/marcxml+xml'],\n    ['ms', 'text/troff'],\n    ['mscml', 'application/mediaservercontrol+xml'],\n    ['mseed', 'application/vnd.fdsn.mseed'],\n    ['mseq', 'application/vnd.mseq'],\n    ['msf', 'application/vnd.epson.msf'],\n    ['msg', 'application/vnd.ms-outlook'],\n    ['msh', 'model/mesh'],\n    ['msi', 'application/x-msdownload'],\n    ['msl', 'application/vnd.mobius.msl'],\n    ['msm', 'application/octet-stream'],\n    ['msp', 'application/octet-stream'],\n    ['msty', 'application/vnd.muvee.style'],\n    ['mtl', 'model/mtl'],\n    ['mts', 'model/vnd.mts'],\n    ['mus', 'application/vnd.musician'],\n    ['musd', 'application/mmt-usd+xml'],\n    ['musicxml', 'application/vnd.recordare.musicxml+xml'],\n    ['mvb', 'application/x-msmediaview'],\n    ['mvt', 'application/vnd.mapbox-vector-tile'],\n    ['mwf', 'application/vnd.mfer'],\n    ['mxf', 'application/mxf'],\n    ['mxl', 'application/vnd.recordare.musicxml'],\n    ['mxmf', 'audio/mobile-xmf'],\n    ['mxml', 'application/xv+xml'],\n    ['mxs', 'application/vnd.triscape.mxs'],\n    ['mxu', 'video/vnd.mpegurl'],\n    ['n-gage', 'application/vnd.nokia.n-gage.symbian.install'],\n    ['n3', 'text/n3'],\n    ['nb', 'application/mathematica'],\n    ['nbp', 'application/vnd.wolfram.player'],\n    ['nc', 'application/x-netcdf'],\n    ['ncx', 'application/x-dtbncx+xml'],\n    ['nfo', 'text/x-nfo'],\n    ['ngdat', 'application/vnd.nokia.n-gage.data'],\n    ['nitf', 'application/vnd.nitf'],\n    ['nlu', 'application/vnd.neurolanguage.nlu'],\n    ['nml', 'application/vnd.enliven'],\n    ['nnd', 'application/vnd.noblenet-directory'],\n    ['nns', 'application/vnd.noblenet-sealer'],\n    ['nnw', 'application/vnd.noblenet-web'],\n    ['npx', 'image/vnd.net-fpx'],\n    ['nq', 'application/n-quads'],\n    ['nsc', 'application/x-conference'],\n    ['nsf', 'application/vnd.lotus-notes'],\n    ['nt', 'application/n-triples'],\n    ['ntf', 'application/vnd.nitf'],\n    ['numbers', 'application/x-iwork-numbers-sffnumbers'],\n    ['nzb', 'application/x-nzb'],\n    ['oa2', 'application/vnd.fujitsu.oasys2'],\n    ['oa3', 'application/vnd.fujitsu.oasys3'],\n    ['oas', 'application/vnd.fujitsu.oasys'],\n    ['obd', 'application/x-msbinder'],\n    ['obgx', 'application/vnd.openblox.game+xml'],\n    ['obj', 'model/obj'],\n    ['oda', 'application/oda'],\n    ['odb', 'application/vnd.oasis.opendocument.database'],\n    ['odc', 'application/vnd.oasis.opendocument.chart'],\n    ['odf', 'application/vnd.oasis.opendocument.formula'],\n    ['odft', 'application/vnd.oasis.opendocument.formula-template'],\n    ['odg', 'application/vnd.oasis.opendocument.graphics'],\n    ['odi', 'application/vnd.oasis.opendocument.image'],\n    ['odm', 'application/vnd.oasis.opendocument.text-master'],\n    ['odp', 'application/vnd.oasis.opendocument.presentation'],\n    ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],\n    ['odt', 'application/vnd.oasis.opendocument.text'],\n    ['oga', 'audio/ogg'],\n    ['ogex', 'model/vnd.opengex'],\n    ['ogg', 'audio/ogg'],\n    ['ogv', 'video/ogg'],\n    ['ogx', 'application/ogg'],\n    ['omdoc', 'application/omdoc+xml'],\n    ['onepkg', 'application/onenote'],\n    ['onetmp', 'application/onenote'],\n    ['onetoc', 'application/onenote'],\n    ['onetoc2', 'application/onenote'],\n    ['opf', 'application/oebps-package+xml'],\n    ['opml', 'text/x-opml'],\n    ['oprc', 'application/vnd.palm'],\n    ['opus', 'audio/ogg'],\n    ['org', 'text/x-org'],\n    ['osf', 'application/vnd.yamaha.openscoreformat'],\n    ['osfpvg', 'application/vnd.yamaha.openscoreformat.osfpvg+xml'],\n    ['osm', 'application/vnd.openstreetmap.data+xml'],\n    ['otc', 'application/vnd.oasis.opendocument.chart-template'],\n    ['otf', 'font/otf'],\n    ['otg', 'application/vnd.oasis.opendocument.graphics-template'],\n    ['oth', 'application/vnd.oasis.opendocument.text-web'],\n    ['oti', 'application/vnd.oasis.opendocument.image-template'],\n    ['otp', 'application/vnd.oasis.opendocument.presentation-template'],\n    ['ots', 'application/vnd.oasis.opendocument.spreadsheet-template'],\n    ['ott', 'application/vnd.oasis.opendocument.text-template'],\n    ['ova', 'application/x-virtualbox-ova'],\n    ['ovf', 'application/x-virtualbox-ovf'],\n    ['owl', 'application/rdf+xml'],\n    ['oxps', 'application/oxps'],\n    ['oxt', 'application/vnd.openofficeorg.extension'],\n    ['p', 'text/x-pascal'],\n    ['p7a', 'application/x-pkcs7-signature'],\n    ['p7b', 'application/x-pkcs7-certificates'],\n    ['p7c', 'application/pkcs7-mime'],\n    ['p7m', 'application/pkcs7-mime'],\n    ['p7r', 'application/x-pkcs7-certreqresp'],\n    ['p7s', 'application/pkcs7-signature'],\n    ['p8', 'application/pkcs8'],\n    ['p10', 'application/x-pkcs10'],\n    ['p12', 'application/x-pkcs12'],\n    ['pac', 'application/x-ns-proxy-autoconfig'],\n    ['pages', 'application/x-iwork-pages-sffpages'],\n    ['pas', 'text/x-pascal'],\n    ['paw', 'application/vnd.pawaafile'],\n    ['pbd', 'application/vnd.powerbuilder6'],\n    ['pbm', 'image/x-portable-bitmap'],\n    ['pcap', 'application/vnd.tcpdump.pcap'],\n    ['pcf', 'application/x-font-pcf'],\n    ['pcl', 'application/vnd.hp-pcl'],\n    ['pclxl', 'application/vnd.hp-pclxl'],\n    ['pct', 'image/x-pict'],\n    ['pcurl', 'application/vnd.curl.pcurl'],\n    ['pcx', 'image/x-pcx'],\n    ['pdb', 'application/x-pilot'],\n    ['pde', 'text/x-processing'],\n    ['pdf', 'application/pdf'],\n    ['pem', 'application/x-x509-user-cert'],\n    ['pfa', 'application/x-font-type1'],\n    ['pfb', 'application/x-font-type1'],\n    ['pfm', 'application/x-font-type1'],\n    ['pfr', 'application/font-tdpfr'],\n    ['pfx', 'application/x-pkcs12'],\n    ['pgm', 'image/x-portable-graymap'],\n    ['pgn', 'application/x-chess-pgn'],\n    ['pgp', 'application/pgp'],\n    ['php', 'application/x-httpd-php'],\n    ['php3', 'application/x-httpd-php'],\n    ['php4', 'application/x-httpd-php'],\n    ['phps', 'application/x-httpd-php-source'],\n    ['phtml', 'application/x-httpd-php'],\n    ['pic', 'image/x-pict'],\n    ['pkg', 'application/octet-stream'],\n    ['pki', 'application/pkixcmp'],\n    ['pkipath', 'application/pkix-pkipath'],\n    ['pkpass', 'application/vnd.apple.pkpass'],\n    ['pl', 'application/x-perl'],\n    ['plb', 'application/vnd.3gpp.pic-bw-large'],\n    ['plc', 'application/vnd.mobius.plc'],\n    ['plf', 'application/vnd.pocketlearn'],\n    ['pls', 'application/pls+xml'],\n    ['pm', 'application/x-perl'],\n    ['pml', 'application/vnd.ctc-posml'],\n    ['png', 'image/png'],\n    ['pnm', 'image/x-portable-anymap'],\n    ['portpkg', 'application/vnd.macports.portpkg'],\n    ['pot', 'application/vnd.ms-powerpoint'],\n    ['potm', 'application/vnd.ms-powerpoint.presentation.macroEnabled.12'],\n    ['potx', 'application/vnd.openxmlformats-officedocument.presentationml.template'],\n    ['ppa', 'application/vnd.ms-powerpoint'],\n    ['ppam', 'application/vnd.ms-powerpoint.addin.macroEnabled.12'],\n    ['ppd', 'application/vnd.cups-ppd'],\n    ['ppm', 'image/x-portable-pixmap'],\n    ['pps', 'application/vnd.ms-powerpoint'],\n    ['ppsm', 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12'],\n    ['ppsx', 'application/vnd.openxmlformats-officedocument.presentationml.slideshow'],\n    ['ppt', 'application/powerpoint'],\n    ['pptm', 'application/vnd.ms-powerpoint.presentation.macroEnabled.12'],\n    ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],\n    ['pqa', 'application/vnd.palm'],\n    ['prc', 'application/x-pilot'],\n    ['pre', 'application/vnd.lotus-freelance'],\n    ['prf', 'application/pics-rules'],\n    ['provx', 'application/provenance+xml'],\n    ['ps', 'application/postscript'],\n    ['psb', 'application/vnd.3gpp.pic-bw-small'],\n    ['psd', 'application/x-photoshop'],\n    ['psf', 'application/x-font-linux-psf'],\n    ['pskcxml', 'application/pskc+xml'],\n    ['pti', 'image/prs.pti'],\n    ['ptid', 'application/vnd.pvi.ptid1'],\n    ['pub', 'application/x-mspublisher'],\n    ['pvb', 'application/vnd.3gpp.pic-bw-var'],\n    ['pwn', 'application/vnd.3m.post-it-notes'],\n    ['pya', 'audio/vnd.ms-playready.media.pya'],\n    ['pyv', 'video/vnd.ms-playready.media.pyv'],\n    ['qam', 'application/vnd.epson.quickanime'],\n    ['qbo', 'application/vnd.intu.qbo'],\n    ['qfx', 'application/vnd.intu.qfx'],\n    ['qps', 'application/vnd.publishare-delta-tree'],\n    ['qt', 'video/quicktime'],\n    ['qwd', 'application/vnd.quark.quarkxpress'],\n    ['qwt', 'application/vnd.quark.quarkxpress'],\n    ['qxb', 'application/vnd.quark.quarkxpress'],\n    ['qxd', 'application/vnd.quark.quarkxpress'],\n    ['qxl', 'application/vnd.quark.quarkxpress'],\n    ['qxt', 'application/vnd.quark.quarkxpress'],\n    ['ra', 'audio/x-realaudio'],\n    ['ram', 'audio/x-pn-realaudio'],\n    ['raml', 'application/raml+yaml'],\n    ['rapd', 'application/route-apd+xml'],\n    ['rar', 'application/x-rar'],\n    ['ras', 'image/x-cmu-raster'],\n    ['rcprofile', 'application/vnd.ipunplugged.rcprofile'],\n    ['rdf', 'application/rdf+xml'],\n    ['rdz', 'application/vnd.data-vision.rdz'],\n    ['relo', 'application/p2p-overlay+xml'],\n    ['rep', 'application/vnd.businessobjects'],\n    ['res', 'application/x-dtbresource+xml'],\n    ['rgb', 'image/x-rgb'],\n    ['rif', 'application/reginfo+xml'],\n    ['rip', 'audio/vnd.rip'],\n    ['ris', 'application/x-research-info-systems'],\n    ['rl', 'application/resource-lists+xml'],\n    ['rlc', 'image/vnd.fujixerox.edmics-rlc'],\n    ['rld', 'application/resource-lists-diff+xml'],\n    ['rm', 'audio/x-pn-realaudio'],\n    ['rmi', 'audio/midi'],\n    ['rmp', 'audio/x-pn-realaudio-plugin'],\n    ['rms', 'application/vnd.jcp.javame.midlet-rms'],\n    ['rmvb', 'application/vnd.rn-realmedia-vbr'],\n    ['rnc', 'application/relax-ng-compact-syntax'],\n    ['rng', 'application/xml'],\n    ['roa', 'application/rpki-roa'],\n    ['roff', 'text/troff'],\n    ['rp9', 'application/vnd.cloanto.rp9'],\n    ['rpm', 'audio/x-pn-realaudio-plugin'],\n    ['rpss', 'application/vnd.nokia.radio-presets'],\n    ['rpst', 'application/vnd.nokia.radio-preset'],\n    ['rq', 'application/sparql-query'],\n    ['rs', 'application/rls-services+xml'],\n    ['rsa', 'application/x-pkcs7'],\n    ['rsat', 'application/atsc-rsat+xml'],\n    ['rsd', 'application/rsd+xml'],\n    ['rsheet', 'application/urc-ressheet+xml'],\n    ['rss', 'application/rss+xml'],\n    ['rtf', 'text/rtf'],\n    ['rtx', 'text/richtext'],\n    ['run', 'application/x-makeself'],\n    ['rusd', 'application/route-usd+xml'],\n    ['rv', 'video/vnd.rn-realvideo'],\n    ['s', 'text/x-asm'],\n    ['s3m', 'audio/s3m'],\n    ['saf', 'application/vnd.yamaha.smaf-audio'],\n    ['sass', 'text/x-sass'],\n    ['sbml', 'application/sbml+xml'],\n    ['sc', 'application/vnd.ibm.secure-container'],\n    ['scd', 'application/x-msschedule'],\n    ['scm', 'application/vnd.lotus-screencam'],\n    ['scq', 'application/scvp-cv-request'],\n    ['scs', 'application/scvp-cv-response'],\n    ['scss', 'text/x-scss'],\n    ['scurl', 'text/vnd.curl.scurl'],\n    ['sda', 'application/vnd.stardivision.draw'],\n    ['sdc', 'application/vnd.stardivision.calc'],\n    ['sdd', 'application/vnd.stardivision.impress'],\n    ['sdkd', 'application/vnd.solent.sdkm+xml'],\n    ['sdkm', 'application/vnd.solent.sdkm+xml'],\n    ['sdp', 'application/sdp'],\n    ['sdw', 'application/vnd.stardivision.writer'],\n    ['sea', 'application/octet-stream'],\n    ['see', 'application/vnd.seemail'],\n    ['seed', 'application/vnd.fdsn.seed'],\n    ['sema', 'application/vnd.sema'],\n    ['semd', 'application/vnd.semd'],\n    ['semf', 'application/vnd.semf'],\n    ['senmlx', 'application/senml+xml'],\n    ['sensmlx', 'application/sensml+xml'],\n    ['ser', 'application/java-serialized-object'],\n    ['setpay', 'application/set-payment-initiation'],\n    ['setreg', 'application/set-registration-initiation'],\n    ['sfd-hdstx', 'application/vnd.hydrostatix.sof-data'],\n    ['sfs', 'application/vnd.spotfire.sfs'],\n    ['sfv', 'text/x-sfv'],\n    ['sgi', 'image/sgi'],\n    ['sgl', 'application/vnd.stardivision.writer-global'],\n    ['sgm', 'text/sgml'],\n    ['sgml', 'text/sgml'],\n    ['sh', 'application/x-sh'],\n    ['shar', 'application/x-shar'],\n    ['shex', 'text/shex'],\n    ['shf', 'application/shf+xml'],\n    ['shtml', 'text/html'],\n    ['sid', 'image/x-mrsid-image'],\n    ['sieve', 'application/sieve'],\n    ['sig', 'application/pgp-signature'],\n    ['sil', 'audio/silk'],\n    ['silo', 'model/mesh'],\n    ['sis', 'application/vnd.symbian.install'],\n    ['sisx', 'application/vnd.symbian.install'],\n    ['sit', 'application/x-stuffit'],\n    ['sitx', 'application/x-stuffitx'],\n    ['siv', 'application/sieve'],\n    ['skd', 'application/vnd.koan'],\n    ['skm', 'application/vnd.koan'],\n    ['skp', 'application/vnd.koan'],\n    ['skt', 'application/vnd.koan'],\n    ['sldm', 'application/vnd.ms-powerpoint.slide.macroenabled.12'],\n    ['sldx', 'application/vnd.openxmlformats-officedocument.presentationml.slide'],\n    ['slim', 'text/slim'],\n    ['slm', 'text/slim'],\n    ['sls', 'application/route-s-tsid+xml'],\n    ['slt', 'application/vnd.epson.salt'],\n    ['sm', 'application/vnd.stepmania.stepchart'],\n    ['smf', 'application/vnd.stardivision.math'],\n    ['smi', 'application/smil'],\n    ['smil', 'application/smil'],\n    ['smv', 'video/x-smv'],\n    ['smzip', 'application/vnd.stepmania.package'],\n    ['snd', 'audio/basic'],\n    ['snf', 'application/x-font-snf'],\n    ['so', 'application/octet-stream'],\n    ['spc', 'application/x-pkcs7-certificates'],\n    ['spdx', 'text/spdx'],\n    ['spf', 'application/vnd.yamaha.smaf-phrase'],\n    ['spl', 'application/x-futuresplash'],\n    ['spot', 'text/vnd.in3d.spot'],\n    ['spp', 'application/scvp-vp-response'],\n    ['spq', 'application/scvp-vp-request'],\n    ['spx', 'audio/ogg'],\n    ['sql', 'application/x-sql'],\n    ['src', 'application/x-wais-source'],\n    ['srt', 'application/x-subrip'],\n    ['sru', 'application/sru+xml'],\n    ['srx', 'application/sparql-results+xml'],\n    ['ssdl', 'application/ssdl+xml'],\n    ['sse', 'application/vnd.kodak-descriptor'],\n    ['ssf', 'application/vnd.epson.ssf'],\n    ['ssml', 'application/ssml+xml'],\n    ['sst', 'application/octet-stream'],\n    ['st', 'application/vnd.sailingtracker.track'],\n    ['stc', 'application/vnd.sun.xml.calc.template'],\n    ['std', 'application/vnd.sun.xml.draw.template'],\n    ['stf', 'application/vnd.wt.stf'],\n    ['sti', 'application/vnd.sun.xml.impress.template'],\n    ['stk', 'application/hyperstudio'],\n    ['stl', 'model/stl'],\n    ['stpx', 'model/step+xml'],\n    ['stpxz', 'model/step-xml+zip'],\n    ['stpz', 'model/step+zip'],\n    ['str', 'application/vnd.pg.format'],\n    ['stw', 'application/vnd.sun.xml.writer.template'],\n    ['styl', 'text/stylus'],\n    ['stylus', 'text/stylus'],\n    ['sub', 'text/vnd.dvb.subtitle'],\n    ['sus', 'application/vnd.sus-calendar'],\n    ['susp', 'application/vnd.sus-calendar'],\n    ['sv4cpio', 'application/x-sv4cpio'],\n    ['sv4crc', 'application/x-sv4crc'],\n    ['svc', 'application/vnd.dvb.service'],\n    ['svd', 'application/vnd.svd'],\n    ['svg', 'image/svg+xml'],\n    ['svgz', 'image/svg+xml'],\n    ['swa', 'application/x-director'],\n    ['swf', 'application/x-shockwave-flash'],\n    ['swi', 'application/vnd.aristanetworks.swi'],\n    ['swidtag', 'application/swid+xml'],\n    ['sxc', 'application/vnd.sun.xml.calc'],\n    ['sxd', 'application/vnd.sun.xml.draw'],\n    ['sxg', 'application/vnd.sun.xml.writer.global'],\n    ['sxi', 'application/vnd.sun.xml.impress'],\n    ['sxm', 'application/vnd.sun.xml.math'],\n    ['sxw', 'application/vnd.sun.xml.writer'],\n    ['t', 'text/troff'],\n    ['t3', 'application/x-t3vm-image'],\n    ['t38', 'image/t38'],\n    ['taglet', 'application/vnd.mynfc'],\n    ['tao', 'application/vnd.tao.intent-module-archive'],\n    ['tap', 'image/vnd.tencent.tap'],\n    ['tar', 'application/x-tar'],\n    ['tcap', 'application/vnd.3gpp2.tcap'],\n    ['tcl', 'application/x-tcl'],\n    ['td', 'application/urc-targetdesc+xml'],\n    ['teacher', 'application/vnd.smart.teacher'],\n    ['tei', 'application/tei+xml'],\n    ['teicorpus', 'application/tei+xml'],\n    ['tex', 'application/x-tex'],\n    ['texi', 'application/x-texinfo'],\n    ['texinfo', 'application/x-texinfo'],\n    ['text', 'text/plain'],\n    ['tfi', 'application/thraud+xml'],\n    ['tfm', 'application/x-tex-tfm'],\n    ['tfx', 'image/tiff-fx'],\n    ['tga', 'image/x-tga'],\n    ['tgz', 'application/x-tar'],\n    ['thmx', 'application/vnd.ms-officetheme'],\n    ['tif', 'image/tiff'],\n    ['tiff', 'image/tiff'],\n    ['tk', 'application/x-tcl'],\n    ['tmo', 'application/vnd.tmobile-livetv'],\n    ['toml', 'application/toml'],\n    ['torrent', 'application/x-bittorrent'],\n    ['tpl', 'application/vnd.groove-tool-template'],\n    ['tpt', 'application/vnd.trid.tpt'],\n    ['tr', 'text/troff'],\n    ['tra', 'application/vnd.trueapp'],\n    ['trig', 'application/trig'],\n    ['trm', 'application/x-msterminal'],\n    ['ts', 'video/mp2t'],\n    ['tsd', 'application/timestamped-data'],\n    ['tsv', 'text/tab-separated-values'],\n    ['ttc', 'font/collection'],\n    ['ttf', 'font/ttf'],\n    ['ttl', 'text/turtle'],\n    ['ttml', 'application/ttml+xml'],\n    ['twd', 'application/vnd.simtech-mindmapper'],\n    ['twds', 'application/vnd.simtech-mindmapper'],\n    ['txd', 'application/vnd.genomatix.tuxedo'],\n    ['txf', 'application/vnd.mobius.txf'],\n    ['txt', 'text/plain'],\n    ['u8dsn', 'message/global-delivery-status'],\n    ['u8hdr', 'message/global-headers'],\n    ['u8mdn', 'message/global-disposition-notification'],\n    ['u8msg', 'message/global'],\n    ['u32', 'application/x-authorware-bin'],\n    ['ubj', 'application/ubjson'],\n    ['udeb', 'application/x-debian-package'],\n    ['ufd', 'application/vnd.ufdl'],\n    ['ufdl', 'application/vnd.ufdl'],\n    ['ulx', 'application/x-glulx'],\n    ['umj', 'application/vnd.umajin'],\n    ['unityweb', 'application/vnd.unity'],\n    ['uoml', 'application/vnd.uoml+xml'],\n    ['uri', 'text/uri-list'],\n    ['uris', 'text/uri-list'],\n    ['urls', 'text/uri-list'],\n    ['usdz', 'model/vnd.usdz+zip'],\n    ['ustar', 'application/x-ustar'],\n    ['utz', 'application/vnd.uiq.theme'],\n    ['uu', 'text/x-uuencode'],\n    ['uva', 'audio/vnd.dece.audio'],\n    ['uvd', 'application/vnd.dece.data'],\n    ['uvf', 'application/vnd.dece.data'],\n    ['uvg', 'image/vnd.dece.graphic'],\n    ['uvh', 'video/vnd.dece.hd'],\n    ['uvi', 'image/vnd.dece.graphic'],\n    ['uvm', 'video/vnd.dece.mobile'],\n    ['uvp', 'video/vnd.dece.pd'],\n    ['uvs', 'video/vnd.dece.sd'],\n    ['uvt', 'application/vnd.dece.ttml+xml'],\n    ['uvu', 'video/vnd.uvvu.mp4'],\n    ['uvv', 'video/vnd.dece.video'],\n    ['uvva', 'audio/vnd.dece.audio'],\n    ['uvvd', 'application/vnd.dece.data'],\n    ['uvvf', 'application/vnd.dece.data'],\n    ['uvvg', 'image/vnd.dece.graphic'],\n    ['uvvh', 'video/vnd.dece.hd'],\n    ['uvvi', 'image/vnd.dece.graphic'],\n    ['uvvm', 'video/vnd.dece.mobile'],\n    ['uvvp', 'video/vnd.dece.pd'],\n    ['uvvs', 'video/vnd.dece.sd'],\n    ['uvvt', 'application/vnd.dece.ttml+xml'],\n    ['uvvu', 'video/vnd.uvvu.mp4'],\n    ['uvvv', 'video/vnd.dece.video'],\n    ['uvvx', 'application/vnd.dece.unspecified'],\n    ['uvvz', 'application/vnd.dece.zip'],\n    ['uvx', 'application/vnd.dece.unspecified'],\n    ['uvz', 'application/vnd.dece.zip'],\n    ['vbox', 'application/x-virtualbox-vbox'],\n    ['vbox-extpack', 'application/x-virtualbox-vbox-extpack'],\n    ['vcard', 'text/vcard'],\n    ['vcd', 'application/x-cdlink'],\n    ['vcf', 'text/x-vcard'],\n    ['vcg', 'application/vnd.groove-vcard'],\n    ['vcs', 'text/x-vcalendar'],\n    ['vcx', 'application/vnd.vcx'],\n    ['vdi', 'application/x-virtualbox-vdi'],\n    ['vds', 'model/vnd.sap.vds'],\n    ['vhd', 'application/x-virtualbox-vhd'],\n    ['vis', 'application/vnd.visionary'],\n    ['viv', 'video/vnd.vivo'],\n    ['vlc', 'application/videolan'],\n    ['vmdk', 'application/x-virtualbox-vmdk'],\n    ['vob', 'video/x-ms-vob'],\n    ['vor', 'application/vnd.stardivision.writer'],\n    ['vox', 'application/x-authorware-bin'],\n    ['vrml', 'model/vrml'],\n    ['vsd', 'application/vnd.visio'],\n    ['vsf', 'application/vnd.vsf'],\n    ['vss', 'application/vnd.visio'],\n    ['vst', 'application/vnd.visio'],\n    ['vsw', 'application/vnd.visio'],\n    ['vtf', 'image/vnd.valve.source.texture'],\n    ['vtt', 'text/vtt'],\n    ['vtu', 'model/vnd.vtu'],\n    ['vxml', 'application/voicexml+xml'],\n    ['w3d', 'application/x-director'],\n    ['wad', 'application/x-doom'],\n    ['wadl', 'application/vnd.sun.wadl+xml'],\n    ['war', 'application/java-archive'],\n    ['wasm', 'application/wasm'],\n    ['wav', 'audio/x-wav'],\n    ['wax', 'audio/x-ms-wax'],\n    ['wbmp', 'image/vnd.wap.wbmp'],\n    ['wbs', 'application/vnd.criticaltools.wbs+xml'],\n    ['wbxml', 'application/wbxml'],\n    ['wcm', 'application/vnd.ms-works'],\n    ['wdb', 'application/vnd.ms-works'],\n    ['wdp', 'image/vnd.ms-photo'],\n    ['weba', 'audio/webm'],\n    ['webapp', 'application/x-web-app-manifest+json'],\n    ['webm', 'video/webm'],\n    ['webmanifest', 'application/manifest+json'],\n    ['webp', 'image/webp'],\n    ['wg', 'application/vnd.pmi.widget'],\n    ['wgt', 'application/widget'],\n    ['wks', 'application/vnd.ms-works'],\n    ['wm', 'video/x-ms-wm'],\n    ['wma', 'audio/x-ms-wma'],\n    ['wmd', 'application/x-ms-wmd'],\n    ['wmf', 'image/wmf'],\n    ['wml', 'text/vnd.wap.wml'],\n    ['wmlc', 'application/wmlc'],\n    ['wmls', 'text/vnd.wap.wmlscript'],\n    ['wmlsc', 'application/vnd.wap.wmlscriptc'],\n    ['wmv', 'video/x-ms-wmv'],\n    ['wmx', 'video/x-ms-wmx'],\n    ['wmz', 'application/x-msmetafile'],\n    ['woff', 'font/woff'],\n    ['woff2', 'font/woff2'],\n    ['word', 'application/msword'],\n    ['wpd', 'application/vnd.wordperfect'],\n    ['wpl', 'application/vnd.ms-wpl'],\n    ['wps', 'application/vnd.ms-works'],\n    ['wqd', 'application/vnd.wqd'],\n    ['wri', 'application/x-mswrite'],\n    ['wrl', 'model/vrml'],\n    ['wsc', 'message/vnd.wfa.wsc'],\n    ['wsdl', 'application/wsdl+xml'],\n    ['wspolicy', 'application/wspolicy+xml'],\n    ['wtb', 'application/vnd.webturbo'],\n    ['wvx', 'video/x-ms-wvx'],\n    ['x3d', 'model/x3d+xml'],\n    ['x3db', 'model/x3d+fastinfoset'],\n    ['x3dbz', 'model/x3d+binary'],\n    ['x3dv', 'model/x3d-vrml'],\n    ['x3dvz', 'model/x3d+vrml'],\n    ['x3dz', 'model/x3d+xml'],\n    ['x32', 'application/x-authorware-bin'],\n    ['x_b', 'model/vnd.parasolid.transmit.binary'],\n    ['x_t', 'model/vnd.parasolid.transmit.text'],\n    ['xaml', 'application/xaml+xml'],\n    ['xap', 'application/x-silverlight-app'],\n    ['xar', 'application/vnd.xara'],\n    ['xav', 'application/xcap-att+xml'],\n    ['xbap', 'application/x-ms-xbap'],\n    ['xbd', 'application/vnd.fujixerox.docuworks.binder'],\n    ['xbm', 'image/x-xbitmap'],\n    ['xca', 'application/xcap-caps+xml'],\n    ['xcs', 'application/calendar+xml'],\n    ['xdf', 'application/xcap-diff+xml'],\n    ['xdm', 'application/vnd.syncml.dm+xml'],\n    ['xdp', 'application/vnd.adobe.xdp+xml'],\n    ['xdssc', 'application/dssc+xml'],\n    ['xdw', 'application/vnd.fujixerox.docuworks'],\n    ['xel', 'application/xcap-el+xml'],\n    ['xenc', 'application/xenc+xml'],\n    ['xer', 'application/patch-ops-error+xml'],\n    ['xfdf', 'application/vnd.adobe.xfdf'],\n    ['xfdl', 'application/vnd.xfdl'],\n    ['xht', 'application/xhtml+xml'],\n    ['xhtml', 'application/xhtml+xml'],\n    ['xhvml', 'application/xv+xml'],\n    ['xif', 'image/vnd.xiff'],\n    ['xl', 'application/excel'],\n    ['xla', 'application/vnd.ms-excel'],\n    ['xlam', 'application/vnd.ms-excel.addin.macroEnabled.12'],\n    ['xlc', 'application/vnd.ms-excel'],\n    ['xlf', 'application/xliff+xml'],\n    ['xlm', 'application/vnd.ms-excel'],\n    ['xls', 'application/vnd.ms-excel'],\n    ['xlsb', 'application/vnd.ms-excel.sheet.binary.macroEnabled.12'],\n    ['xlsm', 'application/vnd.ms-excel.sheet.macroEnabled.12'],\n    ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],\n    ['xlt', 'application/vnd.ms-excel'],\n    ['xltm', 'application/vnd.ms-excel.template.macroEnabled.12'],\n    ['xltx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.template'],\n    ['xlw', 'application/vnd.ms-excel'],\n    ['xm', 'audio/xm'],\n    ['xml', 'application/xml'],\n    ['xns', 'application/xcap-ns+xml'],\n    ['xo', 'application/vnd.olpc-sugar'],\n    ['xop', 'application/xop+xml'],\n    ['xpi', 'application/x-xpinstall'],\n    ['xpl', 'application/xproc+xml'],\n    ['xpm', 'image/x-xpixmap'],\n    ['xpr', 'application/vnd.is-xpr'],\n    ['xps', 'application/vnd.ms-xpsdocument'],\n    ['xpw', 'application/vnd.intercon.formnet'],\n    ['xpx', 'application/vnd.intercon.formnet'],\n    ['xsd', 'application/xml'],\n    ['xsl', 'application/xml'],\n    ['xslt', 'application/xslt+xml'],\n    ['xsm', 'application/vnd.syncml+xml'],\n    ['xspf', 'application/xspf+xml'],\n    ['xul', 'application/vnd.mozilla.xul+xml'],\n    ['xvm', 'application/xv+xml'],\n    ['xvml', 'application/xv+xml'],\n    ['xwd', 'image/x-xwindowdump'],\n    ['xyz', 'chemical/x-xyz'],\n    ['xz', 'application/x-xz'],\n    ['yaml', 'text/yaml'],\n    ['yang', 'application/yang'],\n    ['yin', 'application/yin+xml'],\n    ['yml', 'text/yaml'],\n    ['ymp', 'text/x-suse-ymp'],\n    ['z', 'application/x-compress'],\n    ['z1', 'application/x-zmachine'],\n    ['z2', 'application/x-zmachine'],\n    ['z3', 'application/x-zmachine'],\n    ['z4', 'application/x-zmachine'],\n    ['z5', 'application/x-zmachine'],\n    ['z6', 'application/x-zmachine'],\n    ['z7', 'application/x-zmachine'],\n    ['z8', 'application/x-zmachine'],\n    ['zaz', 'application/vnd.zzazz.deck+xml'],\n    ['zip', 'application/zip'],\n    ['zir', 'application/vnd.zul'],\n    ['zirz', 'application/vnd.zul'],\n    ['zmm', 'application/vnd.handheld-entertainment+xml'],\n    ['zsh', 'text/x-scriptzsh']\n]);\nexport function toFileWithPath(file, path, h) {\n    const f = withMimeType(file);\n    const { webkitRelativePath } = file;\n    const p = typeof path === 'string'\n        ? path\n        // If <input webkitdirectory> is set,\n        // the File will have a {webkitRelativePath} property\n        // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory\n        : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0\n            ? webkitRelativePath\n            : `./${file.name}`;\n    if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path\n        setObjProp(f, 'path', p);\n    }\n    if (h !== undefined) {\n        Object.defineProperty(f, 'handle', {\n            value: h,\n            writable: false,\n            configurable: false,\n            enumerable: true\n        });\n    }\n    // Always populate a relative path so that even electron apps have access to a relativePath value\n    setObjProp(f, 'relativePath', p);\n    return f;\n}\nfunction withMimeType(file) {\n    const { name } = file;\n    const hasExtension = name && name.lastIndexOf('.') !== -1;\n    if (hasExtension && !file.type) {\n        const ext = name.split('.')\n            .pop().toLowerCase();\n        const type = COMMON_MIME_TYPES.get(ext);\n        if (type) {\n            Object.defineProperty(file, 'type', {\n                value: type,\n                writable: false,\n                configurable: false,\n                enumerable: true\n            });\n        }\n    }\n    return file;\n}\nfunction setObjProp(f, key, value) {\n    Object.defineProperty(f, key, {\n        value,\n        writable: false,\n        configurable: false,\n        enumerable: true\n    });\n}\n//# sourceMappingURL=file.js.map","import { __awaiter } from \"tslib\";\nimport { toFileWithPath } from './file';\nconst FILES_TO_IGNORE = [\n    // Thumbnail cache files for macOS and Windows\n    '.DS_Store', // macOs\n    'Thumbs.db' // Windows\n];\n/**\n * Convert a DragEvent's DataTrasfer object to a list of File objects\n * NOTE: If some of the items are folders,\n * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.\n *\n * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg\n * and a list of File objects will be returned.\n *\n * @param evt\n */\nexport function fromEvent(evt) {\n    return __awaiter(this, void 0, void 0, function* () {\n        if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {\n            return getDataTransferFiles(evt.dataTransfer, evt.type);\n        }\n        else if (isChangeEvt(evt)) {\n            return getInputFiles(evt);\n        }\n        else if (Array.isArray(evt) && evt.every(item => 'getFile' in item && typeof item.getFile === 'function')) {\n            return getFsHandleFiles(evt);\n        }\n        return [];\n    });\n}\nfunction isDataTransfer(value) {\n    return isObject(value);\n}\nfunction isChangeEvt(value) {\n    return isObject(value) && isObject(value.target);\n}\nfunction isObject(v) {\n    return typeof v === 'object' && v !== null;\n}\nfunction getInputFiles(evt) {\n    return fromList(evt.target.files).map(file => toFileWithPath(file));\n}\n// Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle\nfunction getFsHandleFiles(handles) {\n    return __awaiter(this, void 0, void 0, function* () {\n        const files = yield Promise.all(handles.map(h => h.getFile()));\n        return files.map(file => toFileWithPath(file));\n    });\n}\nfunction getDataTransferFiles(dt, type) {\n    return __awaiter(this, void 0, void 0, function* () {\n        // IE11 does not support dataTransfer.items\n        // See https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/items#Browser_compatibility\n        if (dt.items) {\n            const items = fromList(dt.items)\n                .filter(item => item.kind === 'file');\n            // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,\n            // only 'dragstart' and 'drop' has access to the data (source node)\n            if (type !== 'drop') {\n                return items;\n            }\n            const files = yield Promise.all(items.map(toFilePromises));\n            return noIgnoredFiles(flatten(files));\n        }\n        return noIgnoredFiles(fromList(dt.files)\n            .map(file => toFileWithPath(file)));\n    });\n}\nfunction noIgnoredFiles(files) {\n    return files.filter(file => FILES_TO_IGNORE.indexOf(file.name) === -1);\n}\n// IE11 does not support Array.from()\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility\n// https://developer.mozilla.org/en-US/docs/Web/API/FileList\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList\nfunction fromList(items) {\n    if (items === null) {\n        return [];\n    }\n    const files = [];\n    // tslint:disable: prefer-for-of\n    for (let i = 0; i < items.length; i++) {\n        const file = items[i];\n        files.push(file);\n    }\n    return files;\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem\nfunction toFilePromises(item) {\n    if (typeof item.webkitGetAsEntry !== 'function') {\n        return fromDataTransferItem(item);\n    }\n    const entry = item.webkitGetAsEntry();\n    // Safari supports dropping an image node from a different window and can be retrieved using\n    // the DataTransferItem.getAsFile() API\n    // NOTE: FileSystemEntry.file() throws if trying to get the file\n    if (entry && entry.isDirectory) {\n        return fromDirEntry(entry);\n    }\n    return fromDataTransferItem(item, entry);\n}\nfunction flatten(items) {\n    return items.reduce((acc, files) => [\n        ...acc,\n        ...(Array.isArray(files) ? flatten(files) : [files])\n    ], []);\n}\nfunction fromDataTransferItem(item, entry) {\n    return __awaiter(this, void 0, void 0, function* () {\n        var _a;\n        // Check if we're in a secure context; due to a bug in Chrome (as far as we know)\n        // the browser crashes when calling this API (yet to be confirmed as a consistent behaviour).\n        //\n        // See:\n        // - https://issues.chromium.org/issues/40186242\n        // - https://github.com/react-dropzone/react-dropzone/issues/1397\n        if (globalThis.isSecureContext && typeof item.getAsFileSystemHandle === 'function') {\n            const h = yield item.getAsFileSystemHandle();\n            if (h === null) {\n                throw new Error(`${item} is not a File`);\n            }\n            // It seems that the handle can be `undefined` (see https://github.com/react-dropzone/file-selector/issues/120),\n            // so we check if it isn't; if it is, the code path continues to the next API (`getAsFile`).\n            if (h !== undefined) {\n                const file = yield h.getFile();\n                file.handle = h;\n                return toFileWithPath(file);\n            }\n        }\n        const file = item.getAsFile();\n        if (!file) {\n            throw new Error(`${item} is not a File`);\n        }\n        const fwp = toFileWithPath(file, (_a = entry === null || entry === void 0 ? void 0 : entry.fullPath) !== null && _a !== void 0 ? _a : undefined);\n        return fwp;\n    });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry\nfunction fromEntry(entry) {\n    return __awaiter(this, void 0, void 0, function* () {\n        return entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry);\n    });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry\nfunction fromDirEntry(entry) {\n    const reader = entry.createReader();\n    return new Promise((resolve, reject) => {\n        const entries = [];\n        function readEntries() {\n            // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader\n            // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries\n            reader.readEntries((batch) => __awaiter(this, void 0, void 0, function* () {\n                if (!batch.length) {\n                    // Done reading directory\n                    try {\n                        const files = yield Promise.all(entries);\n                        resolve(files);\n                    }\n                    catch (err) {\n                        reject(err);\n                    }\n                }\n                else {\n                    const items = Promise.all(batch.map(fromEntry));\n                    entries.push(items);\n                    // Continue reading\n                    readEntries();\n                }\n            }), (err) => {\n                reject(err);\n            });\n        }\n        readEntries();\n    });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry\nfunction fromFileEntry(entry) {\n    return __awaiter(this, void 0, void 0, function* () {\n        return new Promise((resolve, reject) => {\n            entry.file((file) => {\n                const fwp = toFileWithPath(file, entry.fullPath);\n                resolve(fwp);\n            }, (err) => {\n                reject(err);\n            });\n        });\n    });\n}\n//# sourceMappingURL=file-selector.js.map","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (file, acceptedFiles) {\n  if (file && acceptedFiles) {\n    var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n\n    if (acceptedFilesArray.length === 0) {\n      return true;\n    }\n\n    var fileName = file.name || '';\n    var mimeType = (file.type || '').toLowerCase();\n    var baseMimeType = mimeType.replace(/\\/.*$/, '');\n    return acceptedFilesArray.some(function (type) {\n      var validType = type.trim().toLowerCase();\n\n      if (validType.charAt(0) === '.') {\n        return fileName.toLowerCase().endsWith(validType);\n      } else if (validType.endsWith('/*')) {\n        // This is something like a image/* mime type\n        return baseMimeType === validType.replace(/\\/.*$/, '');\n      }\n\n      return mimeType === validType;\n    });\n  }\n\n  return true;\n};","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport _accepts from \"attr-accept\";\nvar accepts = typeof _accepts === \"function\" ? _accepts : _accepts.default; // Error codes\n\nexport var FILE_INVALID_TYPE = \"file-invalid-type\";\nexport var FILE_TOO_LARGE = \"file-too-large\";\nexport var FILE_TOO_SMALL = \"file-too-small\";\nexport var TOO_MANY_FILES = \"too-many-files\";\nexport var ErrorCode = {\n  FileInvalidType: FILE_INVALID_TYPE,\n  FileTooLarge: FILE_TOO_LARGE,\n  FileTooSmall: FILE_TOO_SMALL,\n  TooManyFiles: TOO_MANY_FILES\n};\n/**\n *\n * @param {string} accept\n */\n\nexport var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr() {\n  var accept = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n  var acceptArr = accept.split(\",\");\n  var msg = acceptArr.length > 1 ? \"one of \".concat(acceptArr.join(\", \")) : acceptArr[0];\n  return {\n    code: FILE_INVALID_TYPE,\n    message: \"File type must be \".concat(msg)\n  };\n};\nexport var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {\n  return {\n    code: FILE_TOO_LARGE,\n    message: \"File is larger than \".concat(maxSize, \" \").concat(maxSize === 1 ? \"byte\" : \"bytes\")\n  };\n};\nexport var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {\n  return {\n    code: FILE_TOO_SMALL,\n    message: \"File is smaller than \".concat(minSize, \" \").concat(minSize === 1 ? \"byte\" : \"bytes\")\n  };\n};\nexport var TOO_MANY_FILES_REJECTION = {\n  code: TOO_MANY_FILES,\n  message: \"Too many files\"\n};\n/**\n * Check if file is accepted.\n *\n * Firefox versions prior to 53 return a bogus MIME type for every file drag,\n * so dragovers with that MIME type will always be accepted.\n *\n * @param {File} file\n * @param {string} accept\n * @returns\n */\n\nexport function fileAccepted(file, accept) {\n  var isAcceptable = file.type === \"application/x-moz-file\" || accepts(file, accept);\n  return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];\n}\nexport function fileMatchSize(file, minSize, maxSize) {\n  if (isDefined(file.size)) {\n    if (isDefined(minSize) && isDefined(maxSize)) {\n      if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n      if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];\n    } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n  }\n\n  return [true, null];\n}\n\nfunction isDefined(value) {\n  return value !== undefined && value !== null;\n}\n/**\n *\n * @param {object} options\n * @param {File[]} options.files\n * @param {string} [options.accept]\n * @param {number} [options.minSize]\n * @param {number} [options.maxSize]\n * @param {boolean} [options.multiple]\n * @param {number} [options.maxFiles]\n * @param {(f: File) => FileError|FileError[]|null} [options.validator]\n * @returns\n */\n\n\nexport function allFilesAccepted(_ref) {\n  var files = _ref.files,\n      accept = _ref.accept,\n      minSize = _ref.minSize,\n      maxSize = _ref.maxSize,\n      multiple = _ref.multiple,\n      maxFiles = _ref.maxFiles,\n      validator = _ref.validator;\n\n  if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {\n    return false;\n  }\n\n  return files.every(function (file) {\n    var _fileAccepted = fileAccepted(file, accept),\n        _fileAccepted2 = _slicedToArray(_fileAccepted, 1),\n        accepted = _fileAccepted2[0];\n\n    var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n        _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1),\n        sizeMatch = _fileMatchSize2[0];\n\n    var customErrors = validator ? validator(file) : null;\n    return accepted && sizeMatch && !customErrors;\n  });\n} // React's synthetic events has event.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check event.cancelBubble\n\nexport function isPropagationStopped(event) {\n  if (typeof event.isPropagationStopped === \"function\") {\n    return event.isPropagationStopped();\n  } else if (typeof event.cancelBubble !== \"undefined\") {\n    return event.cancelBubble;\n  }\n\n  return false;\n}\nexport function isEvtWithFiles(event) {\n  if (!event.dataTransfer) {\n    return !!event.target && !!event.target.files;\n  } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types\n  // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file\n\n\n  return Array.prototype.some.call(event.dataTransfer.types, function (type) {\n    return type === \"Files\" || type === \"application/x-moz-file\";\n  });\n}\nexport function isKindFile(item) {\n  return _typeof(item) === \"object\" && item !== null && item.kind === \"file\";\n} // allow the entire document to be a drag target\n\nexport function onDocumentDragOver(event) {\n  event.preventDefault();\n}\n\nfunction isIe(userAgent) {\n  return userAgent.indexOf(\"MSIE\") !== -1 || userAgent.indexOf(\"Trident/\") !== -1;\n}\n\nfunction isEdge(userAgent) {\n  return userAgent.indexOf(\"Edge/\") !== -1;\n}\n\nexport function isIeOrEdge() {\n  var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;\n  return isIe(userAgent) || isEdge(userAgent);\n}\n/**\n * This is intended to be used to compose event handlers\n * They are executed in order until one of them calls `event.isPropagationStopped()`.\n * Note that the check is done on the first invoke too,\n * meaning that if propagation was stopped before invoking the fns,\n * no handlers will be executed.\n *\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\n\nexport function composeEventHandlers() {\n  for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n    fns[_key] = arguments[_key];\n  }\n\n  return function (event) {\n    for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n      args[_key2 - 1] = arguments[_key2];\n    }\n\n    return fns.some(function (fn) {\n      if (!isPropagationStopped(event) && fn) {\n        fn.apply(void 0, [event].concat(args));\n      }\n\n      return isPropagationStopped(event);\n    });\n  };\n}\n/**\n * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)\n * is supported by the browser.\n * @returns {boolean}\n */\n\nexport function canUseFileSystemAccessAPI() {\n  return \"showOpenFilePicker\" in window;\n}\n/**\n * Convert the `{accept}` dropzone prop to the\n * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n *\n * @param {AcceptProp} accept\n * @returns {{accept: string[]}[]}\n */\n\nexport function pickerOptionsFromAccept(accept) {\n  if (isDefined(accept)) {\n    var acceptForPicker = Object.entries(accept).filter(function (_ref2) {\n      var _ref3 = _slicedToArray(_ref2, 2),\n          mimeType = _ref3[0],\n          ext = _ref3[1];\n\n      var ok = true;\n\n      if (!isMIMEType(mimeType)) {\n        console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.\"));\n        ok = false;\n      }\n\n      if (!Array.isArray(ext) || !ext.every(isExt)) {\n        console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because an invalid file extension was provided.\"));\n        ok = false;\n      }\n\n      return ok;\n    }).reduce(function (agg, _ref4) {\n      var _ref5 = _slicedToArray(_ref4, 2),\n          mimeType = _ref5[0],\n          ext = _ref5[1];\n\n      return _objectSpread(_objectSpread({}, agg), {}, _defineProperty({}, mimeType, ext));\n    }, {});\n    return [{\n      // description is required due to https://crbug.com/1264708\n      description: \"Files\",\n      accept: acceptForPicker\n    }];\n  }\n\n  return accept;\n}\n/**\n * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.\n * @param {AcceptProp} accept\n * @returns {string}\n */\n\nexport function acceptPropAsAcceptAttr(accept) {\n  if (isDefined(accept)) {\n    return Object.entries(accept).reduce(function (a, _ref6) {\n      var _ref7 = _slicedToArray(_ref6, 2),\n          mimeType = _ref7[0],\n          ext = _ref7[1];\n\n      return [].concat(_toConsumableArray(a), [mimeType], _toConsumableArray(ext));\n    }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these\n    .filter(function (v) {\n      return isMIMEType(v) || isExt(v);\n    }).join(\",\");\n  }\n\n  return undefined;\n}\n/**\n * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is an abort exception.\n */\n\nexport function isAbort(v) {\n  return v instanceof DOMException && (v.name === \"AbortError\" || v.code === v.ABORT_ERR);\n}\n/**\n * Check if v is a security error.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is a security error.\n */\n\nexport function isSecurityError(v) {\n  return v instanceof DOMException && (v.name === \"SecurityError\" || v.code === v.SECURITY_ERR);\n}\n/**\n * Check if v is a MIME type string.\n *\n * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.\n *\n * @param {string} v\n */\n\nexport function isMIMEType(v) {\n  return v === \"audio/*\" || v === \"video/*\" || v === \"image/*\" || v === \"text/*\" || v === \"application/*\" || /\\w+\\/[-+.\\w]+/g.test(v);\n}\n/**\n * Check if v is a file extension.\n * @param {string} v\n */\n\nexport function isExt(v) {\n  return /^.*\\.[\\w]+$/.test(v);\n}\n/**\n * @typedef {Object.<string, string[]>} AcceptProp\n */\n\n/**\n * @typedef {object} FileError\n * @property {string} message\n * @property {ErrorCode|string} code\n */\n\n/**\n * @typedef {\"file-invalid-type\"|\"file-too-large\"|\"file-too-small\"|\"too-many-files\"} ErrorCode\n */","var _excluded = [\"children\"],\n    _excluded2 = [\"open\"],\n    _excluded3 = [\"refKey\", \"role\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onClick\", \"onDragEnter\", \"onDragOver\", \"onDragLeave\", \"onDrop\"],\n    _excluded4 = [\"refKey\", \"onChange\", \"onClick\"];\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* eslint prefer-template: 0 */\nimport React, { forwardRef, Fragment, useCallback, useEffect, useImperativeHandle, useMemo, useReducer, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { fromEvent } from \"file-selector\";\nimport { acceptPropAsAcceptAttr, allFilesAccepted, composeEventHandlers, fileAccepted, fileMatchSize, canUseFileSystemAccessAPI, isAbort, isEvtWithFiles, isIeOrEdge, isPropagationStopped, isSecurityError, onDocumentDragOver, pickerOptionsFromAccept, TOO_MANY_FILES_REJECTION } from \"./utils/index.js\";\n/**\n * Convenience wrapper component for the `useDropzone` hook\n *\n * ```jsx\n * <Dropzone>\n *   {({getRootProps, getInputProps}) => (\n *     <div {...getRootProps()}>\n *       <input {...getInputProps()} />\n *       <p>Drag 'n' drop some files here, or click to select files</p>\n *     </div>\n *   )}\n * </Dropzone>\n * ```\n */\n\nvar Dropzone = /*#__PURE__*/forwardRef(function (_ref, ref) {\n  var children = _ref.children,\n      params = _objectWithoutProperties(_ref, _excluded);\n\n  var _useDropzone = useDropzone(params),\n      open = _useDropzone.open,\n      props = _objectWithoutProperties(_useDropzone, _excluded2);\n\n  useImperativeHandle(ref, function () {\n    return {\n      open: open\n    };\n  }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element\n\n  return /*#__PURE__*/React.createElement(Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {\n    open: open\n  })));\n});\nDropzone.displayName = \"Dropzone\"; // Add default props for react-docgen\n\nvar defaultProps = {\n  disabled: false,\n  getFilesFromEvent: fromEvent,\n  maxSize: Infinity,\n  minSize: 0,\n  multiple: true,\n  maxFiles: 0,\n  preventDropOnDocument: true,\n  noClick: false,\n  noKeyboard: false,\n  noDrag: false,\n  noDragEventsBubbling: false,\n  validator: null,\n  useFsAccessApi: false,\n  autoFocus: false\n};\nDropzone.defaultProps = defaultProps;\nDropzone.propTypes = {\n  /**\n   * Render function that exposes the dropzone state and prop getter fns\n   *\n   * @param {object} params\n   * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render\n   * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render\n   * @param {Function} params.open Open the native file selection dialog\n   * @param {boolean} params.isFocused Dropzone area is in focus\n   * @param {boolean} params.isFileDialogActive File dialog is opened\n   * @param {boolean} params.isDragActive Active drag is in progress\n   * @param {boolean} params.isDragAccept Dragged files are accepted\n   * @param {boolean} params.isDragReject Some dragged files are rejected\n   * @param {File[]} params.acceptedFiles Accepted files\n   * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected\n   */\n  children: PropTypes.func,\n\n  /**\n   * Set accepted file types.\n   * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n   * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n   * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n   * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n   */\n  accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),\n\n  /**\n   * Allow drag 'n' drop (or selection from the file dialog) of multiple files\n   */\n  multiple: PropTypes.bool,\n\n  /**\n   * If false, allow dropped items to take over the current browser window\n   */\n  preventDropOnDocument: PropTypes.bool,\n\n  /**\n   * If true, disables click to open the native file selection dialog\n   */\n  noClick: PropTypes.bool,\n\n  /**\n   * If true, disables SPACE/ENTER to open the native file selection dialog.\n   * Note that it also stops tracking the focus state.\n   */\n  noKeyboard: PropTypes.bool,\n\n  /**\n   * If true, disables drag 'n' drop\n   */\n  noDrag: PropTypes.bool,\n\n  /**\n   * If true, stops drag event propagation to parents\n   */\n  noDragEventsBubbling: PropTypes.bool,\n\n  /**\n   * Minimum file size (in bytes)\n   */\n  minSize: PropTypes.number,\n\n  /**\n   * Maximum file size (in bytes)\n   */\n  maxSize: PropTypes.number,\n\n  /**\n   * Maximum accepted number of files\n   * The default value is 0 which means there is no limitation to how many files are accepted.\n   */\n  maxFiles: PropTypes.number,\n\n  /**\n   * Enable/disable the dropzone\n   */\n  disabled: PropTypes.bool,\n\n  /**\n   * Use this to provide a custom file aggregator\n   *\n   * @param {(DragEvent|Event|Array<FileSystemFileHandle>)} event A drag event or input change event (if files were selected via the file dialog)\n   */\n  getFilesFromEvent: PropTypes.func,\n\n  /**\n   * Cb for when closing the file dialog with no selection\n   */\n  onFileDialogCancel: PropTypes.func,\n\n  /**\n   * Cb for when opening the file dialog\n   */\n  onFileDialogOpen: PropTypes.func,\n\n  /**\n   * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n   * to open the file picker instead of using an `<input type=\"file\">` click event.\n   */\n  useFsAccessApi: PropTypes.bool,\n\n  /**\n   * Set to true to focus the root element on render\n   */\n  autoFocus: PropTypes.bool,\n\n  /**\n   * Cb for when the `dragenter` event occurs.\n   *\n   * @param {DragEvent} event\n   */\n  onDragEnter: PropTypes.func,\n\n  /**\n   * Cb for when the `dragleave` event occurs\n   *\n   * @param {DragEvent} event\n   */\n  onDragLeave: PropTypes.func,\n\n  /**\n   * Cb for when the `dragover` event occurs\n   *\n   * @param {DragEvent} event\n   */\n  onDragOver: PropTypes.func,\n\n  /**\n   * Cb for when the `drop` event occurs.\n   * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n   *\n   * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n   * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.\n   * If `multiple` is set to false and additional files are dropped,\n   * all files besides the first will be rejected.\n   * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n   *\n   * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n   * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n   *\n   * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n   * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n   *\n   * ```js\n   * function onDrop(acceptedFiles) {\n   *   const req = request.post('/upload')\n   *   acceptedFiles.forEach(file => {\n   *     req.attach(file.name, file)\n   *   })\n   *   req.end(callback)\n   * }\n   * ```\n   *\n   * @param {File[]} acceptedFiles\n   * @param {FileRejection[]} fileRejections\n   * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n   */\n  onDrop: PropTypes.func,\n\n  /**\n   * Cb for when the `drop` event occurs.\n   * Note that if no files are accepted, this callback is not invoked.\n   *\n   * @param {File[]} files\n   * @param {(DragEvent|Event)} event\n   */\n  onDropAccepted: PropTypes.func,\n\n  /**\n   * Cb for when the `drop` event occurs.\n   * Note that if no files are rejected, this callback is not invoked.\n   *\n   * @param {FileRejection[]} fileRejections\n   * @param {(DragEvent|Event)} event\n   */\n  onDropRejected: PropTypes.func,\n\n  /**\n   * Cb for when there's some error from any of the promises.\n   *\n   * @param {Error} error\n   */\n  onError: PropTypes.func,\n\n  /**\n   * Custom validation function. It must return null if there's no errors.\n   * @param {File} file\n   * @returns {FileError|FileError[]|null}\n   */\n  validator: PropTypes.func\n};\nexport default Dropzone;\n/**\n * A function that is invoked for the `dragenter`,\n * `dragover` and `dragleave` events.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dragCb\n * @param {DragEvent} event\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dropCb\n * @param {File[]} acceptedFiles List of accepted files\n * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are files (such as link, text, etc.).\n *\n * @callback dropAcceptedCb\n * @param {File[]} files List of accepted files that meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n *\n * @callback dropRejectedCb\n * @param {File[]} files List of rejected files that do not meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is used aggregate files,\n * in a asynchronous fashion, from drag or input change events.\n *\n * @callback getFilesFromEvent\n * @param {(DragEvent|Event|Array<FileSystemFileHandle>)} event A drag event or input change event (if files were selected via the file dialog)\n * @returns {(File[]|Promise<File[]>)}\n */\n\n/**\n * An object with the current dropzone state.\n *\n * @typedef {object} DropzoneState\n * @property {boolean} isFocused Dropzone area is in focus\n * @property {boolean} isFileDialogActive File dialog is opened\n * @property {boolean} isDragActive Active drag is in progress\n * @property {boolean} isDragAccept Dragged files are accepted\n * @property {boolean} isDragReject Some dragged files are rejected\n * @property {File[]} acceptedFiles Accepted files\n * @property {FileRejection[]} fileRejections Rejected files and why they were rejected\n */\n\n/**\n * An object with the dropzone methods.\n *\n * @typedef {object} DropzoneMethods\n * @property {Function} getRootProps Returns the props you should apply to the root drop container you render\n * @property {Function} getInputProps Returns the props you should apply to hidden file input you render\n * @property {Function} open Open the native file selection dialog\n */\n\nvar initialState = {\n  isFocused: false,\n  isFileDialogActive: false,\n  isDragActive: false,\n  isDragAccept: false,\n  isDragReject: false,\n  acceptedFiles: [],\n  fileRejections: []\n};\n/**\n * A React hook that creates a drag 'n' drop area.\n *\n * ```jsx\n * function MyDropzone(props) {\n *   const {getRootProps, getInputProps} = useDropzone({\n *     onDrop: acceptedFiles => {\n *       // do something with the File objects, e.g. upload to some server\n *     }\n *   });\n *   return (\n *     <div {...getRootProps()}>\n *       <input {...getInputProps()} />\n *       <p>Drag and drop some files here, or click to select files</p>\n *     </div>\n *   )\n * }\n * ```\n *\n * @function useDropzone\n *\n * @param {object} props\n * @param {import(\"./utils\").AcceptProp} [props.accept] Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files\n * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window\n * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog\n * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop\n * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents\n * @param {number} [props.minSize=0] Minimum file size (in bytes)\n * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)\n * @param {boolean} [props.disabled=false] Enable/disable the dropzone\n * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator\n * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection\n * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `<input type=\"file\">` click event.\n * @param {boolean} autoFocus Set to true to auto focus the root element.\n * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog\n * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.\n * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs\n * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs\n * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n *   const req = request.post('/upload')\n *   acceptedFiles.forEach(file => {\n *     req.attach(file.name, file)\n *   })\n *   req.end(callback)\n * }\n * ```\n * @param {dropAcceptedCb} [props.onDropAccepted]\n * @param {dropRejectedCb} [props.onDropRejected]\n * @param {(error: Error) => void} [props.onError]\n *\n * @returns {DropzoneState & DropzoneMethods}\n */\n\nexport function useDropzone() {\n  var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n  var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),\n      accept = _defaultProps$props.accept,\n      disabled = _defaultProps$props.disabled,\n      getFilesFromEvent = _defaultProps$props.getFilesFromEvent,\n      maxSize = _defaultProps$props.maxSize,\n      minSize = _defaultProps$props.minSize,\n      multiple = _defaultProps$props.multiple,\n      maxFiles = _defaultProps$props.maxFiles,\n      onDragEnter = _defaultProps$props.onDragEnter,\n      onDragLeave = _defaultProps$props.onDragLeave,\n      onDragOver = _defaultProps$props.onDragOver,\n      onDrop = _defaultProps$props.onDrop,\n      onDropAccepted = _defaultProps$props.onDropAccepted,\n      onDropRejected = _defaultProps$props.onDropRejected,\n      onFileDialogCancel = _defaultProps$props.onFileDialogCancel,\n      onFileDialogOpen = _defaultProps$props.onFileDialogOpen,\n      useFsAccessApi = _defaultProps$props.useFsAccessApi,\n      autoFocus = _defaultProps$props.autoFocus,\n      preventDropOnDocument = _defaultProps$props.preventDropOnDocument,\n      noClick = _defaultProps$props.noClick,\n      noKeyboard = _defaultProps$props.noKeyboard,\n      noDrag = _defaultProps$props.noDrag,\n      noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,\n      onError = _defaultProps$props.onError,\n      validator = _defaultProps$props.validator;\n\n  var acceptAttr = useMemo(function () {\n    return acceptPropAsAcceptAttr(accept);\n  }, [accept]);\n  var pickerTypes = useMemo(function () {\n    return pickerOptionsFromAccept(accept);\n  }, [accept]);\n  var onFileDialogOpenCb = useMemo(function () {\n    return typeof onFileDialogOpen === \"function\" ? onFileDialogOpen : noop;\n  }, [onFileDialogOpen]);\n  var onFileDialogCancelCb = useMemo(function () {\n    return typeof onFileDialogCancel === \"function\" ? onFileDialogCancel : noop;\n  }, [onFileDialogCancel]);\n  /**\n   * @constant\n   * @type {React.MutableRefObject<HTMLElement>}\n   */\n\n  var rootRef = useRef(null);\n  var inputRef = useRef(null);\n\n  var _useReducer = useReducer(reducer, initialState),\n      _useReducer2 = _slicedToArray(_useReducer, 2),\n      state = _useReducer2[0],\n      dispatch = _useReducer2[1];\n\n  var isFocused = state.isFocused,\n      isFileDialogActive = state.isFileDialogActive;\n  var fsAccessApiWorksRef = useRef(typeof window !== \"undefined\" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on\n\n  var onWindowFocus = function onWindowFocus() {\n    // Execute the timeout only if the file dialog is opened in the browser\n    if (!fsAccessApiWorksRef.current && isFileDialogActive) {\n      setTimeout(function () {\n        if (inputRef.current) {\n          var files = inputRef.current.files;\n\n          if (!files.length) {\n            dispatch({\n              type: \"closeDialog\"\n            });\n            onFileDialogCancelCb();\n          }\n        }\n      }, 300);\n    }\n  };\n\n  useEffect(function () {\n    window.addEventListener(\"focus\", onWindowFocus, false);\n    return function () {\n      window.removeEventListener(\"focus\", onWindowFocus, false);\n    };\n  }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);\n  var dragTargetsRef = useRef([]);\n\n  var onDocumentDrop = function onDocumentDrop(event) {\n    if (rootRef.current && rootRef.current.contains(event.target)) {\n      // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n      return;\n    }\n\n    event.preventDefault();\n    dragTargetsRef.current = [];\n  };\n\n  useEffect(function () {\n    if (preventDropOnDocument) {\n      document.addEventListener(\"dragover\", onDocumentDragOver, false);\n      document.addEventListener(\"drop\", onDocumentDrop, false);\n    }\n\n    return function () {\n      if (preventDropOnDocument) {\n        document.removeEventListener(\"dragover\", onDocumentDragOver);\n        document.removeEventListener(\"drop\", onDocumentDrop);\n      }\n    };\n  }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true\n\n  useEffect(function () {\n    if (!disabled && autoFocus && rootRef.current) {\n      rootRef.current.focus();\n    }\n\n    return function () {};\n  }, [rootRef, autoFocus, disabled]);\n  var onErrCb = useCallback(function (e) {\n    if (onError) {\n      onError(e);\n    } else {\n      // Let the user know something's gone wrong if they haven't provided the onError cb.\n      console.error(e);\n    }\n  }, [onError]);\n  var onDragEnterCb = useCallback(function (event) {\n    event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n    event.persist();\n    stopPropagation(event);\n    dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);\n\n    if (isEvtWithFiles(event)) {\n      Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n        if (isPropagationStopped(event) && !noDragEventsBubbling) {\n          return;\n        }\n\n        var fileCount = files.length;\n        var isDragAccept = fileCount > 0 && allFilesAccepted({\n          files: files,\n          accept: acceptAttr,\n          minSize: minSize,\n          maxSize: maxSize,\n          multiple: multiple,\n          maxFiles: maxFiles,\n          validator: validator\n        });\n        var isDragReject = fileCount > 0 && !isDragAccept;\n        dispatch({\n          isDragAccept: isDragAccept,\n          isDragReject: isDragReject,\n          isDragActive: true,\n          type: \"setDraggedFiles\"\n        });\n\n        if (onDragEnter) {\n          onDragEnter(event);\n        }\n      }).catch(function (e) {\n        return onErrCb(e);\n      });\n    }\n  }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);\n  var onDragOverCb = useCallback(function (event) {\n    event.preventDefault();\n    event.persist();\n    stopPropagation(event);\n    var hasFiles = isEvtWithFiles(event);\n\n    if (hasFiles && event.dataTransfer) {\n      try {\n        event.dataTransfer.dropEffect = \"copy\";\n      } catch (_unused) {}\n      /* eslint-disable-line no-empty */\n\n    }\n\n    if (hasFiles && onDragOver) {\n      onDragOver(event);\n    }\n\n    return false;\n  }, [onDragOver, noDragEventsBubbling]);\n  var onDragLeaveCb = useCallback(function (event) {\n    event.preventDefault();\n    event.persist();\n    stopPropagation(event); // Only deactivate once the dropzone and all children have been left\n\n    var targets = dragTargetsRef.current.filter(function (target) {\n      return rootRef.current && rootRef.current.contains(target);\n    }); // Make sure to remove a target present multiple times only once\n    // (Firefox may fire dragenter/dragleave multiple times on the same element)\n\n    var targetIdx = targets.indexOf(event.target);\n\n    if (targetIdx !== -1) {\n      targets.splice(targetIdx, 1);\n    }\n\n    dragTargetsRef.current = targets;\n\n    if (targets.length > 0) {\n      return;\n    }\n\n    dispatch({\n      type: \"setDraggedFiles\",\n      isDragActive: false,\n      isDragAccept: false,\n      isDragReject: false\n    });\n\n    if (isEvtWithFiles(event) && onDragLeave) {\n      onDragLeave(event);\n    }\n  }, [rootRef, onDragLeave, noDragEventsBubbling]);\n  var setFiles = useCallback(function (files, event) {\n    var acceptedFiles = [];\n    var fileRejections = [];\n    files.forEach(function (file) {\n      var _fileAccepted = fileAccepted(file, acceptAttr),\n          _fileAccepted2 = _slicedToArray(_fileAccepted, 2),\n          accepted = _fileAccepted2[0],\n          acceptError = _fileAccepted2[1];\n\n      var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n          _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),\n          sizeMatch = _fileMatchSize2[0],\n          sizeError = _fileMatchSize2[1];\n\n      var customErrors = validator ? validator(file) : null;\n\n      if (accepted && sizeMatch && !customErrors) {\n        acceptedFiles.push(file);\n      } else {\n        var errors = [acceptError, sizeError];\n\n        if (customErrors) {\n          errors = errors.concat(customErrors);\n        }\n\n        fileRejections.push({\n          file: file,\n          errors: errors.filter(function (e) {\n            return e;\n          })\n        });\n      }\n    });\n\n    if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {\n      // Reject everything and empty accepted files\n      acceptedFiles.forEach(function (file) {\n        fileRejections.push({\n          file: file,\n          errors: [TOO_MANY_FILES_REJECTION]\n        });\n      });\n      acceptedFiles.splice(0);\n    }\n\n    dispatch({\n      acceptedFiles: acceptedFiles,\n      fileRejections: fileRejections,\n      isDragReject: fileRejections.length > 0,\n      type: \"setFiles\"\n    });\n\n    if (onDrop) {\n      onDrop(acceptedFiles, fileRejections, event);\n    }\n\n    if (fileRejections.length > 0 && onDropRejected) {\n      onDropRejected(fileRejections, event);\n    }\n\n    if (acceptedFiles.length > 0 && onDropAccepted) {\n      onDropAccepted(acceptedFiles, event);\n    }\n  }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);\n  var onDropCb = useCallback(function (event) {\n    event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n    event.persist();\n    stopPropagation(event);\n    dragTargetsRef.current = [];\n\n    if (isEvtWithFiles(event)) {\n      Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n        if (isPropagationStopped(event) && !noDragEventsBubbling) {\n          return;\n        }\n\n        setFiles(files, event);\n      }).catch(function (e) {\n        return onErrCb(e);\n      });\n    }\n\n    dispatch({\n      type: \"reset\"\n    });\n  }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically\n\n  var openFileDialog = useCallback(function () {\n    // No point to use FS access APIs if context is not secure\n    // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection\n    if (fsAccessApiWorksRef.current) {\n      dispatch({\n        type: \"openDialog\"\n      });\n      onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n\n      var opts = {\n        multiple: multiple,\n        types: pickerTypes\n      };\n      window.showOpenFilePicker(opts).then(function (handles) {\n        return getFilesFromEvent(handles);\n      }).then(function (files) {\n        setFiles(files, null);\n        dispatch({\n          type: \"closeDialog\"\n        });\n      }).catch(function (e) {\n        // AbortError means the user canceled\n        if (isAbort(e)) {\n          onFileDialogCancelCb(e);\n          dispatch({\n            type: \"closeDialog\"\n          });\n        } else if (isSecurityError(e)) {\n          fsAccessApiWorksRef.current = false; // CORS, so cannot use this API\n          // Try using the input\n\n          if (inputRef.current) {\n            inputRef.current.value = null;\n            inputRef.current.click();\n          } else {\n            onErrCb(new Error(\"Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.\"));\n          }\n        } else {\n          onErrCb(e);\n        }\n      });\n      return;\n    }\n\n    if (inputRef.current) {\n      dispatch({\n        type: \"openDialog\"\n      });\n      onFileDialogOpenCb();\n      inputRef.current.value = null;\n      inputRef.current.click();\n    }\n  }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone\n\n  var onKeyDownCb = useCallback(function (event) {\n    // Ignore keyboard events bubbling up the DOM tree\n    if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {\n      return;\n    }\n\n    if (event.key === \" \" || event.key === \"Enter\" || event.keyCode === 32 || event.keyCode === 13) {\n      event.preventDefault();\n      openFileDialog();\n    }\n  }, [rootRef, openFileDialog]); // Update focus state for the dropzone\n\n  var onFocusCb = useCallback(function () {\n    dispatch({\n      type: \"focus\"\n    });\n  }, []);\n  var onBlurCb = useCallback(function () {\n    dispatch({\n      type: \"blur\"\n    });\n  }, []); // Cb to open the file dialog when click occurs on the dropzone\n\n  var onClickCb = useCallback(function () {\n    if (noClick) {\n      return;\n    } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()\n    // to ensure React can handle state changes\n    // See: https://github.com/react-dropzone/react-dropzone/issues/450\n\n\n    if (isIeOrEdge()) {\n      setTimeout(openFileDialog, 0);\n    } else {\n      openFileDialog();\n    }\n  }, [noClick, openFileDialog]);\n\n  var composeHandler = function composeHandler(fn) {\n    return disabled ? null : fn;\n  };\n\n  var composeKeyboardHandler = function composeKeyboardHandler(fn) {\n    return noKeyboard ? null : composeHandler(fn);\n  };\n\n  var composeDragHandler = function composeDragHandler(fn) {\n    return noDrag ? null : composeHandler(fn);\n  };\n\n  var stopPropagation = function stopPropagation(event) {\n    if (noDragEventsBubbling) {\n      event.stopPropagation();\n    }\n  };\n\n  var getRootProps = useMemo(function () {\n    return function () {\n      var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n          _ref2$refKey = _ref2.refKey,\n          refKey = _ref2$refKey === void 0 ? \"ref\" : _ref2$refKey,\n          role = _ref2.role,\n          onKeyDown = _ref2.onKeyDown,\n          onFocus = _ref2.onFocus,\n          onBlur = _ref2.onBlur,\n          onClick = _ref2.onClick,\n          onDragEnter = _ref2.onDragEnter,\n          onDragOver = _ref2.onDragOver,\n          onDragLeave = _ref2.onDragLeave,\n          onDrop = _ref2.onDrop,\n          rest = _objectWithoutProperties(_ref2, _excluded3);\n\n      return _objectSpread(_objectSpread(_defineProperty({\n        onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),\n        onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),\n        onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),\n        onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),\n        onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),\n        onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),\n        onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),\n        onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),\n        role: typeof role === \"string\" && role !== \"\" ? role : \"presentation\"\n      }, refKey, rootRef), !disabled && !noKeyboard ? {\n        tabIndex: 0\n      } : {}), rest);\n    };\n  }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);\n  var onInputElementClick = useCallback(function (event) {\n    event.stopPropagation();\n  }, []);\n  var getInputProps = useMemo(function () {\n    return function () {\n      var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n          _ref3$refKey = _ref3.refKey,\n          refKey = _ref3$refKey === void 0 ? \"ref\" : _ref3$refKey,\n          onChange = _ref3.onChange,\n          onClick = _ref3.onClick,\n          rest = _objectWithoutProperties(_ref3, _excluded4);\n\n      var inputProps = _defineProperty({\n        accept: acceptAttr,\n        multiple: multiple,\n        type: \"file\",\n        style: {\n          border: 0,\n          clip: \"rect(0, 0, 0, 0)\",\n          clipPath: \"inset(50%)\",\n          height: \"1px\",\n          margin: \"0 -1px -1px 0\",\n          overflow: \"hidden\",\n          padding: 0,\n          position: \"absolute\",\n          width: \"1px\",\n          whiteSpace: \"nowrap\"\n        },\n        onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),\n        onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),\n        tabIndex: -1\n      }, refKey, inputRef);\n\n      return _objectSpread(_objectSpread({}, inputProps), rest);\n    };\n  }, [inputRef, accept, multiple, onDropCb, disabled]);\n  return _objectSpread(_objectSpread({}, state), {}, {\n    isFocused: isFocused && !disabled,\n    getRootProps: getRootProps,\n    getInputProps: getInputProps,\n    rootRef: rootRef,\n    inputRef: inputRef,\n    open: composeHandler(openFileDialog)\n  });\n}\n/**\n * @param {DropzoneState} state\n * @param {{type: string} & DropzoneState} action\n * @returns {DropzoneState}\n */\n\nfunction reducer(state, action) {\n  /* istanbul ignore next */\n  switch (action.type) {\n    case \"focus\":\n      return _objectSpread(_objectSpread({}, state), {}, {\n        isFocused: true\n      });\n\n    case \"blur\":\n      return _objectSpread(_objectSpread({}, state), {}, {\n        isFocused: false\n      });\n\n    case \"openDialog\":\n      return _objectSpread(_objectSpread({}, initialState), {}, {\n        isFileDialogActive: true\n      });\n\n    case \"closeDialog\":\n      return _objectSpread(_objectSpread({}, state), {}, {\n        isFileDialogActive: false\n      });\n\n    case \"setDraggedFiles\":\n      return _objectSpread(_objectSpread({}, state), {}, {\n        isDragActive: action.isDragActive,\n        isDragAccept: action.isDragAccept,\n        isDragReject: action.isDragReject\n      });\n\n    case \"setFiles\":\n      return _objectSpread(_objectSpread({}, state), {}, {\n        acceptedFiles: action.acceptedFiles,\n        fileRejections: action.fileRejections,\n        isDragReject: action.isDragReject\n      });\n\n    case \"reset\":\n      return _objectSpread({}, initialState);\n\n    default:\n      return state;\n  }\n}\n\nfunction noop() {}\n\nexport { ErrorCode } from \"./utils/index.js\";","/**\n * @see https://github.com/radix-ui/primitives/blob/main/packages/react/use-callback-ref/src/useCallbackRef.tsx\n */\n\nimport { useEffect, useMemo, useRef } from \"react\";\n\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nfunction useCallbackRef<T extends (...args: never[]) => unknown>(callback: T | undefined): T {\n\tconst callbackRef = useRef(callback);\n\n\tuseEffect(() => {\n\t\tcallbackRef.current = callback;\n\t});\n\n\t// https://github.com/facebook/react/issues/19240\n\treturn useMemo(() => ((...args) => callbackRef.current?.(...args)) as T, []);\n}\n\nexport { useCallbackRef };\n","import { useCallback, useEffect, useRef, useState } from \"react\";\nimport { useCallbackRef } from \"../examples/hooks/use-callback-ref\";\n\ntype UseControllableStateParams<T> = {\n\tprop?: T | undefined;\n\tdefaultProp?: T | undefined;\n\tonChange?: (state: T) => void;\n};\n\ntype SetStateFn<T> = (prevState?: T) => T;\n\nfunction useControllableState<T>({\n\tprop,\n\tdefaultProp,\n\tonChange = () => {},\n}: UseControllableStateParams<T>) {\n\tconst [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({\n\t\tdefaultProp,\n\t\tonChange,\n\t});\n\tconst isControlled = prop !== undefined;\n\tconst value = isControlled ? prop : uncontrolledProp;\n\tconst handleChange = useCallbackRef(onChange);\n\n\tconst setValue: React.Dispatch<React.SetStateAction<T | undefined>> = useCallback(\n\t\t(nextValue) => {\n\t\t\tif (isControlled) {\n\t\t\t\tconst setter = nextValue as SetStateFn<T>;\n\t\t\t\tconst value = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n\t\t\t\tif (value !== prop) handleChange(value as T);\n\t\t\t} else {\n\t\t\t\tsetUncontrolledProp(nextValue);\n\t\t\t}\n\t\t},\n\t\t[isControlled, prop, setUncontrolledProp, handleChange],\n\t);\n\n\treturn [value, setValue] as const;\n}\n\nfunction useUncontrolledState<T>({\n\tdefaultProp,\n\tonChange,\n}: Omit<UseControllableStateParams<T>, \"prop\">) {\n\tconst uncontrolledState = useState<T | undefined>(defaultProp);\n\tconst [value] = uncontrolledState;\n\tconst prevValueRef = useRef(value);\n\tconst handleChange = useCallbackRef(onChange);\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: <useEffect>\n\tuseEffect(() => {\n\t\tif (prevValueRef.current !== value) {\n\t\t\thandleChange(value as T);\n\t\t\tprevValueRef.current = value;\n\t\t}\n\t}, [value, prevValueRef, handleChange]);\n\n\treturn uncontrolledState;\n}\n\nexport { useControllableState };\n","\"use client\";\n\nimport { RotateCwIcon, UploadIcon, XIcon } from \"lucide-react\";\nimport React from \"react\";\nimport Dropzone, { type DropzoneProps, type FileError, type FileRejection } from \"react-dropzone\";\nimport { Button } from \"@/components/ui/button\";\nimport { Progress } from \"@/components/ui/progress\";\nimport { ScrollArea } from \"@/components/ui/scroll-area\";\nimport { useControllableState } from \"@/hooks/use-controllable-state\";\nimport { toast } from \"@/hooks/use-toast\";\nimport { cn, formatBytes } from \"@/lib/utils\";\n\nexport type FileErrorMessage = {\n\tfile: File;\n\tmessage: string;\n};\n\ninterface FileUploaderProps extends React.HTMLAttributes<HTMLDivElement> {\n\t/**\n\t * Valor atual do uploader.\n\t * @type File[]\n\t * @default undefined\n\t * @example value={files}\n\t */\n\tvalue?: File[];\n\n\t/**\n\t * Função chamada quando o valor muda.\n\t * @type (files: File[]) => void\n\t * @default undefined\n\t * @example onValueChange={(files) => setFiles(files)}\n\t */\n\tonValueChange?: (files: File[]) => void;\n\n\t/**\n\t * Função chamada ao realizar o upload dos arquivos.\n\t * @type (files: File[]) => Promise<void>\n\t * @default undefined\n\t * @example onUpload={(files) => uploadFiles(files)}\n\t */\n\tonUpload?: (files: File[]) => Promise<void>;\n\n\t/**\n\t * Progresso do upload de cada arquivo.\n\t * @type Record<string, number> | undefined\n\t * @default undefined\n\t * @example progresses={{ \"file1.png\": 50 }}\n\t */\n\tprogresses?: Record<string, number>;\n\n\t/**\n\t * Tipos de arquivos aceitos pelo uploader.\n\t * @type { [key: string]: string[] }\n\t * @default\n\t * ```ts\n\t * { \"image/*\": [] }\n\t * ```\n\t * @example accept={[\"image/png\", \"image/jpeg\"]}\n\t */\n\taccept?: DropzoneProps[\"accept\"];\n\n\t/**\n\t * Tamanho máximo permitido para cada arquivo (em bytes).\n\t * @type number | undefined\n\t * @default 1024 * 1024 * 2 // 2MB\n\t * @example maxSize={1024 * 1024 * 2} // 2MB\n\t */\n\tmaxSize?: DropzoneProps[\"maxSize\"];\n\n\t/**\n\t * Quantidade máxima de arquivos permitidos.\n\t * @type number | undefined\n\t * @default 1\n\t * @example maxFileCount={4}\n\t */\n\tmaxFileCount?: DropzoneProps[\"maxFiles\"];\n\n\t/**\n\t * Permite selecionar múltiplos arquivos.\n\t * @type boolean\n\t * @default false\n\t * @example multiple\n\t */\n\tmultiple?: boolean;\n\n\t/**\n\t * Desabilita o uploader.\n\t * @type boolean\n\t * @default false\n\t * @example disabled\n\t */\n\tdisabled?: boolean;\n\n\t/**\n\t * Função para personalizar a mensagem de erro ou executar ações quando arquivos forem rejeitados.\n\t * Pode retornar uma string para exibição ou void para efeitos colaterais (ex: toast).\n\t * @type ((errors: readonly FileError[]) => string | void) | undefined\n\t * @default undefined\n\t * @example onGetErrorMessage={(errors) => \"Arquivo inválido\"}\n\t * @example onGetErrorMessage={(errors) => toast({ title: \"Erro\", variant: \"destructive\" })}\n\t */\n\tonGetErrorMessage?: (errors: readonly FileError[]) => string | void;\n\n\t/**\n\t * Função chamada quando arquivos válidos são selecionados.\n\t * Deve retornar os arquivos que serão usados no estado.\n\t * @type (acceptedFiles: File[]) => File[]\n\t */\n\tonValidFile: (acceptedFiles: File[]) => File[];\n\n\t/**\n\t * Título exibido no componente.\n\t * @type string\n\t */\n\ttitle: string;\n\n\t/**\n\t * Descrição opcional exibida abaixo do título.\n\t * @type string | undefined\n\t */\n\tdescription?: string;\n\n\t/**\n\t * Exibe visualização dos arquivos selecionados (quando aplicável).\n\t * @type boolean | undefined\n\t * @default false\n\t */\n\tpreviewFiles?: boolean;\n\n\t/**\n\t * Indica se o uploader está em estado de carregamento.\n\t * @type boolean | undefined\n\t * @default false\n\t */\n\tisLoading?: boolean;\n\n\t/**\n\t * Lista de erros de arquivo para exibição personalizada.\n\t * @type FileErrorMessage[]\n\t */\n\tfileErrors: FileErrorMessage[];\n\n\t/**\n\t * Função para atualizar a lista de erros de arquivo.\n\t * @type React.Dispatch<React.SetStateAction<FileErrorMessage[]>>\n\t */\n\tsetFileErrors: React.Dispatch<React.SetStateAction<FileErrorMessage[]>>;\n\n\t/**\n\t * Tipo de arquivo exibido no texto de instrução (ex: \"XML\", \"CSV\").\n\t * @default undefined\n\t * @example fileType=\"XML\"\n\t */\n\tfileType?: string;\n}\nexport function FileUploader(props: FileUploaderProps) {\n\tconst {\n\t\tvalue: valueProp,\n\t\tonValueChange,\n\t\tonUpload,\n\t\tprogresses,\n\t\taccept = {\n\t\t\t\"image/*\": [],\n\t\t},\n\t\tmaxSize = 2 * 1024 * 1024,\n\t\tmaxFileCount = 1,\n\t\tmultiple = false,\n\t\tdisabled = false,\n\t\tclassName,\n\t\tonGetErrorMessage,\n\t\tonValidFile,\n\t\ttitle,\n\t\tfileErrors,\n\t\tsetFileErrors,\n\t\tdescription,\n\t\tpreviewFiles = true,\n\t\tisLoading = false,\n\t\tid,\n\t\tfileType,\n\t\t...dropzoneProps\n\t} = props;\n\n\tconst [files, setFiles] = useControllableState({\n\t\tprop: valueProp,\n\t\tonChange: onValueChange,\n\t});\n\n\tconst fileLabelMap: Record<string, string> = {\n\t\txml: \"XML\",\n\t\tcsv: \"CSV\",\n\t\tpdf: \"PDF\",\n\t\timg: \"imagem\",\n\t};\n\n\tconst fileLabel =\n\t\tfileType && fileLabelMap[fileType.toLowerCase()]\n\t\t\t? fileLabelMap[fileType.toLowerCase()]\n\t\t\t: fileType || \"\";\n\n\t// biome-ignore lint/correctness/useExhaustiveDependencies: <useExhaustiveDependencies>\n\tconst onDrop = React.useCallback(\n\t\t(acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n\t\t\tconst totalFilesCount = (files?.length ?? 0) + acceptedFiles.length;\n\t\t\tconst textErrorMaxFile = `Não é possível fazer upload com mais de ${maxFileCount} arquivos`;\n\n\t\t\tif (totalFilesCount > maxFileCount) {\n\t\t\t\ttoast({\n\t\t\t\t\tvariant: \"destructive\",\n\t\t\t\t\ttitle: textErrorMaxFile,\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst validFiles = onValidFile(acceptedFiles);\n\t\t\tconst updatedFiles = files ? [...files, ...validFiles] : validFiles;\n\t\t\tsetFiles(updatedFiles);\n\n\t\t\tif (rejectedFiles.length > 0) {\n\t\t\t\tfor (const { errors } of rejectedFiles) {\n\t\t\t\t\tif (onGetErrorMessage) {\n\t\t\t\t\t\tconst result = onGetErrorMessage(errors);\n\t\t\t\t\t\tif (typeof result === \"string\") {\n\t\t\t\t\t\t\ttoast({\n\t\t\t\t\t\t\t\ttitle: \"Erro ao enviar o arquivo.\",\n\t\t\t\t\t\t\t\tdescription: result,\n\t\t\t\t\t\t\t\tvariant: \"destructive\",\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttoast({\n\t\t\t\t\t\t\ttitle: \"Erro ao enviar o arquivo.\",\n\t\t\t\t\t\t\tdescription: \"Ocorreu um erro ao processar o arquivo.\",\n\t\t\t\t\t\t\tvariant: \"destructive\",\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (onUpload && updatedFiles.length > 0) {\n\t\t\t\t// Lógica de upload de arquivos, se necessário\n\t\t\t}\n\t\t},\n\t\t[files, maxFileCount, maxSize, onUpload, setFiles, onValidFile],\n\t);\n\tfunction onRemove(index: number) {\n\t\tif (!files) return;\n\n\t\tconst fileToRemove = files[index];\n\t\tconst newFiles = files.filter((_, i) => i !== index);\n\t\tsetFiles(newFiles);\n\t\tonValueChange?.(newFiles);\n\n\t\tsetFileErrors((prevErrors) =>\n\t\t\tprevErrors.filter((error) => error.file.name !== fileToRemove.name),\n\t\t);\n\t}\n\n\tconst isDisabled = disabled || (files?.length ?? 0) >= maxFileCount || isLoading;\n\n\treturn (\n\t\t<div className=\"relative flex flex-col gap-6 overflow-hidden p-2 sm:p-4\">\n\t\t\t<Dropzone\n\t\t\t\tonDrop={onDrop}\n\t\t\t\taccept={accept}\n\t\t\t\tmaxSize={maxSize}\n\t\t\t\tmaxFiles={maxFileCount}\n\t\t\t\tmultiple={maxFileCount > 1 || multiple}\n\t\t\t\tdisabled={isDisabled}\n\t\t\t>\n\t\t\t\t{({ getRootProps, getInputProps, isDragActive }) => (\n\t\t\t\t\t<div\n\t\t\t\t\t\t{...getRootProps()}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"group border-muted-foreground/25 hover:bg-muted/25 relative grid h-52 w-full cursor-pointer place-items-center rounded-lg border-2 border-dashed px-5 py-2.5 text-center transition\",\n\t\t\t\t\t\t\t\"ring-offset-background focus-visible:ring-ring focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none\",\n\t\t\t\t\t\t\tisDragActive && \"border-muted-foreground/50\",\n\t\t\t\t\t\t\tisDisabled && \"pointer-events-none opacity-60\",\n\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{...dropzoneProps}\n\t\t\t\t\t>\n\t\t\t\t\t\t<input id={id} {...getInputProps()} />\n\t\t\t\t\t\t{isDragActive ? (\n\t\t\t\t\t\t\t<div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n\t\t\t\t\t\t\t\t<div className=\"rounded-md border p-2.5\">\n\t\t\t\t\t\t\t\t\t<UploadIcon className=\"size-4\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div className=\"flex flex-col gap-1 text-center\">\n\t\t\t\t\t\t\t\t\t<p className=\"text-lg font-bold md:text-xl\">\n\t\t\t\t\t\t\t\t\t\tArraste e solte seu{multiple ? \"s\" : \"\"}{\" \"}\n\t\t\t\t\t\t\t\t\t\t{fileLabel\n\t\t\t\t\t\t\t\t\t\t\t? `arquivo${multiple ? \"s\" : \"\"} ${fileLabel}`\n\t\t\t\t\t\t\t\t\t\t\t: `arquivo${multiple ? \"s\" : \"\"}`}{\" \"}\n\t\t\t\t\t\t\t\t\t\taqui\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<p className=\"text-foreground/70 text-sm md:text-base\">ou clique para procurar</p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<div className=\"flex flex-col items-center justify-center gap-4 sm:px-5\">\n\t\t\t\t\t\t\t\t<div className=\"rounded-md border p-2.5\">\n\t\t\t\t\t\t\t\t\t{isLoading ? (\n\t\t\t\t\t\t\t\t\t\t<RotateCwIcon className=\"size-4 animate-spin\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<UploadIcon className=\"size-4\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div className=\"flex flex-col gap-1 text-center\">\n\t\t\t\t\t\t\t\t\t<p className=\"text-lg font-bold md:text-xl\">\n\t\t\t\t\t\t\t\t\t\t{isLoading ? \"Carregando arquivo(s)...\" : title}\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<p className=\"text-foreground/70 text-sm md:text-base\">\n\t\t\t\t\t\t\t\t\t\t{description ? (\n\t\t\t\t\t\t\t\t\t\t\tdescription\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\tFaça upload no máximo com\n\t\t\t\t\t\t\t\t\t\t\t\t{maxFileCount > 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t? ` ${maxFileCount === Number.POSITIVE_INFINITY ? \"multiple\" : maxFileCount}\n              arquivos (de até ${formatBytes(maxSize)})`\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ` um arquivo com ${formatBytes(maxSize)}`}\n\t\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</Dropzone>\n\t\t\t{previewFiles && files?.length ? (\n\t\t\t\t<ScrollArea className=\"h-fit w-full px-3\">\n\t\t\t\t\t<div className=\"flex max-h-48 flex-col gap-4\">\n\t\t\t\t\t\t{files?.map((file, index: number) => (\n\t\t\t\t\t\t\t<FileCard\n\t\t\t\t\t\t\t\tkey={`${index}_${file.name}`}\n\t\t\t\t\t\t\t\tfile={file}\n\t\t\t\t\t\t\t\tonRemove={() => onRemove(index)}\n\t\t\t\t\t\t\t\tprogress={progresses?.[file.name]}\n\t\t\t\t\t\t\t\terrorMessage={fileErrors.find((error) => error.file.name === file.name)?.message}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t</ScrollArea>\n\t\t\t) : null}\n\t\t</div>\n\t);\n}\n\ninterface FileCardProps {\n\tfile: File;\n\tonRemove: () => void;\n\tprogress?: number;\n\terrorMessage?: string;\n}\n\nfunction FileCard({ file, progress, onRemove, errorMessage }: FileCardProps) {\n\treturn (\n\t\t<div className=\"relative flex items-center gap-2.5\">\n\t\t\t<div className=\"flex flex-1 gap-2.5\">\n\t\t\t\t<div className=\"flex w-full flex-col gap-2\">\n\t\t\t\t\t<div className=\"flex flex-col gap-px\">\n\t\t\t\t\t\t<p className=\"text-foreground/80 line-clamp-1 text-sm font-medium\">{file.name}</p>\n\t\t\t\t\t\t<p className=\"text-muted-foreground text-xs\">{formatBytes(file.size)}</p>\n\t\t\t\t\t\t{errorMessage && <p className=\"text-destructive text-xs\">{errorMessage}</p>}\n\t\t\t\t\t</div>\n\t\t\t\t\t{progress ? <Progress value={progress} /> : null}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div className=\"flex items-center gap-2\">\n\t\t\t\t<Button type=\"button\" variant=\"outline\" size=\"icon\" className=\"size-4\" onClick={onRemove}>\n\t\t\t\t\t<XIcon className=\"size-4\" aria-hidden=\"true\" />\n\t\t\t\t\t<span className=\"sr-only\">Remover arquivo</span>\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"names":["b","Symbol","for","c","d","e","f","g","h","k","l","m","n","p","q","r","t","v","w","x","y","z","a","u","$$typeof","type","A","reactIs_production_min","AsyncMode","ConcurrentMode","ContextConsumer","Element","ForwardRef","Fragment","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","process","env","NODE_ENV","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","object","$$typeofType","undefined","ContextProvider","Memo","hasWarnedAboutDeprecatedIsAsyncMode","console","isPortal","reactIs_development","reactIsModule","exports","require$$0","require$$1","getOwnPropertySymbols","Object","hasOwnProperty","prototype","propIsEnumerable","propertyIsEnumerable","toObject","val","TypeError","shouldUseNative","assign","test1","String","getOwnPropertyNames","test2","i","fromCharCode","order2","map","join","test3","split","forEach","letter","keys","err","objectAssign","target","source","from","to","symbols","s","arguments","length","key","call","ReactPropTypesSecret","ReactPropTypesSecret_1","has","Function","bind","printWarning","loggedTypeFailures","text","message","error","Error","checkPropTypes","typeSpecs","values","location","componentName","getStack","typeSpecName","name","ex","stack","resetWarningCache","checkPropTypes_1","ReactIs","require$$2","require$$3","require$$4","emptyFunctionThatReturnsNull","factoryWithTypeCheckers","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","iterator","FAUX_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","iteratorFn","ANONYMOUS","ReactPropTypes","array","createPrimitiveTypeChecker","bigint","bool","func","number","string","symbol","any","createAnyTypeChecker","arrayOf","createArrayOfTypeChecker","element","createElementTypeChecker","elementType","createElementTypeTypeChecker","instanceOf","createInstanceTypeChecker","node","createNodeChecker","objectOf","createObjectOfTypeChecker","oneOf","createEnumTypeChecker","oneOfType","createUnionTypeChecker","shape","createShapeTypeChecker","exact","createStrictShapeTypeChecker","is","PropTypeError","data","createChainableTypeChecker","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","isRequired","props","propName","propFullName","secret","cacheKey","chainedCheckType","expectedType","propValue","propType","getPropType","preciseType","getPreciseType","typeChecker","Array","isArray","expectedClass","expectedClassName","actualClassName","getClassName","expectedValues","valuesString","JSON","stringify","replacer","value","arrayOfTypeCheckers","checker","getPostfixForTypeWarning","expectedTypes","checkerResult","push","expectedTypesMessage","isNode","invalidValidatorError","shapeTypes","allKeys","every","step","entries","next","done","entry","isSymbol","RegExp","Date","PropTypes","emptyFunction","emptyFunctionWithReset","factoryWithThrowingShims","shim","getShim","propTypesModule","es","default","file","acceptedFiles","acceptedFilesArray","fileName","mimeType","toLowerCase","baseMimeType","replace","some","validType","trim","charAt","endsWith","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","_arrayLikeToArray","ownKeys","enumerableOnly","filter","sym","getOwnPropertyDescriptor","enumerable","apply","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","toString","slice","test","len","arr2","_i","_arr","_n","_d","_s","_e","accepts","_accepts","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","getInvalidTypeRejectionErr","accept","acceptArr","msg","concat","code","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","TOO_MANY_FILES_REJECTION","fileAccepted","isAcceptable","fileMatchSize","isDefined","size","allFilesAccepted","_ref","files","multiple","maxFiles","validator","_fileAccepted","_fileAccepted2","accepted","_fileMatchSize","_fileMatchSize2","sizeMatch","customErrors","isPropagationStopped","event","cancelBubble","isEvtWithFiles","dataTransfer","types","onDocumentDragOver","preventDefault","isIe","userAgent","indexOf","isEdge","isIeOrEdge","window","navigator","composeEventHandlers","_len","fns","_key","_len2","args","_key2","fn","canUseFileSystemAccessAPI","pickerOptionsFromAccept","acceptForPicker","_ref2","_ref3","ext","ok","isMIMEType","warn","isExt","reduce","agg","_ref4","_ref5","description","acceptPropAsAcceptAttr","_ref6","_ref7","isAbort","DOMException","ABORT_ERR","isSecurityError","SECURITY_ERR","_excluded","_excluded2","_excluded3","_excluded4","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","sourceKeys","Dropzone","forwardRef","ref","children","params","_useDropzone","useDropzone","open","useImperativeHandle","React","createElement","displayName","defaultProps","disabled","getFilesFromEvent","fromEvent","Infinity","preventDropOnDocument","noClick","noKeyboard","noDrag","noDragEventsBubbling","useFsAccessApi","autoFocus","propTypes","onFileDialogCancel","onFileDialogOpen","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onError","initialState","isFocused","isFileDialogActive","isDragActive","isDragAccept","isDragReject","fileRejections","_defaultProps$props","acceptAttr","useMemo","pickerTypes","onFileDialogOpenCb","noop","onFileDialogCancelCb","rootRef","useRef","inputRef","_useReducer","useReducer","reducer","_useReducer2","state","dispatch","fsAccessApiWorksRef","isSecureContext","onWindowFocus","current","setTimeout","useEffect","addEventListener","removeEventListener","dragTargetsRef","onDocumentDrop","contains","document","focus","onErrCb","useCallback","onDragEnterCb","persist","stopPropagation","Promise","resolve","then","fileCount","catch","onDragOverCb","hasFiles","dropEffect","_unused","onDragLeaveCb","targets","targetIdx","splice","setFiles","acceptError","sizeError","errors","onDropCb","openFileDialog","opts","showOpenFilePicker","handles","click","onKeyDownCb","isEqualNode","keyCode","onFocusCb","onBlurCb","onClickCb","composeHandler","composeKeyboardHandler","composeDragHandler","getRootProps","_ref2$refKey","refKey","role","onKeyDown","onFocus","onBlur","onClick","rest","tabIndex","onInputElementClick","getInputProps","_ref3$refKey","onChange","inputProps","style","border","clip","clipPath","height","margin","overflow","padding","position","width","whiteSpace","action","useCallbackRef","callback","callbackRef","useControllableState","prop","defaultProp","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","handleChange","setValue","nextValue","setter","uncontrolledState","useState","prevValueRef","FileUploader","valueProp","onValueChange","onUpload","progresses","maxFileCount","className","onGetErrorMessage","onValidFile","title","fileErrors","setFileErrors","previewFiles","isLoading","id","fileType","dropzoneProps","fileLabelMap","xml","csv","pdf","img","fileLabel","rejectedFiles","totalFilesCount","textErrorMaxFile","toast","variant","validFiles","updatedFiles","result","onRemove","index","fileToRemove","newFiles","_","prevErrors","isDisabled","div","cn","input","UploadIcon","aria-hidden","RotateCwIcon","Number","POSITIVE_INFINITY","formatBytes","ScrollArea","FileCard","progress","errorMessage","find","Progress","Button","XIcon","span"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]}