epic-designer-gold
Version:
基于vue3的设计器,可视化开发页面表单
42 lines (41 loc) • 1.17 kB
JavaScript
import { defineComponent as i, h as c, renderSlot as m } from "vue";
import { ElTabs as l } from "element-plus";
import { g as o } from "./pluginManager-BCnrHPYv.js";
const f = i({
props: {
componentSchema: {
type: Object,
require: !0,
default: () => ({})
},
modelValue: {
type: Array,
default: () => []
}
},
setup(t, { slots: d }) {
return () => {
var r;
const n = {
...t.componentSchema,
title: ((r = t.componentSchema) == null ? void 0 : r.label) ?? ""
};
let a = [];
return t.modelValue && t.modelValue.length ? a = t.modelValue.map((e) => (e.type = "tab-panel", e.id = e.id ? e.id : "tab-panel_" + o(), e.children = e.children ?? [], e)) : a = n.children.map((e) => (e.type = "tab-panel", e.id = e.id ? e.id : "tab-panel_" + o(), e.children = e.children ?? [], e)), delete n.children, c(l, n, {
default: () => [
m(
d,
"edit-node",
{},
() => a.map(
(e) => m(d, "node", { componentSchema: e })
)
)
]
});
};
}
});
export {
f as default
};