2 lines
1.1 KiB
JavaScript
2 lines
1.1 KiB
JavaScript
import{d as H,r as W,v as C,aa as x,L as M,E as _,a2 as B,ar as E,ac as m,X as y}from"./index-885a0812.js";import{a as D}from"./vnode-70560f26.js";const F=H({compatConfig:{MODE:3},name:"ResizeObserver",props:{disabled:Boolean,onResize:Function},emits:["resize"],setup:function(s,O){var v=O.slots,r=W({width:0,height:0,offsetHeight:0,offsetWidth:0}),u=null,t=null,o=function(){t&&(t.disconnect(),t=null)},R=function(f){var e=s.onResize,n=f[0].target,l=n.getBoundingClientRect(),z=l.width,w=l.height,d=n.offsetWidth,h=n.offsetHeight,c=Math.floor(z),g=Math.floor(w);if(r.width!==c||r.height!==g||r.offsetWidth!==d||r.offsetHeight!==h){var b={width:c,height:g,offsetWidth:d,offsetHeight:h};E(r,b),e&&Promise.resolve().then(function(){e(m(m({},b),{},{offsetWidth:d,offsetHeight:h}),n)})}},p=y(),a=function(){var f=s.disabled;if(f){o();return}var e=B(p),n=e!==u;n&&(o(),u=e),!t&&e&&(t=new D(R),t.observe(e))};return C(function(){a()}),x(function(){a()}),M(function(){o()}),_(function(){return s.disabled},function(){a()},{flush:"post"}),function(){var i;return(i=v.default)===null||i===void 0?void 0:i.call(v)[0]}}});export{F as R};
|