gepic
Version:
基于vue3的设计器,可视化开发页面表单
2 lines (1 loc) • 1.51 kB
JavaScript
;const e=require("vue"),c=require("element-plus"),f={class:"epic-modal-footer"},h=e.defineComponent({__name:"modal",props:{componentSchema:{},hideConfirm:{type:Boolean}},emits:["ok","close","update:modelValue"],setup(d,{emit:m}){const i=e.useAttrs(),o=d,n=m,l=e.computed(()=>{var t;return{...o.componentSchema,...i,title:((t=o.componentSchema)==null?void 0:t.label)??"",class:"epic-modal-el epic-modal-main","destroy-on-close":!0}}),r=e.computed(()=>{var t;return((t=o.componentSchema)==null?void 0:t.children)??[]});function u(){n("ok")}function a(){n("update:modelValue",!1),n("close")}return(t,s)=>(e.openBlock(),e.createBlock(e.unref(c.ElDialog),e.mergeProps(l.value,{title:l.value.label??"",class:"epic-modal-el epic-modal-main epic-scoped","destroy-on-close":"","onUpdate:modelValue":a}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",{},()=>[e.renderSlot(t.$slots,"edit-node",{},()=>[r.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(r.value,p=>e.renderSlot(t.$slots,"node",{componentSchema:p})),256)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",f,[e.createVNode(e.unref(c.ElButton),{onClick:a},{default:e.withCtx(()=>s[0]||(s[0]=[e.createTextVNode(" 关闭 ")])),_:1}),o.hideConfirm?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(c.ElButton),{key:0,type:"primary",onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.value.okText??"确定"),1)]),_:1}))])]),_:3},16,["title"]))}});module.exports=h;