{"version":3,"file":"AvoidLayoutJumping_Prod.Bhav0LLS.mjs","names":["useMemo","useRef"],"sources":["https:/framerusercontent.com/modules/rofp3mS0LNY15cjhHzia/mqQEarGIByho1rG31aTv/BlurGradient_Prod.js","https:/framerusercontent.com/modules/h8ioHyt4BUxuvVCE1Q10/aTM6mEMGlM19JjX8exDe/AvoidLayoutJumping_Prod.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useMemo}from\"react\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 240\n * @framerIntrinsicHeight 240\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */function BlurGradient({blur,borderRadius,direction,transition}){const blurSteps=useMemo(()=>[{blur:`${blur/2/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 0) 37.5%`},{blur:`${blur/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 0) 50%`},{blur:`${blur/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 62.5%`},{blur:`${blur/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 0) 75%`},{blur:`${blur/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 0) 87.5%`},{blur:`${blur/2/2}px`,gradient:`rgba(0, 0, 0, 0) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 0) 100%`},{blur:`${blur/2}px`,gradient:`rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 1) 100%`},{blur:`${blur}px`,gradient:`rgba(0, 0, 0, 0) 87.5%, rgba(0, 0, 0, 1) 100%`}],[blur]);return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflow:\"hidden\"},children:blurSteps.map((step,index)=>/*#__PURE__*/_jsx(motion.div,{transition:transition,initial:{backdropFilter:`blur(${step.blur})`},animate:{backdropFilter:`blur(${step.blur})`},style:{opacity:1,position:\"absolute\",inset:0,zIndex:index+1,maskImage:`linear-gradient(${direction}, ${step.gradient})`,WebkitMaskImage:`linear-gradient(${direction}, ${step.gradient})`,borderRadius:borderRadius,pointerEvents:\"none\"}},index))});}BlurGradient.defaultProps={blur:10,borderRadius:\"0px\",direction:\"toBottom\",transition:{duration:.3}};addPropertyControls(BlurGradient,{blur:{title:\"Blur\",type:ControlType.Number,defaultValue:10,min:0,max:100,step:1,description:\"Large blur values (10<) can impact performance.\"},borderRadius:{title:\"Radius\",type:ControlType.BorderRadius,defaultValue:\"0px\",description:\"Blur Gradient component's parent frame can't have border radius (it will break the component). If you need corner radius, apply it directly to the Blur Gradient component here.\"},direction:{title:\"Direction\",type:ControlType.SegmentedEnum,options:[\"to bottom\",\"to top\",\"to left\",\"to right\"],optionTitles:[\"↓\",\"↑\",\"←\",\"→\"],defaultValue:\"to bottom\"},transition:{type:ControlType.Transition,defaultValue:{duration:.3},title:\"Transition\",description:\"Control how the blur animates when used on hover states or any othe interaction.\\n\\nMore components at [Framer University](https://frameruni.link/cc).\"}});BlurGradient.displayName=\"Blur Gradient\";export default BlurGradient;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BlurGradient\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"240\",\"framerIntrinsicWidth\":\"240\",\"framerDisableUnlink\":\"*\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlurGradient_Prod.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef}from\"react\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n */export default function AvoidLayoutJumping({direction,style}){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);const rafId=useRef();const vertical=direction===\"vertical\"||direction===\"both\";const horizontal=direction===\"horizontal\"||direction===\"both\";useEffect(()=>{if(isCanvas)return;const parent=ref.current?.parentElement?.parentElement;if(!parent)return;const container=parent.parentElement;if(!container)return;const updateSize=()=>{const rect=parent.getBoundingClientRect();if(horizontal){container.style.width=`${rect.width}px`;}if(vertical){container.style.height=`${rect.height}px`;}rafId.current=requestAnimationFrame(updateSize);};// Start the RAF loop\nrafId.current=requestAnimationFrame(updateSize);return()=>{if(rafId.current){cancelAnimationFrame(rafId.current);}if(container){if(horizontal){container.style.width=\"\";}if(vertical){container.style.height=\"\";}}};},[direction]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...style}});}AvoidLayoutJumping.displayName=\"Layout Jump Preventer\";addPropertyControls(AvoidLayoutJumping,{direction:{type:ControlType.Enum,defaultValue:\"vertical\",options:[\"vertical\",\"horizontal\",\"both\"],optionTitles:[\"Vertical\",\"Horizontal\",\"Both\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",// @ts-ignore\noptionIcons:[\"direction-vertical\",\"direction-horizontal\",\"direction-all\"],description:\"More components at [Framer University](https://frameruni.link/cc).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AvoidLayoutJumping\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"auto\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AvoidLayoutJumping_Prod.map"],"mappings":"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"}