UNPKG

form-designer-xinyi

Version:

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

2 lines (1 loc) 3.1 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),y=require("./vuedraggable.umd--vzlsgiq.cjs"),o=require("./revoke-Bbm2vFx2.cjs"),_=require("./icon.vue_vue_type_script_setup_true_lang-CXgVOUsT.cjs"),V={class:"epic-component-view flex flex-col"},b={class:"epic-search-box px-10px py-6px"},N={class:"flex flex-1 overflow-auto"},w={class:"epic-tabs-box"},E=["title","onClick"],B={class:"h-full flex-1 overflow-auto py-2 box-border"},I=["onClick"],L={class:"text-center pt-42px text-gray-400"},M=e.defineComponent({__name:"index",setup(q){const x=o.pluginManager.getComponent("input"),u=e.inject("pageSchema"),d=e.inject("designer"),p=o.pluginManager.getComponentSchemaGroups(),c=e.ref(""),m={title:"全部",list:[]},i=e.ref(m),k=e.computed(()=>[m,...p.value]),r=e.computed(()=>{let l=i.value.list;if(i.value.title==="全部"){const n=p.value.map(t=>t.list);l=[].concat(...n)}return c.value?l.filter(n=>{var t;return(t=n.label)==null?void 0:t.includes(c.value)}):l});function C(l){i.value=l}function S(l){var g,h,f;const n=o.findSchemaInfoById(u.schemas,((g=d.state.checkedNode)==null?void 0:g.id)??"root");if(!n)return!1;let{list:t,schema:a,index:s}=n;a.children&&!((f=(h=o.pluginManager.getComponentConfingByType(a.type))==null?void 0:h.editConstraints)!=null&&f.childImmovable)&&(t=a.children,s=a.children.length-1);const v=o.generateNewSchema(l);t.splice(s+1,0,v),d.setCheckedNode(v),o.revoke.push(u.schemas,"插入组件")}return(l,n)=>(e.openBlock(),e.createElementBlock("div",V,[e.createElementVNode("div",b,[e.createVNode(e.unref(x),{placeholder:"搜索组件",modelValue:c.value,"onUpdate:modelValue":n[0]||(n[0]=t=>c.value=t),clearable:"",allowClear:"",value:c.value,"onUpdate:value":n[1]||(n[1]=t=>c.value=t)},{prefix:e.withCtx(()=>[e.createVNode(e.unref(_._sfc_main),{name:"icon-chaxun"})]),_:1},8,["modelValue","value"])]),e.createElementVNode("div",N,[e.createElementVNode("div",w,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(t,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["epic-tab cursor-pointer truncate",{checked:i.value.title===t.title}]),key:a,title:t.title,onClick:s=>C(t)},e.toDisplayString(t.title),11,E))),128))]),e.createElementVNode("div",B,[e.createVNode(e.unref(y.draggable),e.mergeProps({modelValue:r.value,"onUpdate:modelValue":n[2]||(n[2]=t=>r.value=t)},{group:{name:"edit-draggable",pull:"clone",put:!1},sort:!1,animation:180,ghostClass:"moving"},{clone:e.unref(o.generateNewSchema),"item-key":"id",class:"grid grid-cols-[auto_auto] px-10px gap-2"}),{item:e.withCtx(({element:t})=>[e.createElementVNode("div",{class:"epic-componet-item flex items-center truncate",onClick:a=>S(t)},[e.createVNode(e.unref(_._sfc_main),{prefix:"",name:e.unref(o.pluginManager).getComponentConfingByType(t.type).icon??""},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(t.label),1)],8,I)]),_:1},16,["modelValue","clone"]),e.withDirectives(e.createElementVNode("div",L,"没有查询到的组件",512),[[e.vShow,!r.value.length]])])])]))}});exports.default=M;