react-slideshow-image 2.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://react-slideshow-image/webpack/universalModuleDefinition","webpack://react-slideshow-image/webpack/bootstrap","webpack://react-slideshow-image/./node_modules/prop-types/index.js","webpack://react-slideshow-image/external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack://react-slideshow-image/./node_modules/@tweenjs/tween.js/dist/tween.esm.js","webpack://react-slideshow-image/./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","webpack://react-slideshow-image/./node_modules/process/browser.js","webpack://react-slideshow-image/(webpack)/buildin/global.js","webpack://react-slideshow-image/./node_modules/prop-types/factoryWithThrowingShims.js","webpack://react-slideshow-image/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://react-slideshow-image/./src/helpers.js","webpack://react-slideshow-image/./src/slide.js","webpack://react-slideshow-image/./src/fade.js","webpack://react-slideshow-image/./src/zoom.js"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE__1__","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_Group","_tweens","_tweensAddedDuringUpdate","getAll","keys","map","tweenId","removeAll","add","tween","getId","remove","update","time","preserve","tweenIds","length","undefined","TWEEN","now","_isPlaying","a","Group","_nextId","nextId","process","hrtime","self","performance","Date","getTime","Tween","group","_object","_valuesStart","_valuesEnd","_valuesStartRepeat","_duration","_repeat","_repeatDelayTime","_yoyo","_reversed","_delayTime","_startTime","_easingFunction","Easing","Linear","None","_interpolationFunction","Interpolation","_chainedTweens","_onStartCallback","_onStartCallbackFired","_onUpdateCallback","_onRepeatCallback","_onCompleteCallback","_onStopCallback","_group","_id","isPlaying","to","properties","duration","start","parseFloat","Array","concat","stop","stopChainedTweens","end","Infinity","numChainedTweens","delay","amount","repeat","times","repeatDelay","yoyo","easing","easingFunction","interpolation","interpolationFunction","chain","arguments","onStart","callback","onUpdate","onRepeat","onComplete","onStop","elapsed","charAt","isFinite","tmp","k","Quadratic","In","Out","InOut","Cubic","Quartic","Quintic","Sinusoidal","Math","cos","PI","sin","Exponential","pow","Circular","sqrt","Elastic","Back","Bounce","v","f","floor","fn","Utils","Bezier","b","pw","bn","Bernstein","CatmullRom","p0","p1","fc","Factorial","p2","p3","v0","v1","t2","MapShim","Map","getIndex","arr","result","some","entry","index","class_1","__entries__","configurable","set","push","delete","entries","splice","has","clear","forEach","ctx","_i","_a","isBrowser","window","document","global$1","global","Function","requestAnimationFrame$1","requestAnimationFrame","setTimeout","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","indexOf","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","filter","gatherActive","hasActive","broadcastActive","addEventListener","observe","attributes","childList","characterData","subtree","removeEventListener","disconnect","_b","propertyName","getInstance","instance_","defineConfigurable","target","props","writable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","getBordersSize","styles","positions","reduce","size","position","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","paddings","positions_1","getPaddings","horizPad","left","right","vertPad","top","bottom","width","height","boxSizing","round","documentElement","isDocumentElement","vertScrollbar","horizScrollbar","abs","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","x","y","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","TypeError","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","_this","observation","WeakMap","ResizeObserver","method","apply","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","e","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","g","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","bool","func","number","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","getUnhandledProps","ComponentProps","handledProps","acc","prop","Slideshow","state","defaultIndex","children","imageContainer","wrapper","moveSlides","pauseSlides","startSlides","handleResize","initResizeObserver","reactSlideshowWrapper","createRef","goToSlide","tweenGroup","setWidth","autoplay","goNext","resizeObserver","current","willUnmount","removeResizeObserver","allImages","slice","querySelectorAll","fullwidth","style","transform","applySlideStyle","eachImage","pauseOnHover","currentTarget","dataset","type","goBack","goTo","parseInt","slideImages","infinite","isCustomIndicator","indicators","className","_","data-key","onClick","arrows","prevArrow","data-type","nextArrow","unhandledProps","propTypes","onMouseEnter","onMouseLeave","ref","showPreviousArrow","data-index","each","showNextArrow","showIndicators","transitionDuration","onChange","margin","animate","newIndex","setState","Component","defaultProps","Fade","divsContainer","navigate","preFade","play","fadeImages","applyStyle","eachDiv","wrap","opacity","zIndex","Zoom","preZoom","zoomTo","scale"],"mappings":"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","file":"react-slideshow-image.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"react-slideshow-image\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"react-slideshow-image\"] = factory(root[\"React\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__1__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 8);\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","module.exports = __WEBPACK_EXTERNAL_MODULE__1__;","/**\n * Tween.js - Licensed under the MIT license\n * https://github.com/tweenjs/tween.js\n * ----------------------------------------------\n *\n * See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors.\n * Thank you all, you're awesome!\n */\n\n\nvar _Group = function () {\n\tthis._tweens = {};\n\tthis._tweensAddedDuringUpdate = {};\n};\n\n_Group.prototype = {\n\tgetAll: function () {\n\n\t\treturn Object.keys(this._tweens).map(function (tweenId) {\n\t\t\treturn this._tweens[tweenId];\n\t\t}.bind(this));\n\n\t},\n\n\tremoveAll: function () {\n\n\t\tthis._tweens = {};\n\n\t},\n\n\tadd: function (tween) {\n\n\t\tthis._tweens[tween.getId()] = tween;\n\t\tthis._tweensAddedDuringUpdate[tween.getId()] = tween;\n\n\t},\n\n\tremove: function (tween) {\n\n\t\tdelete this._tweens[tween.getId()];\n\t\tdelete this._tweensAddedDuringUpdate[tween.getId()];\n\n\t},\n\n\tupdate: function (time, preserve) {\n\n\t\tvar tweenIds = Object.keys(this._tweens);\n\n\t\tif (tweenIds.length === 0) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttime = time !== undefined ? time : TWEEN.now();\n\n\t\t// Tweens are updated in \"batches\". If you add a new tween during an update, then the\n\t\t// new tween will be updated in the next batch.\n\t\t// If you remove a tween during an update, it may or may not be updated. However,\n\t\t// if the removed tween was added during the current batch, then it will not be updated.\n\t\twhile (tweenIds.length > 0) {\n\t\t\tthis._tweensAddedDuringUpdate = {};\n\n\t\t\tfor (var i = 0; i < tweenIds.length; i++) {\n\n\t\t\t\tvar tween = this._tweens[tweenIds[i]];\n\n\t\t\t\tif (tween && tween.update(time) === false) {\n\t\t\t\t\ttween._isPlaying = false;\n\n\t\t\t\t\tif (!preserve) {\n\t\t\t\t\t\tdelete this._tweens[tweenIds[i]];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ttweenIds = Object.keys(this._tweensAddedDuringUpdate);\n\t\t}\n\n\t\treturn true;\n\n\t}\n};\n\nvar TWEEN = new _Group();\n\nTWEEN.Group = _Group;\nTWEEN._nextId = 0;\nTWEEN.nextId = function () {\n\treturn TWEEN._nextId++;\n};\n\n\n// Include a performance.now polyfill.\n// In node.js, use process.hrtime.\nif (typeof (self) === 'undefined' && typeof (process) !== 'undefined' && process.hrtime) {\n\tTWEEN.now = function () {\n\t\tvar time = process.hrtime();\n\n\t\t// Convert [seconds, nanoseconds] to milliseconds.\n\t\treturn time[0] * 1000 + time[1] / 1000000;\n\t};\n}\n// In a browser, use self.performance.now if it is available.\nelse if (typeof (self) !== 'undefined' &&\n self.performance !== undefined &&\n\t\t self.performance.now !== undefined) {\n\t// This must be bound, because directly assigning this function\n\t// leads to an invocation exception in Chrome.\n\tTWEEN.now = self.performance.now.bind(self.performance);\n}\n// Use Date.now if it is available.\nelse if (Date.now !== undefined) {\n\tTWEEN.now = Date.now;\n}\n// Otherwise, use 'new Date().getTime()'.\nelse {\n\tTWEEN.now = function () {\n\t\treturn new Date().getTime();\n\t};\n}\n\n\nTWEEN.Tween = function (object, group) {\n\tthis._object = object;\n\tthis._valuesStart = {};\n\tthis._valuesEnd = {};\n\tthis._valuesStartRepeat = {};\n\tthis._duration = 1000;\n\tthis._repeat = 0;\n\tthis._repeatDelayTime = undefined;\n\tthis._yoyo = false;\n\tthis._isPlaying = false;\n\tthis._reversed = false;\n\tthis._delayTime = 0;\n\tthis._startTime = null;\n\tthis._easingFunction = TWEEN.Easing.Linear.None;\n\tthis._interpolationFunction = TWEEN.Interpolation.Linear;\n\tthis._chainedTweens = [];\n\tthis._onStartCallback = null;\n\tthis._onStartCallbackFired = false;\n\tthis._onUpdateCallback = null;\n\tthis._onRepeatCallback = null;\n\tthis._onCompleteCallback = null;\n\tthis._onStopCallback = null;\n\tthis._group = group || TWEEN;\n\tthis._id = TWEEN.nextId();\n\n};\n\nTWEEN.Tween.prototype = {\n\tgetId: function () {\n\t\treturn this._id;\n\t},\n\n\tisPlaying: function () {\n\t\treturn this._isPlaying;\n\t},\n\n\tto: function (properties, duration) {\n\n\t\tthis._valuesEnd = Object.create(properties);\n\n\t\tif (duration !== undefined) {\n\t\t\tthis._duration = duration;\n\t\t}\n\n\t\treturn this;\n\n\t},\n\n\tduration: function duration(d) {\n\t\tthis._duration = d;\n\t\treturn this;\n\t},\n\n\tstart: function (time) {\n\n\t\tthis._group.add(this);\n\n\t\tthis._isPlaying = true;\n\n\t\tthis._onStartCallbackFired = false;\n\n\t\tthis._startTime = time !== undefined ? typeof time === 'string' ? TWEEN.now() + parseFloat(time) : time : TWEEN.now();\n\t\tthis._startTime += this._delayTime;\n\n\t\tfor (var property in this._valuesEnd) {\n\n\t\t\t// Check if an Array was provided as property value\n\t\t\tif (this._valuesEnd[property] instanceof Array) {\n\n\t\t\t\tif (this._valuesEnd[property].length === 0) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Create a local copy of the Array with the start value at the front\n\t\t\t\tthis._valuesEnd[property] = [this._object[property]].concat(this._valuesEnd[property]);\n\n\t\t\t}\n\n\t\t\t// If `to()` specifies a property that doesn't exist in the source object,\n\t\t\t// we should not set that property in the object\n\t\t\tif (this._object[property] === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Save the starting value.\n\t\t\tthis._valuesStart[property] = this._object[property];\n\n\t\t\tif ((this._valuesStart[property] instanceof Array) === false) {\n\t\t\t\tthis._valuesStart[property] *= 1.0; // Ensures we're using numbers, not strings\n\t\t\t}\n\n\t\t\tthis._valuesStartRepeat[property] = this._valuesStart[property] || 0;\n\n\t\t}\n\n\t\treturn this;\n\n\t},\n\n\tstop: function () {\n\n\t\tif (!this._isPlaying) {\n\t\t\treturn this;\n\t\t}\n\n\t\tthis._group.remove(this);\n\t\tthis._isPlaying = false;\n\n\t\tif (this._onStopCallback !== null) {\n\t\t\tthis._onStopCallback(this._object);\n\t\t}\n\n\t\tthis.stopChainedTweens();\n\t\treturn this;\n\n\t},\n\n\tend: function () {\n\n\t\tthis.update(Infinity);\n\t\treturn this;\n\n\t},\n\n\tstopChainedTweens: function () {\n\n\t\tfor (var i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\n\t\t\tthis._chainedTweens[i].stop();\n\t\t}\n\n\t},\n\n\tgroup: function (group) {\n\t\tthis._group = group;\n\t\treturn this;\n\t},\n\n\tdelay: function (amount) {\n\n\t\tthis._delayTime = amount;\n\t\treturn this;\n\n\t},\n\n\trepeat: function (times) {\n\n\t\tthis._repeat = times;\n\t\treturn this;\n\n\t},\n\n\trepeatDelay: function (amount) {\n\n\t\tthis._repeatDelayTime = amount;\n\t\treturn this;\n\n\t},\n\n\tyoyo: function (yoyo) {\n\n\t\tthis._yoyo = yoyo;\n\t\treturn this;\n\n\t},\n\n\teasing: function (easingFunction) {\n\n\t\tthis._easingFunction = easingFunction;\n\t\treturn this;\n\n\t},\n\n\tinterpolation: function (interpolationFunction) {\n\n\t\tthis._interpolationFunction = interpolationFunction;\n\t\treturn this;\n\n\t},\n\n\tchain: function () {\n\n\t\tthis._chainedTweens = arguments;\n\t\treturn this;\n\n\t},\n\n\tonStart: function (callback) {\n\n\t\tthis._onStartCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonUpdate: function (callback) {\n\n\t\tthis._onUpdateCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonRepeat: function onRepeat(callback) {\n\n\t\tthis._onRepeatCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonComplete: function (callback) {\n\n\t\tthis._onCompleteCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonStop: function (callback) {\n\n\t\tthis._onStopCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tupdate: function (time) {\n\n\t\tvar property;\n\t\tvar elapsed;\n\t\tvar value;\n\n\t\tif (time < this._startTime) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (this._onStartCallbackFired === false) {\n\n\t\t\tif (this._onStartCallback !== null) {\n\t\t\t\tthis._onStartCallback(this._object);\n\t\t\t}\n\n\t\t\tthis._onStartCallbackFired = true;\n\t\t}\n\n\t\telapsed = (time - this._startTime) / this._duration;\n\t\telapsed = (this._duration === 0 || elapsed > 1) ? 1 : elapsed;\n\n\t\tvalue = this._easingFunction(elapsed);\n\n\t\tfor (property in this._valuesEnd) {\n\n\t\t\t// Don't update properties that do not exist in the source object\n\t\t\tif (this._valuesStart[property] === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar start = this._valuesStart[property] || 0;\n\t\t\tvar end = this._valuesEnd[property];\n\n\t\t\tif (end instanceof Array) {\n\n\t\t\t\tthis._object[property] = this._interpolationFunction(end, value);\n\n\t\t\t} else {\n\n\t\t\t\t// Parses relative end values with start as base (e.g.: +10, -3)\n\t\t\t\tif (typeof (end) === 'string') {\n\n\t\t\t\t\tif (end.charAt(0) === '+' || end.charAt(0) === '-') {\n\t\t\t\t\t\tend = start + parseFloat(end);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tend = parseFloat(end);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Protect against non numeric properties.\n\t\t\t\tif (typeof (end) === 'number') {\n\t\t\t\t\tthis._object[property] = start + (end - start) * value;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\tif (this._onUpdateCallback !== null) {\n\t\t\tthis._onUpdateCallback(this._object, elapsed);\n\t\t}\n\n\t\tif (elapsed === 1) {\n\n\t\t\tif (this._repeat > 0) {\n\n\t\t\t\tif (isFinite(this._repeat)) {\n\t\t\t\t\tthis._repeat--;\n\t\t\t\t}\n\n\t\t\t\t// Reassign starting values, restart by making startTime = now\n\t\t\t\tfor (property in this._valuesStartRepeat) {\n\n\t\t\t\t\tif (typeof (this._valuesEnd[property]) === 'string') {\n\t\t\t\t\t\tthis._valuesStartRepeat[property] = this._valuesStartRepeat[property] + parseFloat(this._valuesEnd[property]);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this._yoyo) {\n\t\t\t\t\t\tvar tmp = this._valuesStartRepeat[property];\n\n\t\t\t\t\t\tthis._valuesStartRepeat[property] = this._valuesEnd[property];\n\t\t\t\t\t\tthis._valuesEnd[property] = tmp;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._valuesStart[property] = this._valuesStartRepeat[property];\n\n\t\t\t\t}\n\n\t\t\t\tif (this._yoyo) {\n\t\t\t\t\tthis._reversed = !this._reversed;\n\t\t\t\t}\n\n\t\t\t\tif (this._repeatDelayTime !== undefined) {\n\t\t\t\t\tthis._startTime = time + this._repeatDelayTime;\n\t\t\t\t} else {\n\t\t\t\t\tthis._startTime = time + this._delayTime;\n\t\t\t\t}\n\n\t\t\t\tif (this._onRepeatCallback !== null) {\n\t\t\t\t\tthis._onRepeatCallback(this._object);\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\n\t\t\t} else {\n\n\t\t\t\tif (this._onCompleteCallback !== null) {\n\n\t\t\t\t\tthis._onCompleteCallback(this._object);\n\t\t\t\t}\n\n\t\t\t\tfor (var i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\n\t\t\t\t\t// Make the chained tweens start exactly at the time they should,\n\t\t\t\t\t// even if the `update()` method was called way past the duration of the tween\n\t\t\t\t\tthis._chainedTweens[i].start(this._startTime + this._duration);\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn true;\n\n\t}\n};\n\n\nTWEEN.Easing = {\n\n\tLinear: {\n\n\t\tNone: function (k) {\n\n\t\t\treturn k;\n\n\t\t}\n\n\t},\n\n\tQuadratic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn k * (2 - k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k;\n\t\t\t}\n\n\t\t\treturn - 0.5 * (--k * (k - 2) - 1);\n\n\t\t}\n\n\t},\n\n\tCubic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn --k * k * k + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k;\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * k + 2);\n\n\t\t}\n\n\t},\n\n\tQuartic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn 1 - (--k * k * k * k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k * k;\n\t\t\t}\n\n\t\t\treturn - 0.5 * ((k -= 2) * k * k * k - 2);\n\n\t\t}\n\n\t},\n\n\tQuintic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn --k * k * k * k * k + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k * k * k;\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * k * k * k + 2);\n\n\t\t}\n\n\t},\n\n\tSinusoidal: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - Math.cos(k * Math.PI / 2);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn Math.sin(k * Math.PI / 2);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\treturn 0.5 * (1 - Math.cos(Math.PI * k));\n\n\t\t}\n\n\t},\n\n\tExponential: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k === 0 ? 0 : Math.pow(1024, k - 1);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn k === 1 ? 1 : 1 - Math.pow(2, - 10 * k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * Math.pow(1024, k - 1);\n\t\t\t}\n\n\t\t\treturn 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2);\n\n\t\t}\n\n\t},\n\n\tCircular: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - Math.sqrt(1 - k * k);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn Math.sqrt(1 - (--k * k));\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn - 0.5 * (Math.sqrt(1 - k * k) - 1);\n\t\t\t}\n\n\t\t\treturn 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1);\n\n\t\t}\n\n\t},\n\n\tElastic: {\n\n\t\tIn: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\treturn -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\treturn Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tk *= 2;\n\n\t\t\tif (k < 1) {\n\t\t\t\treturn -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\n\t\t\t}\n\n\t\t\treturn 0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1;\n\n\t\t}\n\n\t},\n\n\tBack: {\n\n\t\tIn: function (k) {\n\n\t\t\tvar s = 1.70158;\n\n\t\t\treturn k * k * ((s + 1) * k - s);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tvar s = 1.70158;\n\n\t\t\treturn --k * k * ((s + 1) * k + s) + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tvar s = 1.70158 * 1.525;\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * (k * k * ((s + 1) * k - s));\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2);\n\n\t\t}\n\n\t},\n\n\tBounce: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - TWEEN.Easing.Bounce.Out(1 - k);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tif (k < (1 / 2.75)) {\n\t\t\t\treturn 7.5625 * k * k;\n\t\t\t} else if (k < (2 / 2.75)) {\n\t\t\t\treturn 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75;\n\t\t\t} else if (k < (2.5 / 2.75)) {\n\t\t\t\treturn 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375;\n\t\t\t} else {\n\t\t\t\treturn 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375;\n\t\t\t}\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k < 0.5) {\n\t\t\t\treturn TWEEN.Easing.Bounce.In(k * 2) * 0.5;\n\t\t\t}\n\n\t\t\treturn TWEEN.Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5;\n\n\t\t}\n\n\t}\n\n};\n\nTWEEN.Interpolation = {\n\n\tLinear: function (v, k) {\n\n\t\tvar m = v.length - 1;\n\t\tvar f = m * k;\n\t\tvar i = Math.floor(f);\n\t\tvar fn = TWEEN.Interpolation.Utils.Linear;\n\n\t\tif (k < 0) {\n\t\t\treturn fn(v[0], v[1], f);\n\t\t}\n\n\t\tif (k > 1) {\n\t\t\treturn fn(v[m], v[m - 1], m - f);\n\t\t}\n\n\t\treturn fn(v[i], v[i + 1 > m ? m : i + 1], f - i);\n\n\t},\n\n\tBezier: function (v, k) {\n\n\t\tvar b = 0;\n\t\tvar n = v.length - 1;\n\t\tvar pw = Math.pow;\n\t\tvar bn = TWEEN.Interpolation.Utils.Bernstein;\n\n\t\tfor (var i = 0; i <= n; i++) {\n\t\t\tb += pw(1 - k, n - i) * pw(k, i) * v[i] * bn(n, i);\n\t\t}\n\n\t\treturn b;\n\n\t},\n\n\tCatmullRom: function (v, k) {\n\n\t\tvar m = v.length - 1;\n\t\tvar f = m * k;\n\t\tvar i = Math.floor(f);\n\t\tvar fn = TWEEN.Interpolation.Utils.CatmullRom;\n\n\t\tif (v[0] === v[m]) {\n\n\t\t\tif (k < 0) {\n\t\t\t\ti = Math.floor(f = m * (1 + k));\n\t\t\t}\n\n\t\t\treturn fn(v[(i - 1 + m) % m], v[i], v[(i + 1) % m], v[(i + 2) % m], f - i);\n\n\t\t} else {\n\n\t\t\tif (k < 0) {\n\t\t\t\treturn v[0] - (fn(v[0], v[0], v[1], v[1], -f) - v[0]);\n\t\t\t}\n\n\t\t\tif (k > 1) {\n\t\t\t\treturn v[m] - (fn(v[m], v[m], v[m - 1], v[m - 1], f - m) - v[m]);\n\t\t\t}\n\n\t\t\treturn fn(v[i ? i - 1 : 0], v[i], v[m < i + 1 ? m : i + 1], v[m < i + 2 ? m : i + 2], f - i);\n\n\t\t}\n\n\t},\n\n\tUtils: {\n\n\t\tLinear: function (p0, p1, t) {\n\n\t\t\treturn (p1 - p0) * t + p0;\n\n\t\t},\n\n\t\tBernstein: function (n, i) {\n\n\t\t\tvar fc = TWEEN.Interpolation.Utils.Factorial;\n\n\t\t\treturn fc(n) / fc(i) / fc(n - i);\n\n\t\t},\n\n\t\tFactorial: (function () {\n\n\t\t\tvar a = [1];\n\n\t\t\treturn function (n) {\n\n\t\t\t\tvar s = 1;\n\n\t\t\t\tif (a[n]) {\n\t\t\t\t\treturn a[n];\n\t\t\t\t}\n\n\t\t\t\tfor (var i = n; i > 1; i--) {\n\t\t\t\t\ts *= i;\n\t\t\t\t}\n\n\t\t\t\ta[n] = s;\n\t\t\t\treturn s;\n\n\t\t\t};\n\n\t\t})(),\n\n\t\tCatmullRom: function (p0, p1, p2, p3, t) {\n\n\t\t\tvar v0 = (p2 - p0) * 0.5;\n\t\t\tvar v1 = (p3 - p1) * 0.5;\n\t\t\tvar t2 = t * t;\n\t\t\tvar t3 = t * t2;\n\n\t\t\treturn (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\n\n\t\t}\n\n\t}\n\n};\n\nexport default TWEEN;\n","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array<Array>} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array<ResizeObserverSPI>}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the <html> itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\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 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\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","function getUnhandledProps(ComponentProps, props) {\n const handledProps = Object.keys(ComponentProps);\n return Object.keys(props).reduce((acc, prop) => {\n if (handledProps.indexOf(prop) === -1) acc[prop] = props[prop];\n return acc;\n }, {});\n}\n\nexport { getUnhandledProps };\n","import React, { Component, createRef } from 'react';\nimport TWEEN from '@tweenjs/tween.js';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport PropTypes from 'prop-types';\nimport { getUnhandledProps } from './helpers.js';\n\nclass Slideshow extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.imageContainer = null;\n this.wrapper = null;\n this.timeout = null;\n this.moveSlides = this.moveSlides.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.reactSlideshowWrapper = createRef();\n this.goToSlide = this.goToSlide.bind(this);\n this.tweenGroup = new TWEEN.Group();\n }\n\n componentDidMount() {\n this.setWidth();\n this.initResizeObserver();\n const { autoplay, duration } = this.props;\n if (autoplay) {\n this.timeout = setTimeout(() => this.goNext(), duration);\n }\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n setWidth() {\n // the .slice.call was needed to support ie11\n this.allImages = Array.prototype.slice.call(\n this.wrapper.querySelectorAll(`.images-wrap > div`),\n 0\n );\n this.width = this.wrapper.clientWidth;\n const fullwidth = this.width * (this.props.children.length + 2);\n this.imageContainer.style.width = `${fullwidth}px`;\n this.imageContainer.style.transform = `translate(-${this.width *\n (this.state.index + 1)}px)`;\n this.applySlideStyle();\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.setWidth();\n }\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applySlideStyle() {\n this.allImages.forEach((eachImage, index) => {\n eachImage.style.width = `${this.width}px`;\n });\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n moveSlides({ currentTarget: { dataset } }) {\n if (dataset.type === 'next') {\n this.goNext();\n } else {\n this.goBack();\n }\n }\n\n goToSlide({ currentTarget }) {\n this.goTo(parseInt(currentTarget.dataset.key));\n }\n\n goTo(index) {\n this.slideImages(index);\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.slideImages(index + 1);\n }\n\n goBack() {\n const { index } = this.state;\n const { infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.slideImages(index - 1);\n }\n\n showIndicators() {\n const isCustomIndicator = typeof this.props.indicators !== 'boolean';\n const className = !isCustomIndicator && 'each-slideshow-indicator';\n return (\n <div className=\"indicators\">\n {this.props.children.map((_, key) => (\n <div\n key={key}\n data-key={key}\n className={`${className} ${this.state.index === key && 'active'}`}\n onClick={this.goToSlide}\n >\n {isCustomIndicator && this.props.indicators(key)}\n </div>\n ))}\n </div>\n );\n }\n\n showPreviousArrow() {\n const { arrows, prevArrow, infinite } = this.props;\n let className = '';\n if (!prevArrow) {\n className = `nav ${this.state.index <= 0 && !infinite && 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"prev\" onClick={this.moveSlides}>\n {prevArrow ? prevArrow : <span />}\n </div>\n )\n );\n }\n\n showNextArrow() {\n const { arrows, nextArrow, infinite, children } = this.props;\n let className = '';\n if (!nextArrow) {\n className = `nav ${this.state.index === children.length - 1 &&\n !infinite &&\n 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"next\" onClick={this.moveSlides}>\n {nextArrow ? nextArrow : <span />}\n </div>\n )\n );\n }\n\n render() {\n const { children, infinite, indicators, arrows } = this.props;\n const unhandledProps = getUnhandledProps(Slideshow.propTypes, this.props);\n const { index } = this.state;\n const style = {\n transform: `translate(-${(index + 1) * this.width}px)`\n };\n\n return (\n <div {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {this.showPreviousArrow()}\n <div\n className={`react-slideshow-wrapper slide`}\n ref={ref => (this.wrapper = ref)}\n >\n <div\n className=\"images-wrap\"\n style={style}\n ref={ref => (this.imageContainer = ref)}\n >\n <div data-index=\"-1\">{children[children.length - 1]}</div>\n {children.map((each, key) => (\n <div\n data-index={key}\n key={key}\n className={key === index ? 'active' : ''}\n >\n {each}\n </div>\n ))}\n <div data-index=\"-1\">{children[0]}</div>\n </div>\n </div>\n {this.showNextArrow()}\n </div>\n {indicators && this.showIndicators()}\n </div>\n );\n }\n\n slideImages(index) {\n let {\n children,\n transitionDuration,\n autoplay,\n infinite,\n duration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n clearTimeout(this.timeout);\n const value = { margin: -this.width * (this.state.index + 1) };\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ margin: -this.width * (index + 1) }, transitionDuration)\n .onUpdate(value => {\n this.imageContainer.style.transform = `translate(${value.margin}px)`;\n })\n .start();\n\n let animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n tween.onComplete(() => {\n const newIndex =\n index < 0\n ? children.length - 1\n : index >= children.length\n ? 0\n : index;\n if (this.willUnmount) {\n return;\n }\n if (typeof onChange === 'function') {\n onChange(this.state.index, newIndex);\n }\n this.setState(\n {\n index: newIndex\n },\n () => {\n if (autoplay && (infinite || this.state.index < children.length)) {\n this.timeout = setTimeout(() => this.goNext(), duration);\n }\n }\n );\n });\n }\n }\n}\n\nSlideshow.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n infinite: true,\n autoplay: true,\n indicators: false,\n arrows: true,\n pauseOnHover: false\n};\n\nSlideshow.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n infinite: PropTypes.bool,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n autoplay: PropTypes.bool,\n arrows: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Slideshow;\n","import React, { Component, createRef } from 'react';\nimport PropTypes from 'prop-types';\nimport TWEEN from '@tweenjs/tween.js';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport { getUnhandledProps } from './helpers.js';\n\nclass Fade extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.timeout = null;\n this.divsContainer = null;\n this.wrapper = null;\n this.setWidth = this.setWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.navigate = this.navigate.bind(this);\n this.preFade = this.preFade.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.tweenGroup = new TWEEN.Group();\n this.reactSlideshowWrapper = createRef();\n this.wrapper = createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n this.play();\n this.initResizeObserver();\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n play() {\n const { autoplay, children } = this.props;\n const { index } = this.state;\n if (autoplay && children.length > 1) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(\n () => this.fadeImages(index + 1),\n this.props.duration\n );\n }\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.play();\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.applyStyle();\n this.play();\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n setWidth() {\n this.width = this.wrapper.current.clientWidth;\n this.applyStyle();\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applyStyle() {\n const fullwidth = this.width * this.props.children.length;\n this.divsContainer.style.width = `${fullwidth}px`;\n for (let index = 0; index < this.divsContainer.children.length; index++) {\n const eachDiv = this.divsContainer.children[index];\n if (eachDiv) {\n eachDiv.style.width = `${this.width}px`;\n eachDiv.style.left = `${index * -this.width}px`;\n }\n }\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.fadeImages((index + 1) % children.length);\n }\n\n goBack() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.fadeImages(index === 0 ? children.length - 1 : index - 1);\n }\n\n navigate({ currentTarget: { dataset } }) {\n if (dataset.key != this.state.index) {\n this.goTo(parseInt(dataset.key));\n }\n }\n\n goTo(index) {\n this.fadeImages(index);\n }\n\n preFade({ currentTarget }) {\n if (currentTarget.dataset.type === 'prev') {\n this.goBack();\n } else {\n this.goNext();\n }\n }\n\n showIndicators() {\n const isCustomIndicator = typeof this.props.indicators !== 'boolean';\n const className = !isCustomIndicator && 'each-slideshow-indicator';\n return (\n <div className=\"indicators\">\n {this.props.children.map((each, key) => (\n <div\n key={key}\n data-key={key}\n className={`${className} ${this.state.index === key && 'active'}`}\n onClick={this.navigate}\n >\n {isCustomIndicator && this.props.indicators(key)}\n </div>\n ))}\n </div>\n );\n }\n\n showPreviousArrow() {\n const { arrows, prevArrow, infinite } = this.props;\n let className = '';\n if (!prevArrow) {\n className = `nav ${this.state.index <= 0 && !infinite && 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"prev\" onClick={this.preFade}>\n {prevArrow ? prevArrow : <span />}\n </div>\n )\n );\n }\n\n showNextArrow() {\n const { arrows, nextArrow, infinite, children } = this.props;\n let className = '';\n if (!nextArrow) {\n className = `nav ${this.state.index === children.length - 1 &&\n !infinite &&\n 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"next\" onClick={this.preFade}>\n {nextArrow ? nextArrow : <span />}\n </div>\n )\n );\n }\n\n render() {\n const { indicators, children } = this.props;\n const { index } = this.state;\n const unhandledProps = getUnhandledProps(Fade.propTypes, this.props);\n return (\n <div {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {this.showPreviousArrow()}\n <div className=\"react-slideshow-fade-wrapper\" ref={this.wrapper}>\n <div\n className=\"react-slideshow-fade-images-wrap\"\n ref={wrap => (this.divsContainer = wrap)}\n >\n {children.map((each, key) => (\n <div\n style={{\n opacity: key === index ? '1' : '0',\n zIndex: key === index ? '1' : '0'\n }}\n data-index={key}\n key={key}\n >\n {each}\n </div>\n ))}\n </div>\n </div>\n {this.showNextArrow()}\n </div>\n {indicators && this.showIndicators()}\n </div>\n );\n }\n\n fadeImages(newIndex) {\n const { index } = this.state;\n const {\n autoplay,\n children,\n infinite,\n duration,\n transitionDuration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n if (!this.divsContainer.children[newIndex]) {\n newIndex = 0;\n }\n clearTimeout(this.timeout);\n const value = { opacity: 0 };\n\n const animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ opacity: 1 }, transitionDuration)\n .onUpdate(value => {\n this.divsContainer.children[newIndex].style.opacity = value.opacity;\n this.divsContainer.children[index].style.opacity = 1 - value.opacity;\n })\n .start();\n\n tween.onComplete(() => {\n if (this.willUnmount) {\n return;\n }\n this.setState({\n index: newIndex\n });\n if (typeof onChange === 'function') {\n onChange(index, newIndex);\n }\n if (autoplay && (infinite || newIndex < children.length - 1)) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => {\n this.fadeImages((newIndex + 1) % children.length);\n }, duration);\n }\n });\n }\n }\n}\n\nFade.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n indicators: false,\n arrows: true,\n autoplay: true,\n infinite: true,\n pauseOnHover: false\n};\n\nFade.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n arrows: PropTypes.bool,\n autoplay: PropTypes.bool,\n infinite: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Fade;\n","import React, { Component, createRef } from 'react';\nimport PropTypes from 'prop-types';\nimport TWEEN from '@tweenjs/tween.js';\nimport { getUnhandledProps } from './helpers.js';\n\nclass Zoom extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.timeout = null;\n this.divsContainer = null;\n this.wrapper = null;\n this.setWidth = this.setWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.navigate = this.navigate.bind(this);\n this.preZoom = this.preZoom.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.tweenGroup = new TWEEN.Group();\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.reactSlideshowWrapper = createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n this.play();\n this.initResizeObserver();\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n play() {\n const { autoplay, children } = this.props;\n const { index } = this.state;\n if (autoplay && children.length > 1) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(\n () => this.zoomTo(index + 1),\n this.props.duration\n );\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.play();\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.applyStyle();\n this.play();\n }\n }\n\n setWidth() {\n this.width = this.wrapper.clientWidth;\n this.applyStyle();\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applyStyle() {\n const fullwidth = this.width * this.props.children.length;\n this.divsContainer.style.width = `${fullwidth}px`;\n for (let index = 0; index < this.divsContainer.children.length; index++) {\n const eachDiv = this.divsContainer.children[index];\n if (eachDiv) {\n eachDiv.style.width = `${this.width}px`;\n eachDiv.style.left = `${index * -this.width}px`;\n }\n }\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.zoomTo((index + 1) % children.length);\n }\n\n goBack() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.zoomTo(index === 0 ? children.length - 1 : index - 1);\n }\n\n goTo(index) {\n this.zoomTo(index);\n }\n\n navigate({ currentTarget: { dataset } }) {\n if (dataset.key != this.state.index) {\n this.goTo(parseInt(dataset.key));\n }\n }\n\n preZoom({ currentTarget }) {\n if (currentTarget.dataset.type === 'prev') {\n this.goBack();\n } else {\n this.goNext();\n }\n }\n\n showIndicators() {\n const isCustomIndicator = typeof this.props.indicators !== 'boolean';\n const className = !isCustomIndicator && 'each-slideshow-indicator';\n return (\n <div className=\"indicators\">\n {this.props.children.map((each, key) => (\n <div\n key={key}\n data-key={key}\n className={`${className} ${this.state.index === key && 'active'}`}\n onClick={this.navigate}\n >\n {isCustomIndicator && this.props.indicators(key)}\n </div>\n ))}\n </div>\n );\n }\n\n showPreviousArrow() {\n const { arrows, prevArrow, infinite } = this.props;\n let className = '';\n if (!prevArrow) {\n className = `nav ${this.state.index <= 0 && !infinite && 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"prev\" onClick={this.preZoom}>\n {prevArrow ? prevArrow : <span />}\n </div>\n )\n );\n }\n\n showNextArrow() {\n const { arrows, nextArrow, infinite, children } = this.props;\n let className = '';\n if (!nextArrow) {\n className = `nav ${this.state.index === children.length - 1 &&\n !infinite &&\n 'disabled'}`;\n }\n return (\n arrows && (\n <div className={className} data-type=\"next\" onClick={this.preZoom}>\n {nextArrow ? nextArrow : <span />}\n </div>\n )\n );\n }\n\n render() {\n const { indicators, arrows, infinite, children } = this.props;\n const { index } = this.state;\n const unhandledProps = getUnhandledProps(Zoom.propTypes, this.props);\n return (\n <div {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {this.showPreviousArrow()}\n <div\n className=\"react-slideshow-zoom-wrapper\"\n ref={ref => (this.wrapper = ref)}\n >\n <div\n className=\"zoom-wrapper\"\n ref={wrap => (this.divsContainer = wrap)}\n >\n {children.map((each, key) => (\n <div\n style={{\n opacity: key === index ? '1' : '0',\n zIndex: key === index ? '1' : '0'\n }}\n data-index={key}\n key={key}\n >\n {each}\n </div>\n ))}\n </div>\n </div>\n {this.showNextArrow()}\n </div>\n {indicators && this.showIndicators()}\n </div>\n );\n }\n\n zoomTo(newIndex) {\n const { index } = this.state;\n const {\n children,\n scale,\n autoplay,\n infinite,\n transitionDuration,\n duration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n if (!this.divsContainer.children[newIndex]) {\n newIndex = 0;\n }\n clearTimeout(this.timeout);\n const value = {\n opacity: 0,\n scale: 1\n };\n\n let animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ opacity: 1, scale }, transitionDuration)\n .onUpdate(value => {\n this.divsContainer.children[newIndex].style.opacity = value.opacity;\n this.divsContainer.children[index].style.opacity = 1 - value.opacity;\n this.divsContainer.children[\n index\n ].style.transform = `scale(${value.scale})`;\n })\n .start();\n\n tween.onComplete(() => {\n if (this.willUnmount) {\n return;\n }\n if (typeof onChange === 'function') {\n onChange(index, newIndex);\n }\n this.setState(\n {\n index: newIndex\n },\n () => {\n this.divsContainer.children[index].style.transform = `scale(1)`;\n }\n );\n if (autoplay && (infinite || newIndex < children.length - 1)) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => {\n this.zoomTo((newIndex + 1) % children.length);\n }, duration);\n }\n });\n }\n }\n}\n\nZoom.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n indicators: false,\n arrows: true,\n autoplay: true,\n infinite: true,\n pauseOnHover: false\n};\n\nZoom.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n scale: PropTypes.number.isRequired,\n arrows: PropTypes.bool,\n autoplay: PropTypes.bool,\n infinite: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Zoom;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://react-slideshow-image/webpack/universalModuleDefinition","webpack://react-slideshow-image/webpack/bootstrap","webpack://react-slideshow-image/./node_modules/prop-types/index.js","webpack://react-slideshow-image/external {\"root\":\"React\",\"commonjs2\":\"react\",\"commonjs\":\"react\",\"amd\":\"react\"}","webpack://react-slideshow-image/./node_modules/@tweenjs/tween.js/dist/tween.esm.js","webpack://react-slideshow-image/./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","webpack://react-slideshow-image/./node_modules/process/browser.js","webpack://react-slideshow-image/(webpack)/buildin/global.js","webpack://react-slideshow-image/./node_modules/prop-types/factoryWithThrowingShims.js","webpack://react-slideshow-image/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://react-slideshow-image/./src/helpers.js","webpack://react-slideshow-image/./src/slide.js","webpack://react-slideshow-image/./src/fade.js","webpack://react-slideshow-image/./src/zoom.js"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE__1__","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_Group","_tweens","_tweensAddedDuringUpdate","getAll","keys","map","tweenId","removeAll","add","tween","getId","remove","update","time","preserve","tweenIds","length","undefined","TWEEN","now","_isPlaying","a","Group","_nextId","nextId","process","hrtime","self","performance","Date","getTime","Tween","group","_object","_valuesStart","_valuesEnd","_valuesStartRepeat","_duration","_repeat","_repeatDelayTime","_yoyo","_reversed","_delayTime","_startTime","_easingFunction","Easing","Linear","None","_interpolationFunction","Interpolation","_chainedTweens","_onStartCallback","_onStartCallbackFired","_onUpdateCallback","_onRepeatCallback","_onCompleteCallback","_onStopCallback","_group","_id","isPlaying","to","properties","duration","start","parseFloat","Array","concat","stop","stopChainedTweens","end","Infinity","numChainedTweens","delay","amount","repeat","times","repeatDelay","yoyo","easing","easingFunction","interpolation","interpolationFunction","chain","arguments","onStart","callback","onUpdate","onRepeat","onComplete","onStop","elapsed","charAt","isFinite","tmp","k","Quadratic","In","Out","InOut","Cubic","Quartic","Quintic","Sinusoidal","Math","cos","PI","sin","Exponential","pow","Circular","sqrt","Elastic","Back","Bounce","v","f","floor","fn","Utils","Bezier","b","pw","bn","Bernstein","CatmullRom","p0","p1","fc","Factorial","p2","p3","v0","v1","t2","MapShim","Map","getIndex","arr","result","some","entry","index","class_1","__entries__","configurable","set","push","delete","entries","splice","has","clear","forEach","ctx","_i","_a","isBrowser","window","document","global$1","global","Function","requestAnimationFrame$1","requestAnimationFrame","setTimeout","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","indexOf","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","filter","gatherActive","hasActive","broadcastActive","addEventListener","observe","attributes","childList","characterData","subtree","removeEventListener","disconnect","_b","propertyName","getInstance","instance_","defineConfigurable","target","props","writable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","getBordersSize","styles","positions","reduce","size","position","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","paddings","positions_1","getPaddings","horizPad","left","right","vertPad","top","bottom","width","height","boxSizing","round","documentElement","isDocumentElement","vertScrollbar","horizScrollbar","abs","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","x","y","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","TypeError","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","_this","observation","WeakMap","ResizeObserver","method","apply","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","e","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","g","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","location","propFullName","secret","err","getShim","isRequired","ReactPropTypes","bool","func","number","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","getUnhandledProps","ComponentProps","handledProps","acc","prop","showPreviousArrow","currentIndex","moveSlides","prevArrow","infinite","isDisabled","disabled","onClick","React","cloneElement","className","showNextArrow","nextArrow","children","showIndicators","navigate","indicators","isCustomIndicator","_","indicatorProps","eachIndicator","showCustomIndicator","showDefaultIndicator","Slideshow","state","defaultIndex","imageContainer","wrapper","pauseSlides","startSlides","handleResize","initResizeObserver","reactSlideshowWrapper","createRef","goToSlide","tweenGroup","setWidth","autoplay","goNext","resizeObserver","current","willUnmount","removeResizeObserver","allImages","slice","querySelectorAll","fullwidth","style","transform","applySlideStyle","eachImage","pauseOnHover","currentTarget","dataset","type","goBack","goTo","parseInt","slideImages","arrows","unhandledProps","propTypes","aria-roledescription","onMouseEnter","onMouseLeave","ref","data-index","aria-hidden","each","transitionDuration","onChange","margin","animate","newIndex","setState","Component","defaultProps","Fade","divsContainer","preFade","play","fadeImages","applyStyle","eachDiv","wrap","opacity","zIndex","Zoom","preZoom","zoomTo","scale"],"mappings":"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","file":"react-slideshow-image.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"react\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"react-slideshow-image\"] = factory(require(\"react\"));\n\telse\n\t\troot[\"react-slideshow-image\"] = factory(root[\"React\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE__1__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 8);\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","module.exports = __WEBPACK_EXTERNAL_MODULE__1__;","/**\n * Tween.js - Licensed under the MIT license\n * https://github.com/tweenjs/tween.js\n * ----------------------------------------------\n *\n * See https://github.com/tweenjs/tween.js/graphs/contributors for the full list of contributors.\n * Thank you all, you're awesome!\n */\n\n\nvar _Group = function () {\n\tthis._tweens = {};\n\tthis._tweensAddedDuringUpdate = {};\n};\n\n_Group.prototype = {\n\tgetAll: function () {\n\n\t\treturn Object.keys(this._tweens).map(function (tweenId) {\n\t\t\treturn this._tweens[tweenId];\n\t\t}.bind(this));\n\n\t},\n\n\tremoveAll: function () {\n\n\t\tthis._tweens = {};\n\n\t},\n\n\tadd: function (tween) {\n\n\t\tthis._tweens[tween.getId()] = tween;\n\t\tthis._tweensAddedDuringUpdate[tween.getId()] = tween;\n\n\t},\n\n\tremove: function (tween) {\n\n\t\tdelete this._tweens[tween.getId()];\n\t\tdelete this._tweensAddedDuringUpdate[tween.getId()];\n\n\t},\n\n\tupdate: function (time, preserve) {\n\n\t\tvar tweenIds = Object.keys(this._tweens);\n\n\t\tif (tweenIds.length === 0) {\n\t\t\treturn false;\n\t\t}\n\n\t\ttime = time !== undefined ? time : TWEEN.now();\n\n\t\t// Tweens are updated in \"batches\". If you add a new tween during an update, then the\n\t\t// new tween will be updated in the next batch.\n\t\t// If you remove a tween during an update, it may or may not be updated. However,\n\t\t// if the removed tween was added during the current batch, then it will not be updated.\n\t\twhile (tweenIds.length > 0) {\n\t\t\tthis._tweensAddedDuringUpdate = {};\n\n\t\t\tfor (var i = 0; i < tweenIds.length; i++) {\n\n\t\t\t\tvar tween = this._tweens[tweenIds[i]];\n\n\t\t\t\tif (tween && tween.update(time) === false) {\n\t\t\t\t\ttween._isPlaying = false;\n\n\t\t\t\t\tif (!preserve) {\n\t\t\t\t\t\tdelete this._tweens[tweenIds[i]];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ttweenIds = Object.keys(this._tweensAddedDuringUpdate);\n\t\t}\n\n\t\treturn true;\n\n\t}\n};\n\nvar TWEEN = new _Group();\n\nTWEEN.Group = _Group;\nTWEEN._nextId = 0;\nTWEEN.nextId = function () {\n\treturn TWEEN._nextId++;\n};\n\n\n// Include a performance.now polyfill.\n// In node.js, use process.hrtime.\nif (typeof (self) === 'undefined' && typeof (process) !== 'undefined' && process.hrtime) {\n\tTWEEN.now = function () {\n\t\tvar time = process.hrtime();\n\n\t\t// Convert [seconds, nanoseconds] to milliseconds.\n\t\treturn time[0] * 1000 + time[1] / 1000000;\n\t};\n}\n// In a browser, use self.performance.now if it is available.\nelse if (typeof (self) !== 'undefined' &&\n self.performance !== undefined &&\n\t\t self.performance.now !== undefined) {\n\t// This must be bound, because directly assigning this function\n\t// leads to an invocation exception in Chrome.\n\tTWEEN.now = self.performance.now.bind(self.performance);\n}\n// Use Date.now if it is available.\nelse if (Date.now !== undefined) {\n\tTWEEN.now = Date.now;\n}\n// Otherwise, use 'new Date().getTime()'.\nelse {\n\tTWEEN.now = function () {\n\t\treturn new Date().getTime();\n\t};\n}\n\n\nTWEEN.Tween = function (object, group) {\n\tthis._object = object;\n\tthis._valuesStart = {};\n\tthis._valuesEnd = {};\n\tthis._valuesStartRepeat = {};\n\tthis._duration = 1000;\n\tthis._repeat = 0;\n\tthis._repeatDelayTime = undefined;\n\tthis._yoyo = false;\n\tthis._isPlaying = false;\n\tthis._reversed = false;\n\tthis._delayTime = 0;\n\tthis._startTime = null;\n\tthis._easingFunction = TWEEN.Easing.Linear.None;\n\tthis._interpolationFunction = TWEEN.Interpolation.Linear;\n\tthis._chainedTweens = [];\n\tthis._onStartCallback = null;\n\tthis._onStartCallbackFired = false;\n\tthis._onUpdateCallback = null;\n\tthis._onRepeatCallback = null;\n\tthis._onCompleteCallback = null;\n\tthis._onStopCallback = null;\n\tthis._group = group || TWEEN;\n\tthis._id = TWEEN.nextId();\n\n};\n\nTWEEN.Tween.prototype = {\n\tgetId: function () {\n\t\treturn this._id;\n\t},\n\n\tisPlaying: function () {\n\t\treturn this._isPlaying;\n\t},\n\n\tto: function (properties, duration) {\n\n\t\tthis._valuesEnd = Object.create(properties);\n\n\t\tif (duration !== undefined) {\n\t\t\tthis._duration = duration;\n\t\t}\n\n\t\treturn this;\n\n\t},\n\n\tduration: function duration(d) {\n\t\tthis._duration = d;\n\t\treturn this;\n\t},\n\n\tstart: function (time) {\n\n\t\tthis._group.add(this);\n\n\t\tthis._isPlaying = true;\n\n\t\tthis._onStartCallbackFired = false;\n\n\t\tthis._startTime = time !== undefined ? typeof time === 'string' ? TWEEN.now() + parseFloat(time) : time : TWEEN.now();\n\t\tthis._startTime += this._delayTime;\n\n\t\tfor (var property in this._valuesEnd) {\n\n\t\t\t// Check if an Array was provided as property value\n\t\t\tif (this._valuesEnd[property] instanceof Array) {\n\n\t\t\t\tif (this._valuesEnd[property].length === 0) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Create a local copy of the Array with the start value at the front\n\t\t\t\tthis._valuesEnd[property] = [this._object[property]].concat(this._valuesEnd[property]);\n\n\t\t\t}\n\n\t\t\t// If `to()` specifies a property that doesn't exist in the source object,\n\t\t\t// we should not set that property in the object\n\t\t\tif (this._object[property] === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Save the starting value.\n\t\t\tthis._valuesStart[property] = this._object[property];\n\n\t\t\tif ((this._valuesStart[property] instanceof Array) === false) {\n\t\t\t\tthis._valuesStart[property] *= 1.0; // Ensures we're using numbers, not strings\n\t\t\t}\n\n\t\t\tthis._valuesStartRepeat[property] = this._valuesStart[property] || 0;\n\n\t\t}\n\n\t\treturn this;\n\n\t},\n\n\tstop: function () {\n\n\t\tif (!this._isPlaying) {\n\t\t\treturn this;\n\t\t}\n\n\t\tthis._group.remove(this);\n\t\tthis._isPlaying = false;\n\n\t\tif (this._onStopCallback !== null) {\n\t\t\tthis._onStopCallback(this._object);\n\t\t}\n\n\t\tthis.stopChainedTweens();\n\t\treturn this;\n\n\t},\n\n\tend: function () {\n\n\t\tthis.update(Infinity);\n\t\treturn this;\n\n\t},\n\n\tstopChainedTweens: function () {\n\n\t\tfor (var i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\n\t\t\tthis._chainedTweens[i].stop();\n\t\t}\n\n\t},\n\n\tgroup: function (group) {\n\t\tthis._group = group;\n\t\treturn this;\n\t},\n\n\tdelay: function (amount) {\n\n\t\tthis._delayTime = amount;\n\t\treturn this;\n\n\t},\n\n\trepeat: function (times) {\n\n\t\tthis._repeat = times;\n\t\treturn this;\n\n\t},\n\n\trepeatDelay: function (amount) {\n\n\t\tthis._repeatDelayTime = amount;\n\t\treturn this;\n\n\t},\n\n\tyoyo: function (yoyo) {\n\n\t\tthis._yoyo = yoyo;\n\t\treturn this;\n\n\t},\n\n\teasing: function (easingFunction) {\n\n\t\tthis._easingFunction = easingFunction;\n\t\treturn this;\n\n\t},\n\n\tinterpolation: function (interpolationFunction) {\n\n\t\tthis._interpolationFunction = interpolationFunction;\n\t\treturn this;\n\n\t},\n\n\tchain: function () {\n\n\t\tthis._chainedTweens = arguments;\n\t\treturn this;\n\n\t},\n\n\tonStart: function (callback) {\n\n\t\tthis._onStartCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonUpdate: function (callback) {\n\n\t\tthis._onUpdateCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonRepeat: function onRepeat(callback) {\n\n\t\tthis._onRepeatCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonComplete: function (callback) {\n\n\t\tthis._onCompleteCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tonStop: function (callback) {\n\n\t\tthis._onStopCallback = callback;\n\t\treturn this;\n\n\t},\n\n\tupdate: function (time) {\n\n\t\tvar property;\n\t\tvar elapsed;\n\t\tvar value;\n\n\t\tif (time < this._startTime) {\n\t\t\treturn true;\n\t\t}\n\n\t\tif (this._onStartCallbackFired === false) {\n\n\t\t\tif (this._onStartCallback !== null) {\n\t\t\t\tthis._onStartCallback(this._object);\n\t\t\t}\n\n\t\t\tthis._onStartCallbackFired = true;\n\t\t}\n\n\t\telapsed = (time - this._startTime) / this._duration;\n\t\telapsed = (this._duration === 0 || elapsed > 1) ? 1 : elapsed;\n\n\t\tvalue = this._easingFunction(elapsed);\n\n\t\tfor (property in this._valuesEnd) {\n\n\t\t\t// Don't update properties that do not exist in the source object\n\t\t\tif (this._valuesStart[property] === undefined) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar start = this._valuesStart[property] || 0;\n\t\t\tvar end = this._valuesEnd[property];\n\n\t\t\tif (end instanceof Array) {\n\n\t\t\t\tthis._object[property] = this._interpolationFunction(end, value);\n\n\t\t\t} else {\n\n\t\t\t\t// Parses relative end values with start as base (e.g.: +10, -3)\n\t\t\t\tif (typeof (end) === 'string') {\n\n\t\t\t\t\tif (end.charAt(0) === '+' || end.charAt(0) === '-') {\n\t\t\t\t\t\tend = start + parseFloat(end);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tend = parseFloat(end);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Protect against non numeric properties.\n\t\t\t\tif (typeof (end) === 'number') {\n\t\t\t\t\tthis._object[property] = start + (end - start) * value;\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t}\n\n\t\tif (this._onUpdateCallback !== null) {\n\t\t\tthis._onUpdateCallback(this._object, elapsed);\n\t\t}\n\n\t\tif (elapsed === 1) {\n\n\t\t\tif (this._repeat > 0) {\n\n\t\t\t\tif (isFinite(this._repeat)) {\n\t\t\t\t\tthis._repeat--;\n\t\t\t\t}\n\n\t\t\t\t// Reassign starting values, restart by making startTime = now\n\t\t\t\tfor (property in this._valuesStartRepeat) {\n\n\t\t\t\t\tif (typeof (this._valuesEnd[property]) === 'string') {\n\t\t\t\t\t\tthis._valuesStartRepeat[property] = this._valuesStartRepeat[property] + parseFloat(this._valuesEnd[property]);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this._yoyo) {\n\t\t\t\t\t\tvar tmp = this._valuesStartRepeat[property];\n\n\t\t\t\t\t\tthis._valuesStartRepeat[property] = this._valuesEnd[property];\n\t\t\t\t\t\tthis._valuesEnd[property] = tmp;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._valuesStart[property] = this._valuesStartRepeat[property];\n\n\t\t\t\t}\n\n\t\t\t\tif (this._yoyo) {\n\t\t\t\t\tthis._reversed = !this._reversed;\n\t\t\t\t}\n\n\t\t\t\tif (this._repeatDelayTime !== undefined) {\n\t\t\t\t\tthis._startTime = time + this._repeatDelayTime;\n\t\t\t\t} else {\n\t\t\t\t\tthis._startTime = time + this._delayTime;\n\t\t\t\t}\n\n\t\t\t\tif (this._onRepeatCallback !== null) {\n\t\t\t\t\tthis._onRepeatCallback(this._object);\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\n\t\t\t} else {\n\n\t\t\t\tif (this._onCompleteCallback !== null) {\n\n\t\t\t\t\tthis._onCompleteCallback(this._object);\n\t\t\t\t}\n\n\t\t\t\tfor (var i = 0, numChainedTweens = this._chainedTweens.length; i < numChainedTweens; i++) {\n\t\t\t\t\t// Make the chained tweens start exactly at the time they should,\n\t\t\t\t\t// even if the `update()` method was called way past the duration of the tween\n\t\t\t\t\tthis._chainedTweens[i].start(this._startTime + this._duration);\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\n\t\t\t}\n\n\t\t}\n\n\t\treturn true;\n\n\t}\n};\n\n\nTWEEN.Easing = {\n\n\tLinear: {\n\n\t\tNone: function (k) {\n\n\t\t\treturn k;\n\n\t\t}\n\n\t},\n\n\tQuadratic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn k * (2 - k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k;\n\t\t\t}\n\n\t\t\treturn - 0.5 * (--k * (k - 2) - 1);\n\n\t\t}\n\n\t},\n\n\tCubic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn --k * k * k + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k;\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * k + 2);\n\n\t\t}\n\n\t},\n\n\tQuartic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn 1 - (--k * k * k * k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k * k;\n\t\t\t}\n\n\t\t\treturn - 0.5 * ((k -= 2) * k * k * k - 2);\n\n\t\t}\n\n\t},\n\n\tQuintic: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k * k * k * k * k;\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn --k * k * k * k * k + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * k * k * k * k * k;\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * k * k * k + 2);\n\n\t\t}\n\n\t},\n\n\tSinusoidal: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - Math.cos(k * Math.PI / 2);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn Math.sin(k * Math.PI / 2);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\treturn 0.5 * (1 - Math.cos(Math.PI * k));\n\n\t\t}\n\n\t},\n\n\tExponential: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn k === 0 ? 0 : Math.pow(1024, k - 1);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn k === 1 ? 1 : 1 - Math.pow(2, - 10 * k);\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * Math.pow(1024, k - 1);\n\t\t\t}\n\n\t\t\treturn 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2);\n\n\t\t}\n\n\t},\n\n\tCircular: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - Math.sqrt(1 - k * k);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\treturn Math.sqrt(1 - (--k * k));\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn - 0.5 * (Math.sqrt(1 - k * k) - 1);\n\t\t\t}\n\n\t\t\treturn 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1);\n\n\t\t}\n\n\t},\n\n\tElastic: {\n\n\t\tIn: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\treturn -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\treturn Math.pow(2, -10 * k) * Math.sin((k - 0.1) * 5 * Math.PI) + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k === 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\tif (k === 1) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\tk *= 2;\n\n\t\t\tif (k < 1) {\n\t\t\t\treturn -0.5 * Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);\n\t\t\t}\n\n\t\t\treturn 0.5 * Math.pow(2, -10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI) + 1;\n\n\t\t}\n\n\t},\n\n\tBack: {\n\n\t\tIn: function (k) {\n\n\t\t\tvar s = 1.70158;\n\n\t\t\treturn k * k * ((s + 1) * k - s);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tvar s = 1.70158;\n\n\t\t\treturn --k * k * ((s + 1) * k + s) + 1;\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tvar s = 1.70158 * 1.525;\n\n\t\t\tif ((k *= 2) < 1) {\n\t\t\t\treturn 0.5 * (k * k * ((s + 1) * k - s));\n\t\t\t}\n\n\t\t\treturn 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2);\n\n\t\t}\n\n\t},\n\n\tBounce: {\n\n\t\tIn: function (k) {\n\n\t\t\treturn 1 - TWEEN.Easing.Bounce.Out(1 - k);\n\n\t\t},\n\n\t\tOut: function (k) {\n\n\t\t\tif (k < (1 / 2.75)) {\n\t\t\t\treturn 7.5625 * k * k;\n\t\t\t} else if (k < (2 / 2.75)) {\n\t\t\t\treturn 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75;\n\t\t\t} else if (k < (2.5 / 2.75)) {\n\t\t\t\treturn 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375;\n\t\t\t} else {\n\t\t\t\treturn 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375;\n\t\t\t}\n\n\t\t},\n\n\t\tInOut: function (k) {\n\n\t\t\tif (k < 0.5) {\n\t\t\t\treturn TWEEN.Easing.Bounce.In(k * 2) * 0.5;\n\t\t\t}\n\n\t\t\treturn TWEEN.Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5;\n\n\t\t}\n\n\t}\n\n};\n\nTWEEN.Interpolation = {\n\n\tLinear: function (v, k) {\n\n\t\tvar m = v.length - 1;\n\t\tvar f = m * k;\n\t\tvar i = Math.floor(f);\n\t\tvar fn = TWEEN.Interpolation.Utils.Linear;\n\n\t\tif (k < 0) {\n\t\t\treturn fn(v[0], v[1], f);\n\t\t}\n\n\t\tif (k > 1) {\n\t\t\treturn fn(v[m], v[m - 1], m - f);\n\t\t}\n\n\t\treturn fn(v[i], v[i + 1 > m ? m : i + 1], f - i);\n\n\t},\n\n\tBezier: function (v, k) {\n\n\t\tvar b = 0;\n\t\tvar n = v.length - 1;\n\t\tvar pw = Math.pow;\n\t\tvar bn = TWEEN.Interpolation.Utils.Bernstein;\n\n\t\tfor (var i = 0; i <= n; i++) {\n\t\t\tb += pw(1 - k, n - i) * pw(k, i) * v[i] * bn(n, i);\n\t\t}\n\n\t\treturn b;\n\n\t},\n\n\tCatmullRom: function (v, k) {\n\n\t\tvar m = v.length - 1;\n\t\tvar f = m * k;\n\t\tvar i = Math.floor(f);\n\t\tvar fn = TWEEN.Interpolation.Utils.CatmullRom;\n\n\t\tif (v[0] === v[m]) {\n\n\t\t\tif (k < 0) {\n\t\t\t\ti = Math.floor(f = m * (1 + k));\n\t\t\t}\n\n\t\t\treturn fn(v[(i - 1 + m) % m], v[i], v[(i + 1) % m], v[(i + 2) % m], f - i);\n\n\t\t} else {\n\n\t\t\tif (k < 0) {\n\t\t\t\treturn v[0] - (fn(v[0], v[0], v[1], v[1], -f) - v[0]);\n\t\t\t}\n\n\t\t\tif (k > 1) {\n\t\t\t\treturn v[m] - (fn(v[m], v[m], v[m - 1], v[m - 1], f - m) - v[m]);\n\t\t\t}\n\n\t\t\treturn fn(v[i ? i - 1 : 0], v[i], v[m < i + 1 ? m : i + 1], v[m < i + 2 ? m : i + 2], f - i);\n\n\t\t}\n\n\t},\n\n\tUtils: {\n\n\t\tLinear: function (p0, p1, t) {\n\n\t\t\treturn (p1 - p0) * t + p0;\n\n\t\t},\n\n\t\tBernstein: function (n, i) {\n\n\t\t\tvar fc = TWEEN.Interpolation.Utils.Factorial;\n\n\t\t\treturn fc(n) / fc(i) / fc(n - i);\n\n\t\t},\n\n\t\tFactorial: (function () {\n\n\t\t\tvar a = [1];\n\n\t\t\treturn function (n) {\n\n\t\t\t\tvar s = 1;\n\n\t\t\t\tif (a[n]) {\n\t\t\t\t\treturn a[n];\n\t\t\t\t}\n\n\t\t\t\tfor (var i = n; i > 1; i--) {\n\t\t\t\t\ts *= i;\n\t\t\t\t}\n\n\t\t\t\ta[n] = s;\n\t\t\t\treturn s;\n\n\t\t\t};\n\n\t\t})(),\n\n\t\tCatmullRom: function (p0, p1, p2, p3, t) {\n\n\t\t\tvar v0 = (p2 - p0) * 0.5;\n\t\t\tvar v1 = (p3 - p1) * 0.5;\n\t\t\tvar t2 = t * t;\n\t\t\tvar t3 = t * t2;\n\n\t\t\treturn (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;\n\n\t\t}\n\n\t}\n\n};\n\nexport default TWEEN;\n","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array<Array>} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array<ResizeObserverSPI>}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the <html> itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\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 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\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","import React from 'react';\n\nconst getUnhandledProps = (ComponentProps, props) => {\n const handledProps = Object.keys(ComponentProps);\n return Object.keys(props).reduce((acc, prop) => {\n if (handledProps.indexOf(prop) === -1) acc[prop] = props[prop];\n return acc;\n }, {});\n};\n\nconst showPreviousArrow = (\n { prevArrow, infinite },\n currentIndex,\n moveSlides\n) => {\n const isDisabled = currentIndex <= 0 && !infinite;\n const props = {\n 'data-type': 'prev',\n 'aria-label': 'Previous Slide',\n disabled: isDisabled,\n onClick: moveSlides\n };\n if (prevArrow) {\n return React.cloneElement(prevArrow, {\n className: `${prevArrow.props.className} nav ${\n isDisabled ? 'disabled' : ''\n }`,\n ...props\n });\n }\n const className = `nav default-nav ${isDisabled ? 'disabled' : ''}`;\n return (\n <button className={className} {...props}>\n <span />\n </button>\n );\n};\n\nconst showNextArrow = (\n { nextArrow, infinite, children },\n currentIndex,\n moveSlides\n) => {\n const isDisabled = currentIndex === children.length - 1 && !infinite;\n const props = {\n 'data-type': 'next',\n 'aria-label': 'Next Slide',\n disabled: isDisabled,\n onClick: moveSlides\n };\n if (nextArrow) {\n return React.cloneElement(nextArrow, {\n className: `${nextArrow.props.className} nav ${\n isDisabled ? 'disabled' : ''\n }`,\n ...props\n });\n }\n const className = `nav default-nav ${isDisabled ? 'disabled' : ''}`;\n return (\n <button className={className} {...props}>\n <span />\n </button>\n );\n};\n\nconst showDefaultIndicator = (currentIndex, key, indicatorProps) => {\n return (\n <li key={key}>\n <button\n className={`each-slideshow-indicator ${\n currentIndex === key ? 'active' : ''\n }`}\n {...indicatorProps}\n />\n </li>\n );\n};\n\nconst showCustomIndicator = (\n currentIndex,\n key,\n indicatorProps,\n eachIndicator\n) => {\n return React.cloneElement(eachIndicator, {\n className: `${eachIndicator.props.className} ${\n currentIndex === key ? 'active' : ''\n }`,\n key,\n ...indicatorProps\n });\n};\n\nconst showIndicators = (props, currentIndex, navigate) => {\n const { children, indicators } = props;\n const isCustomIndicator = typeof indicators !== 'boolean';\n\n return (\n <div className=\"indicators\">\n {children.map((_, key) => {\n const indicatorProps = {\n 'data-key': key,\n 'aria-label': `Go to slide ${key + 1}`,\n onClick: navigate\n };\n return isCustomIndicator\n ? showCustomIndicator(\n currentIndex,\n key,\n indicatorProps,\n indicators(key)\n )\n : showDefaultIndicator(currentIndex, key, indicatorProps);\n })}\n </div>\n );\n};\n\nexport { showNextArrow, showPreviousArrow, getUnhandledProps, showIndicators };\n","import React, { Component, createRef } from 'react';\nimport TWEEN from '@tweenjs/tween.js';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport PropTypes from 'prop-types';\nimport {\n getUnhandledProps,\n showNextArrow,\n showPreviousArrow,\n showIndicators\n} from './helpers.js';\n\nclass Slideshow extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.imageContainer = null;\n this.wrapper = null;\n this.timeout = null;\n this.moveSlides = this.moveSlides.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.reactSlideshowWrapper = createRef();\n this.goToSlide = this.goToSlide.bind(this);\n this.tweenGroup = new TWEEN.Group();\n }\n\n componentDidMount() {\n this.setWidth();\n this.initResizeObserver();\n const { autoplay, duration } = this.props;\n if (autoplay) {\n this.timeout = setTimeout(() => this.goNext(), duration);\n }\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n setWidth() {\n // the .slice.call was needed to support ie11\n this.allImages = Array.prototype.slice.call(\n this.wrapper.querySelectorAll(`.images-wrap > div`),\n 0\n );\n this.width = this.wrapper.clientWidth;\n const fullwidth = this.width * (this.props.children.length + 2);\n this.imageContainer.style.width = `${fullwidth}px`;\n this.imageContainer.style.transform = `translate(-${this.width *\n (this.state.index + 1)}px)`;\n this.applySlideStyle();\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.setWidth();\n }\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applySlideStyle() {\n this.allImages.forEach((eachImage, index) => {\n eachImage.style.width = `${this.width}px`;\n });\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n moveSlides({ currentTarget: { dataset } }) {\n if (dataset.type === 'next') {\n this.goNext();\n } else {\n this.goBack();\n }\n }\n\n goToSlide({ currentTarget }) {\n this.goTo(parseInt(currentTarget.dataset.key));\n }\n\n goTo(index) {\n this.slideImages(index);\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.slideImages(index + 1);\n }\n\n goBack() {\n const { index } = this.state;\n const { infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.slideImages(index - 1);\n }\n\n render() {\n const { children, infinite, indicators, arrows } = this.props;\n const unhandledProps = getUnhandledProps(Slideshow.propTypes, this.props);\n const { index } = this.state;\n const style = {\n transform: `translate(-${(index + 1) * this.width}px)`\n };\n\n return (\n <div aria-roledescription=\"carousel\" {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {arrows &&\n showPreviousArrow(this.props, this.state.index, this.moveSlides)}\n <div\n className={`react-slideshow-wrapper slide`}\n ref={ref => (this.wrapper = ref)}\n >\n <div\n className=\"images-wrap\"\n style={style}\n ref={ref => (this.imageContainer = ref)}\n >\n <div\n data-index=\"-1\"\n aria-roledescription=\"slide\"\n aria-hidden=\"false\"\n >\n {children[children.length - 1]}\n </div>\n {children.map((each, key) => (\n <div\n data-index={key}\n key={key}\n className={key === index ? 'active' : ''}\n aria-roledescription=\"slide\"\n aria-hidden={key === index ? 'false' : 'true'}\n >\n {each}\n </div>\n ))}\n <div\n data-index=\"-1\"\n aria-roledescription=\"slide\"\n aria-hidden=\"false\"\n >\n {children[0]}\n </div>\n </div>\n </div>\n {arrows &&\n showNextArrow(this.props, this.state.index, this.moveSlides)}\n </div>\n {indicators &&\n showIndicators(this.props, this.state.index, this.goToSlide)}\n </div>\n );\n }\n\n slideImages(index) {\n let {\n children,\n transitionDuration,\n autoplay,\n infinite,\n duration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n clearTimeout(this.timeout);\n const value = { margin: -this.width * (this.state.index + 1) };\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ margin: -this.width * (index + 1) }, transitionDuration)\n .onUpdate(value => {\n this.imageContainer.style.transform = `translate(${value.margin}px)`;\n })\n .start();\n\n let animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n tween.onComplete(() => {\n const newIndex =\n index < 0\n ? children.length - 1\n : index >= children.length\n ? 0\n : index;\n if (this.willUnmount) {\n return;\n }\n if (typeof onChange === 'function') {\n onChange(this.state.index, newIndex);\n }\n this.setState(\n {\n index: newIndex\n },\n () => {\n if (autoplay && (infinite || this.state.index < children.length)) {\n this.timeout = setTimeout(() => this.goNext(), duration);\n }\n }\n );\n });\n }\n }\n}\n\nSlideshow.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n infinite: true,\n autoplay: true,\n indicators: false,\n arrows: true,\n pauseOnHover: true\n};\n\nSlideshow.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n infinite: PropTypes.bool,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n autoplay: PropTypes.bool,\n arrows: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Slideshow;\n","import React, { Component, createRef } from 'react';\nimport PropTypes from 'prop-types';\nimport TWEEN from '@tweenjs/tween.js';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport {\n getUnhandledProps,\n showNextArrow,\n showPreviousArrow,\n showIndicators\n} from './helpers.js';\n\nclass Fade extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.timeout = null;\n this.divsContainer = null;\n this.wrapper = null;\n this.setWidth = this.setWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.navigate = this.navigate.bind(this);\n this.preFade = this.preFade.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.tweenGroup = new TWEEN.Group();\n this.reactSlideshowWrapper = createRef();\n this.wrapper = createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n this.play();\n this.initResizeObserver();\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n play() {\n const { autoplay, children } = this.props;\n const { index } = this.state;\n if (autoplay && children.length > 1) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(\n () => this.fadeImages(index + 1),\n this.props.duration\n );\n }\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.play();\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.applyStyle();\n this.play();\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n setWidth() {\n this.width = this.wrapper.current.clientWidth;\n this.applyStyle();\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applyStyle() {\n const fullwidth = this.width * this.props.children.length;\n this.divsContainer.style.width = `${fullwidth}px`;\n for (let index = 0; index < this.divsContainer.children.length; index++) {\n const eachDiv = this.divsContainer.children[index];\n if (eachDiv) {\n eachDiv.style.width = `${this.width}px`;\n eachDiv.style.left = `${index * -this.width}px`;\n }\n }\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.fadeImages((index + 1) % children.length);\n }\n\n goBack() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.fadeImages(index === 0 ? children.length - 1 : index - 1);\n }\n\n navigate({ currentTarget: { dataset } }) {\n if (dataset.key != this.state.index) {\n this.goTo(parseInt(dataset.key));\n }\n }\n\n goTo(index) {\n this.fadeImages(index);\n }\n\n preFade({ currentTarget }) {\n if (currentTarget.dataset.type === 'prev') {\n this.goBack();\n } else {\n this.goNext();\n }\n }\n\n render() {\n const { indicators, children, arrows } = this.props;\n const { index } = this.state;\n const unhandledProps = getUnhandledProps(Fade.propTypes, this.props);\n return (\n <div aria-roledescription=\"carousel\" {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {arrows &&\n showPreviousArrow(this.props, this.state.index, this.preFade)}\n <div className=\"react-slideshow-fade-wrapper\" ref={this.wrapper}>\n <div\n className=\"react-slideshow-fade-images-wrap\"\n ref={wrap => (this.divsContainer = wrap)}\n >\n {children.map((each, key) => (\n <div\n style={{\n opacity: key === index ? '1' : '0',\n zIndex: key === index ? '1' : '0'\n }}\n data-index={key}\n key={key}\n aria-roledescription=\"slide\"\n aria-hidden={key === index ? 'false' : 'true'}\n >\n {each}\n </div>\n ))}\n </div>\n </div>\n {arrows && showNextArrow(this.props, this.state.index, this.preFade)}\n </div>\n {indicators &&\n showIndicators(this.props, this.state.index, this.navigate)}\n </div>\n );\n }\n\n fadeImages(newIndex) {\n const { index } = this.state;\n const {\n autoplay,\n children,\n infinite,\n duration,\n transitionDuration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n if (!this.divsContainer.children[newIndex]) {\n newIndex = 0;\n }\n clearTimeout(this.timeout);\n const value = { opacity: 0 };\n\n const animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ opacity: 1 }, transitionDuration)\n .onUpdate(value => {\n this.divsContainer.children[newIndex].style.opacity = value.opacity;\n this.divsContainer.children[index].style.opacity = 1 - value.opacity;\n })\n .start();\n\n tween.onComplete(() => {\n if (this.willUnmount) {\n return;\n }\n this.setState({\n index: newIndex\n });\n if (typeof onChange === 'function') {\n onChange(index, newIndex);\n }\n if (autoplay && (infinite || newIndex < children.length - 1)) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => {\n this.fadeImages((newIndex + 1) % children.length);\n }, duration);\n }\n });\n }\n }\n}\n\nFade.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n indicators: false,\n arrows: true,\n autoplay: true,\n infinite: true,\n pauseOnHover: true\n};\n\nFade.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n arrows: PropTypes.bool,\n autoplay: PropTypes.bool,\n infinite: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Fade;\n","import React, { Component, createRef } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport PropTypes from 'prop-types';\nimport TWEEN from '@tweenjs/tween.js';\nimport {\n getUnhandledProps,\n showNextArrow,\n showPreviousArrow,\n showIndicators\n} from './helpers.js';\n\nclass Zoom extends Component {\n constructor(props) {\n super(props);\n this.state = {\n index:\n props.defaultIndex && props.defaultIndex < props.children.length\n ? props.defaultIndex\n : 0\n };\n this.width = 0;\n this.timeout = null;\n this.divsContainer = null;\n this.wrapper = null;\n this.setWidth = this.setWidth.bind(this);\n this.handleResize = this.handleResize.bind(this);\n this.navigate = this.navigate.bind(this);\n this.preZoom = this.preZoom.bind(this);\n this.pauseSlides = this.pauseSlides.bind(this);\n this.startSlides = this.startSlides.bind(this);\n this.tweenGroup = new TWEEN.Group();\n this.initResizeObserver = this.initResizeObserver.bind(this);\n this.reactSlideshowWrapper = createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n this.play();\n this.initResizeObserver();\n }\n\n initResizeObserver() {\n this.resizeObserver = new ResizeObserver(entries => {\n if (!entries) return;\n this.handleResize();\n });\n this.resizeObserver.observe(this.reactSlideshowWrapper.current);\n }\n\n play() {\n const { autoplay, children } = this.props;\n const { index } = this.state;\n if (autoplay && children.length > 1) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(\n () => this.zoomTo(index + 1),\n this.props.duration\n );\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n clearTimeout(this.timeout);\n this.removeResizeObserver();\n }\n\n removeResizeObserver() {\n if (\n this.resizeObserver &&\n this.reactSlideshowWrapper &&\n this.reactSlideshowWrapper.current\n ) {\n this.resizeObserver.unobserve(this.reactSlideshowWrapper.current);\n }\n }\n\n componentDidUpdate(props) {\n if (this.props.autoplay !== props.autoplay) {\n if (this.props.autoplay) {\n this.play();\n } else {\n clearTimeout(this.timeout);\n }\n }\n if (this.props.children.length != props.children.length) {\n this.applyStyle();\n this.play();\n }\n }\n\n setWidth() {\n this.width = this.wrapper.clientWidth;\n this.applyStyle();\n }\n\n handleResize() {\n this.setWidth();\n }\n\n applyStyle() {\n const fullwidth = this.width * this.props.children.length;\n this.divsContainer.style.width = `${fullwidth}px`;\n for (let index = 0; index < this.divsContainer.children.length; index++) {\n const eachDiv = this.divsContainer.children[index];\n if (eachDiv) {\n eachDiv.style.width = `${this.width}px`;\n eachDiv.style.left = `${index * -this.width}px`;\n }\n }\n }\n\n pauseSlides() {\n if (this.props.pauseOnHover) {\n clearTimeout(this.timeout);\n }\n }\n\n startSlides() {\n const { pauseOnHover, autoplay } = this.props;\n if (pauseOnHover && autoplay) {\n this.timeout = setTimeout(() => this.goNext(), this.props.duration);\n }\n }\n\n goNext() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === children.length - 1) {\n return;\n }\n this.zoomTo((index + 1) % children.length);\n }\n\n goBack() {\n const { index } = this.state;\n const { children, infinite } = this.props;\n if (!infinite && index === 0) {\n return;\n }\n this.zoomTo(index === 0 ? children.length - 1 : index - 1);\n }\n\n goTo(index) {\n this.zoomTo(index);\n }\n\n navigate({ currentTarget: { dataset } }) {\n if (dataset.key != this.state.index) {\n this.goTo(parseInt(dataset.key));\n }\n }\n\n preZoom({ currentTarget }) {\n if (currentTarget.dataset.type === 'prev') {\n this.goBack();\n } else {\n this.goNext();\n }\n }\n\n render() {\n const { indicators, arrows, children } = this.props;\n const { index } = this.state;\n const unhandledProps = getUnhandledProps(Zoom.propTypes, this.props);\n return (\n <div aria-roledescription=\"carousel\" {...unhandledProps}>\n <div\n className=\"react-slideshow-container\"\n onMouseEnter={this.pauseSlides}\n onMouseLeave={this.startSlides}\n ref={this.reactSlideshowWrapper}\n >\n {arrows &&\n showPreviousArrow(this.props, this.state.index, this.preZoom)}\n <div\n className=\"react-slideshow-zoom-wrapper\"\n ref={ref => (this.wrapper = ref)}\n >\n <div\n className=\"zoom-wrapper\"\n ref={wrap => (this.divsContainer = wrap)}\n >\n {children.map((each, key) => (\n <div\n style={{\n opacity: key === index ? '1' : '0',\n zIndex: key === index ? '1' : '0'\n }}\n data-index={key}\n key={key}\n aria-roledescription=\"slide\"\n aria-hidden={key === index ? 'false' : 'true'}\n >\n {each}\n </div>\n ))}\n </div>\n </div>\n {arrows && showNextArrow(this.props, this.state.index, this.preZoom)}\n </div>\n {indicators &&\n showIndicators(this.props, this.state.index, this.navigate)}\n </div>\n );\n }\n\n zoomTo(newIndex) {\n const { index } = this.state;\n const {\n children,\n scale,\n autoplay,\n infinite,\n transitionDuration,\n duration,\n onChange\n } = this.props;\n const existingTweens = this.tweenGroup.getAll();\n if (!existingTweens.length) {\n if (!this.divsContainer.children[newIndex]) {\n newIndex = 0;\n }\n clearTimeout(this.timeout);\n const value = {\n opacity: 0,\n scale: 1\n };\n\n let animate = () => {\n if (this.willUnmount) {\n this.tweenGroup.removeAll();\n return;\n }\n requestAnimationFrame(animate);\n this.tweenGroup.update();\n };\n\n animate();\n\n const tween = new TWEEN.Tween(value, this.tweenGroup)\n .to({ opacity: 1, scale }, transitionDuration)\n .onUpdate(value => {\n this.divsContainer.children[newIndex].style.opacity = value.opacity;\n this.divsContainer.children[index].style.opacity = 1 - value.opacity;\n this.divsContainer.children[\n index\n ].style.transform = `scale(${value.scale})`;\n })\n .start();\n\n tween.onComplete(() => {\n if (this.willUnmount) {\n return;\n }\n if (typeof onChange === 'function') {\n onChange(index, newIndex);\n }\n this.setState(\n {\n index: newIndex\n },\n () => {\n this.divsContainer.children[index].style.transform = `scale(1)`;\n }\n );\n if (autoplay && (infinite || newIndex < children.length - 1)) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => {\n this.zoomTo((newIndex + 1) % children.length);\n }, duration);\n }\n });\n }\n }\n}\n\nZoom.defaultProps = {\n duration: 5000,\n transitionDuration: 1000,\n defaultIndex: 0,\n indicators: false,\n arrows: true,\n autoplay: true,\n infinite: true,\n pauseOnHover: true\n};\n\nZoom.propTypes = {\n duration: PropTypes.number,\n transitionDuration: PropTypes.number,\n defaultIndex: PropTypes.number,\n indicators: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n scale: PropTypes.number.isRequired,\n arrows: PropTypes.bool,\n autoplay: PropTypes.bool,\n infinite: PropTypes.bool,\n onChange: PropTypes.func,\n pauseOnHover: PropTypes.bool,\n prevArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n nextArrow: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n};\nexport default Zoom;\n"],"sourceRoot":""}