{"version":3,"file":"static/chunks/8465-8492f6b6392dc1b6.js","mappings":"mIACA,IAAAA,EAAA,IAAAC,IAAA,CACA,KACA,OACA,QACA,QACA,OACA,WACA,UACA,QACA,SACA,OACA,SACA,gBACA,YACA,SACA,kBACA,oBACA,MACA,QACA,eACA,YACA,WACA,cACA,cACA,YACA,UACA,UACA,OACA,QACA,YACA,OACA,UACA,UACA,UACA,kBACA,cACA,WACA,SACA,cACA,OACA,WACA,UACA,QACA,MACA,WACA,WACA,YACA,WACA,UACA,eACA,MACA,OACA,aACA,cACA,aACA,iBACA,aACA,cACA,UACA,SACA,OACA,OACA,WACA,YACA,OACA,YACA,QACA,SACA,WACA,UACA,YACA,WACA,OACA,QACA,OACA,OACA,OACA,WACA,MACA,YACA,QACA,aACA,SACA,MACA,YACA,WACA,QACA,OACA,aACA,OACA,UACA,UACA,OACA,cACA,SACA,UACA,aACA,iBACA,WACA,MACA,WACA,OACA,UACA,UACA,QACA,SACA,YACA,WACA,WACA,QACA,OACA,QACA,OACA,WACA,OACA,aACA,MACA,SACA,SACA,QACA,OACA,SACA,YACA,gBACA,SACA,QACA,QACA,OACA,EACAC,EAAA,IAAAD,IAAA,CACA,SACA,QACA,UACA,SACA,UACA,UACA,WACA,mBACA,qBACA,sBACA,YACA,aACA,UACA,UACA,SACA,WACA,UACA,WACA,UACA,gBACA,gBACA,SACA,YACA,cACA,aACA,cACA,aACA,cACA,SACA,cACA,eACA,eACA,cACA,aACA,cACA,YACA,gBACA,iBACA,iBACA,cACA,WACA,gBACA,aACA,cACA,eACA,mBACA,iBACA,uBACA,kBACA,EC9KAE,EAAA,cACAC,EAAA,cACAC,EAAA,gBACA,SAAAC,EAAAC,CAAA,CAAAC,EAAA,EAAwC,EACxC,IACAC,UAAAA,EAAA,GACAC,QAAAA,EAAA,GACAC,UAAAA,CAAA,CACAC,cAAAA,CAAA,CACAC,eAAAA,CAAA,CACAC,cAAAA,CAAA,CACAC,eAAAA,CAAA,CACA,CAAIP,EACJQ,EAAA,GACA,IAAAN,EACA,OAA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","sources":["webpack://_N_E/./node_modules/@heroui/react-rsc-utils/dist/chunk-RFWDHYLZ.mjs","webpack://_N_E/./node_modules/@heroui/react-rsc-utils/dist/chunk-RJKRL3AU.mjs","webpack://_N_E/./node_modules/@react-aria/interactions/dist/useHover.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/utils.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/LazyMotion/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/LazyContext.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/frameloop/render-step.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/frameloop/batcher.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/frameloop/frame.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/frameloop/microtask.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/features/load-features.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/components/create-proxy.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/symbol.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/config-motion.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/use-props.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/use-props.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/use-render.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/components/create-factory.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/components/m/create.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/components/m/proxy.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/value-types/number-browser.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/value-types/transform.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/keys-transform.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/clamp.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/is-browser.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/use-constant.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs","webpack://_N_E/./node_modules/motion-utils/dist/es/noop.mjs"],"sourcesContent":["// src/dom-props.ts\nvar DOMPropNames = /* @__PURE__ */ new Set([\n \"id\",\n \"type\",\n \"style\",\n \"title\",\n \"role\",\n \"tabIndex\",\n \"htmlFor\",\n \"width\",\n \"height\",\n \"abbr\",\n \"accept\",\n \"acceptCharset\",\n \"accessKey\",\n \"action\",\n \"allowFullScreen\",\n \"allowTransparency\",\n \"alt\",\n \"async\",\n \"autoComplete\",\n \"autoFocus\",\n \"autoPlay\",\n \"cellPadding\",\n \"cellSpacing\",\n \"challenge\",\n \"charset\",\n \"checked\",\n \"cite\",\n \"class\",\n \"className\",\n \"cols\",\n \"colSpan\",\n \"command\",\n \"content\",\n \"contentEditable\",\n \"contextMenu\",\n \"controls\",\n \"coords\",\n \"crossOrigin\",\n \"data\",\n \"dateTime\",\n \"default\",\n \"defer\",\n \"dir\",\n \"disabled\",\n \"download\",\n \"draggable\",\n \"dropzone\",\n \"encType\",\n \"enterKeyHint\",\n \"for\",\n \"form\",\n \"formAction\",\n \"formEncType\",\n \"formMethod\",\n \"formNoValidate\",\n \"formTarget\",\n \"frameBorder\",\n \"headers\",\n \"hidden\",\n \"high\",\n \"href\",\n \"hrefLang\",\n \"httpEquiv\",\n \"icon\",\n \"inputMode\",\n \"isMap\",\n \"itemId\",\n \"itemProp\",\n \"itemRef\",\n \"itemScope\",\n \"itemType\",\n \"kind\",\n \"label\",\n \"lang\",\n \"list\",\n \"loop\",\n \"manifest\",\n \"max\",\n \"maxLength\",\n \"media\",\n \"mediaGroup\",\n \"method\",\n \"min\",\n \"minLength\",\n \"multiple\",\n \"muted\",\n \"name\",\n \"noValidate\",\n \"open\",\n \"optimum\",\n \"pattern\",\n \"ping\",\n \"placeholder\",\n \"poster\",\n \"preload\",\n \"radioGroup\",\n \"referrerPolicy\",\n \"readOnly\",\n \"rel\",\n \"required\",\n \"rows\",\n \"rowSpan\",\n \"sandbox\",\n \"scope\",\n \"scoped\",\n \"scrolling\",\n \"seamless\",\n \"selected\",\n \"shape\",\n \"size\",\n \"sizes\",\n \"slot\",\n \"sortable\",\n \"span\",\n \"spellCheck\",\n \"src\",\n \"srcDoc\",\n \"srcSet\",\n \"start\",\n \"step\",\n \"target\",\n \"translate\",\n \"typeMustMatch\",\n \"useMap\",\n \"value\",\n \"wmode\",\n \"wrap\"\n]);\nvar DOMEventNames = /* @__PURE__ */ new Set([\n \"onCopy\",\n \"onCut\",\n \"onPaste\",\n \"onLoad\",\n \"onError\",\n \"onWheel\",\n \"onScroll\",\n \"onCompositionEnd\",\n \"onCompositionStart\",\n \"onCompositionUpdate\",\n \"onKeyDown\",\n \"onKeyPress\",\n \"onKeyUp\",\n \"onFocus\",\n \"onBlur\",\n \"onChange\",\n \"onInput\",\n \"onSubmit\",\n \"onClick\",\n \"onContextMenu\",\n \"onDoubleClick\",\n \"onDrag\",\n \"onDragEnd\",\n \"onDragEnter\",\n \"onDragExit\",\n \"onDragLeave\",\n \"onDragOver\",\n \"onDragStart\",\n \"onDrop\",\n \"onMouseDown\",\n \"onMouseEnter\",\n \"onMouseLeave\",\n \"onMouseMove\",\n \"onMouseOut\",\n \"onMouseOver\",\n \"onMouseUp\",\n \"onPointerDown\",\n \"onPointerEnter\",\n \"onPointerLeave\",\n \"onPointerUp\",\n \"onSelect\",\n \"onTouchCancel\",\n \"onTouchEnd\",\n \"onTouchMove\",\n \"onTouchStart\",\n \"onAnimationStart\",\n \"onAnimationEnd\",\n \"onAnimationIteration\",\n \"onTransitionEnd\"\n]);\n\nexport {\n DOMPropNames,\n DOMEventNames\n};\n","import {\n DOMEventNames,\n DOMPropNames\n} from \"./chunk-RFWDHYLZ.mjs\";\n\n// src/filter-dom-props.ts\nvar propRe = /^(data-.*)$/;\nvar ariaRe = /^(aria-.*)$/;\nvar funcRe = /^(on[A-Z].*)$/;\nfunction filterDOMProps(props, opts = {}) {\n let {\n labelable = true,\n enabled = true,\n propNames,\n omitPropNames,\n omitEventNames,\n omitDataProps,\n omitEventProps\n } = opts;\n let filteredProps = {};\n if (!enabled) {\n return props;\n }\n for (const prop in props) {\n if (omitPropNames == null ? void 0 : omitPropNames.has(prop)) {\n continue;\n }\n if ((omitEventNames == null ? void 0 : omitEventNames.has(prop)) && funcRe.test(prop)) {\n continue;\n }\n if (funcRe.test(prop) && !DOMEventNames.has(prop)) {\n continue;\n }\n if (omitDataProps && propRe.test(prop)) {\n continue;\n }\n if (omitEventProps && funcRe.test(prop)) {\n continue;\n }\n if (Object.prototype.hasOwnProperty.call(props, prop) && (DOMPropNames.has(prop) || labelable && ariaRe.test(prop) || (propNames == null ? void 0 : propNames.has(prop)) || propRe.test(prop)) || funcRe.test(prop)) {\n filteredProps[prop] = props[prop];\n }\n }\n return filteredProps;\n}\n\nexport {\n filterDOMProps\n};\n","import {useState as $AWxnT$useState, useRef as $AWxnT$useRef, useEffect as $AWxnT$useEffect, useMemo as $AWxnT$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n// iOS fires onPointerEnter twice: once with pointerType=\"touch\" and again with pointerType=\"mouse\".\n// We want to ignore these emulated events so they do not trigger hover behavior.\n// See https://bugs.webkit.org/show_bug.cgi?id=214609.\nlet $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\nlet $6179b936705e76d3$var$hoverCount = 0;\nfunction $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;\n // Clear globalIgnoreEmulatedMouseEvents after a short timeout. iOS fires onPointerEnter\n // with pointerType=\"mouse\" immediately after onPointerUp and before onFocus. On other\n // devices that don't have this quirk, we don't want to ignore a mouse hover sometime in\n // the distant future because a user previously touched the element.\n setTimeout(()=>{\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\n }, 50);\n}\nfunction $6179b936705e76d3$var$handleGlobalPointerEvent(e) {\n if (e.pointerType === 'touch') $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();\n}\nfunction $6179b936705e76d3$var$setupGlobalTouchEvents() {\n if (typeof document === 'undefined') return;\n if (typeof PointerEvent !== 'undefined') document.addEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.addEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n $6179b936705e76d3$var$hoverCount++;\n return ()=>{\n $6179b936705e76d3$var$hoverCount--;\n if ($6179b936705e76d3$var$hoverCount > 0) return;\n if (typeof PointerEvent !== 'undefined') document.removeEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.removeEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n };\n}\nfunction $6179b936705e76d3$export$ae780daf29e6d456(props) {\n let { onHoverStart: onHoverStart, onHoverChange: onHoverChange, onHoverEnd: onHoverEnd, isDisabled: isDisabled } = props;\n let [isHovered, setHovered] = (0, $AWxnT$useState)(false);\n let state = (0, $AWxnT$useRef)({\n isHovered: false,\n ignoreEmulatedMouseEvents: false,\n pointerType: '',\n target: null\n }).current;\n (0, $AWxnT$useEffect)($6179b936705e76d3$var$setupGlobalTouchEvents, []);\n let { hoverProps: hoverProps, triggerHoverEnd: triggerHoverEnd } = (0, $AWxnT$useMemo)(()=>{\n let triggerHoverStart = (event, pointerType)=>{\n state.pointerType = pointerType;\n if (isDisabled || pointerType === 'touch' || state.isHovered || !event.currentTarget.contains(event.target)) return;\n state.isHovered = true;\n let target = event.currentTarget;\n state.target = target;\n if (onHoverStart) onHoverStart({\n type: 'hoverstart',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(true);\n setHovered(true);\n };\n let triggerHoverEnd = (event, pointerType)=>{\n state.pointerType = '';\n state.target = null;\n if (pointerType === 'touch' || !state.isHovered) return;\n state.isHovered = false;\n let target = event.currentTarget;\n if (onHoverEnd) onHoverEnd({\n type: 'hoverend',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(false);\n setHovered(false);\n };\n let hoverProps = {};\n if (typeof PointerEvent !== 'undefined') {\n hoverProps.onPointerEnter = (e)=>{\n if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === 'mouse') return;\n triggerHoverStart(e, e.pointerType);\n };\n hoverProps.onPointerLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, e.pointerType);\n };\n } else {\n hoverProps.onTouchStart = ()=>{\n state.ignoreEmulatedMouseEvents = true;\n };\n hoverProps.onMouseEnter = (e)=>{\n if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, 'mouse');\n state.ignoreEmulatedMouseEvents = false;\n };\n hoverProps.onMouseLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, 'mouse');\n };\n }\n return {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n };\n }, [\n onHoverStart,\n onHoverChange,\n onHoverEnd,\n isDisabled,\n state\n ]);\n (0, $AWxnT$useEffect)(()=>{\n // Call the triggerHoverEnd as soon as isDisabled changes to true\n // Safe to call triggerHoverEnd, it will early return if we aren't currently hovering\n if (isDisabled) triggerHoverEnd({\n currentTarget: state.target\n }, state.pointerType);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isDisabled\n ]);\n return {\n hoverProps: hoverProps,\n isHovered: isHovered\n };\n}\n\n\nexport {$6179b936705e76d3$export$ae780daf29e6d456 as useHover};\n//# sourceMappingURL=useHover.module.js.map\n","import { camelToDash } from '../../render/dom/utils/camel-to-dash.mjs';\n\nconst optimizedAppearDataId = \"framerAppearId\";\nconst optimizedAppearDataAttribute = \"data-\" + camelToDash(optimizedAppearDataId);\n\nexport { optimizedAppearDataAttribute, optimizedAppearDataId };\n","function isAnimationControls(v) {\n return (v !== null &&\n typeof v === \"object\" &&\n typeof v.start === \"function\");\n}\n\nexport { isAnimationControls };\n","const isKeyframesTarget = (v) => {\n return Array.isArray(v);\n};\n\nexport { isKeyframesTarget };\n","\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport * as React from 'react';\nimport { useId, useRef, useContext, useInsertionEffect } from 'react';\nimport { MotionConfigContext } from '../../context/MotionConfigContext.mjs';\n\n/**\n * Measurement functionality has to be within a separate component\n * to leverage snapshot lifecycle.\n */\nclass PopChildMeasure extends React.Component {\n getSnapshotBeforeUpdate(prevProps) {\n const element = this.props.childRef.current;\n if (element && prevProps.isPresent && !this.props.isPresent) {\n const size = this.props.sizeRef.current;\n size.height = element.offsetHeight || 0;\n size.width = element.offsetWidth || 0;\n size.top = element.offsetTop;\n size.left = element.offsetLeft;\n }\n return null;\n }\n /**\n * Required with getSnapshotBeforeUpdate to stop React complaining.\n */\n componentDidUpdate() { }\n render() {\n return this.props.children;\n }\n}\nfunction PopChild({ children, isPresent }) {\n const id = useId();\n const ref = useRef(null);\n const size = useRef({\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n });\n const { nonce } = useContext(MotionConfigContext);\n /**\n * We create and inject a style block so we can apply this explicit\n * sizing in a non-destructive manner by just deleting the style block.\n *\n * We can't apply size via render as the measurement happens\n * in getSnapshotBeforeUpdate (post-render), likewise if we apply the\n * styles directly on the DOM node, we might be overwriting\n * styles set via the style prop.\n */\n useInsertionEffect(() => {\n const { width, height, top, left } = size.current;\n if (isPresent || !ref.current || !width || !height)\n return;\n ref.current.dataset.motionPopId = id;\n const style = document.createElement(\"style\");\n if (nonce)\n style.nonce = nonce;\n document.head.appendChild(style);\n if (style.sheet) {\n style.sheet.insertRule(`\n [data-motion-pop-id=\"${id}\"] {\n position: absolute !important;\n width: ${width}px !important;\n height: ${height}px !important;\n top: ${top}px !important;\n left: ${left}px !important;\n }\n `);\n }\n return () => {\n document.head.removeChild(style);\n };\n }, [isPresent]);\n return (jsx(PopChildMeasure, { isPresent: isPresent, childRef: ref, sizeRef: size, children: React.cloneElement(children, { ref }) }));\n}\n\nexport { PopChild };\n","\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport * as React from 'react';\nimport { useId, useCallback, useMemo } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\nimport { PopChild } from './PopChild.mjs';\n\nconst PresenceChild = ({ children, initial, isPresent, onExitComplete, custom, presenceAffectsLayout, mode, }) => {\n const presenceChildren = useConstant(newChildrenMap);\n const id = useId();\n const memoizedOnExitComplete = useCallback((childId) => {\n presenceChildren.set(childId, true);\n for (const isComplete of presenceChildren.values()) {\n if (!isComplete)\n return; // can stop searching when any is incomplete\n }\n onExitComplete && onExitComplete();\n }, [presenceChildren, onExitComplete]);\n const context = useMemo(() => ({\n id,\n initial,\n isPresent,\n custom,\n onExitComplete: memoizedOnExitComplete,\n register: (childId) => {\n presenceChildren.set(childId, false);\n return () => presenceChildren.delete(childId);\n },\n }), \n /**\n * If the presence of a child affects the layout of the components around it,\n * we want to make a new context value to ensure they get re-rendered\n * so they can detect that layout change.\n */\n presenceAffectsLayout\n ? [Math.random(), memoizedOnExitComplete]\n : [isPresent, memoizedOnExitComplete]);\n useMemo(() => {\n presenceChildren.forEach((_, key) => presenceChildren.set(key, false));\n }, [isPresent]);\n /**\n * If there's no `motion` components to fire exit animations, we want to remove this\n * component immediately.\n */\n React.useEffect(() => {\n !isPresent &&\n !presenceChildren.size &&\n onExitComplete &&\n onExitComplete();\n }, [isPresent]);\n if (mode === \"popLayout\") {\n children = jsx(PopChild, { isPresent: isPresent, children: children });\n }\n return (jsx(PresenceContext.Provider, { value: context, children: children }));\n};\nfunction newChildrenMap() {\n return new Map();\n}\n\nexport { PresenceChild };\n","import { Children, isValidElement } from 'react';\n\nconst getChildKey = (child) => child.key || \"\";\nfunction onlyElements(children) {\n const filtered = [];\n // We use forEach here instead of map as map mutates the component key by preprending `.$`\n Children.forEach(children, (child) => {\n if (isValidElement(child))\n filtered.push(child);\n });\n return filtered;\n}\n\nexport { getChildKey, onlyElements };\n","\"use client\";\nimport { jsx, Fragment } from 'react/jsx-runtime';\nimport { useMemo, useRef, useState, useContext } from 'react';\nimport { LayoutGroupContext } from '../../context/LayoutGroupContext.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\nimport { PresenceChild } from './PresenceChild.mjs';\nimport { usePresence } from './use-presence.mjs';\nimport { onlyElements, getChildKey } from './utils.mjs';\nimport { useIsomorphicLayoutEffect } from '../../utils/use-isomorphic-effect.mjs';\n\n/**\n * `AnimatePresence` enables the animation of components that have been removed from the tree.\n *\n * When adding/removing more than a single child, every child **must** be given a unique `key` prop.\n *\n * Any `motion` components that have an `exit` property defined will animate out when removed from\n * the tree.\n *\n * ```jsx\n * import { motion, AnimatePresence } from 'framer-motion'\n *\n * export const Items = ({ items }) => (\n * \n * {items.map(item => (\n * \n * ))}\n * \n * )\n * ```\n *\n * You can sequence exit animations throughout a tree using variants.\n *\n * If a child contains multiple `motion` components with `exit` props, it will only unmount the child\n * once all `motion` components have finished animating out. Likewise, any components using\n * `usePresence` all need to call `safeToRemove`.\n *\n * @public\n */\nconst AnimatePresence = ({ children, custom, initial = true, onExitComplete, presenceAffectsLayout = true, mode = \"sync\", propagate = false, }) => {\n const [isParentPresent, safeToRemove] = usePresence(propagate);\n /**\n * Filter any children that aren't ReactElements. We can only track components\n * between renders with a props.key.\n */\n const presentChildren = useMemo(() => onlyElements(children), [children]);\n /**\n * Track the keys of the currently rendered children. This is used to\n * determine which children are exiting.\n */\n const presentKeys = propagate && !isParentPresent ? [] : presentChildren.map(getChildKey);\n /**\n * If `initial={false}` we only want to pass this to components in the first render.\n */\n const isInitialRender = useRef(true);\n /**\n * A ref containing the currently present children. When all exit animations\n * are complete, we use this to re-render the component with the latest children\n * *committed* rather than the latest children *rendered*.\n */\n const pendingPresentChildren = useRef(presentChildren);\n /**\n * Track which exiting children have finished animating out.\n */\n const exitComplete = useConstant(() => new Map());\n /**\n * Save children to render as React state. To ensure this component is concurrent-safe,\n * we check for exiting children via an effect.\n */\n const [diffedChildren, setDiffedChildren] = useState(presentChildren);\n const [renderedChildren, setRenderedChildren] = useState(presentChildren);\n useIsomorphicLayoutEffect(() => {\n isInitialRender.current = false;\n pendingPresentChildren.current = presentChildren;\n /**\n * Update complete status of exiting children.\n */\n for (let i = 0; i < renderedChildren.length; i++) {\n const key = getChildKey(renderedChildren[i]);\n if (!presentKeys.includes(key)) {\n if (exitComplete.get(key) !== true) {\n exitComplete.set(key, false);\n }\n }\n else {\n exitComplete.delete(key);\n }\n }\n }, [renderedChildren, presentKeys.length, presentKeys.join(\"-\")]);\n const exitingChildren = [];\n if (presentChildren !== diffedChildren) {\n let nextChildren = [...presentChildren];\n /**\n * Loop through all the currently rendered components and decide which\n * are exiting.\n */\n for (let i = 0; i < renderedChildren.length; i++) {\n const child = renderedChildren[i];\n const key = getChildKey(child);\n if (!presentKeys.includes(key)) {\n nextChildren.splice(i, 0, child);\n exitingChildren.push(child);\n }\n }\n /**\n * If we're in \"wait\" mode, and we have exiting children, we want to\n * only render these until they've all exited.\n */\n if (mode === \"wait\" && exitingChildren.length) {\n nextChildren = exitingChildren;\n }\n setRenderedChildren(onlyElements(nextChildren));\n setDiffedChildren(presentChildren);\n /**\n * Early return to ensure once we've set state with the latest diffed\n * children, we can immediately re-render.\n */\n return;\n }\n if (process.env.NODE_ENV !== \"production\" &&\n mode === \"wait\" &&\n renderedChildren.length > 1) {\n console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to \"wait\". This will lead to odd visual behaviour.`);\n }\n /**\n * If we've been provided a forceRender function by the LayoutGroupContext,\n * we can use it to force a re-render amongst all surrounding components once\n * all components have finished animating out.\n */\n const { forceRender } = useContext(LayoutGroupContext);\n return (jsx(Fragment, { children: renderedChildren.map((child) => {\n const key = getChildKey(child);\n const isPresent = propagate && !isParentPresent\n ? false\n : presentChildren === renderedChildren ||\n presentKeys.includes(key);\n const onExit = () => {\n if (exitComplete.has(key)) {\n exitComplete.set(key, true);\n }\n else {\n return;\n }\n let isEveryExitComplete = true;\n exitComplete.forEach((isExitComplete) => {\n if (!isExitComplete)\n isEveryExitComplete = false;\n });\n if (isEveryExitComplete) {\n forceRender === null || forceRender === void 0 ? void 0 : forceRender();\n setRenderedChildren(pendingPresentChildren.current);\n propagate && (safeToRemove === null || safeToRemove === void 0 ? void 0 : safeToRemove());\n onExitComplete && onExitComplete();\n }\n };\n return (jsx(PresenceChild, { isPresent: isPresent, initial: !isInitialRender.current || initial\n ? undefined\n : false, custom: isPresent ? undefined : custom, presenceAffectsLayout: presenceAffectsLayout, mode: mode, onExitComplete: isPresent ? undefined : onExit, children: child }, key));\n }) }));\n};\n\nexport { AnimatePresence };\n","import { useContext, useId, useEffect, useCallback } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\n\n/**\n * When a component is the child of `AnimatePresence`, it can use `usePresence`\n * to access information about whether it's still present in the React tree.\n *\n * ```jsx\n * import { usePresence } from \"framer-motion\"\n *\n * export const Component = () => {\n * const [isPresent, safeToRemove] = usePresence()\n *\n * useEffect(() => {\n * !isPresent && setTimeout(safeToRemove, 1000)\n * }, [isPresent])\n *\n * return
\n * }\n * ```\n *\n * If `isPresent` is `false`, it means that a component has been removed the tree, but\n * `AnimatePresence` won't really remove it until `safeToRemove` has been called.\n *\n * @public\n */\nfunction usePresence(subscribe = true) {\n const context = useContext(PresenceContext);\n if (context === null)\n return [true, null];\n const { isPresent, onExitComplete, register } = context;\n // It's safe to call the following hooks conditionally (after an early return) because the context will always\n // either be null or non-null for the lifespan of the component.\n const id = useId();\n useEffect(() => {\n if (subscribe)\n register(id);\n }, [subscribe]);\n const safeToRemove = useCallback(() => subscribe && onExitComplete && onExitComplete(id), [id, onExitComplete, subscribe]);\n return !isPresent && onExitComplete ? [false, safeToRemove] : [true];\n}\n/**\n * Similar to `usePresence`, except `useIsPresent` simply returns whether or not the component is present.\n * There is no `safeToRemove` function.\n *\n * ```jsx\n * import { useIsPresent } from \"framer-motion\"\n *\n * export const Component = () => {\n * const isPresent = useIsPresent()\n *\n * useEffect(() => {\n * !isPresent && console.log(\"I've been removed!\")\n * }, [isPresent])\n *\n * return
\n * }\n * ```\n *\n * @public\n */\nfunction useIsPresent() {\n return isPresent(useContext(PresenceContext));\n}\nfunction isPresent(context) {\n return context === null ? true : context.isPresent;\n}\n\nexport { isPresent, useIsPresent, usePresence };\n","\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { useState, useRef, useEffect } from 'react';\nimport { LazyContext } from '../../context/LazyContext.mjs';\nimport { loadFeatures } from '../../motion/features/load-features.mjs';\n\n/**\n * Used in conjunction with the `m` component to reduce bundle size.\n *\n * `m` is a version of the `motion` component that only loads functionality\n * critical for the initial render.\n *\n * `LazyMotion` can then be used to either synchronously or asynchronously\n * load animation and gesture support.\n *\n * ```jsx\n * // Synchronous loading\n * import { LazyMotion, m, domAnimation } from \"framer-motion\"\n *\n * function App() {\n * return (\n * \n * \n * \n * )\n * }\n *\n * // Asynchronous loading\n * import { LazyMotion, m } from \"framer-motion\"\n *\n * function App() {\n * return (\n * import('./path/to/domAnimation')}>\n * \n * \n * )\n * }\n * ```\n *\n * @public\n */\nfunction LazyMotion({ children, features, strict = false }) {\n const [, setIsLoaded] = useState(!isLazyBundle(features));\n const loadedRenderer = useRef(undefined);\n /**\n * If this is a synchronous load, load features immediately\n */\n if (!isLazyBundle(features)) {\n const { renderer, ...loadedFeatures } = features;\n loadedRenderer.current = renderer;\n loadFeatures(loadedFeatures);\n }\n useEffect(() => {\n if (isLazyBundle(features)) {\n features().then(({ renderer, ...loadedFeatures }) => {\n loadFeatures(loadedFeatures);\n loadedRenderer.current = renderer;\n setIsLoaded(true);\n });\n }\n }, []);\n return (jsx(LazyContext.Provider, { value: { renderer: loadedRenderer.current, strict }, children: children }));\n}\nfunction isLazyBundle(features) {\n return typeof features === \"function\";\n}\n\nexport { LazyMotion };\n","\"use client\";\nimport { createContext } from 'react';\n\nconst LayoutGroupContext = createContext({});\n\nexport { LayoutGroupContext };\n","\"use client\";\nimport { createContext } from 'react';\n\nconst LazyContext = createContext({ strict: false });\n\nexport { LazyContext };\n","\"use client\";\nimport { createContext } from 'react';\n\n/**\n * @public\n */\nconst MotionConfigContext = createContext({\n transformPagePoint: (p) => p,\n isStatic: false,\n reducedMotion: \"never\",\n});\n\nexport { MotionConfigContext };\n","\"use client\";\nimport { createContext } from 'react';\n\n/**\n * @public\n */\nconst PresenceContext = createContext(null);\n\nexport { PresenceContext };\n","\"use client\";\nimport { createContext } from 'react';\n\n/**\n * Internal, exported only for usage in Framer\n */\nconst SwitchLayoutGroupContext = createContext({});\n\nexport { SwitchLayoutGroupContext };\n","function createRenderStep(runNextFrame) {\n /**\n * We create and reuse two queues, one to queue jobs for the current frame\n * and one for the next. We reuse to avoid triggering GC after x frames.\n */\n let thisFrame = new Set();\n let nextFrame = new Set();\n /**\n * Track whether we're currently processing jobs in this step. This way\n * we can decide whether to schedule new jobs for this frame or next.\n */\n let isProcessing = false;\n let flushNextFrame = false;\n /**\n * A set of processes which were marked keepAlive when scheduled.\n */\n const toKeepAlive = new WeakSet();\n let latestFrameData = {\n delta: 0.0,\n timestamp: 0.0,\n isProcessing: false,\n };\n function triggerCallback(callback) {\n if (toKeepAlive.has(callback)) {\n step.schedule(callback);\n runNextFrame();\n }\n callback(latestFrameData);\n }\n const step = {\n /**\n * Schedule a process to run on the next frame.\n */\n schedule: (callback, keepAlive = false, immediate = false) => {\n const addToCurrentFrame = immediate && isProcessing;\n const queue = addToCurrentFrame ? thisFrame : nextFrame;\n if (keepAlive)\n toKeepAlive.add(callback);\n if (!queue.has(callback))\n queue.add(callback);\n return callback;\n },\n /**\n * Cancel the provided callback from running on the next frame.\n */\n cancel: (callback) => {\n nextFrame.delete(callback);\n toKeepAlive.delete(callback);\n },\n /**\n * Execute all schedule callbacks.\n */\n process: (frameData) => {\n latestFrameData = frameData;\n /**\n * If we're already processing we've probably been triggered by a flushSync\n * inside an existing process. Instead of executing, mark flushNextFrame\n * as true and ensure we flush the following frame at the end of this one.\n */\n if (isProcessing) {\n flushNextFrame = true;\n return;\n }\n isProcessing = true;\n [thisFrame, nextFrame] = [nextFrame, thisFrame];\n // Execute this frame\n thisFrame.forEach(triggerCallback);\n // Clear the frame so no callbacks remain. This is to avoid\n // memory leaks should this render step not run for a while.\n thisFrame.clear();\n isProcessing = false;\n if (flushNextFrame) {\n flushNextFrame = false;\n step.process(frameData);\n }\n },\n };\n return step;\n}\n\nexport { createRenderStep };\n","import { MotionGlobalConfig } from '../utils/GlobalConfig.mjs';\nimport { createRenderStep } from './render-step.mjs';\n\nconst stepsOrder = [\n \"read\", // Read\n \"resolveKeyframes\", // Write/Read/Write/Read\n \"update\", // Compute\n \"preRender\", // Compute\n \"render\", // Write\n \"postRender\", // Compute\n];\nconst maxElapsed = 40;\nfunction createRenderBatcher(scheduleNextBatch, allowKeepAlive) {\n let runNextFrame = false;\n let useDefaultElapsed = true;\n const state = {\n delta: 0.0,\n timestamp: 0.0,\n isProcessing: false,\n };\n const flagRunNextFrame = () => (runNextFrame = true);\n const steps = stepsOrder.reduce((acc, key) => {\n acc[key] = createRenderStep(flagRunNextFrame);\n return acc;\n }, {});\n const { read, resolveKeyframes, update, preRender, render, postRender } = steps;\n const processBatch = () => {\n const timestamp = MotionGlobalConfig.useManualTiming\n ? state.timestamp\n : performance.now();\n runNextFrame = false;\n state.delta = useDefaultElapsed\n ? 1000 / 60\n : Math.max(Math.min(timestamp - state.timestamp, maxElapsed), 1);\n state.timestamp = timestamp;\n state.isProcessing = true;\n // Unrolled render loop for better per-frame performance\n read.process(state);\n resolveKeyframes.process(state);\n update.process(state);\n preRender.process(state);\n render.process(state);\n postRender.process(state);\n state.isProcessing = false;\n if (runNextFrame && allowKeepAlive) {\n useDefaultElapsed = false;\n scheduleNextBatch(processBatch);\n }\n };\n const wake = () => {\n runNextFrame = true;\n useDefaultElapsed = true;\n if (!state.isProcessing) {\n scheduleNextBatch(processBatch);\n }\n };\n const schedule = stepsOrder.reduce((acc, key) => {\n const step = steps[key];\n acc[key] = (process, keepAlive = false, immediate = false) => {\n if (!runNextFrame)\n wake();\n return step.schedule(process, keepAlive, immediate);\n };\n return acc;\n }, {});\n const cancel = (process) => {\n for (let i = 0; i < stepsOrder.length; i++) {\n steps[stepsOrder[i]].cancel(process);\n }\n };\n return { schedule, cancel, state, steps };\n}\n\nexport { createRenderBatcher, stepsOrder };\n","import { noop } from 'motion-utils';\nimport { createRenderBatcher } from './batcher.mjs';\n\nconst { schedule: frame, cancel: cancelFrame, state: frameData, steps: frameSteps, } = createRenderBatcher(typeof requestAnimationFrame !== \"undefined\" ? requestAnimationFrame : noop, true);\n\nexport { cancelFrame, frame, frameData, frameSteps };\n","import { createRenderBatcher } from './batcher.mjs';\n\nconst { schedule: microtask, cancel: cancelMicrotask } = createRenderBatcher(queueMicrotask, false);\n\nexport { cancelMicrotask, microtask };\n","const featureProps = {\n animation: [\n \"animate\",\n \"variants\",\n \"whileHover\",\n \"whileTap\",\n \"exit\",\n \"whileInView\",\n \"whileFocus\",\n \"whileDrag\",\n ],\n exit: [\"exit\"],\n drag: [\"drag\", \"dragControls\"],\n focus: [\"whileFocus\"],\n hover: [\"whileHover\", \"onHoverStart\", \"onHoverEnd\"],\n tap: [\"whileTap\", \"onTap\", \"onTapStart\", \"onTapCancel\"],\n pan: [\"onPan\", \"onPanStart\", \"onPanSessionStart\", \"onPanEnd\"],\n inView: [\"whileInView\", \"onViewportEnter\", \"onViewportLeave\"],\n layout: [\"layout\", \"layoutId\"],\n};\nconst featureDefinitions = {};\nfor (const key in featureProps) {\n featureDefinitions[key] = {\n isEnabled: (props) => featureProps[key].some((name) => !!props[name]),\n };\n}\n\nexport { featureDefinitions };\n","import { featureDefinitions } from './definitions.mjs';\n\nfunction loadFeatures(features) {\n for (const key in features) {\n featureDefinitions[key] = {\n ...featureDefinitions[key],\n ...features[key],\n };\n }\n}\n\nexport { loadFeatures };\n","import { scaleCorrectors } from '../../projection/styles/scale-correction.mjs';\nimport { transformProps } from '../../render/html/utils/keys-transform.mjs';\n\nfunction isForcedMotionValue(key, { layout, layoutId }) {\n return (transformProps.has(key) ||\n key.startsWith(\"origin\") ||\n ((layout || layoutId !== undefined) &&\n (!!scaleCorrectors[key] || key === \"opacity\")));\n}\n\nexport { isForcedMotionValue };\n","const scaleCorrectors = {};\nfunction addScaleCorrector(correctors) {\n Object.assign(scaleCorrectors, correctors);\n}\n\nexport { addScaleCorrector, scaleCorrectors };\n","import { warnOnce } from '../../utils/warn-once.mjs';\n\nfunction createDOMMotionComponentProxy(componentFactory) {\n if (typeof Proxy === \"undefined\") {\n return componentFactory;\n }\n /**\n * A cache of generated `motion` components, e.g `motion.div`, `motion.input` etc.\n * Rather than generating them anew every render.\n */\n const componentCache = new Map();\n const deprecatedFactoryFunction = (...args) => {\n if (process.env.NODE_ENV !== \"production\") {\n warnOnce(false, \"motion() is deprecated. Use motion.create() instead.\");\n }\n return componentFactory(...args);\n };\n return new Proxy(deprecatedFactoryFunction, {\n /**\n * Called when `motion` is referenced with a prop: `motion.div`, `motion.input` etc.\n * The prop name is passed through as `key` and we can use that to generate a `motion`\n * DOM component with that name.\n */\n get: (_target, key) => {\n if (key === \"create\")\n return componentFactory;\n /**\n * If this element doesn't exist in the component cache, create it and cache.\n */\n if (!componentCache.has(key)) {\n componentCache.set(key, componentFactory(key));\n }\n return componentCache.get(key);\n },\n });\n}\n\nexport { createDOMMotionComponentProxy };\n","\"use client\";\nimport { createContext } from 'react';\n\nconst MotionContext = createContext({});\n\nexport { MotionContext };\n","import { isVariantLabel } from '../../render/utils/is-variant-label.mjs';\nimport { isControllingVariants } from '../../render/utils/is-controlling-variants.mjs';\n\nfunction getCurrentTreeVariants(props, context) {\n if (isControllingVariants(props)) {\n const { initial, animate } = props;\n return {\n initial: initial === false || isVariantLabel(initial)\n ? initial\n : undefined,\n animate: isVariantLabel(animate) ? animate : undefined,\n };\n }\n return props.inherit !== false ? context : {};\n}\n\nexport { getCurrentTreeVariants };\n","import { useContext, useMemo } from 'react';\nimport { MotionContext } from './index.mjs';\nimport { getCurrentTreeVariants } from './utils.mjs';\n\nfunction useCreateMotionContext(props) {\n const { initial, animate } = getCurrentTreeVariants(props, useContext(MotionContext));\n return useMemo(() => ({ initial, animate }), [variantLabelsAsDependency(initial), variantLabelsAsDependency(animate)]);\n}\nfunction variantLabelsAsDependency(prop) {\n return Array.isArray(prop) ? prop.join(\" \") : prop;\n}\n\nexport { useCreateMotionContext };\n","const motionComponentSymbol = Symbol.for(\"motionComponentSymbol\");\n\nexport { motionComponentSymbol };\n","import { useCallback } from 'react';\nimport { isRefObject } from '../../utils/is-ref-object.mjs';\n\n/**\n * Creates a ref function that, when called, hydrates the provided\n * external ref and VisualElement.\n */\nfunction useMotionRef(visualState, visualElement, externalRef) {\n return useCallback((instance) => {\n if (instance) {\n visualState.onMount && visualState.onMount(instance);\n }\n if (visualElement) {\n if (instance) {\n visualElement.mount(instance);\n }\n else {\n visualElement.unmount();\n }\n }\n if (externalRef) {\n if (typeof externalRef === \"function\") {\n externalRef(instance);\n }\n else if (isRefObject(externalRef)) {\n externalRef.current = instance;\n }\n }\n }, \n /**\n * Only pass a new ref callback to React if we've received a visual element\n * factory. Otherwise we'll be mounting/remounting every time externalRef\n * or other dependencies change.\n */\n [visualElement]);\n}\n\nexport { useMotionRef };\n","import { useContext, useRef, useInsertionEffect, useEffect } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { MotionContext } from '../../context/MotionContext/index.mjs';\nimport { useIsomorphicLayoutEffect } from '../../utils/use-isomorphic-effect.mjs';\nimport { LazyContext } from '../../context/LazyContext.mjs';\nimport { MotionConfigContext } from '../../context/MotionConfigContext.mjs';\nimport { optimizedAppearDataAttribute } from '../../animation/optimized-appear/data-id.mjs';\nimport { microtask } from '../../frameloop/microtask.mjs';\nimport { isRefObject } from '../../utils/is-ref-object.mjs';\nimport { SwitchLayoutGroupContext } from '../../context/SwitchLayoutGroupContext.mjs';\n\nfunction useVisualElement(Component, visualState, props, createVisualElement, ProjectionNodeConstructor) {\n var _a, _b;\n const { visualElement: parent } = useContext(MotionContext);\n const lazyContext = useContext(LazyContext);\n const presenceContext = useContext(PresenceContext);\n const reducedMotionConfig = useContext(MotionConfigContext).reducedMotion;\n const visualElementRef = useRef(null);\n /**\n * If we haven't preloaded a renderer, check to see if we have one lazy-loaded\n */\n createVisualElement = createVisualElement || lazyContext.renderer;\n if (!visualElementRef.current && createVisualElement) {\n visualElementRef.current = createVisualElement(Component, {\n visualState,\n parent,\n props,\n presenceContext,\n blockInitialAnimation: presenceContext\n ? presenceContext.initial === false\n : false,\n reducedMotionConfig,\n });\n }\n const visualElement = visualElementRef.current;\n /**\n * Load Motion gesture and animation features. These are rendered as renderless\n * components so each feature can optionally make use of React lifecycle methods.\n */\n const initialLayoutGroupConfig = useContext(SwitchLayoutGroupContext);\n if (visualElement &&\n !visualElement.projection &&\n ProjectionNodeConstructor &&\n (visualElement.type === \"html\" || visualElement.type === \"svg\")) {\n createProjectionNode(visualElementRef.current, props, ProjectionNodeConstructor, initialLayoutGroupConfig);\n }\n const isMounted = useRef(false);\n useInsertionEffect(() => {\n /**\n * Check the component has already mounted before calling\n * `update` unnecessarily. This ensures we skip the initial update.\n */\n if (visualElement && isMounted.current) {\n visualElement.update(props, presenceContext);\n }\n });\n /**\n * Cache this value as we want to know whether HandoffAppearAnimations\n * was present on initial render - it will be deleted after this.\n */\n const optimisedAppearId = props[optimizedAppearDataAttribute];\n const wantsHandoff = useRef(Boolean(optimisedAppearId) &&\n !((_a = window.MotionHandoffIsComplete) === null || _a === void 0 ? void 0 : _a.call(window, optimisedAppearId)) &&\n ((_b = window.MotionHasOptimisedAnimation) === null || _b === void 0 ? void 0 : _b.call(window, optimisedAppearId)));\n useIsomorphicLayoutEffect(() => {\n if (!visualElement)\n return;\n isMounted.current = true;\n window.MotionIsMounted = true;\n visualElement.updateFeatures();\n microtask.render(visualElement.render);\n /**\n * Ideally this function would always run in a useEffect.\n *\n * However, if we have optimised appear animations to handoff from,\n * it needs to happen synchronously to ensure there's no flash of\n * incorrect styles in the event of a hydration error.\n *\n * So if we detect a situtation where optimised appear animations\n * are running, we use useLayoutEffect to trigger animations.\n */\n if (wantsHandoff.current && visualElement.animationState) {\n visualElement.animationState.animateChanges();\n }\n });\n useEffect(() => {\n if (!visualElement)\n return;\n if (!wantsHandoff.current && visualElement.animationState) {\n visualElement.animationState.animateChanges();\n }\n if (wantsHandoff.current) {\n // This ensures all future calls to animateChanges() in this component will run in useEffect\n queueMicrotask(() => {\n var _a;\n (_a = window.MotionHandoffMarkAsComplete) === null || _a === void 0 ? void 0 : _a.call(window, optimisedAppearId);\n });\n wantsHandoff.current = false;\n }\n });\n return visualElement;\n}\nfunction createProjectionNode(visualElement, props, ProjectionNodeConstructor, initialPromotionConfig) {\n const { layoutId, layout, drag, dragConstraints, layoutScroll, layoutRoot, } = props;\n visualElement.projection = new ProjectionNodeConstructor(visualElement.latestValues, props[\"data-framer-portal-id\"]\n ? undefined\n : getClosestProjectingNode(visualElement.parent));\n visualElement.projection.setOptions({\n layoutId,\n layout,\n alwaysMeasureLayout: Boolean(drag) || (dragConstraints && isRefObject(dragConstraints)),\n visualElement,\n /**\n * TODO: Update options in an effect. This could be tricky as it'll be too late\n * to update by the time layout animations run.\n * We also need to fix this safeToRemove by linking it up to the one returned by usePresence,\n * ensuring it gets called if there's no potential layout animations.\n *\n */\n animationType: typeof layout === \"string\" ? layout : \"both\",\n initialPromotionConfig,\n layoutScroll,\n layoutRoot,\n });\n}\nfunction getClosestProjectingNode(visualElement) {\n if (!visualElement)\n return undefined;\n return visualElement.options.allowProjection !== false\n ? visualElement.projection\n : getClosestProjectingNode(visualElement.parent);\n}\n\nexport { useVisualElement };\n","\"use client\";\nimport { jsxs, jsx } from 'react/jsx-runtime';\nimport { warning, invariant } from 'motion-utils';\nimport { forwardRef, useContext } from 'react';\nimport { LayoutGroupContext } from '../context/LayoutGroupContext.mjs';\nimport { LazyContext } from '../context/LazyContext.mjs';\nimport { MotionConfigContext } from '../context/MotionConfigContext.mjs';\nimport { MotionContext } from '../context/MotionContext/index.mjs';\nimport { useCreateMotionContext } from '../context/MotionContext/create.mjs';\nimport { isBrowser } from '../utils/is-browser.mjs';\nimport { featureDefinitions } from './features/definitions.mjs';\nimport { loadFeatures } from './features/load-features.mjs';\nimport { motionComponentSymbol } from './utils/symbol.mjs';\nimport { useMotionRef } from './utils/use-motion-ref.mjs';\nimport { useVisualElement } from './utils/use-visual-element.mjs';\n\n/**\n * Create a `motion` component.\n *\n * This function accepts a Component argument, which can be either a string (ie \"div\"\n * for `motion.div`), or an actual React component.\n *\n * Alongside this is a config option which provides a way of rendering the provided\n * component \"offline\", or outside the React render cycle.\n */\nfunction createRendererMotionComponent({ preloadedFeatures, createVisualElement, useRender, useVisualState, Component, }) {\n var _a, _b;\n preloadedFeatures && loadFeatures(preloadedFeatures);\n function MotionComponent(props, externalRef) {\n /**\n * If we need to measure the element we load this functionality in a\n * separate class component in order to gain access to getSnapshotBeforeUpdate.\n */\n let MeasureLayout;\n const configAndProps = {\n ...useContext(MotionConfigContext),\n ...props,\n layoutId: useLayoutId(props),\n };\n const { isStatic } = configAndProps;\n const context = useCreateMotionContext(props);\n const visualState = useVisualState(props, isStatic);\n if (!isStatic && isBrowser) {\n useStrictMode(configAndProps, preloadedFeatures);\n const layoutProjection = getProjectionFunctionality(configAndProps);\n MeasureLayout = layoutProjection.MeasureLayout;\n /**\n * Create a VisualElement for this component. A VisualElement provides a common\n * interface to renderer-specific APIs (ie DOM/Three.js etc) as well as\n * providing a way of rendering to these APIs outside of the React render loop\n * for more performant animations and interactions\n */\n context.visualElement = useVisualElement(Component, visualState, configAndProps, createVisualElement, layoutProjection.ProjectionNode);\n }\n /**\n * The mount order and hierarchy is specific to ensure our element ref\n * is hydrated by the time features fire their effects.\n */\n return (jsxs(MotionContext.Provider, { value: context, children: [MeasureLayout && context.visualElement ? (jsx(MeasureLayout, { visualElement: context.visualElement, ...configAndProps })) : null, useRender(Component, props, useMotionRef(visualState, context.visualElement, externalRef), visualState, isStatic, context.visualElement)] }));\n }\n MotionComponent.displayName = `motion.${typeof Component === \"string\"\n ? Component\n : `create(${(_b = (_a = Component.displayName) !== null && _a !== void 0 ? _a : Component.name) !== null && _b !== void 0 ? _b : \"\"})`}`;\n const ForwardRefMotionComponent = forwardRef(MotionComponent);\n ForwardRefMotionComponent[motionComponentSymbol] = Component;\n return ForwardRefMotionComponent;\n}\nfunction useLayoutId({ layoutId }) {\n const layoutGroupId = useContext(LayoutGroupContext).id;\n return layoutGroupId && layoutId !== undefined\n ? layoutGroupId + \"-\" + layoutId\n : layoutId;\n}\nfunction useStrictMode(configAndProps, preloadedFeatures) {\n const isStrict = useContext(LazyContext).strict;\n /**\n * If we're in development mode, check to make sure we're not rendering a motion component\n * as a child of LazyMotion, as this will break the file-size benefits of using it.\n */\n if (process.env.NODE_ENV !== \"production\" &&\n preloadedFeatures &&\n isStrict) {\n const strictMessage = \"You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.\";\n configAndProps.ignoreStrict\n ? warning(false, strictMessage)\n : invariant(false, strictMessage);\n }\n}\nfunction getProjectionFunctionality(props) {\n const { drag, layout } = featureDefinitions;\n if (!drag && !layout)\n return {};\n const combined = { ...drag, ...layout };\n return {\n MeasureLayout: (drag === null || drag === void 0 ? void 0 : drag.isEnabled(props)) || (layout === null || layout === void 0 ? void 0 : layout.isEnabled(props))\n ? combined.MeasureLayout\n : undefined,\n ProjectionNode: combined.ProjectionNode,\n };\n}\n\nexport { createRendererMotionComponent };\n","import { useContext } from 'react';\nimport { isAnimationControls } from '../../animation/utils/is-animation-controls.mjs';\nimport { MotionContext } from '../../context/MotionContext/index.mjs';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { isControllingVariants, isVariantNode } from '../../render/utils/is-controlling-variants.mjs';\nimport { resolveVariantFromProps } from '../../render/utils/resolve-variants.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\nimport { resolveMotionValue } from '../../value/utils/resolve-motion-value.mjs';\n\nfunction makeState({ scrapeMotionValuesFromProps, createRenderState, onUpdate, }, props, context, presenceContext) {\n const state = {\n latestValues: makeLatestValues(props, context, presenceContext, scrapeMotionValuesFromProps),\n renderState: createRenderState(),\n };\n if (onUpdate) {\n /**\n * onMount works without the VisualElement because it could be\n * called before the VisualElement payload has been hydrated.\n * (e.g. if someone is using m components )\n */\n state.onMount = (instance) => onUpdate({ props, current: instance, ...state });\n state.onUpdate = (visualElement) => onUpdate(visualElement);\n }\n return state;\n}\nconst makeUseVisualState = (config) => (props, isStatic) => {\n const context = useContext(MotionContext);\n const presenceContext = useContext(PresenceContext);\n const make = () => makeState(config, props, context, presenceContext);\n return isStatic ? make() : useConstant(make);\n};\nfunction makeLatestValues(props, context, presenceContext, scrapeMotionValues) {\n const values = {};\n const motionValues = scrapeMotionValues(props, {});\n for (const key in motionValues) {\n values[key] = resolveMotionValue(motionValues[key]);\n }\n let { initial, animate } = props;\n const isControllingVariants$1 = isControllingVariants(props);\n const isVariantNode$1 = isVariantNode(props);\n if (context &&\n isVariantNode$1 &&\n !isControllingVariants$1 &&\n props.inherit !== false) {\n if (initial === undefined)\n initial = context.initial;\n if (animate === undefined)\n animate = context.animate;\n }\n let isInitialAnimationBlocked = presenceContext\n ? presenceContext.initial === false\n : false;\n isInitialAnimationBlocked = isInitialAnimationBlocked || initial === false;\n const variantToSet = isInitialAnimationBlocked ? animate : initial;\n if (variantToSet &&\n typeof variantToSet !== \"boolean\" &&\n !isAnimationControls(variantToSet)) {\n const list = Array.isArray(variantToSet) ? variantToSet : [variantToSet];\n for (let i = 0; i < list.length; i++) {\n const resolved = resolveVariantFromProps(props, list[i]);\n if (resolved) {\n const { transitionEnd, transition, ...target } = resolved;\n for (const key in target) {\n let valueTarget = target[key];\n if (Array.isArray(valueTarget)) {\n /**\n * Take final keyframe if the initial animation is blocked because\n * we want to initialise at the end of that blocked animation.\n */\n const index = isInitialAnimationBlocked\n ? valueTarget.length - 1\n : 0;\n valueTarget = valueTarget[index];\n }\n if (valueTarget !== null) {\n values[key] = valueTarget;\n }\n }\n for (const key in transitionEnd) {\n values[key] = transitionEnd[key];\n }\n }\n }\n }\n return values;\n}\n\nexport { makeUseVisualState };\n","const createHtmlRenderState = () => ({\n style: {},\n transform: {},\n transformOrigin: {},\n vars: {},\n});\n\nexport { createHtmlRenderState };\n","import { createHtmlRenderState } from '../../html/utils/create-render-state.mjs';\n\nconst createSvgRenderState = () => ({\n ...createHtmlRenderState(),\n attrs: {},\n});\n\nexport { createSvgRenderState };\n","import { frame } from '../../frameloop/frame.mjs';\nimport { makeUseVisualState } from '../../motion/utils/use-visual-state.mjs';\nimport { transformProps } from '../html/utils/keys-transform.mjs';\nimport { buildSVGAttrs } from './utils/build-attrs.mjs';\nimport { createSvgRenderState } from './utils/create-render-state.mjs';\nimport { isSVGTag } from './utils/is-svg-tag.mjs';\nimport { renderSVG } from './utils/render.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\n\nfunction updateSVGDimensions(instance, renderState) {\n try {\n renderState.dimensions =\n typeof instance.getBBox === \"function\"\n ? instance.getBBox()\n : instance.getBoundingClientRect();\n }\n catch (e) {\n // Most likely trying to measure an unrendered element under Firefox\n renderState.dimensions = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n };\n }\n}\nconst layoutProps = [\"x\", \"y\", \"width\", \"height\", \"cx\", \"cy\", \"r\"];\nconst svgMotionConfig = {\n useVisualState: makeUseVisualState({\n scrapeMotionValuesFromProps: scrapeMotionValuesFromProps,\n createRenderState: createSvgRenderState,\n onUpdate: ({ props, prevProps, current, renderState, latestValues, }) => {\n if (!current)\n return;\n let hasTransform = !!props.drag;\n if (!hasTransform) {\n for (const key in latestValues) {\n if (transformProps.has(key)) {\n hasTransform = true;\n break;\n }\n }\n }\n if (!hasTransform)\n return;\n let needsMeasure = !prevProps;\n if (prevProps) {\n /**\n * Check the layout props for changes, if any are found we need to\n * measure the element again.\n */\n for (let i = 0; i < layoutProps.length; i++) {\n const key = layoutProps[i];\n if (props[key] !==\n prevProps[key]) {\n needsMeasure = true;\n }\n }\n }\n if (!needsMeasure)\n return;\n frame.read(() => {\n updateSVGDimensions(current, renderState);\n frame.render(() => {\n buildSVGAttrs(renderState, latestValues, isSVGTag(current.tagName), props.transformTemplate);\n renderSVG(current, renderState);\n });\n });\n },\n }),\n};\n\nexport { svgMotionConfig };\n","import { makeUseVisualState } from '../../motion/utils/use-visual-state.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\nimport { createHtmlRenderState } from './utils/create-render-state.mjs';\n\nconst htmlMotionConfig = {\n useVisualState: makeUseVisualState({\n scrapeMotionValuesFromProps,\n createRenderState: createHtmlRenderState,\n }),\n};\n\nexport { htmlMotionConfig };\n","import { useMemo } from 'react';\nimport { isForcedMotionValue } from '../../motion/utils/is-forced-motion-value.mjs';\nimport { isMotionValue } from '../../value/utils/is-motion-value.mjs';\nimport { buildHTMLStyles } from './utils/build-styles.mjs';\nimport { createHtmlRenderState } from './utils/create-render-state.mjs';\n\nfunction copyRawValuesOnly(target, source, props) {\n for (const key in source) {\n if (!isMotionValue(source[key]) && !isForcedMotionValue(key, props)) {\n target[key] = source[key];\n }\n }\n}\nfunction useInitialMotionValues({ transformTemplate }, visualState) {\n return useMemo(() => {\n const state = createHtmlRenderState();\n buildHTMLStyles(state, visualState, transformTemplate);\n return Object.assign({}, state.vars, state.style);\n }, [visualState]);\n}\nfunction useStyle(props, visualState) {\n const styleProp = props.style || {};\n const style = {};\n /**\n * Copy non-Motion Values straight into style\n */\n copyRawValuesOnly(style, styleProp, props);\n Object.assign(style, useInitialMotionValues(props, visualState));\n return style;\n}\nfunction useHTMLProps(props, visualState) {\n // The `any` isn't ideal but it is the type of createElement props argument\n const htmlProps = {};\n const style = useStyle(props, visualState);\n if (props.drag && props.dragListener !== false) {\n // Disable the ghost element when a user drags\n htmlProps.draggable = false;\n // Disable text selection\n style.userSelect =\n style.WebkitUserSelect =\n style.WebkitTouchCallout =\n \"none\";\n // Disable scrolling on the draggable direction\n style.touchAction =\n props.drag === true\n ? \"none\"\n : `pan-${props.drag === \"x\" ? \"y\" : \"x\"}`;\n }\n if (props.tabIndex === undefined &&\n (props.onTap || props.onTapStart || props.whileTap)) {\n htmlProps.tabIndex = 0;\n }\n htmlProps.style = style;\n return htmlProps;\n}\n\nexport { copyRawValuesOnly, useHTMLProps };\n","import { useMemo } from 'react';\nimport { copyRawValuesOnly } from '../html/use-props.mjs';\nimport { buildSVGAttrs } from './utils/build-attrs.mjs';\nimport { createSvgRenderState } from './utils/create-render-state.mjs';\nimport { isSVGTag } from './utils/is-svg-tag.mjs';\n\nfunction useSVGProps(props, visualState, _isStatic, Component) {\n const visualProps = useMemo(() => {\n const state = createSvgRenderState();\n buildSVGAttrs(state, visualState, isSVGTag(Component), props.transformTemplate);\n return {\n ...state.attrs,\n style: { ...state.style },\n };\n }, [visualState]);\n if (props.style) {\n const rawStyles = {};\n copyRawValuesOnly(rawStyles, props.style, props);\n visualProps.style = { ...rawStyles, ...visualProps.style };\n }\n return visualProps;\n}\n\nexport { useSVGProps };\n","import { Fragment, useMemo, createElement } from 'react';\nimport { useHTMLProps } from '../html/use-props.mjs';\nimport { filterProps } from './utils/filter-props.mjs';\nimport { isSVGComponent } from './utils/is-svg-component.mjs';\nimport { useSVGProps } from '../svg/use-props.mjs';\nimport { isMotionValue } from '../../value/utils/is-motion-value.mjs';\n\nfunction createUseRender(forwardMotionProps = false) {\n const useRender = (Component, props, ref, { latestValues }, isStatic) => {\n const useVisualProps = isSVGComponent(Component)\n ? useSVGProps\n : useHTMLProps;\n const visualProps = useVisualProps(props, latestValues, isStatic, Component);\n const filteredProps = filterProps(props, typeof Component === \"string\", forwardMotionProps);\n const elementProps = Component !== Fragment\n ? { ...filteredProps, ...visualProps, ref }\n : {};\n /**\n * If component has been handed a motion value as its child,\n * memoise its initial value and render that. Subsequent updates\n * will be handled by the onChange handler\n */\n const { children } = props;\n const renderedChildren = useMemo(() => (isMotionValue(children) ? children.get() : children), [children]);\n return createElement(Component, {\n ...elementProps,\n children: renderedChildren,\n });\n };\n return useRender;\n}\n\nexport { createUseRender };\n","import { createRendererMotionComponent } from '../../motion/index.mjs';\nimport { isSVGComponent } from '../dom/utils/is-svg-component.mjs';\nimport { svgMotionConfig } from '../svg/config-motion.mjs';\nimport { htmlMotionConfig } from '../html/config-motion.mjs';\nimport { createUseRender } from '../dom/use-render.mjs';\n\nfunction createMotionComponentFactory(preloadedFeatures, createVisualElement) {\n return function createMotionComponent(Component, { forwardMotionProps } = { forwardMotionProps: false }) {\n const baseConfig = isSVGComponent(Component)\n ? svgMotionConfig\n : htmlMotionConfig;\n const config = {\n ...baseConfig,\n preloadedFeatures,\n useRender: createUseRender(forwardMotionProps),\n createVisualElement,\n Component,\n };\n return createRendererMotionComponent(config);\n };\n}\n\nexport { createMotionComponentFactory };\n","import { createMotionComponentFactory } from '../create-factory.mjs';\n\nconst createMinimalMotionComponent = \n/*@__PURE__*/ createMotionComponentFactory();\n\nexport { createMinimalMotionComponent };\n","import { createDOMMotionComponentProxy } from '../create-proxy.mjs';\nimport { createMinimalMotionComponent } from './create.mjs';\n\nconst m = /*@__PURE__*/ createDOMMotionComponentProxy(createMinimalMotionComponent);\n\nexport { m };\n","/**\n * Convert camelCase to dash-case properties.\n */\nconst camelToDash = (str) => str.replace(/([a-z])([A-Z])/gu, \"$1-$2\").toLowerCase();\n\nexport { camelToDash };\n","/**\n * A list of all valid MotionProps.\n *\n * @privateRemarks\n * This doesn't throw if a `MotionProp` name is missing - it should.\n */\nconst validMotionProps = new Set([\n \"animate\",\n \"exit\",\n \"variants\",\n \"initial\",\n \"style\",\n \"values\",\n \"variants\",\n \"transition\",\n \"transformTemplate\",\n \"custom\",\n \"inherit\",\n \"onBeforeLayoutMeasure\",\n \"onAnimationStart\",\n \"onAnimationComplete\",\n \"onUpdate\",\n \"onDragStart\",\n \"onDrag\",\n \"onDragEnd\",\n \"onMeasureDragConstraints\",\n \"onDirectionLock\",\n \"onDragTransitionEnd\",\n \"_dragX\",\n \"_dragY\",\n \"onHoverStart\",\n \"onHoverEnd\",\n \"onViewportEnter\",\n \"onViewportLeave\",\n \"globalTapTarget\",\n \"ignoreStrict\",\n \"viewport\",\n]);\n/**\n * Check whether a prop name is a valid `MotionProp` key.\n *\n * @param key - Name of the property to check\n * @returns `true` is key is a valid `MotionProp`.\n *\n * @public\n */\nfunction isValidMotionProp(key) {\n return (key.startsWith(\"while\") ||\n (key.startsWith(\"drag\") && key !== \"draggable\") ||\n key.startsWith(\"layout\") ||\n key.startsWith(\"onTap\") ||\n key.startsWith(\"onPan\") ||\n key.startsWith(\"onLayout\") ||\n validMotionProps.has(key));\n}\n\nexport { isValidMotionProp };\n","import { isValidMotionProp } from '../../../motion/utils/valid-prop.mjs';\n\nlet shouldForward = (key) => !isValidMotionProp(key);\nfunction loadExternalIsValidProp(isValidProp) {\n if (!isValidProp)\n return;\n // Explicitly filter our events\n shouldForward = (key) => key.startsWith(\"on\") ? !isValidMotionProp(key) : isValidProp(key);\n}\n/**\n * Emotion and Styled Components both allow users to pass through arbitrary props to their components\n * to dynamically generate CSS. They both use the `@emotion/is-prop-valid` package to determine which\n * of these should be passed to the underlying DOM node.\n *\n * However, when styling a Motion component `styled(motion.div)`, both packages pass through *all* props\n * as it's seen as an arbitrary component rather than a DOM node. Motion only allows arbitrary props\n * passed through the `custom` prop so it doesn't *need* the payload or computational overhead of\n * `@emotion/is-prop-valid`, however to fix this problem we need to use it.\n *\n * By making it an optionalDependency we can offer this functionality only in the situations where it's\n * actually required.\n */\ntry {\n /**\n * We attempt to import this package but require won't be defined in esm environments, in that case\n * isPropValid will have to be provided via `MotionContext`. In a 6.0.0 this should probably be removed\n * in favour of explicit injection.\n */\n loadExternalIsValidProp(require(\"@emotion/is-prop-valid\").default);\n}\ncatch (_a) {\n // We don't need to actually do anything here - the fallback is the existing `isPropValid`.\n}\nfunction filterProps(props, isDom, forwardMotionProps) {\n const filteredProps = {};\n for (const key in props) {\n /**\n * values is considered a valid prop by Emotion, so if it's present\n * this will be rendered out to the DOM unless explicitly filtered.\n *\n * We check the type as it could be used with the `feColorMatrix`\n * element, which we support.\n */\n if (key === \"values\" && typeof props.values === \"object\")\n continue;\n if (shouldForward(key) ||\n (forwardMotionProps === true && isValidMotionProp(key)) ||\n (!isDom && !isValidMotionProp(key)) ||\n // If trying to use native HTML drag events, forward drag listeners\n (props[\"draggable\"] &&\n key.startsWith(\"onDrag\"))) {\n filteredProps[key] =\n props[key];\n }\n }\n return filteredProps;\n}\n\nexport { filterProps, loadExternalIsValidProp };\n","const checkStringStartsWith = (token) => (key) => typeof key === \"string\" && key.startsWith(token);\nconst isCSSVariableName = \n/*@__PURE__*/ checkStringStartsWith(\"--\");\nconst startsAsVariableToken = \n/*@__PURE__*/ checkStringStartsWith(\"var(--\");\nconst isCSSVariableToken = (value) => {\n const startsWithToken = startsAsVariableToken(value);\n if (!startsWithToken)\n return false;\n // Ensure any comments are stripped from the value as this can harm performance of the regex.\n return singleCssVariableRegex.test(value.split(\"/*\")[0].trim());\n};\nconst singleCssVariableRegex = /var\\(--(?:[\\w-]+\\s*|[\\w-]+\\s*,(?:\\s*[^)(\\s]|\\s*\\((?:[^)(]|\\([^)(]*\\))*\\))+\\s*)\\)$/iu;\n\nexport { isCSSVariableName, isCSSVariableToken };\n","/**\n * We keep these listed separately as we use the lowercase tag names as part\n * of the runtime bundle to detect SVG components\n */\nconst lowercaseSVGElements = [\n \"animate\",\n \"circle\",\n \"defs\",\n \"desc\",\n \"ellipse\",\n \"g\",\n \"image\",\n \"line\",\n \"filter\",\n \"marker\",\n \"mask\",\n \"metadata\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"rect\",\n \"stop\",\n \"switch\",\n \"symbol\",\n \"svg\",\n \"text\",\n \"tspan\",\n \"use\",\n \"view\",\n];\n\nexport { lowercaseSVGElements };\n","import { lowercaseSVGElements } from '../../svg/lowercase-elements.mjs';\n\nfunction isSVGComponent(Component) {\n if (\n /**\n * If it's not a string, it's a custom React component. Currently we only support\n * HTML custom React components.\n */\n typeof Component !== \"string\" ||\n /**\n * If it contains a dash, the element is a custom HTML webcomponent.\n */\n Component.includes(\"-\")) {\n return false;\n }\n else if (\n /**\n * If it's in our list of lowercase SVG tags, it's an SVG component\n */\n lowercaseSVGElements.indexOf(Component) > -1 ||\n /**\n * If it contains a capital letter, it's an SVG component\n */\n /[A-Z]/u.test(Component)) {\n return true;\n }\n return false;\n}\n\nexport { isSVGComponent };\n","import { px } from '../../../value/types/numbers/units.mjs';\n\nconst browserNumberValueTypes = {\n // Border props\n borderWidth: px,\n borderTopWidth: px,\n borderRightWidth: px,\n borderBottomWidth: px,\n borderLeftWidth: px,\n borderRadius: px,\n radius: px,\n borderTopLeftRadius: px,\n borderTopRightRadius: px,\n borderBottomRightRadius: px,\n borderBottomLeftRadius: px,\n // Positioning props\n width: px,\n maxWidth: px,\n height: px,\n maxHeight: px,\n top: px,\n right: px,\n bottom: px,\n left: px,\n // Spacing props\n padding: px,\n paddingTop: px,\n paddingRight: px,\n paddingBottom: px,\n paddingLeft: px,\n margin: px,\n marginTop: px,\n marginRight: px,\n marginBottom: px,\n marginLeft: px,\n // Misc\n backgroundPositionX: px,\n backgroundPositionY: px,\n};\n\nexport { browserNumberValueTypes };\n","import { scale, alpha } from '../../../value/types/numbers/index.mjs';\nimport { degrees, px, progressPercentage } from '../../../value/types/numbers/units.mjs';\n\nconst transformValueTypes = {\n rotate: degrees,\n rotateX: degrees,\n rotateY: degrees,\n rotateZ: degrees,\n scale,\n scaleX: scale,\n scaleY: scale,\n scaleZ: scale,\n skew: degrees,\n skewX: degrees,\n skewY: degrees,\n distance: px,\n translateX: px,\n translateY: px,\n translateZ: px,\n x: px,\n y: px,\n z: px,\n perspective: px,\n transformPerspective: px,\n opacity: alpha,\n originX: progressPercentage,\n originY: progressPercentage,\n originZ: px,\n};\n\nexport { transformValueTypes };\n","import { number } from '../../../value/types/numbers/index.mjs';\n\nconst int = {\n ...number,\n transform: Math.round,\n};\n\nexport { int };\n","import { alpha } from '../../../value/types/numbers/index.mjs';\nimport { px } from '../../../value/types/numbers/units.mjs';\nimport { browserNumberValueTypes } from './number-browser.mjs';\nimport { transformValueTypes } from './transform.mjs';\nimport { int } from './type-int.mjs';\n\nconst numberValueTypes = {\n ...browserNumberValueTypes,\n ...transformValueTypes,\n zIndex: int,\n size: px,\n // SVG\n fillOpacity: alpha,\n strokeOpacity: alpha,\n numOctaves: int,\n};\n\nexport { numberValueTypes };\n","/**\n * Provided a value and a ValueType, returns the value as that value type.\n */\nconst getValueAsType = (value, type) => {\n return type && typeof value === \"number\"\n ? type.transform(value)\n : value;\n};\n\nexport { getValueAsType };\n","import { getValueAsType } from '../../dom/value-types/get-as-type.mjs';\nimport { numberValueTypes } from '../../dom/value-types/number.mjs';\nimport { transformPropOrder } from './keys-transform.mjs';\n\nconst translateAlias = {\n x: \"translateX\",\n y: \"translateY\",\n z: \"translateZ\",\n transformPerspective: \"perspective\",\n};\nconst numTransforms = transformPropOrder.length;\n/**\n * Build a CSS transform style from individual x/y/scale etc properties.\n *\n * This outputs with a default order of transforms/scales/rotations, this can be customised by\n * providing a transformTemplate function.\n */\nfunction buildTransform(latestValues, transform, transformTemplate) {\n // The transform string we're going to build into.\n let transformString = \"\";\n let transformIsDefault = true;\n /**\n * Loop over all possible transforms in order, adding the ones that\n * are present to the transform string.\n */\n for (let i = 0; i < numTransforms; i++) {\n const key = transformPropOrder[i];\n const value = latestValues[key];\n if (value === undefined)\n continue;\n let valueIsDefault = true;\n if (typeof value === \"number\") {\n valueIsDefault = value === (key.startsWith(\"scale\") ? 1 : 0);\n }\n else {\n valueIsDefault = parseFloat(value) === 0;\n }\n if (!valueIsDefault || transformTemplate) {\n const valueAsType = getValueAsType(value, numberValueTypes[key]);\n if (!valueIsDefault) {\n transformIsDefault = false;\n const transformName = translateAlias[key] || key;\n transformString += `${transformName}(${valueAsType}) `;\n }\n if (transformTemplate) {\n transform[key] = valueAsType;\n }\n }\n }\n transformString = transformString.trim();\n // If we have a custom `transform` template, pass our transform values and\n // generated transformString to that before returning\n if (transformTemplate) {\n transformString = transformTemplate(transform, transformIsDefault ? \"\" : transformString);\n }\n else if (transformIsDefault) {\n transformString = \"none\";\n }\n return transformString;\n}\n\nexport { buildTransform };\n","import { isCSSVariableName } from '../../dom/utils/is-css-variable.mjs';\nimport { getValueAsType } from '../../dom/value-types/get-as-type.mjs';\nimport { numberValueTypes } from '../../dom/value-types/number.mjs';\nimport { buildTransform } from './build-transform.mjs';\nimport { transformProps } from './keys-transform.mjs';\n\nfunction buildHTMLStyles(state, latestValues, transformTemplate) {\n const { style, vars, transformOrigin } = state;\n // Track whether we encounter any transform or transformOrigin values.\n let hasTransform = false;\n let hasTransformOrigin = false;\n /**\n * Loop over all our latest animated values and decide whether to handle them\n * as a style or CSS variable.\n *\n * Transforms and transform origins are kept separately for further processing.\n */\n for (const key in latestValues) {\n const value = latestValues[key];\n if (transformProps.has(key)) {\n // If this is a transform, flag to enable further transform processing\n hasTransform = true;\n continue;\n }\n else if (isCSSVariableName(key)) {\n vars[key] = value;\n continue;\n }\n else {\n // Convert the value to its default value type, ie 0 -> \"0px\"\n const valueAsType = getValueAsType(value, numberValueTypes[key]);\n if (key.startsWith(\"origin\")) {\n // If this is a transform origin, flag and enable further transform-origin processing\n hasTransformOrigin = true;\n transformOrigin[key] =\n valueAsType;\n }\n else {\n style[key] = valueAsType;\n }\n }\n }\n if (!latestValues.transform) {\n if (hasTransform || transformTemplate) {\n style.transform = buildTransform(latestValues, state.transform, transformTemplate);\n }\n else if (style.transform) {\n /**\n * If we have previously created a transform but currently don't have any,\n * reset transform style to none.\n */\n style.transform = \"none\";\n }\n }\n /**\n * Build a transformOrigin style. Uses the same defaults as the browser for\n * undefined origins.\n */\n if (hasTransformOrigin) {\n const { originX = \"50%\", originY = \"50%\", originZ = 0, } = transformOrigin;\n style.transformOrigin = `${originX} ${originY} ${originZ}`;\n }\n}\n\nexport { buildHTMLStyles };\n","/**\n * Generate a list of every possible transform key.\n */\nconst transformPropOrder = [\n \"transformPerspective\",\n \"x\",\n \"y\",\n \"z\",\n \"translateX\",\n \"translateY\",\n \"translateZ\",\n \"scale\",\n \"scaleX\",\n \"scaleY\",\n \"rotate\",\n \"rotateX\",\n \"rotateY\",\n \"rotateZ\",\n \"skew\",\n \"skewX\",\n \"skewY\",\n];\n/**\n * A quick lookup for transform props.\n */\nconst transformProps = new Set(transformPropOrder);\n\nexport { transformPropOrder, transformProps };\n","function renderHTML(element, { style, vars }, styleProp, projection) {\n Object.assign(element.style, style, projection && projection.getProjectionStyles(styleProp));\n // Loop over any CSS variables and assign those.\n for (const key in vars) {\n element.style.setProperty(key, vars[key]);\n }\n}\n\nexport { renderHTML };\n","import { isForcedMotionValue } from '../../../motion/utils/is-forced-motion-value.mjs';\nimport { isMotionValue } from '../../../value/utils/is-motion-value.mjs';\n\nfunction scrapeMotionValuesFromProps(props, prevProps, visualElement) {\n var _a;\n const { style } = props;\n const newValues = {};\n for (const key in style) {\n if (isMotionValue(style[key]) ||\n (prevProps.style &&\n isMotionValue(prevProps.style[key])) ||\n isForcedMotionValue(key, props) ||\n ((_a = visualElement === null || visualElement === void 0 ? void 0 : visualElement.getValue(key)) === null || _a === void 0 ? void 0 : _a.liveStyle) !== undefined) {\n newValues[key] = style[key];\n }\n }\n return newValues;\n}\n\nexport { scrapeMotionValuesFromProps };\n","import { px } from '../../../value/types/numbers/units.mjs';\n\nconst dashKeys = {\n offset: \"stroke-dashoffset\",\n array: \"stroke-dasharray\",\n};\nconst camelKeys = {\n offset: \"strokeDashoffset\",\n array: \"strokeDasharray\",\n};\n/**\n * Build SVG path properties. Uses the path's measured length to convert\n * our custom pathLength, pathSpacing and pathOffset into stroke-dashoffset\n * and stroke-dasharray attributes.\n *\n * This function is mutative to reduce per-frame GC.\n */\nfunction buildSVGPath(attrs, length, spacing = 1, offset = 0, useDashCase = true) {\n // Normalise path length by setting SVG attribute pathLength to 1\n attrs.pathLength = 1;\n // We use dash case when setting attributes directly to the DOM node and camel case\n // when defining props on a React component.\n const keys = useDashCase ? dashKeys : camelKeys;\n // Build the dash offset\n attrs[keys.offset] = px.transform(-offset);\n // Build the dash array\n const pathLength = px.transform(length);\n const pathSpacing = px.transform(spacing);\n attrs[keys.array] = `${pathLength} ${pathSpacing}`;\n}\n\nexport { buildSVGPath };\n","import { px } from '../../../value/types/numbers/units.mjs';\n\nfunction calcOrigin(origin, offset, size) {\n return typeof origin === \"string\"\n ? origin\n : px.transform(offset + size * origin);\n}\n/**\n * The SVG transform origin defaults are different to CSS and is less intuitive,\n * so we use the measured dimensions of the SVG to reconcile these.\n */\nfunction calcSVGTransformOrigin(dimensions, originX, originY) {\n const pxOriginX = calcOrigin(originX, dimensions.x, dimensions.width);\n const pxOriginY = calcOrigin(originY, dimensions.y, dimensions.height);\n return `${pxOriginX} ${pxOriginY}`;\n}\n\nexport { calcSVGTransformOrigin };\n","import { buildHTMLStyles } from '../../html/utils/build-styles.mjs';\nimport { buildSVGPath } from './path.mjs';\nimport { calcSVGTransformOrigin } from './transform-origin.mjs';\n\n/**\n * Build SVG visual attrbutes, like cx and style.transform\n */\nfunction buildSVGAttrs(state, { attrX, attrY, attrScale, originX, originY, pathLength, pathSpacing = 1, pathOffset = 0, \n// This is object creation, which we try to avoid per-frame.\n...latest }, isSVGTag, transformTemplate) {\n buildHTMLStyles(state, latest, transformTemplate);\n /**\n * For svg tags we just want to make sure viewBox is animatable and treat all the styles\n * as normal HTML tags.\n */\n if (isSVGTag) {\n if (state.style.viewBox) {\n state.attrs.viewBox = state.style.viewBox;\n }\n return;\n }\n state.attrs = state.style;\n state.style = {};\n const { attrs, style, dimensions } = state;\n /**\n * However, we apply transforms as CSS transforms. So if we detect a transform we take it from attrs\n * and copy it into style.\n */\n if (attrs.transform) {\n if (dimensions)\n style.transform = attrs.transform;\n delete attrs.transform;\n }\n // Parse transformOrigin\n if (dimensions &&\n (originX !== undefined || originY !== undefined || style.transform)) {\n style.transformOrigin = calcSVGTransformOrigin(dimensions, originX !== undefined ? originX : 0.5, originY !== undefined ? originY : 0.5);\n }\n // Render attrX/attrY/attrScale as attributes\n if (attrX !== undefined)\n attrs.x = attrX;\n if (attrY !== undefined)\n attrs.y = attrY;\n if (attrScale !== undefined)\n attrs.scale = attrScale;\n // Build SVG path if one has been defined\n if (pathLength !== undefined) {\n buildSVGPath(attrs, pathLength, pathSpacing, pathOffset, false);\n }\n}\n\nexport { buildSVGAttrs };\n","/**\n * A set of attribute names that are always read/written as camel case.\n */\nconst camelCaseAttributes = new Set([\n \"baseFrequency\",\n \"diffuseConstant\",\n \"kernelMatrix\",\n \"kernelUnitLength\",\n \"keySplines\",\n \"keyTimes\",\n \"limitingConeAngle\",\n \"markerHeight\",\n \"markerWidth\",\n \"numOctaves\",\n \"targetX\",\n \"targetY\",\n \"surfaceScale\",\n \"specularConstant\",\n \"specularExponent\",\n \"stdDeviation\",\n \"tableValues\",\n \"viewBox\",\n \"gradientTransform\",\n \"pathLength\",\n \"startOffset\",\n \"textLength\",\n \"lengthAdjust\",\n]);\n\nexport { camelCaseAttributes };\n","const isSVGTag = (tag) => typeof tag === \"string\" && tag.toLowerCase() === \"svg\";\n\nexport { isSVGTag };\n","import { camelToDash } from '../../dom/utils/camel-to-dash.mjs';\nimport { renderHTML } from '../../html/utils/render.mjs';\nimport { camelCaseAttributes } from './camel-case-attrs.mjs';\n\nfunction renderSVG(element, renderState, _styleProp, projection) {\n renderHTML(element, renderState, undefined, projection);\n for (const key in renderState.attrs) {\n element.setAttribute(!camelCaseAttributes.has(key) ? camelToDash(key) : key, renderState.attrs[key]);\n }\n}\n\nexport { renderSVG };\n","import { isMotionValue } from '../../../value/utils/is-motion-value.mjs';\nimport { transformPropOrder } from '../../html/utils/keys-transform.mjs';\nimport { scrapeMotionValuesFromProps as scrapeMotionValuesFromProps$1 } from '../../html/utils/scrape-motion-values.mjs';\n\nfunction scrapeMotionValuesFromProps(props, prevProps, visualElement) {\n const newValues = scrapeMotionValuesFromProps$1(props, prevProps, visualElement);\n for (const key in props) {\n if (isMotionValue(props[key]) ||\n isMotionValue(prevProps[key])) {\n const targetKey = transformPropOrder.indexOf(key) !== -1\n ? \"attr\" + key.charAt(0).toUpperCase() + key.substring(1)\n : key;\n newValues[targetKey] = props[key];\n }\n }\n return newValues;\n}\n\nexport { scrapeMotionValuesFromProps };\n","import { isAnimationControls } from '../../animation/utils/is-animation-controls.mjs';\nimport { isVariantLabel } from './is-variant-label.mjs';\nimport { variantProps } from './variant-props.mjs';\n\nfunction isControllingVariants(props) {\n return (isAnimationControls(props.animate) ||\n variantProps.some((name) => isVariantLabel(props[name])));\n}\nfunction isVariantNode(props) {\n return Boolean(isControllingVariants(props) || props.variants);\n}\n\nexport { isControllingVariants, isVariantNode };\n","/**\n * Decides if the supplied variable is variant label\n */\nfunction isVariantLabel(v) {\n return typeof v === \"string\" || Array.isArray(v);\n}\n\nexport { isVariantLabel };\n","function getValueState(visualElement) {\n const state = [{}, {}];\n visualElement === null || visualElement === void 0 ? void 0 : visualElement.values.forEach((value, key) => {\n state[0][key] = value.get();\n state[1][key] = value.getVelocity();\n });\n return state;\n}\nfunction resolveVariantFromProps(props, definition, custom, visualElement) {\n /**\n * If the variant definition is a function, resolve.\n */\n if (typeof definition === \"function\") {\n const [current, velocity] = getValueState(visualElement);\n definition = definition(custom !== undefined ? custom : props.custom, current, velocity);\n }\n /**\n * If the variant definition is a variant label, or\n * the function returned a variant label, resolve.\n */\n if (typeof definition === \"string\") {\n definition = props.variants && props.variants[definition];\n }\n /**\n * At this point we've resolved both functions and variant labels,\n * but the resolved variant label might itself have been a function.\n * If so, resolve. This can only have returned a valid target object.\n */\n if (typeof definition === \"function\") {\n const [current, velocity] = getValueState(visualElement);\n definition = definition(custom !== undefined ? custom : props.custom, current, velocity);\n }\n return definition;\n}\n\nexport { resolveVariantFromProps };\n","const variantPriorityOrder = [\n \"animate\",\n \"whileInView\",\n \"whileFocus\",\n \"whileHover\",\n \"whileTap\",\n \"whileDrag\",\n \"exit\",\n];\nconst variantProps = [\"initial\", ...variantPriorityOrder];\n\nexport { variantPriorityOrder, variantProps };\n","const MotionGlobalConfig = {\n skipAnimations: false,\n useManualTiming: false,\n};\n\nexport { MotionGlobalConfig };\n","const clamp = (min, max, v) => {\n if (v > max)\n return max;\n if (v < min)\n return min;\n return v;\n};\n\nexport { clamp };\n","const isBrowser = typeof window !== \"undefined\";\n\nexport { isBrowser };\n","function isRefObject(ref) {\n return (ref &&\n typeof ref === \"object\" &&\n Object.prototype.hasOwnProperty.call(ref, \"current\"));\n}\n\nexport { isRefObject };\n","import { isKeyframesTarget } from '../animation/utils/is-keyframes-target.mjs';\n\nconst isCustomValue = (v) => {\n return Boolean(v && typeof v === \"object\" && v.mix && v.toValue);\n};\nconst resolveFinalValueInKeyframes = (v) => {\n // TODO maybe throw if v.length - 1 is placeholder token?\n return isKeyframesTarget(v) ? v[v.length - 1] || 0 : v;\n};\n\nexport { isCustomValue, resolveFinalValueInKeyframes };\n","import { useRef } from 'react';\n\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */\nfunction useConstant(init) {\n const ref = useRef(null);\n if (ref.current === null) {\n ref.current = init();\n }\n return ref.current;\n}\n\nexport { useConstant };\n","import { useLayoutEffect, useEffect } from 'react';\nimport { isBrowser } from './is-browser.mjs';\n\nconst useIsomorphicLayoutEffect = isBrowser ? useLayoutEffect : useEffect;\n\nexport { useIsomorphicLayoutEffect };\n","import { clamp } from '../../../utils/clamp.mjs';\n\nconst number = {\n test: (v) => typeof v === \"number\",\n parse: parseFloat,\n transform: (v) => v,\n};\nconst alpha = {\n ...number,\n transform: (v) => clamp(0, 1, v),\n};\nconst scale = {\n ...number,\n default: 1,\n};\n\nexport { alpha, number, scale };\n","const createUnitType = (unit) => ({\n test: (v) => typeof v === \"string\" && v.endsWith(unit) && v.split(\" \").length === 1,\n parse: parseFloat,\n transform: (v) => `${v}${unit}`,\n});\nconst degrees = /*@__PURE__*/ createUnitType(\"deg\");\nconst percent = /*@__PURE__*/ createUnitType(\"%\");\nconst px = /*@__PURE__*/ createUnitType(\"px\");\nconst vh = /*@__PURE__*/ createUnitType(\"vh\");\nconst vw = /*@__PURE__*/ createUnitType(\"vw\");\nconst progressPercentage = {\n ...percent,\n parse: (v) => percent.parse(v) / 100,\n transform: (v) => percent.transform(v * 100),\n};\n\nexport { degrees, percent, progressPercentage, px, vh, vw };\n","const isMotionValue = (value) => Boolean(value && value.getVelocity);\n\nexport { isMotionValue };\n","import { isCustomValue } from '../../utils/resolve-value.mjs';\nimport { isMotionValue } from './is-motion-value.mjs';\n\n/**\n * If the provided value is a MotionValue, this returns the actual value, otherwise just the value itself\n *\n * TODO: Remove and move to library\n */\nfunction resolveMotionValue(value) {\n const unwrappedValue = isMotionValue(value) ? value.get() : value;\n return isCustomValue(unwrappedValue)\n ? unwrappedValue.toValue()\n : unwrappedValue;\n}\n\nexport { resolveMotionValue };\n","/*#__NO_SIDE_EFFECTS__*/\nconst noop = (any) => any;\n\nexport { noop };\n"],"names":["DOMPropNames","Set","DOMEventNames","propRe","ariaRe","funcRe","filterDOMProps","props","opts","labelable","enabled","propNames","omitPropNames","omitEventNames","omitDataProps","omitEventProps","filteredProps","prop","has","test","Object","prototype","hasOwnProperty","call","$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents","$6179b936705e76d3$var$hoverCount","$6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents","setTimeout","$6179b936705e76d3$var$handleGlobalPointerEvent","e","pointerType","$6179b936705e76d3$var$setupGlobalTouchEvents","document","PointerEvent","addEventListener","removeEventListener","$6179b936705e76d3$export$ae780daf29e6d456","onHoverStart","onHoverChange","onHoverEnd","isDisabled","isHovered","setHovered","react__WEBPACK_IMPORTED_MODULE_0__","useState","state","useRef","ignoreEmulatedMouseEvents","target","current","useEffect","hoverProps","triggerHoverEnd","useMemo","triggerHoverStart","event","currentTarget","contains","type","onPointerEnter","onPointerLeave","onTouchStart","onMouseEnter","onMouseLeave","optimizedAppearDataAttribute","_render_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_0__","D","isAnimationControls","v","start","isKeyframesTarget","Array","isArray","PopChildMeasure","React","getSnapshotBeforeUpdate","prevProps","element","childRef","isPresent","size","sizeRef","height","offsetHeight","width","offsetWidth","top","offsetTop","left","offsetLeft","componentDidUpdate","render","children","PopChild","param","id","useId","ref","nonce","useContext","MotionConfigContext","useInsertionEffect","dataset","motionPopId","style","createElement","head","appendChild","sheet","insertRule","concat","removeChild","jsx","PresenceChild","initial","onExitComplete","custom","presenceAffectsLayout","mode","presenceChildren","useConstant","newChildrenMap","memoizedOnExitComplete","useCallback","isComplete","set","childId","values","context","register","delete","Math","random","forEach","_","key","PresenceContext","Provider","value","Map","getChildKey","child","onlyElements","filtered","react","Children","isValidElement","push","AnimatePresence","propagate","isParentPresent","safeToRemove","usePresence","presentChildren","presentKeys","map","isInitialRender","pendingPresentChildren","exitComplete","diffedChildren","setDiffedChildren","renderedChildren","setRenderedChildren","useIsomorphicLayoutEffect","i","length","includes","get","join","exitingChildren","nextChildren","splice","forceRender","LayoutGroupContext","Fragment","undefined","isEveryExitComplete","isExitComplete","subscribe","_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_1__","O","LazyMotion","features","strict","setIsLoaded","isLazyBundle","loadedRenderer","renderer","loadedFeatures","loadFeatures","then","LazyContext","createContext","transformPagePoint","p","isStatic","reducedMotion","SwitchLayoutGroupContext","stepsOrder","createRenderBatcher","scheduleNextBatch","allowKeepAlive","runNextFrame","useDefaultElapsed","delta","timestamp","isProcessing","flagRunNextFrame","steps","reduce","acc","createRenderStep","thisFrame","nextFrame","flushNextFrame","toKeepAlive","WeakSet","latestFrameData","triggerCallback","callback","step","schedule","keepAlive","immediate","queue","addToCurrentFrame","add","cancel","process","frameData","clear","read","resolveKeyframes","update","preRender","postRender","processBatch","GlobalConfig","c","useManualTiming","performance","now","max","min","wake","frame","cancelFrame","frameSteps","_batcher_mjs__WEBPACK_IMPORTED_MODULE_0__","Z","requestAnimationFrame","motion_utils__WEBPACK_IMPORTED_MODULE_1__","microtask","cancelMicrotask","queueMicrotask","featureProps","animation","exit","drag","focus","hover","tap","pan","inView","layout","featureDefinitions","isEnabled","some","name","_definitions_mjs__WEBPACK_IMPORTED_MODULE_0__","isForcedMotionValue","layoutId","_render_html_utils_keys_transform_mjs__WEBPACK_IMPORTED_MODULE_0__","G","startsWith","_projection_styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_1__","P","scaleCorrectors","addScaleCorrector","correctors","assign","MotionContext","variantLabelsAsDependency","motionComponentSymbol","Symbol","for","makeUseVisualState","presenceContext","make","makeState","scrapeMotionValuesFromProps","createRenderState","onUpdate","latestValues","makeLatestValues","scrapeMotionValues","motionValues","resolve_motion_value","b","animate","isControllingVariants$1","is_controlling_variants","isVariantNode$1","M","inherit","isInitialAnimationBlocked","variantToSet","is_animation_controls","H","list","resolved","resolve_variants","o","transitionEnd","transition","valueTarget","index","renderState","onMount","instance","visualElement","config","use_constant","h","createHtmlRenderState","transform","transformOrigin","vars","createSvgRenderState","attrs","layoutProps","svgMotionConfig","useVisualState","scrape_motion_values","U","hasTransform","keys_transform","needsMeasure","frameloop_frame","Wi","updateSVGDimensions","dimensions","getBBox","getBoundingClientRect","x","y","build_attrs","is_svg_tag","a","tagName","transformTemplate","K","htmlMotionConfig","utils_scrape_motion_values","copyRawValuesOnly","source","is_motion_value","is_forced_motion_value","j","m","createDOMMotionComponentProxy","componentFactory","Proxy","componentCache","args","_target","Component","forwardMotionProps","createRendererMotionComponent","_a","_b","preloadedFeatures","createVisualElement","useRender","MotionComponent","externalRef","MeasureLayout","configAndProps","useLayoutId","layoutGroupId","useCreateMotionContext","getCurrentTreeVariants","is_variant_label","$","visualState","isBrowser","layoutProjection","getProjectionFunctionality","combined","ProjectionNode","useVisualElement","ProjectionNodeConstructor","parent","lazyContext","u","reducedMotionConfig","visualElementRef","blockInitialAnimation","initialLayoutGroupConfig","g","projection","createProjectionNode","initialPromotionConfig","dragConstraints","layoutScroll","layoutRoot","getClosestProjectingNode","options","allowProjection","setOptions","alwaysMeasureLayout","Boolean","is_ref_object","I","animationType","isMounted","optimisedAppearId","data_id","wantsHandoff","window","MotionHandoffIsComplete","MotionHasOptimisedAnimation","use_isomorphic_effect","L","MotionIsMounted","updateFeatures","animationState","animateChanges","MotionHandoffMarkAsComplete","jsxs","mount","unmount","displayName","ForwardRefMotionComponent","forwardRef","is_svg_component","q","createUseRender","visualProps","useVisualProps","_isStatic","rawStyles","htmlProps","useStyle","styleProp","useInitialMotionValues","build_styles","r","dragListener","draggable","userSelect","WebkitUserSelect","WebkitTouchCallout","touchAction","tabIndex","onTap","onTapStart","whileTap","filter_props","elementProps","camelToDash","str","replace","toLowerCase","validMotionProps","isValidMotionProp","shouldForward","loadExternalIsValidProp","isValidProp","require","default","filterProps","isDom","checkStringStartsWith","token","isCSSVariableName","startsAsVariableToken","isCSSVariableToken","singleCssVariableRegex","split","trim","lowercaseSVGElements","isSVGComponent","indexOf","browserNumberValueTypes","borderWidth","units","px","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderRadius","radius","borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius","maxWidth","maxHeight","right","bottom","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","margin","marginTop","marginRight","marginBottom","marginLeft","backgroundPositionX","backgroundPositionY","transformValueTypes","rotate","RW","rotateX","rotateY","rotateZ","scale","numbers","bA","scaleX","scaleY","scaleZ","skew","skewX","skewY","distance","translateX","translateY","translateZ","z","perspective","transformPerspective","opacity","Fq","originX","$C","originY","originZ","type_int_int","Rx","round","numberValueTypes","zIndex","fillOpacity","strokeOpacity","numOctaves","getValueAsType","translateAlias","numTransforms","buildHTMLStyles","hasTransformOrigin","is_css_variable","f","valueAsType","number","buildTransform","transformString","transformIsDefault","valueIsDefault","parseFloat","transformName","transformPropOrder","transformProps","renderHTML","getProjectionStyles","setProperty","newValues","_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__","_motion_utils_is_forced_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__","getValue","liveStyle","dashKeys","offset","array","camelKeys","calcOrigin","origin","buildSVGAttrs","attrX","attrY","attrScale","pathLength","pathSpacing","pathOffset","latest","isSVGTag","viewBox","calcSVGTransformOrigin","pxOriginX","pxOriginY","buildSVGPath","spacing","useDashCase","keys","camelCaseAttributes","tag","renderSVG","_styleProp","_html_utils_render_mjs__WEBPACK_IMPORTED_MODULE_0__","N","setAttribute","s","_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_2__","_html_utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_0__","_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__","_html_utils_keys_transform_mjs__WEBPACK_IMPORTED_MODULE_2__","charAt","toUpperCase","substring","isControllingVariants","_animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_0__","_variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__","V","_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_2__","isVariantNode","variants","isVariantLabel","getValueState","getVelocity","resolveVariantFromProps","definition","velocity","variantPriorityOrder","variantProps","MotionGlobalConfig","skipAnimations","clamp","isRefObject","isCustomValue","mix","toValue","resolveFinalValueInKeyframes","_animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_0__","C","init","_is_browser_mjs__WEBPACK_IMPORTED_MODULE_1__","useLayoutEffect","parse","alpha","_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_0__","createUnitType","endsWith","unit","degrees","percent","vh","vw","progressPercentage","isMotionValue","resolveMotionValue","unwrappedValue","_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__","_utils_resolve_value_mjs__WEBPACK_IMPORTED_MODULE_1__","noop","any"],"sourceRoot":""}