| 1 |
- import{k as E,aJ as P,S as v,c as S,g as w,o as b,aM as x,R as p,h as L,au as m,s as H,w as T,B as R,aN as C,aO as M}from"./index-Cd2JsgaO.js";function N(){const t=E(!P.value);return t.value===!1&&v(()=>{t.value=!0}),{isHydrated:t}}const O=typeof ResizeObserver<"u",y=O===!0?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},D=S({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(t,{emit:g}){let e=null,i,r={width:-1,height:-1};function c(n){n===!0||t.debounce===0||t.debounce==="0"?s():e===null&&(e=setTimeout(s,t.debounce))}function s(){if(e!==null&&(clearTimeout(e),e=null),i){const{offsetWidth:n,offsetHeight:o}=i;(n!==r.width||o!==r.height)&&(r={width:n,height:o},g("resize",r))}}const{proxy:d}=w();if(d.trigger=c,O===!0){let n;const o=u=>{i=d.$el.parentNode,i?(n=new ResizeObserver(c),n.observe(i),s()):u!==!0&&p(()=>{o(!0)})};return v(()=>{o()}),b(()=>{e!==null&&clearTimeout(e),n!==void 0&&(n.disconnect!==void 0?n.disconnect():i&&n.unobserve(i))}),x}else{let n=function(){e!==null&&(clearTimeout(e),e=null),l!==void 0&&(l.removeEventListener!==void 0&&l.removeEventListener("resize",c,m.passive),l=void 0)},o=function(){n(),i?.contentDocument&&(l=i.contentDocument.defaultView,l.addEventListener("resize",c,m.passive),s())};const{isHydrated:u}=N();let l;return v(()=>{p(()=>{i=d.$el,i&&o()})}),b(n),()=>{if(u.value===!0)return L("object",{class:"q--avoid-card-border",style:y.style,tabindex:-1,type:"text/html",data:y.url,"aria-hidden":"true",onLoad:o})}}}}),{passive:z}=m,Q=["both","horizontal","vertical"],V=S({name:"QScrollObserver",props:{axis:{type:String,validator:t=>Q.includes(t),default:"vertical"},debounce:[String,Number],scrollTarget:H},emits:["scroll"],setup(t,{emit:g}){const e={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let i=null,r,c;T(()=>t.scrollTarget,()=>{n(),d()});function s(){i?.();const l=Math.max(0,C(r)),f=M(r),a={top:l-e.position.top,left:f-e.position.left};if(t.axis==="vertical"&&a.top===0||t.axis==="horizontal"&&a.left===0)return;const h=Math.abs(a.top)>=Math.abs(a.left)?a.top<0?"up":"down":a.left<0?"left":"right";e.position={top:l,left:f},e.directionChanged=e.direction!==h,e.delta=a,e.directionChanged===!0&&(e.direction=h,e.inflectionPoint=e.position),g("scroll",{...e})}function d(){r=R(c,t.scrollTarget),r.addEventListener("scroll",o,z),o(!0)}function n(){r!==void 0&&(r.removeEventListener("scroll",o,z),r=void 0)}function o(l){if(l===!0||t.debounce===0||t.debounce==="0")s();else if(i===null){const[f,a]=t.debounce?[setTimeout(s,t.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];i=()=>{a(f),i=null}}}const{proxy:u}=w();return T(()=>u.$q.lang.rtl,s),v(()=>{c=u.$el.parentNode,d()}),b(()=>{i?.(),n()}),Object.assign(u,{trigger:o,getPosition:()=>e}),x}});export{D as Q,V as a};
|