sd-component-library
Version:
A Vue3 + Element Plus components library
101 lines (100 loc) • 3.54 kB
JavaScript
import "./base-B4QkiMzD.js";
import { E as h, a as E } from "./form-item-DUS5oSXR.js";
import { E as g, a as C } from "./col-CijE-5fQ.js";
import { _ as B } from "./index.vue_vue_type_script_setup_true_lang-1x5VCKmq.js";
import { _ as F } from "./index.vue_vue_type_script_setup_true_lang-5fJV14pf.js";
import { defineComponent as L, computed as N, ref as R, createBlock as n, openBlock as t, unref as a, withCtx as r, createVNode as m, createElementBlock as $, Fragment as x, renderList as P, createCommentVNode as S, createSlots as U, renderSlot as M } from "vue";
import { _ as W } from "./_plugin-vue_export-helper-CHgC5LLL.js";
const j = /* @__PURE__ */ L({
__name: "index",
props: {
formItemList: {},
models: {},
rules: { default: () => ({}) },
labelPosition: { default: "right" },
isView: { type: Boolean, default: !1 }
},
emits: ["update:models"],
setup(d, { expose: c, emit: f }) {
const i = d, _ = f, l = N({
get: () => i.models,
set: (o) => {
_("update:models", o);
}
}), s = R();
return c({
formItemValidate: async () => {
let o = !1;
return await s.value.validate((p) => {
o = p;
}), o;
},
formItemClear: (o) => {
s.value.clearValidate(o);
},
localModels: l,
formRef: s
}), (o, p) => {
const u = F, b = B, v = E, V = C, w = g, k = h;
return t(), n(k, {
ref_key: "formRef",
ref: s,
"label-position": o.labelPosition,
model: a(l),
rules: o.rules
}, {
default: r(() => [
m(w, { gutter: 30 }, {
default: r(() => [
(t(!0), $(x, null, P(o.formItemList, (e, y) => (t(), n(V, {
key: e.prop || y,
span: (e == null ? void 0 : e.spanNum) || 8
}, {
default: r(() => [
e.hidden ? S("", !0) : (t(), n(v, {
key: 0,
label: e.label,
"label-width": e.labelWidth || "auto",
prop: e.prop
}, U({
default: r(() => [
e.type === "slot" ? M(o.$slots, e.prop, {
key: 0,
model: a(l),
prop: e.prop,
value: a(l)[e.prop]
}, void 0, !0) : (t(), n(b, {
key: 1,
modelValue: a(l)[e.prop],
"onUpdate:modelValue": (I) => a(l)[e.prop] = I,
"is-view": o.isView,
"form-item": e.formItem
}, null, 8, ["modelValue", "onUpdate:modelValue", "is-view", "form-item"]))
]),
_: 2
}, [
e.icon ? {
name: "label",
fn: r(() => [
m(u, {
"icon-class": e.icon
}, null, 8, ["icon-class"])
]),
key: "0"
} : void 0
]), 1032, ["label", "label-width", "prop"]))
]),
_: 2
}, 1032, ["span"]))), 128))
]),
_: 3
})
]),
_: 3
}, 8, ["label-position", "model", "rules"]);
};
}
}), Q = /* @__PURE__ */ W(j, [["__scopeId", "data-v-878b9602"]]);
export {
Q as default
};