{"version":3,"file":"vendors-node_modules_react-text-loop_es_index_js-node_modules_babel_runtime_helpers_esm_toCon-75b060.js","mappings":"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","sources":["webpack://ecommerce/./node_modules/cxs/dist/index.js","webpack://ecommerce/./node_modules/performance-now/lib/performance-now.js","webpack://ecommerce/./node_modules/raf/index.js","webpack://ecommerce/./node_modules/raf/node_modules/performance-now/lib/performance-now.js","webpack://ecommerce/./node_modules/react-fast-compare/index.js","webpack://ecommerce/./node_modules/react-motion/lib/Motion.js","webpack://ecommerce/./node_modules/react-motion/lib/StaggeredMotion.js","webpack://ecommerce/./node_modules/react-motion/lib/TransitionMotion.js","webpack://ecommerce/./node_modules/react-motion/lib/mapToZero.js","webpack://ecommerce/./node_modules/react-motion/lib/mergeDiff.js","webpack://ecommerce/./node_modules/react-motion/lib/presets.js","webpack://ecommerce/./node_modules/react-motion/lib/react-motion.js","webpack://ecommerce/./node_modules/react-motion/lib/reorderKeys.js","webpack://ecommerce/./node_modules/react-motion/lib/shouldStopAnimation.js","webpack://ecommerce/./node_modules/react-motion/lib/spring.js","webpack://ecommerce/./node_modules/react-motion/lib/stepper.js","webpack://ecommerce/./node_modules/react-motion/lib/stripStyle.js","webpack://ecommerce/./node_modules/react-text-loop/es/utils.js","webpack://ecommerce/./node_modules/react-text-loop/es/components/TextLoop.js","webpack://ecommerce/./node_modules/react-text-loop/es/index.js","webpack://ecommerce/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://ecommerce/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://ecommerce/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://ecommerce/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js"],"sourcesContent":["'use strict';\n\nvar cache = {};\nvar prefix = 'x';\nvar rules = [];\nvar insert = function insert(rule) {\n return rules.push(rule);\n};\nvar hyph = function hyph(s) {\n return s.replace(/[A-Z]|^ms/g, '-$&').toLowerCase();\n};\nvar mx = function mx(rule, media) {\n return media ? media + '{' + rule + '}' : rule;\n};\nvar rx = function rx(cn, prop, val) {\n return '.' + cn + '{' + hyph(prop) + ':' + val + '}';\n};\nvar noAnd = function noAnd(s) {\n return s.replace(/&/g, '');\n};\n\nvar parse = function parse(obj) {\n var child = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var media = arguments[2];\n return Object.keys(obj).map(function (key) {\n var val = obj[key];\n if (val === null) return '';\n if (typeof val === 'object') {\n var m2 = /^@/.test(key) ? key : null;\n var c2 = m2 ? child : child + key;\n return parse(val, c2, m2 || media);\n }\n var _key = key + val + child + media;\n if (cache[_key]) return cache[_key];\n var className = prefix + rules.length.toString(36);\n insert(mx(rx(className + noAnd(child), key, val), media));\n cache[_key] = className;\n return className;\n }).join(' ');\n};\n\nmodule.exports = function () {\n for (var _len = arguments.length, styles = Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n styles[_key2] = arguments[_key2];\n }\n\n return styles.map(function (style) {\n return parse(style);\n }).join(' ').trim();\n};\n\nmodule.exports.css = function () {\n return rules.sort().join('');\n};\n\nmodule.exports.reset = function () {\n cache = {};\n while (rules.length) {\n rules.pop();\n }\n};\n\nmodule.exports.prefix = function (val) {\n return prefix = val;\n};\n\nif (typeof document !== 'undefined') {\n var sheet = document.head.appendChild(document.createElement('style')).sheet;\n insert = function insert(rule) {\n rules.push(rule);\n sheet.insertRule(rule, sheet.cssRules.length);\n };\n}","// Generated by CoffeeScript 1.7.1\n(function() {\n var getNanoSeconds, hrtime, loadTime;\n\n if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n module.exports = function() {\n return performance.now();\n };\n } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n module.exports = function() {\n return (getNanoSeconds() - loadTime) / 1e6;\n };\n hrtime = process.hrtime;\n getNanoSeconds = function() {\n var hr;\n hr = hrtime();\n return hr[0] * 1e9 + hr[1];\n };\n loadTime = getNanoSeconds();\n } else if (Date.now) {\n module.exports = function() {\n return Date.now() - loadTime;\n };\n loadTime = Date.now();\n } else {\n module.exports = function() {\n return new Date().getTime() - loadTime;\n };\n loadTime = new Date().getTime();\n }\n\n}).call(this);\n","var now = require('performance-now')\n , root = typeof window === 'undefined' ? global : window\n , vendors = ['moz', 'webkit']\n , suffix = 'AnimationFrame'\n , raf = root['request' + suffix]\n , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]\n\nfor(var i = 0; !raf && i < vendors.length; i++) {\n raf = root[vendors[i] + 'Request' + suffix]\n caf = root[vendors[i] + 'Cancel' + suffix]\n || root[vendors[i] + 'CancelRequest' + suffix]\n}\n\n// Some versions of FF have rAF but not cAF\nif(!raf || !caf) {\n var last = 0\n , id = 0\n , queue = []\n , frameDuration = 1000 / 60\n\n raf = function(callback) {\n if(queue.length === 0) {\n var _now = now()\n , next = Math.max(0, frameDuration - (_now - last))\n last = next + _now\n setTimeout(function() {\n var cp = queue.slice(0)\n // Clear queue here to prevent\n // callbacks from appending listeners\n // to the current frame's queue\n queue.length = 0\n for(var i = 0; i < cp.length; i++) {\n if(!cp[i].cancelled) {\n try{\n cp[i].callback(last)\n } catch(e) {\n setTimeout(function() { throw e }, 0)\n }\n }\n }\n }, Math.round(next))\n }\n queue.push({\n handle: ++id,\n callback: callback,\n cancelled: false\n })\n return id\n }\n\n caf = function(handle) {\n for(var i = 0; i < queue.length; i++) {\n if(queue[i].handle === handle) {\n queue[i].cancelled = true\n }\n }\n }\n}\n\nmodule.exports = function(fn) {\n // Wrap in a new function to prevent\n // `cancel` potentially being assigned\n // to the native rAF function\n return raf.call(root, fn)\n}\nmodule.exports.cancel = function() {\n caf.apply(root, arguments)\n}\nmodule.exports.polyfill = function(object) {\n if (!object) {\n object = root;\n }\n object.requestAnimationFrame = raf\n object.cancelAnimationFrame = caf\n}\n","// Generated by CoffeeScript 1.12.2\n(function() {\n var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;\n\n if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n module.exports = function() {\n return performance.now();\n };\n } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n module.exports = function() {\n return (getNanoSeconds() - nodeLoadTime) / 1e6;\n };\n hrtime = process.hrtime;\n getNanoSeconds = function() {\n var hr;\n hr = hrtime();\n return hr[0] * 1e9 + hr[1];\n };\n moduleLoadTime = getNanoSeconds();\n upTime = process.uptime() * 1e9;\n nodeLoadTime = moduleLoadTime - upTime;\n } else if (Date.now) {\n module.exports = function() {\n return Date.now() - loadTime;\n };\n loadTime = Date.now();\n } else {\n module.exports = function() {\n return new Date().getTime() - loadTime;\n };\n loadTime = new Date().getTime();\n }\n\n}).call(this);\n\n//# sourceMappingURL=performance-now.js.map\n","'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n // end fast-deep-equal\n\n // start react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element && b instanceof Element)\n return a === b;\n\n // custom handling for React\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n }\n // end react-fast-compare\n\n // fast-deep-equal index.js 2.0.1\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message && error.message.match(/stack|recursion/i)) || (error.number === -2146828260)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar _mapToZero = require('./mapToZero');\n\nvar _mapToZero2 = _interopRequireDefault(_mapToZero);\n\nvar _stripStyle = require('./stripStyle');\n\nvar _stripStyle2 = _interopRequireDefault(_stripStyle);\n\nvar _stepper3 = require('./stepper');\n\nvar _stepper4 = _interopRequireDefault(_stepper3);\n\nvar _performanceNow = require('performance-now');\n\nvar _performanceNow2 = _interopRequireDefault(_performanceNow);\n\nvar _raf = require('raf');\n\nvar _raf2 = _interopRequireDefault(_raf);\n\nvar _shouldStopAnimation = require('./shouldStopAnimation');\n\nvar _shouldStopAnimation2 = _interopRequireDefault(_shouldStopAnimation);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar msPerFrame = 1000 / 60;\n\nvar Motion = (function (_React$Component) {\n _inherits(Motion, _React$Component);\n\n _createClass(Motion, null, [{\n key: 'propTypes',\n value: {\n // TOOD: warn against putting a config in here\n defaultStyle: _propTypes2['default'].objectOf(_propTypes2['default'].number),\n style: _propTypes2['default'].objectOf(_propTypes2['default'].oneOfType([_propTypes2['default'].number, _propTypes2['default'].object])).isRequired,\n children: _propTypes2['default'].func.isRequired,\n onRest: _propTypes2['default'].func\n },\n enumerable: true\n }]);\n\n function Motion(props) {\n var _this = this;\n\n _classCallCheck(this, Motion);\n\n _React$Component.call(this, props);\n this.wasAnimating = false;\n this.animationID = null;\n this.prevTime = 0;\n this.accumulatedTime = 0;\n this.unreadPropStyle = null;\n\n this.clearUnreadPropStyle = function (destStyle) {\n var dirty = false;\n var _state = _this.state;\n var currentStyle = _state.currentStyle;\n var currentVelocity = _state.currentVelocity;\n var lastIdealStyle = _state.lastIdealStyle;\n var lastIdealVelocity = _state.lastIdealVelocity;\n\n for (var key in destStyle) {\n if (!Object.prototype.hasOwnProperty.call(destStyle, key)) {\n continue;\n }\n\n var styleValue = destStyle[key];\n if (typeof styleValue === 'number') {\n if (!dirty) {\n dirty = true;\n currentStyle = _extends({}, currentStyle);\n currentVelocity = _extends({}, currentVelocity);\n lastIdealStyle = _extends({}, lastIdealStyle);\n lastIdealVelocity = _extends({}, lastIdealVelocity);\n }\n\n currentStyle[key] = styleValue;\n currentVelocity[key] = 0;\n lastIdealStyle[key] = styleValue;\n lastIdealVelocity[key] = 0;\n }\n }\n\n if (dirty) {\n _this.setState({ currentStyle: currentStyle, currentVelocity: currentVelocity, lastIdealStyle: lastIdealStyle, lastIdealVelocity: lastIdealVelocity });\n }\n };\n\n this.startAnimationIfNecessary = function () {\n // TODO: when config is {a: 10} and dest is {a: 10} do we raf once and\n // call cb? No, otherwise accidental parent rerender causes cb trigger\n _this.animationID = _raf2['default'](function (timestamp) {\n // check if we need to animate in the first place\n var propsStyle = _this.props.style;\n if (_shouldStopAnimation2['default'](_this.state.currentStyle, propsStyle, _this.state.currentVelocity)) {\n if (_this.wasAnimating && _this.props.onRest) {\n _this.props.onRest();\n }\n\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.wasAnimating = false;\n _this.accumulatedTime = 0;\n return;\n }\n\n _this.wasAnimating = true;\n\n var currentTime = timestamp || _performanceNow2['default']();\n var timeDelta = currentTime - _this.prevTime;\n _this.prevTime = currentTime;\n _this.accumulatedTime = _this.accumulatedTime + timeDelta;\n // more than 10 frames? prolly switched browser tab. Restart\n if (_this.accumulatedTime > msPerFrame * 10) {\n _this.accumulatedTime = 0;\n }\n\n if (_this.accumulatedTime === 0) {\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.startAnimationIfNecessary();\n return;\n }\n\n var currentFrameCompletion = (_this.accumulatedTime - Math.floor(_this.accumulatedTime / msPerFrame) * msPerFrame) / msPerFrame;\n var framesToCatchUp = Math.floor(_this.accumulatedTime / msPerFrame);\n\n var newLastIdealStyle = {};\n var newLastIdealVelocity = {};\n var newCurrentStyle = {};\n var newCurrentVelocity = {};\n\n for (var key in propsStyle) {\n if (!Object.prototype.hasOwnProperty.call(propsStyle, key)) {\n continue;\n }\n\n var styleValue = propsStyle[key];\n if (typeof styleValue === 'number') {\n newCurrentStyle[key] = styleValue;\n newCurrentVelocity[key] = 0;\n newLastIdealStyle[key] = styleValue;\n newLastIdealVelocity[key] = 0;\n } else {\n var newLastIdealStyleValue = _this.state.lastIdealStyle[key];\n var newLastIdealVelocityValue = _this.state.lastIdealVelocity[key];\n for (var i = 0; i < framesToCatchUp; i++) {\n var _stepper = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n newLastIdealStyleValue = _stepper[0];\n newLastIdealVelocityValue = _stepper[1];\n }\n\n var _stepper2 = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n var nextIdealX = _stepper2[0];\n var nextIdealV = _stepper2[1];\n\n newCurrentStyle[key] = newLastIdealStyleValue + (nextIdealX - newLastIdealStyleValue) * currentFrameCompletion;\n newCurrentVelocity[key] = newLastIdealVelocityValue + (nextIdealV - newLastIdealVelocityValue) * currentFrameCompletion;\n newLastIdealStyle[key] = newLastIdealStyleValue;\n newLastIdealVelocity[key] = newLastIdealVelocityValue;\n }\n }\n\n _this.animationID = null;\n // the amount we're looped over above\n _this.accumulatedTime -= framesToCatchUp * msPerFrame;\n\n _this.setState({\n currentStyle: newCurrentStyle,\n currentVelocity: newCurrentVelocity,\n lastIdealStyle: newLastIdealStyle,\n lastIdealVelocity: newLastIdealVelocity\n });\n\n _this.unreadPropStyle = null;\n\n _this.startAnimationIfNecessary();\n });\n };\n\n this.state = this.defaultState();\n }\n\n Motion.prototype.defaultState = function defaultState() {\n var _props = this.props;\n var defaultStyle = _props.defaultStyle;\n var style = _props.style;\n\n var currentStyle = defaultStyle || _stripStyle2['default'](style);\n var currentVelocity = _mapToZero2['default'](currentStyle);\n return {\n currentStyle: currentStyle,\n currentVelocity: currentVelocity,\n lastIdealStyle: currentStyle,\n lastIdealVelocity: currentVelocity\n };\n };\n\n // it's possible that currentStyle's value is stale: if props is immediately\n // changed from 0 to 400 to spring(0) again, the async currentStyle is still\n // at 0 (didn't have time to tick and interpolate even once). If we naively\n // compare currentStyle with destVal it'll be 0 === 0 (no animation, stop).\n // In reality currentStyle should be 400\n\n Motion.prototype.componentDidMount = function componentDidMount() {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n };\n\n Motion.prototype.componentWillReceiveProps = function componentWillReceiveProps(props) {\n if (this.unreadPropStyle != null) {\n // previous props haven't had the chance to be set yet; set them here\n this.clearUnreadPropStyle(this.unreadPropStyle);\n }\n\n this.unreadPropStyle = props.style;\n if (this.animationID == null) {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n }\n };\n\n Motion.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.animationID != null) {\n _raf2['default'].cancel(this.animationID);\n this.animationID = null;\n }\n };\n\n Motion.prototype.render = function render() {\n var renderedChildren = this.props.children(this.state.currentStyle);\n return renderedChildren && _react2['default'].Children.only(renderedChildren);\n };\n\n return Motion;\n})(_react2['default'].Component);\n\nexports['default'] = Motion;\nmodule.exports = exports['default'];\n\n// after checking for unreadPropStyle != null, we manually go set the\n// non-interpolating values (those that are a number, without a spring\n// config)","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar _mapToZero = require('./mapToZero');\n\nvar _mapToZero2 = _interopRequireDefault(_mapToZero);\n\nvar _stripStyle = require('./stripStyle');\n\nvar _stripStyle2 = _interopRequireDefault(_stripStyle);\n\nvar _stepper3 = require('./stepper');\n\nvar _stepper4 = _interopRequireDefault(_stepper3);\n\nvar _performanceNow = require('performance-now');\n\nvar _performanceNow2 = _interopRequireDefault(_performanceNow);\n\nvar _raf = require('raf');\n\nvar _raf2 = _interopRequireDefault(_raf);\n\nvar _shouldStopAnimation = require('./shouldStopAnimation');\n\nvar _shouldStopAnimation2 = _interopRequireDefault(_shouldStopAnimation);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar msPerFrame = 1000 / 60;\n\nfunction shouldStopAnimationAll(currentStyles, styles, currentVelocities) {\n for (var i = 0; i < currentStyles.length; i++) {\n if (!_shouldStopAnimation2['default'](currentStyles[i], styles[i], currentVelocities[i])) {\n return false;\n }\n }\n return true;\n}\n\nvar StaggeredMotion = (function (_React$Component) {\n _inherits(StaggeredMotion, _React$Component);\n\n _createClass(StaggeredMotion, null, [{\n key: 'propTypes',\n value: {\n // TOOD: warn against putting a config in here\n defaultStyles: _propTypes2['default'].arrayOf(_propTypes2['default'].objectOf(_propTypes2['default'].number)),\n styles: _propTypes2['default'].func.isRequired,\n children: _propTypes2['default'].func.isRequired\n },\n enumerable: true\n }]);\n\n function StaggeredMotion(props) {\n var _this = this;\n\n _classCallCheck(this, StaggeredMotion);\n\n _React$Component.call(this, props);\n this.animationID = null;\n this.prevTime = 0;\n this.accumulatedTime = 0;\n this.unreadPropStyles = null;\n\n this.clearUnreadPropStyle = function (unreadPropStyles) {\n var _state = _this.state;\n var currentStyles = _state.currentStyles;\n var currentVelocities = _state.currentVelocities;\n var lastIdealStyles = _state.lastIdealStyles;\n var lastIdealVelocities = _state.lastIdealVelocities;\n\n var someDirty = false;\n for (var i = 0; i < unreadPropStyles.length; i++) {\n var unreadPropStyle = unreadPropStyles[i];\n var dirty = false;\n\n for (var key in unreadPropStyle) {\n if (!Object.prototype.hasOwnProperty.call(unreadPropStyle, key)) {\n continue;\n }\n\n var styleValue = unreadPropStyle[key];\n if (typeof styleValue === 'number') {\n if (!dirty) {\n dirty = true;\n someDirty = true;\n currentStyles[i] = _extends({}, currentStyles[i]);\n currentVelocities[i] = _extends({}, currentVelocities[i]);\n lastIdealStyles[i] = _extends({}, lastIdealStyles[i]);\n lastIdealVelocities[i] = _extends({}, lastIdealVelocities[i]);\n }\n currentStyles[i][key] = styleValue;\n currentVelocities[i][key] = 0;\n lastIdealStyles[i][key] = styleValue;\n lastIdealVelocities[i][key] = 0;\n }\n }\n }\n\n if (someDirty) {\n _this.setState({ currentStyles: currentStyles, currentVelocities: currentVelocities, lastIdealStyles: lastIdealStyles, lastIdealVelocities: lastIdealVelocities });\n }\n };\n\n this.startAnimationIfNecessary = function () {\n // TODO: when config is {a: 10} and dest is {a: 10} do we raf once and\n // call cb? No, otherwise accidental parent rerender causes cb trigger\n _this.animationID = _raf2['default'](function (timestamp) {\n var destStyles = _this.props.styles(_this.state.lastIdealStyles);\n\n // check if we need to animate in the first place\n if (shouldStopAnimationAll(_this.state.currentStyles, destStyles, _this.state.currentVelocities)) {\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.accumulatedTime = 0;\n return;\n }\n\n var currentTime = timestamp || _performanceNow2['default']();\n var timeDelta = currentTime - _this.prevTime;\n _this.prevTime = currentTime;\n _this.accumulatedTime = _this.accumulatedTime + timeDelta;\n // more than 10 frames? prolly switched browser tab. Restart\n if (_this.accumulatedTime > msPerFrame * 10) {\n _this.accumulatedTime = 0;\n }\n\n if (_this.accumulatedTime === 0) {\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.startAnimationIfNecessary();\n return;\n }\n\n var currentFrameCompletion = (_this.accumulatedTime - Math.floor(_this.accumulatedTime / msPerFrame) * msPerFrame) / msPerFrame;\n var framesToCatchUp = Math.floor(_this.accumulatedTime / msPerFrame);\n\n var newLastIdealStyles = [];\n var newLastIdealVelocities = [];\n var newCurrentStyles = [];\n var newCurrentVelocities = [];\n\n for (var i = 0; i < destStyles.length; i++) {\n var destStyle = destStyles[i];\n var newCurrentStyle = {};\n var newCurrentVelocity = {};\n var newLastIdealStyle = {};\n var newLastIdealVelocity = {};\n\n for (var key in destStyle) {\n if (!Object.prototype.hasOwnProperty.call(destStyle, key)) {\n continue;\n }\n\n var styleValue = destStyle[key];\n if (typeof styleValue === 'number') {\n newCurrentStyle[key] = styleValue;\n newCurrentVelocity[key] = 0;\n newLastIdealStyle[key] = styleValue;\n newLastIdealVelocity[key] = 0;\n } else {\n var newLastIdealStyleValue = _this.state.lastIdealStyles[i][key];\n var newLastIdealVelocityValue = _this.state.lastIdealVelocities[i][key];\n for (var j = 0; j < framesToCatchUp; j++) {\n var _stepper = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n newLastIdealStyleValue = _stepper[0];\n newLastIdealVelocityValue = _stepper[1];\n }\n\n var _stepper2 = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n var nextIdealX = _stepper2[0];\n var nextIdealV = _stepper2[1];\n\n newCurrentStyle[key] = newLastIdealStyleValue + (nextIdealX - newLastIdealStyleValue) * currentFrameCompletion;\n newCurrentVelocity[key] = newLastIdealVelocityValue + (nextIdealV - newLastIdealVelocityValue) * currentFrameCompletion;\n newLastIdealStyle[key] = newLastIdealStyleValue;\n newLastIdealVelocity[key] = newLastIdealVelocityValue;\n }\n }\n\n newCurrentStyles[i] = newCurrentStyle;\n newCurrentVelocities[i] = newCurrentVelocity;\n newLastIdealStyles[i] = newLastIdealStyle;\n newLastIdealVelocities[i] = newLastIdealVelocity;\n }\n\n _this.animationID = null;\n // the amount we're looped over above\n _this.accumulatedTime -= framesToCatchUp * msPerFrame;\n\n _this.setState({\n currentStyles: newCurrentStyles,\n currentVelocities: newCurrentVelocities,\n lastIdealStyles: newLastIdealStyles,\n lastIdealVelocities: newLastIdealVelocities\n });\n\n _this.unreadPropStyles = null;\n\n _this.startAnimationIfNecessary();\n });\n };\n\n this.state = this.defaultState();\n }\n\n StaggeredMotion.prototype.defaultState = function defaultState() {\n var _props = this.props;\n var defaultStyles = _props.defaultStyles;\n var styles = _props.styles;\n\n var currentStyles = defaultStyles || styles().map(_stripStyle2['default']);\n var currentVelocities = currentStyles.map(function (currentStyle) {\n return _mapToZero2['default'](currentStyle);\n });\n return {\n currentStyles: currentStyles,\n currentVelocities: currentVelocities,\n lastIdealStyles: currentStyles,\n lastIdealVelocities: currentVelocities\n };\n };\n\n StaggeredMotion.prototype.componentDidMount = function componentDidMount() {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n };\n\n StaggeredMotion.prototype.componentWillReceiveProps = function componentWillReceiveProps(props) {\n if (this.unreadPropStyles != null) {\n // previous props haven't had the chance to be set yet; set them here\n this.clearUnreadPropStyle(this.unreadPropStyles);\n }\n\n this.unreadPropStyles = props.styles(this.state.lastIdealStyles);\n if (this.animationID == null) {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n }\n };\n\n StaggeredMotion.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.animationID != null) {\n _raf2['default'].cancel(this.animationID);\n this.animationID = null;\n }\n };\n\n StaggeredMotion.prototype.render = function render() {\n var renderedChildren = this.props.children(this.state.currentStyles);\n return renderedChildren && _react2['default'].Children.only(renderedChildren);\n };\n\n return StaggeredMotion;\n})(_react2['default'].Component);\n\nexports['default'] = StaggeredMotion;\nmodule.exports = exports['default'];\n\n// it's possible that currentStyle's value is stale: if props is immediately\n// changed from 0 to 400 to spring(0) again, the async currentStyle is still\n// at 0 (didn't have time to tick and interpolate even once). If we naively\n// compare currentStyle with destVal it'll be 0 === 0 (no animation, stop).\n// In reality currentStyle should be 400\n\n// after checking for unreadPropStyles != null, we manually go set the\n// non-interpolating values (those that are a number, without a spring\n// config)","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar _mapToZero = require('./mapToZero');\n\nvar _mapToZero2 = _interopRequireDefault(_mapToZero);\n\nvar _stripStyle = require('./stripStyle');\n\nvar _stripStyle2 = _interopRequireDefault(_stripStyle);\n\nvar _stepper3 = require('./stepper');\n\nvar _stepper4 = _interopRequireDefault(_stepper3);\n\nvar _mergeDiff = require('./mergeDiff');\n\nvar _mergeDiff2 = _interopRequireDefault(_mergeDiff);\n\nvar _performanceNow = require('performance-now');\n\nvar _performanceNow2 = _interopRequireDefault(_performanceNow);\n\nvar _raf = require('raf');\n\nvar _raf2 = _interopRequireDefault(_raf);\n\nvar _shouldStopAnimation = require('./shouldStopAnimation');\n\nvar _shouldStopAnimation2 = _interopRequireDefault(_shouldStopAnimation);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar msPerFrame = 1000 / 60;\n\n// the children function & (potential) styles function asks as param an\n// Array, where each TransitionPlainStyle is of the format\n// {key: string, data?: any, style: PlainStyle}. However, the way we keep\n// internal states doesn't contain such a data structure (check the state and\n// TransitionMotionState). So when children function and others ask for such\n// data we need to generate them on the fly by combining mergedPropsStyles and\n// currentStyles/lastIdealStyles\nfunction rehydrateStyles(mergedPropsStyles, unreadPropStyles, plainStyles) {\n // Copy the value to a `const` so that Flow understands that the const won't\n // change and will be non-nullable in the callback below.\n var cUnreadPropStyles = unreadPropStyles;\n if (cUnreadPropStyles == null) {\n return mergedPropsStyles.map(function (mergedPropsStyle, i) {\n return {\n key: mergedPropsStyle.key,\n data: mergedPropsStyle.data,\n style: plainStyles[i]\n };\n });\n }\n return mergedPropsStyles.map(function (mergedPropsStyle, i) {\n for (var j = 0; j < cUnreadPropStyles.length; j++) {\n if (cUnreadPropStyles[j].key === mergedPropsStyle.key) {\n return {\n key: cUnreadPropStyles[j].key,\n data: cUnreadPropStyles[j].data,\n style: plainStyles[i]\n };\n }\n }\n return { key: mergedPropsStyle.key, data: mergedPropsStyle.data, style: plainStyles[i] };\n });\n}\n\nfunction shouldStopAnimationAll(currentStyles, destStyles, currentVelocities, mergedPropsStyles) {\n if (mergedPropsStyles.length !== destStyles.length) {\n return false;\n }\n\n for (var i = 0; i < mergedPropsStyles.length; i++) {\n if (mergedPropsStyles[i].key !== destStyles[i].key) {\n return false;\n }\n }\n\n // we have the invariant that mergedPropsStyles and\n // currentStyles/currentVelocities/last* are synced in terms of cells, see\n // mergeAndSync comment for more info\n for (var i = 0; i < mergedPropsStyles.length; i++) {\n if (!_shouldStopAnimation2['default'](currentStyles[i], destStyles[i].style, currentVelocities[i])) {\n return false;\n }\n }\n\n return true;\n}\n\n// core key merging logic\n\n// things to do: say previously merged style is {a, b}, dest style (prop) is {b,\n// c}, previous current (interpolating) style is {a, b}\n// **invariant**: current[i] corresponds to merged[i] in terms of key\n\n// steps:\n// turn merged style into {a?, b, c}\n// add c, value of c is destStyles.c\n// maybe remove a, aka call willLeave(a), then merged is either {b, c} or {a, b, c}\n// turn current (interpolating) style from {a, b} into {a?, b, c}\n// maybe remove a\n// certainly add c, value of c is willEnter(c)\n// loop over merged and construct new current\n// dest doesn't change, that's owner's\nfunction mergeAndSync(willEnter, willLeave, didLeave, oldMergedPropsStyles, destStyles, oldCurrentStyles, oldCurrentVelocities, oldLastIdealStyles, oldLastIdealVelocities) {\n var newMergedPropsStyles = _mergeDiff2['default'](oldMergedPropsStyles, destStyles, function (oldIndex, oldMergedPropsStyle) {\n var leavingStyle = willLeave(oldMergedPropsStyle);\n if (leavingStyle == null) {\n didLeave({ key: oldMergedPropsStyle.key, data: oldMergedPropsStyle.data });\n return null;\n }\n if (_shouldStopAnimation2['default'](oldCurrentStyles[oldIndex], leavingStyle, oldCurrentVelocities[oldIndex])) {\n didLeave({ key: oldMergedPropsStyle.key, data: oldMergedPropsStyle.data });\n return null;\n }\n return { key: oldMergedPropsStyle.key, data: oldMergedPropsStyle.data, style: leavingStyle };\n });\n\n var newCurrentStyles = [];\n var newCurrentVelocities = [];\n var newLastIdealStyles = [];\n var newLastIdealVelocities = [];\n for (var i = 0; i < newMergedPropsStyles.length; i++) {\n var newMergedPropsStyleCell = newMergedPropsStyles[i];\n var foundOldIndex = null;\n for (var j = 0; j < oldMergedPropsStyles.length; j++) {\n if (oldMergedPropsStyles[j].key === newMergedPropsStyleCell.key) {\n foundOldIndex = j;\n break;\n }\n }\n // TODO: key search code\n if (foundOldIndex == null) {\n var plainStyle = willEnter(newMergedPropsStyleCell);\n newCurrentStyles[i] = plainStyle;\n newLastIdealStyles[i] = plainStyle;\n\n var velocity = _mapToZero2['default'](newMergedPropsStyleCell.style);\n newCurrentVelocities[i] = velocity;\n newLastIdealVelocities[i] = velocity;\n } else {\n newCurrentStyles[i] = oldCurrentStyles[foundOldIndex];\n newLastIdealStyles[i] = oldLastIdealStyles[foundOldIndex];\n newCurrentVelocities[i] = oldCurrentVelocities[foundOldIndex];\n newLastIdealVelocities[i] = oldLastIdealVelocities[foundOldIndex];\n }\n }\n\n return [newMergedPropsStyles, newCurrentStyles, newCurrentVelocities, newLastIdealStyles, newLastIdealVelocities];\n}\n\nvar TransitionMotion = (function (_React$Component) {\n _inherits(TransitionMotion, _React$Component);\n\n _createClass(TransitionMotion, null, [{\n key: 'propTypes',\n value: {\n defaultStyles: _propTypes2['default'].arrayOf(_propTypes2['default'].shape({\n key: _propTypes2['default'].string.isRequired,\n data: _propTypes2['default'].any,\n style: _propTypes2['default'].objectOf(_propTypes2['default'].number).isRequired\n })),\n styles: _propTypes2['default'].oneOfType([_propTypes2['default'].func, _propTypes2['default'].arrayOf(_propTypes2['default'].shape({\n key: _propTypes2['default'].string.isRequired,\n data: _propTypes2['default'].any,\n style: _propTypes2['default'].objectOf(_propTypes2['default'].oneOfType([_propTypes2['default'].number, _propTypes2['default'].object])).isRequired\n }))]).isRequired,\n children: _propTypes2['default'].func.isRequired,\n willEnter: _propTypes2['default'].func,\n willLeave: _propTypes2['default'].func,\n didLeave: _propTypes2['default'].func\n },\n enumerable: true\n }, {\n key: 'defaultProps',\n value: {\n willEnter: function willEnter(styleThatEntered) {\n return _stripStyle2['default'](styleThatEntered.style);\n },\n // recall: returning null makes the current unmounting TransitionStyle\n // disappear immediately\n willLeave: function willLeave() {\n return null;\n },\n didLeave: function didLeave() {}\n },\n enumerable: true\n }]);\n\n function TransitionMotion(props) {\n var _this = this;\n\n _classCallCheck(this, TransitionMotion);\n\n _React$Component.call(this, props);\n this.unmounting = false;\n this.animationID = null;\n this.prevTime = 0;\n this.accumulatedTime = 0;\n this.unreadPropStyles = null;\n\n this.clearUnreadPropStyle = function (unreadPropStyles) {\n var _mergeAndSync = mergeAndSync(_this.props.willEnter, _this.props.willLeave, _this.props.didLeave, _this.state.mergedPropsStyles, unreadPropStyles, _this.state.currentStyles, _this.state.currentVelocities, _this.state.lastIdealStyles, _this.state.lastIdealVelocities);\n\n var mergedPropsStyles = _mergeAndSync[0];\n var currentStyles = _mergeAndSync[1];\n var currentVelocities = _mergeAndSync[2];\n var lastIdealStyles = _mergeAndSync[3];\n var lastIdealVelocities = _mergeAndSync[4];\n\n for (var i = 0; i < unreadPropStyles.length; i++) {\n var unreadPropStyle = unreadPropStyles[i].style;\n var dirty = false;\n\n for (var key in unreadPropStyle) {\n if (!Object.prototype.hasOwnProperty.call(unreadPropStyle, key)) {\n continue;\n }\n\n var styleValue = unreadPropStyle[key];\n if (typeof styleValue === 'number') {\n if (!dirty) {\n dirty = true;\n currentStyles[i] = _extends({}, currentStyles[i]);\n currentVelocities[i] = _extends({}, currentVelocities[i]);\n lastIdealStyles[i] = _extends({}, lastIdealStyles[i]);\n lastIdealVelocities[i] = _extends({}, lastIdealVelocities[i]);\n mergedPropsStyles[i] = {\n key: mergedPropsStyles[i].key,\n data: mergedPropsStyles[i].data,\n style: _extends({}, mergedPropsStyles[i].style)\n };\n }\n currentStyles[i][key] = styleValue;\n currentVelocities[i][key] = 0;\n lastIdealStyles[i][key] = styleValue;\n lastIdealVelocities[i][key] = 0;\n mergedPropsStyles[i].style[key] = styleValue;\n }\n }\n }\n\n // unlike the other 2 components, we can't detect staleness and optionally\n // opt out of setState here. each style object's data might contain new\n // stuff we're not/cannot compare\n _this.setState({\n currentStyles: currentStyles,\n currentVelocities: currentVelocities,\n mergedPropsStyles: mergedPropsStyles,\n lastIdealStyles: lastIdealStyles,\n lastIdealVelocities: lastIdealVelocities\n });\n };\n\n this.startAnimationIfNecessary = function () {\n if (_this.unmounting) {\n return;\n }\n\n // TODO: when config is {a: 10} and dest is {a: 10} do we raf once and\n // call cb? No, otherwise accidental parent rerender causes cb trigger\n _this.animationID = _raf2['default'](function (timestamp) {\n // https://github.com/chenglou/react-motion/pull/420\n // > if execution passes the conditional if (this.unmounting), then\n // executes async defaultRaf and after that component unmounts and after\n // that the callback of defaultRaf is called, then setState will be called\n // on unmounted component.\n if (_this.unmounting) {\n return;\n }\n\n var propStyles = _this.props.styles;\n var destStyles = typeof propStyles === 'function' ? propStyles(rehydrateStyles(_this.state.mergedPropsStyles, _this.unreadPropStyles, _this.state.lastIdealStyles)) : propStyles;\n\n // check if we need to animate in the first place\n if (shouldStopAnimationAll(_this.state.currentStyles, destStyles, _this.state.currentVelocities, _this.state.mergedPropsStyles)) {\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.accumulatedTime = 0;\n return;\n }\n\n var currentTime = timestamp || _performanceNow2['default']();\n var timeDelta = currentTime - _this.prevTime;\n _this.prevTime = currentTime;\n _this.accumulatedTime = _this.accumulatedTime + timeDelta;\n // more than 10 frames? prolly switched browser tab. Restart\n if (_this.accumulatedTime > msPerFrame * 10) {\n _this.accumulatedTime = 0;\n }\n\n if (_this.accumulatedTime === 0) {\n // no need to cancel animationID here; shouldn't have any in flight\n _this.animationID = null;\n _this.startAnimationIfNecessary();\n return;\n }\n\n var currentFrameCompletion = (_this.accumulatedTime - Math.floor(_this.accumulatedTime / msPerFrame) * msPerFrame) / msPerFrame;\n var framesToCatchUp = Math.floor(_this.accumulatedTime / msPerFrame);\n\n var _mergeAndSync2 = mergeAndSync(_this.props.willEnter, _this.props.willLeave, _this.props.didLeave, _this.state.mergedPropsStyles, destStyles, _this.state.currentStyles, _this.state.currentVelocities, _this.state.lastIdealStyles, _this.state.lastIdealVelocities);\n\n var newMergedPropsStyles = _mergeAndSync2[0];\n var newCurrentStyles = _mergeAndSync2[1];\n var newCurrentVelocities = _mergeAndSync2[2];\n var newLastIdealStyles = _mergeAndSync2[3];\n var newLastIdealVelocities = _mergeAndSync2[4];\n\n for (var i = 0; i < newMergedPropsStyles.length; i++) {\n var newMergedPropsStyle = newMergedPropsStyles[i].style;\n var newCurrentStyle = {};\n var newCurrentVelocity = {};\n var newLastIdealStyle = {};\n var newLastIdealVelocity = {};\n\n for (var key in newMergedPropsStyle) {\n if (!Object.prototype.hasOwnProperty.call(newMergedPropsStyle, key)) {\n continue;\n }\n\n var styleValue = newMergedPropsStyle[key];\n if (typeof styleValue === 'number') {\n newCurrentStyle[key] = styleValue;\n newCurrentVelocity[key] = 0;\n newLastIdealStyle[key] = styleValue;\n newLastIdealVelocity[key] = 0;\n } else {\n var newLastIdealStyleValue = newLastIdealStyles[i][key];\n var newLastIdealVelocityValue = newLastIdealVelocities[i][key];\n for (var j = 0; j < framesToCatchUp; j++) {\n var _stepper = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n newLastIdealStyleValue = _stepper[0];\n newLastIdealVelocityValue = _stepper[1];\n }\n\n var _stepper2 = _stepper4['default'](msPerFrame / 1000, newLastIdealStyleValue, newLastIdealVelocityValue, styleValue.val, styleValue.stiffness, styleValue.damping, styleValue.precision);\n\n var nextIdealX = _stepper2[0];\n var nextIdealV = _stepper2[1];\n\n newCurrentStyle[key] = newLastIdealStyleValue + (nextIdealX - newLastIdealStyleValue) * currentFrameCompletion;\n newCurrentVelocity[key] = newLastIdealVelocityValue + (nextIdealV - newLastIdealVelocityValue) * currentFrameCompletion;\n newLastIdealStyle[key] = newLastIdealStyleValue;\n newLastIdealVelocity[key] = newLastIdealVelocityValue;\n }\n }\n\n newLastIdealStyles[i] = newLastIdealStyle;\n newLastIdealVelocities[i] = newLastIdealVelocity;\n newCurrentStyles[i] = newCurrentStyle;\n newCurrentVelocities[i] = newCurrentVelocity;\n }\n\n _this.animationID = null;\n // the amount we're looped over above\n _this.accumulatedTime -= framesToCatchUp * msPerFrame;\n\n _this.setState({\n currentStyles: newCurrentStyles,\n currentVelocities: newCurrentVelocities,\n lastIdealStyles: newLastIdealStyles,\n lastIdealVelocities: newLastIdealVelocities,\n mergedPropsStyles: newMergedPropsStyles\n });\n\n _this.unreadPropStyles = null;\n\n _this.startAnimationIfNecessary();\n });\n };\n\n this.state = this.defaultState();\n }\n\n TransitionMotion.prototype.defaultState = function defaultState() {\n var _props = this.props;\n var defaultStyles = _props.defaultStyles;\n var styles = _props.styles;\n var willEnter = _props.willEnter;\n var willLeave = _props.willLeave;\n var didLeave = _props.didLeave;\n\n var destStyles = typeof styles === 'function' ? styles(defaultStyles) : styles;\n\n // this is special. for the first time around, we don't have a comparison\n // between last (no last) and current merged props. we'll compute last so:\n // say default is {a, b} and styles (dest style) is {b, c}, we'll\n // fabricate last as {a, b}\n var oldMergedPropsStyles = undefined;\n if (defaultStyles == null) {\n oldMergedPropsStyles = destStyles;\n } else {\n oldMergedPropsStyles = defaultStyles.map(function (defaultStyleCell) {\n // TODO: key search code\n for (var i = 0; i < destStyles.length; i++) {\n if (destStyles[i].key === defaultStyleCell.key) {\n return destStyles[i];\n }\n }\n return defaultStyleCell;\n });\n }\n var oldCurrentStyles = defaultStyles == null ? destStyles.map(function (s) {\n return _stripStyle2['default'](s.style);\n }) : defaultStyles.map(function (s) {\n return _stripStyle2['default'](s.style);\n });\n var oldCurrentVelocities = defaultStyles == null ? destStyles.map(function (s) {\n return _mapToZero2['default'](s.style);\n }) : defaultStyles.map(function (s) {\n return _mapToZero2['default'](s.style);\n });\n\n var _mergeAndSync3 = mergeAndSync(\n // Because this is an old-style createReactClass component, Flow doesn't\n // understand that the willEnter and willLeave props have default values\n // and will always be present.\n willEnter, willLeave, didLeave, oldMergedPropsStyles, destStyles, oldCurrentStyles, oldCurrentVelocities, oldCurrentStyles, // oldLastIdealStyles really\n oldCurrentVelocities);\n\n var mergedPropsStyles = _mergeAndSync3[0];\n var currentStyles = _mergeAndSync3[1];\n var currentVelocities = _mergeAndSync3[2];\n var lastIdealStyles = _mergeAndSync3[3];\n var lastIdealVelocities = _mergeAndSync3[4];\n // oldLastIdealVelocities really\n\n return {\n currentStyles: currentStyles,\n currentVelocities: currentVelocities,\n lastIdealStyles: lastIdealStyles,\n lastIdealVelocities: lastIdealVelocities,\n mergedPropsStyles: mergedPropsStyles\n };\n };\n\n // after checking for unreadPropStyles != null, we manually go set the\n // non-interpolating values (those that are a number, without a spring\n // config)\n\n TransitionMotion.prototype.componentDidMount = function componentDidMount() {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n };\n\n TransitionMotion.prototype.componentWillReceiveProps = function componentWillReceiveProps(props) {\n if (this.unreadPropStyles) {\n // previous props haven't had the chance to be set yet; set them here\n this.clearUnreadPropStyle(this.unreadPropStyles);\n }\n\n var styles = props.styles;\n if (typeof styles === 'function') {\n this.unreadPropStyles = styles(rehydrateStyles(this.state.mergedPropsStyles, this.unreadPropStyles, this.state.lastIdealStyles));\n } else {\n this.unreadPropStyles = styles;\n }\n\n if (this.animationID == null) {\n this.prevTime = _performanceNow2['default']();\n this.startAnimationIfNecessary();\n }\n };\n\n TransitionMotion.prototype.componentWillUnmount = function componentWillUnmount() {\n this.unmounting = true;\n if (this.animationID != null) {\n _raf2['default'].cancel(this.animationID);\n this.animationID = null;\n }\n };\n\n TransitionMotion.prototype.render = function render() {\n var hydratedStyles = rehydrateStyles(this.state.mergedPropsStyles, this.unreadPropStyles, this.state.currentStyles);\n var renderedChildren = this.props.children(hydratedStyles);\n return renderedChildren && _react2['default'].Children.only(renderedChildren);\n };\n\n return TransitionMotion;\n})(_react2['default'].Component);\n\nexports['default'] = TransitionMotion;\nmodule.exports = exports['default'];\n\n// list of styles, each containing interpolating values. Part of what's passed\n// to children function. Notice that this is\n// Array, without the wrapper that is {key: ...,\n// data: ... style: ActualInterpolatingStyleObject}. Only mergedPropsStyles\n// contains the key & data info (so that we only have a single source of truth\n// for these, and to save space). Check the comment for `rehydrateStyles` to\n// see how we regenerate the entirety of what's passed to children function\n\n// the array that keeps track of currently rendered stuff! Including stuff\n// that you've unmounted but that's still animating. This is where it lives\n\n// it's possible that currentStyle's value is stale: if props is immediately\n// changed from 0 to 400 to spring(0) again, the async currentStyle is still\n// at 0 (didn't have time to tick and interpolate even once). If we naively\n// compare currentStyle with destVal it'll be 0 === 0 (no animation, stop).\n// In reality currentStyle should be 400","\n\n// currently used to initiate the velocity style object to 0\n'use strict';\n\nexports.__esModule = true;\nexports['default'] = mapToZero;\n\nfunction mapToZero(obj) {\n var ret = {};\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n ret[key] = 0;\n }\n }\n return ret;\n}\n\nmodule.exports = exports['default'];","\n\n// core keys merging algorithm. If previous render's keys are [a, b], and the\n// next render's [c, b, d], what's the final merged keys and ordering?\n\n// - c and a must both be before b\n// - b before d\n// - ordering between a and c ambiguous\n\n// this reduces to merging two partially ordered lists (e.g. lists where not\n// every item has a definite ordering, like comparing a and c above). For the\n// ambiguous ordering we deterministically choose to place the next render's\n// item after the previous'; so c after a\n\n// this is called a topological sorting. Except the existing algorithms don't\n// work well with js bc of the amount of allocation, and isn't optimized for our\n// current use-case bc the runtime is linear in terms of edges (see wiki for\n// meaning), which is huge when two lists have many common elements\n'use strict';\n\nexports.__esModule = true;\nexports['default'] = mergeDiff;\n\nfunction mergeDiff(prev, next, onRemove) {\n // bookkeeping for easier access of a key's index below. This is 2 allocations +\n // potentially triggering chrome hash map mode for objs (so it might be faster\n\n var prevKeyIndex = {};\n for (var i = 0; i < prev.length; i++) {\n prevKeyIndex[prev[i].key] = i;\n }\n var nextKeyIndex = {};\n for (var i = 0; i < next.length; i++) {\n nextKeyIndex[next[i].key] = i;\n }\n\n // first, an overly elaborate way of merging prev and next, eliminating\n // duplicates (in terms of keys). If there's dupe, keep the item in next).\n // This way of writing it saves allocations\n var ret = [];\n for (var i = 0; i < next.length; i++) {\n ret[i] = next[i];\n }\n for (var i = 0; i < prev.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(nextKeyIndex, prev[i].key)) {\n // this is called my TM's `mergeAndSync`, which calls willLeave. We don't\n // merge in keys that the user desires to kill\n var fill = onRemove(i, prev[i]);\n if (fill != null) {\n ret.push(fill);\n }\n }\n }\n\n // now all the items all present. Core sorting logic to have the right order\n return ret.sort(function (a, b) {\n var nextOrderA = nextKeyIndex[a.key];\n var nextOrderB = nextKeyIndex[b.key];\n var prevOrderA = prevKeyIndex[a.key];\n var prevOrderB = prevKeyIndex[b.key];\n\n if (nextOrderA != null && nextOrderB != null) {\n // both keys in next\n return nextKeyIndex[a.key] - nextKeyIndex[b.key];\n } else if (prevOrderA != null && prevOrderB != null) {\n // both keys in prev\n return prevKeyIndex[a.key] - prevKeyIndex[b.key];\n } else if (nextOrderA != null) {\n // key a in next, key b in prev\n\n // how to determine the order between a and b? We find a \"pivot\" (term\n // abuse), a key present in both prev and next, that is sandwiched between\n // a and b. In the context of our above example, if we're comparing a and\n // d, b's (the only) pivot\n for (var i = 0; i < next.length; i++) {\n var pivot = next[i].key;\n if (!Object.prototype.hasOwnProperty.call(prevKeyIndex, pivot)) {\n continue;\n }\n\n if (nextOrderA < nextKeyIndex[pivot] && prevOrderB > prevKeyIndex[pivot]) {\n return -1;\n } else if (nextOrderA > nextKeyIndex[pivot] && prevOrderB < prevKeyIndex[pivot]) {\n return 1;\n }\n }\n // pluggable. default to: next bigger than prev\n return 1;\n }\n // prevOrderA, nextOrderB\n for (var i = 0; i < next.length; i++) {\n var pivot = next[i].key;\n if (!Object.prototype.hasOwnProperty.call(prevKeyIndex, pivot)) {\n continue;\n }\n if (nextOrderB < nextKeyIndex[pivot] && prevOrderA > prevKeyIndex[pivot]) {\n return 1;\n } else if (nextOrderB > nextKeyIndex[pivot] && prevOrderA < prevKeyIndex[pivot]) {\n return -1;\n }\n }\n // pluggable. default to: next bigger than prev\n return -1;\n });\n}\n\nmodule.exports = exports['default'];\n// to loop through and find a key's index each time), but I no longer care","\"use strict\";\n\nexports.__esModule = true;\nexports[\"default\"] = {\n noWobble: { stiffness: 170, damping: 26 }, // the default, if nothing provided\n gentle: { stiffness: 120, damping: 14 },\n wobbly: { stiffness: 180, damping: 12 },\n stiff: { stiffness: 210, damping: 20 }\n};\nmodule.exports = exports[\"default\"];","'use strict';\n\nexports.__esModule = true;\n\nfunction _interopRequire(obj) { return obj && obj.__esModule ? obj['default'] : obj; }\n\nvar _Motion = require('./Motion');\n\nexports.Motion = _interopRequire(_Motion);\n\nvar _StaggeredMotion = require('./StaggeredMotion');\n\nexports.StaggeredMotion = _interopRequire(_StaggeredMotion);\n\nvar _TransitionMotion = require('./TransitionMotion');\n\nexports.TransitionMotion = _interopRequire(_TransitionMotion);\n\nvar _spring = require('./spring');\n\nexports.spring = _interopRequire(_spring);\n\nvar _presets = require('./presets');\n\nexports.presets = _interopRequire(_presets);\n\nvar _stripStyle = require('./stripStyle');\n\nexports.stripStyle = _interopRequire(_stripStyle);\n\n// deprecated, dummy warning function\n\nvar _reorderKeys = require('./reorderKeys');\n\nexports.reorderKeys = _interopRequire(_reorderKeys);","'use strict';\n\nexports.__esModule = true;\nexports['default'] = reorderKeys;\n\nvar hasWarned = false;\n\nfunction reorderKeys() {\n if (process.env.NODE_ENV === 'development') {\n if (!hasWarned) {\n hasWarned = true;\n console.error('`reorderKeys` has been removed, since it is no longer needed for TransitionMotion\\'s new styles array API.');\n }\n }\n}\n\nmodule.exports = exports['default'];","\n\n// usage assumption: currentStyle values have already been rendered but it says\n// nothing of whether currentStyle is stale (see unreadPropStyle)\n'use strict';\n\nexports.__esModule = true;\nexports['default'] = shouldStopAnimation;\n\nfunction shouldStopAnimation(currentStyle, style, currentVelocity) {\n for (var key in style) {\n if (!Object.prototype.hasOwnProperty.call(style, key)) {\n continue;\n }\n\n if (currentVelocity[key] !== 0) {\n return false;\n }\n\n var styleValue = typeof style[key] === 'number' ? style[key] : style[key].val;\n // stepper will have already taken care of rounding precision errors, so\n // won't have such thing as 0.9999 !=== 1\n if (currentStyle[key] !== styleValue) {\n return false;\n }\n }\n\n return true;\n}\n\nmodule.exports = exports['default'];","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports['default'] = spring;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\nvar _presets = require('./presets');\n\nvar _presets2 = _interopRequireDefault(_presets);\n\nvar defaultConfig = _extends({}, _presets2['default'].noWobble, {\n precision: 0.01\n});\n\nfunction spring(val, config) {\n return _extends({}, defaultConfig, config, { val: val });\n}\n\nmodule.exports = exports['default'];","\n\n// stepper is used a lot. Saves allocation to return the same array wrapper.\n// This is fine and danger-free against mutations because the callsite\n// immediately destructures it and gets the numbers inside without passing the\n\"use strict\";\n\nexports.__esModule = true;\nexports[\"default\"] = stepper;\n\nvar reusedTuple = [0, 0];\n\nfunction stepper(secondPerFrame, x, v, destX, k, b, precision) {\n // Spring stiffness, in kg / s^2\n\n // for animations, destX is really spring length (spring at rest). initial\n // position is considered as the stretched/compressed position of a spring\n var Fspring = -k * (x - destX);\n\n // Damping, in kg / s\n var Fdamper = -b * v;\n\n // usually we put mass here, but for animation purposes, specifying mass is a\n // bit redundant. you could simply adjust k and b accordingly\n // let a = (Fspring + Fdamper) / mass;\n var a = Fspring + Fdamper;\n\n var newV = v + a * secondPerFrame;\n var newX = x + newV * secondPerFrame;\n\n if (Math.abs(newV) < precision && Math.abs(newX - destX) < precision) {\n reusedTuple[0] = destX;\n reusedTuple[1] = 0;\n return reusedTuple;\n }\n\n reusedTuple[0] = newX;\n reusedTuple[1] = newV;\n return reusedTuple;\n}\n\nmodule.exports = exports[\"default\"];\n// array reference around.","\n// turn {x: {val: 1, stiffness: 1, damping: 2}, y: 2} generated by\n// `{x: spring(1, {stiffness: 1, damping: 2}), y: 2}` into {x: 1, y: 2}\n\n'use strict';\n\nexports.__esModule = true;\nexports['default'] = stripStyle;\n\nfunction stripStyle(style) {\n var ret = {};\n for (var key in style) {\n if (!Object.prototype.hasOwnProperty.call(style, key)) {\n continue;\n }\n ret[key] = typeof style[key] === 'number' ? style[key] : style[key].val;\n }\n return ret;\n}\n\nmodule.exports = exports['default'];","var requestAnimFrame = function () {\n if (typeof window !== \"undefined\") {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function cb(\n /* function */\n callback) {\n window.setTimeout(callback, 1000 / 60);\n };\n }\n\n return function () {\n /* return empty function */\n };\n}();\n\n/*\n * Behaves the same as setTimeout except uses requestAnimationFrame() where possible for better performance\n * @param {function} fn The callback function\n * @param {int} delay The delay in milliseconds\n */\nexport var requestTimeout = function requestTimeout(fn, delay) {\n if (!window.requestAnimationFrame && !window.webkitRequestAnimationFrame && !(window.mozRequestAnimationFrame && window.mozCancelRequestAnimationFrame) && // Firefox 5 ships without cancel support\n !window.oRequestAnimationFrame && !window.msRequestAnimationFrame) {\n return window.setTimeout(fn, delay);\n }\n\n var start = new Date().getTime();\n var handle = {\n value: 0\n };\n\n function loop() {\n var current = new Date().getTime();\n var delta = current - start;\n\n if (delta >= delay) {\n fn.call(null);\n } else {\n handle.value = requestAnimFrame(loop);\n }\n }\n\n handle.value = requestAnimFrame(loop);\n return handle;\n};\n/**\n * Behaves the same as clearTimeout except uses cancelRequestAnimationFrame() where possible for better performance\n * @param {int|object} fn The callback function\n */\n\nexport var clearRequestTimeout = function clearRequestTimeout(handle) {\n return window.cancelAnimationFrame ? window.cancelAnimationFrame(handle.value) : window.webkitCancelAnimationFrame ? window.webkitCancelAnimationFrame(handle.value) : window.webkitCancelRequestAnimationFrame ? window.webkitCancelRequestAnimationFrame(handle.value)\n /* Support for legacy API */\n : window.mozCancelRequestAnimationFrame ? window.mozCancelRequestAnimationFrame(handle.value) : window.oCancelRequestAnimationFrame ? window.oCancelRequestAnimationFrame(handle.value) : window.msCancelRequestAnimationFrame ? window.msCancelRequestAnimationFrame(handle.value) : clearTimeout(handle);\n};","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport React from \"react\";\nimport { TransitionMotion, spring } from \"react-motion\";\nimport cxs from \"cxs\";\nimport isEqual from \"react-fast-compare\";\nimport { requestTimeout, clearRequestTimeout } from \"../utils\";\n\nvar TextLoop =\n/*#__PURE__*/\nfunction (_React$PureComponent) {\n _inheritsLoose(TextLoop, _React$PureComponent);\n\n function TextLoop(_props) {\n var _this;\n\n _this = _React$PureComponent.call(this, _props) || this;\n\n _defineProperty(_assertThisInitialized(_this), \"isUnMounting\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"tickDelay\", 0);\n\n _defineProperty(_assertThisInitialized(_this), \"tickLoop\", 0);\n\n _defineProperty(_assertThisInitialized(_this), \"wordBox\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"willLeave\", function () {\n var _this$getDimensions = _this.getDimensions(),\n height = _this$getDimensions.height;\n\n return {\n opacity: spring(_this.getOpacity(), _this.props.springConfig),\n translate: spring(-height, _this.props.springConfig)\n };\n });\n\n _defineProperty(_assertThisInitialized(_this), \"willEnter\", function () {\n var _this$getDimensions2 = _this.getDimensions(),\n height = _this$getDimensions2.height;\n\n return {\n opacity: _this.getOpacity(),\n translate: height\n };\n });\n\n _defineProperty(_assertThisInitialized(_this), \"tick\", function () {\n if (!_this.isUnMounting) {\n _this.setState(function (state, props) {\n var currentWordIndex = (state.currentWordIndex + 1) % state.elements.length;\n var currentEl = state.elements[currentWordIndex];\n var updatedState = {\n currentWordIndex: currentWordIndex,\n currentEl: currentEl,\n wordCount: (state.wordCount + 1) % 1000,\n // just a safe value to avoid infinite counts,\n currentInterval: Array.isArray(props.interval) ? props.interval[currentWordIndex % props.interval.length] : props.interval\n };\n\n if (props.onChange) {\n props.onChange(updatedState);\n }\n\n return updatedState;\n }, function () {\n if (_this.state.currentInterval > 0) {\n _this.clearTimeouts();\n\n _this.tickLoop = requestTimeout(_this.tick, _this.state.currentInterval);\n }\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"wrapperStyles\", cxs(_extends({}, _this.props.mask && {\n overflow: \"hidden\"\n }, {}, {\n display: \"inline-block\",\n position: \"relative\",\n verticalAlign: \"top\"\n })));\n\n _defineProperty(_assertThisInitialized(_this), \"elementStyles\", cxs({\n display: \"inline-block\",\n left: 0,\n top: 0,\n whiteSpace: _this.props.noWrap ? \"nowrap\" : \"normal\"\n }));\n\n var elements = React.Children.toArray(_props.children);\n _this.state = {\n elements: elements,\n currentEl: elements[0],\n currentWordIndex: 0,\n wordCount: 0,\n currentInterval: Array.isArray(_props.interval) ? _props.interval[0] : _props.interval\n };\n return _this;\n }\n\n var _proto = TextLoop.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n // Starts animation\n var delay = this.props.delay;\n var _this$state = this.state,\n currentInterval = _this$state.currentInterval,\n elements = _this$state.elements;\n\n if (currentInterval > 0 && elements.length > 1) {\n this.tickDelay = requestTimeout(function () {\n _this2.tickLoop = requestTimeout(_this2.tick, currentInterval);\n }, delay);\n }\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n var _this3 = this;\n\n var _ref = this.props,\n interval = _ref.interval,\n children = _ref.children,\n delay = _ref.delay;\n var currentWordIndex = this.state.currentWordIndex;\n var currentInterval = Array.isArray(interval) ? interval[currentWordIndex % interval.length] : interval;\n\n if (prevState.currentInterval !== currentInterval) {\n this.clearTimeouts();\n\n if (currentInterval > 0 && React.Children.count(children) > 1) {\n this.tickDelay = requestTimeout(function () {\n _this3.tickLoop = requestTimeout(_this3.tick, currentInterval);\n }, delay);\n } else {\n this.setState(function (state, props) {\n var _currentWordIndex = state.currentWordIndex;\n return {\n currentInterval: Array.isArray(props.interval) ? props.interval[_currentWordIndex % props.interval.length] : props.interval\n };\n });\n }\n }\n\n if (!isEqual(prevProps.children, children)) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({\n elements: React.Children.toArray(children)\n });\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.isUnMounting = true;\n this.clearTimeouts();\n };\n\n _proto.clearTimeouts = function clearTimeouts() {\n if (this.tickLoop != null) {\n clearRequestTimeout(this.tickLoop);\n }\n\n if (this.tickDelay != null) {\n clearRequestTimeout(this.tickDelay);\n }\n } // Fade out animation\n ;\n\n _proto.getOpacity = function getOpacity() {\n return this.props.fade ? 0 : 1;\n };\n\n _proto.getDimensions = function getDimensions() {\n if (this.wordBox == null) {\n return {\n width: 0,\n height: 0\n };\n }\n\n return this.wordBox.getBoundingClientRect();\n };\n\n _proto.getTransitionMotionStyles = function getTransitionMotionStyles() {\n var springConfig = this.props.springConfig;\n var _this$state2 = this.state,\n wordCount = _this$state2.wordCount,\n currentEl = _this$state2.currentEl;\n return [{\n key: \"step-\" + wordCount,\n data: {\n currentEl: currentEl\n },\n style: {\n opacity: spring(1, springConfig),\n translate: spring(0, springConfig)\n }\n }];\n };\n\n _proto.render = function render() {\n var _this4 = this;\n\n var _this$props$className = this.props.className,\n className = _this$props$className === void 0 ? \"\" : _this$props$className;\n return React.createElement(\"div\", {\n className: this.wrapperStyles + \" \" + className\n }, React.createElement(TransitionMotion, {\n willLeave: this.willLeave,\n willEnter: this.willEnter,\n styles: this.getTransitionMotionStyles()\n }, function (interpolatedStyles) {\n var _this4$getDimensions = _this4.getDimensions(),\n height = _this4$getDimensions.height,\n width = _this4$getDimensions.width;\n\n var parsedWidth = _this4.wordBox == null ? \"auto\" : width;\n var parsedHeight = _this4.wordBox == null ? \"auto\" : height;\n return React.createElement(\"div\", {\n style: {\n transition: \"width \" + _this4.props.adjustingSpeed + \"ms linear\",\n height: parsedHeight,\n width: parsedWidth\n }\n }, interpolatedStyles.map(function (config) {\n return React.createElement(\"div\", {\n className: _this4.elementStyles,\n ref: function ref(n) {\n _this4.wordBox = n;\n },\n key: config.key,\n style: {\n opacity: config.style.opacity,\n transform: \"translateY(\" + config.style.translate + \"px)\",\n position: _this4.wordBox == null ? \"relative\" : \"absolute\"\n }\n }, config.data.currentEl);\n }));\n }));\n };\n\n return TextLoop;\n}(React.PureComponent);\n\n_defineProperty(TextLoop, \"defaultProps\", {\n interval: 3000,\n delay: 0,\n adjustingSpeed: 150,\n springConfig: {\n stiffness: 340,\n damping: 30\n },\n fade: true,\n mask: false,\n noWrap: true\n});\n\nexport default TextLoop;","import TextLoop from \"./components/TextLoop\";\nexport default TextLoop;","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };"],"names":["cache","prefix","rules","insert","rule","push","parse","obj","child","arguments","length","undefined","media","Object","keys","map","key","val","m2","test","_key","className","toString","mx","cn","prop","replace","toLowerCase","rx","join","module","exports","_len","styles","Array","_key2","style","trim","css","sort","reset","pop","document","sheet","head","appendChild","createElement","insertRule","cssRules","getNanoSeconds","hrtime","loadTime","performance","now","process","hr","Date","getTime","call","this","root","window","g","vendors","suffix","raf","caf","i","last","id","queue","frameDuration","callback","_now","next","Math","max","setTimeout","cp","slice","cancelled","e","round","handle","fn","cancel","apply","polyfill","object","requestAnimationFrame","cancelAnimationFrame","moduleLoadTime","nodeLoadTime","upTime","uptime","isArray","keyList","hasProp","prototype","hasOwnProperty","hasElementType","Element","equal","a","b","arrA","arrB","dateA","dateB","regexpA","RegExp","regexpB","$$typeof","error","message","match","number","console","warn","name","__esModule","_extends","assign","target","source","_createClass","defineProperties","props","descriptor","enumerable","configurable","writable","defineProperty","Constructor","protoProps","staticProps","_interopRequireDefault","_mapToZero2","_stripStyle2","_stepper4","_performanceNow2","_raf2","_shouldStopAnimation2","_react2","_propTypes2","msPerFrame","Motion","_React$Component","_this","instance","TypeError","_classCallCheck","wasAnimating","animationID","prevTime","accumulatedTime","unreadPropStyle","clearUnreadPropStyle","destStyle","dirty","_state","state","currentStyle","currentVelocity","lastIdealStyle","lastIdealVelocity","styleValue","setState","startAnimationIfNecessary","timestamp","propsStyle","onRest","currentTime","timeDelta","currentFrameCompletion","floor","framesToCatchUp","newLastIdealStyle","newLastIdealVelocity","newCurrentStyle","newCurrentVelocity","newLastIdealStyleValue","newLastIdealVelocityValue","_stepper","stiffness","damping","precision","_stepper2","nextIdealX","nextIdealV","defaultState","subClass","superClass","create","constructor","value","setPrototypeOf","__proto__","_inherits","defaultStyle","objectOf","oneOfType","isRequired","children","func","_props","componentDidMount","componentWillReceiveProps","componentWillUnmount","render","renderedChildren","Children","only","Component","StaggeredMotion","unreadPropStyles","currentStyles","currentVelocities","lastIdealStyles","lastIdealVelocities","someDirty","destStyles","shouldStopAnimationAll","newLastIdealStyles","newLastIdealVelocities","newCurrentStyles","newCurrentVelocities","j","defaultStyles","arrayOf","_mergeDiff2","rehydrateStyles","mergedPropsStyles","plainStyles","cUnreadPropStyles","mergedPropsStyle","data","mergeAndSync","willEnter","willLeave","didLeave","oldMergedPropsStyles","oldCurrentStyles","oldCurrentVelocities","oldLastIdealStyles","oldLastIdealVelocities","newMergedPropsStyles","oldIndex","oldMergedPropsStyle","leavingStyle","newMergedPropsStyleCell","foundOldIndex","plainStyle","velocity","TransitionMotion","unmounting","_mergeAndSync","propStyles","_mergeAndSync2","newMergedPropsStyle","shape","string","any","styleThatEntered","defaultStyleCell","s","_mergeAndSync3","hydratedStyles","ret","prev","onRemove","prevKeyIndex","nextKeyIndex","fill","nextOrderA","nextOrderB","prevOrderA","prevOrderB","pivot","noWobble","gentle","wobbly","stiff","_interopRequire","_TransitionMotion","_spring","config","defaultConfig","_presets","_presets2","secondPerFrame","x","v","destX","k","newV","newX","abs","reusedTuple","requestAnimFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","requestTimeout","delay","mozCancelRequestAnimationFrame","start","loop","clearRequestTimeout","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","oCancelRequestAnimationFrame","msCancelRequestAnimationFrame","clearTimeout","_assertThisInitialized","self","ReferenceError","_defineProperty","TextLoop","_React$PureComponent","height","getDimensions","opacity","getOpacity","springConfig","translate","isUnMounting","currentWordIndex","elements","updatedState","currentEl","wordCount","currentInterval","interval","onChange","clearTimeouts","tickLoop","tick","mask","overflow","display","position","verticalAlign","left","top","whiteSpace","noWrap","toArray","_proto","_this2","_this$state","tickDelay","componentDidUpdate","prevProps","prevState","_this3","_ref","count","_currentWordIndex","fade","wordBox","width","getBoundingClientRect","getTransitionMotionStyles","_this$state2","_this4","_this$props$className","wrapperStyles","interpolatedStyles","_this4$getDimensions","parsedWidth","parsedHeight","transition","adjustingSpeed","elementStyles","ref","n","transform","_arrayWithoutHoles","r","_iterableToArray","Symbol","iterator","from","_nonIterableSpread","_toConsumableArray"],"sourceRoot":""}