{"version":3,"sources":["webpack:///./src/components/shared/GridSection/GridSection.js","webpack:///./src/components/shared/HeaderSection/HeaderSection.js","webpack:///./node_modules/react-spring/web.js"],"names":["anchor","children","className","childrenWithKeys","key","child","initialInternalStyle","opacity","transform","internalTransitionsRef","useRef","internalTransitions","useTransition","prop","ref","trail","from","enter","leave","section","id","classnames","props","style","initialSectionStyle","sectionTransitionsRef","sectionTransition","useChain","item","title","subtitle","content","cta","ctaUrl","image","to","color","alt","src","_createForOfIteratorHelperLoose","o","allowArrayLike","it","Symbol","iterator","call","next","bind","Array","isArray","minLen","_arrayLikeToArray","n","Object","prototype","toString","slice","constructor","name","test","_unsupportedIterableToArray","length","i","done","value","TypeError","arr","len","arr2","is","obj","a","fun","str","num","und","nul","set","Set","map","Map","equ","b","keys","useForceUpdate","f","v","withDefault","defaultValue","toArray","callProp","_len","arguments","args","_key","apply","interpolateTo","forward","config","onStart","onRest","onFrame","reset","reverse","force","immediate","delay","attach","destroyed","lazy","getForwardProps","rest","reduce","k","_extends2","applyAnimatedValues","colorNames","Animated","this","payload","_proto","getAnimatedValue","getValue","getPayload","detach","getChildren","addChild","push","removeChild","index","indexOf","splice","AnimatedArray","_Animated","_this2","forEach","p","AnimatedObject","_Animated2","_this3","values","s","_proto2","animated","injectApplyAnimatedValues","fn","injectColorNames","names","interpolation","requestFrame","cb","window","requestAnimationFrame","injectStringInterpolator","now","Date","injectDefaultElement","el","createAnimatedStyle","manualFrameloop","animatedApi","node","current","injectCreateAnimatedStyle","factory","AnimatedProps","_AnimatedObject","callback","_this4","update","active","controllers","_step","time","_iterator","controller","isActive","configIdx","configs","_config","endOfAnimation","lastTime","valIdx","animatedValues","animation","fromValues","toValues","position","lastPosition","isAnimated","velocity","initialVelocity","setValue","duration","easing","startTime","decay","Math","exp","abs","lastVelocity","numSteps","floor","tension","friction","mass","isOvershooting","clamp","isVelocity","precision","isDisplacement","delete","stop","size","createInterpolator","range","output","extrapolate","outputRange","inputRange","extrapolateLeft","extrapolateRight","t","input","findRange","inputMin","inputMax","outputMin","outputMax","result","Infinity","interpolate","AnimatedInterpolation","_AnimatedArray","parents","_this5","calc","_proto3","updateConfig","refs","timeSteps","timeFrame","previous","_ref","start","_ref2","ctrls","ctrl","queue","e","q","_ref3","rI","then","Promise","resolve","AnimatedValue","_Animated3","_value","_this6","_this","animatedStyles","startPosition","flush","_proto4","addAnimatedStyles","styles","add","animatedStyle","clearStyles","clear","AnimatedValueArray","_AnimatedArray2","_this7","_proto5","_this8","G","Controller","_this9","idle","hasChanged","guid","local","merged","animations","interpolations","listeners","localQueue","getValues","_proto6","_ref$delay","ops","entries","_to","entry","sort","diff","onEnd","_this10","_ref3$from","_ref3$to","_ref4","finished","async","setTimeout","runAsync","has","pause","_ref5","_this11","undefined","_loop","fresh","r","last","_this12","_this$props","_this$props$from","_this$props$to","_this$props$config","_ref6","target","acc","_ref7","isNumber","isString","startsWith","isInterpolation","fromValue","toValue","toConfig","parent","interpolation$$1","newValue","_extends4","currentValue","some","currentValueDiffersFromGoal","hasNewGoal","hasNewConfig","_extends3","prev","destroy","mapKeys","items","String","get","_props$keys","keyTransform","_get","_get$lazy","_get$reset","unique","onDestroyed","_onRest","extra","forceUpdate","mounted","state","first","deleted","transitions","prevProps","paused","instances","all","c","_ref8","_get2","initial","_get2$trail","_get2$order","order","_get3","_keys","_items","currentKeys","currentSet","nextSet","added","filter","removed","originalKey","updated","shift","find","d","keyIndex","slot","unshift","left","max","right","min","out","_ref9","pos","findIndex","concat","changed","diffItems","transition","newProps","cleanUp","filterKey","_step2","_loop2","_iterator2","AnimatedStyle","_AnimatedObject2","_this13","colors","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","NUMBER","parts","join","rgb","RegExp","rgba","hsl","hsla","hex3","hex4","hex6","hex8","hue2rgb","hslToRgb","h","l","g","round","parse255","int","parseInt","parse360","parseFloat","parse1","parsePercentage","colorToRgba","match","int32Color","exec","hasOwnProperty","stringShapeRegex","colorRegex","colorNamesRegex","isUnitlessNumber","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","prefixes","dangerousStyleValue","isCustomProperty","trim","prefix","charAt","toUpperCase","substring","prefixKey","attributeCache","rangeValue","replace","outputRanges","number","_","p1","p2","p3","p4","instance","nodeType","setAttribute","scrollTop","scrollLeft","attributes","nodeName","parentNode","styleName","textContent","styleValue","setProperty","dashCase","toLowerCase","getAttribute","lowercase","extendedAnimated","Component","propsAnimated","attachProps","oldPropsAnimated","didUpdate","val","_getValue","animatedProps","refFn","childRef","handleRef","createElement","object","element"],"mappings":"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","file":"6176abd7fa23f9d2a0de74973d0efa80dd070617-ee00ed2eb0ef5f7fef2c.js","sourcesContent":["import \"./GridSection.scss\"\r\n\r\nimport React, { useRef } from \"react\"\r\nimport PropTypes from \"prop-types\"\r\nimport { Container } from \"reactstrap\"\r\nimport classnames from \"classnames\"\r\nimport { prop } from \"ramda\"\r\nimport { useChain, useTransition, animated } from \"react-spring\"\r\n\r\nconst GridSection = ({ anchor, children, className }) => {\r\n const childrenWithKeys = children.map((child, i) => ({\r\n ...child,\r\n key: anchor\r\n ? `${anchor}#${child.props.className}`\r\n : `${child.props.className}`,\r\n }))\r\n\r\n const initialInternalStyle = {\r\n opacity: 0,\r\n transform: \"translate3d(0,40px,0)\",\r\n }\r\n const transitionedInternalStyle = {\r\n opacity: 1,\r\n transform: \"translate3d(0,0px,0)\",\r\n }\r\n const internalTransitionsRef = useRef()\r\n const internalTransitions = useTransition(childrenWithKeys, prop(\"key\"), {\r\n ref: internalTransitionsRef,\r\n trail: 400 / childrenWithKeys.length,\r\n from: initialInternalStyle,\r\n enter: transitionedInternalStyle,\r\n leave: initialInternalStyle,\r\n })\r\n\r\n const section = (\r\n \r\n \r\n
\r\n {internalTransitions.map(({ item: { props }, props: style, key }) => (\r\n \r\n ))}\r\n
\r\n
\r\n \r\n )\r\n\r\n const initialSectionStyle = {\r\n opacity: 0,\r\n }\r\n const transitionedSectionStyle = {\r\n opacity: 1,\r\n }\r\n\r\n const sectionTransitionsRef = useRef()\r\n const sectionTransition = useTransition(section, prop(\"key\"), {\r\n ref: sectionTransitionsRef,\r\n from: initialSectionStyle,\r\n enter: transitionedSectionStyle,\r\n leave: initialSectionStyle,\r\n })\r\n\r\n useChain([sectionTransitionsRef, internalTransitionsRef], [0, 0.25])\r\n\r\n return sectionTransition.map(({ item, props, key }) => (\r\n \r\n ))\r\n}\r\n\r\nGridSection.propTypes = {\r\n anchor: PropTypes.string,\r\n children: PropTypes.arrayOf(PropTypes.element),\r\n className: PropTypes.string,\r\n}\r\n\r\nexport default GridSection\r\n","import React from \"react\"\r\nimport GridSection from \"@components/shared/GridSection/GridSection\"\r\nimport Link from \"@components/shared/Link/Link\"\r\nimport { Button } from \"reactstrap\"\r\nimport classnames from \"classnames\"\r\n\r\nexport default ({\r\n anchor,\r\n data: { title, subtitle, content, cta, ctaUrl },\r\n image,\r\n}) => (\r\n \r\n
\r\n \r\n {title}\r\n \r\n {subtitle ? (\r\n

\r\n {subtitle}\r\n

\r\n ) : null}\r\n

{content}

\r\n {cta ? (\r\n \r\n \r\n \r\n ) : null}\r\n
\r\n
\r\n {title\r\n
\r\n \r\n)\r\n","import \"core-js/modules/es.array.reduce\";\nimport \"core-js/modules/es.array.reduce\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (it) return (it = it.call(o)).next.bind(it);\n\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\nimport React, { useState, useCallback, forwardRef, useRef, useEffect, useImperativeHandle, useMemo } from 'react';\nvar is = {\n arr: Array.isArray,\n obj: function obj(a) {\n return Object.prototype.toString.call(a) === '[object Object]';\n },\n fun: function fun(a) {\n return typeof a === 'function';\n },\n str: function str(a) {\n return typeof a === 'string';\n },\n num: function num(a) {\n return typeof a === 'number';\n },\n und: function und(a) {\n return a === void 0;\n },\n nul: function nul(a) {\n return a === null;\n },\n set: function set(a) {\n return a instanceof Set;\n },\n map: function map(a) {\n return a instanceof Map;\n },\n equ: function equ(a, b) {\n if (typeof a !== typeof b) return false;\n if (is.str(a) || is.num(a)) return a === b;\n if (is.obj(a) && is.obj(b) && Object.keys(a).length + Object.keys(b).length === 0) return true;\n var i;\n\n for (i in a) {\n if (!(i in b)) return false;\n }\n\n for (i in b) {\n if (a[i] !== b[i]) return false;\n }\n\n return is.und(i) ? a === b : true;\n }\n};\n\nfunction merge(target, lowercase) {\n if (lowercase === void 0) {\n lowercase = true;\n }\n\n return function (object) {\n return (is.arr(object) ? object : Object.keys(object)).reduce(function (acc, element) {\n var key = lowercase ? element[0].toLowerCase() + element.substring(1) : element;\n acc[key] = target(key);\n return acc;\n }, target);\n };\n}\n\nfunction useForceUpdate() {\n var _useState = useState(false),\n f = _useState[1];\n\n var forceUpdate = useCallback(function () {\n return f(function (v) {\n return !v;\n });\n }, []);\n return forceUpdate;\n}\n\nfunction withDefault(value, defaultValue) {\n return is.und(value) || is.nul(value) ? defaultValue : value;\n}\n\nfunction toArray(a) {\n return !is.und(a) ? is.arr(a) ? a : [a] : [];\n}\n\nfunction callProp(obj) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return is.fun(obj) ? obj.apply(void 0, args) : obj;\n}\n\nfunction getForwardProps(props) {\n var to = props.to,\n from = props.from,\n config = props.config,\n onStart = props.onStart,\n onRest = props.onRest,\n onFrame = props.onFrame,\n children = props.children,\n reset = props.reset,\n reverse = props.reverse,\n force = props.force,\n immediate = props.immediate,\n delay = props.delay,\n attach = props.attach,\n destroyed = props.destroyed,\n interpolateTo = props.interpolateTo,\n ref = props.ref,\n lazy = props.lazy,\n forward = _objectWithoutPropertiesLoose(props, [\"to\", \"from\", \"config\", \"onStart\", \"onRest\", \"onFrame\", \"children\", \"reset\", \"reverse\", \"force\", \"immediate\", \"delay\", \"attach\", \"destroyed\", \"interpolateTo\", \"ref\", \"lazy\"]);\n\n return forward;\n}\n\nfunction interpolateTo(props) {\n var forward = getForwardProps(props);\n if (is.und(forward)) return _extends({\n to: forward\n }, props);\n var rest = Object.keys(props).reduce(function (a, k) {\n var _extends2;\n\n return !is.und(forward[k]) ? a : _extends({}, a, (_extends2 = {}, _extends2[k] = props[k], _extends2));\n }, {});\n return _extends({\n to: forward\n }, rest);\n}\n\nfunction handleRef(ref, forward) {\n if (forward) {\n // If it's a function, assume it's a ref callback\n if (is.fun(forward)) forward(ref);else if (is.obj(forward)) {\n forward.current = ref;\n }\n }\n\n return ref;\n}\n\nvar Animated = /*#__PURE__*/function () {\n function Animated() {\n this.payload = void 0;\n this.children = [];\n }\n\n var _proto = Animated.prototype;\n\n _proto.getAnimatedValue = function getAnimatedValue() {\n return this.getValue();\n };\n\n _proto.getPayload = function getPayload() {\n return this.payload || this;\n };\n\n _proto.attach = function attach() {};\n\n _proto.detach = function detach() {};\n\n _proto.getChildren = function getChildren() {\n return this.children;\n };\n\n _proto.addChild = function addChild(child) {\n if (this.children.length === 0) this.attach();\n this.children.push(child);\n };\n\n _proto.removeChild = function removeChild(child) {\n var index = this.children.indexOf(child);\n this.children.splice(index, 1);\n if (this.children.length === 0) this.detach();\n };\n\n return Animated;\n}();\n\nvar AnimatedArray = /*#__PURE__*/function (_Animated) {\n _inheritsLoose(AnimatedArray, _Animated);\n\n function AnimatedArray() {\n var _this2;\n\n _this2 = _Animated.apply(this, arguments) || this;\n _this2.payload = [];\n\n _this2.attach = function () {\n return _this2.payload.forEach(function (p) {\n return p instanceof Animated && p.addChild(_assertThisInitialized(_this2));\n });\n };\n\n _this2.detach = function () {\n return _this2.payload.forEach(function (p) {\n return p instanceof Animated && p.removeChild(_assertThisInitialized(_this2));\n });\n };\n\n return _this2;\n }\n\n return AnimatedArray;\n}(Animated);\n\nvar AnimatedObject = /*#__PURE__*/function (_Animated2) {\n _inheritsLoose(AnimatedObject, _Animated2);\n\n function AnimatedObject() {\n var _this3;\n\n _this3 = _Animated2.apply(this, arguments) || this;\n _this3.payload = {};\n\n _this3.attach = function () {\n return Object.values(_this3.payload).forEach(function (s) {\n return s instanceof Animated && s.addChild(_assertThisInitialized(_this3));\n });\n };\n\n _this3.detach = function () {\n return Object.values(_this3.payload).forEach(function (s) {\n return s instanceof Animated && s.removeChild(_assertThisInitialized(_this3));\n });\n };\n\n return _this3;\n }\n\n var _proto2 = AnimatedObject.prototype;\n\n _proto2.getValue = function getValue(animated) {\n if (animated === void 0) {\n animated = false;\n }\n\n var payload = {};\n\n for (var key in this.payload) {\n var value = this.payload[key];\n if (animated && !(value instanceof Animated)) continue;\n payload[key] = value instanceof Animated ? value[animated ? 'getAnimatedValue' : 'getValue']() : value;\n }\n\n return payload;\n };\n\n _proto2.getAnimatedValue = function getAnimatedValue() {\n return this.getValue(true);\n };\n\n return AnimatedObject;\n}(Animated);\n\nvar applyAnimatedValues;\n\nfunction injectApplyAnimatedValues(fn, transform) {\n applyAnimatedValues = {\n fn: fn,\n transform: transform\n };\n}\n\nvar colorNames;\n\nfunction injectColorNames(names) {\n colorNames = names;\n}\n\nvar requestFrame = function requestFrame(cb) {\n return typeof window !== 'undefined' ? window.requestAnimationFrame(cb) : -1;\n};\n\nvar cancelFrame = function cancelFrame(id) {\n typeof window !== 'undefined' && window.cancelAnimationFrame(id);\n};\n\nfunction injectFrame(raf, caf) {\n requestFrame = raf;\n cancelFrame = caf;\n}\n\nvar interpolation;\n\nfunction injectStringInterpolator(fn) {\n interpolation = fn;\n}\n\nvar now = function now() {\n return Date.now();\n};\n\nfunction injectNow(nowFn) {\n now = nowFn;\n}\n\nvar defaultElement;\n\nfunction injectDefaultElement(el) {\n defaultElement = el;\n}\n\nvar animatedApi = function animatedApi(node) {\n return node.current;\n};\n\nfunction injectAnimatedApi(fn) {\n animatedApi = fn;\n}\n\nvar createAnimatedStyle;\n\nfunction injectCreateAnimatedStyle(factory) {\n createAnimatedStyle = factory;\n}\n\nvar manualFrameloop;\n\nfunction injectManualFrameloop(callback) {\n manualFrameloop = callback;\n}\n\nvar Globals = /*#__PURE__*/Object.freeze({\n get applyAnimatedValues() {\n return applyAnimatedValues;\n },\n\n injectApplyAnimatedValues: injectApplyAnimatedValues,\n\n get colorNames() {\n return colorNames;\n },\n\n injectColorNames: injectColorNames,\n\n get requestFrame() {\n return requestFrame;\n },\n\n get cancelFrame() {\n return cancelFrame;\n },\n\n injectFrame: injectFrame,\n\n get interpolation() {\n return interpolation;\n },\n\n injectStringInterpolator: injectStringInterpolator,\n\n get now() {\n return now;\n },\n\n injectNow: injectNow,\n\n get defaultElement() {\n return defaultElement;\n },\n\n injectDefaultElement: injectDefaultElement,\n\n get animatedApi() {\n return animatedApi;\n },\n\n injectAnimatedApi: injectAnimatedApi,\n\n get createAnimatedStyle() {\n return createAnimatedStyle;\n },\n\n injectCreateAnimatedStyle: injectCreateAnimatedStyle,\n\n get manualFrameloop() {\n return manualFrameloop;\n },\n\n injectManualFrameloop: injectManualFrameloop\n});\n/**\n * Wraps the `style` property with `AnimatedStyle`.\n */\n\nvar AnimatedProps = /*#__PURE__*/function (_AnimatedObject) {\n _inheritsLoose(AnimatedProps, _AnimatedObject);\n\n function AnimatedProps(props, callback) {\n var _this4;\n\n _this4 = _AnimatedObject.call(this) || this;\n _this4.update = void 0;\n _this4.payload = !props.style ? props : _extends({}, props, {\n style: createAnimatedStyle(props.style)\n });\n _this4.update = callback;\n\n _this4.attach();\n\n return _this4;\n }\n\n return AnimatedProps;\n}(AnimatedObject);\n\nvar isFunctionComponent = function isFunctionComponent(val) {\n return is.fun(val) && !(val.prototype instanceof React.Component);\n};\n\nvar createAnimatedComponent = function createAnimatedComponent(Component) {\n var AnimatedComponent = /*#__PURE__*/forwardRef(function (props, ref) {\n var forceUpdate = useForceUpdate();\n var mounted = useRef(true);\n var propsAnimated = useRef(null);\n var node = useRef(null);\n var attachProps = useCallback(function (props) {\n var oldPropsAnimated = propsAnimated.current;\n\n var callback = function callback() {\n var didUpdate = false;\n\n if (node.current) {\n didUpdate = applyAnimatedValues.fn(node.current, propsAnimated.current.getAnimatedValue());\n }\n\n if (!node.current || didUpdate === false) {\n // If no referenced node has been found, or the update target didn't have a\n // native-responder, then forceUpdate the animation ...\n forceUpdate();\n }\n };\n\n propsAnimated.current = new AnimatedProps(props, callback);\n oldPropsAnimated && oldPropsAnimated.detach();\n }, []);\n useEffect(function () {\n return function () {\n mounted.current = false;\n propsAnimated.current && propsAnimated.current.detach();\n };\n }, []);\n useImperativeHandle(ref, function () {\n return animatedApi(node, mounted, forceUpdate);\n });\n attachProps(props);\n\n var _getValue = propsAnimated.current.getValue(),\n scrollTop = _getValue.scrollTop,\n scrollLeft = _getValue.scrollLeft,\n animatedProps = _objectWithoutPropertiesLoose(_getValue, [\"scrollTop\", \"scrollLeft\"]); // Functions cannot have refs, see:\n // See: https://github.com/react-spring/react-spring/issues/569\n\n\n var refFn = isFunctionComponent(Component) ? undefined : function (childRef) {\n return node.current = handleRef(childRef, ref);\n };\n return /*#__PURE__*/React.createElement(Component, _extends({}, animatedProps, {\n ref: refFn\n }));\n });\n return AnimatedComponent;\n};\n\nvar active = false;\nvar controllers = new Set();\n\nvar update = function update() {\n if (!active) return false;\n var time = now();\n\n for (var _iterator = _createForOfIteratorHelperLoose(controllers), _step; !(_step = _iterator()).done;) {\n var controller = _step.value;\n var isActive = false;\n\n for (var configIdx = 0; configIdx < controller.configs.length; configIdx++) {\n var _config = controller.configs[configIdx];\n var endOfAnimation = void 0,\n lastTime = void 0;\n\n for (var valIdx = 0; valIdx < _config.animatedValues.length; valIdx++) {\n var animation = _config.animatedValues[valIdx]; // If an animation is done, skip, until all of them conclude\n\n if (animation.done) continue;\n var from = _config.fromValues[valIdx];\n var to = _config.toValues[valIdx];\n var position = animation.lastPosition;\n var isAnimated = to instanceof Animated;\n var velocity = Array.isArray(_config.initialVelocity) ? _config.initialVelocity[valIdx] : _config.initialVelocity;\n if (isAnimated) to = to.getValue(); // Conclude animation if it's either immediate, or from-values match end-state\n\n if (_config.immediate) {\n animation.setValue(to);\n animation.done = true;\n continue;\n } // Break animation when string values are involved\n\n\n if (typeof from === 'string' || typeof to === 'string') {\n animation.setValue(to);\n animation.done = true;\n continue;\n }\n\n if (_config.duration !== void 0) {\n /** Duration easing */\n position = from + _config.easing((time - animation.startTime) / _config.duration) * (to - from);\n endOfAnimation = time >= animation.startTime + _config.duration;\n } else if (_config.decay) {\n /** Decay easing */\n position = from + velocity / (1 - 0.998) * (1 - Math.exp(-(1 - 0.998) * (time - animation.startTime)));\n endOfAnimation = Math.abs(animation.lastPosition - position) < 0.1;\n if (endOfAnimation) to = position;\n } else {\n /** Spring easing */\n lastTime = animation.lastTime !== void 0 ? animation.lastTime : time;\n velocity = animation.lastVelocity !== void 0 ? animation.lastVelocity : _config.initialVelocity; // If we lost a lot of frames just jump to the end.\n\n if (time > lastTime + 64) lastTime = time; // http://gafferongames.com/game-physics/fix-your-timestep/\n\n var numSteps = Math.floor(time - lastTime);\n\n for (var i = 0; i < numSteps; ++i) {\n var force = -_config.tension * (position - to);\n var damping = -_config.friction * velocity;\n var acceleration = (force + damping) / _config.mass;\n velocity = velocity + acceleration * 1 / 1000;\n position = position + velocity * 1 / 1000;\n } // Conditions for stopping the spring animation\n\n\n var isOvershooting = _config.clamp && _config.tension !== 0 ? from < to ? position > to : position < to : false;\n\n var isVelocity = Math.abs(velocity) <= _config.precision;\n\n var isDisplacement = _config.tension !== 0 ? Math.abs(to - position) <= _config.precision : true;\n endOfAnimation = isOvershooting || isVelocity && isDisplacement;\n animation.lastVelocity = velocity;\n animation.lastTime = time;\n } // Trails aren't done until their parents conclude\n\n\n if (isAnimated && !_config.toValues[valIdx].done) endOfAnimation = false;\n\n if (endOfAnimation) {\n // Ensure that we end up with a round value\n if (animation.value !== to) position = to;\n animation.done = true;\n } else isActive = true;\n\n animation.setValue(position);\n animation.lastPosition = position;\n } // Keep track of updated values only when necessary\n\n\n if (controller.props.onFrame) controller.values[_config.name] = _config.interpolation.getValue();\n } // Update callbacks in the end of the frame\n\n\n if (controller.props.onFrame) controller.props.onFrame(controller.values); // Either call onEnd or next frame\n\n if (!isActive) {\n controllers.delete(controller);\n controller.stop(true);\n }\n } // Loop over as long as there are controllers ...\n\n\n if (controllers.size) {\n if (manualFrameloop) manualFrameloop();else requestFrame(update);\n } else {\n active = false;\n }\n\n return active;\n};\n\nvar _start = function start(controller) {\n if (!controllers.has(controller)) controllers.add(controller);\n\n if (!active) {\n active = true;\n if (manualFrameloop) requestFrame(manualFrameloop);else requestFrame(update);\n }\n};\n\nvar stop = function stop(controller) {\n if (controllers.has(controller)) controllers.delete(controller);\n};\n\nfunction createInterpolator(range, output, extrapolate) {\n if (typeof range === 'function') {\n return range;\n }\n\n if (Array.isArray(range)) {\n return createInterpolator({\n range: range,\n output: output,\n extrapolate: extrapolate\n });\n }\n\n if (interpolation && typeof range.output[0] === 'string') {\n return interpolation(range);\n }\n\n var config = range;\n var outputRange = config.output;\n var inputRange = config.range || [0, 1];\n var extrapolateLeft = config.extrapolateLeft || config.extrapolate || 'extend';\n var extrapolateRight = config.extrapolateRight || config.extrapolate || 'extend';\n\n var easing = config.easing || function (t) {\n return t;\n };\n\n return function (input) {\n var range = findRange(input, inputRange);\n return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight, config.map);\n };\n}\n\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {\n var result = map ? map(input) : input; // Extrapolate\n\n if (result < inputMin) {\n if (extrapolateLeft === 'identity') return result;else if (extrapolateLeft === 'clamp') result = inputMin;\n }\n\n if (result > inputMax) {\n if (extrapolateRight === 'identity') return result;else if (extrapolateRight === 'clamp') result = inputMax;\n }\n\n if (outputMin === outputMax) return outputMin;\n if (inputMin === inputMax) return input <= inputMin ? outputMin : outputMax; // Input Range\n\n if (inputMin === -Infinity) result = -result;else if (inputMax === Infinity) result = result - inputMin;else result = (result - inputMin) / (inputMax - inputMin); // Easing\n\n result = easing(result); // Output Range\n\n if (outputMin === -Infinity) result = -result;else if (outputMax === Infinity) result = result + outputMin;else result = result * (outputMax - outputMin) + outputMin;\n return result;\n}\n\nfunction findRange(input, inputRange) {\n for (var i = 1; i < inputRange.length - 1; ++i) {\n if (inputRange[i] >= input) break;\n }\n\n return i - 1;\n}\n\nvar AnimatedInterpolation = /*#__PURE__*/function (_AnimatedArray) {\n _inheritsLoose(AnimatedInterpolation, _AnimatedArray);\n\n function AnimatedInterpolation(parents, range, output, extrapolate) {\n var _this5;\n\n _this5 = _AnimatedArray.call(this) || this;\n _this5.calc = void 0;\n _this5.payload = parents instanceof AnimatedArray && !(parents instanceof AnimatedInterpolation) ? parents.getPayload() : Array.isArray(parents) ? parents : [parents];\n _this5.calc = createInterpolator(range, output, extrapolate);\n return _this5;\n }\n\n var _proto3 = AnimatedInterpolation.prototype;\n\n _proto3.getValue = function getValue() {\n return this.calc.apply(this, _toConsumableArray(this.payload.map(function (value) {\n return value.getValue();\n })));\n };\n\n _proto3.updateConfig = function updateConfig(range, output, extrapolate) {\n this.calc = createInterpolator(range, output, extrapolate);\n };\n\n _proto3.interpolate = function interpolate(range, output, extrapolate) {\n return new AnimatedInterpolation(this, range, output, extrapolate);\n };\n\n return AnimatedInterpolation;\n}(AnimatedArray);\n\nvar interpolate$1 = function interpolate$1(parents, range, output) {\n return parents && new AnimatedInterpolation(parents, range, output);\n};\n\nvar config = {\n default: {\n tension: 170,\n friction: 26\n },\n gentle: {\n tension: 120,\n friction: 14\n },\n wobbly: {\n tension: 180,\n friction: 12\n },\n stiff: {\n tension: 210,\n friction: 20\n },\n slow: {\n tension: 280,\n friction: 60\n },\n molasses: {\n tension: 280,\n friction: 120\n }\n};\n/** API\n * useChain(references, timeSteps, timeFrame)\n */\n\nfunction useChain(refs, timeSteps, timeFrame) {\n if (timeFrame === void 0) {\n timeFrame = 1000;\n }\n\n var previous = useRef();\n useEffect(function () {\n if (is.equ(refs, previous.current)) refs.forEach(function (_ref) {\n var current = _ref.current;\n return current && current.start();\n });else if (timeSteps) {\n refs.forEach(function (_ref2, index) {\n var current = _ref2.current;\n\n if (current) {\n var ctrls = current.controllers;\n\n if (ctrls.length) {\n var t = timeFrame * timeSteps[index];\n ctrls.forEach(function (ctrl) {\n ctrl.queue = ctrl.queue.map(function (e) {\n return _extends({}, e, {\n delay: e.delay + t\n });\n });\n ctrl.start();\n });\n }\n }\n });\n } else refs.reduce(function (q, _ref3, rI) {\n var current = _ref3.current;\n return q = q.then(function () {\n return current.start();\n });\n }, Promise.resolve());\n previous.current = refs;\n });\n}\n/**\n * Animated works by building a directed acyclic graph of dependencies\n * transparently when you render your Animated components.\n *\n * new Animated.Value(0)\n * .interpolate() .interpolate() new Animated.Value(1)\n * opacity translateY scale\n * style transform\n * View#234 style\n * View#123\n *\n * A) Top Down phase\n * When an AnimatedValue is updated, we recursively go down through this\n * graph in order to find leaf nodes: the views that we flag as needing\n * an update.\n *\n * B) Bottom Up phase\n * When a view is flagged as needing an update, we recursively go back up\n * in order to build the new value that it needs. The reason why we need\n * this two-phases process is to deal with composite props such as\n * transform which can receive values from multiple parents.\n */\n\n\nfunction addAnimatedStyles(node, styles) {\n if ('update' in node) {\n styles.add(node);\n } else {\n node.getChildren().forEach(function (child) {\n return addAnimatedStyles(child, styles);\n });\n }\n}\n\nvar AnimatedValue = /*#__PURE__*/function (_Animated3) {\n _inheritsLoose(AnimatedValue, _Animated3);\n\n function AnimatedValue(_value) {\n var _this6;\n\n var _this;\n\n _this6 = _Animated3.call(this) || this;\n _this = _assertThisInitialized(_this6);\n _this6.animatedStyles = new Set();\n _this6.value = void 0;\n _this6.startPosition = void 0;\n _this6.lastPosition = void 0;\n _this6.lastVelocity = void 0;\n _this6.startTime = void 0;\n _this6.lastTime = void 0;\n _this6.done = false;\n\n _this6.setValue = function (value, flush) {\n if (flush === void 0) {\n flush = true;\n }\n\n _this.value = value;\n if (flush) _this.flush();\n };\n\n _this6.value = _value;\n _this6.startPosition = _value;\n _this6.lastPosition = _value;\n return _this6;\n }\n\n var _proto4 = AnimatedValue.prototype;\n\n _proto4.flush = function flush() {\n if (this.animatedStyles.size === 0) {\n addAnimatedStyles(this, this.animatedStyles);\n }\n\n this.animatedStyles.forEach(function (animatedStyle) {\n return animatedStyle.update();\n });\n };\n\n _proto4.clearStyles = function clearStyles() {\n this.animatedStyles.clear();\n };\n\n _proto4.getValue = function getValue() {\n return this.value;\n };\n\n _proto4.interpolate = function interpolate(range, output, extrapolate) {\n return new AnimatedInterpolation(this, range, output, extrapolate);\n };\n\n return AnimatedValue;\n}(Animated);\n\nvar AnimatedValueArray = /*#__PURE__*/function (_AnimatedArray2) {\n _inheritsLoose(AnimatedValueArray, _AnimatedArray2);\n\n function AnimatedValueArray(values) {\n var _this7;\n\n _this7 = _AnimatedArray2.call(this) || this;\n _this7.payload = values.map(function (n) {\n return new AnimatedValue(n);\n });\n return _this7;\n }\n\n var _proto5 = AnimatedValueArray.prototype;\n\n _proto5.setValue = function setValue(value, flush) {\n var _this8 = this;\n\n if (flush === void 0) {\n flush = true;\n }\n\n if (Array.isArray(value)) {\n if (value.length === this.payload.length) {\n value.forEach(function (v, i) {\n return _this8.payload[i].setValue(v, flush);\n });\n }\n } else {\n this.payload.forEach(function (p) {\n return p.setValue(value, flush);\n });\n }\n };\n\n _proto5.getValue = function getValue() {\n return this.payload.map(function (v) {\n return v.getValue();\n });\n };\n\n _proto5.interpolate = function interpolate(range, output) {\n return new AnimatedInterpolation(this, range, output);\n };\n\n return AnimatedValueArray;\n}(AnimatedArray);\n\nvar G = 0;\n\nvar Controller = /*#__PURE__*/function () {\n function Controller() {\n var _this9 = this;\n\n this.id = void 0;\n this.idle = true;\n this.hasChanged = false;\n this.guid = 0;\n this.local = 0;\n this.props = {};\n this.merged = {};\n this.animations = {};\n this.interpolations = {};\n this.values = {};\n this.configs = [];\n this.listeners = [];\n this.queue = [];\n this.localQueue = void 0;\n\n this.getValues = function () {\n return _this9.interpolations;\n };\n\n this.id = G++;\n }\n /** update(props)\n * This function filters input props and creates an array of tasks which are executed in .start()\n * Each task is allowed to carry a delay, which means it can execute asnychroneously */\n\n\n var _proto6 = Controller.prototype;\n\n _proto6.update = function update(args) {\n //this._id = n + this.id\n if (!args) return this; // Extract delay and the to-prop from props\n\n var _ref = interpolateTo(args),\n _ref$delay = _ref.delay,\n delay = _ref$delay === void 0 ? 0 : _ref$delay,\n to = _ref.to,\n props = _objectWithoutPropertiesLoose(_ref, [\"delay\", \"to\"]);\n\n if (is.arr(to) || is.fun(to)) {\n // If config is either a function or an array queue it up as is\n this.queue.push(_extends({}, props, {\n delay: delay,\n to: to\n }));\n } else if (to) {\n // Otherwise go through each key since it could be delayed individually\n var ops = {};\n Object.entries(to).forEach(function (_ref2) {\n var _to;\n\n var k = _ref2[0],\n v = _ref2[1]; // Fetch delay and create an entry, consisting of the to-props, the delay, and basic props\n\n var entry = _extends({\n to: (_to = {}, _to[k] = v, _to),\n delay: callProp(delay, k)\n }, props);\n\n var previous = ops[entry.delay] && ops[entry.delay].to;\n ops[entry.delay] = _extends({}, ops[entry.delay], entry, {\n to: _extends({}, previous, entry.to)\n });\n });\n this.queue = Object.values(ops);\n } // Sort queue, so that async calls go last\n\n\n this.queue = this.queue.sort(function (a, b) {\n return a.delay - b.delay;\n }); // Diff the reduced props immediately (they'll contain the from-prop and some config)\n\n this.diff(props);\n return this;\n }\n /** start(onEnd)\n * This function either executes a queue, if present, or starts the frameloop, which animates */\n ;\n\n _proto6.start = function start(onEnd) {\n var _this10 = this; // If a queue is present we must excecute it\n\n\n if (this.queue.length) {\n this.idle = false; // Updates can interrupt trailing queues, in that case we just merge values\n\n if (this.localQueue) {\n this.localQueue.forEach(function (_ref3) {\n var _ref3$from = _ref3.from,\n from = _ref3$from === void 0 ? {} : _ref3$from,\n _ref3$to = _ref3.to,\n to = _ref3$to === void 0 ? {} : _ref3$to;\n if (is.obj(from)) _this10.merged = _extends({}, from, _this10.merged);\n if (is.obj(to)) _this10.merged = _extends({}, _this10.merged, to);\n });\n } // The guid helps us tracking frames, a new queue over an old one means an override\n // We discard async calls in that caseÍ\n\n\n var local = this.local = ++this.guid;\n var queue = this.localQueue = this.queue;\n this.queue = []; // Go through each entry and execute it\n\n queue.forEach(function (_ref4, index) {\n var delay = _ref4.delay,\n props = _objectWithoutPropertiesLoose(_ref4, [\"delay\"]);\n\n var cb = function cb(finished) {\n if (index === queue.length - 1 && local === _this10.guid && finished) {\n _this10.idle = true;\n if (_this10.props.onRest) _this10.props.onRest(_this10.merged);\n }\n\n if (onEnd) onEnd();\n }; // Entries can be delayed, ansyc or immediate\n\n\n var async = is.arr(props.to) || is.fun(props.to);\n\n if (delay) {\n setTimeout(function () {\n if (local === _this10.guid) {\n if (async) _this10.runAsync(props, cb);else _this10.diff(props).start(cb);\n }\n }, delay);\n } else if (async) _this10.runAsync(props, cb);else _this10.diff(props).start(cb);\n });\n } // Otherwise we kick of the frameloop\n else {\n if (is.fun(onEnd)) this.listeners.push(onEnd);\n if (this.props.onStart) this.props.onStart();\n\n _start(this);\n }\n\n return this;\n };\n\n _proto6.stop = function stop(finished) {\n this.listeners.forEach(function (onEnd) {\n return onEnd(finished);\n });\n this.listeners = [];\n return this;\n }\n /** Pause sets onEnd listeners free, but also removes the controller from the frameloop */\n ;\n\n _proto6.pause = function pause(finished) {\n this.stop(true);\n if (finished) stop(this);\n return this;\n };\n\n _proto6.runAsync = function runAsync(_ref5, onEnd) {\n var _this11 = this;\n\n var _this = this;\n\n var delay = _ref5.delay,\n props = _objectWithoutPropertiesLoose(_ref5, [\"delay\"]);\n\n var local = this.local; // If \"to\" is either a function or an array it will be processed async, therefor \"to\" should be empty right now\n // If the view relies on certain values \"from\" has to be present\n\n var queue = Promise.resolve(undefined);\n\n if (is.arr(props.to)) {\n var _loop = function _loop(i) {\n var index = i;\n\n var fresh = _extends({}, props, interpolateTo(props.to[index]));\n\n if (is.arr(fresh.config)) fresh.config = fresh.config[index];\n queue = queue.then(function () {\n //this.stop()\n if (local === _this11.guid) return new Promise(function (r) {\n return _this11.diff(fresh).start(r);\n });\n });\n };\n\n for (var i = 0; i < props.to.length; i++) {\n _loop(i);\n }\n } else if (is.fun(props.to)) {\n var index = 0;\n var last;\n queue = queue.then(function () {\n return props.to( // next(props)\n function (p) {\n var fresh = _extends({}, props, interpolateTo(p));\n\n if (is.arr(fresh.config)) fresh.config = fresh.config[index];\n index++; //this.stop()\n\n if (local === _this11.guid) return last = new Promise(function (r) {\n return _this11.diff(fresh).start(r);\n });\n return;\n }, // cancel()\n function (finished) {\n if (finished === void 0) {\n finished = true;\n }\n\n return _this.stop(finished);\n }).then(function () {\n return last;\n });\n });\n }\n\n queue.then(onEnd);\n };\n\n _proto6.diff = function diff(props) {\n var _this12 = this;\n\n this.props = _extends({}, this.props, props);\n var _this$props = this.props,\n _this$props$from = _this$props.from,\n from = _this$props$from === void 0 ? {} : _this$props$from,\n _this$props$to = _this$props.to,\n to = _this$props$to === void 0 ? {} : _this$props$to,\n _this$props$config = _this$props.config,\n config = _this$props$config === void 0 ? {} : _this$props$config,\n reverse = _this$props.reverse,\n attach = _this$props.attach,\n reset = _this$props.reset,\n immediate = _this$props.immediate; // Reverse values when requested\n\n if (reverse) {\n var _ref6 = [to, from];\n from = _ref6[0];\n to = _ref6[1];\n } // This will collect all props that were ever set, reset merged props when necessary\n\n\n this.merged = _extends({}, from, this.merged, to);\n this.hasChanged = false; // Attachment handling, trailed springs can \"attach\" themselves to a previous spring\n\n var target = attach && attach(this); // Reduces input { name: value } pairs into animated values\n\n this.animations = Object.entries(this.merged).reduce(function (acc, _ref7) {\n var name = _ref7[0],\n value = _ref7[1]; // Issue cached entries, except on reset\n\n var entry = acc[name] || {}; // Figure out what the value is supposed to be\n\n var isNumber = is.num(value);\n var isString = is.str(value) && !value.startsWith('#') && !/\\d/.test(value) && !colorNames[value];\n var isArray = is.arr(value);\n var isInterpolation = !isNumber && !isArray && !isString;\n var fromValue = !is.und(from[name]) ? from[name] : value;\n var toValue = isNumber || isArray ? value : isString ? value : 1;\n var toConfig = callProp(config, name);\n if (target) toValue = target.animations[name].parent;\n var parent = entry.parent,\n interpolation$$1 = entry.interpolation,\n toValues = toArray(target ? toValue.getPayload() : toValue),\n animatedValues;\n var newValue = value;\n if (isInterpolation) newValue = interpolation({\n range: [0, 1],\n output: [value, value]\n })(1);\n var currentValue = interpolation$$1 && interpolation$$1.getValue(); // Change detection flags\n\n var isFirst = is.und(parent);\n var isActive = !isFirst && entry.animatedValues.some(function (v) {\n return !v.done;\n });\n var currentValueDiffersFromGoal = !is.equ(newValue, currentValue);\n var hasNewGoal = !is.equ(newValue, entry.previous);\n var hasNewConfig = !is.equ(toConfig, entry.config); // Change animation props when props indicate a new goal (new value differs from previous one)\n // and current values differ from it. Config changes trigger a new update as well (though probably shouldn't?)\n\n if (reset || hasNewGoal && currentValueDiffersFromGoal || hasNewConfig) {\n var _extends3; // Convert regular values into animated values, ALWAYS re-use if possible\n\n\n if (isNumber || isString) parent = interpolation$$1 = entry.parent || new AnimatedValue(fromValue);else if (isArray) parent = interpolation$$1 = entry.parent || new AnimatedValueArray(fromValue);else if (isInterpolation) {\n var prev = entry.interpolation && entry.interpolation.calc(entry.parent.value);\n prev = prev !== void 0 && !reset ? prev : fromValue;\n\n if (entry.parent) {\n parent = entry.parent;\n parent.setValue(0, false);\n } else parent = new AnimatedValue(0);\n\n var range = {\n output: [prev, value]\n };\n\n if (entry.interpolation) {\n interpolation$$1 = entry.interpolation;\n entry.interpolation.updateConfig(range);\n } else interpolation$$1 = parent.interpolate(range);\n }\n toValues = toArray(target ? toValue.getPayload() : toValue);\n animatedValues = toArray(parent.getPayload());\n if (reset && !isInterpolation) parent.setValue(fromValue, false);\n _this12.hasChanged = true; // Reset animated values\n\n animatedValues.forEach(function (value) {\n value.startPosition = value.value;\n value.lastPosition = value.value;\n value.lastVelocity = isActive ? value.lastVelocity : undefined;\n value.lastTime = isActive ? value.lastTime : undefined;\n value.startTime = now();\n value.done = false;\n value.animatedStyles.clear();\n }); // Set immediate values\n\n if (callProp(immediate, name)) {\n parent.setValue(isInterpolation ? toValue : value, false);\n }\n\n return _extends({}, acc, (_extends3 = {}, _extends3[name] = _extends({}, entry, {\n name: name,\n parent: parent,\n interpolation: interpolation$$1,\n animatedValues: animatedValues,\n toValues: toValues,\n previous: newValue,\n config: toConfig,\n fromValues: toArray(parent.getValue()),\n immediate: callProp(immediate, name),\n initialVelocity: withDefault(toConfig.velocity, 0),\n clamp: withDefault(toConfig.clamp, false),\n precision: withDefault(toConfig.precision, 0.01),\n tension: withDefault(toConfig.tension, 170),\n friction: withDefault(toConfig.friction, 26),\n mass: withDefault(toConfig.mass, 1),\n duration: toConfig.duration,\n easing: withDefault(toConfig.easing, function (t) {\n return t;\n }),\n decay: toConfig.decay\n }), _extends3));\n } else {\n if (!currentValueDiffersFromGoal) {\n var _extends4; // So ... the current target value (newValue) appears to be different from the previous value,\n // which normally constitutes an update, but the actual value (currentValue) matches the target!\n // In order to resolve this without causing an animation update we silently flag the animation as done,\n // which it technically is. Interpolations also needs a config update with their target set to 1.\n\n\n if (isInterpolation) {\n parent.setValue(1, false);\n interpolation$$1.updateConfig({\n output: [newValue, newValue]\n });\n }\n\n parent.done = true;\n _this12.hasChanged = true;\n return _extends({}, acc, (_extends4 = {}, _extends4[name] = _extends({}, acc[name], {\n previous: newValue\n }), _extends4));\n }\n\n return acc;\n }\n }, this.animations);\n\n if (this.hasChanged) {\n // Make animations available to frameloop\n this.configs = Object.values(this.animations);\n this.values = {};\n this.interpolations = {};\n\n for (var key in this.animations) {\n this.interpolations[key] = this.animations[key].interpolation;\n this.values[key] = this.animations[key].interpolation.getValue();\n }\n }\n\n return this;\n };\n\n _proto6.destroy = function destroy() {\n this.stop();\n this.props = {};\n this.merged = {};\n this.animations = {};\n this.interpolations = {};\n this.values = {};\n this.configs = [];\n this.local = 0;\n };\n\n return Controller;\n}();\n/** API\n * const props = useSprings(number, [{ ... }, { ... }, ...])\n * const [props, set] = useSprings(number, (i, controller) => ({ ... }))\n */\n\n\nvar useSprings = function useSprings(length, props) {\n var mounted = useRef(false);\n var ctrl = useRef();\n var isFn = is.fun(props); // The controller maintains the animation values, starts and stops animations\n\n var _useMemo = useMemo(function () {\n // Remove old controllers\n if (ctrl.current) {\n ctrl.current.map(function (c) {\n return c.destroy();\n });\n ctrl.current = undefined;\n }\n\n var ref;\n return [new Array(length).fill().map(function (_, i) {\n var ctrl = new Controller();\n var newProps = isFn ? callProp(props, i, ctrl) : props[i];\n if (i === 0) ref = newProps.ref;\n ctrl.update(newProps);\n if (!ref) ctrl.start();\n return ctrl;\n }), ref];\n }, [length]),\n controllers = _useMemo[0],\n ref = _useMemo[1];\n\n ctrl.current = controllers; // The hooks reference api gets defined here ...\n\n var api = useImperativeHandle(ref, function () {\n return {\n start: function start() {\n return Promise.all(ctrl.current.map(function (c) {\n return new Promise(function (r) {\n return c.start(r);\n });\n }));\n },\n stop: function stop(finished) {\n return ctrl.current.forEach(function (c) {\n return c.stop(finished);\n });\n },\n\n get controllers() {\n return ctrl.current;\n }\n\n };\n }); // This function updates the controllers\n\n var updateCtrl = useMemo(function () {\n return function (updateProps) {\n return ctrl.current.map(function (c, i) {\n c.update(isFn ? callProp(updateProps, i, c) : updateProps[i]);\n if (!ref) c.start();\n });\n };\n }, [length]); // Update controller if props aren't functional\n\n useEffect(function () {\n if (mounted.current) {\n if (!isFn) updateCtrl(props);\n } else if (!ref) ctrl.current.forEach(function (c) {\n return c.start();\n });\n }); // Update mounted flag and destroy controller on unmount\n\n useEffect(function () {\n return mounted.current = true, function () {\n return ctrl.current.forEach(function (c) {\n return c.destroy();\n });\n };\n }, []); // Return animated props, or, anim-props + the update-setter above\n\n var propValues = ctrl.current.map(function (c) {\n return c.getValues();\n });\n return isFn ? [propValues, updateCtrl, function (finished) {\n return ctrl.current.forEach(function (c) {\n return c.pause(finished);\n });\n }] : propValues;\n};\n/** API\n * const props = useSpring({ ... })\n * const [props, set] = useSpring(() => ({ ... }))\n */\n\n\nvar useSpring = function useSpring(props) {\n var isFn = is.fun(props);\n\n var _useSprings = useSprings(1, isFn ? props : [props]),\n result = _useSprings[0],\n set = _useSprings[1],\n pause = _useSprings[2];\n\n return isFn ? [result[0], set, pause] : result;\n};\n/** API\n * const trails = useTrail(number, { ... })\n * const [trails, set] = useTrail(number, () => ({ ... }))\n */\n\n\nvar useTrail = function useTrail(length, props) {\n var mounted = useRef(false);\n var isFn = is.fun(props);\n var updateProps = callProp(props);\n var instances = useRef();\n\n var _useSprings = useSprings(length, function (i, ctrl) {\n if (i === 0) instances.current = [];\n instances.current.push(ctrl);\n return _extends({}, updateProps, {\n config: callProp(updateProps.config, i),\n attach: i > 0 && function () {\n return instances.current[i - 1];\n }\n });\n }),\n result = _useSprings[0],\n set = _useSprings[1],\n pause = _useSprings[2]; // Set up function to update controller\n\n\n var updateCtrl = useMemo(function () {\n return function (props) {\n return set(function (i, ctrl) {\n var last = props.reverse ? i === 0 : length - 1 === i;\n var attachIdx = props.reverse ? i + 1 : i - 1;\n var attachController = instances.current[attachIdx];\n return _extends({}, props, {\n config: callProp(props.config || updateProps.config, i),\n attach: attachController && function () {\n return attachController;\n }\n });\n });\n };\n }, [length, updateProps.reverse]); // Update controller if props aren't functional\n\n useEffect(function () {\n return void (mounted.current && !isFn && updateCtrl(props));\n }); // Update mounted flag and destroy controller on unmount\n\n useEffect(function () {\n return void (mounted.current = true);\n }, []);\n return isFn ? [result, updateCtrl, pause] : result;\n};\n/** API\n * const transitions = useTransition(items, itemKeys, { ... })\n * const [transitions, update] = useTransition(items, itemKeys, () => ({ ... }))\n */\n\n\nvar guid = 0;\nvar ENTER = 'enter';\nvar LEAVE = 'leave';\nvar UPDATE = 'update';\n\nvar mapKeys = function mapKeys(items, keys) {\n return (typeof keys === 'function' ? items.map(keys) : toArray(keys)).map(String);\n};\n\nvar get = function get(props) {\n var items = props.items,\n _props$keys = props.keys,\n keys = _props$keys === void 0 ? function (item) {\n return item;\n } : _props$keys,\n rest = _objectWithoutPropertiesLoose(props, [\"items\", \"keys\"]);\n\n items = toArray(items !== void 0 ? items : null);\n return _extends({\n items: items,\n keys: mapKeys(items, keys)\n }, rest);\n};\n\nfunction useTransition(input, keyTransform, config) {\n var props = _extends({\n items: input,\n keys: keyTransform || function (i) {\n return i;\n }\n }, config);\n\n var _get = get(props),\n _get$lazy = _get.lazy,\n lazy = _get$lazy === void 0 ? false : _get$lazy,\n _get$unique = _get.unique,\n _get$reset = _get.reset,\n reset = _get$reset === void 0 ? false : _get$reset,\n enter = _get.enter,\n leave = _get.leave,\n update = _get.update,\n onDestroyed = _get.onDestroyed,\n keys = _get.keys,\n items = _get.items,\n onFrame = _get.onFrame,\n _onRest = _get.onRest,\n onStart = _get.onStart,\n ref = _get.ref,\n extra = _objectWithoutPropertiesLoose(_get, [\"lazy\", \"unique\", \"reset\", \"enter\", \"leave\", \"update\", \"onDestroyed\", \"keys\", \"items\", \"onFrame\", \"onRest\", \"onStart\", \"ref\"]);\n\n var forceUpdate = useForceUpdate();\n var mounted = useRef(false);\n var state = useRef({\n mounted: false,\n first: true,\n deleted: [],\n current: {},\n transitions: [],\n prevProps: {},\n paused: !!props.ref,\n instances: !mounted.current && new Map(),\n forceUpdate: forceUpdate\n });\n useImperativeHandle(props.ref, function () {\n return {\n start: function start() {\n return Promise.all(Array.from(state.current.instances).map(function (_ref) {\n var c = _ref[1];\n return new Promise(function (r) {\n return c.start(r);\n });\n }));\n },\n stop: function stop(finished) {\n return Array.from(state.current.instances).forEach(function (_ref2) {\n var c = _ref2[1];\n return c.stop(finished);\n });\n },\n\n get controllers() {\n return Array.from(state.current.instances).map(function (_ref3) {\n var c = _ref3[1];\n return c;\n });\n }\n\n };\n }); // Update state\n\n state.current = diffItems(state.current, props);\n\n if (state.current.changed) {\n // Update state\n state.current.transitions.forEach(function (transition) {\n var slot = transition.slot,\n from = transition.from,\n to = transition.to,\n config = transition.config,\n trail = transition.trail,\n key = transition.key,\n item = transition.item;\n if (!state.current.instances.has(key)) state.current.instances.set(key, new Controller()); // update the map object\n\n var ctrl = state.current.instances.get(key);\n\n var newProps = _extends({}, extra, {\n to: to,\n from: from,\n config: config,\n ref: ref,\n onRest: function onRest(values) {\n if (state.current.mounted) {\n if (transition.destroyed) {\n // If no ref is given delete destroyed items immediately\n if (!ref && !lazy) cleanUp(state, key);\n if (onDestroyed) onDestroyed(item);\n } // A transition comes to rest once all its springs conclude\n\n\n var curInstances = Array.from(state.current.instances);\n\n var _active = curInstances.some(function (_ref4) {\n var c = _ref4[1];\n return !c.idle;\n });\n\n if (!_active && (ref || lazy) && state.current.deleted.length > 0) cleanUp(state);\n if (_onRest) _onRest(item, slot, values);\n }\n },\n onStart: onStart && function () {\n return onStart(item, slot);\n },\n onFrame: onFrame && function (values) {\n return onFrame(item, slot, values);\n },\n delay: trail,\n reset: reset && slot === ENTER // Update controller\n\n });\n\n ctrl.update(newProps);\n if (!state.current.paused) ctrl.start();\n });\n }\n\n useEffect(function () {\n state.current.mounted = mounted.current = true;\n return function () {\n state.current.mounted = mounted.current = false;\n Array.from(state.current.instances).map(function (_ref5) {\n var c = _ref5[1];\n return c.destroy();\n });\n state.current.instances.clear();\n };\n }, []);\n return state.current.transitions.map(function (_ref6) {\n var item = _ref6.item,\n slot = _ref6.slot,\n key = _ref6.key;\n return {\n item: item,\n key: key,\n state: slot,\n props: state.current.instances.get(key).getValues()\n };\n });\n}\n\nfunction cleanUp(state, filterKey) {\n var deleted = state.current.deleted;\n\n var _loop2 = function _loop2() {\n var _ref7 = _step2.value;\n var key = _ref7.key;\n\n var filter = function filter(t) {\n return t.key !== key;\n };\n\n if (is.und(filterKey) || filterKey === key) {\n state.current.instances.delete(key);\n state.current.transitions = state.current.transitions.filter(filter);\n state.current.deleted = state.current.deleted.filter(filter);\n }\n };\n\n for (var _iterator2 = _createForOfIteratorHelperLoose(deleted), _step2; !(_step2 = _iterator2()).done;) {\n _loop2();\n }\n\n state.current.forceUpdate();\n}\n\nfunction diffItems(_ref8, props) {\n var first = _ref8.first,\n prevProps = _ref8.prevProps,\n state = _objectWithoutPropertiesLoose(_ref8, [\"first\", \"prevProps\"]);\n\n var _get2 = get(props),\n items = _get2.items,\n keys = _get2.keys,\n initial = _get2.initial,\n from = _get2.from,\n enter = _get2.enter,\n leave = _get2.leave,\n update = _get2.update,\n _get2$trail = _get2.trail,\n trail = _get2$trail === void 0 ? 0 : _get2$trail,\n unique = _get2.unique,\n config = _get2.config,\n _get2$order = _get2.order,\n order = _get2$order === void 0 ? [ENTER, LEAVE, UPDATE] : _get2$order;\n\n var _get3 = get(prevProps),\n _keys = _get3.keys,\n _items = _get3.items;\n\n var current = _extends({}, state.current);\n\n var deleted = _toConsumableArray(state.deleted); // Compare next keys with current keys\n\n\n var currentKeys = Object.keys(current);\n var currentSet = new Set(currentKeys);\n var nextSet = new Set(keys);\n var added = keys.filter(function (item) {\n return !currentSet.has(item);\n });\n var removed = state.transitions.filter(function (item) {\n return !item.destroyed && !nextSet.has(item.originalKey);\n }).map(function (i) {\n return i.originalKey;\n });\n var updated = keys.filter(function (item) {\n return currentSet.has(item);\n });\n var delay = -trail;\n\n while (order.length) {\n var changeType = order.shift();\n\n switch (changeType) {\n case ENTER:\n {\n added.forEach(function (key, index) {\n // In unique mode, remove fading out transitions if their key comes in again\n if (unique && deleted.find(function (d) {\n return d.originalKey === key;\n })) deleted = deleted.filter(function (t) {\n return t.originalKey !== key;\n });\n var keyIndex = keys.indexOf(key);\n var item = items[keyIndex];\n var slot = first && initial !== void 0 ? 'initial' : ENTER;\n current[key] = {\n slot: slot,\n originalKey: key,\n key: unique ? String(key) : guid++,\n item: item,\n trail: delay = delay + trail,\n config: callProp(config, item, slot),\n from: callProp(first ? initial !== void 0 ? initial || {} : from : from, item),\n to: callProp(enter, item)\n };\n });\n break;\n }\n\n case LEAVE:\n {\n removed.forEach(function (key) {\n var keyIndex = _keys.indexOf(key);\n\n var item = _items[keyIndex];\n var slot = LEAVE;\n deleted.unshift(_extends({}, current[key], {\n slot: slot,\n destroyed: true,\n left: _keys[Math.max(0, keyIndex - 1)],\n right: _keys[Math.min(_keys.length, keyIndex + 1)],\n trail: delay = delay + trail,\n config: callProp(config, item, slot),\n to: callProp(leave, item)\n }));\n delete current[key];\n });\n break;\n }\n\n case UPDATE:\n {\n updated.forEach(function (key) {\n var keyIndex = keys.indexOf(key);\n var item = items[keyIndex];\n var slot = UPDATE;\n current[key] = _extends({}, current[key], {\n item: item,\n slot: slot,\n trail: delay = delay + trail,\n config: callProp(config, item, slot),\n to: callProp(update, item)\n });\n });\n break;\n }\n }\n }\n\n var out = keys.map(function (key) {\n return current[key];\n }); // This tries to restore order for deleted items by finding their last known siblings\n // only using the left sibling to keep order placement consistent for all deleted items\n\n deleted.forEach(function (_ref9) {\n var left = _ref9.left,\n right = _ref9.right,\n item = _objectWithoutPropertiesLoose(_ref9, [\"left\", \"right\"]);\n\n var pos; // Was it the element on the left, if yes, move there ...\n\n if ((pos = out.findIndex(function (t) {\n return t.originalKey === left;\n })) !== -1) pos += 1; // And if nothing else helps, move it to the start ¯\\_(ツ)_/¯\n\n pos = Math.max(0, pos);\n out = [].concat(_toConsumableArray(out.slice(0, pos)), [item], _toConsumableArray(out.slice(pos)));\n });\n return _extends({}, state, {\n changed: added.length || removed.length || updated.length,\n first: first && added.length === 0,\n transitions: out,\n current: current,\n deleted: deleted,\n prevProps: props\n });\n}\n\nvar AnimatedStyle = /*#__PURE__*/function (_AnimatedObject2) {\n _inheritsLoose(AnimatedStyle, _AnimatedObject2);\n\n function AnimatedStyle(style) {\n var _this13;\n\n if (style === void 0) {\n style = {};\n }\n\n _this13 = _AnimatedObject2.call(this) || this;\n\n if (style.transform && !(style.transform instanceof Animated)) {\n style = applyAnimatedValues.transform(style);\n }\n\n _this13.payload = style;\n return _this13;\n }\n\n return AnimatedStyle;\n}(AnimatedObject); // http://www.w3.org/TR/css3-color/#svg-color\n\n\nvar colors = {\n transparent: 0x00000000,\n aliceblue: 0xf0f8ffff,\n antiquewhite: 0xfaebd7ff,\n aqua: 0x00ffffff,\n aquamarine: 0x7fffd4ff,\n azure: 0xf0ffffff,\n beige: 0xf5f5dcff,\n bisque: 0xffe4c4ff,\n black: 0x000000ff,\n blanchedalmond: 0xffebcdff,\n blue: 0x0000ffff,\n blueviolet: 0x8a2be2ff,\n brown: 0xa52a2aff,\n burlywood: 0xdeb887ff,\n burntsienna: 0xea7e5dff,\n cadetblue: 0x5f9ea0ff,\n chartreuse: 0x7fff00ff,\n chocolate: 0xd2691eff,\n coral: 0xff7f50ff,\n cornflowerblue: 0x6495edff,\n cornsilk: 0xfff8dcff,\n crimson: 0xdc143cff,\n cyan: 0x00ffffff,\n darkblue: 0x00008bff,\n darkcyan: 0x008b8bff,\n darkgoldenrod: 0xb8860bff,\n darkgray: 0xa9a9a9ff,\n darkgreen: 0x006400ff,\n darkgrey: 0xa9a9a9ff,\n darkkhaki: 0xbdb76bff,\n darkmagenta: 0x8b008bff,\n darkolivegreen: 0x556b2fff,\n darkorange: 0xff8c00ff,\n darkorchid: 0x9932ccff,\n darkred: 0x8b0000ff,\n darksalmon: 0xe9967aff,\n darkseagreen: 0x8fbc8fff,\n darkslateblue: 0x483d8bff,\n darkslategray: 0x2f4f4fff,\n darkslategrey: 0x2f4f4fff,\n darkturquoise: 0x00ced1ff,\n darkviolet: 0x9400d3ff,\n deeppink: 0xff1493ff,\n deepskyblue: 0x00bfffff,\n dimgray: 0x696969ff,\n dimgrey: 0x696969ff,\n dodgerblue: 0x1e90ffff,\n firebrick: 0xb22222ff,\n floralwhite: 0xfffaf0ff,\n forestgreen: 0x228b22ff,\n fuchsia: 0xff00ffff,\n gainsboro: 0xdcdcdcff,\n ghostwhite: 0xf8f8ffff,\n gold: 0xffd700ff,\n goldenrod: 0xdaa520ff,\n gray: 0x808080ff,\n green: 0x008000ff,\n greenyellow: 0xadff2fff,\n grey: 0x808080ff,\n honeydew: 0xf0fff0ff,\n hotpink: 0xff69b4ff,\n indianred: 0xcd5c5cff,\n indigo: 0x4b0082ff,\n ivory: 0xfffff0ff,\n khaki: 0xf0e68cff,\n lavender: 0xe6e6faff,\n lavenderblush: 0xfff0f5ff,\n lawngreen: 0x7cfc00ff,\n lemonchiffon: 0xfffacdff,\n lightblue: 0xadd8e6ff,\n lightcoral: 0xf08080ff,\n lightcyan: 0xe0ffffff,\n lightgoldenrodyellow: 0xfafad2ff,\n lightgray: 0xd3d3d3ff,\n lightgreen: 0x90ee90ff,\n lightgrey: 0xd3d3d3ff,\n lightpink: 0xffb6c1ff,\n lightsalmon: 0xffa07aff,\n lightseagreen: 0x20b2aaff,\n lightskyblue: 0x87cefaff,\n lightslategray: 0x778899ff,\n lightslategrey: 0x778899ff,\n lightsteelblue: 0xb0c4deff,\n lightyellow: 0xffffe0ff,\n lime: 0x00ff00ff,\n limegreen: 0x32cd32ff,\n linen: 0xfaf0e6ff,\n magenta: 0xff00ffff,\n maroon: 0x800000ff,\n mediumaquamarine: 0x66cdaaff,\n mediumblue: 0x0000cdff,\n mediumorchid: 0xba55d3ff,\n mediumpurple: 0x9370dbff,\n mediumseagreen: 0x3cb371ff,\n mediumslateblue: 0x7b68eeff,\n mediumspringgreen: 0x00fa9aff,\n mediumturquoise: 0x48d1ccff,\n mediumvioletred: 0xc71585ff,\n midnightblue: 0x191970ff,\n mintcream: 0xf5fffaff,\n mistyrose: 0xffe4e1ff,\n moccasin: 0xffe4b5ff,\n navajowhite: 0xffdeadff,\n navy: 0x000080ff,\n oldlace: 0xfdf5e6ff,\n olive: 0x808000ff,\n olivedrab: 0x6b8e23ff,\n orange: 0xffa500ff,\n orangered: 0xff4500ff,\n orchid: 0xda70d6ff,\n palegoldenrod: 0xeee8aaff,\n palegreen: 0x98fb98ff,\n paleturquoise: 0xafeeeeff,\n palevioletred: 0xdb7093ff,\n papayawhip: 0xffefd5ff,\n peachpuff: 0xffdab9ff,\n peru: 0xcd853fff,\n pink: 0xffc0cbff,\n plum: 0xdda0ddff,\n powderblue: 0xb0e0e6ff,\n purple: 0x800080ff,\n rebeccapurple: 0x663399ff,\n red: 0xff0000ff,\n rosybrown: 0xbc8f8fff,\n royalblue: 0x4169e1ff,\n saddlebrown: 0x8b4513ff,\n salmon: 0xfa8072ff,\n sandybrown: 0xf4a460ff,\n seagreen: 0x2e8b57ff,\n seashell: 0xfff5eeff,\n sienna: 0xa0522dff,\n silver: 0xc0c0c0ff,\n skyblue: 0x87ceebff,\n slateblue: 0x6a5acdff,\n slategray: 0x708090ff,\n slategrey: 0x708090ff,\n snow: 0xfffafaff,\n springgreen: 0x00ff7fff,\n steelblue: 0x4682b4ff,\n tan: 0xd2b48cff,\n teal: 0x008080ff,\n thistle: 0xd8bfd8ff,\n tomato: 0xff6347ff,\n turquoise: 0x40e0d0ff,\n violet: 0xee82eeff,\n wheat: 0xf5deb3ff,\n white: 0xffffffff,\n whitesmoke: 0xf5f5f5ff,\n yellow: 0xffff00ff,\n yellowgreen: 0x9acd32ff\n}; // const INTEGER = '[-+]?\\\\d+';\n\nvar NUMBER = '[-+]?\\\\d*\\\\.?\\\\d+';\nvar PERCENTAGE = NUMBER + '%';\n\nfunction call() {\n for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {\n parts[_key] = arguments[_key];\n }\n\n return '\\\\(\\\\s*(' + parts.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nvar rgb = new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER));\nvar rgba = new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER));\nvar hsl = new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE));\nvar hsla = new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER));\nvar hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex6 = /^#([0-9a-fA-F]{6})$/;\nvar hex8 = /^#([0-9a-fA-F]{8})$/;\n/*\nhttps://github.com/react-community/normalize-css-color\n\nBSD 3-Clause License\n\nCopyright (c) 2016, React Community\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n contributors may be used to endorse or promote products derived from\n this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\nfunction normalizeColor(color) {\n var match;\n\n if (typeof color === 'number') {\n return color >>> 0 === color && color >= 0 && color <= 0xffffffff ? color : null;\n } // Ordered based on occurrences on Facebook codebase\n\n\n if (match = hex6.exec(color)) return parseInt(match[1] + 'ff', 16) >>> 0;\n if (colors.hasOwnProperty(color)) return colors[color];\n\n if (match = rgb.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n 0x000000ff) >>> // a\n 0;\n }\n\n if (match = rgba.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n parse1(match[4])) >>> // a\n 0;\n }\n\n if (match = hex3.exec(color)) {\n return parseInt(match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n 'ff', // a\n 16) >>> 0;\n } // https://drafts.csswg.org/css-color-4/#hex-notation\n\n\n if (match = hex8.exec(color)) return parseInt(match[1], 16) >>> 0;\n\n if (match = hex4.exec(color)) {\n return parseInt(match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n match[4] + match[4], // a\n 16) >>> 0;\n }\n\n if (match = hsl.exec(color)) {\n return (hslToRgb(parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) | 0x000000ff) >>> // a\n 0;\n }\n\n if (match = hsla.exec(color)) {\n return (hslToRgb(parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) | parse1(match[4])) >>> // a\n 0;\n }\n\n return null;\n}\n\nfunction hue2rgb(p, q, t) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\n\nfunction hslToRgb(h, s, l) {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n var r = hue2rgb(p, q, h + 1 / 3);\n var g = hue2rgb(p, q, h);\n var b = hue2rgb(p, q, h - 1 / 3);\n return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;\n}\n\nfunction parse255(str) {\n var int = parseInt(str, 10);\n if (int < 0) return 0;\n if (int > 255) return 255;\n return int;\n}\n\nfunction parse360(str) {\n var int = parseFloat(str);\n return (int % 360 + 360) % 360 / 360;\n}\n\nfunction parse1(str) {\n var num = parseFloat(str);\n if (num < 0) return 0;\n if (num > 1) return 255;\n return Math.round(num * 255);\n}\n\nfunction parsePercentage(str) {\n // parseFloat conveniently ignores the final %\n var int = parseFloat(str);\n if (int < 0) return 0;\n if (int > 100) return 1;\n return int / 100;\n}\n\nfunction colorToRgba(input) {\n var int32Color = normalizeColor(input);\n if (int32Color === null) return input;\n int32Color = int32Color || 0;\n var r = (int32Color & 0xff000000) >>> 24;\n var g = (int32Color & 0x00ff0000) >>> 16;\n var b = (int32Color & 0x0000ff00) >>> 8;\n var a = (int32Color & 0x000000ff) / 255;\n return \"rgba(\" + r + \", \" + g + \", \" + b + \", \" + a + \")\";\n} // Problem: https://github.com/animatedjs/animated/pull/102\n// Solution: https://stackoverflow.com/questions/638565/parsing-scientific-notation-sensibly/658662\n\n\nvar stringShapeRegex = /[+\\-]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g; // Covers rgb, rgba, hsl, hsla\n// Taken from https://gist.github.com/olmokramer/82ccce673f86db7cda5e\n\nvar colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d\\.]+%?\\))/gi; // Covers color names (transparent, blue, etc.)\n\nvar colorNamesRegex = new RegExp(\"(\" + Object.keys(colors).join('|') + \")\", 'g');\n/**\n * Supports string shapes by extracting numbers so new values can be computed,\n * and recombines those values into new strings of the same shape. Supports\n * things like:\n *\n * rgba(123, 42, 99, 0.36) // colors\n * -45deg // values with units\n * 0 2px 2px 0px rgba(0, 0, 0, 0.12) // box shadows\n */\n\nvar createStringInterpolator = function createStringInterpolator(config) {\n // Replace colors with rgba\n var outputRange = config.output.map(function (rangeValue) {\n return rangeValue.replace(colorRegex, colorToRgba);\n }).map(function (rangeValue) {\n return rangeValue.replace(colorNamesRegex, colorToRgba);\n });\n var outputRanges = outputRange[0].match(stringShapeRegex).map(function () {\n return [];\n });\n outputRange.forEach(function (value) {\n value.match(stringShapeRegex).forEach(function (number, i) {\n return outputRanges[i].push(+number);\n });\n });\n var interpolations = outputRange[0].match(stringShapeRegex).map(function (_value, i) {\n return createInterpolator(_extends({}, config, {\n output: outputRanges[i]\n }));\n });\n return function (input) {\n var i = 0;\n return outputRange[0] // 'rgba(0, 100, 200, 0)'\n // ->\n // 'rgba(${interpolations[0](input)}, ${interpolations[1](input)}, ...'\n .replace(stringShapeRegex, function () {\n return interpolations[i++](input);\n }) // rgba requires that the r,g,b are integers.... so we want to round them, but we *dont* want to\n // round the opacity (4th column).\n .replace(/rgba\\(([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+)\\)/gi, function (_, p1, p2, p3, p4) {\n return \"rgba(\" + Math.round(p1) + \", \" + Math.round(p2) + \", \" + Math.round(p3) + \", \" + p4 + \")\";\n });\n };\n};\n\nvar isUnitlessNumber = {\n animationIterationCount: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n // SVG-related properties\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\n\nvar prefixKey = function prefixKey(prefix, key) {\n return prefix + key.charAt(0).toUpperCase() + key.substring(1);\n};\n\nvar prefixes = ['Webkit', 'Ms', 'Moz', 'O'];\nisUnitlessNumber = Object.keys(isUnitlessNumber).reduce(function (acc, prop) {\n prefixes.forEach(function (prefix) {\n return acc[prefixKey(prefix, prop)] = acc[prop];\n });\n return acc;\n}, isUnitlessNumber);\n\nfunction dangerousStyleValue(name, value, isCustomProperty) {\n if (value == null || typeof value === 'boolean' || value === '') return '';\n if (!isCustomProperty && typeof value === 'number' && value !== 0 && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) return value + 'px'; // Presumes implicit 'px' suffix for unitless numbers\n\n return ('' + value).trim();\n}\n\nvar attributeCache = {};\ninjectCreateAnimatedStyle(function (style) {\n return new AnimatedStyle(style);\n});\ninjectDefaultElement('div');\ninjectStringInterpolator(createStringInterpolator);\ninjectColorNames(colors);\ninjectApplyAnimatedValues(function (instance, props) {\n if (instance.nodeType && instance.setAttribute !== undefined) {\n var style = props.style,\n children = props.children,\n scrollTop = props.scrollTop,\n scrollLeft = props.scrollLeft,\n attributes = _objectWithoutPropertiesLoose(props, [\"style\", \"children\", \"scrollTop\", \"scrollLeft\"]);\n\n var filter = instance.nodeName === 'filter' || instance.parentNode && instance.parentNode.nodeName === 'filter';\n if (scrollTop !== void 0) instance.scrollTop = scrollTop;\n if (scrollLeft !== void 0) instance.scrollLeft = scrollLeft; // Set textContent, if children is an animatable value\n\n if (children !== void 0) instance.textContent = children; // Set styles ...\n\n for (var styleName in style) {\n if (!style.hasOwnProperty(styleName)) continue;\n var isCustomProperty = styleName.indexOf('--') === 0;\n var styleValue = dangerousStyleValue(styleName, style[styleName], isCustomProperty);\n if (styleName === 'float') styleName = 'cssFloat';\n if (isCustomProperty) instance.style.setProperty(styleName, styleValue);else instance.style[styleName] = styleValue;\n } // Set attributes ...\n\n\n for (var name in attributes) {\n // Attributes are written in dash case\n var dashCase = filter ? name : attributeCache[name] || (attributeCache[name] = name.replace(/([A-Z])/g, function (n) {\n return '-' + n.toLowerCase();\n }));\n if (typeof instance.getAttribute(dashCase) !== 'undefined') instance.setAttribute(dashCase, attributes[name]);\n }\n\n return;\n } else return false;\n}, function (style) {\n return style;\n});\nvar domElements = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan']; // Extend animated with all the available THREE elements\n\nvar apply = merge(createAnimatedComponent, false);\nvar extendedAnimated = apply(domElements);\nexport { apply, config, update, extendedAnimated as animated, extendedAnimated as a, interpolate$1 as interpolate, Globals, useSpring, useTrail, useTransition, useChain, useSprings };"],"sourceRoot":""}