{"version":3,"file":"shared-lib.Beovcabb.mjs","names":["useRef","useMemo"],"sources":["https:/framerusercontent.com/modules/P3S2M04Yg53AO5F51mO2/pzJl44uxe09OYFf1Kkst/MagneticHover_Prod.js","https:/framerusercontent.com/modules/noAkR8GVW7WOmpUuM8oH/zeEyWizO2HsqmfJkBlti/TMsdpx3vI.js","https:/framerusercontent.com/modules/1cf5FG4NCHs2aTyPMcU1/E67NPto7ku6dN4JTMhT6/siteMetadata.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useRef,useMemo}from\"react\";import{useMotionValue,useSpring,motion}from\"framer-motion\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n */export default function MagneticHover(props){const{distance,smoothing,hoverArea,enabled}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const id=generateInstanceId();const transition={damping:100,stiffness:mapRange(smoothing,0,100,2e3,50)};const mouseX=useMotionValue(0);const mouseY=useMotionValue(0);const x=useMotionValue(0);const y=useMotionValue(0);const springX=useSpring(x,transition);const springY=useSpring(y,transition);const scale=useMotionValue(1);const springScale=useSpring(scale,transition);const ref=useRef(null);const containerRef=useRef(null);const parentRef=useRef(null);const isHoveringRef=useRef(false);const transformRef=useRef(null);const motionTransformRef=useRef(null);const styleRef=useRef(null);const hasSpringRef=useRef(smoothing!==0);const previousXRef=useRef(null);const previousYRef=useRef(null);const previousChildrenXRef=useRef(null);const previousChildrenYRef=useRef(null);const previousChildrenScaleRef=useRef(null);const previousStyleTransformRef=useRef(null);const previousChildrenStyleTransformsRef=useRef({});useEffect(()=>{const unsubscribeX=mouseX.onChange(v=>x.set(enabled?v:0));const unsubscribeY=mouseY.onChange(v=>y.set(enabled?v:0));return()=>{unsubscribeX();unsubscribeY();};},[enabled,mouseX,mouseY,x,y]);useEffect(()=>{x.set(enabled?mouseX.get():0);y.set(enabled?mouseY.get():0);if(!enabled){scale.set(1);}else if(isHoveringRef.current&&props.children){scale.set(props.children.scale);}},[enabled]);useEffect(()=>{hasSpringRef.current=smoothing!==0;},[smoothing]);useEffect(()=>{let animationFrameId;const updateTransform=()=>{if(isCanvas){return;}animationFrameId=requestAnimationFrame(updateTransform);if(!parentRef.current||!styleRef.current){return;}const xValue=hasSpringRef.current?springX.get():x.get();const yValue=hasSpringRef.current?springY.get():y.get();const computedStyle=window.getComputedStyle(parentRef.current);const parentTransform=calculateTransform(parentRef.current,computedStyle,xValue*distance,yValue*distance,1,previousXRef.current*distance,previousYRef.current*distance,1,previousStyleTransformRef.current);// Store parent's style transform\npreviousStyleTransformRef.current=parentRef.current.style.transform;// Handle children transforms\nlet childrenStyles=\"\";if(props.children){const children=parentRef.current.children;const scaleValue=hasSpringRef.current?springScale.get():scale.get();const childrenXValue=xValue*props.children.distance;const childrenYValue=yValue*props.children.distance;for(let i=0;i<children.length;i++){const child=children[i];if(child===containerRef.current){continue;}const childComputedStyle=window.getComputedStyle(child);const childTransform=calculateTransform(child,childComputedStyle,childrenXValue,childrenYValue,scaleValue,previousChildrenXRef.current,previousChildrenYRef.current,previousChildrenScaleRef.current,previousChildrenStyleTransformsRef.current[i]);// Store child's style transform\npreviousChildrenStyleTransformsRef.current[i]=child.style.transform;childrenStyles+=`\n\t\t\t\t\t\t[data-magnetichover=\"${id}\"] > :nth-child(${i+1}) { \n\t\t\t\t\t\t\ttransform: ${childTransform} !important \n\t\t\t\t\t\t}\n\t\t\t\t\t`;}previousChildrenXRef.current=childrenXValue;previousChildrenYRef.current=childrenYValue;previousChildrenScaleRef.current=scaleValue;}transformRef.current=parentTransform;styleRef.current.textContent=`\n\t\t\t\t[data-magnetichover=\"${id}\"] { transform: ${parentTransform} !important }\n\t\t\t\t${childrenStyles}\n\t\t\t`;previousXRef.current=xValue;previousYRef.current=yValue;};if(ref.current){const container=ref.current.parentElement;if(container){containerRef.current=container;const parent=container.parentElement;if(parent){parentRef.current=parent;parent.setAttribute(\"data-magnetichover\",id);motionTransformRef.current=motion(parent,\"transform\");}}}// Start the animation loop\nupdateTransform();// Cleanup function\nreturn()=>{if(animationFrameId){cancelAnimationFrame(animationFrameId);}};},[props.children]);useEffect(()=>{const handleMouseMove=event=>{if(!parentRef.current){return;}const element=parentRef.current;const rect=element.getBoundingClientRect();const mouseXPos=event.clientX;const mouseYPos=event.clientY;const isHovering=mouseXPos>=rect.left-hoverArea&&mouseXPos<=rect.right+hoverArea&&mouseYPos>=rect.top-hoverArea&&mouseYPos<=rect.bottom+hoverArea;isHoveringRef.current=isHovering;if(isHovering){const displacementX=mouseXPos-(rect.left+rect.width/2);const displacementY=mouseYPos-(rect.top+rect.height/2);const normalizedX=displacementX/(rect.width/2);const normalizedY=displacementY/(rect.height/2);mouseX.set(normalizedX);mouseY.set(normalizedY);scale.set(enabled&&props.children?props.children.scale:1);}else{mouseX.set(0);mouseY.set(0);scale.set(1);}};window.addEventListener(\"mousemove\",handleMouseMove);return()=>window.removeEventListener(\"mousemove\",handleMouseMove);},[distance,x,y,transition,enabled,props.children]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style},children:/*#__PURE__*/_jsx(\"style\",{ref:styleRef})});}MagneticHover.displayName=\"Magnetic Hover\";addPropertyControls(MagneticHover,{enabled:{type:ControlType.Boolean,defaultValue:true},distance:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>!props.enabled},hoverArea:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>!props.enabled},children:{type:ControlType.Object,optional:true,controls:{distance:{type:ControlType.Number,defaultValue:10,min:0,step:1},scale:{type:ControlType.Number,defaultValue:1,min:0,step:.01}},hidden:props=>!props.enabled},smoothing:{type:ControlType.Number,defaultValue:50,min:0,max:100,step:1,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});const CHARACTERS=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";function generateInstanceId(){const id=useMemo(()=>{let result=\"\";for(let i=0;i<13;i++){result+=CHARACTERS.charAt(Math.floor(Math.random()*CHARACTERS.length));}return result;},[]);return id;}function mapRange(value,fromLow,fromHigh,toLow,toHigh){if(fromLow===fromHigh){return toLow;}const percentage=(value-fromLow)/(fromHigh-fromLow);return toLow+percentage*(toHigh-toLow);}function calculateTransform(element,computedStyle,xValue,yValue,scale=1,previousX,previousY,previousScale,previousStyleTransform){xValue=xValue||0;yValue=yValue||0;previousX=previousX||0;previousY=previousY||0;scale=scale||1;previousScale=previousScale||1;// Get transform\nconst computedTransform=computedStyle.transform;const styleTransform=element.style.transform;// Subtract previous values from current values for a single transform\nconst finalX=xValue-previousX;const finalY=yValue-previousY;const finalScale=scale/(previousScale||1)// Prevent division by zero\n;const translateTransform=`translate(${finalX.toFixed(3)}px, ${finalY.toFixed(3)}px)`;const transformWithScale=scale!==1?`${translateTransform} scale(${finalScale})`:translateTransform;let transform=transformWithScale;if(styleTransform&&styleTransform!==\"none\"){if(previousStyleTransform&&previousStyleTransform!==\"none\"){transform=`${transformWithScale} ${invertTransform(previousStyleTransform)} ${styleTransform}`;}else{transform=`${transformWithScale} ${styleTransform}`;}}return computedTransform&&computedTransform!==\"none\"?`${transform} ${computedTransform}`:transform;}function invertTransform(transformString){const transforms=transformString.match(/\\w+\\([^)]+\\)/g)||[];const invertedTransforms=transforms.reverse().map(transform=>{const[func,valuesString]=transform.match(/(\\w+)\\(([^)]+)\\)/).slice(1);const values=valuesString.split(\",\").map(v=>v.trim());const invertNumber=v=>{const[_,sign,num,unit]=v.match(/^(-?)(\\d*\\.?\\d+)(\\D*)$/);return`${sign?\"\":\"-\"}${num}${unit}`;};switch(func.toLowerCase()){case\"translate\":case\"translate3d\":case\"translatex\":case\"translatey\":case\"translatez\":return`${func}(${values.map(invertNumber).join(\", \")})`;case\"scale\":case\"scale3d\":return`${func}(${values.map(v=>1/parseFloat(v)).join(\", \")})`;case\"scalex\":case\"scaley\":case\"scalez\":return`${func}(${1/parseFloat(values[0])})`;case\"rotate\":case\"rotatex\":case\"rotatey\":case\"rotatez\":return`${func}(${invertNumber(values[0])})`;case\"rotate3d\":const rotateValues=values.map(parseFloat);return`${func}(${rotateValues[0]}, ${rotateValues[1]}, ${rotateValues[2]}, ${invertNumber(values[3])})`;case\"skew\":case\"skewx\":case\"skewy\":return`${func}(${values.map(invertNumber).join(\", \")})`;case\"matrix\":case\"matrix3d\":console.warn(`Inverting ${func} is not supported. Returning original.`);return transform;default:console.warn(`Unknown transform function: ${func}. Returning original.`);return transform;}});return invertedTransforms.join(\" \");}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"MagneticHover\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MagneticHover_Prod.map","// Generated by Framer (504870a)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Satoshi-light\",\"FS;Satoshi-regular\",\"FS;Satoshi-italic\",\"FS;Satoshi-light italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Satoshi\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Satoshi\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/D7WD5OXZFWQ5T76HSPWAC7MNKAJXE2YG/LUGNSPO5YC34ABNB2O6K7AFDSOJZT56V/WNDVG7O66ENLOD43GS7FBUCC4KMT5OM2.woff2\",weight:\"300\"},{cssFamilyName:\"Satoshi\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Satoshi\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/TTX2Z3BF3P6Y5BQT3IV2VNOK6FL22KUT/7QYRJOI3JIMYHGY6CH7SOIFRQLZOLNJ6/KFIAZD4RUMEZIYV6FQ3T3GP5PDBDB6JY.woff2\",weight:\"400\"},{cssFamilyName:\"Satoshi\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Satoshi\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/MPIFA4B3XXRNY2MJDGP6GOOOAF6EOCLO/W5E4ZFYPJ3V6JKMBGHB6YMITK6EWS2XA/QOMBWPST76ICDYF6WOBS7SQ7RBT67QW2.woff2\",weight:\"400\"},{cssFamilyName:\"Satoshi\",source:\"fontshare\",style:\"italic\",uiFamilyName:\"Satoshi\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/BRQAKSEW34X5RMZXKNWSVNXMNXSLSG6X/DOBF42XRXCZ2WDWJNNFFNBHBHYFWLRQD/MVBFGLEMN2LQF4RKXAFO4YZFKXTEZ7FQ.woff2\",weight:\"300\"}]}];export const css=['.framer-GVM6d .framer-styles-preset-m0ld5e:not(.rich-text-wrapper), .framer-GVM6d .framer-styles-preset-m0ld5e.rich-text-wrapper p { --framer-font-family: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-family-italic: \"Satoshi\", \"Satoshi Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv09\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 300; --framer-font-weight-bold: 400; --framer-font-weight-bold-italic: 400; --framer-font-weight-italic: 300; --framer-letter-spacing: -0.02em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-3ea0e5a8-876d-4a83-aa4a-78a74b64c168, #262626); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-GVM6d\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (31f1c56)\nexport default function metadata(params,activeLocale){return{description:\"Brand & digital designer crafting visual identities, websites, and motion for modern companies. 5+ years of work across branding, UI/UX, motion, print, and digital design (including a +62% lead increase for Aroma Trend).\",favicon:\"https://framerusercontent.com/assets/A1xRBZMKw2RYuPcK9vSn4BbkvQ.png\",robots:\"max-image-preview:large\",title:\"Rafał Madaj – Brand & Digital Designer\"};}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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"}