1import{H as e,M as t,Q as n,T as r,Y as i,cn as a,en as o,fn as s,t as c,tt as l,wt as u}from"./vue.runtime.esm-bundler-CQND_IVA.js";import{n as d,t as f}from"./_plugin-vue_export-helper-hUP4Ezpu.js";import{t as p}from"./lodash-DR26iR1b.js";var m,h,g=a((()=>{c(),m=s(p()),h=t({__name:`PopUp`,props:{dimensions:{default:void 0},positioning:{default:()=>({corner:`bottom-left`,offset:0,allowRepositioning:!0})}},setup(t){let a=t,s=u(null),c=u(),d=e=>{if(s.value===null)return{};let t=s.value.getBoundingClientRect(),n=s.value.closest(`dialog, .overflow-hidden`),r=null,i=!1;n&&n.classList.contains(`overflow-hidden`)&&(r=n.getBoundingClientRect(),i=!0);let a=i?r.right:window.innerWidth,o=i?r.bottom:window.innerHeight,c=i?r.left:0,l=i?r.top:0;return{...(e||t.top<l)&&{top:!0},...(e||t.right>a)&&{right:!0},...(e||t.bottom>o)&&{bottom:!0},...(e||t.left<c)&&{left:!0}}},f=e=>{if(s.value!==null){let t=s.value.parentElement;if(t!==null){let n=s.value.getBoundingClientRect();for(let r in e)switch(r){case`top`:n.top+n.height+t.clientHeight>=0&&n.bottom+n.height+t.clientHeight<=window.innerHeight&&(`corner`in a.positioning?c.value!==void 0&&(c.value=c.value.replace(`top`,`bottom`)):s.value.style.setProperty(`--mouse-y`,a.positioning.y+n.height+`px`));break;case`right`:n.left-n.width+t.clientWidth>=0&&n.right-n.width+t.clientWidth<=window.innerWidth&&(`corner`in a.positioning?c.value!==void 0&&(c.value=c.value.replace(`left`,`right`)):s.value.style.setProperty(`--mouse-x`,a.positioning.x-n.width+`px`));break;case`bottom`:n.top-n.height-t.clientHeight>=0&&n.bottom-n.height-t.clientHeight<=window.innerHeight&&(`corner`in a.positioning?c.value!==void 0&&(c.value=c.value.replace(`bottom`,`top`)):s.value.style.setProperty(`--mouse-y`,a.positioning.y-n.height+`px`));break;case`left`:n.left+n.width-t.clientWidth>=0&&n.right+n.width-t.clientWidth<=window.innerWidth&&(`corner`in a.positioning?c.value!==void 0&&(c.value=c.value.replace(`right`,`left`)):s.value.style.setProperty(`--mouse-x`,a.positioning.x+n.width+`px`))}}}};return i(()=>{e().then(()=>{if(s.value!==null&&(`corner`in a.positioning?(c.value=a.positioning.corner,a.positioning.offset!==0&&(s.value.style.margin=a.positioning.offset)):(s.value.style.setProperty(`--mouse-x`,a.positioning.x+`px`),s.value.style.setProperty(`--mouse-y`,a.positioning.y+`px`)),`corner`in a.positioning&&a.positioning.allowRepositioning||`x`in a.positioning)){let e=d()||{};m.default.isEmpty(e)||f(e)}})}),(e,t)=>(n(),r(`div`,{ref_key:`popUp`,ref:s,class:o([`pop-up`,c.value])},[l(e.$slots,`default`,{},void 0,!0)],2))}})})),_=a((()=>{})),v,y=a((()=>{g(),g(),_(),d(),v=f(h,[[`__scopeId`,`data-v-b7287871`]])}));export{y as n,v 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.