{"version":3,"file":"SectionDotNav.qBgpU10m.mjs","names":["React.useState","React.useMemo","React.useCallback"],"sources":["https:/framerusercontent.com/modules/wavU3kyjl5ZxVwvOFdhL/ygCQczJbc1lgmbMNx1tU/SectionDotNav.js"],"sourcesContent":["// Instructions: A liquid glass dot vertical navigation for the scroll sections that I put in as shown in the images with the settings as shown available to me.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion}from\"framer-motion\";/**\n * @framerIntrinsicWidth 90\n * @framerIntrinsicHeight 300\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function SectionDotNav(props){const{sections,position,align,hideBehavior,hideAfterId,hideOffset,size,dotSize,dotColor,hoverColor,activeColor,animation,tooltip,tooltipOffsetX,tooltipOffsetY,tooltipBackdropBlur,bgColor,borderColor,textColor,textStyle,radius,padding,paddingX,paddingY,glassOpacity,blur,noise,activeGlow,scrollOffset,style}=props;const isStatic=useIsStaticRenderer();const[hoveredIndex,setHoveredIndex]=React.useState(null);const[activeIndex,setActiveIndex]=React.useState(0);const[isHidden,setIsHidden]=React.useState(false);const transition=React.useMemo(()=>{if(animation===\"ease\")return{type:\"tween\",duration:.22,ease:[.2,.8,.2,1]};if(animation===\"bounce\")return{type:\"spring\",stiffness:520,damping:18,mass:.7};return{type:\"spring\",stiffness:520,damping:28,mass:.8};},[animation]);const safeSections=React.useMemo(()=>{const cleaned=(sections||[]).filter(s=>(s?.id||\"\").trim().length>0);return cleaned.length>0?cleaned:[{id:\"section-1\",label:\"Section\"}];},[sections]);React.useEffect(()=>{if(isStatic)return;if(typeof window===\"undefined\")return;if(hideBehavior===\"never\"){React.startTransition(()=>setIsHidden(false));return;}const getTargetId=()=>{if(hideBehavior===\"after-last\")return safeSections[safeSections.length-1]?.id;const cleaned=(hideAfterId||\"\").trim();return cleaned.length>0?cleaned:safeSections[safeSections.length-1]?.id;};let raf=0;const onScroll=()=>{if(raf)return;raf=window.requestAnimationFrame(()=>{raf=0;const id=getTargetId();if(!id)return;const el=window.document.getElementById(id);if(!el)return;const rect=el.getBoundingClientRect();const shouldHide=rect.bottom<-Math.max(0,hideOffset||0);React.startTransition(()=>setIsHidden(shouldHide));});};onScroll();window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onScroll);return()=>{if(raf)window.cancelAnimationFrame(raf);window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onScroll);};},[isStatic,hideBehavior,hideAfterId,hideOffset,safeSections]);const resolvedPaddingX=paddingX??padding;const resolvedPaddingY=paddingY??padding;const pillWidth=React.useMemo(()=>Math.max(dotSize+resolvedPaddingX*2,40),[dotSize,resolvedPaddingX]);const innerHeight=React.useMemo(()=>{const count=safeSections.length;const dots=count*dotSize;const gaps=Math.max(0,count-1)*size;return dots+gaps+resolvedPaddingY*2;},[safeSections.length,dotSize,size,resolvedPaddingY]);const justifyContent=React.useMemo(()=>{if(align===\"top\")return\"flex-start\";if(align===\"bottom\")return\"flex-end\";return\"center\";},[align]);const containerSideStyle=React.useMemo(()=>{const side=position===\"right\"?{right:0,left:\"auto\",alignItems:\"flex-end\"}:{left:0,right:\"auto\",alignItems:\"flex-start\"};return side;},[position]);const scrollToSection=React.useCallback(id=>{if(typeof window===\"undefined\")return;const el=window.document.getElementById(id);if(!el)return;const top=el.getBoundingClientRect().top+window.scrollY-(scrollOffset||0);window.scrollTo({top,behavior:\"smooth\"});},[scrollOffset]);React.useEffect(()=>{if(isStatic)return;if(typeof window===\"undefined\")return;const doc=window.document;const nodes=safeSections.map(s=>doc.getElementById(s.id)).filter(Boolean);if(nodes.length===0)return;let raf=0;const visible=new Map;const pickActive=()=>{if(raf)return;raf=window.requestAnimationFrame(()=>{raf=0;// choose the most \"visible\" currently intersecting; fallback to closest to viewport center\nlet bestId=null;let bestRatio=-1;for(const[id,ratio]of visible.entries()){if(ratio>bestRatio){bestRatio=ratio;bestId=id;}}if(!bestId){const center=window.innerHeight/2;let bestDist=Number.POSITIVE_INFINITY;for(const s of safeSections){const el=doc.getElementById(s.id);if(!el)continue;const r=el.getBoundingClientRect();const dist=Math.abs(r.top+r.height/2-center);if(dist<bestDist){bestDist=dist;bestId=s.id;}}}if(!bestId)return;const next=safeSections.findIndex(s=>s.id===bestId);if(next>=0)React.startTransition(()=>setActiveIndex(next));});};const obs=new IntersectionObserver(entries=>{for(const e of entries){const id=e.target.id;if(!id)continue;if(e.isIntersecting)visible.set(id,e.intersectionRatio||1e-4);else visible.delete(id);}pickActive();},{root:null,threshold:[.05,.1,.2,.35,.5,.65,.8],rootMargin:\"-40% 0px -40% 0px\"});nodes.forEach(n=>obs.observe(n));return()=>{if(raf&&typeof window!==\"undefined\")window.cancelAnimationFrame(raf);obs.disconnect();};},[isStatic,safeSections]);const onDotEnter=React.useCallback(i=>{React.startTransition(()=>setHoveredIndex(i));},[]);const onDotLeave=React.useCallback(()=>{React.startTransition(()=>setHoveredIndex(null));},[]);const tooltipIndex=hoveredIndex;const showTooltip=tooltip&&tooltipIndex!==null&&tooltipIndex>=0&&tooltipIndex<safeSections.length;const tooltipMetrics=React.useMemo(()=>{if(!showTooltip)return null;const i=tooltipIndex;const count=safeSections.length;const contentHeight=count*dotSize+Math.max(0,count-1)*size;const available=innerHeight-resolvedPaddingY*2;const extra=Math.max(0,available-contentHeight);const alignOffset=align===\"top\"?0:align===\"bottom\"?extra:extra/2;const y=resolvedPaddingY+alignOffset+i*(dotSize+size)+dotSize/2+(tooltipOffsetY||0);const sideOffset=10+(tooltipOffsetX||0);const isRight=position===\"right\";return{y,isRight,sideOffset,label:safeSections[i]?.label??\"\"};},[showTooltip,tooltipIndex,resolvedPaddingY,dotSize,size,position,safeSections,innerHeight,align,tooltipOffsetX,tooltipOffsetY]);const glassBackground=React.useMemo(()=>{// Use bgColor but apply opacity + subtle highlight gradient\nconst base=bgColor;const o=Math.max(0,Math.min(1,glassOpacity));return{background:base,opacity:o};},[bgColor,glassOpacity]);const noiseOverlay=React.useMemo(()=>{const n=Math.max(0,Math.min(1,noise));if(n<=0)return{display:\"none\"};return{position:\"absolute\",inset:0,borderRadius:radius,pointerEvents:\"none\",backgroundImage:\"repeating-linear-gradient(0deg, rgba(255,255,255,0.035) 0px, rgba(255,255,255,0.035) 1px, rgba(0,0,0,0.02) 2px, rgba(0,0,0,0.02) 3px)\",mixBlendMode:\"overlay\",opacity:n};},[noise,radius]);return /*#__PURE__*/_jsx(motion.div,{style:{position:\"relative\",width:\"100%\",height:\"100%\",...style,pointerEvents:isHidden?\"none\":undefined},initial:false,animate:{opacity:isHidden?0:1},transition:transition,\"aria-label\":\"Section navigation\",children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:0,bottom:0,display:\"flex\",width:\"100%\",justifyContent:justifyContent,...containerSideStyle,pointerEvents:\"none\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{pointerEvents:\"auto\",width:pillWidth,height:innerHeight,borderRadius:radius,position:\"relative\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:size,padding:`${resolvedPaddingY}px ${resolvedPaddingX}px`,border:`1px solid ${borderColor}`,boxShadow:\"0 10px 26px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.10), inset 0 -1px 0 rgba(0,0,0,0.18)\",backdropFilter:blur>0?`blur(${blur}px)`:undefined,WebkitBackdropFilter:blur>0?`blur(${blur}px)`:undefined,overflow:\"visible\"},\"aria-label\":\"Dots\",children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,borderRadius:radius,background:\"linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.04) 35%, rgba(0,0,0,0.10) 100%)\",pointerEvents:\"none\",opacity:1}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,borderRadius:radius,...glassBackground,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{style:noiseOverlay}),safeSections.map((s,i)=>{const isActive=i===activeIndex;const isHover=i===hoveredIndex;const dotBg=isActive?activeColor:isHover?hoverColor:dotColor;return /*#__PURE__*/_jsx(motion.button,{type:\"button\",\"aria-label\":s.label?`Go to ${s.label}`:`Go to section ${i+1}`,onClick:()=>scrollToSection(s.id),onMouseEnter:()=>onDotEnter(i),onMouseLeave:onDotLeave,onFocus:()=>onDotEnter(i),onBlur:onDotLeave,style:{all:\"unset\",cursor:\"pointer\",width:dotSize,height:dotSize,borderRadius:999,display:\"block\",position:\"relative\"},animate:{scale:isActive?1.22:isHover?1.06:1},transition:transition,children:/*#__PURE__*/_jsx(motion.span,{\"aria-hidden\":\"true\",style:{position:\"absolute\",inset:0,borderRadius:999,backgroundColor:dotBg,boxShadow:isActive?`0 0 ${Math.max(0,activeGlow)}px rgba(255,255,255,0.65)`:\"none\",opacity:isActive?1:.55},animate:{backgroundColor:dotBg,opacity:isActive?1:.55},transition:transition})},`${s.id}-${i}`);}),tooltipMetrics&&/*#__PURE__*/_jsx(motion.div,{role:\"tooltip\",initial:{opacity:0,x:tooltipMetrics.isRight?6:-6,scale:.98},animate:{opacity:1,x:0,scale:1},exit:{opacity:0,x:tooltipMetrics.isRight?6:-6,scale:.98},transition:transition,style:{position:\"absolute\",top:tooltipMetrics.y,transform:\"translateY(-50%)\",...tooltipMetrics.isRight?{right:`calc(100% + ${tooltipMetrics.sideOffset}px)`}:{left:`calc(100% + ${tooltipMetrics.sideOffset}px)`},background:\"rgba(30,30,30,0.50)\",border:`1px solid rgba(255,255,255,0.14)`,borderRadius:999,padding:\"10px 14px\",boxShadow:\"0 10px 22px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.12)\",backdropFilter:tooltipBackdropBlur>0?`blur(${Math.max(0,tooltipBackdropBlur)}px)`:undefined,WebkitBackdropFilter:tooltipBackdropBlur>0?`blur(${Math.max(0,tooltipBackdropBlur)}px)`:undefined,color:textColor,whiteSpace:\"nowrap\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"span\",{style:{...textStyle,color:textColor,display:\"inline-block\",minWidth:\"max-content\"},children:tooltipMetrics.label})})]})})});}addPropertyControls(SectionDotNav,{sections:{type:ControlType.Array,title:\"Sections\",maxCount:12,defaultValue:[{id:\"about\",label:\"About\"},{id:\"work\",label:\"Work\"},{id:\"services\",label:\"Services\"},{id:\"contact\",label:\"Contact\"}],control:{type:ControlType.Object,controls:{id:{type:ControlType.String,title:\"ID\",defaultValue:\"about\"},label:{type:ControlType.String,title:\"Label\",defaultValue:\"About\"}}}},hideBehavior:{type:ControlType.Enum,title:\"Hide\",options:[\"never\",\"after-last\",\"after-id\"],optionTitles:[\"Never\",\"After Last\",\"After ID\"],defaultValue:\"never\"},hideAfterId:{type:ControlType.String,title:\"Hide After ID\",defaultValue:\"\",placeholder:\"e.g. case-study-end\",hidden:({hideBehavior})=>hideBehavior!==\"after-id\"},hideOffset:{type:ControlType.Number,title:\"Hide Offset\",defaultValue:0,min:0,max:400,step:1,unit:\"px\",hidden:({hideBehavior})=>hideBehavior===\"never\"},position:{type:ControlType.Enum,title:\"Position\",options:[\"right\",\"left\"],optionTitles:[\"Right\",\"Left\"],defaultValue:\"right\",displaySegmentedControl:true},align:{type:ControlType.Enum,title:\"Align\",options:[\"top\",\"center\",\"bottom\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],defaultValue:\"center\",displaySegmentedControl:true},size:{type:ControlType.Number,title:\"Size\",defaultValue:30,min:4,max:80,step:1,unit:\"px\"},dotSize:{type:ControlType.Number,title:\"Dot Size\",defaultValue:10,min:4,max:24,step:1,unit:\"px\"},dotColor:{type:ControlType.Color,title:\"Dot Color\",defaultValue:\"#CCCCCC\"},hoverColor:{type:ControlType.Color,title:\"Hover Color\",defaultValue:\"#FFFFFF\"},activeColor:{type:ControlType.Color,title:\"Active Color\",defaultValue:\"#FFFFFF\"},animation:{type:ControlType.Enum,title:\"Animation\",options:[\"spring\",\"ease\",\"bounce\"],optionTitles:[\"Spring\",\"Ease\",\"Bounce\"],defaultValue:\"spring\",displaySegmentedControl:true},tooltip:{type:ControlType.Boolean,title:\"Tooltip\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},tooltipOffsetX:{type:ControlType.Number,title:\"Tooltip X\",defaultValue:0,min:-40,max:40,step:1,unit:\"px\",hidden:({tooltip})=>!tooltip},tooltipOffsetY:{type:ControlType.Number,title:\"Tooltip Y\",defaultValue:0,min:-40,max:40,step:1,unit:\"px\",hidden:({tooltip})=>!tooltip},tooltipBackdropBlur:{type:ControlType.Number,title:\"Tooltip Blur\",defaultValue:12,min:0,max:30,step:1,unit:\"px\",hidden:({tooltip})=>!tooltip},bgColor:{type:ControlType.Color,title:\"BG Color\",defaultValue:\"#000000\"},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},textStyle:{type:ControlType.Font,title:\"Text Style\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"18px\",variant:\"Medium\",letterSpacing:\"-0.01em\",lineHeight:\"1em\"}},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:35,min:0,max:80,step:1},borderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"#FFFFFF\"},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:16,min:6,max:28,step:1,unit:\"px\"},paddingX:{type:ControlType.Number,title:\"Padding X\",defaultValue:16,min:0,max:40,step:1,unit:\"px\"},paddingY:{type:ControlType.Number,title:\"Padding Y\",defaultValue:16,min:0,max:40,step:1,unit:\"px\"},glassOpacity:{type:ControlType.Number,title:\"Glass Opacity\",defaultValue:.22,min:0,max:1,step:.01},blur:{type:ControlType.Number,title:\"Blur\",defaultValue:18,min:0,max:40,step:1,unit:\"px\"},noise:{type:ControlType.Number,title:\"Noise\",defaultValue:.35,min:0,max:1,step:.01},activeGlow:{type:ControlType.Number,title:\"Active Glow\",defaultValue:18,min:0,max:50,step:1,unit:\"px\"},scrollOffset:{type:ControlType.Number,title:\"Scroll Offset\",defaultValue:0,min:0,max:240,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SectionDotNav\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"90\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SectionDotNav.map"],"mappings":"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"}