2 lines
1.1 KiB
JavaScript
2 lines
1.1 KiB
JavaScript
import{d as H,h as W,x,ah as C,P as M,G as _,a9 as y,ay as B,aj as m,a3 as j}from"./index-a28be152.js";import{a as D}from"./vnode-4742fc96.js";const $=H({compatConfig:{MODE:3},name:"ResizeObserver",props:{disabled:Boolean,onResize:Function},emits:["resize"],setup:function(s,O){var u=O.slots,r=W({width:0,height:0,offsetHeight:0,offsetWidth:0}),v=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};B(r,b),e&&Promise.resolve().then(function(){e(m(m({},b),{},{offsetWidth:d,offsetHeight:h}),n)})}},p=j(),a=function(){var f=s.disabled;if(f){o();return}var e=y(p),n=e!==v;n&&(o(),v=e),!t&&e&&(t=new D(R),t.observe(e))};return x(function(){a()}),C(function(){a()}),M(function(){o()}),_(function(){return s.disabled},function(){a()},{flush:"post"}),function(){var i;return(i=u.default)===null||i===void 0?void 0:i.call(u)[0]}}});export{$ as R};
|