epic-designer
Version:
基于vue3的设计器,可视化开发页面表单
55 lines (54 loc) • 1.97 kB
JavaScript
import { defineComponent as c, ref as p, watch as m, toRaw as u, createElementBlock as f, openBlock as _, createVNode as g, unref as n } from "vue";
/* empty css */
/* empty css */
/* empty css */
import { pluginManager as y } from "../../../../../manager/src/pluginManager.js";
/* empty css */
import "vue-draggable-plus";
import { deepEqual as N, deepCompareAndModify as E } from "../../../../../utils/src/common/data.js";
import "../../../../../git/epic/epic-designer/node_modules/.pnpm/jsep@1.4.0/node_modules/jsep/dist/jsep.js";
import "@vueuse/core";
import "../../../../../hooks/src/store/index.js";
import { useDesignerContext as h } from "../../../../../hooks/src/designer/useDesignerContext.js";
const v = { class: "epic-sound-code" }, A = /* @__PURE__ */ c({
__name: "index",
setup(x) {
const i = y.component.get("monacoEditor"), s = p(null), e = h(), a = e.props;
let r = {};
m(
() => e.state.selectedNode,
(o) => {
var t;
N(r, u(o)) || (t = s.value) == null || t.setValue(JSON.stringify(o, null, 2));
},
{
deep: !0
}
);
const l = JSON.stringify(e.state.selectedNode, null, 2);
function d(o) {
try {
if (!e.state.selectedNode)
return !1;
r = JSON.parse(o), E(e.state.selectedNode, r);
} catch (t) {
console.warn("[Epic:源码]异常:", t);
}
}
return (o, t) => (_(), f("div", v, [
g(n(i), {
ref_key: "monacoEditorRef",
ref: s,
"auto-toggle-theme": "",
class: "epic-editor",
"read-only": n(a).sourceCodeReadOnly,
"model-value": n(l),
"line-numbers": "off",
"onUpdate:modelValue": d
}, null, 8, ["read-only", "model-value"])
]));
}
});
export {
A as default
};