@opensig/opendesign
Version:
30 lines (29 loc) • 734 B
JavaScript
import { useResizeObserver } from "../hooks/use-resize-observer.mjs";
import { isFunction } from "../_utils/is.mjs";
import "vue";
import "../hooks/use-theme.mjs";
import "../_utils/global.mjs";
import "@vueuse/core";
let ro = null;
const listenerMap = /* @__PURE__ */ new WeakMap();
const vOnResize = {
beforeMount() {
ro = useResizeObserver();
},
mounted(el, binding) {
if (isFunction(binding.value)) {
listenerMap.set(el, binding.value);
ro == null ? void 0 : ro.observe(el, binding.value);
}
},
unmounted(el) {
const listener = listenerMap.get(el);
if (listener) {
ro == null ? void 0 : ro.unobserve(el, listener);
listenerMap.delete(el);
}
}
};
export {
vOnResize
};