{"version":3,"file":"shared-lib.XVNF0bKB.mjs","names":["useMemo","useRef","useState","_Fragment","React.useContext","React.useMemo","React.Fragment","React.forwardRef","React.useRef","React.useId"],"sources":["https:/framerusercontent.com/modules/5dCWb80pMX3rkZ6mTvF6/rPe7prLpTtzjXMR9Lynw/FollowEyes.js","https:/framerusercontent.com/modules/KmEHrjP4KmjIWod3ccov/jAKWOBGRVZnod21NL5zn/XGzTeFk4b.js","https:/framerusercontent.com/modules/tPXIbYbVASVTEwYk5HCm/RaUqRDIG278IE5toH6Tn/siteMetadata.js"],"sourcesContent":["// Follow eyes that follow the mouse cursor with smooth pupil tracking\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useState,useRef,startTransition,useMemo}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion}from\"framer-motion\";/**\n * Follow Eyes\n * \n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n * \n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function FollowEyes(props){const{eyeColor,pupilColor,eyeSize,pupilSize:rawPupilSize,eyeSpacing,trackingSpeed,trackingRange,eyeCount,enableBlinking,blinkInterval,style}=props;const pupilSize=useMemo(()=>Math.min(rawPupilSize,eyeSize*.8),[rawPupilSize,eyeSize]);const containerRef=useRef(null);const[leftPupilPos,setLeftPupilPos]=useState({x:0,y:0});const[rightPupilPos,setRightPupilPos]=useState({x:0,y:0});const[centerPupilPos,setCenterPupilPos]=useState({x:0,y:0});const[isBlinking,setIsBlinking]=useState(false);const isStatic=useIsStaticRenderer();const maxDistance=useMemo(()=>(eyeSize-pupilSize)/2*(trackingRange/100),[eyeSize,pupilSize,trackingRange]);useEffect(()=>{if(isStatic||!enableBlinking)return;const blinkDuration=200;const interval=setInterval(()=>{startTransition(()=>setIsBlinking(true));setTimeout(()=>{startTransition(()=>setIsBlinking(false));},blinkDuration);},blinkInterval);return()=>clearInterval(interval);},[isStatic,enableBlinking,blinkInterval]);useEffect(()=>{if(isStatic)return;const handleMouseMove=e=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();const centerX=rect.left+rect.width/2;const centerY=rect.top+rect.height/2;const mouseX=e.clientX-centerX;const mouseY=e.clientY-centerY;if(eyeCount===\"one\"){const distance=Math.sqrt(mouseX*mouseX+mouseY*mouseY);if(distance===0){startTransition(()=>setCenterPupilPos({x:0,y:0}));return;}const clampedDistance=Math.min(distance,maxDistance);const angle=Math.atan2(mouseY,mouseX);startTransition(()=>{setCenterPupilPos({x:Math.cos(angle)*clampedDistance,y:Math.sin(angle)*clampedDistance});});}else{const leftEyeOffsetX=-eyeSpacing/2;const rightEyeOffsetX=eyeSpacing/2;const calculatePupilPosition=eyeOffsetX=>{const relativeX=mouseX-eyeOffsetX;const relativeY=mouseY;const distance=Math.sqrt(relativeX*relativeX+relativeY*relativeY);if(distance===0)return{x:0,y:0};const clampedDistance=Math.min(distance,maxDistance);const angle=Math.atan2(relativeY,relativeX);return{x:Math.cos(angle)*clampedDistance,y:Math.sin(angle)*clampedDistance};};const leftPos=calculatePupilPosition(leftEyeOffsetX);const rightPos=calculatePupilPosition(rightEyeOffsetX);startTransition(()=>{setLeftPupilPos(leftPos);setRightPupilPos(rightPos);});}};window.addEventListener(\"mousemove\",handleMouseMove);return()=>window.removeEventListener(\"mousemove\",handleMouseMove);},[isStatic,eyeSpacing,maxDistance,eyeCount]);const containerWidth=useMemo(()=>eyeCount===\"one\"?eyeSize:eyeSize*2+eyeSpacing,[eyeCount,eyeSize,eyeSpacing]);return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{...style,backgroundColor:\"transparent\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:eyeCount===\"two\"?eyeSpacing:0,overflow:\"visible\",position:\"relative\",width:containerWidth,height:eyeSize},children:eyeCount===\"one\"?/*#__PURE__*/_jsx(\"div\",{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",backgroundColor:eyeColor,position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",transformOrigin:\"center\"},animate:{scaleY:isBlinking?.3:1},transition:{duration:.1,ease:\"easeInOut\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:pupilSize,height:pupilSize,borderRadius:\"50%\",backgroundColor:pupilColor,opacity:isBlinking?0:1},animate:{x:centerPupilPos.x,y:centerPupilPos.y},transition:{type:\"spring\",stiffness:trackingSpeed,damping:20}})})}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",backgroundColor:eyeColor,position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",transformOrigin:\"center\"},animate:{scaleY:isBlinking?.3:1},transition:{duration:.1,ease:\"easeInOut\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:pupilSize,height:pupilSize,borderRadius:\"50%\",backgroundColor:pupilColor,opacity:isBlinking?0:1},animate:{x:leftPupilPos.x,y:leftPupilPos.y},transition:{type:\"spring\",stiffness:trackingSpeed,damping:20}})})}),/*#__PURE__*/_jsx(\"div\",{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:eyeSize,height:eyeSize,borderRadius:\"50%\",backgroundColor:eyeColor,position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",transformOrigin:\"center\"},animate:{scaleY:isBlinking?.3:1},transition:{duration:.1,ease:\"easeInOut\"},children:/*#__PURE__*/_jsx(motion.div,{style:{width:pupilSize,height:pupilSize,borderRadius:\"50%\",backgroundColor:pupilColor,opacity:isBlinking?0:1},animate:{x:rightPupilPos.x,y:rightPupilPos.y},transition:{type:\"spring\",stiffness:trackingSpeed,damping:20}})})})]})});}addPropertyControls(FollowEyes,{eyeCount:{type:ControlType.Enum,title:\"Eye Count\",options:[\"one\",\"two\"],optionTitles:[\"One\",\"Two\"],defaultValue:\"two\",displaySegmentedControl:true,description:\"Number of eyes (1 or 2).\"},eyeColor:{type:ControlType.Color,title:\"Eye Color\",defaultValue:\"#FFFFFF\",description:\"Color of the eye background.\"},pupilColor:{type:ControlType.Color,title:\"Pupil Color\",defaultValue:\"#000000\",description:\"Color of the pupil.\"},eyeSize:{type:ControlType.Number,title:\"Eye Size\",defaultValue:120,min:10,max:300,step:1,unit:\"px\",description:\"Overall size of the eye shape in pixels (px).\"},pupilSize:{type:ControlType.Number,title:\"Pupil Size\",defaultValue:40,min:10,max:100,step:1,unit:\"px\",description:\"Size of the pupil inside the eye in pixels (px).\"},eyeSpacing:{type:ControlType.Number,title:\"Eye Gap\",defaultValue:40,min:0,max:200,step:1,unit:\"px\",hidden:({eyeCount})=>eyeCount===\"one\",description:\"Space between the two eyes in pixels (px) when using 2 eyes.\"},trackingSpeed:{type:ControlType.Number,title:\"Speed\",defaultValue:150,min:50,max:500,step:10,unit:\"stiffness\",description:\"How quickly the eyes follow the cursor (higher stiffness = faster, unitless).\"},trackingRange:{type:ControlType.Number,title:\"Range\",defaultValue:80,min:0,max:100,step:5,unit:\"%\",description:\"How far the pupils can move inside the eye as a percentage (%).\"},enableBlinking:{type:ControlType.Boolean,title:\"Blinking\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Turn blinking animation on or off.\"},blinkInterval:{type:ControlType.Number,title:\"Blink Interval\",defaultValue:3e3,min:500,max:1e4,step:100,unit:\"ms\",hidden:({enableBlinking})=>!enableBlinking,description:\"How often the eye blinks in milliseconds (ms).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FollowEyes\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"400\",\"framerIntrinsicHeight\":\"200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FollowEyes.map","// Generated by Framer (8c7926c)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const enabledGestures={zwbITmNUv:{pressed:true}};const cycleOrder=[\"zwbITmNUv\",\"lr3xjq7vB\"];const serializationHash=\"framer-m9ocj\";const variantClassNames={lr3xjq7vB:\"framer-v-toeork\",zwbITmNUv:\"framer-v-1ld7c5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?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={\"Hover 1\":\"lr3xjq7vB\",Default:\"zwbITmNUv\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"zwbITmNUv\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"zwbITmNUv\",enabledGestures,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-1ld7c5\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"zwbITmNUv\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(0, 0, 0, 0)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-482c91e3-1ed9-4b83-80c4-732b4afd1875, rgb(28, 30, 30))\",borderBottomLeftRadius:259,borderBottomRightRadius:259,borderTopLeftRadius:259,borderTopRightRadius:259,...style},variants:{lr3xjq7vB:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgba(34, 34, 34, 0.2)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgb(218, 255, 54)\"}},...addPropertyOverrides({\"zwbITmNUv-pressed\":{\"data-framer-name\":undefined},lr3xjq7vB:{\"data-border\":true,\"data-framer-name\":\"Hover 1\"}},baseVariant,gestureVariant)})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-m9ocj.framer-19aq8cg, .framer-m9ocj .framer-19aq8cg { display: block; }\",\".framer-m9ocj.framer-1ld7c5 { cursor: pointer; height: 16px; overflow: hidden; position: relative; width: 16px; will-change: var(--framer-will-change-override, transform); }\",\".framer-m9ocj.framer-v-toeork.framer-1ld7c5 { cursor: unset; height: 43px; mix-blend-mode: difference; width: 43px; }\",\".framer-m9ocj.framer-v-1ld7c5.pressed.framer-1ld7c5 { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 12px); width: 12px; }\",'.framer-m9ocj[data-border=\"true\"]::after, .framer-m9ocj [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 16\n * @framerIntrinsicWidth 16\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"lr3xjq7vB\":{\"layout\":[\"fixed\",\"fixed\"]},\"nSjQFCZA4\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerXGzTeFk4b=withCSS(Component,css,\"framer-m9ocj\");export default FramerXGzTeFk4b;FramerXGzTeFk4b.displayName=\"Navigation/Circle Cursor\";FramerXGzTeFk4b.defaultProps={height:16,width:16};addPropertyControls(FramerXGzTeFk4b,{variant:{options:[\"zwbITmNUv\",\"lr3xjq7vB\"],optionTitles:[\"Default\",\"Hover 1\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerXGzTeFk4b,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerXGzTeFk4b\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"16\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"lr3xjq7vB\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"nSjQFCZA4\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"16\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./XGzTeFk4b.map","// Generated by Framer (560da95)\nexport default function metadata(params,activeLocale){return{description:\"A graphic design portfolio by Madison Liang, blending strategy, storytelling, and playful visuals across branding, digital, motion, and experiential design.\",favicon:\"https://framerusercontent.com/assets/tOweN8uuoGL0sMtbNYdBHe0Gw8A.svg\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/8zDplThJRnEKcWz8UdLd3g5J4.jpg\",title:\"Madison's Portfolio\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}