UNPKG

@yhsoft/rapid-design

Version:

Rapid Design 是基于 Vue 3 开发的轻量级 UI 组件库,可用于快速搭建原型、网站或者企业应用。

1,599 lines 54.9 kB
import { computed as u, openBlock as c, createElementBlock as d, normalizeClass as f, renderSlot as m, createTextVNode as P, toDisplayString as w, provide as A, inject as F, createElementVNode as i, getCurrentInstance as K, ref as b, reactive as X, onMounted as I, nextTick as Pe, normalizeStyle as N, useSlots as et, watch as qe, withDirectives as we, vShow as Se, Fragment as L, renderList as B, unref as Y, createCommentVNode as tt, pushScopeId as nt, popScopeId as at, onUpdated as st, onUnmounted as lt, createVNode as j, withCtx as H, createBlock as Ae, Transition as Re, render as rt, Teleport as ot, resolveDynamicComponent as it, watchEffect as ct } from "vue"; const p = (e, n) => { const a = e.__vccOpts || e; for (const [t, s] of n) a[t] = s; return a; }, dt = { name: "Alert", props: { type: { type: String, default: "info", validator: (e) => [ "default", "dark", "info", "success", "warning", "error" ].includes(e) }, message: String, description: String, closeable: { type: Boolean, default: !1 }, showIcon: { type: Boolean, default: !1 } }, emits: ["onClose"], setup(e, { emit: n }) { return { classes: u(() => `alert-${e.type}`), onClose: (s) => { n("onClose", s); } }; } }; function ut(e, n, a, t, s, l) { return c(), d("div", { class: f(["alert", t.classes]) }, [ m(e.$slots, "icon"), P(" " + w(a.message), 1) ], 2); } const le = /* @__PURE__ */ p(dt, [["render", ut]]); le.install = function(e, n) { return e.component(le.name, le), e; }; const mt = { name: "Breadcrumb", props: { separator: { type: String, default: "/" } }, setup(e) { return A("BreadcrumbScope", { separator: e.separator }), {}; } }, ft = { class: "breadcrumb" }; function pt(e, n, a, t, s, l) { return c(), d("div", ft, [ m(e.$slots, "default") ]); } const re = /* @__PURE__ */ p(mt, [["render", pt]]), vt = { name: "BreadcrumbItem", setup() { return { separator: F("BreadcrumbScope").separator }; } }, ht = { class: "breadcrumb-separator" }; function gt(e, n, a, t, s, l) { return c(), d("span", null, [ i("span", null, [ m(e.$slots, "default") ]), i("em", ht, w(t.separator), 1) ]); } const Ie = /* @__PURE__ */ p(vt, [["render", gt]]); re.install = function(e, n) { return e.component(re.name, re), e.component(Ie.name, Ie), e; }; const yt = ["type"], $t = { name: "Button" }, q = /* @__PURE__ */ Object.assign($t, { props: { block: { type: Boolean, default: !1 }, classNames: { type: Object, default: () => { } }, disabled: { type: Boolean, default: !1 }, ghost: { type: Boolean, default: !1 }, loading: { type: Boolean, default: !1 }, shape: { type: String, default: "default", validator: (e) => ["default", "circle", "round"].includes(e) }, htmlType: { type: String, default: "button" }, size: { type: String, default: "middle", validator: (e) => ["large", "middle", "small"].includes(e) }, type: { type: String, default: "default", validator: (e) => [ "default", "primary", "info", "success", "warning", "danger", "text", "link", "dashed" ].includes(e) } }, emits: ["onClick"], setup(e, { emit: n }) { const a = "btn", t = e, s = n, l = u(() => [ `${a}-${t.type}`, { [`${a}-lg`]: t.size === "large" }, { [`${a}-sm`]: t.size === "small" }, { ghost: t.ghost }, { [`${a}-block`]: t.block } ]), r = (o) => { s("onClick", o); }; return (o, v) => (c(), d("button", { type: e.htmlType, class: f(["btn", l.value]), onClick: r }, [ m(o.$slots, "icon"), P(), m(o.$slots, "default") ], 10, yt)); } }); q.install = function(e, n) { return e.component(q.name, q), e; }; const _t = { name: "Card", props: { actions: { type: Array, default: () => [] }, bordered: { type: Boolean, default: !0 }, borderRadius: { type: [Number, String], default: 0 }, cover: { type: String, default: void 0 }, title: { type: String, default: "" } }, setup(e) { return { classes: u(() => ["card", { "card-bordered": e.bordered }]) }; } }, bt = { class: "card-header" }, wt = { class: "card-header-title" }, St = { class: "card-body" }, Ct = /* @__PURE__ */ i("div", { class: "card-body-cover" }, null, -1), xt = { class: "card-footer" }; function kt(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes) }, [ i("div", bt, [ m(e.$slots, "title", {}, () => [ i("div", wt, w(a.title), 1) ]) ]), i("div", St, [ Ct, m(e.$slots, "default") ]), i("div", xt, [ m(e.$slots, "footer") ]) ], 2); } const oe = /* @__PURE__ */ p(_t, [["render", kt]]); oe.install = function(e, n) { return e.component(oe.name, oe), e; }; const Nt = { name: "Carousel", props: { autoplay: { type: Boolean, default: !0 }, displayCount: { type: Number, default: 6 }, interval: { type: Number, default: 3e3 } }, setup(e, { slots: n }) { const a = K(), t = u(() => ["carousel"]), s = b([]), l = n.default().filter((z) => z.type.name === "CarouselItem"), r = l.length - 1, o = X({ prevIndex: 0, nextIndex: r, timer: void 0, itemSize: { width: 0, height: 0 }, translate: 0 }), v = u(() => ({ // width: `${Number(data.itemSize.width) * items.value.length}px`, height: o.itemSize.height === 0 ? "unset" : `${o.itemSize.height}px` })), h = (z) => { s.value.push(z); }, x = () => { o.nextIndex < 0 && (o.nextIndex = l.length - 1), o.translate += o.itemSize.width, o.prevIndex = o.nextIndex; const z = s.value[o.nextIndex--]; z.left -= o.itemSize.width * s.value.length; }, S = () => { o.prevIndex === s.value.length && (o.prevIndex = 0), o.translate -= o.itemSize.width, o.nextIndex = o.prevIndex; const z = s.value[o.prevIndex++]; setTimeout(() => { z.left += o.itemSize.width * s.value.length; }, 600); }, M = () => { e.autoplay && e.interval > 0 && (o.timer = setInterval(() => x(), e.interval)); }, $ = () => { o.timer && (clearInterval(o.timer), o.timer = void 0); }, E = () => { $(); }, xe = () => { M(); }; return I(() => { M(), Pe(() => { const z = a.vnode.el.clientWidth; o.itemSize.width = Number( (z * 1 / e.displayCount).toFixed(3) ), s.value.forEach((G, Q) => { G.left += o.itemSize.width * Q; }); }); }), A("CarouselScope", { data: o, items: s, addItem: h, startTimer: M, stopTimer: $ }), { classes: t, ulStyles: v, prevHandler: x, nextHandler: S, handleEnter: E, handleLeave: xe }; } }; function Mt(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes) }, [ i("ul", { style: N(t.ulStyles) }, [ m(e.$slots, "default") ], 4), i("div", { class: "carousel-control carousel-prev", onClick: n[0] || (n[0] = (...r) => t.prevHandler && t.prevHandler(...r)), onMouseenter: n[1] || (n[1] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[2] || (n[2] = (...r) => t.handleLeave && t.handleLeave(...r)) }, " ‹ ", 32), i("div", { class: "carousel-control carousel-next", onClick: n[3] || (n[3] = (...r) => t.nextHandler && t.nextHandler(...r)), onMouseenter: n[4] || (n[4] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[5] || (n[5] = (...r) => t.handleLeave && t.handleLeave(...r)) }, " › ", 32) ], 2); } const ie = /* @__PURE__ */ p(Nt, [["render", Mt]]), zt = { name: "CarouselItem", setup() { const e = F("CarouselScope"), n = K(), a = u(() => { const l = e.items.value.filter( (r) => r.uid === n.uid )[0]; return { width: `${e.data.itemSize.width}px`, left: `${l == null ? void 0 : l.left}px`, transform: `translateX(${e.data.translate}px)` }; }), t = () => { e.stopTimer(); }, s = () => { e.startTimer(); }; return I(() => { Pe(() => { const l = setInterval(() => { const r = n.vnode.el.clientHeight; r > 16 && e.data.itemSize.height == 0 && (e.data.itemSize.height = r, clearInterval(l)); }, 600); }), e.addItem({ uid: n.uid, left: 0 }); }), { styles: a, handleEnter: t, handleLeave: s }; } }; function It(e, n, a, t, s, l) { return c(), d("li", { class: "carousel-item", style: N(t.styles), onMouseenter: n[0] || (n[0] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[1] || (n[1] = (...r) => t.handleLeave && t.handleLeave(...r)) }, [ m(e.$slots, "default") ], 36); } const Te = /* @__PURE__ */ p(zt, [["render", It]]); ie.install = function(e, n) { return e.component(ie.name, ie), e.component(Te.name, Te), e; }; const Tt = { setup() { return {}; } }, Lt = { class: "container" }; function Bt(e, n, a, t, s, l) { return c(), d("div", Lt, [ m(e.$slots, "default") ]); } const ce = /* @__PURE__ */ p(Tt, [["render", Bt]]); ce.install = (e) => e.component(ce.name, ce); const Et = { name: "Decorator", props: { color: { type: String, default: "" }, placement: { type: String, default: "leftTop", validator: (e) => ["leftTop", "rightTop", "leftBottom", "rightBottom"].includes(e) }, title: { type: String, default: "" }, type: { type: String, default: "marker", validator: (e) => ["label", "marker"].includes(e) } }, setup(e) { const n = u(() => { let t = e.placement; return t = t.replace( /[A-Z]/, `-${/[A-Z]/g.exec(t)[0].toLowerCase()}` ), ["decorator", `decorator-${e.type}`, t]; }), a = u(() => [`corner-${e.type}`]); return { classes: n, innerClasses: a }; } }, Dt = { class: "decorator-wrap" }; function Ot(e, n, a, t, s, l) { return c(), d("div", Dt, [ m(e.$slots, "default"), i("div", { class: f(t.classes) }, [ i("div", { class: f(t.innerClasses) }, w(a.title), 3) ], 2) ]); } const de = /* @__PURE__ */ p(Et, [["render", Ot]]); de.install = (e) => e.component(de.name, de); const jt = (e) => (nt("data-v-419cd8db"), e = e(), at(), e), Ht = { class: "calendar" }, Vt = { class: "calendar-header" }, Pt = { class: "month" }, At = { class: "operation" }, Ft = { class: "weeks" }, Gt = ["data-p"], Wt = { key: 0, class: "event-marker" }, Ut = /* @__PURE__ */ jt(() => /* @__PURE__ */ i("div", { class: "marker" }, null, -1)), Yt = { name: "Calendar" }, qt = /* @__PURE__ */ Object.assign(Yt, { props: { weekStart: { type: Number, default: 1, validator: (e) => [0, 1].includes(e) }, events: { type: Array, default: () => [] }, eventMarker: { type: String, default: "dot" } }, emits: ["change", "selected"], setup(e, { emit: n }) { const a = e, t = n; et(); const s = b(2024), l = b(1), r = b(1), o = a.weekStart === 0 ? ["日", "一", "二", "三", "四", "五", "六"] : ["一", "二", "三", "四", "五", "六", "日"], v = b([]); b([]); const h = b(!1), x = b([1, 1]), S = b(30); let M = ""; const $ = () => { let y = /* @__PURE__ */ new Date(); s.value = y.getFullYear(), l.value = y.getMonth(), r.value = y.getDate(), E(); }, E = () => { let y = /* @__PURE__ */ new Date(); const g = y.getFullYear(), _ = y.getMonth(), C = y.getDate(); let k = new Date(s.value, l.value, 1).getDay(), T = [31, 28 + (xe(s.value) ? 1 : 0), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; k === 0 && (k = 7); let ke = Math.ceil((k + T[l.value]) / 7); v.value = []; for (let W = 0; W < ke; W++) { let We = new Array(); for (let U = a.weekStart; U < 7 + a.weekStart; U++) { let Z = 7 * W + U - k + 1, J = { disabled: !1, selected: !1, active: !1, event: !1, arrow: !1, dot: !1 }, te = s.value, ne = l.value + 1, D = 0; if (Z < 1) { let ae = l.value === 0 ? 11 : l.value - 1, Ne = l.value === 0 ? s.value - 1 : s.value; D = Z + T[ae], J.disabled = !0, ne = ae + 1, te = Ne; } else if (Z > T[l.value]) { let ae = l.value === 11 ? 0 : l.value + 1, Ne = l.value === 11 ? s.value + 1 : s.value; D = Z - T[l.value], J.disabled = !0, ne = ae + 1, te = Ne; } else D = Z, g === s.value && _ === l.value && C === D && (J.active = !0, y = D); J.selected = `${te}-` + `${ne}`.padStart(2, 0) + "-" + `${D}`.padStart(2, 0) === M, We.push({ row: W + 1, column: U + (1 - a.weekStart), week: U === 0 ? 7 : U, year: te, month: ne, day: D, monthEnd: T[l.value], className: J }); } v.value.push(We); } Q(); }, xe = (y) => y % 4 == 0 ? y % 100 != 0 ? !0 : y % 400 == 0 : !1, z = (y) => { const g = y.target; let [_, C] = x.value; v.value[_ - 1][C - 1].className.selected = !1; let ee = g.getAttribute("data-p"); x.value = JSON.parse(`[${ee}]`), [_, C] = x.value; let k = v.value[_ - 1][C - 1]; k.className.selected = !0, r.value = parseInt(g.innerText); const R = k.year, T = `${k.month}`.padStart(2, 0), ke = `${k.day}`.padStart(2, 0); if (M = `${R}-${T}-${ke}`, k.className.disabled) { const W = k.row === 1 ? -1 : 1; G(W); } t("selected", { date: M, week: k.week, pos: [_, C] }); }, G = (y) => { if (y === 0) { let g = /* @__PURE__ */ new Date(); s.value = g.getFullYear(), l.value = g.getMonth(), h.value = !1; } else h.value = !0, l.value += y, l.value > 11 ? (l.value = 0, s.value++) : l.value < 0 && (l.value = 11, s.value--); E(), t("change"); }, Q = () => { v.value.forEach((y) => { y.forEach((g) => { const _ = g.year, C = `${g.month}`.padStart(2, 0), ee = `${g.day}`.padStart(2, 0), k = `${_}-${C}-${ee}`, R = a.events.some((T) => T == k); g.event = R, g.className.event = R, g.className.arrow = a.eventMarker === "arrow", g.className.dot = a.eventMarker === "dot"; }); }); }, Qe = () => { window.onresize = () => { Ge(); }; }, Ge = () => { S.value = document.querySelector(".day").clientWidth; }; return qe(a.events, () => { Q(); }), I(() => { $(), Qe(), Pe(() => { Ge(); }); }), (y, g) => (c(), d("div", Ht, [ i("div", Vt, [ i("div", Pt, w(s.value) + "年" + w(l.value + 1) + "月", 1), i("div", At, [ we(i("a", { class: "back", onClick: g[0] || (g[0] = (_) => G(0)) }, "今日", 512), [ [Se, h.value] ]), i("i", { class: "btn arrow-left", onClick: g[1] || (g[1] = (_) => G(-1)) }), i("i", { class: "btn arrow-right", onClick: g[2] || (g[2] = (_) => G(1)) }) ]) ]), i("div", Ft, [ (c(!0), d(L, null, B(Y(o), (_) => (c(), d("div", { class: "week", key: _ }, w(_), 1))), 128)) ]), i("div", { class: "days", onClick: z }, [ (c(!0), d(L, null, B(v.value, (_) => (c(), d("div", { class: "a-week", key: _.index }, [ (c(!0), d(L, null, B(_, (C) => (c(), d("div", { class: f(["day", C.className]), key: C.day, "data-p": [C.row, C.column], style: N({ height: `${S.value}px` }) }, [ P(w(C.day) + " ", 1), C.event ? (c(), d("div", Wt, [ m(y.$slots, "eventMarker", {}, () => [ Ut ], !0) ])) : tt("", !0) ], 14, Gt))), 128)) ]))), 128)) ]) ])); } }), ue = /* @__PURE__ */ p(qt, [["__scopeId", "data-v-419cd8db"]]); ue.install = (e) => { e.component(ue.name, ue); }; const Rt = { name: "Swiper", props: { autoplay: { type: Boolean, default: !0 }, interval: { type: Number, default: 3e3 } }, setup(e) { const n = u(() => ["swiper"]), a = X({ activeUid: 0, timer: void 0, itemHeight: 0 }), t = u(() => ({ height: a.itemHeight === 0 ? "unset" : `${a.itemHeight}px` })), s = b([]), l = () => { a.activeUid = s.value[0]; }, r = ($) => { s.value.push($); }, o = () => { e.autoplay && e.interval > 0 && (a.timer = setInterval(() => x(), e.interval)); }, v = () => { a.timer && (clearInterval(a.timer), a.timer = void 0); }, h = () => { let $ = s.value.indexOf(a.activeUid); $ = $ > 0 ? $ : s.value.length, a.activeUid = s.value[--$]; }, x = () => { let $ = s.value.indexOf(a.activeUid); $ = $ < s.value.length - 1 ? $ : -1, a.activeUid = s.value[++$]; }, S = () => { v(); }, M = () => { o(); }; return I(() => { l(), o(); }), st(() => { }), lt(() => { v(); }), A("SwiperScope", { data: a, addItem: r, startTimer: o, stopTimer: v }), { classes: n, items: s, styles: t, prevHandler: h, nextHandler: x, handleEnter: S, handleLeave: M }; } }, Zt = /* @__PURE__ */ i("svg", { viewBox: "64 64 896 896", focusable: "false", "data-icon": "left", width: "1em", height: "1em", fill: "currentColor", "aria-hidden": "true" }, [ /* @__PURE__ */ i("path", { d: "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" }) ], -1), Jt = [ Zt ], Xt = /* @__PURE__ */ i("svg", { viewBox: "64 64 896 896", focusable: "false", "data-icon": "right", width: "1em", height: "1em", fill: "currentColor", "aria-hidden": "true" }, [ /* @__PURE__ */ i("path", { d: "M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z" }) ], -1), Kt = [ Xt ]; function Qt(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default"), i("div", { class: "swiper-control swiper-prev", role: "img", onClick: n[0] || (n[0] = (...r) => t.prevHandler && t.prevHandler(...r)), onMouseenter: n[1] || (n[1] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[2] || (n[2] = (...r) => t.handleLeave && t.handleLeave(...r)) }, Jt, 32), i("div", { class: "swiper-control swiper-next", role: "img", onClick: n[3] || (n[3] = (...r) => t.nextHandler && t.nextHandler(...r)), onMouseenter: n[4] || (n[4] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[5] || (n[5] = (...r) => t.handleLeave && t.handleLeave(...r)) }, Kt, 32) ], 6); } const me = /* @__PURE__ */ p(Rt, [["render", Qt]]), en = { name: "SwiperItem", props: { title: { type: String, default: "" } }, setup() { const e = F("SwiperScope"), n = K(), a = u(() => [ "swiper-item", { active: e.data.activeUid === n.uid } ]), t = () => { e.stopTimer(); }, s = () => { e.startTimer(); }; return I(() => { const l = setInterval(() => { const r = n.vnode.el.clientHeight; r > 16 && e.data.itemHeight == 0 && (e.data.itemHeight = r, clearInterval(l)); }, 600); e.addItem(n.uid); }), { classes: a, handleEnter: t, handleLeave: s }; } }; function tn(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), onMouseenter: n[0] || (n[0] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[1] || (n[1] = (...r) => t.handleLeave && t.handleLeave(...r)) }, [ m(e.$slots, "default") ], 34); } const Le = /* @__PURE__ */ p(en, [["render", tn]]); me.install = (e) => (e.component(me.name, me), e.component(Le.name, Le), e); const nn = { class: "rd-form" }, an = { name: "Form" }, fe = /* @__PURE__ */ Object.assign(an, { props: { labelAlign: { type: String, default: "right", validator: (e) => ["left", "right"].includes(e) }, labelCol: { type: Object, default: () => ({ span: 8 }) }, layout: { type: String, default: "horizontal", validator: (e) => ["horizontal", "vertical", "inline"].includes(e) }, name: { type: String, default: "" }, size: { type: String, default: "middle", validator: (e) => ["large", "middle", "small"].includes(e) }, wrapperCol: { type: Object, default: () => ({ span: 16 }) } }, emits: ["onFinish", "onFinishFailed", "onValuesChange"], setup(e, { emit: n }) { const a = e; return A("formScope", { labelAlign: u(() => a.labelAlign), labelCol: u(() => a.labelCol), wrapperCol: u(() => a.wrapperCol) }), (t, s) => (c(), d("div", nn, [ m(t.$slots, "default") ])); } }), Ue = "grid", sn = { name: "Col", props: { flex: { type: [String, Number], default: "" }, offset: { type: [Number, String], default: 0 }, order: { type: Number, default: 0 }, pull: { type: Number, default: 0 }, push: { type: Number, default: 0 }, span: { type: Number }, xs: [Number, String], sm: [Number, String], md: [Number, String], lg: [Number, String], xl: [Number, String], xxl: [Number, String] }, setup(e) { const { gutter: n } = F("gutter", { gutter: { value: 0 } }), a = u(() => n.value ? { padding: `${n.value / 2}px` } : {}), t = u(() => [ `${Ue}-col`, { [`${Ue}-col-${e.span}`]: e.span } ]); return { styles: a, classes: t }; } }; function ln(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const Ce = /* @__PURE__ */ p(sn, [["render", ln]]), se = "grid", rn = { name: "Row", props: { align: { type: String, default: "top", validator: (e) => ["top", "middle", "bottom"].includes(e) }, gutter: { type: [Number, Object, Array], default: 0 }, justify: { type: String, default: "start", validator: (e) => [ "start", "end", "center", "space-around", "space-between" ].includes(e) }, wrap: { type: Boolean, default: !0 } }, setup(e) { const n = u(() => ({ [`${se}-row`]: !0, [`${se}-row-no-wrap`]: e.wrap === !1, [`${se}-row-${e.justify}`]: e.justify, [`${se}-row-${e.align}`]: e.align })), a = u(() => e.gutter); A("gutter", { gutter: a }); let t; const s = u(() => (typeof e.gutter == "number" ? e.gutter <= 0 ? t = {} : t = { margin: `-${e.gutter / 2}px` } : Array.isArray(e.gutter) && e.gutter.length === 2 && (t = { margin: `${e.gutter[0] / 2}px ${e.gutter[1] / 2}px` }), t)); return { classes: n, styles: s }; } }; function on(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const Fe = /* @__PURE__ */ p(rn, [["render", on]]), cn = { Col: Ce, Row: Fe }; Object.values(cn).forEach((e) => { e.install = (n) => n.component(e.name, e); }); const dn = { class: "rd-form-item" }, un = { name: "FormItem" }, Be = /* @__PURE__ */ Object.assign(un, { props: { help: { type: String, default: "" }, label: { type: String, default: "" }, labelCol: { type: Object, default: () => ({ span: void 0 }) }, name: { type: String, default: "" }, wrapperCol: { type: Object, default: () => ({ span: void 0 }) } }, setup(e) { const n = e, a = F("formScope"), { labelCol: t, wrapperCol: s, labelAlign: l } = a, r = u(() => ({ "rd-form-item-label": l.value === "right", "rd-form-item-label-left": l.value === "left" })), o = u(() => ({ span: n.labelCol.span ?? t.value.span })), v = u(() => ({ span: n.wrapperCol.span ?? s.value.span })); return (h, x) => (c(), d("div", dn, [ j(Y(Fe), { gutter: 16, align: "middle" }, { default: H(() => [ j(Y(Ce), { span: o.value.span, class: f(r.value) }, { default: H(() => [ m(h.$slots, "label", {}, () => [ P(w(e.label), 1) ]) ]), _: 3 }, 8, ["span", "class"]), j(Y(Ce), { span: v.value.span }, { default: H(() => [ m(h.$slots, "default") ]), _: 3 }, 8, ["span"]) ]), _: 3 }) ])); } }); fe.install = (e) => (e.component(fe.name, fe), e.component(Be.name, Be), e); const mn = ["type", "disabled", "readonly", "value", "placeholder", "title"], fn = { name: "Input" }, pe = /* @__PURE__ */ Object.assign(fn, { props: { bordered: { type: Boolean, default: !0 }, clearable: { type: Boolean, default: !1 }, disabled: { type: Boolean, default: !1 }, maxLength: Number, placeholder: { type: String, default: "" }, prefix: { type: String, default: "" }, readonly: { type: Boolean, default: !1 }, size: { type: String, default: "middle", validator: (e) => ["large", "middle", "small"].includes(e) }, suffix: { type: String, default: "" }, title: { type: String, default: "" }, type: { type: String, default: "text", validator: (e) => [ "button", "checkbox", "color", "date", "datetime", "email", "file", "hidden", "image", "month", "number", "password", "radio", "range", "reset", "search", "submit", "tel", "text", "time", "url", "week" ].includes(e) }, value: { type: String, default: "" } }, emits: ["onChange", "update:value"], setup(e, { emit: n }) { const a = e, t = n, s = u(() => [ "rd-input-wrapper", { "rd-input-wrapper-lg": a.size === "large" }, { "rd-input-wrapper-sm": a.size === "small" } ]), l = u(() => [ "rd-input", { "rd-input-lg": a.size === "large" }, { "rd-input-sm": a.size === "small" } ]), r = (o) => { t("update:value", o.target.value), t("onChange"); }; return (o, v) => (c(), d("div", { class: f(s.value) }, [ i("input", { class: f(["rd-input", l.value]), type: e.type, disabled: e.disabled, readonly: e.readonly, value: e.value, placeholder: e.placeholder, title: e.title, onInput: r }, null, 42, mn) ], 2)); } }); pe.install = (e) => (e.component(pe.name, pe), e); const pn = "layout-content", vn = { name: "Content", props: { className: { type: String, default: "" }, style: { type: [Object, String], default: () => { } } }, setup(e) { const n = u(() => [`${pn}`, `${e.className}`]), a = u(() => e.style); return { classes: n, styles: a }; } }; function hn(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const Ee = /* @__PURE__ */ p(vn, [["render", hn]]), gn = "layout-footer", yn = { name: "Footer", props: { className: { type: String, default: "" }, style: { type: [Object, String], default: () => { } } }, setup(e) { const n = u(() => [`${gn}`, `${e.className}`]), a = u(() => e.style); return { classes: n, styles: a }; } }; function $n(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const De = /* @__PURE__ */ p(yn, [["render", $n]]), _n = "layout-header", bn = { name: "Header", props: { className: { type: String, default: "" }, style: { type: Object, default: () => { } } }, setup(e) { const n = u(() => [`${_n}`, `${e.className}`]), a = u(() => e.style); return { classes: n, styles: a }; } }; function wn(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const Oe = /* @__PURE__ */ p(bn, [["render", wn]]), Me = "layout", Sn = { name: "Layout", props: { className: { type: String, default: "" }, style: Object }, setup(e) { let n = b(!1); const a = b(null), t = u(() => [ `${Me}`, `${e.className}`, { [`${Me}-has-sider`]: n.value } ]); return I(() => { n.value = [].slice.call(a.value.children).some((s) => s.className.startsWith(`${Me}-sider`)); }), { classes: t, layout: a }; } }; function Cn(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), ref: "layout" }, [ m(e.$slots, "default") ], 2); } const ve = /* @__PURE__ */ p(Sn, [["render", Cn]]), xn = "layout-sider", kn = { name: "Sider", props: { breakpoint: { type: String, validator(e) { return ["xs", "sm", "md", "lg", "xl", "xxl"].includes(e); } }, className: { type: String, default: "" }, collapsed: Boolean, collapsible: Boolean, defaultCollapsed: Boolean, style: Object, width: { type: [Number, String], default: 200 } }, setup(e) { const n = u(() => e.width), a = u(() => ({ width: `${n.value}px`, ...e.style })); return { classes: u(() => [`${xn}`, `${e.className}`]), styles: a }; } }; function Nn(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), style: N(t.styles) }, [ m(e.$slots, "default") ], 6); } const je = /* @__PURE__ */ p(kn, [["render", Nn]]); ve.install = (e) => { e.component(ve.name, ve), e.component(Ee.name, Ee), e.component(De.name, De), e.component(Oe.name, Oe), e.component(je.name, je); }; function Mn(e) { return { all: e = e || /* @__PURE__ */ new Map(), on: function(n, a) { var t = e.get(n); t ? t.push(a) : e.set(n, [a]); }, off: function(n, a) { var t = e.get(n); t && (a ? t.splice(t.indexOf(a) >>> 0, 1) : e.set(n, [])); }, emit: function(n, a) { var t = e.get(n); t && t.slice().map(function(s) { s(a); }), (t = e.get("*")) && t.slice().map(function(s) { s(n, a); }); } }; } const zn = "menu", In = { name: "Menu", props: { mode: { type: String, default: "horizontal", validator: (e) => ["vertical", "horizontal", "inline"].includes(e) }, selectable: { type: Boolean, default: !0 }, style: { type: Object, default: () => { } } }, emits: ["onClick"], setup(e, { emit: n }) { const a = u(() => [{ [`${zn}-${e.mode}`]: e.mode }]), t = Mn(), s = X({ currentMenuItem: 0, emit: t.emit }); return A("rootMenu", s), t.on("menuItem:click", (l) => { s.currentMenuItem = l.uid, n("onClick", l.name); }), { classes: a }; } }; function Tn(e, n, a, t, s, l) { return c(), d("ul", { class: f(["menu", t.classes]) }, [ m(e.$slots, "default") ], 2); } const Ze = /* @__PURE__ */ p(In, [["render", Tn]]), Ln = { name: "MenuGroup", props: { title: { type: String, default: "" } }, setup() { return {}; } }, Bn = { class: "menu-item-group" }, En = { class: "menu-item-group-title" }; function Dn(e, n, a, t, s, l) { return c(), d("li", Bn, [ i("div", En, w(a.title), 1), i("ul", null, [ m(e.$slots, "default") ]) ]); } const Je = /* @__PURE__ */ p(Ln, [["render", Dn]]), On = "menu", jn = { name: "MenuItem", props: { icon: { type: String, default: "" }, title: { type: String, default: "" }, name: { type: String, default: "" } }, setup(e) { const n = F("rootMenu"), a = K(), t = u(() => ({ [`${On}-item-selected`]: n.currentMenuItem === a.uid })); return { classes: t, handleClick: () => { t.value["menu-item-selected"] = !0, n.emit("menuItem:click", { uid: a.uid, name: e.name }); }, handleEnter: () => { }, handleLeave: () => { } }; } }, Hn = ["title"]; function Vn(e, n, a, t, s, l) { return c(), d("li", { class: f(["menu-item", t.classes]), title: a.title, onClick: n[0] || (n[0] = (...r) => t.handleClick && t.handleClick(...r)), onMouseenter: n[1] || (n[1] = (...r) => t.handleEnter && t.handleEnter(...r)), onMouseleave: n[2] || (n[2] = (...r) => t.handleLeave && t.handleLeave(...r)) }, [ m(e.$slots, "icon"), P(), m(e.$slots, "default") ], 42, Hn); } const Xe = /* @__PURE__ */ p(jn, [["render", Vn]]), Pn = { name: "SubMenu", setup() { return {}; } }, An = { class: "menu-submenu" }, Fn = /* @__PURE__ */ i("div", { class: "menu-submenu-title" }, null, -1), Gn = { class: "menu" }; function Wn(e, n, a, t, s, l) { return c(), d("li", An, [ Fn, i("ul", Gn, [ m(e.$slots, "default") ]) ]); } const Ke = /* @__PURE__ */ p(Pn, [["render", Wn]]), Un = { Menu: Ze, MenuGroup: Je, MenuItem: Xe, SubMenu: Ke }; Object.values(Un).forEach((e) => { e.install = (n) => n.component(e.name, e); }); const Yn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1693206393492'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='9998'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='128'%20height='128'%3e%3cpath%20d='M625.9%20115c-5.9%200-11.9%201.6-17.4%205.3L254%20352H90c-8.8%200-16%207.2-16%2016v288c0%208.8%207.2%2016%2016%2016h164l354.5%20231.7c5.5%203.6%2011.6%205.3%2017.4%205.3%2016.7%200%2032.1-13.3%2032.1-32.1V147.1c0-18.8-15.4-32.1-32.1-32.1zM586%20803L293.4%20611.7l-18-11.7H146V424h129.4l17.9-11.7L586%20221v582zM934%20476H806c-8.8%200-16%207.2-16%2016v40c0%208.8%207.2%2016%2016%2016h128c8.8%200%2016-7.2%2016-16v-40c0-8.8-7.2-16-16-16zM892.1%20737.8l-110.3-63.7c-2.5-1.4-5.2-2.1-7.9-2.1-5.5%200-10.9%202.9-13.8%208l-19.9%2034.5c-4.4%207.6-1.8%2017.4%205.8%2021.8L856.3%20800c2.5%201.4%205.2%202.1%207.9%202.1%205.5%200%2010.9-2.9%2013.8-8l19.9-34.5c4.4-7.6%201.7-17.4-5.8-21.8zM760%20344c2.9%205.1%208.3%208%2013.8%208%202.7%200%205.4-0.7%207.9-2.1L892%20286.2c7.6-4.4%2010.2-14.2%205.8-21.8L878%20230c-2.9-5.1-8.3-8-13.8-8-2.7%200-5.4%200.7-7.9%202.1L746%20287.8c-7.6%204.4-10.2%2014.2-5.8%2021.8L760%20344z'%20p-id='9999'%20fill='%23707070'%3e%3c/path%3e%3c/svg%3e", qn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1693199351903'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='9134'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='128'%20height='128'%3e%3cpath%20d='M512%2064C264.6%2064%2064%20264.6%2064%20512s200.6%20448%20448%20448%20448-200.6%20448-448S759.4%2064%20512%2064z%20m32%20664c0%204.4-3.6%208-8%208h-48c-4.4%200-8-3.6-8-8V456c0-4.4%203.6-8%208-8h48c4.4%200%208%203.6%208%208v272z%20m-32-344c-26.5%200-48-21.5-48-48s21.5-48%2048-48%2048%2021.5%2048%2048-21.5%2048-48%2048z'%20p-id='9135'%20fill='%234096ff'%3e%3c/path%3e%3c/svg%3e", Rn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1693198927790'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8387'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='128'%20height='128'%3e%3cpath%20d='M512%2064C264.6%2064%2064%20264.6%2064%20512s200.6%20448%20448%20448%20448-200.6%20448-448S759.4%2064%20512%2064z%20m193.5%20301.7l-210.6%20292c-12.7%2017.7-39%2017.7-51.7%200L318.5%20484.9c-3.8-5.3%200-12.7%206.5-12.7h46.9c10.2%200%2019.9%204.9%2025.9%2013.3l71.2%2098.8%20157.2-218c6-8.3%2015.6-13.3%2025.9-13.3H699c6.5%200%2010.3%207.4%206.5%2012.7z'%20p-id='8388'%20fill='%2352c41a'%3e%3c/path%3e%3c/svg%3e", Zn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1693199343924'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8952'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='128'%20height='128'%3e%3cpath%20d='M512%2064C264.6%2064%2064%20264.6%2064%20512s200.6%20448%20448%20448%20448-200.6%20448-448S759.4%2064%20512%2064z%20m-32%20232c0-4.4%203.6-8%208-8h48c4.4%200%208%203.6%208%208v272c0%204.4-3.6%208-8%208h-48c-4.4%200-8-3.6-8-8V296z%20m32%20440c-26.5%200-48-21.5-48-48s21.5-48%2048-48%2048%2021.5%2048%2048-21.5%2048-48%2048z'%20p-id='8953'%20fill='%23faad14'%3e%3c/path%3e%3c/svg%3e", Jn = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1693199129364'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8560'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='128'%20height='128'%3e%3cpath%20d='M512%2064C264.6%2064%2064%20264.6%2064%20512s200.6%20448%20448%20448%20448-200.6%20448-448S759.4%2064%20512%2064z%20m165.4%20618.2l-66-0.3L512%20563.4l-99.3%20118.4-66.1%200.3c-4.4%200-8-3.5-8-8%200-1.9%200.7-3.7%201.9-5.2l130.1-155L340.5%20359c-1.2-1.5-1.9-3.3-1.9-5.2%200-4.4%203.6-8%208-8l66.1%200.3L512%20464.6l99.3-118.4%2066-0.3c4.4%200%208%203.5%208%208%200%201.9-0.7%203.7-1.9%205.2L553.5%20514l130%20155c1.2%201.5%201.9%203.3%201.9%205.2%200%204.4-3.6%208-8%208z'%20p-id='8561'%20fill='%23ff4d4f'%3e%3c/path%3e%3c/svg%3e", Xn = "rd-message", Kn = { name: "Message", props: { id: { type: String, default: "" }, message: { type: String, default: "" }, type: { type: String, default: "default", validator: (e) => ["success", "warning", "info", "error", "default"].includes(e) }, fill: { type: Boolean, default: !1 }, offset: { type: Number, default: 45 }, duration: { type: Number, default: 3e3 }, onClose: { type: Function, default: () => { } } }, setup(e) { const n = u(() => [ Xn, "rd-message-notice", { "rd-message-default": !e.fill }, `rd-message-${e.type}`, { [`rd-message-${e.type}-fill`]: e.fill } ]), a = u(() => ({ top: `${e.offset}px` })), t = { info: qn, success: Rn, warning: Zn, error: Jn, default: Yn }, s = u(() => t[e.type]), l = b(!1); let r = null; const o = () => { e.duration > 0 && (r = setTimeout(() => { l.value && h(); }, e.duration)); }, v = () => { clearTimeout(r), r = null; }, h = () => { l.value = !1; }; return I(() => { o(), l.value = !0; }), { classes: n, styles: a, icon: s, visible: l, startTimer: o, clearTimer: v }; } }, Qn = ["data"]; function ea(e, n, a, t, s, l) { return c(), Ae(Re, { name: "message", onBeforeLeave: a.onClose }, { default: H(() => [ we(i("div", { class: f(t.classes), style: N(t.styles), onMouseenter: n[0] || (n[0] = (...r) => t.clearTimer && t.clearTimer(...r)), onMouseleave: n[1] || (n[1] = (...r) => t.startTimer && t.startTimer(...r)) }, [ m(e.$slots, "icon", {}, () => [ i("object", { data: t.icon, class: "icon", type: "image/svg+xml" }, null, 8, Qn) ]), i("span", null, w(a.message), 1) ], 38), [ [Se, t.visible] ]) ]), _: 3 }, 8, ["onBeforeLeave"]); } const ta = /* @__PURE__ */ p(Kn, [["render", ea]]), O = []; let na = 1; const V = (e) => { typeof e == "string" && (e = { message: e }); const n = `message_${na++}`; let a = e.offset || 45; a += O.length * 56, e = { ...e, id: n, offset: a, onClose: () => { aa(n); } }; const t = document.createElement("div"); t.className = `container_${n}`; const s = j(ta, e); rt(s, t), O.push({ vm: s }), document.body.appendChild(t.firstElementChild); }, aa = (e) => { const n = O.findIndex(({ vm: l }) => l.component.props.id === e); if (n === -1) return; const { vm: a } = O[n]; if (!a) return; const t = a.el.offsetHeight; O.splice(n, 1); const s = document.querySelector(".rd-message"); s.style.display === "none" && document.body.removeChild(s), !(O.length < 1) && O.forEach((l) => { l.vm.component.props.offset = parseInt(l.vm.el.style.top, 10) - t - 15; }); }; ["success", "warning", "info", "error"].forEach((e) => { V[e] = (n) => (console.log(n), typeof n == "string" ? n = { message: n, type: e } : n.type = e, V(n)); }); V.install = (e) => (e.component(V.name, V), e); const sa = { class: "modal" }, la = { class: "overlay" }, ra = { class: "modal-header" }, oa = { class: "modal-header-title" }, ia = /* @__PURE__ */ i("span", { class: "modal-close-x" }, "×", -1), ca = [ ia ], da = { class: "modal-body" }, ua = { class: "modal-footer" }, ma = { name: "Modal" }, he = /* @__PURE__ */ Object.assign(ma, { props: { mask: { type: Boolean, default: !0 }, open: { type: Boolean, default: !1 }, style: { type: [String, Object], default: () => { } }, title: { type: String, default: "" }, width: { type: [String, Number], default: 520 }, zIndex: { type: Number, default: 999 } }, emits: ["update:open", "onOk", "onCancel"], setup(e, { emit: n }) { const a = e, t = n, s = u(() => { let h = a.width; return !`${h}`.endsWith("%") && !`${h}`.endsWith("px") && (h = `${h}px`), { width: `${h}`, ...a.style }; }), l = b(!1), r = () => { l.value = !1, t("update:open", l.value); }, o = () => { t("onCancel"), r(); }, v = () => { t("onOk"), r(); }; return I(() => { l.value = a.open; }), qe( () => a.open, (h) => { l.value = h; } ), (h, x) => (c(), Ae(ot, { to: "body" }, [ j(Re, null, { default: H(() => [ i("div", sa, [ we(i("div", la, null, 512), [ [Se, e.mask && l.value] ]), we(i("div", { class: "modal-content", style: N(s.value) }, [ m(h.$slots, "header", {}, () => [ i("div", ra, [ i("div", oa, w(e.title), 1) ]) ]), i("div", { class: "modal-close", onClick: r }, ca), i("div", da, [ m(h.$slots, "default") ]), i("div", ua, [ m(h.$slots, "footer", {}, () => [ j(Y(q), { type: "primary", onOnClick: v }, { default: H(() => [ P("确定") ]), _: 1 }), j(Y(q), { onOnClick: o }, { default: H(() => [ P("取消") ]), _: 1 }) ]) ]) ], 4), [ [Se, l.value] ]) ]) ]), _: 3 }) ])); } }); he.install = (e) => (e.component(he.name, he), e); const fa = { name: "Pagination", props: { current: { type: Number, default: 1 }, pageSize: { type: Number, default: 10 }, total: Number }, setup(e) { const n = b([]), a = Math.ceil(e.total / e.pageSize); for (let s = 1; s <= a; s++) n.value.push({ index: s, active: s === e.current }); return { pagers: n, handlePageClick: (s) => { const l = s.target; if (l.tagName.toLowerCase() === "ul") return; if (l.tagName.toLowerCase() === "li" && l.className.toLowerCase() === "pagination-prev" || l.getAttribute("data-icon") && l.getAttribute("data-icon") === "left") return; if (l.tagName.toLowerCase() === "li" && l.className.toLowerCase() === "pagination-next" || l.getAttribute("data-icon") && l.getAttribute("data-icon") === "right") return; let r = Number(l.textContent); n.value.forEach((o) => { o.active = o.index === r; }); } }; } }, pa = /* @__PURE__ */ i("li", { class: "pagination-prev" }, [ /* @__PURE__ */ i("svg", { viewBox: "64 64 896 896", focusable: "false", "data-icon": "left", width: "1em", height: "1em", fill: "currentColor", "aria-hidden": "true" }, [ /* @__PURE__ */ i("path", { d: "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" }) ]) ], -1), va = /* @__PURE__ */ i("li", { class: "pagination-next" }, [ /* @__PURE__ */ i("svg", { viewBox: "64 64 896 896", focusable: "false", "data-icon": "right", width: "1em", height: "1em", fill: "currentColor", "aria-hidden": "true" }, [ /* @__PURE__ */ i("path", { d: "M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z" }) ]) ], -1); function ha(e, n, a, t, s, l) { return c(), d("ul", { class: "pagination", onClick: n[0] || (n[0] = (...r) => t.handlePageClick && t.handlePageClick(...r)) }, [ pa, (c(!0), d(L, null, B(t.pagers, (r) => (c(), d("li", { class: f(["pagination-item", { "pagination-item-active": r.active }]), key: r.index }, w(r.index), 3))), 128)), va ]); } const ge = /* @__PURE__ */ p(fa, [["render", ha]]); ge.install = (e) => (e.component(ge.name, ge), e); const ga = { name: "Space", props: { direction: { type: String, default: "horizontal", validator: (e) => ["horizontal", "vertical"].includes(e) }, size: { type: [String, Number], default: "middle" } }, setup(e, { slots: n }) { const a = u(() => ["space", `space-${e.direction}`]), t = u(() => ({ "space-item": e.size === "middle", "space-item-sm": e.size === "small", "space-item-lg": e.size === "large" })), s = u(() => { const r = {}; if (e.size === "small" || e.size === "middle") return r; const o = e.direction === "horizontal" ? "marginLeft" : "marginTop", v = typeof e.size == "number" ? `${e.size}px` : e.size; return r[o] = v, r; }), l = n.default(); return { classes: a, itemClasses: t, itemStyles: s, items: l }; } }; function ya(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes) }, [ (c(!0), d(L, null, B(t.items, (r, o) => (c(), d("div", { class: f(t.itemClasses), style: N(o > 0 && t.itemStyles), key: o }, [ (c(), Ae(it(r))) ], 6))), 128)) ], 2); } const ye = /* @__PURE__ */ p(ga, [["render", ya]]); ye.install = (e) => e.component(ye.name, ye); const ze = "switch", $a = { name: "Switch", props: { checked: { type: Boolean, default: !1 }, shape: { type: String, default: "circle", validator: (e) => ["circle", "square"].includes(e) } }, emits: ["update:checked", "onChange"], setup(e, { emit: n }) { const a = b(!1), t = u(() => [ ze, { [`${ze}-checked`]: a.value }, { [`${ze}-circle`]: e.shape === "circle" } ]), s = () => { a.value = !a.value, n("update:checked", a.value), n("onChange", a.value); }; return I(() => { a.value = e.checked; }), ct(() => { a.value = e.checked; }), { classes: t, handleClick: s }; } }, _a = /* @__PURE__ */ i("div", { class: "switch-handle" }, null, -1), ba = [ _a ]; function wa(e, n, a, t, s, l) { return c(), d("div", { class: f(t.classes), onClick: n[0] || (n[0] = (...r) => t.handleClick && t.handleClick(...r)) }, ba, 2); } const $e = /* @__PURE__ */ p($a, [["render", wa]]); $e.install = (e) => e.component($e.name, $e); const Sa = { name: "Table", props: { bordered: { type: Boolean, default: !1 }, className: { type: String, default: "" }, cloumns: { type: Array, default: () => [] }, data: { type: Array, default: () => [] }, size: { type: String, default: "middle", validator: (e) => ["large", "middle", "small"].includes(e) }, stripe: { type: Boolean, default: !1 } }, setup(e) { const n = u(() => [ "rd-table-wrap", { "rd-table-bordered": e.bordered }, e.className ]), a = u(()