sd-component-library
Version:
A Vue3 + Element Plus components library
1,254 lines (1,253 loc) • 42.8 kB
JavaScript
import { ref as W, computed as E, defineComponent as Q, reactive as ye, watch as ae, provide as Xe, toRefs as ke, createElementBlock as et, openBlock as he, normalizeClass as K, unref as j, renderSlot as te, inject as oe, onMounted as tt, onBeforeUnmount as rt, onUpdated as At, createVNode as se, Fragment as jt, nextTick as nt, useSlots as Et, createElementVNode as Re, withCtx as ge, createBlock as St, createCommentVNode as Ne, resolveDynamicComponent as Tt, normalizeStyle as Me, createTextVNode as _t, toDisplayString as Ve, TransitionGroup as Pt } from "vue";
import { h as fe, l as Le, a as it, b as Ee, d as be, k as J, _ as at, u as Se, m as Te, i as ot, n as we, t as $t, e as It, r as Rt, w as Nt, o as Mt } from "./base-B4QkiMzD.js";
import { c as st, l as ft, a as We } from "./use-form-common-props-OaJxnfm7.js";
import { k as Vt, g as lt, s as Lt, a as _e, b as ut, n as le, c as Wt, S as Bt, d as Ct, e as Fe } from "./index-wLHcMAiU.js";
import { a as Dt, b as Ut, u as zt } from "./index-ran13ZnV.js";
import { c as ue, k as Gt, g as Kt, a as Jt, b as Yt, d as Zt, e as Ht, i as Qt, f as me } from "./objects-DYn20o2B.js";
import { S as Be, i as dt, b as Xt, c as kt } from "./index-CAnh-j1Y.js";
function er(r, e) {
for (var t = -1, n = r == null ? 0 : r.length; ++t < n && e(r[t], t, r) !== !1; )
;
return r;
}
function tr(r, e) {
return r && ue(e, Vt(e), r);
}
function rr(r, e) {
return r && ue(e, Gt(e), r);
}
function nr(r, e) {
return ue(r, lt(r), e);
}
var ir = Object.getOwnPropertySymbols, ar = ir ? function(r) {
for (var e = []; r; )
Dt(e, lt(r)), r = Kt(r);
return e;
} : Lt;
function or(r, e) {
return ue(r, ar(r), e);
}
var sr = Object.prototype, fr = sr.hasOwnProperty;
function lr(r) {
var e = r.length, t = new r.constructor(e);
return e && typeof r[0] == "string" && fr.call(r, "index") && (t.index = r.index, t.input = r.input), t;
}
function ur(r, e) {
var t = r.buffer;
return new r.constructor(t, r.byteOffset, r.byteLength);
}
var dr = /\w*$/;
function cr(r) {
var e = new r.constructor(r.source, dr.exec(r));
return e.lastIndex = r.lastIndex, e;
}
var Ce = Be ? Be.prototype : void 0, De = Ce ? Ce.valueOf : void 0;
function pr(r) {
return De ? Object(De.call(r)) : {};
}
var gr = "[object Boolean]", mr = "[object Date]", vr = "[object Map]", yr = "[object Number]", hr = "[object RegExp]", br = "[object Set]", wr = "[object String]", Fr = "[object Symbol]", xr = "[object ArrayBuffer]", Or = "[object DataView]", qr = "[object Float32Array]", Ar = "[object Float64Array]", jr = "[object Int8Array]", Er = "[object Int16Array]", Sr = "[object Int32Array]", Tr = "[object Uint8Array]", _r = "[object Uint8ClampedArray]", Pr = "[object Uint16Array]", $r = "[object Uint32Array]";
function Ir(r, e, t) {
var n = r.constructor;
switch (e) {
case xr:
return Yt(r);
case gr:
case mr:
return new n(+r);
case Or:
return ur(r);
case qr:
case Ar:
case jr:
case Er:
case Sr:
case Tr:
case _r:
case Pr:
case $r:
return Jt(r, t);
case vr:
return new n();
case yr:
case wr:
return new n(r);
case hr:
return cr(r);
case br:
return new n();
case Fr:
return pr(r);
}
}
var Rr = "[object Map]";
function Nr(r) {
return dt(r) && _e(r) == Rr;
}
var Ue = le && le.isMap, Mr = Ue ? ut(Ue) : Nr, Vr = "[object Set]";
function Lr(r) {
return dt(r) && _e(r) == Vr;
}
var ze = le && le.isSet, Wr = ze ? ut(ze) : Lr, Br = 1, Cr = 2, ct = "[object Arguments]", Dr = "[object Array]", Ur = "[object Boolean]", zr = "[object Date]", Gr = "[object Error]", pt = "[object Function]", Kr = "[object GeneratorFunction]", Jr = "[object Map]", Yr = "[object Number]", gt = "[object Object]", Zr = "[object RegExp]", Hr = "[object Set]", Qr = "[object String]", Xr = "[object Symbol]", kr = "[object WeakMap]", en = "[object ArrayBuffer]", tn = "[object DataView]", rn = "[object Float32Array]", nn = "[object Float64Array]", an = "[object Int8Array]", on = "[object Int16Array]", sn = "[object Int32Array]", fn = "[object Uint8Array]", ln = "[object Uint8ClampedArray]", un = "[object Uint16Array]", dn = "[object Uint32Array]", O = {};
O[ct] = O[Dr] = O[en] = O[tn] = O[Ur] = O[zr] = O[rn] = O[nn] = O[an] = O[on] = O[sn] = O[Jr] = O[Yr] = O[gt] = O[Zr] = O[Hr] = O[Qr] = O[Xr] = O[fn] = O[ln] = O[un] = O[dn] = !0;
O[Gr] = O[pt] = O[kr] = !1;
function re(r, e, t, n, i, a) {
var o, s = e & Br, d = e & Cr;
if (o !== void 0)
return o;
if (!Xt(r))
return r;
var b = kt(r);
if (b)
return o = lr(r), Zt(r, o);
var c = _e(r), h = c == pt || c == Kr;
if (Wt(r))
return Ht(r, s);
if (c == gt || c == ct || h && !i)
return o = h ? {} : Qt(r), d ? or(r, rr(o, r)) : nr(r, tr(o, r));
if (!O[c])
return i ? r : {};
o = Ir(r, c, s), a || (a = new Bt());
var w = a.get(r);
if (w)
return w;
a.set(r, o), Wr(r) ? r.forEach(function(f) {
o.add(re(f, e, t, f, r, a));
}) : Mr(r) && r.forEach(function(f, g) {
o.set(g, re(f, e, t, g, r, a));
});
var q = Ct, A = b ? void 0 : q(r);
return er(A || r, function(f, g) {
A && (g = f, f = r[g]), Ut(o, g, re(f, e, t, g, r, a));
}), o;
}
var cn = 4;
function Ge(r) {
return re(r, cn);
}
const pn = Ee({
size: {
type: String,
values: st
},
disabled: Boolean
}), gn = Ee({
...pn,
model: Object,
rules: {
type: be(Object)
},
labelPosition: {
type: String,
values: ["left", "right", "top"],
default: "right"
},
requireAsteriskPosition: {
type: String,
values: ["left", "right"],
default: "left"
},
labelWidth: {
type: [String, Number],
default: ""
},
labelSuffix: {
type: String,
default: ""
},
inline: Boolean,
inlineMessage: Boolean,
statusIcon: Boolean,
showMessage: {
type: Boolean,
default: !0
},
validateOnRuleChange: {
type: Boolean,
default: !0
},
hideRequiredAsterisk: Boolean,
scrollToError: Boolean,
scrollIntoViewOptions: {
type: [Object, Boolean],
default: !0
}
}), mn = {
validate: (r, e, t) => (fe(r) || Le(r)) && it(e) && Le(t)
}, vn = "ElForm";
function yn() {
const r = W([]), e = E(() => {
if (!r.value.length)
return "0";
const a = Math.max(...r.value);
return a ? `${a}px` : "";
});
function t(a) {
const o = r.value.indexOf(a);
return o === -1 && e.value === "0" && J(vn, `unexpected width ${a}`), o;
}
function n(a, o) {
if (a && o) {
const s = t(o);
r.value.splice(s, 1, a);
} else a && r.value.push(a);
}
function i(a) {
const o = t(a);
o > -1 && r.value.splice(o, 1);
}
return {
autoLabelWidth: e,
registerLabelWidth: n,
deregisterLabelWidth: i
};
}
const k = (r, e) => {
const t = Fe(e).map((n) => fe(n) ? n.join(".") : n);
return t.length > 0 ? r.filter((n) => n.propString && t.includes(n.propString)) : r;
}, ne = "ElForm", hn = Q({
name: ne
}), bn = /* @__PURE__ */ Q({
...hn,
props: gn,
emits: mn,
setup(r, { expose: e, emit: t }) {
const n = r, i = W(), a = ye([]), o = ft(), s = Se("form"), d = E(() => {
const { labelPosition: l, inline: v } = n;
return [
s.b(),
s.m(o.value || "default"),
{
[s.m(`label-${l}`)]: l,
[s.m("inline")]: v
}
];
}), b = (l) => k(a, [l])[0], c = (l) => {
a.push(l);
}, h = (l) => {
l.prop && a.splice(a.indexOf(l), 1);
}, w = (l = []) => {
if (!n.model) {
J(ne, "model is required for resetFields to work.");
return;
}
k(a, l).forEach((v) => v.resetField());
}, q = (l = []) => {
k(a, l).forEach((v) => v.clearValidate());
}, A = E(() => {
const l = !!n.model;
return l || J(ne, "model is required for validate to work."), l;
}), f = (l) => {
if (a.length === 0)
return [];
const v = k(a, l);
return v.length ? v : (J(ne, "please pass correct props!"), []);
}, g = async (l) => P(void 0, l), u = async (l = []) => {
if (!A.value)
return !1;
const v = f(l);
if (v.length === 0)
return !0;
let F = {};
for (const $ of v)
try {
await $.validate(""), $.validateState === "error" && $.resetField();
} catch (S) {
F = {
...F,
...S
};
}
return Object.keys(F).length === 0 ? !0 : Promise.reject(F);
}, P = async (l = [], v) => {
let F = !1;
const $ = !ot(v);
try {
return F = await u(l), F === !0 && await (v == null ? void 0 : v(F)), F;
} catch (S) {
if (S instanceof Error)
throw S;
const M = S;
if (n.scrollToError && i.value) {
const B = i.value.querySelector(`.${s.b()}-item.is-error`);
B == null || B.scrollIntoView(n.scrollIntoViewOptions);
}
return !F && await (v == null ? void 0 : v(!1, M)), $ && Promise.reject(M);
}
}, m = (l) => {
var v;
const F = b(l);
F && ((v = F.$el) == null || v.scrollIntoView(n.scrollIntoViewOptions));
};
return ae(() => n.rules, () => {
n.validateOnRuleChange && g().catch((l) => J(l));
}, { deep: !0, flush: "post" }), Xe(Te, ye({
...ke(n),
emit: t,
resetFields: w,
clearValidate: q,
validateField: P,
getField: b,
addField: c,
removeField: h,
...yn()
})), e({
validate: g,
validateField: P,
resetFields: w,
clearValidate: q,
scrollToField: m,
getField: b,
fields: a
}), (l, v) => (he(), et("form", {
ref_key: "formRef",
ref: i,
class: K(j(d))
}, [
te(l.$slots, "default")
], 2));
}
});
var wn = /* @__PURE__ */ at(bn, [["__file", "form.vue"]]);
function C() {
return C = Object.assign ? Object.assign.bind() : function(r) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var n in t)
Object.prototype.hasOwnProperty.call(t, n) && (r[n] = t[n]);
}
return r;
}, C.apply(this, arguments);
}
function Fn(r, e) {
r.prototype = Object.create(e.prototype), r.prototype.constructor = r, H(r, e);
}
function xe(r) {
return xe = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
return t.__proto__ || Object.getPrototypeOf(t);
}, xe(r);
}
function H(r, e) {
return H = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(n, i) {
return n.__proto__ = i, n;
}, H(r, e);
}
function xn() {
if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
if (typeof Proxy == "function") return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
})), !0;
} catch {
return !1;
}
}
function ie(r, e, t) {
return xn() ? ie = Reflect.construct.bind() : ie = function(i, a, o) {
var s = [null];
s.push.apply(s, a);
var d = Function.bind.apply(i, s), b = new d();
return o && H(b, o.prototype), b;
}, ie.apply(null, arguments);
}
function On(r) {
return Function.toString.call(r).indexOf("[native code]") !== -1;
}
function Oe(r) {
var e = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
return Oe = function(n) {
if (n === null || !On(n)) return n;
if (typeof n != "function")
throw new TypeError("Super expression must either be null or a function");
if (typeof e < "u") {
if (e.has(n)) return e.get(n);
e.set(n, i);
}
function i() {
return ie(n, arguments, xe(this).constructor);
}
return i.prototype = Object.create(n.prototype, {
constructor: {
value: i,
enumerable: !1,
writable: !0,
configurable: !0
}
}), H(i, n);
}, Oe(r);
}
var qn = /%[sdj%]/g, mt = function() {
};
typeof process < "u" && process.env && process.env.NODE_ENV !== "production" && typeof window < "u" && typeof document < "u" && (mt = function(e, t) {
typeof console < "u" && console.warn && typeof ASYNC_VALIDATOR_NO_WARNING > "u" && t.every(function(n) {
return typeof n == "string";
}) && console.warn(e, t);
});
function qe(r) {
if (!r || !r.length) return null;
var e = {};
return r.forEach(function(t) {
var n = t.field;
e[n] = e[n] || [], e[n].push(t);
}), e;
}
function N(r) {
for (var e = arguments.length, t = new Array(e > 1 ? e - 1 : 0), n = 1; n < e; n++)
t[n - 1] = arguments[n];
var i = 0, a = t.length;
if (typeof r == "function")
return r.apply(null, t);
if (typeof r == "string") {
var o = r.replace(qn, function(s) {
if (s === "%%")
return "%";
if (i >= a)
return s;
switch (s) {
case "%s":
return String(t[i++]);
case "%d":
return Number(t[i++]);
case "%j":
try {
return JSON.stringify(t[i++]);
} catch {
return "[Circular]";
}
break;
default:
return s;
}
});
return o;
}
return r;
}
function An(r) {
return r === "string" || r === "url" || r === "hex" || r === "email" || r === "date" || r === "pattern";
}
function T(r, e) {
return !!(r == null || e === "array" && Array.isArray(r) && !r.length || An(e) && typeof r == "string" && !r);
}
function jn(r, e, t) {
var n = [], i = 0, a = r.length;
function o(s) {
n.push.apply(n, s || []), i++, i === a && t(n);
}
r.forEach(function(s) {
e(s, o);
});
}
function Ke(r, e, t) {
var n = 0, i = r.length;
function a(o) {
if (o && o.length) {
t(o);
return;
}
var s = n;
n = n + 1, s < i ? e(r[s], a) : t([]);
}
a([]);
}
function En(r) {
var e = [];
return Object.keys(r).forEach(function(t) {
e.push.apply(e, r[t] || []);
}), e;
}
var Je = /* @__PURE__ */ function(r) {
Fn(e, r);
function e(t, n) {
var i;
return i = r.call(this, "Async Validation Error") || this, i.errors = t, i.fields = n, i;
}
return e;
}(/* @__PURE__ */ Oe(Error));
function Sn(r, e, t, n, i) {
if (e.first) {
var a = new Promise(function(w, q) {
var A = function(u) {
return n(u), u.length ? q(new Je(u, qe(u))) : w(i);
}, f = En(r);
Ke(f, t, A);
});
return a.catch(function(w) {
return w;
}), a;
}
var o = e.firstFields === !0 ? Object.keys(r) : e.firstFields || [], s = Object.keys(r), d = s.length, b = 0, c = [], h = new Promise(function(w, q) {
var A = function(g) {
if (c.push.apply(c, g), b++, b === d)
return n(c), c.length ? q(new Je(c, qe(c))) : w(i);
};
s.length || (n(c), w(i)), s.forEach(function(f) {
var g = r[f];
o.indexOf(f) !== -1 ? Ke(g, t, A) : jn(g, t, A);
});
});
return h.catch(function(w) {
return w;
}), h;
}
function Tn(r) {
return !!(r && r.message !== void 0);
}
function _n(r, e) {
for (var t = r, n = 0; n < e.length; n++) {
if (t == null)
return t;
t = t[e[n]];
}
return t;
}
function Ye(r, e) {
return function(t) {
var n;
return r.fullFields ? n = _n(e, r.fullFields) : n = e[t.field || r.fullField], Tn(t) ? (t.field = t.field || r.fullField, t.fieldValue = n, t) : {
message: typeof t == "function" ? t() : t,
fieldValue: n,
field: t.field || r.fullField
};
};
}
function Ze(r, e) {
if (e) {
for (var t in e)
if (e.hasOwnProperty(t)) {
var n = e[t];
typeof n == "object" && typeof r[t] == "object" ? r[t] = C({}, r[t], n) : r[t] = n;
}
}
return r;
}
var vt = function(e, t, n, i, a, o) {
e.required && (!n.hasOwnProperty(e.field) || T(t, o || e.type)) && i.push(N(a.messages.required, e.fullField));
}, Pn = function(e, t, n, i, a) {
(/^\s+$/.test(t) || t === "") && i.push(N(a.messages.whitespace, e.fullField));
}, ee, $n = function() {
if (ee)
return ee;
var r = "[a-fA-F\\d:]", e = function(l) {
return l && l.includeBoundaries ? "(?:(?<=\\s|^)(?=" + r + ")|(?<=" + r + ")(?=\\s|$))" : "";
}, t = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}", n = "[a-fA-F\\d]{1,4}", i = (`
(?:
(?:` + n + ":){7}(?:" + n + `|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
(?:` + n + ":){6}(?:" + t + "|:" + n + `|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4
(?:` + n + ":){5}(?::" + t + "|(?::" + n + `){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4
(?:` + n + ":){4}(?:(?::" + n + "){0,1}:" + t + "|(?::" + n + `){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4
(?:` + n + ":){3}(?:(?::" + n + "){0,2}:" + t + "|(?::" + n + `){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4
(?:` + n + ":){2}(?:(?::" + n + "){0,3}:" + t + "|(?::" + n + `){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
(?:` + n + ":){1}(?:(?::" + n + "){0,4}:" + t + "|(?::" + n + `){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
(?::(?:(?::` + n + "){0,5}:" + t + "|(?::" + n + `){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
`).replace(/\s*\/\/.*$/gm, "").replace(/\n/g, "").trim(), a = new RegExp("(?:^" + t + "$)|(?:^" + i + "$)"), o = new RegExp("^" + t + "$"), s = new RegExp("^" + i + "$"), d = function(l) {
return l && l.exact ? a : new RegExp("(?:" + e(l) + t + e(l) + ")|(?:" + e(l) + i + e(l) + ")", "g");
};
d.v4 = function(m) {
return m && m.exact ? o : new RegExp("" + e(m) + t + e(m), "g");
}, d.v6 = function(m) {
return m && m.exact ? s : new RegExp("" + e(m) + i + e(m), "g");
};
var b = "(?:(?:[a-z]+:)?//)", c = "(?:\\S+(?::\\S*)?@)?", h = d.v4().source, w = d.v6().source, q = "(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)", A = "(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*", f = "(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))", g = "(?::\\d{2,5})?", u = '(?:[/?#][^\\s"]*)?', P = "(?:" + b + "|www\\.)" + c + "(?:localhost|" + h + "|" + w + "|" + q + A + f + ")" + g + u;
return ee = new RegExp("(?:^" + P + "$)", "i"), ee;
}, He = {
// http://emailregex.com/
email: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,
// url: new RegExp(
// '^(?!mailto:)(?:(?:http|https|ftp)://|//)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[0-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))|localhost)(?::\\d{2,5})?(?:(/|\\?|#)[^\\s]*)?$',
// 'i',
// ),
hex: /^#?([a-f0-9]{6}|[a-f0-9]{3})$/i
}, Y = {
integer: function(e) {
return Y.number(e) && parseInt(e, 10) === e;
},
float: function(e) {
return Y.number(e) && !Y.integer(e);
},
array: function(e) {
return Array.isArray(e);
},
regexp: function(e) {
if (e instanceof RegExp)
return !0;
try {
return !!new RegExp(e);
} catch {
return !1;
}
},
date: function(e) {
return typeof e.getTime == "function" && typeof e.getMonth == "function" && typeof e.getYear == "function" && !isNaN(e.getTime());
},
number: function(e) {
return isNaN(e) ? !1 : typeof e == "number";
},
object: function(e) {
return typeof e == "object" && !Y.array(e);
},
method: function(e) {
return typeof e == "function";
},
email: function(e) {
return typeof e == "string" && e.length <= 320 && !!e.match(He.email);
},
url: function(e) {
return typeof e == "string" && e.length <= 2048 && !!e.match($n());
},
hex: function(e) {
return typeof e == "string" && !!e.match(He.hex);
}
}, In = function(e, t, n, i, a) {
if (e.required && t === void 0) {
vt(e, t, n, i, a);
return;
}
var o = ["integer", "float", "array", "regexp", "object", "method", "email", "number", "date", "url", "hex"], s = e.type;
o.indexOf(s) > -1 ? Y[s](t) || i.push(N(a.messages.types[s], e.fullField, e.type)) : s && typeof t !== e.type && i.push(N(a.messages.types[s], e.fullField, e.type));
}, Rn = function(e, t, n, i, a) {
var o = typeof e.len == "number", s = typeof e.min == "number", d = typeof e.max == "number", b = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g, c = t, h = null, w = typeof t == "number", q = typeof t == "string", A = Array.isArray(t);
if (w ? h = "number" : q ? h = "string" : A && (h = "array"), !h)
return !1;
A && (c = t.length), q && (c = t.replace(b, "_").length), o ? c !== e.len && i.push(N(a.messages[h].len, e.fullField, e.len)) : s && !d && c < e.min ? i.push(N(a.messages[h].min, e.fullField, e.min)) : d && !s && c > e.max ? i.push(N(a.messages[h].max, e.fullField, e.max)) : s && d && (c < e.min || c > e.max) && i.push(N(a.messages[h].range, e.fullField, e.min, e.max));
}, G = "enum", Nn = function(e, t, n, i, a) {
e[G] = Array.isArray(e[G]) ? e[G] : [], e[G].indexOf(t) === -1 && i.push(N(a.messages[G], e.fullField, e[G].join(", ")));
}, Mn = function(e, t, n, i, a) {
if (e.pattern) {
if (e.pattern instanceof RegExp)
e.pattern.lastIndex = 0, e.pattern.test(t) || i.push(N(a.messages.pattern.mismatch, e.fullField, t, e.pattern));
else if (typeof e.pattern == "string") {
var o = new RegExp(e.pattern);
o.test(t) || i.push(N(a.messages.pattern.mismatch, e.fullField, t, e.pattern));
}
}
}, y = {
required: vt,
whitespace: Pn,
type: In,
range: Rn,
enum: Nn,
pattern: Mn
}, Vn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t, "string") && !e.required)
return n();
y.required(e, t, i, o, a, "string"), T(t, "string") || (y.type(e, t, i, o, a), y.range(e, t, i, o, a), y.pattern(e, t, i, o, a), e.whitespace === !0 && y.whitespace(e, t, i, o, a));
}
n(o);
}, Ln = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && y.type(e, t, i, o, a);
}
n(o);
}, Wn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (t === "" && (t = void 0), T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && (y.type(e, t, i, o, a), y.range(e, t, i, o, a));
}
n(o);
}, Bn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && y.type(e, t, i, o, a);
}
n(o);
}, Cn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), T(t) || y.type(e, t, i, o, a);
}
n(o);
}, Dn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && (y.type(e, t, i, o, a), y.range(e, t, i, o, a));
}
n(o);
}, Un = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && (y.type(e, t, i, o, a), y.range(e, t, i, o, a));
}
n(o);
}, zn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (t == null && !e.required)
return n();
y.required(e, t, i, o, a, "array"), t != null && (y.type(e, t, i, o, a), y.range(e, t, i, o, a));
}
n(o);
}, Gn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && y.type(e, t, i, o, a);
}
n(o);
}, Kn = "enum", Jn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a), t !== void 0 && y[Kn](e, t, i, o, a);
}
n(o);
}, Yn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t, "string") && !e.required)
return n();
y.required(e, t, i, o, a), T(t, "string") || y.pattern(e, t, i, o, a);
}
n(o);
}, Zn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t, "date") && !e.required)
return n();
if (y.required(e, t, i, o, a), !T(t, "date")) {
var d;
t instanceof Date ? d = t : d = new Date(t), y.type(e, d, i, o, a), d && y.range(e, d.getTime(), i, o, a);
}
}
n(o);
}, Hn = function(e, t, n, i, a) {
var o = [], s = Array.isArray(t) ? "array" : typeof t;
y.required(e, t, i, o, a, s), n(o);
}, ve = function(e, t, n, i, a) {
var o = e.type, s = [], d = e.required || !e.required && i.hasOwnProperty(e.field);
if (d) {
if (T(t, o) && !e.required)
return n();
y.required(e, t, i, s, a, o), T(t, o) || y.type(e, t, i, s, a);
}
n(s);
}, Qn = function(e, t, n, i, a) {
var o = [], s = e.required || !e.required && i.hasOwnProperty(e.field);
if (s) {
if (T(t) && !e.required)
return n();
y.required(e, t, i, o, a);
}
n(o);
}, Z = {
string: Vn,
method: Ln,
number: Wn,
boolean: Bn,
regexp: Cn,
integer: Dn,
float: Un,
array: zn,
object: Gn,
enum: Jn,
pattern: Yn,
date: Zn,
url: ve,
hex: ve,
email: ve,
required: Hn,
any: Qn
};
function Ae() {
return {
default: "Validation error on field %s",
required: "%s is required",
enum: "%s must be one of %s",
whitespace: "%s cannot be empty",
date: {
format: "%s date %s is invalid for format %s",
parse: "%s date could not be parsed, %s is invalid ",
invalid: "%s date %s is invalid"
},
types: {
string: "%s is not a %s",
method: "%s is not a %s (function)",
array: "%s is not an %s",
object: "%s is not an %s",
number: "%s is not a %s",
date: "%s is not a %s",
boolean: "%s is not a %s",
integer: "%s is not an %s",
float: "%s is not a %s",
regexp: "%s is not a valid %s",
email: "%s is not a valid %s",
url: "%s is not a valid %s",
hex: "%s is not a valid %s"
},
string: {
len: "%s must be exactly %s characters",
min: "%s must be at least %s characters",
max: "%s cannot be longer than %s characters",
range: "%s must be between %s and %s characters"
},
number: {
len: "%s must equal %s",
min: "%s cannot be less than %s",
max: "%s cannot be greater than %s",
range: "%s must be between %s and %s"
},
array: {
len: "%s must be exactly %s in length",
min: "%s cannot be less than %s in length",
max: "%s cannot be greater than %s in length",
range: "%s must be between %s and %s in length"
},
pattern: {
mismatch: "%s value %s does not match pattern %s"
},
clone: function() {
var e = JSON.parse(JSON.stringify(this));
return e.clone = this.clone, e;
}
};
}
var je = Ae(), X = /* @__PURE__ */ function() {
function r(t) {
this.rules = null, this._messages = je, this.define(t);
}
var e = r.prototype;
return e.define = function(n) {
var i = this;
if (!n)
throw new Error("Cannot configure a schema with no rules");
if (typeof n != "object" || Array.isArray(n))
throw new Error("Rules must be an object");
this.rules = {}, Object.keys(n).forEach(function(a) {
var o = n[a];
i.rules[a] = Array.isArray(o) ? o : [o];
});
}, e.messages = function(n) {
return n && (this._messages = Ze(Ae(), n)), this._messages;
}, e.validate = function(n, i, a) {
var o = this;
i === void 0 && (i = {}), a === void 0 && (a = function() {
});
var s = n, d = i, b = a;
if (typeof d == "function" && (b = d, d = {}), !this.rules || Object.keys(this.rules).length === 0)
return b && b(null, s), Promise.resolve(s);
function c(f) {
var g = [], u = {};
function P(l) {
if (Array.isArray(l)) {
var v;
g = (v = g).concat.apply(v, l);
} else
g.push(l);
}
for (var m = 0; m < f.length; m++)
P(f[m]);
g.length ? (u = qe(g), b(g, u)) : b(null, s);
}
if (d.messages) {
var h = this.messages();
h === je && (h = Ae()), Ze(h, d.messages), d.messages = h;
} else
d.messages = this.messages();
var w = {}, q = d.keys || Object.keys(this.rules);
q.forEach(function(f) {
var g = o.rules[f], u = s[f];
g.forEach(function(P) {
var m = P;
typeof m.transform == "function" && (s === n && (s = C({}, s)), u = s[f] = m.transform(u)), typeof m == "function" ? m = {
validator: m
} : m = C({}, m), m.validator = o.getValidationMethod(m), m.validator && (m.field = f, m.fullField = m.fullField || f, m.type = o.getType(m), w[f] = w[f] || [], w[f].push({
rule: m,
value: u,
source: s,
field: f
}));
});
});
var A = {};
return Sn(w, d, function(f, g) {
var u = f.rule, P = (u.type === "object" || u.type === "array") && (typeof u.fields == "object" || typeof u.defaultField == "object");
P = P && (u.required || !u.required && f.value), u.field = f.field;
function m(F, $) {
return C({}, $, {
fullField: u.fullField + "." + F,
fullFields: u.fullFields ? [].concat(u.fullFields, [F]) : [F]
});
}
function l(F) {
F === void 0 && (F = []);
var $ = Array.isArray(F) ? F : [F];
!d.suppressWarning && $.length && r.warning("async-validator:", $), $.length && u.message !== void 0 && ($ = [].concat(u.message));
var S = $.map(Ye(u, s));
if (d.first && S.length)
return A[u.field] = 1, g(S);
if (!P)
g(S);
else {
if (u.required && !f.value)
return u.message !== void 0 ? S = [].concat(u.message).map(Ye(u, s)) : d.error && (S = [d.error(u, N(d.messages.required, u.field))]), g(S);
var M = {};
u.defaultField && Object.keys(f.value).map(function(R) {
M[R] = u.defaultField;
}), M = C({}, M, f.rule.fields);
var B = {};
Object.keys(M).forEach(function(R) {
var V = M[R], de = Array.isArray(V) ? V : [V];
B[R] = de.map(m.bind(null, R));
});
var D = new r(B);
D.messages(d.messages), f.rule.options && (f.rule.options.messages = d.messages, f.rule.options.error = d.error), D.validate(f.value, f.rule.options || d, function(R) {
var V = [];
S && S.length && V.push.apply(V, S), R && R.length && V.push.apply(V, R), g(V.length ? V : null);
});
}
}
var v;
if (u.asyncValidator)
v = u.asyncValidator(u, f.value, l, f.source, d);
else if (u.validator) {
try {
v = u.validator(u, f.value, l, f.source, d);
} catch (F) {
console.error == null || console.error(F), d.suppressValidatorError || setTimeout(function() {
throw F;
}, 0), l(F.message);
}
v === !0 ? l() : v === !1 ? l(typeof u.message == "function" ? u.message(u.fullField || u.field) : u.message || (u.fullField || u.field) + " fails") : v instanceof Array ? l(v) : v instanceof Error && l(v.message);
}
v && v.then && v.then(function() {
return l();
}, function(F) {
return l(F);
});
}, function(f) {
c(f);
}, s);
}, e.getType = function(n) {
if (n.type === void 0 && n.pattern instanceof RegExp && (n.type = "pattern"), typeof n.validator != "function" && n.type && !Z.hasOwnProperty(n.type))
throw new Error(N("Unknown rule type %s", n.type));
return n.type || "string";
}, e.getValidationMethod = function(n) {
if (typeof n.validator == "function")
return n.validator;
var i = Object.keys(n), a = i.indexOf("message");
return a !== -1 && i.splice(a, 1), i.length === 1 && i[0] === "required" ? Z.required : Z[this.getType(n)] || void 0;
}, r;
}();
X.register = function(e, t) {
if (typeof t != "function")
throw new Error("Cannot register a validator by type, validator is not a function");
Z[e] = t;
};
X.warning = mt;
X.messages = je;
X.validators = Z;
const Xn = [
"",
"error",
"validating",
"success"
], kn = Ee({
label: String,
labelWidth: {
type: [String, Number],
default: ""
},
labelPosition: {
type: String,
values: ["left", "right", "top", ""],
default: ""
},
prop: {
type: be([String, Array])
},
required: {
type: Boolean,
default: void 0
},
rules: {
type: be([Object, Array])
},
error: String,
validateStatus: {
type: String,
values: Xn
},
for: String,
inlineMessage: {
type: [String, Boolean],
default: ""
},
showMessage: {
type: Boolean,
default: !0
},
size: {
type: String,
values: st
}
}), Qe = "ElLabelWrap";
var ei = Q({
name: Qe,
props: {
isAutoWidth: Boolean,
updateAll: Boolean
},
setup(r, {
slots: e
}) {
const t = oe(Te, void 0), n = oe(we);
n || $t(Qe, "usage: <el-form-item><label-wrap /></el-form-item>");
const i = Se("form"), a = W(), o = W(0), s = () => {
var c;
if ((c = a.value) != null && c.firstElementChild) {
const h = window.getComputedStyle(a.value.firstElementChild).width;
return Math.ceil(Number.parseFloat(h));
} else
return 0;
}, d = (c = "update") => {
nt(() => {
e.default && r.isAutoWidth && (c === "update" ? o.value = s() : c === "remove" && (t == null || t.deregisterLabelWidth(o.value)));
});
}, b = () => d("update");
return tt(() => {
b();
}), rt(() => {
d("remove");
}), At(() => b()), ae(o, (c, h) => {
r.updateAll && (t == null || t.registerLabelWidth(c, h));
}), zt(E(() => {
var c, h;
return (h = (c = a.value) == null ? void 0 : c.firstElementChild) != null ? h : null;
}), b), () => {
var c, h;
if (!e)
return null;
const {
isAutoWidth: w
} = r;
if (w) {
const q = t == null ? void 0 : t.autoLabelWidth, A = n == null ? void 0 : n.hasLabel, f = {};
if (A && q && q !== "auto") {
const g = Math.max(0, Number.parseInt(q, 10) - o.value), P = (n.labelPosition || t.labelPosition) === "left" ? "marginRight" : "marginLeft";
g && (f[P] = `${g}px`);
}
return se("div", {
ref: a,
class: [i.be("item", "label-wrap")],
style: f
}, [(c = e.default) == null ? void 0 : c.call(e)]);
} else
return se(jt, {
ref: a
}, [(h = e.default) == null ? void 0 : h.call(e)]);
};
}
});
const ti = Q({
name: "ElFormItem"
}), ri = /* @__PURE__ */ Q({
...ti,
props: kn,
setup(r, { expose: e }) {
const t = r, n = Et(), i = oe(Te, void 0), a = oe(we, void 0), o = ft(void 0, { formItem: !1 }), s = Se("form-item"), d = It().value, b = W([]), c = W(""), h = Rt(c, 100), w = W(""), q = W();
let A, f = !1;
const g = E(() => t.labelPosition || (i == null ? void 0 : i.labelPosition)), u = E(() => {
if (g.value === "top")
return {};
const p = We(t.labelWidth || (i == null ? void 0 : i.labelWidth) || "");
return p ? { width: p } : {};
}), P = E(() => {
if (g.value === "top" || i != null && i.inline)
return {};
if (!t.label && !t.labelWidth && B)
return {};
const p = We(t.labelWidth || (i == null ? void 0 : i.labelWidth) || "");
return !t.label && !n.label ? { marginLeft: p } : {};
}), m = E(() => [
s.b(),
s.m(o.value),
s.is("error", c.value === "error"),
s.is("validating", c.value === "validating"),
s.is("success", c.value === "success"),
s.is("required", ht.value || t.required),
s.is("no-asterisk", i == null ? void 0 : i.hideRequiredAsterisk),
(i == null ? void 0 : i.requireAsteriskPosition) === "right" ? "asterisk-right" : "asterisk-left",
{
[s.m("feedback")]: i == null ? void 0 : i.statusIcon,
[s.m(`label-${g.value}`)]: g.value
}
]), l = E(() => it(t.inlineMessage) ? t.inlineMessage : (i == null ? void 0 : i.inlineMessage) || !1), v = E(() => [
s.e("error"),
{ [s.em("error", "inline")]: l.value }
]), F = E(() => t.prop ? fe(t.prop) ? t.prop.join(".") : t.prop : ""), $ = E(() => !!(t.label || n.label)), S = E(() => {
var p;
return (p = t.for) != null ? p : b.value.length === 1 ? b.value[0] : void 0;
}), M = E(() => !S.value && $.value), B = !!a, D = E(() => {
const p = i == null ? void 0 : i.model;
if (!(!p || !t.prop))
return me(p, t.prop).value;
}), R = E(() => {
const { required: p } = t, x = [];
t.rules && x.push(...Fe(t.rules));
const I = i == null ? void 0 : i.rules;
if (I && t.prop) {
const _ = me(I, t.prop).value;
_ && x.push(...Fe(_));
}
if (p !== void 0) {
const _ = x.map((L, z) => [L, z]).filter(([L]) => Object.keys(L).includes("required"));
if (_.length > 0)
for (const [L, z] of _)
L.required !== p && (x[z] = { ...L, required: p });
else
x.push({ required: p });
}
return x;
}), V = E(() => R.value.length > 0), de = (p) => R.value.filter((I) => !I.trigger || !p ? !0 : fe(I.trigger) ? I.trigger.includes(p) : I.trigger === p).map(({ trigger: I, ..._ }) => _), ht = E(() => R.value.some((p) => p.required)), bt = E(() => {
var p;
return h.value === "error" && t.showMessage && ((p = i == null ? void 0 : i.showMessage) != null ? p : !0);
}), Pe = E(() => `${t.label || ""}${(i == null ? void 0 : i.labelSuffix) || ""}`), U = (p) => {
c.value = p;
}, wt = (p) => {
var x, I;
const { errors: _, fields: L } = p;
(!_ || !L) && console.error(p), U("error"), w.value = _ ? (I = (x = _ == null ? void 0 : _[0]) == null ? void 0 : x.message) != null ? I : `${t.prop} is required` : "", i == null || i.emit("validate", t.prop, !1, w.value);
}, Ft = () => {
U("success"), i == null || i.emit("validate", t.prop, !0, "");
}, xt = async (p) => {
const x = F.value;
return new X({
[x]: p
}).validate({ [x]: D.value }, { firstFields: !0 }).then(() => (Ft(), !0)).catch((_) => (wt(_), Promise.reject(_)));
}, $e = async (p, x) => {
if (f || !t.prop)
return !1;
const I = ot(x);
if (!V.value)
return x == null || x(!1), !1;
const _ = de(p);
return _.length === 0 ? (x == null || x(!0), !0) : (U("validating"), xt(_).then(() => (x == null || x(!0), !0)).catch((L) => {
const { fields: z } = L;
return x == null || x(!1, z), I ? !1 : Promise.reject(z);
}));
}, ce = () => {
U(""), w.value = "", f = !1;
}, Ie = async () => {
const p = i == null ? void 0 : i.model;
if (!p || !t.prop)
return;
const x = me(p, t.prop);
f = !0, x.value = Ge(A), await nt(), ce(), f = !1;
}, Ot = (p) => {
b.value.includes(p) || b.value.push(p);
}, qt = (p) => {
b.value = b.value.filter((x) => x !== p);
};
ae(() => t.error, (p) => {
w.value = p || "", U(p ? "error" : "");
}, { immediate: !0 }), ae(() => t.validateStatus, (p) => U(p || ""));
const pe = ye({
...ke(t),
$el: q,
size: o,
validateMessage: w,
validateState: c,
labelId: d,
inputIds: b,
isGroup: M,
hasLabel: $,
fieldValue: D,
addInputId: Ot,
removeInputId: qt,
resetField: Ie,
clearValidate: ce,
validate: $e,
propString: F
});
return Xe(we, pe), tt(() => {
t.prop && (i == null || i.addField(pe), A = Ge(D.value));
}), rt(() => {
i == null || i.removeField(pe);
}), e({
size: o,
validateMessage: w,
validateState: c,
validate: $e,
clearValidate: ce,
resetField: Ie
}), (p, x) => {
var I;
return he(), et("div", {
ref_key: "formItemRef",
ref: q,
class: K(j(m)),
role: j(M) ? "group" : void 0,
"aria-labelledby": j(M) ? j(d) : void 0
}, [
se(j(ei), {
"is-auto-width": j(u).width === "auto",
"update-all": ((I = j(i)) == null ? void 0 : I.labelWidth) === "auto"
}, {
default: ge(() => [
j($) ? (he(), St(Tt(j(S) ? "label" : "div"), {
key: 0,
id: j(d),
for: j(S),
class: K(j(s).e("label")),
style: Me(j(u))
}, {
default: ge(() => [
te(p.$slots, "label", { label: j(Pe) }, () => [
_t(Ve(j(Pe)), 1)
])
]),
_: 3
}, 8, ["id", "for", "class", "style"])) : Ne("v-if", !0)
]),
_: 3
}, 8, ["is-auto-width", "update-all"]),
Re("div", {
class: K(j(s).e("content")),
style: Me(j(P))
}, [
te(p.$slots, "default"),
se(Pt, {
name: `${j(s).namespace.value}-zoom-in-top`
}, {
default: ge(() => [
j(bt) ? te(p.$slots, "error", {
key: 0,
error: w.value
}, () => [
Re("div", {
class: K(j(v))
}, Ve(w.value), 3)
]) : Ne("v-if", !0)
]),
_: 3
}, 8, ["name"])
], 6)
], 10, ["role", "aria-labelledby"]);
};
}
});
var yt = /* @__PURE__ */ at(ri, [["__file", "form-item.vue"]]);
const ui = Nt(wn, {
FormItem: yt
}), di = Mt(yt);
export {
ui as E,
di as a
};