1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3505],{3505:(e,t,r)=>{r.r(t),r.d(t,{default:()=>d});var l=r(37876),n=r(79547),a=r(11814),s=r(14232),o=r(84509),i=r(45900);let d=e=>{let{toc:t}=e,[r,d]=(0,s.useState)(null),[c,h]=(0,s.useState)(0),[u,m]=(0,s.useState)(!0),v=(0,s.useRef)(null),x=(0,s.useRef)([]);(0,s.useEffect)(()=>(window.addEventListener("scroll",p),window.addEventListener("scroll",g),p(),g(),()=>{window.removeEventListener("scroll",p),window.removeEventListener("scroll",g)}),[]);let g=()=>{let e=window.scrollY,t=document.documentElement.scrollHeight-window.innerHeight;h(t>0?Math.min(e/t*100,100):0)},p=(0,s.useCallback)((0,n.A)(()=>{let e=document.getElementsByClassName("notion-h"),t=null,l=r;for(let r=0;r<e.length;++r){let n=e[r];if(!n||!(n instanceof Element))continue;l||(l=n.getAttribute("data-id"));let a=n.getBoundingClientRect(),s=Math.max(150,(t?a.top-t.bottom:0)/4);if(a.top-s<0){l=n.getAttribute("data-id"),t=a;continue}break}d(l);let n=x.current;if(v.current&&n.length>0){let e=n.indexOf(l)||0;v.current.scrollTo({top:32*e-60,behavior:"smooth"})}},200));return!t||t.length<1?null:(x.current=t.map(e=>(0,a.Qg)(e.id)),(0,l.jsx)("div",{className:"fixed z-50 hidden lg:block",style:{right:"1rem",top:"auto",bottom:"100px"},children:(0,l.jsxs)("div",{className:"transition-all duration-300 ease-out ".concat(u?"w-64 bg-[#f7f9fe] border border-[var(--endspace-border-base)] shadow-lg rounded-xl":"w-10"),style:{maxHeight:"70vh"},children:[(0,l.jsx)("button",{onClick:()=>m(!u),className:"flex items-center justify-center transition-all duration-300 shadow-md cursor-pointer border hover:-translate-y-1 hover:shadow-lg relative group rounded-full ".concat(u?"w-10 h-10 bg-[#FBFB46] text-black border-[#FBFB46] absolute -left-10 top-0":"w-10 h-10 bg-white text-gray-400 border-gray-200 hover:bg-[#FBFB46] hover:text-black hover:border-[#FBFB46]"),title:u?"Collapse TOC":"Expand TOC",children:u?(0,l.jsx)(o.A,{size:20,stroke:2,className:"transform rotate-180"}):(0,l.jsx)(i.A,{size:20,stroke:2})}),u&&(0,l.jsxs)("div",{className:"p-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,l.jsxs)("h3",{className:"text-sm font-bold text-[var(--endspace-text-primary)] flex items-center",children:[(0,l.jsx)(i.A,{size:16,stroke:2,className:"mr-2"}),"TABLE OF CONTENTS"]}),(0,l.jsx)("div",{className:"w-16 h-1 bg-[#FBFB46] rounded-full overflow-hidden",children:(0,l.jsx)("div",{className:"h-full bg-[var(--endspace-text-primary)] transition-all duration-300 ease-out",style:{width:"".concat(c,"%")}})})]}),(0,l.jsx)("div",{ref:v,className:"overflow-y-auto overflow-x-hidden max-h-[50vh] scroll-smooth border-l border-[var(--endspace-border-base)] pl-4",style:{scrollbarWidth:"thin"},children:(0,l.jsx)("nav",{className:"space-y-2",children:t.map(e=>{let t=(0,a.Qg)(e.id),n=r===t;return(0,l.jsx)("a",{href:"#".concat(t),className:"block py-1 text-xs transition-all duration-200 hover:translate-x-1 ".concat(n?"text-black font-bold":"text-[var(--endspace-text-secondary)] hover:text-[var(--endspace-text-primary)]"),style:{paddingLeft:"".concat(12*e.indentLevel,"px")},children:(0,l.jsx)("span",{className:"line-clamp-2 leading-relaxed break-words",children:e.text})},t)})})}),(0,l.jsx)("div",{className:"mt-4 pt-2 border-t border-[var(--endspace-border-base)]",children:(0,l.jsxs)("div",{className:"text-[10px] font-mono text-[var(--endspace-text-muted)]",children:[t.length," SECTIONS"]})})]})]})}))}},45900:(e,t,r)=>{r.d(t,{A:()=>l});let l=(0,r(92921).A)("outline","list-tree","ListTree",[["path",{d:"M9 6h11",key:"svg-0"}],["path",{d:"M12 12h8",key:"svg-1"}],["path",{d:"M15 18h5",key:"svg-2"}],["path",{d:"M5 6v.01",key:"svg-3"}],["path",{d:"M8 12v.01",key:"svg-4"}],["path",{d:"M11 18v.01",key:"svg-5"}]])},79547:(e,t,r)=>{r.d(t,{A:()=>l});function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,r=null,l=0,n=null;return function(){for(var a=arguments.length,s=Array(a),o=0;o<a;o++)s[o]=arguments[o];let i=Date.now(),d=t-(i-l);if(n=s,d<=0){r&&(clearTimeout(r),r=null),l=i,e(...n),n=null;return}r||(r=setTimeout(()=>{r=null,l=Date.now(),n&&(e(...n),n=null)},d))}}},84509:(e,t,r)=>{r.d(t,{A:()=>l});let l=(0,r(92921).A)("outline","chevron-right","ChevronRight",[["path",{d:"M9 6l6 6l-6 6",key:"svg-0"}]])},92921:(e,t,r)=>{r.d(t,{A:()=>a});var l=r(14232),n={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"
1currentColor",stroke:"none"}};let a=(e,t,r,a)=>{let s=(0,l.forwardRef)((r,s)=>{let{color:o="currentColor",size:i=24,stroke:d=2,title:c,className:h,children:u,...m}=r;return(0,l.createElement)("svg",{ref:s,...n[e],width:i,height:i,className:["tabler-icon","tabler-icon-".concat(t),h].join(" "),..."filled"===e?{fill:o}:{strokeWidth:d,stroke:o},...m},[c&&(0,l.createElement)("title",{key:"svg-title"},c),...a.map(e=>{let[t,r]=e;return(0,l.createElement)(t,r)}),...Array.isArray(u)?u:[u]])});return s.displayName="".concat(r),s}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.