1import{j as u}from"./markdown-Dpkw6vUS.js";import{r as t}from"./charts-7Iz4UqPP.js";import{z as p}from"./icons-aBQKEYI1.js";function h(){const[n,s]=t.useState(!1),i=t.useRef(0),r=t.useRef(),f=t.useRef(!1),l=t.useCallback(()=>{r.current&&clearTimeout(r.current),r.current=setTimeout(()=>s(!1),7e3)},[]);t.useEffect(()=>{const e=()=>{const o=window.scrollY,c=o<i.current;if(i.current=o,f.current=c,o<100){s(!1);return}o>400&&c&&(s(!0),l())};return window.addEventListener("scroll",e,{passive:!0}),()=>{window.removeEventListener("scroll",e),r.current&&clearTimeout(r.current)}},[l]);const a=()=>{window.scrollTo({top:0,behavior:"smooth"})},d=e=>{(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),a())};return u.jsx("button",{onClick:a,onKeyDown:d,"aria-label":"Back to top",role:"button",tabIndex:0,className:"fixed z-[1002] flex items-center justify-center w-10 h-10 rounded-full bg-secondary border border-border text-foreground shadow-lg cursor-pointer transition-all duration-200 ease-out hover:-translate-y-0.5 hover:bg-accent min-h-[44px] min-w-[44px]",style:{bottom:"136px",right:"24px",opacity:n?1:0,transform:n?"translateY(0)":"translateY(8px)",pointerEvents:n?"auto":"none"},children:u.jsx(p,{size:20,strokeWidth:2.5})})}export{h as default}; 2//# sourceMappingURL=BackToTop-CtkexxJD.js.map
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.