UNPKG

fx-epic-designer

Version:

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

2 lines (1 loc) 3.07 kB
"use strict";const e=require("vue");;/* empty css */const N=require("../../../../base-ui/src/icon/icon.vue2.cjs"),d=require("../../../../../utils/src/common/data.cjs");require("@vueuse/core");require("../../../../../hooks/src/store/index.cjs");const r=require("../../../../../utils/src/manager/pluginManager.cjs"),V=require("vuedraggable"),C={class:"nada-component-view flex flex-col"},S={class:"nada-search-box px-10px py-6px"},w={class:"flex flex-1 overflow-auto"},b={class:"box-border h-full flex-1 overflow-auto py-2"},k=["onClick"],q={class:"nada-componet-label w-0 flex-1 truncate"},E={class:"pt-42px text-center text-gray-400"},I=e.defineComponent({__name:"index",setup(B){const h=r.pluginManager.getComponent("input"),v=e.inject("pageSchema"),u=e.inject("designer"),_=e.inject("revoke");e.inject("designerProps");const x=r.pluginManager.getComponentSchemaGroups(),l=e.ref(""),p={title:"全部",list:[]};e.ref(p),e.computed(()=>[p,...x.value]);const c=e.computed(()=>[{componentProps:{placeholder:"请输入销售单号"},field:"so_no",id:"so_no",input:!0,label:"销售单",type:"input"},{componentProps:{placeholder:"请输入采购单号"},field:"po_no",id:"po_no",input:!0,label:"销售单",type:"input"}]);function y(n){var m,g,f;const o=d.findSchemaInfoById(v.schemas,((m=u.state.selectedNode)==null?void 0:m.id)??"root");if(console.log(n),!o)return!1;let{index:a,schema:t,list:s}=o;console.log(n),t.children&&!((f=(g=r.pluginManager.getComponentConfingByType(t.type))==null?void 0:g.editConstraints)!=null&&f.childImmovable)&&(s=t.children,a=t.children.length-1),console.log(n);const i=d.generateNewSchema(n);console.log(i),s.splice(a+1,0,i),u.setSelectedNode(i),_.push("插入组件")}return(n,o)=>{const a=e.resolveComponent("NadaIcon");return e.openBlock(),e.createElementBlock("div",C,[e.createElementVNode("div",S,[e.createVNode(e.unref(h),{modelValue:l.value,"onUpdate:modelValue":o[0]||(o[0]=t=>l.value=t),value:l.value,"onUpdate:value":o[1]||(o[1]=t=>l.value=t),placeholder:"搜索组件",clearable:"","allow-clear":""},{prefix:e.withCtx(()=>[e.createVNode(e.unref(N),{class:"text-$nada-text-helper",name:"icon--nada--search-rounded"})]),_:1},8,["modelValue","value"])]),e.createElementVNode("div",w,[e.createElementVNode("div",b,[e.createVNode(e.unref(V),e.mergeProps({modelValue:c.value,"onUpdate:modelValue":o[2]||(o[2]=t=>c.value=t)},{group:{name:"edit-draggable",pull:"clone",put:!1},sort:!1,animation:180,ghostClass:"moving"},{clone:e.unref(d.generateNewSchema),"item-key":"id",class:"px-10px grid grid-cols-[auto_auto] gap-2"}),{item:e.withCtx(({element:t})=>[e.createElementVNode("div",{class:"nada-componet-item flex items-center truncate",onClick:s=>y(t)},[e.createVNode(a,{name:e.unref(r.pluginManager).getComponentConfingByType(t.type).icon??""},null,8,["name"]),e.createElementVNode("div",q,e.toDisplayString(t.label),1)],8,k)]),_:1},16,["modelValue","clone"]),e.withDirectives(e.createElementVNode("div",E," 没有查询到的组件 ",512),[[e.vShow,c.value.length===0]])])])])}}});module.exports=I;