UNPKG

@wetspace/pro-components

Version:
120 lines (119 loc) 4.45 kB
import { defineComponent as _, useSlots as T, shallowRef as S, computed as d, openBlock as n, createBlock as u, mergeProps as c, createSlots as b, withCtx as a, createElementBlock as i, Fragment as m, renderList as g, unref as f, withDirectives as F, resolveDynamicComponent as h, vShow as v, renderSlot as w, normalizeProps as C, guardReactiveProps as x } from "vue"; import V from "./index.vue.mjs"; import { wetSchemaProps as R } from "./types.mjs"; import { WetFormAutocompleter as $, WetFormCascader as A, WetFormSelect as D, WetFormCheckbox as B, WetFormColorPicker as E, WetFormDatePicker as j, WetFormNumber as z, WetFormRadio as L, WetFormSlider as N, WetFormSwitch as q, WetFormTimePicker as G, WetFormTimeSelect as H, WetFormRate as J, WetFormArray as K, WetFormText as M } from "../../form-fileds/index.mjs"; import O from "./base/dependency.mjs"; const ee = /* @__PURE__ */ _({ name: "WetSchemaForm", __name: "schema", props: R, setup(y, { expose: I }) { const k = T(), t = S(), s = y, W = d(() => s.properties ? s.properties.filter((r) => !r.hideInRender).map((r) => ({ value: { ...r, renderFormItem: null, valueEnum: null, hideInForm: null, property: null, valueType: null, prop: r.property || r.prop, label: r.title || r.label, formInputProps: { options: r.valueEnum, ...r.formInputProps } }, other: { key: Array.isArray(r.property) ? r.property.join(".") : r.property, renderFormItem: r.renderFormItem, dependency: r.dependency, hideInForm: r.hideInForm, valueType: r.valueType } })) : []), P = d(() => { const e = { ...s }; return delete e.properties, e; }), p = (e, o) => o || (e === "autocomplete" ? $ : e === "cascader" ? A : e === "select" ? D : e === "checkbox" ? B : e === "color" ? E : e === "date" ? j : e === "number" ? z : e === "radio" ? L : e === "slider" ? N : e === "switch" ? q : e === "time-picker" ? G : e === "time-select" ? H : e === "rate" ? J : e === "array" ? K : M); return I({ submit: () => { var e; return (e = t.value) == null ? void 0 : e.submit(); }, reset: () => { var e; return (e = t.value) == null ? void 0 : e.reset(); }, validateField: (e) => { var o; return (o = t.value) == null ? void 0 : o.validateField(e); }, clearValidate: (e) => { var o; return (o = t.value) == null ? void 0 : o.clearValidate(e); }, getFieldsValue: (e) => { var o; return (o = t.value) == null ? void 0 : o.getFieldsValue(e); }, setFieldsValue: (e, o) => { var r; return (r = t.value) == null ? void 0 : r.setFieldsValue(e, o); }, scrollToField: (e) => { var o; return (o = t.value) == null ? void 0 : o.scrollToField(e); } }), (e, o) => (n(), u(V, c(P.value, { ref_key: "formIns", ref: t }), b({ default: a(() => [ (n(!0), i(m, null, g(W.value, (r) => (n(), i(m, { key: r.other.key }, [ r.other.dependency ? (n(), u(f(O), { key: 0, relyprops: r.other.dependency.relyprops, "dependency-change": r.other.dependency.dependencyChange }, { default: a(({ parames: l }) => [ F((n(), u(h(p( (l == null ? void 0 : l.valueType) || r.other.valueType, r.other.renderFormItem )), c({ ref_for: !0 }, { ...r.value, ...l, formInputProps: { ...r.value.formInputProps, ...l == null ? void 0 : l.formInputProps } }), null, 16)), [ [v, !r.other.hideInForm] ]) ]), _: 2 }, 1032, ["relyprops", "dependency-change"])) : F((n(), u(h(p(r.other.valueType, r.other.renderFormItem)), c({ key: 1, ref_for: !0 }, r.value), null, 16)), [ [v, !r.other.hideInForm] ]) ], 64))), 128)) ]), _: 2 }, [ f(k).actions ? { name: "actions", fn: a((r) => [ w(e.$slots, "actions", C(x(r))) ]), key: "0" } : void 0 ]), 1040)); } }); export { ee as default };