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