{"version":3,"file":"TableOfContents.CK2Y9x44.mjs","names":["__esmMin","init_ssg_sandbox_shims","init_npm_react_18_3_1","c","init_jsx_runtime","ce","window","withTableOfContents","style","CSS","items","targets","listeners","update","active","h","i","atEnd","last","it","ACTIVE","setup","off","ITEM","visible","body","BODY","heads","norm","go","t","OFFSET","onKey","tries","boot","timer","onResize","Component","props","withLegalTableOfContents","LEGAL_CSS","LEGAL_ITEM","name","init_TableOfContents","el","s"],"sources":["https:/framerusercontent.com/modules/Ne6jraRfc27yVcbVD7lU/Fn3oryVgHTWQanyhLWSr/TableOfContents.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";// Table of contents scroll spy for the blog post sidebar.\n// Highlights the TOC item for the heading currently in view and scrolls to a heading on click.\n// Layers it relies on: \"TOC Item\" (with an \"Indicator\" child) and the \"Article Body\" rich text.\nconst ITEM='[data-framer-name=\"TOC Item\"]';const BODY='[data-framer-name=\"Article Body\"]';const ACTIVE=\"hollis-toc-active\";const OFFSET=120;const CSS=`\n${ITEM} { cursor: pointer; }\n${ITEM} [data-framer-name=\"Indicator\"] { transition: background-color 0.2s ease; }\n${ITEM} p { transition: color 0.2s ease; }\n${ITEM}:hover p { color: var(--token-CnAplYMru, #14161B) !important; }\n${ITEM}.${ACTIVE} [data-framer-name=\"Indicator\"] { background-color: var(--token-ZuUaGg2YO, #D44A2C) !important; }\n${ITEM}.${ACTIVE} p { color: var(--token-CnAplYMru, #14161B) !important; }\n`;const visible=el=>el.offsetParent!==null;const norm=s=>(s||\"\").replace(/\\s+/g,\" \").trim().toLowerCase();export function withTableOfContents(Component){return props=>{useEffect(()=>{if(typeof document===\"undefined\")return;if(!document.getElementById(\"hollis-toc-style\")){const style=document.createElement(\"style\");style.id=\"hollis-toc-style\";style.textContent=CSS;document.head.appendChild(style);}let items=[];let targets=[];const listeners=[];const update=()=>{let active=-1;targets.forEach((h,i)=>{if(h&&h.getBoundingClientRect().top<=OFFSET+10)active=i;});if(active===-1&&targets.length)active=0;const atEnd=window.innerHeight+window.scrollY>=document.documentElement.scrollHeight-4;const last=targets[targets.length-1];if(atEnd&&last&&last.getBoundingClientRect().top<window.innerHeight)active=targets.length-1;items.forEach((it,i)=>it.classList.toggle(ACTIVE,i===active));};const setup=()=>{listeners.forEach(off=>off());listeners.length=0;items=Array.from(document.querySelectorAll(ITEM)).filter(visible);const body=Array.from(document.querySelectorAll(BODY)).find(visible);const heads=body?Array.from(body.querySelectorAll(\"h2\")):[];if(!items.length||!heads.length)return false;targets=items.map((it,i)=>heads.find(h=>norm(h.textContent)===norm(it.textContent))||heads[i]);items.forEach((it,i)=>{it.setAttribute(\"role\",\"link\");it.setAttribute(\"tabindex\",\"0\");const go=()=>{const t=targets[i];if(!t)return;window.scrollTo({top:window.scrollY+t.getBoundingClientRect().top-OFFSET+10,behavior:\"smooth\"});};const onKey=e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();go();}};it.addEventListener(\"click\",go);it.addEventListener(\"keydown\",onKey);listeners.push(()=>{it.removeEventListener(\"click\",go);it.removeEventListener(\"keydown\",onKey);});});update();return true;};let tries=0;const boot=()=>{if(setup()||tries++>20)return;timer=window.setTimeout(boot,250);};let timer=window.setTimeout(boot,0);const onResize=()=>setup();window.addEventListener(\"scroll\",update,{passive:true});window.addEventListener(\"resize\",onResize);return()=>{window.clearTimeout(timer);window.removeEventListener(\"scroll\",update);window.removeEventListener(\"resize\",onResize);listeners.forEach(off=>off());};},[]);return /*#__PURE__*/_jsx(Component,{...props});};}// Scroll spy for the Privacy Policy and Terms sidebars.\n// Layers it relies on: \"TOC / <Section>\" items (with an \"Indicator\" child) and \"Legal Block / <Section>\" frames.\nconst LEGAL_ITEM='[data-framer-name^=\"TOC / \"]';const LEGAL_CSS=`\n${LEGAL_ITEM} [data-framer-name=\"Indicator\"] { transition: background-color 0.2s ease; }\n${LEGAL_ITEM} p { transition: color 0.2s ease; }\n${LEGAL_ITEM}:hover p { color: var(--token-CnAplYMru, #14161B) !important; }\n${LEGAL_ITEM}.${ACTIVE} [data-framer-name=\"Indicator\"] { background-color: var(--token-ZuUaGg2YO, #D44A2C) !important; }\n${LEGAL_ITEM}.${ACTIVE} p { color: var(--token-CnAplYMru, #14161B) !important; }\n`;export function withLegalTableOfContents(Component){return props=>{useEffect(()=>{if(typeof document===\"undefined\")return;if(!document.getElementById(\"hollis-legal-toc-style\")){const style=document.createElement(\"style\");style.id=\"hollis-legal-toc-style\";style.textContent=LEGAL_CSS;document.head.appendChild(style);}let items=[];let targets=[];const update=()=>{let active=0;targets.forEach((t,i)=>{if(t&&t.getBoundingClientRect().top<=OFFSET+10)active=i;});const atEnd=window.innerHeight+window.scrollY>=document.documentElement.scrollHeight-4;const last=targets[targets.length-1];if(atEnd&&last&&last.getBoundingClientRect().top<window.innerHeight)active=targets.length-1;items.forEach((it,i)=>it.classList.toggle(ACTIVE,i===active));};const setup=()=>{items=Array.from(document.querySelectorAll(LEGAL_ITEM)).filter(visible);targets=items.map(it=>{const name=(it.getAttribute(\"data-framer-name\")||\"\").replace(\"TOC / \",\"\");return Array.from(document.querySelectorAll('[data-framer-name=\"Legal Block / '+name+'\"]')).find(visible)||null;});if(!items.length||!targets.some(Boolean))return false;update();return true;};let tries=0;let timer=0;const boot=()=>{if(setup()||tries++>20)return;timer=window.setTimeout(boot,250);};timer=window.setTimeout(boot,0);const onResize=()=>setup();window.addEventListener(\"scroll\",update,{passive:true});window.addEventListener(\"resize\",onResize);return()=>{window.clearTimeout(timer);window.removeEventListener(\"scroll\",update);window.removeEventListener(\"resize\",onResize);};},[]);return /*#__PURE__*/_jsx(Component,{...props});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withTableOfContents\":{\"type\":\"reactHoc\",\"name\":\"withTableOfContents\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withLegalTableOfContents\":{\"type\":\"reactHoc\",\"name\":\"withLegalTableOfContents\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TableOfContents.map"],"mappings":"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"}