{"version":3,"file":"ImageComparisonMask.D2C2DvRa.mjs","names":["useRef","useState","_Fragment","SolPerlinGradient","React.useContext","React.useMemo","React.Fragment","React.forwardRef","useRef","React.useId","useRef","useState","useCallback"],"sources":["https:/framerusercontent.com/modules/2rGdY3xNPdGAC1LGc2Ew/gQcpGdBaDKqalAQX5HN3/Pattern.js","https:/framerusercontent.com/modules/3m9J2GrlDTET4CxHO261/2MMTiEoPyAIDYQXqF8sU/GPerlin.js","https:/framerusercontent.com/modules/xibN7xybz96h60w9Jo6J/fDYvMBhMbTRWdl9y5MHc/AcdiUEjmF.js","https:/framerusercontent.com/modules/xHCKBcyD5iGV1W6BClvX/tOYZ36latldvWdICZLzq/ImageComparisonMask.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,Color}from\"framer\";import{motion}from\"framer-motion\";/**\n * PATTERN\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 200\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */ export default function Pattern(props){const{patternType,front,back,radius,scale,shouldAnimate,direction,diagonal,duration}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;let pattern;let position;let size;let repeat;let blendMode;let filter;let addBackground;let backgroundPosAnimation;const frontHex=Color.toHexString(Color(front));const backHex=Color.toHexString(Color(back));const frontWithoutHex=frontHex.replace(\"#\",\"\");const backWithoutHex=backHex.replace(\"#\",\"\");const factor=direction===\"left\"||direction===\"top\"?-1:1;const xScale=direction===\"left\"||direction===\"right\"?factor*scale:0;const yScale=direction===\"top\"||direction===\"bottom\"?factor*scale:0;if(patternType===\"wave\"){pattern=`radial-gradient(circle at center center, ${front}, ${back}), repeating-radial-gradient(circle at center center, ${front}, ${front}, ${scale}px, transparent ${scale*2}px, transparent ${scale}px)`;blendMode=\"multiply\";}if(patternType===\"zigzag\"){pattern=`linear-gradient(135deg, ${front} 25%, transparent 25%), linear-gradient(225deg, ${front} 25%, transparent 25%), linear-gradient(45deg, ${front} 25%, transparent 25%), linear-gradient(315deg, ${front} 25%, ${back} 25%)`;position=`${scale}px 0, ${scale}px 0, 0 0, 0 0`;size=`${scale*2}px ${scale*2}px`;repeat=`repeat`;}if(patternType===\"diagonal\"){pattern=`repeating-linear-gradient(45deg, ${front}, ${front} ${scale/2}px, ${back} ${scale/2}px, ${back} ${scale*2}px )`;}if(patternType===\"diagonal-two\"){pattern=`repeating-linear-gradient( 135deg, ${front}, ${front} ${scale/2}px, ${back} ${scale/2}px, ${back} ${scale*2}px )`;}if(patternType===\"blocks\"){pattern=`linear-gradient(30deg, ${front} 12%, transparent 12.5%, transparent 87%, ${front} 87.5%, ${front}), linear-gradient(150deg, ${front} 12%, transparent 12.5%, transparent 87%, ${front} 87.5%, ${front}), linear-gradient(30deg, ${front} 12%, transparent 12.5%, transparent 87%, ${front} 87.5%, ${front}), linear-gradient(150deg, ${front} 12%, transparent 12.5%, transparent 87%, ${front} 87.5%, ${front}), linear-gradient(60deg, ${back} 25%, transparent 25.5%, transparent 75%, ${back} 75%, ${back}), linear-gradient(60deg, ${back} 25%, transparent 25.5%, transparent 75%, ${back} 75%, ${back})`;size=`${scale*8}px ${scale*14}px`;position=`0 0, 0 0, ${scale*4}px ${scale*7}px, ${scale*4}px ${scale*7}px, 0 0, ${scale*4}px ${scale*7}px`;}if(patternType===\"polka\"){pattern=`radial-gradient(${front} 1px, transparent 1px), radial-gradient(${front} 1px, ${back} 1px)`;size=`${scale*2}px ${scale*2}px`;position=`0 0, ${scale}px ${scale}px`;}if(patternType===\"rhombus\"){pattern=`linear-gradient(135deg, ${front} 25%, transparent 25%), linear-gradient(225deg, ${front} 25%, transparent 25%), linear-gradient(45deg, ${front} 25%, transparent 25%), linear-gradient(315deg, ${front} 25%, ${back} 25%)`;position=`${scale}px 0, ${scale}px 0, 0 0, 0 0`;size=`${scale}px ${scale}px`;repeat=\"repeat\";}if(patternType===\"stars\"){pattern=`radial-gradient(ellipse ${scale}px ${scale}px, ${front}, ${front} 25%, ${back} 25%)`;size=`${scale/2}px ${scale/2}px`;if(shouldAnimate){backgroundPosAnimation=`${xScale}px ${yScale}px`;}}if(patternType===\"circles\"){pattern=`radial-gradient(circle at 100% 50%, ${back} 20%, ${front} 21%, ${front} 34%, transparent 35%, transparent), radial-gradient(circle at 0% 50%, ${back} 20%, ${front} 21%, ${front} 34%, ${back} 35%, ${back})`;size=`${scale*2}px ${scale*2}px`;}if(patternType===\"rectangles\"){pattern=`repeating-linear-gradient(45deg, ${front} 25%, transparent 25%, transparent 75%, ${front} 75%, ${front}), repeating-linear-gradient(45deg, ${front} 25%, ${back} 25%, ${back} 75%, ${front} 75%, ${front})`;position=`0 0, ${scale}px ${scale}px`;size=`${scale*2}px ${scale*2}px`;}if(patternType===\"lines\"){pattern=`linear-gradient(0deg, ${front} 50%, ${back} 50%)`;size=`${scale}px ${scale}px`;}if(patternType===\"lines-vertical\"){pattern=`linear-gradient(to right, ${front} 50%, ${back} 50%)`;size=`${scale}px ${scale}px`;}if(patternType===\"paper\"){pattern=`linear-gradient(${front} 2px, transparent 2px), linear-gradient(90deg, ${front} 2px, transparent 2px), linear-gradient(${front} 1px, transparent 1px), linear-gradient(90deg, ${front} 1px, ${back} 1px)`;size=`${scale*5}px ${scale*5}px, ${scale*5}px ${scale*5}px, ${scale}px ${scale}px, ${scale}px ${scale}px`;position=`-2px -2px, -2px -2px, -1px -1px, -1px -1px`;}if(patternType===\"crosses\"){pattern=`url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' %3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23${frontWithoutHex}' %3E%3Cpath d='M0 38.59l2.83-2.83 1.41 1.41L1.41 40H0v-1.41zM0 1.4l2.83 2.83 1.41-1.41L1.41 0H0v1.41zM38.59 40l-2.83-2.83 1.41-1.41L40 38.59V40h-1.41zM40 1.41l-2.83 2.83-1.41-1.41L38.59 0H40v1.41zM20 18.6l2.83-2.83 1.41 1.41L21.41 20l2.83 2.83-1.41 1.41L20 21.41l-2.83 2.83-1.41-1.41L18.59 20l-2.83-2.83 1.41-1.41L20 18.59z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E\")`;size=`${scale*4}px ${scale*4}px`;addBackground=back;}if(patternType===\"wave-lines\"){pattern=`url(\"data:image/svg+xml,%3Csvg width='100' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.184 20c.357-.13.72-.264 1.088-.402l1.768-.661C33.64 15.347 39.647 14 50 14c10.271 0 15.362 1.222 24.629 4.928.955.383 1.869.74 2.75 1.072h6.225c-2.51-.73-5.139-1.691-8.233-2.928C65.888 13.278 60.562 12 50 12c-10.626 0-16.855 1.397-26.66 5.063l-1.767.662c-2.475.923-4.66 1.674-6.724 2.275h6.335zm0-20C13.258 2.892 8.077 4 0 4V2c5.744 0 9.951-.574 14.85-2h6.334zM77.38 0C85.239 2.966 90.502 4 100 4V2c-6.842 0-11.386-.542-16.396-2h-6.225zM0 14c8.44 0 13.718-1.21 22.272-4.402l1.768-.661C33.64 5.347 39.647 4 50 4c10.271 0 15.362 1.222 24.629 4.928C84.112 12.722 89.438 14 100 14v-2c-10.271 0-15.362-1.222-24.629-4.928C65.888 3.278 60.562 2 50 2 39.374 2 33.145 3.397 23.34 7.063l-1.767.662C13.223 10.84 8.163 12 0 12v2z' fill='%23${frontWithoutHex}' fill-rule='evenodd'/%3E%3C/svg%3E\")`;size=`${scale*10}px ${scale*2}px`;addBackground=back;if(shouldAnimate){backgroundPosAnimation=`${xScale*10}px ${yScale*2}px`;}}if(patternType===\"clouds\"){pattern=`url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='28'%3E%3Cpath fill='%23${frontWithoutHex}' d='M56 26v2h-7.75c2.3-1.27 4.94-2 7.75-2zm-26 2a2 2 0 1 0-4 0h-4.09A25.98 25.98 0 0 0 0 16v-2c.67 0 1.34.02 2 .07V14a2 2 0 0 0-2-2v-2a4 4 0 0 1 3.98 3.6 28.09 28.09 0 0 1 2.8-3.86A8 8 0 0 0 0 6V4a9.99 9.99 0 0 1 8.17 4.23c.94-.95 1.96-1.83 3.03-2.63A13.98 13.98 0 0 0 0 0h7.75c2 1.1 3.73 2.63 5.1 4.45 1.12-.72 2.3-1.37 3.53-1.93A20.1 20.1 0 0 0 14.28 0h2.7c.45.56.88 1.14 1.29 1.74 1.3-.48 2.63-.87 4-1.15-.11-.2-.23-.4-.36-.59H26v.07a28.4 28.4 0 0 1 4 0V0h4.09l-.37.59c1.38.28 2.72.67 4.01 1.15.4-.6.84-1.18 1.3-1.74h2.69a20.1 20.1 0 0 0-2.1 2.52c1.23.56 2.41 1.2 3.54 1.93A16.08 16.08 0 0 1 48.25 0H56c-4.58 0-8.65 2.2-11.2 5.6 1.07.8 2.09 1.68 3.03 2.63A9.99 9.99 0 0 1 56 4v2a8 8 0 0 0-6.77 3.74c1.03 1.2 1.97 2.5 2.79 3.86A4 4 0 0 1 56 10v2a2 2 0 0 0-2 2.07 28.4 28.4 0 0 1 2-.07v2c-9.2 0-17.3 4.78-21.91 12H30zM7.75 28H0v-2c2.81 0 5.46.73 7.75 2zM56 20v2c-5.6 0-10.65 2.3-14.28 6h-2.7c4.04-4.89 10.15-8 16.98-8zm-39.03 8h-2.69C10.65 24.3 5.6 22 0 22v-2c6.83 0 12.94 3.11 16.97 8zm15.01-.4a28.09 28.09 0 0 1 2.8-3.86 8 8 0 0 0-13.55 0c1.03 1.2 1.97 2.5 2.79 3.86a4 4 0 0 1 7.96 0zm14.29-11.86c1.3-.48 2.63-.87 4-1.15a25.99 25.99 0 0 0-44.55 0c1.38.28 2.72.67 4.01 1.15a21.98 21.98 0 0 1 36.54 0zm-5.43 2.71c1.13-.72 2.3-1.37 3.54-1.93a19.98 19.98 0 0 0-32.76 0c1.23.56 2.41 1.2 3.54 1.93a15.98 15.98 0 0 1 25.68 0zm-4.67 3.78c.94-.95 1.96-1.83 3.03-2.63a13.98 13.98 0 0 0-22.4 0c1.07.8 2.09 1.68 3.03 2.63a9.99 9.99 0 0 1 16.34 0z'%3E%3C/path%3E%3C/svg%3E\")`;size=`${scale*5.6}px ${scale*2.8}px`;addBackground=back;if(shouldAnimate){backgroundPosAnimation=`${xScale*5.6}px ${yScale*2.8}px`;}}if(patternType===\"stars-two\"){pattern=`url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath fill='%23${frontWithoutHex}' d='m16 8.764 2.351 4.764 5.257.764L19.804 18l.898 5.236L16 20.764l-4.702 2.472.898-5.236-3.804-3.708 5.257-.764Z'%3E%3C/path%3E%3C/svg%3E\")`;size=`${scale*3.2}px ${scale*3.2}px`;addBackground=back;}if(patternType===\"wiggle\"){pattern=`url(\"data:image/svg+xml,%3Csvg width='52' height='26' viewBox='0 0 52 26' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23${frontWithoutHex}' %3E%3Cpath d='M10 10c0-2.21-1.79-4-4-4-3.314 0-6-2.686-6-6h2c0 2.21 1.79 4 4 4 3.314 0 6 2.686 6 6 0 2.21 1.79 4 4 4 3.314 0 6 2.686 6 6 0 2.21 1.79 4 4 4v2c-3.314 0-6-2.686-6-6 0-2.21-1.79-4-4-4-3.314 0-6-2.686-6-6zm25.464-1.95l8.486 8.486-1.414 1.414-8.486-8.486 1.414-1.414z' /%3E%3C/g%3E%3C/g%3E%3C/svg%3E\")`;addBackground=back;size=`${scale*5.2}px ${scale*2.6}px`;if(shouldAnimate){if(diagonal){backgroundPosAnimation=`-${scale*5.2}px -${scale*5.2}px`;}else{backgroundPosAnimation=`${scale*5.2}px ${scale*5.2}px`;}}}if(patternType===\"groovy\"){pattern=`url(\"data:image/svg+xml,%3Csvg width='24' height='40' viewBox='0 0 24 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 40c5.523 0 10-4.477 10-10V0C4.477 0 0 4.477 0 10v30zm22 0c-5.523 0-10-4.477-10-10V0c5.523 0 10 4.477 10 10v30z' fill='%23${frontWithoutHex}' fill-rule='evenodd'/%3E%3C/svg%3E\")`;addBackground=back;size=`${scale*2.4}px ${scale*4}px`;if(shouldAnimate){backgroundPosAnimation=`${xScale*2.4}px ${yScale*4}px`;}}if(patternType===\"plus\"){pattern=`url(\"data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23${frontWithoutHex}' %3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E\")`;addBackground=back;size=`${scale*6}px ${scale*6}px`;}return /*#__PURE__*/ _jsx(motion.div,{style:{width:\"100%\",height:\"100%\",backgroundColor:addBackground?addBackground:\"transparent\",backgroundImage:pattern,backgroundPosition:position,backgroundSize:size,backgroundRepeat:repeat,backgroundBlendMode:blendMode,borderRadius:radius,filter:filter},animate:shouldAnimate&&{backgroundPosition:backgroundPosAnimation},transition:{type:\"tween\",ease:\"linear\",duration:duration,repeat:Infinity,repeatType:\"loop\"}});};Pattern.displayName=\"Pattern\";/* Property Controls */ addPropertyControls(Pattern,{patternType:{type:ControlType.Enum,defaultValue:\"wave-lines\",options:[\"wave-lines\",\"clouds\",\"wiggle\",\"groovy\",\"plus\",\"circles\",\"rectangles\",\"lines\",\"lines-vertical\",\"diagonal\",\"diagonal-two\",\"blocks\",\"wave\",\"zigzag\",\"polka\",\"rhombus\",\"stars\",\"stars-two\",\"paper\",\"crosses\",],optionTitles:[\"Wave Lines\",\"Clouds\",\"Wiggle\",\"Groovy\",\"Plus\",\"Circles\",\"Rectangles\",\"Lines\",\"Lines Vertical\",\"Diagonal\",\"Diagonal 2\",\"Blocks\",\"Wave\",\"ZigZag\",\"Polka\",\"Rhombus\",\"Stars\",\"Stars 2\",\"Paper\",\"Crosses\",],title:\"Type\"},front:{type:ControlType.Color,title:\"Front\",defaultValue:\"#FFF\"},back:{type:ControlType.Color,title:\"Back\",defaultValue:\"#2DD\"},scale:{type:ControlType.Number,min:1,max:100,step:1,defaultValue:10},radius:{type:ControlType.Number,min:0,max:100,step:1,defaultValue:0},shouldAnimate:{type:ControlType.Boolean,title:\"Animate\",defaultValue:false,hidden(props){return props.patternType!==\"wave-lines\"&&props.patternType!==\"wiggle\"&&props.patternType!==\"clouds\"&&props.patternType!==\"stars\"&&props.patternType!==\"groovy\";}},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\",],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],defaultValue:\"left\",displaySegmentedControl:true,hidden(props){return props.patternType===\"wiggle\"||props.shouldAnimate===false;}},diagonal:{type:ControlType.Boolean,title:\"Direction\",defaultValue:true,enabledTitle:\"TL\",disabledTitle:\"BR\",hidden(props){return props.patternType!==\"wiggle\";}},duration:{type:ControlType.Number,min:0,max:50,step:.1,defaultValue:5,hidden(props){return props.shouldAnimate===false;}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Pattern\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerIntrinsicHeight\":\"200\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicWidth\":\"200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Pattern.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useRef,useEffect}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const vertexShader=`#version 300 es\n    in vec2 position;\n    out vec2 vPixelCoord;\n    uniform vec2 uResolution;\n    void main() {\n        gl_Position = vec4(position, 0.0, 1.0);\n        vPixelCoord = (vec2(position.x, -position.y) * 0.5 + 0.5) * uResolution;\n    }`;const fragmentShader=`#version 300 es\n    precision highp float;\n    in vec2 vPixelCoord;\n    out vec4 fragColor;\n    uniform float uTime;\n    uniform vec2 uResolution;\n\n    uniform vec4 uColors[16];\n    uniform float uPositions[16];\n    uniform int uColorCount;\n\n    uniform float uGrainScale;\n    uniform float uGrainSpeed;\n    uniform float uGrainStr;\n\n    uniform float uNoiseScale;\n    uniform float uNoiseSpeed;\n\n    uniform bool uPixelate;\n    uniform float uPixelScale;\n\n    vec4 colorRamp(float t) {\n        if (uColorCount == 0) return vec4(0.0);\n        if (t <= uPositions[0]) return uColors[0];\n        for (int i = 1; i < uColorCount; i++) {\n            if (t <= uPositions[i]) {\n                return mix(uColors[i-1], uColors[i], \n                    (t - uPositions[i-1]) / (uPositions[i] - uPositions[i-1]));\n            }\n        }\n        return uColors[uColorCount - 1];\n    }\n\n    vec3 linearLight(vec3 base, vec3 blend, float factor) {\n       vec3 result = base + 2.0 * (blend - 0.5);\n       return mix(base, clamp(result, 0.0, 1.0), factor);\n    }\n\n    float whiteNoise(vec2 coord, float scale, float seed) {\n        float baseScale = 1.7 / scale;\n        vec2 scaledCoord = coord * baseScale;\n        vec2 blockCoord = floor(scaledCoord);\n        vec2 wrappedCoord = vec2(mod(blockCoord.x, 16384.0), mod(blockCoord.y, 16384.0));\n        \n        vec3 p3 = fract(vec3(wrappedCoord.xyx) * vec3(0.1031, 0.1030, 0.0973));\n        p3 += dot(p3, p3.yzx + 33.33);\n        return fract((p3.x + p3.y) * p3.z + seed);\n    }\n    \n    vec4 permute(vec4 x) {\n            return mod((x * 34.0 + 1.0) * x, 289.0);\n        }\n\n        vec4 taylorInvSqrt(vec4 r) {\n            return 1.79284291400159 - 0.85373472095314 * r;\n        }\n\n        float perlin(vec3 P) {\n            vec3 Pi0 = floor(P);\n            vec3 Pi1 = Pi0 + vec3(1.0);\n            Pi0 = mod(Pi0, 289.0);\n            Pi1 = mod(Pi1, 289.0);\n            vec3 Pf0 = fract(P);\n            vec3 Pf1 = Pf0 - vec3(1.0);\n            vec4 ix = vec4(Pi0.x, Pi1.x, Pi0.x, Pi1.x);\n            vec4 iy = vec4(Pi0.yy, Pi1.yy);\n            vec4 iz0 = Pi0.zzzz;\n            vec4 iz1 = Pi1.zzzz;\n\n            vec4 ixy = permute(permute(ix) + iy);\n            vec4 ixy0 = permute(ixy + iz0);\n            vec4 ixy1 = permute(ixy + iz1);\n\n            vec4 gx0 = ixy0 / 7.0;\n            vec4 gy0 = fract(floor(gx0) / 7.0) - 0.5;\n            gx0 = fract(gx0);\n            vec4 gz0 = vec4(0.5) - abs(gx0) - abs(gy0);\n            vec4 sz0 = step(gz0, vec4(0.0));\n            gx0 -= sz0 * (step(0.0, gx0) - 0.5);\n            gy0 -= sz0 * (step(0.0, gy0) - 0.5);\n\n            vec4 gx1 = ixy1 / 7.0;\n            vec4 gy1 = fract(floor(gx1) / 7.0) - 0.5;\n            gx1 = fract(gx1);\n            vec4 gz1 = vec4(0.5) - abs(gx1) - abs(gy1);\n            vec4 sz1 = step(gz1, vec4(0.0));\n            gx1 -= sz1 * (step(0.0, gx1) - 0.5);\n            gy1 -= sz1 * (step(0.0, gy1) - 0.5);\n\n            vec3 g000 = vec3(gx0.x,gy0.x,gz0.x);\n            vec3 g100 = vec3(gx0.y,gy0.y,gz0.y);\n            vec3 g010 = vec3(gx0.z,gy0.z,gz0.z);\n            vec3 g110 = vec3(gx0.w,gy0.w,gz0.w);\n            vec3 g001 = vec3(gx1.x,gy1.x,gz1.x);\n            vec3 g101 = vec3(gx1.y,gy1.y,gz1.y);\n            vec3 g011 = vec3(gx1.z,gy1.z,gz1.z);\n            vec3 g111 = vec3(gx1.w,gy1.w,gz1.w);\n\n            vec4 norm = taylorInvSqrt(vec4(dot(g000, g000), dot(g010, g010), dot(g100, g100), dot(g110, g110)));\n            g000 *= norm.x; g010 *= norm.y; g100 *= norm.z; g110 *= norm.w;\n            norm = taylorInvSqrt(vec4(dot(g001, g001), dot(g011, g011), dot(g101, g101), dot(g111, g111)));\n            g001 *= norm.x; g011 *= norm.y; g101 *= norm.z; g111 *= norm.w;\n\n            float n000 = dot(g000, Pf0);\n            float n100 = dot(g100, vec3(Pf1.x, Pf0.yz));\n            float n010 = dot(g010, vec3(Pf0.x, Pf1.y, Pf0.z));\n            float n110 = dot(g110, vec3(Pf1.xy, Pf0.z));\n            float n001 = dot(g001, vec3(Pf0.xy, Pf1.z));\n            float n101 = dot(g101, vec3(Pf1.x, Pf0.y, Pf1.z));\n            float n011 = dot(g011, vec3(Pf0.x, Pf1.yz));\n            float n111 = dot(g111, Pf1);\n\n            vec3 fade_xyz = Pf0 * Pf0 * Pf0 * (Pf0 * (Pf0 * 6.0 - 15.0) + 10.0);\n            vec4 n_z = mix(vec4(n000, n100, n010, n110), vec4(n001, n101, n011, n111), fade_xyz.z);\n            vec2 n_yz = mix(n_z.xy, n_z.zw, fade_xyz.y);\n            float n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); \n            return 2.2 * n_xyz;\n        }\n\n    void main() {\n        vec2 coord = vPixelCoord;\n            \n        if (uPixelate) {\n            vec2 pixelSize = vec2(max(1.0, floor(uPixelScale)));\n            coord = floor(vPixelCoord / pixelSize) * pixelSize + pixelSize * 0.5;\n        }\n\n        float grainScale = uGrainScale * 0.5;\n        float grainSpeed = uGrainSpeed * 0.02;\n\n        float noiseScale = 0.002 / uNoiseScale;\n        float noiseSpeed = uNoiseSpeed * 0.1;\n        \n        float baseNoise = perlin(vec3(coord * noiseScale, uTime * noiseSpeed * 0.1)) * 0.5 + 0.5;\n        vec3 grain = vec3(whiteNoise(coord, grainScale, uTime * grainSpeed));\n        \n        fragColor = colorRamp(linearLight(vec3(baseNoise), grain, uGrainStr).r);\n    }`;function parseColor(color){const div=document.createElement(\"div\");div.style.color=color;document.body.appendChild(div);const[r,g,b,a]=getComputedStyle(div).color.match(/\\d+(\\.\\d+)?/g).map(Number);document.body.removeChild(div);return[r/255,g/255,b/255,a!==null&&a!==void 0?a:1];}const SYNC_GL=\"gl-sync\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 240\n * @framerIntrinsicHeight 240\n */export default function GPerlin(props){const canvasRef=useRef(null);const glRef=useRef(null);const propsRef=useRef(props);const[isContextLost,setIsContextLost]=useState(false);const[renderEnabled,setRenderEnabled]=useState(RenderTarget.current()!==RenderTarget.canvas);const fps=60;useEffect(()=>{propsRef.current=props;render();},[props]);const getTimestamp=()=>renderEnabled?performance.now()/1e3:0;const initWebGL=()=>{var _canvasRef_current;const gl=(_canvasRef_current=canvasRef.current)===null||_canvasRef_current===void 0?void 0:_canvasRef_current.getContext(\"webgl2\",{alpha:true});if(!gl)return null;glRef.current=gl;gl.loseContextHandler=gl.getExtension(\"WEBGL_lose_context\");const program=gl.createProgram();[gl.VERTEX_SHADER,gl.FRAGMENT_SHADER].forEach((type,i)=>{const shader=gl.createShader(type);gl.shaderSource(shader,i===0?vertexShader:fragmentShader);gl.compileShader(shader);gl.attachShader(program,shader);});gl.linkProgram(program);gl.useProgram(program);const vertices=new Float32Array([-1,-1,1,-1,1,1,-1,1]);gl.bindBuffer(gl.ARRAY_BUFFER,gl.createBuffer());gl.bufferData(gl.ARRAY_BUFFER,vertices,gl.STATIC_DRAW);const position=gl.getAttribLocation(program,\"position\");gl.enableVertexAttribArray(position);gl.vertexAttribPointer(position,2,gl.FLOAT,false,0,0);gl.enable(gl.BLEND);gl.blendFunc(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA);gl.uniformLocations={uColors:gl.getUniformLocation(program,\"uColors\"),uPositions:gl.getUniformLocation(program,\"uPositions\"),uColorCount:gl.getUniformLocation(program,\"uColorCount\"),uTime:gl.getUniformLocation(program,\"uTime\"),uResolution:gl.getUniformLocation(program,\"uResolution\"),uGrainScale:gl.getUniformLocation(program,\"uGrainScale\"),uGrainSpeed:gl.getUniformLocation(program,\"uGrainSpeed\"),uGrainStr:gl.getUniformLocation(program,\"uGrainStr\"),uNoiseScale:gl.getUniformLocation(program,\"uNoiseScale\"),uNoiseSpeed:gl.getUniformLocation(program,\"uNoiseSpeed\"),uPixelate:gl.getUniformLocation(program,\"uPixelate\"),uPixelScale:gl.getUniformLocation(program,\"uPixelScale\")};return true;};const setUniforms=props=>{if(!canvasRef.current||!glRef.current)return;const gl=glRef.current;const loc=gl.uniformLocations;const{width,height}=canvasRef.current;const sortedColors=[...props.colors].sort((a,b)=>a.position-b.position);const colors=sortedColors.map(c=>parseColor(c.color)).flat();const positions=sortedColors.map(c=>c.position);gl.uniform4fv(loc.uColors,new Float32Array(colors));gl.uniform1fv(loc.uPositions,new Float32Array(positions));gl.uniform1i(loc.uColorCount,sortedColors.length);gl.uniform1f(loc.uTime,getTimestamp());gl.uniform2f(loc.uResolution,width,height);gl.uniform1f(loc.uGrainScale,props.grainScale);gl.uniform1f(loc.uGrainSpeed,props.grainSpeed);gl.uniform1f(loc.uGrainStr,props.grainStr);gl.uniform1f(loc.uNoiseScale,props.noiseScale);gl.uniform1f(loc.uNoiseSpeed,props.noiseSpeed);gl.uniform1i(loc.uPixelate,props.pixelate);gl.uniform1f(loc.uPixelScale,props.pixelScale);};const render=()=>{if(!glRef.current||isContextLost)return;setUniforms(propsRef.current);glRef.current.drawArrays(glRef.current.TRIANGLE_FAN,0,4);};useEffect(()=>{if(!initWebGL())return;const canvas=canvasRef.current;const gl=glRef.current;const loseContextHandler=gl.loseContextHandler;const resizeObserver=new ResizeObserver(()=>{if(!canvas||!gl)return;canvas.width=canvas.clientWidth;canvas.height=canvas.clientHeight;gl.viewport(0,0,canvas.width,canvas.height);render();});const handleContextLost=e=>{e.preventDefault();setIsContextLost(true);setRenderEnabled(false);};const handleContextRestored=()=>{setIsContextLost(false);initWebGL();setRenderEnabled(RenderTarget.current()!==RenderTarget.canvas);};const handleSync=e=>{var _e_data;if(((_e_data=e.data)===null||_e_data===void 0?void 0:_e_data.type)===SYNC_GL){loseContextHandler===null||loseContextHandler===void 0?void 0:loseContextHandler[e.data.action===\"restore\"?\"restoreContext\":\"loseContext\"]();}};resizeObserver.observe(canvas);canvas.addEventListener(\"webglcontextlost\",handleContextLost);canvas.addEventListener(\"webglcontextrestored\",handleContextRestored);window.addEventListener(\"message\",handleSync);const timeoutId=setInterval(()=>{if(renderEnabled)render();},1e3/fps);return()=>{var _gl_loseContextHandler;resizeObserver.disconnect();canvas.removeEventListener(\"webglcontextlost\",handleContextLost);canvas.removeEventListener(\"webglcontextrestored\",handleContextRestored);window.removeEventListener(\"message\",handleSync);clearInterval(timeoutId);(_gl_loseContextHandler=gl.loseContextHandler)===null||_gl_loseContextHandler===void 0?void 0:_gl_loseContextHandler.loseContext();window.postMessage({type:SYNC_GL,action:\"restore\"},\"*\");};},[]);return /*#__PURE__*/_jsxs(_Fragment,{children:[isContextLost&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"center\",alignItems:\"center\",textAlign:\"center\",background:\"#9595951A\",border:\"1px solid #95959526\",borderRadius:6,height:\"100%\",padding:15,fontSize:11,color:\"#a5a5a5\"},children:[\"Too many WebGL components. \",/*#__PURE__*/_jsx(\"br\",{}),\"Please delete some of them\"]}),/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{width:\"100%\",height:\"100%\",display:!isContextLost?\"block\":\"none\"}})]});}GPerlin.displayName=\"Sol: Perlin Gradient\";addPropertyControls(GPerlin,{colors:{type:ControlType.Array,title:\"Colors\",control:{type:ControlType.Object,title:\"Color\",controls:{color:{type:ControlType.Color,title:\"Color\"},position:{type:ControlType.Number,title:\"Position\",defaultValue:0,min:0,max:1,step:.01}}},defaultValue:[{color:\"#ffb8c8\",position:.25},{color:\"#af3db3\",position:.4},{color:\"#42006b\",position:.6},{color:\"#1d0156\",position:.75}],description:\" \"},grainScale:{type:ControlType.Number,title:\"Grain\",defaultValue:10,min:.1,max:100,step:.1},grainSpeed:{type:ControlType.Number,title:\"Speed\",defaultValue:25,min:0,max:100},grainStr:{type:ControlType.Number,title:\"Strength\",defaultValue:.1,min:0,max:1,step:.01,description:\" \"},noiseScale:{type:ControlType.Number,title:\"Scale\",defaultValue:.1,min:.1,max:10,step:.01},noiseSpeed:{type:ControlType.Number,title:\"Speed\",defaultValue:0,min:-25,max:25,step:.1,description:\" \"},pixelate:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Pixelate\",options:[0,1],optionTitles:[\"Off\",\"On\"],defaultValue:1},pixelScale:{type:ControlType.Number,title:\"Scale\",defaultValue:22,max:100,min:1,step:1,hidden:props=>props.pixelate===0}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"GPerlin\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"240\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"240\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./GPerlin.map","// Generated by Framer (9805f18)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Pattern from\"https://framerusercontent.com/modules/2rGdY3xNPdGAC1LGc2Ew/gQcpGdBaDKqalAQX5HN3/Pattern.js\";import SolPerlinGradient from\"https://framerusercontent.com/modules/3m9J2GrlDTET4CxHO261/2MMTiEoPyAIDYQXqF8sU/GPerlin.js\";const SolPerlinGradientFonts=getFonts(SolPerlinGradient);const PatternFonts=getFonts(Pattern);const cycleOrder=[\"HU1pDVV4g\",\"LAMJHq46T\"];const serializationHash=\"framer-GjobW\";const variantClassNames={HU1pDVV4g:\"framer-v-ckl6tv\",LAMJHq46T:\"framer-v-1t4r6be\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={default:\"HU1pDVV4g\",rounded:\"LAMJHq46T\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"HU1pDVV4g\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"HU1pDVV4g\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-ckl6tv\",className,classNames),\"data-framer-name\":\"default\",layoutDependency:layoutDependency,layoutId:\"HU1pDVV4g\",ref:refBinding,style:{borderBottomLeftRadius:0,borderBottomRightRadius:0,...style},variants:{LAMJHq46T:{borderBottomLeftRadius:50,borderBottomRightRadius:50}},...addPropertyOverrides({LAMJHq46T:{\"data-framer-name\":\"rounded\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1e0hye9-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"kIyAPcULZ-container\",nodeId:\"kIyAPcULZ\",rendersWithMotion:true,scopeId:\"AcdiUEjmF\",children:/*#__PURE__*/_jsx(SolPerlinGradient,{colors:[{color:\"rgb(230, 230, 230)\",position:.25},{color:\"rgb(212, 212, 212)\",position:.4},{color:\"rgb(237, 237, 237)\",position:.6},{color:\"rgb(191, 191, 191)\",position:.75}],grainScale:10,grainSpeed:1,grainStr:.1,height:\"100%\",id:\"kIyAPcULZ\",layoutId:\"kIyAPcULZ\",noiseScale:3.4,noiseSpeed:0,pixelate:1,pixelScale:25,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-okk54k-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"ca452yJ4r-container\",nodeId:\"ca452yJ4r\",rendersWithMotion:true,scopeId:\"AcdiUEjmF\",children:/*#__PURE__*/_jsx(Pattern,{back:\"rgba(255, 255, 255, 0)\",diagonal:true,direction:\"left\",duration:5,front:\"rgb(255, 255, 255)\",height:\"100%\",id:\"ca452yJ4r\",layoutId:\"ca452yJ4r\",patternType:\"crosses\",radius:0,scale:5,shouldAnimate:false,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-GjobW.framer-1tz11fm, .framer-GjobW .framer-1tz11fm { display: block; }\",\".framer-GjobW.framer-ckl6tv { height: 1000px; overflow: hidden; position: relative; width: 1750px; }\",\".framer-GjobW .framer-1e0hye9-container, .framer-GjobW .framer-okk54k-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; }\",\".framer-GjobW.framer-v-1t4r6be.framer-ckl6tv { will-change: var(--framer-will-change-override, transform); }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1750\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"LAMJHq46T\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerAcdiUEjmF=withCSS(Component,css,\"framer-GjobW\");export default FramerAcdiUEjmF;FramerAcdiUEjmF.displayName=\"hero background\";FramerAcdiUEjmF.defaultProps={height:1e3,width:1750};addPropertyControls(FramerAcdiUEjmF,{variant:{options:[\"HU1pDVV4g\",\"LAMJHq46T\"],optionTitles:[\"default\",\"rounded\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerAcdiUEjmF,[{explicitInter:true,fonts:[]},...SolPerlinGradientFonts,...PatternFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerAcdiUEjmF\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"LAMJHq46T\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"1000\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1750\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AcdiUEjmF.map","// Interactive image comparison component with circular mask that follows cursor\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useCallback,useRef,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";/**\n * Interactive Image Comparison with Circular Mask\n *\n * A component that reveals the top image through a circular mask that follows the cursor.\n *\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ImageComparisonMask(props){const{bottomImage={src:\"https://framerusercontent.com/images/GfGkADagM4KEibNcIiRUWlfrR0.jpg\",alt:\"Bottom image\"},topImage={src:\"https://framerusercontent.com/images/aNsAT3jCvt4zglbWCUoFe33Q.jpg\",alt:\"Top image\"},maskSize=150,feathering=20,imageFit=\"cover\",showCursor=true,strokeWidth=2,strokeColor=\"#FFFFFF\"}=props;const containerRef=useRef(null);const[mousePosition,setMousePosition]=useState({x:50,y:50});const[isHovering,setIsHovering]=useState(false);const isStatic=useIsStaticRenderer();const handleMouseMove=useCallback(e=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();const x=(e.clientX-rect.left)/rect.width*100;const y=(e.clientY-rect.top)/rect.height*100;startTransition(()=>{setMousePosition({x:Math.max(0,Math.min(100,x)),y:Math.max(0,Math.min(100,y))});});},[]);const handleMouseEnter=useCallback(()=>{startTransition(()=>setIsHovering(true));},[]);const handleMouseLeave=useCallback(()=>{startTransition(()=>setIsHovering(false));},[]);// Create the mask with feathering\nconst maskId=`mask-${Math.random().toString(36).substr(2,9)}`;const gradientId=`gradient-${Math.random().toString(36).substr(2,9)}`;const maskRadius=maskSize/2;const featherRadius=maskRadius+feathering;return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",cursor:isStatic?\"default\":showCursor?\"none\":\"default\"},onMouseMove:isStatic?undefined:handleMouseMove,onMouseEnter:isStatic?undefined:handleMouseEnter,onMouseLeave:isStatic?undefined:handleMouseLeave,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",backgroundImage:`url(${bottomImage.src})`,backgroundSize:imageFit===\"fill\"?\"100% 100%\":imageFit,backgroundPosition:\"center\"},\"aria-label\":bottomImage.alt,role:\"img\"}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",backgroundImage:`url(${topImage.src})`,backgroundSize:imageFit===\"fill\"?\"100% 100%\":imageFit,backgroundPosition:\"center\",opacity:isStatic?.5:isHovering?1:0,transition:isStatic?\"none\":\"opacity 0.3s ease\",maskImage:isStatic?\"radial-gradient(circle at 50% 50%, black 75px, transparent 95px)\":`radial-gradient(circle at ${mousePosition.x}% ${mousePosition.y}%, black ${maskRadius}px, transparent ${featherRadius}px)`,WebkitMaskImage:isStatic?\"radial-gradient(circle at 50% 50%, black 75px, transparent 95px)\":`radial-gradient(circle at ${mousePosition.x}% ${mousePosition.y}%, black ${maskRadius}px, transparent ${featherRadius}px)`},\"aria-label\":topImage.alt,role:\"img\"}),!isStatic&&isHovering&&showCursor&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:`${mousePosition.x}%`,top:`${mousePosition.y}%`,width:`${maskSize}px`,height:`${maskSize}px`,border:`${strokeWidth}px solid ${strokeColor}`,opacity:.8,borderRadius:\"50%\",transform:\"translate(-50%, -50%)\",pointerEvents:\"none\",boxShadow:\"0 0 0 1px rgba(0, 0, 0, 0.3)\",transition:\"width 0.2s ease, height 0.2s ease\"}}),isStatic&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:16,left:16,right:16,padding:\"12px 16px\",backgroundColor:\"rgba(0, 0, 0, 0.8)\",color:\"white\",borderRadius:\"8px\",fontSize:\"14px\",textAlign:\"center\",fontFamily:\"system-ui, -apple-system, sans-serif\"},children:\"Move your cursor over the image to reveal the top layer\"})]});}addPropertyControls(ImageComparisonMask,{bottomImage:{type:ControlType.ResponsiveImage,title:\"Bottom Image\"},topImage:{type:ControlType.ResponsiveImage,title:\"Top Image\"},maskSize:{type:ControlType.Number,title:\"Mask Size\",defaultValue:150,min:50,max:400,step:10,unit:\"px\"},feathering:{type:ControlType.Number,title:\"Feathering\",defaultValue:20,min:0,max:100,step:5,unit:\"px\"},imageFit:{type:ControlType.Enum,title:\"Image Fit\",options:[\"cover\",\"contain\",\"fill\"],optionTitles:[\"Cover\",\"Contain\",\"Fill\"],defaultValue:\"cover\",displaySegmentedControl:true},showCursor:{type:ControlType.Boolean,title:\"Show Cursor\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},strokeWidth:{type:ControlType.Number,title:\"Stroke Width\",defaultValue:2,min:1,max:10,step:1,unit:\"px\",hidden:({showCursor})=>!showCursor},strokeColor:{type:ControlType.Color,title:\"Stroke Color\",defaultValue:\"#FFFFFF\",hidden:({showCursor})=>!showCursor}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ImageComparisonMask\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"400\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicWidth\":\"600\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ImageComparisonMask.map"],"mappings":"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"}