y-design-ssr
Version:
SSR component library of YUI with Vue3
1,736 lines • 130 kB
JavaScript
import { ref as M, reactive as H, getCurrentInstance as ie, provide as Dt, isVNode as Se, inject as At, onUnmounted as we, computed as P, defineComponent as O, createVNode as c, watch as G, onMounted as J, nextTick as q, onBeforeUnmount as xe, onBeforeUpdate as ct, onUpdated as Cn, createTextVNode as $n, Fragment as je, createApp as Ce, h as Pe, Transition as He, withDirectives as oe, vShow as Ie, Teleport as dt, vModelText as Wt, mergeProps as Me, vModelDynamic as kn, resolveDirective as ht, watchEffect as Tn, unref as pt } from "vue";
const En = {
"pull-refresh": {
pulling: "下拉刷新...",
loosing: "释放刷新...",
loading: "数据加载中...",
success: "数据已更新",
failed: "数据跟新失败,请稍后再试"
},
"form-item": {
validateMessage: "请输入正确内容"
}
}, yt = M("zh-CN"), bt = H({
"zh-CN": En
}), Ft = {
text() {
return bt[yt.value];
},
use(e, t) {
yt.value = e, this.add({ [e]: t });
},
add(e = {}) {
Object.assign(bt, e);
}
}, Ve = (e) => (t) => Object.prototype.toString.call(t) === `[object ${e}]`, Ht = Ve("Function"), Nn = Ve("String"), Bn = Ve("Number"), Ln = Ve("Object"), Pn = Ve("Promise"), Ye = (e, t) => t ? typeof t == "string" ? ` ${e}--${t}` : Array.isArray(t) ? t.reduce((o, n) => o + Ye(e, n), "") : Object.keys(t).reduce(
(o, n) => o + (t[n] ? Ye(e, n) : ""),
""
) : "", In = (e) => (t, o) => {
let n = t, a = o;
return n && typeof n != "string" && (a = n, n = ""), n = n ? `${e}__${n}` : e, `${n}${Ye(n, a)}`;
}, Mn = () => (e, t) => t ? `${Ye(`y-${e}`, t)}` : `y-${e}`, _ = (e) => {
const t = `y-${e}`;
return [t, In(t), Mn()];
}, Yt = (e) => Ft.text()[e];
var jt = /* @__PURE__ */ ((e) => (e.Mini = "mini", e.Small = "small", e.Middle = "middle", e.Large = "large", e))(jt || {}), ft = /* @__PURE__ */ ((e) => (e.Top = "top", e.Middle = "middle", e.Bottom = "bottom", e))(ft || {}), et = /* @__PURE__ */ ((e) => (e.Top = "top", e.Right = "right", e.Bottom = "bottom", e.Left = "left", e.Center = "center", e))(et || {}), Xt = /* @__PURE__ */ ((e) => (e.simple = "simple", e.multi = "multi", e))(Xt || {}), Rt = /* @__PURE__ */ ((e) => (e.Top = "top", e.TopStart = "top-start", e.TopEnd = "top-end", e.Right = "right", e.RightStart = "right-start", e.RightEnd = "right-end", e.Left = "left", e.LeftStart = "left-start", e.LeftEnd = "left-end", e.Bottom = "bottom", e.BottomStart = "bottom-start", e.BottomEnd = "bottom-end", e))(Rt || {}), tt = /* @__PURE__ */ ((e) => (e.left = "left", e.top = "top", e.bottom = "bottom", e.right = "right", e))(tt || {}), Fe = /* @__PURE__ */ ((e) => (e.start = "start", e.center = "center", e.end = "end", e))(Fe || {}), Ut = /* @__PURE__ */ ((e) => (e.Start = "start", e.Center = "center", e.End = "end", e.SpaceBetween = "space-between", e.SpaceAround = "space-around", e))(Ut || {}), R = /* @__PURE__ */ ((e) => (e.DEFUALT = "normal", e.PULLING = "pulling", e.LOOSING = "loosing", e.LOADING = "loading", e.SUCCESS = "success", e.FAILED = "failed", e))(R || {}), ye = /* @__PURE__ */ ((e) => (e.UP = "up", e.DOWN = "down", e))(ye || {});
const W = (e) => isNaN(Number(e)) && typeof e == "string" ? e : `${e}px`, St = (e, t) => typeof e == "string" && e.includes("%") && e.includes("%") ? t * Number(e.replace(/%/g, "")) / 100 : Number(e), Vn = (e) => {
switch (e) {
case "top":
return "column-reverse";
case "bottom":
return "column";
case "left":
return "row-reverse";
case "right":
return "row";
default:
return "column";
}
}, On = (e) => {
const t = [], o = (n) => {
Array.isArray(n) && n.forEach((a) => {
var i;
Se(a) && (t.push(a), (i = a.component) != null && i.subTree && o(a.component.subTree.children), a.children && o(a.children));
});
};
return o(e), t;
}, _n = (e, t) => {
const o = On(t.subTree.children);
e.sort((n, a) => o.indexOf(n.vnode) - o.indexOf(a.vnode));
}, fe = (e) => {
const t = ie(), o = H([]);
return {
children: o,
initProvide: (a) => {
Dt(e, {
addChild: (r) => {
r.proxy && (o.push(r), t && _n(o, t));
},
removeChild: (r) => {
const u = o.indexOf(r);
o.splice(u, 1);
},
children: o,
...a
});
}
};
}, ce = (e) => {
const t = At(e, null), o = ie();
if (t && o) {
const { children: n, addChild: a, removeChild: i } = t;
return a(o), we(() => i(o)), {
index: P(() => n.indexOf(o)),
parent: t
};
}
return {
parent: null,
index: M(-1)
};
}, [zn, Dn] = _("swipe-item"), Le = /* @__PURE__ */ O({
name: zn,
props: {
clonenNode: {
type: Object,
default: null
},
index: {
type: Number,
default: -1
}
},
setup(e, {
slots: t
}) {
const o = ie(), {
parent: n
} = ce(Gt);
!e.clonenNode && o && (n == null || n.children.push(o));
const a = P(() => e.clonenNode ? e.index : n == null ? void 0 : n.children.findIndex((l) => l.proxy === (o == null ? void 0 : o.proxy))), i = P(() => {
const l = `${(n == null ? void 0 : n.itemDetail.size) || 0}px`;
let r = "auto";
const u = `${(n == null ? void 0 : n.itemDetail.space) || 0}px`;
return n != null && n.props.autoHeight && (n == null ? void 0 : n.activeIndex) !== a.value && (r = "0"), n != null && n.props.vertical ? {
height: l,
width: r,
marginBottom: u
} : {
width: l,
height: r,
marginRight: u
};
});
return () => {
var r, u;
const l = ((r = n == null ? void 0 : n.itemShowedList) == null ? void 0 : r.list[a.value || 0]) || !1;
return c("div", {
class: Dn(),
style: i.value
}, [l ? e.clonenNode || ((u = t.default) == null ? void 0 : u.call(t)) : null]);
};
}
}), An = {
autoplayTime: {
type: Number,
default: 0
},
duration: {
type: Number,
default: 300
},
initIndex: {
type: Number,
default: 0
},
loop: {
type: Boolean,
default: !0
},
dots: {
type: Boolean,
default: !0
},
dotsPosition: {
type: String,
default: null
},
dotsColor: {
type: String,
default: ""
},
lazy: {
type: Boolean,
default: !1
},
vertical: {
type: Boolean,
default: !1
},
autoHeight: {
type: Boolean,
default: !1
},
itemSize: {
type: [Number, String],
default: ""
},
itemSpace: {
type: [Number, String],
default: 0
},
minSwipeDistance: {
type: [Number, String],
default: "50%"
},
touchable: {
type: Boolean,
default: !0
},
isFollowHand: {
type: Boolean,
default: !0
},
align: {
type: String,
default: "center"
}
}, [qt, Xe] = _("swipe"), Gt = qt, Kt = /* @__PURE__ */ O({
name: qt,
components: {
YSwipeItem: Le
},
props: An,
setup(e, {
slots: t,
emit: o,
expose: n
}) {
const {
initProvide: a
} = fe(Gt), i = H([]), l = M(Number(e.initIndex)), r = H({
// 元素尺寸
size: 0,
// 间距
space: 0,
// 元素宽度比swipe小,占满整个视窗
isFillViewport: !1
}), u = H({
// 偏移量
offset: 0,
// 视窗大小
viewportSize: 0,
// 重复节点个数
cloneNodeCount: 0
}), h = M(), C = M(), v = () => {
const T = i.length, V = [];
for (let F = 0; F < T; F++)
V.push(!e.lazy);
return V;
}, b = () => {
if (!e.lazy)
return;
const T = r.size + r.space, V = i.length * T;
let F = -(u.offset + L.offset) - u.cloneNodeCount * T;
F < 0 && (F += V);
const Z = F + u.viewportSize;
for (let U = 0; U < i.length; U++)
if (!d.list[U]) {
const te = T * U, se = te + r.size;
(te >= F && te < Z || se > F && se < Z || te < F && se > Z) && (d.list[U] = !0);
}
}, d = H({
list: v()
}), w = () => {
d.list = v(), b();
};
G(() => [...i], w);
const f = (T, V) => {
T ? r.size = St(T, V) : r.size = V, r.space = Number(e.itemSpace) || 0, r.isFillViewport = r.size >= V, u.viewportSize = V, u.cloneNodeCount = g();
}, g = () => {
if (m.value) {
const T = r.size + r.space;
if (T === 0)
return 0;
const V = u.viewportSize * 2 - T, F = Math.ceil(V / T);
return Math.min(F, i.length - 1);
}
return 0;
}, y = () => {
if (!h.value)
return;
const {
width: T,
height: V
} = h.value.getBoundingClientRect();
e.vertical ? f(e.itemSize, V) : f(e.itemSize, T), l.value = l.value >= i.length ? i.length - 1 : l.value, l.value < 0 && (l.value = 0), s(l.value), w(), A();
};
J(() => {
if (q(y).catch(() => {
}), e.touchable && h.value) {
const T = h.value;
T.addEventListener("touchstart", X, !1), T.addEventListener("mousedown", X, !1), T.addEventListener("touchmove", j, !1), T.addEventListener("mousemove", j, !1), T.addEventListener("touchend", I, !1), T.addEventListener("mouseup", I, !1), T.addEventListener("mouseleave", I, !1), T.addEventListener("touchcancel", I, !1);
}
window.addEventListener("resize", y, !1), window.addEventListener("orientationchange", y, !1);
}), xe(() => {
if (B(), e.touchable && h.value) {
const T = h.value;
T.removeEventListener("touchstart", X, !1), T.removeEventListener("mousedown", X, !1), T.removeEventListener("mousemove", j, !1), T.removeEventListener("touchmove", j, !1), T.removeEventListener("mouseup", I, !1), T.removeEventListener("touchend", I, !1), T.removeEventListener("mouseleave", I, !1), T.removeEventListener("touchcancel", I, !1);
}
window.removeEventListener("resize", y, !1), window.removeEventListener("orientationchange", y, !1);
});
const $ = P(() => {
let T = 0;
switch (e.align) {
case Fe.start:
T = 0;
break;
case Fe.center:
T = (u.viewportSize - r.size) / 2;
break;
case Fe.end:
T = u.viewportSize - r.size;
break;
default:
T = 0;
}
return T;
}), m = P(() => e.loop && i.length > 1), s = (T) => {
const V = r.size + r.space;
m.value ? u.offset = -V * (T + u.cloneNodeCount) + $.value : (u.offset = -V * T + $.value, e.align !== "center" && (T === 0 && (u.offset = 0), T === i.length - 1 && (u.offset = -V * T + u.viewportSize - r.size)));
}, p = () => {
s(l.value), o("afterChange", l.value);
}, x = (T) => (i.length + T) % i.length, S = (T, V = !0) => {
l.value = x(T), s(T), b(), o("change", l.value), V ? (L.transitionEnabled = !0, C.value && C.value.addEventListener("transitionend", () => {
L.transitionEnabled = !1, p();
}, {
once: !0
})) : p();
}, k = (T = !0) => {
S(l.value - 1, T);
}, N = (T = !0) => {
S(l.value + 1, T);
};
let E = null;
const B = () => {
e.autoplayTime && E && clearInterval(E);
}, A = () => {
e.autoplayTime && i.length > 1 && (E && clearInterval(E), E = setInterval(() => {
N();
}, Number(e.autoplayTime)));
}, L = H({
// 拖拽中
isDragging: !1,
// 是否首次拖动
isFirstTouch: !0,
// 拖拽起始位置X
startX: 0,
// 拖拽起始位置Y
startY: 0,
// 拖拽距离
offset: 0,
// 开始拖动时间
startTime: /* @__PURE__ */ new Date(),
// 是否在执行动画
transitionEnabled: !1,
// 当前次拖拽不满足翻页条件
isDissatisfy: !1
}), X = (T) => {
if (L.transitionEnabled)
return;
let V = 0, F = 0;
"touches" in T ? (V = T.touches[0].clientX, F = T.touches[0].clientY) : (V = T.clientX, F = T.clientY), L.startX = V, L.startY = F, L.isDragging = !0, L.isFirstTouch = !0, L.startTime = /* @__PURE__ */ new Date(), B();
}, j = (T) => {
if (!L.isDragging)
return;
let V = 0, F = 0;
"touches" in T ? (V = T.touches[0].clientX, F = T.touches[0].clientY) : (V = T.clientX, F = T.clientY);
const Z = V - L.startX, U = F - L.startY;
if (L.isFirstTouch && (L.isFirstTouch = !1, Math.abs(Z) < Math.abs(U) !== e.vertical)) {
L.isDragging = !1;
return;
}
T.preventDefault(), L.offset = e.vertical ? U : Z, b(), o("dragging", {
percent: L.offset / (r.size + r.space),
offset: L.offset
}), L.isDissatisfy = !1;
}, I = () => {
if (!L.isDragging)
return;
L.isDragging = !1;
const V = (/* @__PURE__ */ new Date()).getTime() - L.startTime.getTime();
Y() && (Math.abs(L.offset) > D.value || Math.abs(L.offset) / V > 0.5) ? (L.offset > 0 ? k() : N(), L.offset = 0, L.isDissatisfy = !1) : (L.offset = 0, L.isDissatisfy = !0), A();
}, D = P(() => St(e.minSwipeDistance, r.size + r.space)), Y = () => {
if (m.value)
return !0;
const T = L.offset > 0 ? l.value - 1 : l.value + 1;
return T >= 0 && T < i.length;
}, le = P(() => {
const T = L.isDragging && !e.isFollowHand ? u.offset : u.offset + L.offset, V = {};
return e.vertical ? (V.transform = `translate3d(0, ${T}px, 0)`, V.transitionDuration = L.transitionEnabled || L.isDissatisfy ? `${e.duration}ms` : "0ms") : (V.transform = `translate3d(${T}px, 0, 0)`, V.transitionDuration = L.transitionEnabled || L.isDissatisfy ? `${e.duration}ms` : "0ms"), L.isDragging && (V.transition = "none"), e.vertical && (V.flexDirection = "column"), e.autoHeight && (V.display = "block", V.whiteSpace = "nowrap"), V;
}), K = P(() => ["y-swipe__dots", `y-swipe__dots--${e.dotsPosition || (e.vertical ? tt.left : tt.bottom)}`]);
n({
moveTo: S,
next: N,
prev: k,
resize: y
});
const ee = H({
children: i,
activeIndex: l,
props: e,
itemDetail: r,
itemShowedList: d
});
a(ee);
const re = () => e.dots ? c("div", {
class: K.value
}, [i.map((T, V) => {
const F = Xe("dot", {
active: V === l.value
});
return c("div", {
class: F,
style: {
backgroundColor: e.dotsColor
},
key: V
}, null);
})]) : null;
return () => {
var T;
return c("div", {
class: Xe(),
ref: h
}, [c("div", {
class: Xe("track"),
style: le.value,
ref: C
}, [Array(u.cloneNodeCount).fill("").map((V, F) => {
var te, se, $e;
const Z = x(F - u.cloneNodeCount), U = ($e = (te = i[Z]) == null ? void 0 : (se = te.slots).default) == null ? void 0 : $e.call(se);
return U ? c(Le, {
clonenNode: U,
index: Z
}, null) : null;
}), (T = t.default) == null ? void 0 : T.call(t), Array(u.cloneNodeCount).fill("").map((V, F) => {
var te, se, $e;
const Z = x(F), U = ($e = (te = i[Z]) == null ? void 0 : (se = te.slots).default) == null ? void 0 : $e.call(se);
return U ? c(Le, {
clonenNode: U,
index: Z
}, null) : null;
})]), t.dots ? t.dots() : re()]);
};
}
}), [Wn, wt] = _("tabs-title"), xt = /* @__PURE__ */ O({
name: Wn,
props: {
active: {
type: Boolean,
default: !1
},
scrollable: {
type: Boolean,
default: !1
},
title: {
type: String,
default: null
},
titleSlot: {
type: Function,
default: null
},
disabled: {
type: Boolean,
default: !1
}
},
setup(e) {
const {
parent: t
} = ce(mt), o = P(() => [{
"y-el--clickable": !e.disabled
}, wt({
scrollable: e.scrollable,
disabled: e.disabled
}), wt(`${(t == null ? void 0 : t.props.size) || "middle"}`, {
active: e.active
}), t == null ? void 0 : t.props.titleClass, e.active ? t == null ? void 0 : t.props.titleActiveClass : ""]), n = P(() => ({
...t == null ? void 0 : t.props.titleStyle,
...e.active ? {
...t == null ? void 0 : t.props.titleActiveStyle
} : {}
}));
return () => {
const {
title: a,
titleSlot: i
} = e;
return c("div", {
class: o.value,
title: a,
style: n.value,
role: "presentation"
}, [i ? i() : a]);
};
}
}), Re = null, Fn = {
initIndex: {
type: Number,
default: 0
},
initName: {
type: [Number, String],
default: null
},
duration: {
type: Number,
default: 300
},
lazy: {
type: Boolean,
default: !1
},
lineColor: {
type: String,
default: ""
},
lineWidth: {
type: [Number, String],
default: "12px"
},
lineHeight: {
type: [Number, String],
default: "3px"
},
titleWrapperClass: Re,
titleScrollThreshold: {
type: Number,
default: 5
},
titleStyle: {
type: [Object],
default: null
},
titleClass: {
type: Re,
default: null
},
titleActiveStyle: {
type: [Object],
default: null
},
titleActiveClass: {
type: Re,
default: null
},
touchable: {
type: Boolean,
default: !0
},
changeWithAnimation: {
type: Boolean,
default: !1
},
size: {
type: String,
default: "large"
},
align: {
type: String,
default: "center"
}
};
var nt = {}, Hn = {
get exports() {
return nt;
},
set exports(e) {
nt = e;
}
};
(function(e, t) {
(function() {
function o() {
var n = window, a = document;
if ("scrollBehavior" in a.documentElement.style && n.__forceSmoothScrollPolyfill__ !== !0)
return;
var i = n.HTMLElement || n.Element, l = 468, r = {
scroll: n.scroll || n.scrollTo,
scrollBy: n.scrollBy,
elementScroll: i.prototype.scroll || v,
scrollIntoView: i.prototype.scrollIntoView
}, u = n.performance && n.performance.now ? n.performance.now.bind(n.performance) : Date.now;
function h(s) {
var p = ["MSIE ", "Trident/", "Edge/"];
return new RegExp(p.join("|")).test(s);
}
var C = h(n.navigator.userAgent) ? 1 : 0;
function v(s, p) {
this.scrollLeft = s, this.scrollTop = p;
}
function b(s) {
return 0.5 * (1 - Math.cos(Math.PI * s));
}
function d(s) {
if (s === null || typeof s != "object" || s.behavior === void 0 || s.behavior === "auto" || s.behavior === "instant")
return !0;
if (typeof s == "object" && s.behavior === "smooth")
return !1;
throw new TypeError(
"behavior member of ScrollOptions " + s.behavior + " is not a valid value for enumeration ScrollBehavior."
);
}
function w(s, p) {
if (p === "Y")
return s.clientHeight + C < s.scrollHeight;
if (p === "X")
return s.clientWidth + C < s.scrollWidth;
}
function f(s, p) {
var x = n.getComputedStyle(s, null)["overflow" + p];
return x === "auto" || x === "scroll";
}
function g(s) {
var p = w(s, "Y") && f(s, "Y"), x = w(s, "X") && f(s, "X");
return p || x;
}
function y(s) {
for (; s !== a.body && g(s) === !1; )
s = s.parentNode || s.host;
return s;
}
function $(s) {
var p = u(), x, S, k, N = (p - s.startTime) / l;
N = N > 1 ? 1 : N, x = b(N), S = s.startX + (s.x - s.startX) * x, k = s.startY + (s.y - s.startY) * x, s.method.call(s.scrollable, S, k), (S !== s.x || k !== s.y) && n.requestAnimationFrame($.bind(n, s));
}
function m(s, p, x) {
var S, k, N, E, B = u();
s === a.body ? (S = n, k = n.scrollX || n.pageXOffset, N = n.scrollY || n.pageYOffset, E = r.scroll) : (S = s, k = s.scrollLeft, N = s.scrollTop, E = v), $({
scrollable: S,
method: E,
startTime: B,
startX: k,
startY: N,
x: p,
y: x
});
}
n.scroll = n.scrollTo = function() {
if (arguments[0] !== void 0) {
if (d(arguments[0]) === !0) {
r.scroll.call(
n,
arguments[0].left !== void 0 ? arguments[0].left : typeof arguments[0] != "object" ? arguments[0] : n.scrollX || n.pageXOffset,
// use top prop, second argument if present or fallback to scrollY
arguments[0].top !== void 0 ? arguments[0].top : arguments[1] !== void 0 ? arguments[1] : n.scrollY || n.pageYOffset
);
return;
}
m.call(
n,
a.body,
arguments[0].left !== void 0 ? ~~arguments[0].left : n.scrollX || n.pageXOffset,
arguments[0].top !== void 0 ? ~~arguments[0].top : n.scrollY || n.pageYOffset
);
}
}, n.scrollBy = function() {
if (arguments[0] !== void 0) {
if (d(arguments[0])) {
r.scrollBy.call(
n,
arguments[0].left !== void 0 ? arguments[0].left : typeof arguments[0] != "object" ? arguments[0] : 0,
arguments[0].top !== void 0 ? arguments[0].top : arguments[1] !== void 0 ? arguments[1] : 0
);
return;
}
m.call(
n,
a.body,
~~arguments[0].left + (n.scrollX || n.pageXOffset),
~~arguments[0].top + (n.scrollY || n.pageYOffset)
);
}
}, i.prototype.scroll = i.prototype.scrollTo = function() {
if (arguments[0] !== void 0) {
if (d(arguments[0]) === !0) {
if (typeof arguments[0] == "number" && arguments[1] === void 0)
throw new SyntaxError("Value could not be converted");
r.elementScroll.call(
this,
// use left prop, first number argument or fallback to scrollLeft
arguments[0].left !== void 0 ? ~~arguments[0].left : typeof arguments[0] != "object" ? ~~arguments[0] : this.scrollLeft,
// use top prop, second argument or fallback to scrollTop
arguments[0].top !== void 0 ? ~~arguments[0].top : arguments[1] !== void 0 ? ~~arguments[1] : this.scrollTop
);
return;
}
var s = arguments[0].left, p = arguments[0].top;
m.call(
this,
this,
typeof s > "u" ? this.scrollLeft : ~~s,
typeof p > "u" ? this.scrollTop : ~~p
);
}
}, i.prototype.scrollBy = function() {
if (arguments[0] !== void 0) {
if (d(arguments[0]) === !0) {
r.elementScroll.call(
this,
arguments[0].left !== void 0 ? ~~arguments[0].left + this.scrollLeft : ~~arguments[0] + this.scrollLeft,
arguments[0].top !== void 0 ? ~~arguments[0].top + this.scrollTop : ~~arguments[1] + this.scrollTop
);
return;
}
this.scroll({
left: ~~arguments[0].left + this.scrollLeft,
top: ~~arguments[0].top + this.scrollTop,
behavior: arguments[0].behavior
});
}
}, i.prototype.scrollIntoView = function() {
if (d(arguments[0]) === !0) {
r.scrollIntoView.call(
this,
arguments[0] === void 0 ? !0 : arguments[0]
);
return;
}
var s = y(this), p = s.getBoundingClientRect(), x = this.getBoundingClientRect();
s !== a.body ? (m.call(
this,
s,
s.scrollLeft + x.left - p.left,
s.scrollTop + x.top - p.top
), n.getComputedStyle(s).position !== "fixed" && n.scrollBy({
left: p.left,
top: p.top,
behavior: "smooth"
})) : n.scrollBy({
left: x.left,
top: x.top,
behavior: "smooth"
});
};
}
e.exports = { polyfill: o };
})();
})(Hn);
function Yn(e) {
return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !Se(e);
}
const [lt, Ue] = _("tabs"), mt = lt, jn = /* @__PURE__ */ O({
name: lt,
components: {
YTabTitle: xt
},
props: Fn,
setup(e, {
slots: t,
emit: o,
expose: n
}) {
const {
initProvide: a
} = fe(mt), i = M(!1), l = H([]), r = M(), u = P(() => l.length > e.titleScrollThreshold), h = (E) => l.findIndex((B) => (B.$props ? B.$props.name : "") === E), C = M(e.initName ? h(e.initName) : e.initIndex), v = (E) => {
C.value = E;
const B = r.value;
B && (B == null || B.moveTo(E, e.changeWithAnimation));
};
n({
scrollToByIndex: (E) => {
v(E);
},
scrollToByName: (E) => {
const B = h(E);
v(B);
}
});
const w = M([]), f = M(), g = (E) => (B) => {
w.value[E] = B;
}, y = (E) => {
const {
title: B,
name: A,
disabled: L
} = l[E].$props || {};
C.value !== E && (o(L ? "disabledClick" : "click", E, B, A), !L && v(E));
}, $ = async () => {
await q(() => {
if (!u.value || !f.value)
return;
const E = f.value;
if (!E || !w.value[C.value])
return;
const B = w.value[C.value].$el, A = B.offsetLeft - (E.offsetWidth - B.offsetWidth) / 2;
E.scrollTo({
left: A,
behavior: "smooth"
});
});
};
ct(() => {
w.value = [];
});
const m = H({
transform: "translateX(50%)",
transition: "all 0ms ease-out"
}), s = async () => {
await q(() => {
if (!w.value || w.value.length === 0)
return;
const E = C.value >= w.value.length ? 0 : C.value, B = w.value[E].$el, A = B.offsetLeft + B.offsetWidth / 2;
m.transform = `translateX(${A}px) translateX(-50%)`, i.value && (m.transition = `all ${e.duration}ms ease-out`), i.value = !0;
});
}, p = (E) => {
const {
title: B,
name: A
} = l[E].$props || {};
o("change", E, B, A), C.value = E;
}, x = (E) => {
const {
title: B,
name: A
} = l[E].$props || {};
o("afterChange", E, B, A), C.value = E;
}, S = H({
children: l,
activeIndex: C,
props: e
});
a(S);
const k = (E) => N(E) && /^\d+(\.\d+)?$/.test(E) ? `${E}px` : E, N = (E) => Object.prototype.toString.call(E) === "[object String]";
return J(async () => {
nt.polyfill(), await s();
}), G(() => C.value, async () => {
await s(), await $();
}), G(() => {
var E;
return (E = t.default) == null ? void 0 : E.length;
}, async () => {
await s();
}), () => {
let E;
return c("div", {
class: lt
}, [c("div", {
class: Ue("list")
}, [c("div", {
ref: f,
class: Ue("list-child-wrapper", {
scrollable: u.value,
[e.size]: e.size,
[e.align]: e.align
})
}, [l.length > 0 && l.map((B, A) => c(xt, {
title: B.title,
disabled: B.disabled,
"title-slot": B.$slots.title,
key: A,
ref: g(A),
active: C.value === A,
scrollable: u.value,
onClick: () => y(A)
}, null)), c("div", {
class: Ue("line"),
style: {
...m,
width: k(e.lineWidth),
height: k(e.lineHeight),
backgroundColor: e.lineColor
}
}, null)])]), t.default ? c(Kt, {
ref: r,
dots: !1,
loop: !1,
initIndex: C.value,
lazy: e.lazy,
touchable: e.touchable,
duration: e.duration,
"is-follow-hand": e.changeWithAnimation,
onChange: p,
onAfterChange: x
}, Yn(E = t.default()) ? E : {
default: () => [E]
}) : null]);
};
}
});
function z(e) {
const t = e;
return t.install = (o) => {
const { name: n } = e;
n && o.component(n, e);
}, t;
}
const Xn = z(jn);
function Rn(e) {
return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !Se(e);
}
const [Un] = _("tab"), qn = /* @__PURE__ */ O({
name: Un,
props: {
title: {
type: String,
default: ""
},
name: {
type: [String, Number],
default: ""
},
disabled: {
type: Boolean,
default: !1
}
},
setup(e, {
slots: t
}) {
const {
parent: o
} = ce(mt), n = ie();
return n.proxy && (o == null || o.children.push(n.proxy)), xe(() => {
o && (o.children = o.children.filter((a) => a !== n.proxy));
}), () => {
let a;
return t.default ? c(Le, null, Rn(a = t.default()) ? a : {
default: () => [a]
}) : null;
};
}
}), Gn = z(qn), Ct = 10, Kn = (e, t) => e > t && e > Ct ? "horizontal" : t > e && t > Ct ? "vertical" : "", Zn = (e, t) => Math.abs(e) > Math.abs(t) ? e > 0 ? "right" : "left" : t > 0 ? "bottom" : "top", Qn = () => {
const e = M(0), t = M(0), o = M(0), n = M(0), a = M(0), i = M(0), l = M(""), r = M(""), u = () => l.value === "vertical", h = () => l.value === "horizontal", C = () => {
o.value = 0, n.value = 0, a.value = 0, i.value = 0, l.value = "", r.value = "";
};
return {
move: (d) => {
const w = d.touches[0];
o.value = w.clientX < 0 ? 0 : w.clientX - e.value, n.value = w.clientY - t.value, a.value = Math.abs(o.value), i.value = Math.abs(n.value), l.value || (l.value = Kn(a.value, i.value)), r.value = Zn(o.value, n.value);
},
start: (d) => {
C(), e.value = d.touches[0].clientX, t.value = d.touches[0].clientY;
},
reset: C,
startX: e,
startY: t,
deltaX: o,
deltaY: n,
offsetX: a,
offsetY: i,
direction: l,
touchDirection: r,
isVertical: u,
isHorizontal: h
};
}, [Jn, Q] = _("slider"), el = /* @__PURE__ */ O({
name: Jn,
props: {
modelValue: {
type: [Number, Array],
default: 0
},
activeColor: {
type: String,
default: ""
},
inactiveColor: {
type: String,
default: ""
},
max: {
type: Number,
default: 100
},
min: {
type: Number,
default: 0
},
buttonBgColor: {
type: [String, Array],
default: ""
},
barHeight: {
type: [String, Number],
default: "2px"
},
disabled: {
type: Boolean,
default: !1
},
showTooltip: {
type: Boolean,
default: !1
},
step: {
type: Number,
default: 1
},
gapColor: {
type: String,
default: ""
},
gapWidth: {
type: [String, Number],
default: "2px"
},
transitionTime: {
type: Number,
default: 200
}
},
emits: ["change", "drag-start", "drag-end", "update:modelValue"],
setup(e, {
emit: t,
slots: o
}) {
const n = M(), a = M(0), i = M(0), l = M(""), r = Qn(), u = P(() => Array.isArray(e.modelValue)), h = (S) => {
const {
min: k,
max: N,
step: E
} = e, B = Math.max(k, Math.min(S, N));
return Math.round(B / E) * E;
}, C = (S) => {
if (S.stopPropagation(), e.disabled)
return;
const {
min: k,
modelValue: N
} = e, {
left: E,
width: B
} = n.value.getBoundingClientRect(), A = S.clientX - E, L = Math.floor(k + A / B * y.value);
if (u.value) {
const X = N[0], j = N[1], I = (X + j) / 2;
L <= I ? d([L, j]) : d([X, L]);
} else
d(L);
}, v = (S) => S[0] > S[1] ? [S[1], S[0]] : S, b = (S, k) => JSON.stringify(S) === JSON.stringify(k), d = (S, k) => {
let N = 0;
u.value ? N = v(S).map(h) : N = h(S), t("update:modelValue", N), typeof k > "u" && !b(a.value, i.value) && t("change", N);
}, w = P(() => {
const {
modelValue: S,
min: k
} = e;
let N = null;
return u.value ? N = Math.floor((h(S[1]) - h(S[0])) * 100 / y.value) : N = Math.floor((h(S) - k) * 100 / y.value), `${N}%`;
}), f = P(() => {
const {
modelValue: S,
min: k
} = e;
return u.value ? `${Math.floor((h(S[0]) - k) * 100 / y.value)}%` : "0%";
}), g = P(() => ({
left: w.value,
transition: l.value === "moving" ? "none" : `${e.transitionTime}ms ease-in-out`
})), y = P(() => e.max - e.min), $ = (S) => {
e.disabled || (r.start(S), l.value = "startMove", i.value = e.modelValue, u.value ? a.value = [...i.value] : a.value = i.value);
}, m = (S, k) => {
if (e.disabled)
return;
r.move(S), l.value === "startMove" && t("drag-start"), l.value = "moving";
const {
width: N
} = n.value.getBoundingClientRect(), E = r.deltaX.value, B = Math.floor(E / N * y.value);
Array.isArray(a.value) && Array.isArray(i.value) ? k === "left" ? i.value[0] = a.value[0] + B : i.value[1] = a.value[1] + B : i.value = a.value + B, d(i.value, !0);
}, s = () => {
e.disabled || (l.value === "moving" && (d(i.value), t("drag-end")), l.value = "endMove");
}, p = (S) => {
let k = "", N = {}, E = 0, B = Q("button-wrapper");
return S === 0 ? (k = "left", N = {
left: f.value,
backgroundColor: Array.isArray(e.buttonBgColor) ? e.buttonBgColor[0] : e.buttonBgColor
}, E = e.modelValue[S], B = Q("button-wrapper", "left")) : S === 1 ? (k = "right", E = e.modelValue[S], N = {
left: `${parseInt(w.value) + parseInt(f.value)}%`,
backgroundColor: Array.isArray(e.buttonBgColor) ? e.buttonBgColor[1] : e.buttonBgColor
}, B = Q("button-wrapper", "right")) : (E = e.modelValue, N = {
left: w.value,
backgroundColor: e.buttonBgColor
}), c("div", {
role: "slider",
"aria-valuemin": e.min,
"aria-valuemax": e.max,
"aria-valuenow": E,
class: B,
onTouchstart: $,
onTouchmove: (A) => m(A, k),
onTouchend: s,
style: {
...N,
transition: l.value === "moving" ? "none" : `${e.transitionTime}ms ease-in-out`
}
}, [o.button ? o.button() : c("div", {
class: Q("inner-button"),
style: N
}, null)]);
}, x = P(() => Array((e.max - e.min) / e.step).fill({}).map((k, N) => ({
position: `${N * e.step}%`
})));
return () => {
var S;
return c("div", {
class: Q()
}, [o.iconLeft && c("div", {
class: Q("icon", {
left: !0
})
}, [o.iconLeft()]), c("div", {
role: "presentation",
ref: n,
class: Q("wrapper-main", {
disabled: e.disabled
}),
style: {
background: e.inactiveColor,
height: W(e.barHeight)
},
onClick: C
}, [e.step !== 1 && c("div", {
class: Q("dots")
}, [x.value.map((k) => c("div", {
class: Q("dot"),
style: {
left: k.position,
background: e.gapColor,
width: W(e.gapWidth)
}
}, null))]), e.showTooltip && c("div", {
class: Q("tooltip", {
wrapper: o.toolTip
}),
style: g.value
}, [((S = o.toolTip) == null ? void 0 : S.call(o)) || e.modelValue]), c("div", {
style: {
left: f.value,
width: w.value,
background: e.activeColor,
transition: l.value === "moving" ? "none" : `${e.transitionTime}ms ease-in-out`
},
class: Q("inner")
}, null), u.value ? [p(0), p(1)] : p()]), o.iconRight && c("div", {
class: Q("icon", {
right: !0
})
}, [o.iconRight()])]);
};
}
});
const tl = z(el), [nl, ve] = _("loading"), ll = {
// Loading icon 的颜色
color: {
type: String,
default: ""
},
// 背景色
bgColor: {
type: String,
default: ""
},
bgBorderRadius: {
type: [Number, String],
default: "16px"
},
// 粗细
thick: {
type: [Number, String],
default: 8
},
// 方向
direction: {
type: String,
default: "forward"
},
// 大小
size: {
type: [Number, String],
default: "24px"
},
padding: {
type: [Number, String],
default: ""
},
// 文案
text: {
type: String,
default: ""
},
// 文案位置
textLocation: {
type: String,
default: "bottom"
},
// 文案大小
textSize: {
type: [Number, String],
default: ""
},
// 文案颜色
textColor: {
type: String,
default: ""
},
// 布局位置
position: {
type: String,
default: "relative"
}
}, gt = /* @__PURE__ */ O({
name: nl,
props: ll,
setup(e, {
slots: t
}) {
return () => {
var f, g;
const {
position: o,
textLocation: n,
bgColor: a,
bgBorderRadius: i,
size: l,
padding: r,
color: u,
thick: h,
direction: C,
text: v,
textColor: b,
textSize: d
} = e, w = ((f = t.default) == null ? void 0 : f.call(t)) || v;
return c("div", {
class: ve({
[o]: o !== "relative"
})
}, [c("div", {
class: ve("bg", {
[o]: o !== "relative"
}),
style: {
flexDirection: Vn(n),
backgroundColor: a,
borderRadius: W(i),
padding: W(r)
}
}, [c("span", {
class: ve("icon-wrapper"),
style: {
width: W(l),
height: W(l)
}
}, [((g = t.icon) == null ? void 0 : g.call(t)) || c("svg", {
class: ve("icon", {
[C]: C
}),
viewBox: "25 25 50 50"
}, [c("circle", {
class: ve("icon-circle"),
style: {
stroke: u,
strokeWidth: W(h)
},
cx: "50",
cy: "50",
r: "20",
fill: "none"
}, null)])]), w && c("span", {
class: ve("text", {
[n]: n
}),
style: {
color: b,
fontSize: W(d)
}
}, [w])])]);
};
}
}), [al, ue] = _("list"), ol = /* @__PURE__ */ O({
name: al,
props: {
// 加载中 文案
loadingText: {
type: String,
default: "加载中..."
},
// 加载完成 文案
finishedText: {
type: String,
default: "没有更多了~"
},
// 加载失败 文案
errorText: {
type: String,
default: "请求失败,点击重新加载"
},
// 容器高度
height: {
type: [Number, String],
default: "auto"
},
// 唯一键名称
keyName: {
type: String,
default: "_index"
},
// 列表数组
dataSource: {
type: Array,
default: () => []
},
// 是否在初始化时立即执行滚动位置检查
immediateCheck: {
type: Boolean,
default: !0
},
// 滚动条与底部距离小于多少时触发加载
loadOffset: {
type: Number,
default: 300
},
// 是否使用虚拟列表
virtual: {
type: Boolean,
default: !1
},
// 缓冲区比例
bufferScale: {
type: Number,
default: 1
},
// 列表子项预估高度
itemHeight: {
type: [String, Number],
default: "80"
},
// 是否是不定高度子项
dynamicItemHeight: {
type: Boolean,
default: !1
}
},
emits: ["load"],
setup(e, {
slots: t,
emit: o,
expose: n
}) {
const a = M(0), i = M(!1), l = M("normal"), r = M(), u = M(), h = M(), C = M([]), v = M(0), b = M(0), d = M([]), w = P(() => Bn(e.height) ? `${e.height}px` : e.height), f = P(() => d.value.length ? d.value[d.value.length - 1].bottom : 0), g = P(() => {
if (e.virtual) {
const I = v.value - y.value, D = b.value + $.value;
return s.value.slice(I, D);
}
return s.value;
}), y = P(() => Math.min(v.value, e.bufferScale * m.value)), $ = P(() => Math.min(e.dataSource.length - b.value, e.bufferScale * m.value)), m = P(() => Math.ceil(a.value / parseInt(String(e.itemHeight)))), s = P(() => e.dataSource.map((I, D) => (I[e.keyName] = D, I))), p = () => i.value ? document.documentElement.scrollTop || document.body.scrollTop : r.value.scrollTop, x = () => i.value ? document.documentElement.scrollHeight : r.value.scrollHeight, S = () => {
l.value !== "loading" && (l.value = "loading", o("load", (I) => {
if (l.value === "loading")
switch (I) {
case "error":
l.value = "error";
break;
case "finished":
l.value = "finished", e.virtual && N(), e.virtual && e.dynamicItemHeight && E();
break;
default:
l.value = "normal", e.virtual ? (E(), e.dataSource.length < m.value + $.value && S()) : q(() => {
k();
}).catch((D) => {
throw new Error(D);
});
}
}));
}, k = () => {
l.value === "normal" && x() - p() - a.value <= e.loadOffset && S();
}, N = () => {
d.value = s.value.map((I, D) => {
const Y = parseInt(String(e.itemHeight));
return {
index: D,
height: Y,
top: D * Y,
bottom: (D + 1) * Y
};
});
}, E = () => {
N();
for (let I = 1; I < d.value.length; I++)
d.value[I].top = d.value[I - 1].bottom, d.value[I].bottom = d.value[I].top + d.value[I].height;
}, B = (I, D) => {
let Y = 0, le = I.length - 1, K = -1;
for (; Y <= le; ) {
const ee = Math.floor((Y + le) / 2), re = I[ee].bottom;
if (re === D)
return ee + 1;
re < D ? Y = ee + 1 : re > D && ((K === -1 || K > ee) && (K = ee), le = ee - 1);
}
return K;
}, A = (I) => B(d.value, I), L = () => {
if (k(), e.virtual) {
const I = p();
X(I);
}
}, X = (I) => {
if (!u.value)
return;
const D = I || 0;
if (e.dynamicItemHeight) {
v.value = A(D), b.value = v.value + m.value;
const Y = d.value[v.value - y.value].top ? d.value[v.value - y.value].top : 0;
u.value.style.transform = `translate3d(0, ${Y}px, 0)`;
} else {
v.value = Math.floor(D / parseInt(String(e.itemHeight))), b.value = v.value + m.value;
const Y = v.value * parseInt(String(e.itemHeight)) - y.value * parseInt(String(e.itemHeight));
u.value.style.transform = `translate3d(0, ${Y}px, 0)`;
}
}, j = () => {
if (!u.value || !h.value)
return;
const I = u.value.children;
I && I.length > 0 && [...I].forEach((D) => {
if (D instanceof HTMLDivElement) {
const Y = D.getBoundingClientRect(), {
height: le
} = Y, K = Number(D.dataset.index), re = d.value[K].height - le;
if (re) {
d.value[K].bottom -= re, d.value[K].height = le;
for (let T = K + 1; T < d.value.length; T++)
d.value[T].top = d.value[T - 1].bottom, d.value[T].bottom -= re;
}
}
});
};
return n({
...e,
checkIsScrollToBottom: k,
loadData: S
}), J(() => {
e.height !== "auto" ? (i.value = !1, a.value = r.value.clientHeight) : e.height === "auto" && (i.value = !0, a.value = document.documentElement.clientHeight, document.addEventListener("scroll", L)), e.virtual && (N(), X()), e.immediateCheck && k();
}), Cn(async () => {
var I, D;
if (e.virtual && e.dynamicItemHeight) {
if (await q(), !((D = (I = u.value) == null ? void 0 : I.children) != null && D.length))
return;
j();
}
}), we(() => {
i.value && document.removeEventListener("scroll", L);
}), () => c("div", {
ref: r,
class: `${ue()} ${e.virtual ? ue({
virtual: !0
}) : ""}`,
style: {
height: w.value
},
onScroll: L
}, [e.virtual && c("div", {
ref: h,
class: ue("phantom"),
style: {
height: `${f.value}px`
}
}, null), c("div", {
ref: u,
class: ue("content")
}, [g.value.map((I) => {
var D;
return c("div", {
ref: C,
class: ue("item"),
"data-index": I._index
}, [(D = t.default) == null ? void 0 : D.call(t, {
item: I
})]);
})]), l.value === "loading" && c("div", {
class: ue({
loading: !0
})
}, [t.loading ? t.loading() : c(gt, {
"text-location": "right"
}, {
default: () => [$n("加载中...")]
})]), l.value === "finished" && c("div", {
class: ue({
finished: !0
})
}, [e.finishedText]), l.value === "error" && c("div", {
class: ue("error"),
role: "presentation",
onClick: S
}, [e.errorText]), l.value === "normal" && c("div", {
class: ue({
normal: !0
})
}, [t.normal ? t.normal() : null])]);
}
});
const il = z(ol);
const rl = z(Kt);
const sl = z(Le), Zt = "y-form-item", ul = () => {
const e = ie(), t = M();
return {
filed: t,
initProvide: (n) => {
Dt(Zt, {
setField: (i) => {
i != null && i.proxy && (t.value = i);
},
instance: e,
...n
});
}
};
}, me = () => {
const e = At(Zt, null), t = ie();
if (e && (t != null && t.proxy)) {
const { setField: o } = e, { resetValidation: n, change: a, validateWithTrigger: i } = e;
return G(
() => t.proxy.modelValue,
() => {
e.instance && e.instance.exposed && (n(), a(), i("onChange"));
}
), o(t), we(() => o(null)), {
parent: e
};
}
return {
parent: null
};
}, [cl, Oe] = _("icon"), dl = (e) => new RegExp(/\.(https|png|jpg|gif|jpeg|webp|apng)$/).test(e.toLowerCase()), fl = /* @__PURE__ */ O({
name: cl,
props: {
dot: {
type: Boolean,
default: !1
},
name: {
type: String,
default: ""
},
size: {
type: [Number, String],
default: ""
},
info: {
type: [Number, String],
default: ""
},
badge: {
type: [Number, String],
default: ""
},
color: {
type: String,
default: ""
},
subColor: {
type: String,
default: ""
},
subBg: {
type: String,
default: ""
},
classPrefix: {
type: String,
default: "y-icon"
},
/**
* @ignore
*/
tag: {
type: String,
default: "i"
}
},
emits: ["click"],
setup(e, {
slots: t,
emit: o
}) {
const n = dl(e.name), a = () => ({
fontSize: W(e.size),
color: e.color
}), i = (l) => {
o("click", l);
};
return () => {
const {
name: l,
classPrefix: r,
badge: u,
dot: h,
subColor: C,
subBg: v,
tag: b
} = e;
return c(b, {
class: `${r}${n ? "" : ` y-icon--${l}`}`,
style: a(),
onClick: i
}, {
default: () => {
var d;
return [n ? c("em", {
class: Oe("node")
}, [c("img", {
class: Oe("image"),
src: l,
alt: "icon"
}, null)]) : null, h ? c("em", {
class: Oe("dot"),
style: {
backgroundColor: v
}
}, null) : null, u ? c("em", {
class: Oe("badge"),
style: {
color: C,
backgroundColor: v
}
}, [u]) : null, ((d = t.default) == null ? void 0 : d.call(t)) || null];
}
});
};
}
});
const ge = z(fl), ml = {
/**
* @ignore
*/
modelValue: {
type: Array,
default: () => []
},
/**
* 最多选中数目
*/
max: {
type: Number,
default: null
},
/**
* 最少选中数目
*/
min: {
type: Number,
default: null
},
/**
* 禁用
*/
disabled: {
type: Boolean,
default: null
},
/**
* 是否为方形
*/
square: {
type: Boolean,
default: null
},
/**
* 选中颜色
*/
checkedColor: {
type: String,
default: null
},
/**
* 水平排列
*/
horizontal: {
type: Boolean,
default: !1
}
}, [Qt, gl] = _("checkbox-group"), Jt = Qt, vl = /* @__PURE__ */ O({
name: Qt,
props: ml,
setup(e, {
slots: t,
emit: o,
expose: n
}) {
const {
initProvide: a
} = fe(Jt), i = H([]);
me();
const l = (h) => {
o("update:modelValue", h), o("change", h);
}, r = (h) => {
const C = [...e.modelValue], v = C.indexOf(h);
if (v >= 0) {
if (e.min !== null && C.length <= e.min)
return;
C.splice(v, 1), l(C);
} else {
if (e.max !== null && C.length >= e.max)
return;
l([...C, h]);
}
};
return n({
toggleAll: (h = null) => {
l(h === null ? e.modelValue.length === 0 ? i : [] : h ? i : []);
}
}), a({
props: e,
onItemChange: r,
allItemNames: i
}), () => {
var h;
return c("div", {
class: gl({
horizontal: e.horizontal
})
}, [(h = t.default) == null ? void 0 : h.call(t)]);
};
}
}), [hl, qe] = _("checkbox"), pl = /* @__PURE__ */ O({
name: hl,
props: {
modelValue: {
type: Boolean,
default: !1
},
name: {
type: String,
default: null
},
disabled: {
type: Boolean,
default: !1
},
size: {
type: [String, Number],
default: "middle"
},
square: {
type: Boolean,
default: !0
},
checkedColor: {
type: String,
default: ""
}
},
setup(e, {
slots: t,
emit: o,
expose: n
}) {
const {
parent: a
} = ce(Jt), i = a === null ? me().parent : null;
a && a.allItemNames.push(e.name);
const l = (f, g = null) => P(() => a && a.props[f] !== null ? a.props[f] : Object.keys(e).includes(f) ? e[f] : g), r = l("disabled"), u = l("square"), h = l("checkedColor"), C = l("horizontal", !1), v = P(() => a ? a.props.modelValue.includes(e.name) : e.modelValue), b = (f) => {
var g;
r.value || typeof f < "u" && v.value === f || ((g = a == null ? void 0 : a.onItemChange) == null || g.call(a, e.name), o("update:modelValue", !e.modelValue), o("change", !e.modelValue));
};
n({
toggle: b
});
const d = P(() => ["mini", "small", "middle", "large"].includes(e.size.toString() || (i == null ? void 0 : i.g