sd-component-library
Version:
A Vue3 + Element Plus components library
47 lines (46 loc) • 1.98 kB
JavaScript
import { c as u, h as f } from "./base-B4QkiMzD.js";
import { isVNode as T } from "vue";
let i;
const m = (e) => {
var s;
if (!u)
return 0;
if (i !== void 0)
return i;
const t = document.createElement("div");
t.className = `${e}-scrollbar__wrap`, t.style.visibility = "hidden", t.style.width = "100px", t.style.position = "absolute", t.style.top = "-9999px", document.body.appendChild(t);
const o = t.offsetWidth;
t.style.overflow = "scroll";
const r = document.createElement("div");
r.style.width = "100%", t.appendChild(r);
const n = r.offsetWidth;
return (s = t.parentNode) == null || s.removeChild(t), i = o - n, i;
};
function v(e, s) {
if (!u)
return;
if (!s) {
e.scrollTop = 0;
return;
}
const t = [];
let o = s.offsetParent;
for (; o !== null && e !== o && e.contains(o); )
t.push(o), o = o.offsetParent;
const r = s.offsetTop + t.reduce((A, N) => A + N.offsetTop, 0), n = r + s.offsetHeight, p = e.scrollTop, S = p + e.clientHeight;
r < p ? e.scrollTop = r : n > S && (e.scrollTop = n - e.clientHeight);
}
var l = /* @__PURE__ */ ((e) => (e[e.TEXT = 1] = "TEXT", e[e.CLASS = 2] = "CLASS", e[e.STYLE = 4] = "STYLE", e[e.PROPS = 8] = "PROPS", e[e.FULL_PROPS = 16] = "FULL_PROPS", e[e.HYDRATE_EVENTS = 32] = "HYDRATE_EVENTS", e[e.STABLE_FRAGMENT = 64] = "STABLE_FRAGMENT", e[e.KEYED_FRAGMENT = 128] = "KEYED_FRAGMENT", e[e.UNKEYED_FRAGMENT = 256] = "UNKEYED_FRAGMENT", e[e.NEED_PATCH = 512] = "NEED_PATCH", e[e.DYNAMIC_SLOTS = 1024] = "DYNAMIC_SLOTS", e[e.HOISTED = -1] = "HOISTED", e[e.BAIL = -2] = "BAIL", e))(l || {});
const E = (e) => {
const s = f(e) ? e : [e], t = [];
return s.forEach((o) => {
var r;
f(o) ? t.push(...E(o)) : T(o) && ((r = o.component) != null && r.subTree) ? t.push(o, ...E(o.component.subTree)) : T(o) && f(o.children) ? t.push(...E(o.children)) : T(o) && o.shapeFlag === 2 ? t.push(...E(o.type())) : t.push(o);
}), t;
};
export {
l as P,
E as f,
m as g,
v as s
};