{"version":3,"file":"1528-7cdb700b6ef5e528a2d1.js","mappings":"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","sources":["webpack://eploy/./node_modules/lodash/noop.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/resize/handle-element.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/resize/handle-window.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/progress.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/info.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/velocity.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/noop.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/mix.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/offset.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/is-number.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/is-easing-list.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/wrap.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/clamp.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/offsets/presets.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/is-string.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/offsets/edge.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/offsets/offset.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/offsets/index.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/offsets/inset.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/interpolate.es.js","webpack://eploy/./node_modules/@motionone/utils/dist/easing.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/index.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/scroll/on-scroll-handler.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/gestures/resize/index.es.js","webpack://eploy/./node_modules/@motionone/dom/dist/utils/resolve-elements.es.js","webpack://eploy/./node_modules/framer-motion/dist/es/value/use-scroll.mjs","webpack://eploy/./node_modules/framer-motion/dist/es/utils/transform.mjs","webpack://eploy/./node_modules/framer-motion/dist/es/value/use-transform.mjs","webpack://eploy/./node_modules/framer-motion/dist/es/value/use-combine-values.mjs","webpack://eploy/./node_modules/framer-motion/dist/es/value/use-motion-value.mjs","webpack://eploy/./node_modules/framer-motion/dist/es/value/use-on-change.mjs"],"sourcesContent":["/**\n * This method returns `undefined`.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Util\n * @example\n *\n * _.times(2, _.noop);\n * // => [undefined, undefined]\n */\nfunction noop() {\n // No operation performed.\n}\n\nmodule.exports = noop;\n","import { resolveElements } from '../../utils/resolve-elements.es.js';\n\nconst resizeHandlers = new WeakMap();\nlet observer;\nfunction getElementSize(target, borderBoxSize) {\n if (borderBoxSize) {\n const { inlineSize, blockSize } = borderBoxSize[0];\n return { width: inlineSize, height: blockSize };\n }\n else if (target instanceof SVGElement && \"getBBox\" in target) {\n return target.getBBox();\n }\n else {\n return {\n width: target.offsetWidth,\n height: target.offsetHeight,\n };\n }\n}\nfunction notifyTarget({ target, contentRect, borderBoxSize, }) {\n var _a;\n (_a = resizeHandlers.get(target)) === null || _a === void 0 ? void 0 : _a.forEach((handler) => {\n handler({\n target,\n contentSize: contentRect,\n get size() {\n return getElementSize(target, borderBoxSize);\n },\n });\n });\n}\nfunction notifyAll(entries) {\n entries.forEach(notifyTarget);\n}\nfunction createResizeObserver() {\n if (typeof ResizeObserver === \"undefined\")\n return;\n observer = new ResizeObserver(notifyAll);\n}\nfunction resizeElement(target, handler) {\n if (!observer)\n createResizeObserver();\n const elements = resolveElements(target);\n elements.forEach((element) => {\n let elementHandlers = resizeHandlers.get(element);\n if (!elementHandlers) {\n elementHandlers = new Set();\n resizeHandlers.set(element, elementHandlers);\n }\n elementHandlers.add(handler);\n observer === null || observer === void 0 ? void 0 : observer.observe(element);\n });\n return () => {\n elements.forEach((element) => {\n const elementHandlers = resizeHandlers.get(element);\n elementHandlers === null || elementHandlers === void 0 ? void 0 : elementHandlers.delete(handler);\n if (!(elementHandlers === null || elementHandlers === void 0 ? void 0 : elementHandlers.size)) {\n observer === null || observer === void 0 ? void 0 : observer.unobserve(element);\n }\n });\n };\n}\n\nexport { resizeElement };\n","const windowCallbacks = new Set();\nlet windowResizeHandler;\nfunction createWindowResizeHandler() {\n windowResizeHandler = () => {\n const size = {\n width: window.innerWidth,\n height: window.innerHeight,\n };\n const info = {\n target: window,\n size,\n contentSize: size,\n };\n windowCallbacks.forEach((callback) => callback(info));\n };\n window.addEventListener(\"resize\", windowResizeHandler);\n}\nfunction resizeWindow(callback) {\n windowCallbacks.add(callback);\n if (!windowResizeHandler)\n createWindowResizeHandler();\n return () => {\n windowCallbacks.delete(callback);\n if (!windowCallbacks.size && windowResizeHandler) {\n windowResizeHandler = undefined;\n }\n };\n}\n\nexport { resizeWindow };\n","const progress = (min, max, value) => max - min === 0 ? 1 : (value - min) / (max - min);\n\nexport { progress };\n","import { progress, velocityPerSecond } from '@motionone/utils';\n\n/**\n * A time in milliseconds, beyond which we consider the scroll velocity to be 0.\n */\nconst maxElapsed = 50;\nconst createAxisInfo = () => ({\n current: 0,\n offset: [],\n progress: 0,\n scrollLength: 0,\n targetOffset: 0,\n targetLength: 0,\n containerLength: 0,\n velocity: 0,\n});\nconst createScrollInfo = () => ({\n time: 0,\n x: createAxisInfo(),\n y: createAxisInfo(),\n});\nconst keys = {\n x: {\n length: \"Width\",\n position: \"Left\",\n },\n y: {\n length: \"Height\",\n position: \"Top\",\n },\n};\nfunction updateAxisInfo(element, axisName, info, time) {\n const axis = info[axisName];\n const { length, position } = keys[axisName];\n const prev = axis.current;\n const prevTime = info.time;\n axis.current = element[\"scroll\" + position];\n axis.scrollLength = element[\"scroll\" + length] - element[\"client\" + length];\n axis.offset.length = 0;\n axis.offset[0] = 0;\n axis.offset[1] = axis.scrollLength;\n axis.progress = progress(0, axis.scrollLength, axis.current);\n const elapsed = time - prevTime;\n axis.velocity =\n elapsed > maxElapsed ? 0 : velocityPerSecond(axis.current - prev, elapsed);\n}\nfunction updateScrollInfo(element, info, time) {\n updateAxisInfo(element, \"x\", info, time);\n updateAxisInfo(element, \"y\", info, time);\n info.time = time;\n}\n\nexport { createScrollInfo, updateScrollInfo };\n","/*\n Convert velocity into velocity per second\n\n @param [number]: Unit per frame\n @param [number]: Frame duration in ms\n*/\nfunction velocityPerSecond(velocity, frameDuration) {\n return frameDuration ? velocity * (1000 / frameDuration) : 0;\n}\n\nexport { velocityPerSecond };\n","const noop = () => { };\nconst noopReturn = (v) => v;\n\nexport { noop, noopReturn };\n","const mix = (min, max, progress) => -progress * min + progress * max + min;\n\nexport { mix };\n","import { mix } from './mix.es.js';\nimport { progress } from './progress.es.js';\n\nfunction fillOffset(offset, remaining) {\n const min = offset[offset.length - 1];\n for (let i = 1; i <= remaining; i++) {\n const offsetProgress = progress(0, remaining, i);\n offset.push(mix(min, 1, offsetProgress));\n }\n}\nfunction defaultOffset(length) {\n const offset = [0];\n fillOffset(offset, length - 1);\n return offset;\n}\n\nexport { defaultOffset, fillOffset };\n","const isNumber = (value) => typeof value === \"number\";\n\nexport { isNumber };\n","import { isNumber } from './is-number.es.js';\n\nconst isEasingList = (easing) => Array.isArray(easing) && !isNumber(easing[0]);\n\nexport { isEasingList };\n","const wrap = (min, max, v) => {\n const rangeSize = max - min;\n return ((((v - min) % rangeSize) + rangeSize) % rangeSize) + min;\n};\n\nexport { wrap };\n","const clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\nexport { clamp };\n","const ScrollOffset = {\n Enter: [\n [0, 1],\n [1, 1],\n ],\n Exit: [\n [0, 0],\n [1, 0],\n ],\n Any: [\n [1, 0],\n [0, 1],\n ],\n All: [\n [0, 0],\n [1, 1],\n ],\n};\n\nexport { ScrollOffset };\n","const isString = (value) => typeof value === \"string\";\n\nexport { isString };\n","import { isString, isNumber } from '@motionone/utils';\n\nconst namedEdges = {\n start: 0,\n center: 0.5,\n end: 1,\n};\nfunction resolveEdge(edge, length, inset = 0) {\n let delta = 0;\n /**\n * If we have this edge defined as a preset, replace the definition\n * with the numerical value.\n */\n if (namedEdges[edge] !== undefined) {\n edge = namedEdges[edge];\n }\n /**\n * Handle unit values\n */\n if (isString(edge)) {\n const asNumber = parseFloat(edge);\n if (edge.endsWith(\"px\")) {\n delta = asNumber;\n }\n else if (edge.endsWith(\"%\")) {\n edge = asNumber / 100;\n }\n else if (edge.endsWith(\"vw\")) {\n delta = (asNumber / 100) * document.documentElement.clientWidth;\n }\n else if (edge.endsWith(\"vh\")) {\n delta = (asNumber / 100) * document.documentElement.clientHeight;\n }\n else {\n edge = asNumber;\n }\n }\n /**\n * If the edge is defined as a number, handle as a progress value.\n */\n if (isNumber(edge)) {\n delta = length * edge;\n }\n return inset + delta;\n}\n\nexport { namedEdges, resolveEdge };\n","import { isNumber, isString } from '@motionone/utils';\nimport { resolveEdge, namedEdges } from './edge.es.js';\n\nconst defaultOffset = [0, 0];\nfunction resolveOffset(offset, containerLength, targetLength, targetInset) {\n let offsetDefinition = Array.isArray(offset) ? offset : defaultOffset;\n let targetPoint = 0;\n let containerPoint = 0;\n if (isNumber(offset)) {\n /**\n * If we're provided offset: [0, 0.5, 1] then each number x should become\n * [x, x], so we default to the behaviour of mapping 0 => 0 of both target\n * and container etc.\n */\n offsetDefinition = [offset, offset];\n }\n else if (isString(offset)) {\n offset = offset.trim();\n if (offset.includes(\" \")) {\n offsetDefinition = offset.split(\" \");\n }\n else {\n /**\n * If we're provided a definition like \"100px\" then we want to apply\n * that only to the top of the target point, leaving the container at 0.\n * Whereas a named offset like \"end\" should be applied to both.\n */\n offsetDefinition = [offset, namedEdges[offset] ? offset : `0`];\n }\n }\n targetPoint = resolveEdge(offsetDefinition[0], targetLength, targetInset);\n containerPoint = resolveEdge(offsetDefinition[1], containerLength);\n return targetPoint - containerPoint;\n}\n\nexport { resolveOffset };\n","import { interpolate, defaultOffset } from '@motionone/utils';\nimport { calcInset } from './inset.es.js';\nimport { ScrollOffset } from './presets.es.js';\nimport { resolveOffset } from './offset.es.js';\n\nconst point = { x: 0, y: 0 };\nfunction resolveOffsets(container, info, options) {\n let { offset: offsetDefinition = ScrollOffset.All } = options;\n const { target = container, axis = \"y\" } = options;\n const lengthLabel = axis === \"y\" ? \"height\" : \"width\";\n const inset = target !== container ? calcInset(target, container) : point;\n /**\n * Measure the target and container. If they're the same thing then we\n * use the container's scrollWidth/Height as the target, from there\n * all other calculations can remain the same.\n */\n const targetSize = target === container\n ? { width: container.scrollWidth, height: container.scrollHeight }\n : { width: target.clientWidth, height: target.clientHeight };\n const containerSize = {\n width: container.clientWidth,\n height: container.clientHeight,\n };\n /**\n * Reset the length of the resolved offset array rather than creating a new one.\n * TODO: More reusable data structures for targetSize/containerSize would also be good.\n */\n info[axis].offset.length = 0;\n /**\n * Populate the offset array by resolving the user's offset definition into\n * a list of pixel scroll offets.\n */\n let hasChanged = !info[axis].interpolate;\n const numOffsets = offsetDefinition.length;\n for (let i = 0; i < numOffsets; i++) {\n const offset = resolveOffset(offsetDefinition[i], containerSize[lengthLabel], targetSize[lengthLabel], inset[axis]);\n if (!hasChanged && offset !== info[axis].interpolatorOffsets[i]) {\n hasChanged = true;\n }\n info[axis].offset[i] = offset;\n }\n /**\n * If the pixel scroll offsets have changed, create a new interpolator function\n * to map scroll value into a progress.\n */\n if (hasChanged) {\n info[axis].interpolate = interpolate(defaultOffset(numOffsets), info[axis].offset);\n info[axis].interpolatorOffsets = [...info[axis].offset];\n }\n info[axis].progress = info[axis].interpolate(info[axis].current);\n}\n\nexport { resolveOffsets };\n","function calcInset(element, container) {\n let inset = { x: 0, y: 0 };\n let current = element;\n while (current && current !== container) {\n if (current instanceof HTMLElement) {\n inset.x += current.offsetLeft;\n inset.y += current.offsetTop;\n current = current.offsetParent;\n }\n else if (current instanceof SVGGraphicsElement && \"getBBox\" in current) {\n const { top, left } = current.getBBox();\n inset.x += left;\n inset.y += top;\n /**\n * Assign the next parent element as the tag.\n */\n while (current && current.tagName !== \"svg\") {\n current = current.parentNode;\n }\n }\n }\n return inset;\n}\n\nexport { calcInset };\n","import { mix } from './mix.es.js';\nimport { noopReturn } from './noop.es.js';\nimport { fillOffset, defaultOffset } from './offset.es.js';\nimport { progress } from './progress.es.js';\nimport { getEasingForSegment } from './easing.es.js';\nimport { clamp } from './clamp.es.js';\n\nfunction interpolate(output, input = defaultOffset(output.length), easing = noopReturn) {\n const length = output.length;\n /**\n * If the input length is lower than the output we\n * fill the input to match. This currently assumes the input\n * is an animation progress value so is a good candidate for\n * moving outside the function.\n */\n const remainder = length - input.length;\n remainder > 0 && fillOffset(input, remainder);\n return (t) => {\n let i = 0;\n for (; i < length - 2; i++) {\n if (t < input[i + 1])\n break;\n }\n let progressInRange = clamp(0, 1, progress(input[i], input[i + 1], t));\n const segmentEasing = getEasingForSegment(easing, i);\n progressInRange = segmentEasing(progressInRange);\n return mix(output[i], output[i + 1], progressInRange);\n };\n}\n\nexport { interpolate };\n","import { isEasingList } from './is-easing-list.es.js';\nimport { wrap } from './wrap.es.js';\n\nfunction getEasingForSegment(easing, i) {\n return isEasingList(easing)\n ? easing[wrap(0, easing.length, i)]\n : easing;\n}\n\nexport { getEasingForSegment };\n","import { __rest } from 'tslib';\nimport { resize } from '../resize/index.es.js';\nimport { createScrollInfo } from './info.es.js';\nimport { createOnScrollHandler } from './on-scroll-handler.es.js';\n\nconst scrollListeners = new WeakMap();\nconst resizeListeners = new WeakMap();\nconst onScrollHandlers = new WeakMap();\nconst getEventTarget = (element) => element === document.documentElement ? window : element;\nfunction scroll(onScroll, _a = {}) {\n var { container = document.documentElement } = _a, options = __rest(_a, [\"container\"]);\n let containerHandlers = onScrollHandlers.get(container);\n /**\n * Get the onScroll handlers for this container.\n * If one isn't found, create a new one.\n */\n if (!containerHandlers) {\n containerHandlers = new Set();\n onScrollHandlers.set(container, containerHandlers);\n }\n /**\n * Create a new onScroll handler for the provided callback.\n */\n const info = createScrollInfo();\n const containerHandler = createOnScrollHandler(container, onScroll, info, options);\n containerHandlers.add(containerHandler);\n /**\n * Check if there's a scroll event listener for this container.\n * If not, create one.\n */\n if (!scrollListeners.has(container)) {\n const listener = () => {\n const time = performance.now();\n for (const handler of containerHandlers)\n handler.measure();\n for (const handler of containerHandlers)\n handler.update(time);\n for (const handler of containerHandlers)\n handler.notify();\n };\n scrollListeners.set(container, listener);\n const target = getEventTarget(container);\n window.addEventListener(\"resize\", listener, { passive: true });\n if (container !== document.documentElement) {\n resizeListeners.set(container, resize(container, listener));\n }\n target.addEventListener(\"scroll\", listener, { passive: true });\n }\n const listener = scrollListeners.get(container);\n const onLoadProcesss = requestAnimationFrame(listener);\n return () => {\n var _a;\n if (typeof onScroll !== \"function\")\n onScroll.stop();\n cancelAnimationFrame(onLoadProcesss);\n /**\n * Check if we even have any handlers for this container.\n */\n const containerHandlers = onScrollHandlers.get(container);\n if (!containerHandlers)\n return;\n containerHandlers.delete(containerHandler);\n if (containerHandlers.size)\n return;\n /**\n * If no more handlers, remove the scroll listener too.\n */\n const listener = scrollListeners.get(container);\n scrollListeners.delete(container);\n if (listener) {\n getEventTarget(container).removeEventListener(\"scroll\", listener);\n (_a = resizeListeners.get(container)) === null || _a === void 0 ? void 0 : _a();\n window.removeEventListener(\"resize\", listener);\n }\n };\n}\n\nexport { scroll };\n","import { noopReturn } from '@motionone/utils';\nimport { updateScrollInfo } from './info.es.js';\nimport { resolveOffsets } from './offsets/index.es.js';\n\nfunction measure(container, target = container, info) {\n /**\n * Find inset of target within scrollable container\n */\n info.x.targetOffset = 0;\n info.y.targetOffset = 0;\n if (target !== container) {\n let node = target;\n while (node && node != container) {\n info.x.targetOffset += node.offsetLeft;\n info.y.targetOffset += node.offsetTop;\n node = node.offsetParent;\n }\n }\n info.x.targetLength =\n target === container ? target.scrollWidth : target.clientWidth;\n info.y.targetLength =\n target === container ? target.scrollHeight : target.clientHeight;\n info.x.containerLength = container.clientWidth;\n info.y.containerLength = container.clientHeight;\n}\nfunction createOnScrollHandler(element, onScroll, info, options = {}) {\n const axis = options.axis || \"y\";\n return {\n measure: () => measure(element, options.target, info),\n update: (time) => {\n updateScrollInfo(element, info, time);\n if (options.offset || options.target) {\n resolveOffsets(element, info, options);\n }\n },\n notify: typeof onScroll === \"function\"\n ? () => onScroll(info)\n : scrubAnimation(onScroll, info[axis]),\n };\n}\nfunction scrubAnimation(controls, axisInfo) {\n controls.pause();\n controls.forEachNative((animation, { easing }) => {\n var _a, _b;\n if (animation.updateDuration) {\n if (!easing)\n animation.easing = noopReturn;\n animation.updateDuration(1);\n }\n else {\n const timingOptions = { duration: 1000 };\n if (!easing)\n timingOptions.easing = \"linear\";\n (_b = (_a = animation.effect) === null || _a === void 0 ? void 0 : _a.updateTiming) === null || _b === void 0 ? void 0 : _b.call(_a, timingOptions);\n }\n });\n return () => {\n controls.currentTime = axisInfo.progress;\n };\n}\n\nexport { createOnScrollHandler };\n","import { resizeElement } from './handle-element.es.js';\nimport { resizeWindow } from './handle-window.es.js';\n\nfunction resize(a, b) {\n return typeof a === \"function\" ? resizeWindow(a) : resizeElement(a, b);\n}\n\nexport { resize };\n","function resolveElements(elements, selectorCache) {\n var _a;\n if (typeof elements === \"string\") {\n if (selectorCache) {\n (_a = selectorCache[elements]) !== null && _a !== void 0 ? _a : (selectorCache[elements] = document.querySelectorAll(elements));\n elements = selectorCache[elements];\n }\n else {\n elements = document.querySelectorAll(elements);\n }\n }\n else if (elements instanceof Element) {\n elements = [elements];\n }\n /**\n * Return an empty array\n */\n return Array.from(elements || []);\n}\n\nexport { resolveElements };\n","import { __rest, __assign } from 'tslib';\nimport { scroll } from '@motionone/dom';\nimport { motionValue } from './index.mjs';\nimport { useConstant } from '../utils/use-constant.mjs';\nimport { useIsomorphicLayoutEffect } from '../utils/use-isomorphic-effect.mjs';\n\nvar createScrollMotionValues = function () { return ({\n scrollX: motionValue(0),\n scrollY: motionValue(0),\n scrollXProgress: motionValue(0),\n scrollYProgress: motionValue(0),\n}); };\nfunction useScroll(_a) {\n if (_a === void 0) { _a = {}; }\n var container = _a.container, target = _a.target, options = __rest(_a, [\"container\", \"target\"]);\n var values = useConstant(createScrollMotionValues);\n useIsomorphicLayoutEffect(function () {\n return scroll(function (_a) {\n var x = _a.x, y = _a.y;\n values.scrollX.set(x.current);\n values.scrollXProgress.set(x.progress);\n values.scrollY.set(y.current);\n values.scrollYProgress.set(y.progress);\n }, __assign(__assign({}, options), { container: (container === null || container === void 0 ? void 0 : container.current) || undefined, target: (target === null || target === void 0 ? void 0 : target.current) || undefined }));\n }, []);\n return values;\n}\n\nexport { useScroll };\n","import { __assign } from 'tslib';\nimport { interpolate } from 'popmotion';\n\nvar isCustomValueType = function (v) {\n return typeof v === \"object\" && v.mix;\n};\nvar getMixer = function (v) { return (isCustomValueType(v) ? v.mix : undefined); };\nfunction transform() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var useImmediate = !Array.isArray(args[0]);\n var argOffset = useImmediate ? 0 : -1;\n var inputValue = args[0 + argOffset];\n var inputRange = args[1 + argOffset];\n var outputRange = args[2 + argOffset];\n var options = args[3 + argOffset];\n var interpolator = interpolate(inputRange, outputRange, __assign({ mixer: getMixer(outputRange[0]) }, options));\n return useImmediate ? interpolator(inputValue) : interpolator;\n}\n\nexport { transform };\n","import { __read } from 'tslib';\nimport { transform } from '../utils/transform.mjs';\nimport { useCombineMotionValues } from './use-combine-values.mjs';\nimport { useConstant } from '../utils/use-constant.mjs';\n\nfunction useTransform(input, inputRangeOrTransformer, outputRange, options) {\n var transformer = typeof inputRangeOrTransformer === \"function\"\n ? inputRangeOrTransformer\n : transform(inputRangeOrTransformer, outputRange, options);\n return Array.isArray(input)\n ? useListTransform(input, transformer)\n : useListTransform([input], function (_a) {\n var _b = __read(_a, 1), latest = _b[0];\n return transformer(latest);\n });\n}\nfunction useListTransform(values, transformer) {\n var latest = useConstant(function () { return []; });\n return useCombineMotionValues(values, function () {\n latest.length = 0;\n var numValues = values.length;\n for (var i = 0; i < numValues; i++) {\n latest[i] = values[i].get();\n }\n return transformer(latest);\n });\n}\n\nexport { useTransform };\n","import { useMotionValue } from './use-motion-value.mjs';\nimport { useMultiOnChange } from './use-on-change.mjs';\nimport sync from 'framesync';\n\nfunction useCombineMotionValues(values, combineValues) {\n /**\n * Initialise the returned motion value. This remains the same between renders.\n */\n var value = useMotionValue(combineValues());\n /**\n * Create a function that will update the template motion value with the latest values.\n * This is pre-bound so whenever a motion value updates it can schedule its\n * execution in Framesync. If it's already been scheduled it won't be fired twice\n * in a single frame.\n */\n var updateValue = function () { return value.set(combineValues()); };\n /**\n * Synchronously update the motion value with the latest values during the render.\n * This ensures that within a React render, the styles applied to the DOM are up-to-date.\n */\n updateValue();\n /**\n * Subscribe to all motion values found within the template. Whenever any of them change,\n * schedule an update.\n */\n useMultiOnChange(values, function () { return sync.update(updateValue, false, true); });\n return value;\n}\n\nexport { useCombineMotionValues };\n","import { __read } from 'tslib';\nimport { useContext, useState, useEffect } from 'react';\nimport { motionValue } from './index.mjs';\nimport { MotionConfigContext } from '../context/MotionConfigContext.mjs';\nimport { useConstant } from '../utils/use-constant.mjs';\n\n/**\n * Creates a `MotionValue` to track the state and velocity of a value.\n *\n * Usually, these are created automatically. For advanced use-cases, like use with `useTransform`, you can create `MotionValue`s externally and pass them into the animated component via the `style` prop.\n *\n * ```jsx\n * export const MyComponent = () => {\n * const scale = useMotionValue(1)\n *\n * return \n * }\n * ```\n *\n * @param initial - The initial state.\n *\n * @public\n */\nfunction useMotionValue(initial) {\n var value = useConstant(function () { return motionValue(initial); });\n /**\n * If this motion value is being used in static mode, like on\n * the Framer canvas, force components to rerender when the motion\n * value is updated.\n */\n var isStatic = useContext(MotionConfigContext).isStatic;\n if (isStatic) {\n var _a = __read(useState(initial), 2), setLatest_1 = _a[1];\n useEffect(function () { return value.onChange(setLatest_1); }, []);\n }\n return value;\n}\n\nexport { useMotionValue };\n","import { isMotionValue } from './utils/is-motion-value.mjs';\nimport { useIsomorphicLayoutEffect } from '../utils/use-isomorphic-effect.mjs';\n\nfunction useOnChange(value, callback) {\n useIsomorphicLayoutEffect(function () {\n if (isMotionValue(value))\n return value.onChange(callback);\n }, [callback]);\n}\nfunction useMultiOnChange(values, handler) {\n useIsomorphicLayoutEffect(function () {\n var subscriptions = values.map(function (value) { return value.onChange(handler); });\n return function () { return subscriptions.forEach(function (unsubscribe) { return unsubscribe(); }); };\n });\n}\n\nexport { useMultiOnChange, useOnChange };\n"],"names":["module","exports","resizeHandlers","WeakMap","observer","notifyTarget","target","contentRect","borderBoxSize","_a","get","forEach","handler","contentSize","size","inlineSize","blockSize","width","height","SVGElement","getBBox","offsetWidth","offsetHeight","getElementSize","notifyAll","entries","windowCallbacks","Set","windowResizeHandler","progress","min","max","value","maxElapsed","createScrollInfo","time","x","current","offset","scrollLength","targetOffset","targetLength","containerLength","velocity","y","keys","length","position","updateAxisInfo","element","axisName","info","axis","prev","prevTime","elapsed","frameDuration","noopReturn","v","mix","fillOffset","remaining","i","offsetProgress","push","defaultOffset","isNumber","isEasingList","easing","Array","isArray","wrap","rangeSize","clamp","Math","ScrollOffset","Enter","Exit","Any","All","isString","namedEdges","start","center","end","resolveEdge","edge","inset","delta","undefined","asNumber","parseFloat","endsWith","document","documentElement","clientWidth","clientHeight","resolveOffset","targetInset","offsetDefinition","targetPoint","containerPoint","trim","includes","split","point","resolveOffsets","container","options","lengthLabel","HTMLElement","offsetLeft","offsetTop","offsetParent","SVGGraphicsElement","top","left","tagName","parentNode","calcInset","targetSize","scrollWidth","scrollHeight","containerSize","hasChanged","interpolate","numOffsets","interpolatorOffsets","output","input","remainder","t","progressInRange","segmentEasing","getEasingForSegment","scrollListeners","resizeListeners","onScrollHandlers","getEventTarget","window","onScroll","containerHandlers","set","containerHandler","measure","node","update","updateScrollInfo","notify","controls","axisInfo","pause","forEachNative","animation","_b","updateDuration","timingOptions","duration","effect","updateTiming","call","currentTime","createOnScrollHandler","add","has","listener","performance","now","addEventListener","passive","b","a","callback","innerWidth","innerHeight","delete","ResizeObserver","elements","selectorCache","querySelectorAll","Element","from","resolveElements","elementHandlers","observe","unobserve","resizeElement","onLoadProcesss","requestAnimationFrame","stop","cancelAnimationFrame","removeEventListener","createScrollMotionValues","scrollX","scrollY","scrollXProgress","scrollYProgress","useScroll","values","getMixer","isCustomValueType","useTransform","inputRangeOrTransformer","outputRange","transformer","args","_i","arguments","useImmediate","argOffset","inputValue","inputRange","interpolator","mixer","transform","useListTransform","latest","combineValues","initial","useContext","MotionConfigContext","isStatic","setLatest_1","useState","useEffect","onChange","useMotionValue","updateValue","subscriptions","map","unsubscribe","useMultiOnChange","useCombineMotionValues","numValues"],"sourceRoot":""}