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