{"version":3,"file":"TableOfContents.CIphpEU1.mjs","names":["React.useState"],"sources":["https:/framerusercontent.com/modules/ouGFDBPFLAV8doxjo2bg/b6BliZTvzOlFRC4ZaEx3/TableOfContents.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion,useReducedMotion}from\"framer-motion\";import*as React from\"react\";const brandColor=\"#e35554\";const SOCIAL_RED=\"rgb(227, 85, 84)\";export function TableOfContents({isCollapsible,defaultOpen,scrollOffset=88}){const[isOpen,setIsOpen]=React.useState(defaultOpen);const[activeId,setActiveId]=React.useState(\"\");// Social sharing logic\nconst currentUrl=typeof window!==\"undefined\"?window.location.href:\"\";const pageTitle=typeof document!==\"undefined\"?document.title:\"\";const shareToX=()=>{const shareUrl=`https://twitter.com/intent/tweet?url=${encodeURIComponent(currentUrl)}&text=${encodeURIComponent(pageTitle)}`;window.open(shareUrl,\"_blank\",\"noopener\");};const shareToLinkedIn=()=>{const shareUrl=`https://www.linkedin.com/sharing/share-offsite/?url=${encodeURIComponent(currentUrl)}`;window.open(shareUrl,\"_blank\",\"noopener\");};const shareToFacebook=()=>{const shareUrl=`https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(currentUrl)}`;window.open(shareUrl,\"_blank\",\"noopener\");};const shareToBlueSky=()=>{const text=`${pageTitle}\n\n${currentUrl}`;const shareUrl=`https://bsky.app/intent/compose?text=${encodeURIComponent(text)}`;window.open(shareUrl,\"_blank\",\"noopener\");};const shareByMail=()=>{const subject=encodeURIComponent(pageTitle);const body=encodeURIComponent(`Check this out: ${currentUrl}`);window.location.href=`mailto:?subject=${subject}&body=${body}`;};const shareToHackerNews=()=>{const shareUrl=`https://news.ycombinator.com/submitlink?u=${encodeURIComponent(currentUrl)}&t=${encodeURIComponent(pageTitle)}`;window.open(shareUrl,\"_blank\",\"noopener\");};const copyToClipboard=async()=>{try{await navigator.clipboard.writeText(currentUrl);}catch(err){console.error(\"Failed to copy: \",err);}};// Utility: slugify text\nconst createSlug=text=>text.toLowerCase().replace(/[^\\w\\s-]/g,\"\").replace(/\\s+/g,\"-\").trim();// 1) Gather headings once\nconst[headings,setHeadings]=React.useState([]);React.useEffect(()=>{const container=document.querySelector('[data-framer-name=\"Content\"][data-framer-component-type=\"RichTextContainer\"]');if(!container)return;const els=Array.from(container.querySelectorAll(\"h2\"));const list=els.map(h2=>{const text=h2.textContent.trim();const id=createSlug(text);h2.id=id;// Create anchor icon\nconst anchor=document.createElement(\"a\");anchor.href=`#${id}`;anchor.innerHTML=`<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" style=\"margin-bottom:-0.25rem\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n          <path d=\"M18.6665 15.9955C18.6665 12.6732 15.5772 9.33203 11.8094 9.33203C11.363 9.33203 9.8919 9.33203 9.52364 9.33203C5.73656 9.33203 2.6665 12.3154 2.6665 15.9955C2.6665 19.1667 4.94614 21.8206 7.99984 22.4939C8.4899 22.602 8.9999 22.659 9.52364 22.659\" stroke=\"currentColor\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n          <path d=\"M13.3335 15.9955C13.3335 19.3178 16.4228 22.659 20.1907 22.659C20.637 22.659 22.1082 22.659 22.4763 22.659C26.2635 22.659 29.3335 19.6756 29.3335 15.9955C29.3335 12.8243 27.0539 10.1705 24.0002 9.49716C23.51 9.3891 23 9.33203 22.4763 9.33203\" stroke=\"currentColor\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n        </svg>`;anchor.style.marginLeft=\"0.5rem\";anchor.style.textDecoration=\"none\";anchor.style.opacity=\"0\";anchor.style.transition=\"all 0.2s\";anchor.style.color=\"#9ca3af\";h2.style.position=\"relative\";h2.appendChild(anchor);anchor.style.color=\"#01091A\"// default\n;anchor.addEventListener(\"mouseenter\",()=>{anchor.style.color=brandColor;});anchor.addEventListener(\"mouseleave\",()=>{anchor.style.color=\"#01091A\";});// Prevent default scroll and update hash on click, and copy full link to clipboard\nanchor.addEventListener(\"click\",e=>{e.preventDefault();const fullUrl=`${window.location.origin}${window.location.pathname}#${id}`;history.replaceState(null,\"\",`#${id}`);scrollToSection(id)// <-- do the actual scroll\n;navigator.clipboard.writeText(fullUrl).catch(err=>{console.error(\"Clipboard write failed:\",err);});});// Show icon when heading is hovered\nh2.addEventListener(\"mouseenter\",()=>{anchor.style.opacity=\"1\";});h2.addEventListener(\"mouseleave\",()=>{anchor.style.opacity=\"0\";});// Style icon when it alone is hovered\nanchor.addEventListener(\"mouseenter\",()=>{anchor.style.textDecoration=\"underline\";anchor.style.color=brandColor;});anchor.addEventListener(\"mouseleave\",()=>{anchor.style.textDecoration=\"none\";anchor.style.color=\"#9ca3af\";});return{text,id};});setHeadings(list);// initialize active to first\nif(list.length)setActiveId(list[0].id);},[]);// 2) Scroll spy with IntersectionObserver and rootMargin for sticky nav\nReact.useEffect(()=>{if(headings.length===0)return;// Use IntersectionObserver with rootMargin to account for sticky/fixed header\nconst observer=new window.IntersectionObserver(entries=>{const visible=entries.find(entry=>entry.isIntersecting);if(visible){setActiveId(visible.target.id);}},{// Top offset to accommodate sticky nav/header, e.g. 70px tall header\nrootMargin:\"-80px 0px 0px 0px\",threshold:1});const headingEls=headings.map(h=>document.getElementById(h.id)).filter(Boolean);headingEls.forEach(el=>observer.observe(el));// Set initial activeId in case already visible\n// Find the first heading in view (with offset)\nlet found=false;for(const el of headingEls){const rect=el.getBoundingClientRect();if(rect.top-80<=0){setActiveId(el.id);found=true;}}if(!found&&headingEls.length>0)setActiveId(headingEls[0].id);return()=>{observer.disconnect();};},[headings]);// 3) Smooth scroll handler\nconst scrollToSection=id=>{const el=document.getElementById(id);if(!el)return;const top=el.getBoundingClientRect().top+window.pageYOffset-scrollOffset;window.scrollTo({top,behavior:\"smooth\"});history.replaceState(null,\"\",`#${id}`);// immediately mark active so UI updates on click\nsetActiveId(id);};// 4) Handle initial hash and hash changes\nReact.useEffect(()=>{// Handle initial load with hash\nconst handleHashOnLoad=()=>{const hash=window.location.hash.slice(1);if(hash&&headings.some(h=>h.id===hash)){// Small delay to ensure DOM is ready\nsetTimeout(()=>scrollToSection(hash),100);}};// Handle hash changes (e.g., browser back/forward)\nconst handleHashChange=()=>{const hash=window.location.hash.slice(1);if(hash&&headings.some(h=>h.id===hash)){scrollToSection(hash);}};handleHashOnLoad();window.addEventListener(\"hashchange\",handleHashChange);return()=>{window.removeEventListener(\"hashchange\",handleHashChange);};},[headings,scrollOffset]);if(!headings.length){// placeholder in Canvas\nconst isCanvas=typeof window!==\"undefined\"&&window.parent!==window;if(isCanvas){return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"sticky\",top:scrollOffset,zIndex:1,borderRadius:8,width:\"100%\",background:\"#F5F6F7\",padding:\"12px\"},children:[/*#__PURE__*/_jsx(\"strong\",{children:\"Contents\"}),/*#__PURE__*/_jsx(\"p\",{style:{color:\"#999\",margin:0},children:\"Placeholder in Canvas\"})]});}return null;}const ChevronIcon=({isRotated})=>/*#__PURE__*/_jsx(\"svg\",{stroke:\"currentColor\",fill:\"currentColor\",strokeWidth:\"0\",viewBox:\"0 0 448 512\",style:{height:11,width:11,transition:\"transform 0.2s\",transform:isRotated?\"rotate(180deg)\":\"rotate(0deg)\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M207.029 381.476L12.686 187.132c...\"})});const SocialButton=({onClick,children})=>{const prefersReduced=useReducedMotion();const variants={rest:{scale:1,backgroundColor:\"rgba(0,0,0,0)\",color:\"#01091A\",transition:{duration:prefersReduced?0:.18,ease:[.2,0,0,1]}},hover:{scale:prefersReduced?1:1.05,backgroundColor:\"rgba(227, 85, 84, 0.15)\",color:SOCIAL_RED,transition:{duration:prefersReduced?0:.18,ease:[.2,0,0,1]}}};return /*#__PURE__*/_jsx(motion.button,{onClick:onClick,initial:\"rest\",animate:\"rest\",whileHover:\"hover\",whileFocus:\"hover\",whileTap:prefersReduced?undefined:{scale:.98},variants:variants,style:{cursor:\"pointer\",padding:0,margin:0,border:\"none\",background:\"transparent\",borderRadius:8,height:24,width:24,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",// Important: no CSS transition here—Framer handles it all\nwillChange:\"transform, background-color, color\"},children:children});};return /*#__PURE__*/_jsx(\"div\",{style:{borderRadius:8,background:\"#F5F6F7\",width:\"100%\",fontFamily:\"Geist, sans-serif\"},children:/*#__PURE__*/_jsx(\"div\",{style:{padding:\"12px\",display:\"flex\",alignItems:\"flex-end\",flexDirection:\"column\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{marginBottom:isOpen||!isCollapsible?8:0,display:\"flex\",flexDirection:\"column\",gap:\"0.5rem\"},children:[/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:14,fontWeight:\"bold\",textTransform:\"uppercase\"},children:\"Contents\"}),isCollapsible&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>setIsOpen(!isOpen),style:{background:\"linear-gradient(to top left, #facc15, #ec4899, #9333ea)\",border:\"none\",borderRadius:9999,padding:\"4px 8px\",cursor:\"pointer\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{background:\"#fff\",borderRadius:9999,padding:\"4px 8px\",display:\"flex\",alignItems:\"center\",fontSize:11},children:[isOpen?\"Hide\":\"Show\",/*#__PURE__*/_jsx(ChevronIcon,{isRotated:isOpen})]})})]}),(isOpen||!isCollapsible)&&/*#__PURE__*/_jsx(\"ol\",{style:{listStyle:\"none\",padding:0,margin:0,borderLeft:\"2px solid #E5E7EB\"},children:headings.map(h=>{const isActive=activeId===h.id;return /*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(motion.button,{onClick:()=>scrollToSection(h.id),whileHover:{color:brandColor,x:8},whileFocus:{color:brandColor,x:8},transition:{type:\"tween\",duration:.2},style:{display:\"block\",padding:\"8px 12px\",textAlign:\"left\",background:\"none\",border:\"none\",fontSize:14,fontWeight:500,// base color; hover/focus handled by framer-motion above\ncolor:isActive?brandColor:\"#374151\",transform:isActive?\"translateX(8px)\":undefined,transition:\"transform 0.3s, color 0.3s\",cursor:\"pointer\",wordBreak:\"break-word\",width:\"35ch\"},\"aria-current\":isActive?\"true\":undefined,children:h.text})},h.id);})}),/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",gap:16,justifyContent:\"space-between\",alignItems:\"center\",marginTop:16},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:14,fontWeight:\"bold\",textTransform:\"uppercase\"},children:\"Share\"}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:8},children:[/*#__PURE__*/_jsx(SocialButton,{onClick:shareToX,children:/*#__PURE__*/_jsx(XSocialIcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:shareToLinkedIn,children:/*#__PURE__*/_jsx(LinkedInSocialcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:shareToFacebook,children:/*#__PURE__*/_jsx(FacebookSocialIcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:shareToBlueSky,children:/*#__PURE__*/_jsx(BlueSkySocialIcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:shareToHackerNews,children:/*#__PURE__*/_jsx(HackerNewsSocialIcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:shareByMail,children:/*#__PURE__*/_jsx(MailSocialIcon,{style:{width:16,height:16}})}),/*#__PURE__*/_jsx(SocialButton,{onClick:copyToClipboard,children:/*#__PURE__*/_jsx(CopySocialIcon,{style:{width:16,height:16}})})]})]})]})})});}addPropertyControls(TableOfContents,{isCollapsible:{type:ControlType.Boolean,title:\"Collapsible\",defaultValue:false},defaultOpen:{type:ControlType.Boolean,title:\"Default Open\",defaultValue:true,hidden:props=>!props.isCollapsible},scrollOffset:{type:ControlType.Number,title:\"Scroll Offset\",defaultValue:88,min:0,max:200,step:1}});const XSocialIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:[/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeWidth:\"2\",d:\"M34.935 43.485 5.29 6.152C4.594 5.276 5.231 4 6.364 4h5.626c.42 0 .817.19 1.075.515L42.71 41.848c.695.876.058 2.152-1.075 2.152H36.01c-.42 0-.817-.19-1.075-.515Z\"}),/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinecap:\"round\",strokeWidth:\"2\",d:\"M42 4 6 44\"})]});const LinkedInSocialcon=props=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M43.992 43.995H35.78V30c0-3.838-1.462-5.983-4.491-5.983-3.307 0-5.03 2.23-5.03 5.983v13.995h-7.92v-26.66h7.92v3.59s2.384-4.406 8.036-4.406S44 19.972 44 27.116v16.88zM8.888 13.843c-2.7 0-4.883-2.2-4.883-4.921C4.005 6.199 6.189 4 8.888 4c2.7 0 4.883 2.2 4.883 4.922s-2.184 4.921-4.883 4.921ZM4.797 43.995h8.259v-26.66h-8.26z\",clipRule:\"evenodd\"})});const FacebookSocialIcon=props=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M34 4h-6a10 10 0 0 0-10 10v6h-6v8h6v16h8V28h6l2-8h-8v-6a2 2 0 0 1 2-2h6z\"})});const BlueSkySocialIcon=props=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M12.887 7.558c4.7 3.715 9.757 11.246 11.613 15.288 1.857-4.041 6.912-11.574 11.613-15.288C39.505 4.878 45 2.804 45 9.403c0 1.318-.718 11.071-1.139 12.655-1.463 5.505-6.796 6.91-11.54 6.06 8.292 1.485 10.401 6.406 5.846 11.326-8.652 9.345-12.435-2.345-13.405-5.34-.178-.55-.26-.806-.262-.588-.001-.218-.084.039-.262.588-.97 2.995-4.753 14.686-13.405 5.34-4.555-4.92-2.446-9.841 5.846-11.327-4.744.85-10.077-.554-11.54-6.06C4.718 20.475 4 10.722 4 9.404c0-6.6 5.496-4.525 8.887-1.845Z\"})});const MailSocialIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:[/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"m14 18 10 7 10-7\"}),/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeWidth:\"2\",d:\"M4 34V14a4 4 0 0 1 4-4h32a4 4 0 0 1 4 4v20a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4Z\"})]});const CopySocialIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:[/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M38.8 40H19.2a1.2 1.2 0 0 1-1.2-1.2V19.2a1.2 1.2 0 0 1 1.2-1.2h19.6a1.2 1.2 0 0 1 1.2 1.2v19.6a1.2 1.2 0 0 1-1.2 1.2\"}),/*#__PURE__*/_jsx(\"path\",{stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M30 18V9.2A1.2 1.2 0 0 0 28.8 8H9.2A1.2 1.2 0 0 0 8 9.2v19.6A1.2 1.2 0 0 0 9.2 30H18\"})]});const HackerNewsSocialIcon=props=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"48\",height:\"48\",fill:\"none\",viewBox:\"0 0 48 48\",...props,children:[/*#__PURE__*/_jsx(\"rect\",{x:\"4\",y:\"4\",width:\"40\",height:\"40\",rx:\"4\",stroke:\"currentColor\",strokeWidth:\"2\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M16 14l8 8 8-8M24 22v12\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]});function estimateReadingTime(){const content=document.querySelector('[data-framer-name=\"Content\"]');if(!content)return 0;const text=content.textContent||\"\";const words=text.trim().split(/\\s+/).length;return Math.max(1,Math.ceil(words/200))// Assuming 200 wpm\n;}\nexport const __FramerMetadata__ = {\"exports\":{\"TableOfContents\":{\"type\":\"reactComponent\",\"name\":\"TableOfContents\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TableOfContents.map"],"mappings":"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"}