{"version":3,"sources":["jsdelivr-header.js","/npm/react-tiff@0.0.14/node_modules/react-is/cjs/react-is.production.min.js","/npm/react-tiff@0.0.14/node_modules/react-is/cjs/react-is.development.js","/npm/react-tiff@0.0.14/node_modules/react-is/index.js","/npm/react-tiff@0.0.14/node_modules/object-assign/index.js","/npm/react-tiff@0.0.14/node_modules/prop-types/lib/ReactPropTypesSecret.js","/npm/react-tiff@0.0.14/node_modules/prop-types/lib/has.js","/npm/react-tiff@0.0.14/node_modules/prop-types/checkPropTypes.js","/npm/react-tiff@0.0.14/node_modules/prop-types/factoryWithTypeCheckers.js","/npm/react-tiff@0.0.14/node_modules/prop-types/factoryWithThrowingShims.js","/npm/react-tiff@0.0.14/node_modules/prop-types/index.js","/npm/react-tiff@0.0.14/src/index.js"],"names":[],"mappings":"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","file":"/npm/react-tiff@0.0.14/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/react-tiff@0.0.14/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\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","import React, { forwardRef, useEffect } from 'react'\nimport styles from './styles.module.css'\nimport UTIF from 'utif'\nimport axios from 'axios'\nimport i18n from 'i18next'\nimport { useTranslation, initReactI18next } from 'react-i18next'\nimport PropTypes from 'prop-types'\n\ni18n.use(initReactI18next).init({\n  resources: {\n    en: {\n      translation: {\n        Next: 'Next',\n        Previous: 'Previous',\n        'Page of total': 'Page {{page}} of {{total}}'\n      }\n    },\n    tr: {\n      translation: {\n        Next: 'Sonraki',\n        Previous: 'Önceki',\n        'Page of total': '{{ page }}. sayfa / {{ total }}'\n      }\n    },\n    de: {\n      translation: {\n        Next: 'Nächste',\n        Previous: 'Vorherige',\n        'Page of total': 'Seite {{page}} von {{total}}'\n      }\n    },\n    fr: {\n      translation: {\n        Next: 'Suivant',\n        Previous: 'Précédent',\n        'Page of total': 'Page {{page}} sur {{total}}'\n      }\n    },\n    es: {\n      translation: {\n        Next: 'Siguiente',\n        Previous: 'Anterior',\n        'Page of total': 'Página {{page}} de {{total}}'\n      }\n    },\n    ja: {\n      translation: {\n        Next: '次へ',\n        Previous: '前へ',\n        'Page of total': '{{page}} / {{total}} ページ'\n      }\n    },\n    zh: {\n      translation: {\n        Next: '下一页',\n        Previous: '上一页',\n        'Page of total': '第 {{page}} 页，共 {{total}} 页'\n      }\n    },\n    ru: {\n      translation: {\n        Next: 'Следующий',\n        Previous: 'Предыдущий',\n        'Page of total': 'Страница {{page}} из {{total}}'\n      }\n    },\n    ar: {\n      translation: {\n        Next: 'التالى',\n        Previous: 'سابق',\n        'Page of total': 'صفحة {{page}} من {{total}}'\n      }\n    },\n    hi: {\n      translation: {\n        Next: 'अगला',\n        Previous: 'पिछला',\n        'Page of total': 'पृष्ठ {{page}} का {{total}}'\n      }\n    }\n  },\n  lng: 'tr',\n  fallbackLng: 'en',\n\n  interpolation: {\n    escapeValue: false\n  }\n})\n\nexport const TIFFViewer = forwardRef(function TiffFileViewer(\n  {\n    tiff,\n    lang = 'en',\n    paginate = 'bottom',\n    currentPage = 0,\n    buttonColor = '#141414',\n    onDocumentLoad = () => {},\n    printable = false,\n    zoomable = false,\n    ...rest\n  },\n  ref\n) {\n  const { t, i18n } = useTranslation()\n\n  // states\n  const [_tiff] = React.useState(tiff)\n  const [, setTiffs] = React.useState([])\n  const [pages, setPages] = React.useState([])\n  const [page, setPage] = React.useState(0)\n\n  // refs\n  const canvasRef = React.useRef(null)\n  const btnPrintRef = React.useRef(null)\n  const btnZoomInRef = React.useRef(null)\n  const btnZoomOutRef = React.useRef(null)\n  const paginateLTRRef = React.useRef(null)\n  const paginateBottomRef = React.useRef(null)\n\n  function imgLoaded(e) {\n    var ifds = UTIF.decode(e.target.response)\n    const _tiffs = ifds.map(function (ifd, index) {\n      UTIF.decodeImage(e.target.response, ifd)\n      var rgba = UTIF.toRGBA8(ifd)\n      var canvas = document.createElement('canvas')\n      canvas.width = ifd.width\n      canvas.height = ifd.height\n      var ctx = canvas.getContext('2d')\n      var img = ctx.createImageData(ifd.width, ifd.height)\n      img.data.set(rgba)\n      ctx.putImageData(img, 0, 0)\n      if (index === 0)\n        document.getElementById('tiff-inner-container').appendChild(canvas)\n      return canvas\n    })\n    setPages(_tiffs)\n    setTiffs(_tiffs)\n    onDocumentLoad(pages)\n  }\n\n  async function displayTIFF(tiffUrl) {\n    const response = await axios.get(tiffUrl, {\n      responseType: 'arraybuffer'\n    })\n    imgLoaded({ target: { response: response.data } })\n  }\n\n  React.useEffect(() => {\n    if (currentPage >= 0 && currentPage < pages.length) {\n      setPage(currentPage)\n    }\n  }, [currentPage])\n\n  const handlePreviousClick = () => {\n    if (page > 0) {\n      setPage(page - 1)\n    }\n  }\n\n  const handleNextClick = () => {\n    if (page < pages.length - 1) {\n      setPage(page + 1)\n    }\n  }\n\n  const handlePrintClick = () => {\n    try {\n      if (printable) {\n        btnPrintRef.current.style.visibility = 'hidden'\n        btnZoomInRef.current.style.visibility = 'hidden'\n        btnZoomOutRef.current.style.visibility = 'hidden'\n      }\n\n      if (paginateLTRRef.current)\n        paginateLTRRef.current.style.visibility = 'hidden'\n\n      if (paginateBottomRef.current)\n        paginateBottomRef.current.style.visibility = 'hidden'\n\n      // all page window.print\n      if (pages.length > 1) {\n        pages.forEach((page, index) => {\n          if (index > 0) {\n            canvasRef.current.style.display = 'block'\n            canvasRef.current.appendChild(page)\n          }\n        })\n        // print\n        window.print()\n\n        // remove all pages\n        pages.forEach((page, index) => {\n          if (index > 0) {\n            canvasRef.current.removeChild(page)\n          } else {\n            canvasRef.current.style.display = 'flex'\n          }\n        })\n      } else {\n        window.print()\n      }\n    } catch (error) {\n      console.error('Error')\n    } finally {\n      if (printable) {\n        btnPrintRef.current.style.visibility = 'visible'\n        btnZoomInRef.current.style.visibility = 'visible'\n        btnZoomOutRef.current.style.visibility = 'visible'\n      }\n\n      if (paginateLTRRef.current)\n        paginateLTRRef.current.style.visibility = 'visible'\n\n      if (paginateBottomRef.current) {\n        paginateBottomRef.current.style.visibility = 'visible'\n      }\n    }\n  }\n\n  const handleZoomInClick = () => {\n    const canvas = canvasRef.current\n    const currentWidth = canvas.clientWidth\n    const currentHeight = canvas.clientHeight\n    canvas.style.width = currentWidth + 100 + 'px'\n    canvas.style.height = currentHeight + 100 + 'px'\n  }\n\n  const handleZoomOutClick = () => {\n    const canvas = canvasRef.current\n    const currentWidth = canvas.clientWidth\n    const currentHeight = canvas.clientHeight\n    canvas.style.width = currentWidth - 100 + 'px'\n    canvas.style.height = currentHeight - 100 + 'px'\n  }\n\n  useEffect(() => {\n    displayTIFF(_tiff)\n  }, [_tiff])\n\n  useEffect(() => {\n    if (pages.length > 0) {\n      canvasRef.current.innerHTML = ''\n      canvasRef.current.appendChild(pages[page])\n    }\n  }, [page, pages])\n\n  useEffect(() => {\n    i18n.changeLanguage(lang)\n  }, [lang])\n\n  // ref all page print\n  React.useImperativeHandle(ref, () => ({\n    context: () => {\n      pages.forEach((page, index) => {\n        if (index > 0) {\n          canvasRef.current.style.display = 'block'\n          canvasRef.current.appendChild(page)\n        }\n      })\n      return canvasRef.current\n    }\n  }))\n\n  return (\n    <div\n      className={styles.tiffContainer}\n      id='tiff-container'\n      ref={ref}\n      {...rest}\n    >\n      {printable || zoomable ? (\n        <div className={styles.tiffButtons}>\n          {zoomable && (\n            <div>\n              <button\n                id='btn-zoom-in'\n                className={styles.tiffBtnZoom}\n                type='button'\n                onClick={handleZoomInClick}\n                ref={btnZoomInRef}\n              >\n                <svg\n                  xmlns='http://www.w3.org/2000/svg'\n                  fill='none'\n                  viewBox='0 0 24 24'\n                  stroke='currentColor'\n                  className='w-6 h-6'\n                >\n                  <path d='M15.853 16.56c-1.683 1.517-3.911 2.44-6.353 2.44-5.243 0-9.5-4.257-9.5-9.5s4.257-9.5 9.5-9.5 9.5 4.257 9.5 9.5c0 2.442-.923 4.67-2.44 6.353l7.44 7.44-.707.707-7.44-7.44zm-6.353-15.56c4.691 0 8.5 3.809 8.5 8.5s-3.809 8.5-8.5 8.5-8.5-3.809-8.5-8.5 3.809-8.5 8.5-8.5zm-4.5 8h4v-4h1v4h4v1h-4v4h-1v-4h-4v-1z' />\n                </svg>\n              </button>\n              <button\n                id='btn-zoom-out'\n                className={styles.tiffBtnZoom}\n                type='button'\n                onClick={handleZoomOutClick}\n                ref={btnZoomOutRef}\n              >\n                <svg\n                  xmlns='http://www.w3.org/2000/svg'\n                  fill='none'\n                  viewBox='0 0 24 24'\n                  stroke='currentColor'\n                  className='w-6 h-6'\n                >\n                  <path d='M15.853 16.56c-1.683 1.517-3.911 2.44-6.353 2.44-5.243 0-9.5-4.257-9.5-9.5s4.257-9.5 9.5-9.5 9.5 4.257 9.5 9.5c0 2.442-.923 4.67-2.44 6.353l7.44 7.44-.707.707-7.44-7.44zm-6.353-15.56c4.691 0 8.5 3.809 8.5 8.5s-3.809 8.5-8.5 8.5-8.5-3.809-8.5-8.5 3.809-8.5 8.5-8.5zm-4.5 8h9v1h-9v-1z' />\n                </svg>\n              </button>\n            </div>\n          )}\n          {printable && (\n            <button\n              id='btn-print'\n              onClick={handlePrintClick}\n              ref={btnPrintRef}\n              className={styles.tiffBtnPrint}\n              type='button'\n            >\n              <svg\n                xmlns='http://www.w3.org/2000/svg'\n                fill='none'\n                viewBox='0 0 24 24'\n                strokeWidth={1.5}\n                stroke='currentColor'\n                className='w-6 h-6'\n              >\n                <path\n                  strokeLinecap='round'\n                  strokeLinejoin='round'\n                  d='M6.72 13.829c-.24.03-.48.062-.72.096m.72-.096a42.415 42.415 0 0110.56 0m-10.56 0L6.34 18m10.94-4.171c.24.03.48.062.72.096m-.72-.096L17.66 18m0 0l.229 2.523a1.125 1.125 0 01-1.12 1.227H7.231c-.662 0-1.18-.568-1.12-1.227L6.34 18m11.318 0h1.091A2.25 2.25 0 0021 15.75V9.456c0-1.081-.768-2.015-1.837-2.175a48.055 48.055 0 00-1.913-.247M6.34 18H5.25A2.25 2.25 0 013 15.75V9.456c0-1.081.768-2.015 1.837-2.175a48.041 48.041 0 011.913-.247m10.5 0a48.536 48.536 0 00-10.5 0m10.5 0V3.375c0-.621-.504-1.125-1.125-1.125h-8.25c-.621 0-1.125.504-1.125 1.125v3.659M18 10.5h.008v.008H18V10.5zm-3 0h.008v.008H15V10.5z'\n                />\n              </svg>\n            </button>\n          )}\n        </div>\n      ) : null}\n\n      <div className={styles.tiffArrow}>\n        <div\n          id='tiff-inner-container'\n          className={styles.tiffInner}\n          ref={canvasRef}\n        />\n\n        {paginate === 'ltr' && pages.length > 1 && (\n          <div\n            className={styles.tiffAbsolute}\n            id='absolute'\n            ref={paginateLTRRef}\n          >\n            <button\n              style={{ backgroundColor: buttonColor }}\n              disabled={page === 0}\n              onClick={handlePreviousClick}\n              className={styles.tiffButton}\n              type='button'\n            >\n              {t('<')}\n            </button>{' '}\n            <button\n              style={{ backgroundColor: buttonColor }}\n              disabled={page === pages.length - 1}\n              onClick={handleNextClick}\n              className={styles.tiffAbsolute}\n              type='button'\n            >\n              {t('>')}\n            </button>\n          </div>\n        )}\n      </div>\n\n      {paginate === 'bottom' && pages.length > 1 && (\n        <div id='footer' ref={paginateBottomRef}>\n          <button\n            style={{ backgroundColor: buttonColor }}\n            disabled={page === 0}\n            onClick={handlePreviousClick}\n            className={styles.tiffAbsolute}\n            type='button'\n          >\n            {t('Previous')}\n          </button>\n          <span className={styles.tiffSpan}>\n            {t('Page of total', { page: page + 1, total: pages.length })}\n          </span>\n          <button\n            style={{ backgroundColor: buttonColor }}\n            disabled={page === pages.length - 1}\n            onClick={handleNextClick}\n            className={styles.tiffAbsolute}\n            type='button'\n          >\n            {t('Next')}\n          </button>\n        </div>\n      )}\n    </div>\n  )\n})\n\nTIFFViewer.propTypes = {\n  tiff: PropTypes.string.isRequired,\n  lang: PropTypes.string,\n  paginate: PropTypes.string,\n  buttonColor: PropTypes.string,\n  onDocumentLoad: PropTypes.func,\n  currentPage: PropTypes.number,\n  printable: PropTypes.bool,\n  zoomable: PropTypes.bool\n}\n"]}