2 lines
1.1 KiB
JavaScript
2 lines
1.1 KiB
JavaScript
import{d as H,h as W,x,aj as C,S as M,z as _,aa as B,aA as j,al as m,ab as y}from"./index-185c08ed.js";import{a as D}from"./vnode-8a371720.js";const $=H({compatConfig:{MODE:3},name:"ResizeObserver",props:{disabled:Boolean,onResize:Function},emits:["resize"],setup:function(s,z){var u=z.slots,r=W({width:0,height:0,offsetHeight:0,offsetWidth:0}),v=null,t=null,o=function(){t&&(t.disconnect(),t=null)},O=function(f){var e=s.onResize,n=f[0].target,l=n.getBoundingClientRect(),p=l.width,w=l.height,d=n.offsetWidth,h=n.offsetHeight,c=Math.floor(p),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};j(r,b),e&&Promise.resolve().then(function(){e(m(m({},b),{},{offsetWidth:d,offsetHeight:h}),n)})}},R=y(),a=function(){var f=s.disabled;if(f){o();return}var e=B(R),n=e!==v;n&&(o(),v=e),!t&&e&&(t=new D(O),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};
|