UNPKG

gepic

Version:

基于vue3的设计器,可视化开发页面表单

2 lines (1 loc) 2.44 kB
"use strict";const e=require("vue"),g=require("../../../../node/src/node.vue.cjs"),k=require("../../../../../../utils/manager/pluginManager.cjs");require("@vueuse/core");require("../../../../../../hooks/store/index.cjs");const r=require("../../../../../../utils/common/data.cjs"),y=["title"],m=e.defineComponent({__name:"attributeView",setup(_){const i=e.inject("designer"),c=e.inject("pageSchema"),p=e.inject("revoke"),d=k.pluginManager.getComponentConfings(),o=e.computed(()=>i.state.checkedNode);function f(n){var a;return typeof n.show=="boolean"?n.show:typeof n.show=="function"?(a=n.show)==null?void 0:a.call(n,{values:o.value}):!0}const u=e.computed(()=>{var l,t;if(!o.value||!o.value.type)return[];const n=((l=d[o.value.type])==null?void 0:l.config.attribute)??[];let a=[{label:"组件ID",type:"input",field:"id",componentProps:{disabled:!0}},...n];return o.value.id===((t=c.schemas[0])==null?void 0:t.id)&&a.push({label:"画布宽度",type:"EInputSize",field:"canvas.width",editData:c},{label:"画布高度",type:"EInputSize",field:"canvas.height",editData:c}),a});function h(n,a,l,t=o.value){typeof l.onChange=="function"&&l.onChange({value:n,values:t,componentAttributes:u}),l.changeSync?r.setValueByPath(t,a,n):e.nextTick(()=>{r.setValueByPath(t,a,n)}),p.push(c.schemas,"编辑组件属性")}return(n,a)=>{var l;return e.openBlock(),e.createElementBlock("div",{key:(l=o.value)==null?void 0:l.id,class:"epic-attribute-view"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,t=>{var s;return e.openBlock(),e.createElementBlock("div",{key:t.field},[f(t)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["epic-attr-item",t.layout])},[t.label?(e.openBlock(),e.createElementBlock("div",{key:0,class:"epic-attr-label",title:t.label},e.toDisplayString(t.label),9,y)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["epic-attr-input",{"block!":t.layout==="vertical"}])},[e.createVNode(e.unref(g),{"component-schema":{...t,componentProps:{...t.componentProps,...t.field==="componentProps.defaultValue"?(s=o.value)==null?void 0:s.componentProps:{},input:!1,field:void 0,hidden:!1},show:!0,noFormItem:!0},"model-value":e.unref(r.getValueByPath)(t.editData??o.value,t.field),"onUpdate:modelValue":v=>h(v,t.field,t,t.editData)},null,8,["component-schema","model-value","onUpdate:modelValue"])],2)],2)):e.createCommentVNode("",!0)])}),128))])}}});module.exports=m;