{"version":3,"file":"shared-lib.CXZssivK.mjs","names":["React.useRef","React.useState"],"sources":["https:/framerusercontent.com/modules/jHhlldbVFxIHZY6xRjAR/DehOwB1YUvcoYeXjUfe2/FloatingNavigation.js","https:/framerusercontent.com/modules/la4mbbKPrzyjv0zUaFOE/hLkD3rGHJtxq3kO8pX0E/siteMetadata.js"],"sourcesContent":["/**\n * Floating Navigation\n *\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight fixed\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";export default function FloatingNavigation(props){const{selectedLabel=\"Selected Works\",aboutLabel=\"About\",selectedLink=\"/projects\",homeLink=\"/\",aboutLink=\"/about\",selectedBackground=\"#333333\",selectedTextColor=\"#FFFFFF\",aboutBackground=\"#333333\",aboutTextColor=\"#FFFFFF\",glassColor=\"rgba(208, 208, 208, 0.35)\",glassBlur=20,iconColor=\"#0034EE\",iconLightColor=\"#FAFAFA\",fontFamily=\"Helvetica Neue\",fontSize=17,fontWeight=500,gap=5,style}=props;const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;const openLink=link=>{if(!link||isOnCanvas)return;window.location.href=link;};const textStyle={fontFamily,fontSize,fontWeight,lineHeight:\"1\",letterSpacing:\"-0.01em\",whiteSpace:\"nowrap\"};return /*#__PURE__*/_jsx(\"div\",{style:{...style,width:\"max-content\",height:45,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",boxSizing:\"border-box\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"max-content\",height:45,display:\"flex\",alignItems:\"center\",gap,padding:5,boxSizing:\"border-box\",borderRadius:5,background:glassColor,backdropFilter:`blur(${glassBlur}px)`,WebkitBackdropFilter:`blur(${glassBlur}px)`,boxShadow:\"0 2px 10px rgba(0, 0, 0, 0.06)\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>openLink(selectedLink),style:{height:35,padding:\"0 11px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",border:\"none\",borderRadius:4,background:selectedBackground,color:selectedTextColor,cursor:selectedLink?\"pointer\":\"default\",appearance:\"none\",...textStyle},children:selectedLabel}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>openLink(homeLink),\"aria-label\":\"Home\",title:\"Home\",style:{width:72,height:35,flexShrink:0,padding:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",border:\"none\",background:\"transparent\",cursor:homeLink?\"pointer\":\"default\",appearance:\"none\"},children:/*#__PURE__*/_jsx(DefaultIcon,{iconColor:iconColor,lightColor:iconLightColor})}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>openLink(aboutLink),style:{height:35,padding:\"0 11px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",border:\"none\",borderRadius:4,background:aboutBackground,color:aboutTextColor,cursor:aboutLink?\"pointer\":\"default\",appearance:\"none\",...textStyle},children:aboutLabel})]})});}function DefaultIcon({iconColor,lightColor}){const svgRef=React.useRef(null);const[mouseOffset,setMouseOffset]=React.useState({x:0,y:0});const[leftPersonality,setLeftPersonality]=React.useState({x:0,y:0});const[rightPersonality,setRightPersonality]=React.useState({x:0,y:0});React.useEffect(()=>{const handleMouseMove=event=>{if(!svgRef.current)return;const rect=svgRef.current.getBoundingClientRect();const centerX=rect.left+rect.width/2;const centerY=rect.top+rect.height/2;const dx=event.clientX-centerX;const dy=event.clientY-centerY;const distance=Math.sqrt(dx*dx+dy*dy)||1;const maxMovement=3.6;const normalizedX=dx/distance;const normalizedY=dy/distance;setMouseOffset({x:normalizedX*maxMovement,y:normalizedY*maxMovement});};window.addEventListener(\"mousemove\",handleMouseMove);return()=>{window.removeEventListener(\"mousemove\",handleMouseMove);};},[]);React.useEffect(()=>{const updatePersonality=()=>{const personalityAmount=1.2;setLeftPersonality({x:(Math.random()-.5)*personalityAmount*2,y:(Math.random()-.5)*personalityAmount*2});setRightPersonality({x:(Math.random()-.5)*personalityAmount*2,y:(Math.random()-.5)*personalityAmount*2});};updatePersonality();const interval=window.setInterval(updatePersonality,1800);return()=>{window.clearInterval(interval);};},[]);const leftX=mouseOffset.x+leftPersonality.x;const leftY=mouseOffset.y+leftPersonality.y;const rightX=mouseOffset.x+rightPersonality.x;const rightY=mouseOffset.y+rightPersonality.y;const faceTransition=\"transform 180ms cubic-bezier(0.22, 1, 0.36, 1)\";return /*#__PURE__*/_jsxs(\"svg\",{ref:svgRef,width:\"80\",height:\"30\",viewBox:\"0 0 75 28\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\",width:\"auto\",height:30},children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"13.95\",cy:\"13.95\",r:\"13.95\",fill:iconColor}),/*#__PURE__*/_jsxs(\"g\",{transform:`translate(${leftX} ${leftY})`,style:{transition:faceTransition},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M8.1 16.2S9.45 20.7 14.4 20.7s6.3-4.5 6.3-4.5\",stroke:lightColor,strokeWidth:\"1.8\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"18\",cy:\"10.8\",r:\"1.8\",fill:lightColor}),/*#__PURE__*/_jsx(\"circle\",{cx:\"10.8\",cy:\"10.8\",r:\"1.8\",fill:lightColor})]}),/*#__PURE__*/_jsx(\"circle\",{cx:\"37.35\",cy:\"13.95\",r:\"13.05\",fill:lightColor,stroke:iconColor,strokeWidth:\"1.8\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M38.66 13.47h5.5v1.71h-5.5v5.52h-1.71v-5.52h-5.5v-1.71h5.5V7.95h1.71v5.52Z\",fill:iconColor}),/*#__PURE__*/_jsx(\"circle\",{cx:\"60.75\",cy:\"13.95\",r:\"13.95\",fill:iconColor}),/*#__PURE__*/_jsxs(\"g\",{transform:`translate(${rightX} ${rightY})`,style:{transition:faceTransition},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M54.9 16.2s1.35 4.5 6.3 4.5 6.3-4.5 6.3-4.5\",stroke:lightColor,strokeWidth:\"1.8\",strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"64.8\",cy:\"10.8\",r:\"1.8\",fill:lightColor}),/*#__PURE__*/_jsx(\"circle\",{cx:\"57.6\",cy:\"10.8\",r:\"1.8\",fill:lightColor})]})]});}addPropertyControls(FloatingNavigation,{selectedLabel:{type:ControlType.String,title:\"Selected\",defaultValue:\"Selected Works\"},selectedLink:{type:ControlType.Link,title:\"Works Link\",defaultValue:\"/projects\"},homeLink:{type:ControlType.Link,title:\"Home Link\",defaultValue:\"/\"},aboutLabel:{type:ControlType.String,title:\"About\",defaultValue:\"About\"},aboutLink:{type:ControlType.Link,title:\"About Link\",defaultValue:\"/about\"},selectedBackground:{type:ControlType.Color,title:\"Works BG\",defaultValue:\"#333333\"},selectedTextColor:{type:ControlType.Color,title:\"Works Text\",defaultValue:\"#FFFFFF\"},aboutBackground:{type:ControlType.Color,title:\"About BG\",defaultValue:\"#333333\"},aboutTextColor:{type:ControlType.Color,title:\"About Text\",defaultValue:\"#FFFFFF\"},glassColor:{type:ControlType.Color,title:\"Glass\",defaultValue:\"rgba(208,208,208,0.35)\"},glassBlur:{type:ControlType.Number,title:\"Blur\",defaultValue:20,min:0,max:30,step:1,unit:\"px\"},iconColor:{type:ControlType.Color,title:\"Icon Blue\",defaultValue:\"#0034EE\"},iconLightColor:{type:ControlType.Color,title:\"Icon Light\",defaultValue:\"#FAFAFA\"},fontFamily:{type:ControlType.String,title:\"Font\",defaultValue:\"Helvetica Neue\"},fontSize:{type:ControlType.Number,title:\"Size\",defaultValue:17,min:8,max:40,step:1,unit:\"px\"},fontWeight:{type:ControlType.Enum,title:\"Weight\",options:[400,500,600,700],optionTitles:[\"Regular\",\"Medium\",\"Semibold\",\"Bold\"],defaultValue:500},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:5,min:0,max:20,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FloatingNavigation\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FloatingNavigation.map","// Generated by Framer (4f63079)\nexport default function metadata(params,activeLocale){return{description:\"Berlin-based Art Director focused on creative advertising, brand experiences, and concept-driven campaigns. \",favicon:\"https://framerusercontent.com/assets/uBu97Bf0rd6hCG3cOArzucg3s.png\",robots:\"max-image-preview:large\",title:\"Ghada Bennasr, Berlin-based Senior Art Director\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}