1import{Ut as e,vn as t}from"./Do9sOqsw.js";import{D as n,r,y as i}from"./YJMzy2rw.js";function a(a,d){let f=i(!1,300);n(()=>{f.value=!1});let p=t(null),m=r();function h(){p.value=null,f.value=!1}function g(e,t){if(!t)return;let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=s(r,o(r,n.getBoundingClientRect()),1),a=c(t.getBoundingClientRect()),l=u([...i,...a]);p.value=l,f.value=!0}return e(e=>{if(a.value&&d.value){let t=e=>g(e,d.value),n=e=>g(e,a.value);a.value.addEventListener(`pointerleave`,t),d.value.addEventListener(`pointerleave`,n),e(()=>{a.value?.removeEventListener(`pointerleave`,t),d.value?.removeEventListener(`pointerleave`,n)})}}),e(e=>{if(p.value){let t=e=>{if(!p.value||!(e.target instanceof Element))return;let t=e.target,n={x:e.clientX,y:e.clientY},r=a.value?.contains(t)||d.value?.contains(t),i=!l(n,p.value),o=!!t.closest(`[data-grace-area-trigger]`);r?h():(i||o)&&(h(),m.trigger())};a.value?.ownerDocument.addEventListener(`pointermove`,t),e(()=>a.value?.ownerDocument.removeEventListener(`pointermove`,t))}}),{isPointerInTransit:f,onPointerExit:m.on}}function o(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function s(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n})}return r}function c(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function l(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e].x,s=t[e].y,c=t[a].x,l=t[a].y;s>r!=l>r&&n<(c-o)*(r-s)/(l-s)+o&&(i=!i)}return i}function u(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),d(t)}function d(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t.at(-1),n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n.at(-1),t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}export{a 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.