1function e(e,t,n,r){let i=t+r,a=e+t-n,o=Math.max(0,Math.min(1,a/i));return{progress:o,offsetFactor:(o-.5)*2}}function t(e,t,n,r){let i=n+r;return n<e+t&&i>e}function n(e,t,n){e.style.setProperty(`--scroll-progress`,t.toFixed(3)),e.style.setProperty(`--scroll-offset-factor`,n.toFixed(3))}function r(e,t,n=e=>e.getBoundingClientRect()){return e.map(e=>{let r=n(e);return{element:e,offsetTop:r.top+t,offsetHeight:r.height}})}function i(r,i,a){for(let{element:o,offsetTop:s,offsetHeight:c}of r){if(!t(i,a,s,c))continue;let{progress:r,offsetFactor:l}=e(i,a,s,c);n(o,r,l)}}function a(e,t=3e3){let n=e.defaultView;if(!n)return;let a=()=>{let t=[],a=Array.from(e.querySelectorAll(`header, section, footer`)),o=()=>n.scrollY||e.documentElement.scrollTop,s=()=>{let e=o();t=r(a,e),i(t,e,n.innerHeight)},c=!1;n.addEventListener(`resize`,s),n.addEventListener(`scroll`,()=>{c||(c=!0,n.requestAnimationFrame(()=>{i(t,o(),n.innerHeight),c=!1}))},{passive:!0});let l=()=>{n.requestAnimationFrame(s)};e.readyState===`complete`?l():n.addEventListener(`load`,l,{once:!0})};if(n.whenIdle){n.whenIdle(a,t);return}if(e.readyState===`complete`){a();return}n.addEventListener(`load`,a,{once:!0})}function o(e=document,t=3e3){a(e,t)}export{o as t};
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.