UNPKG

epic-designer

Version:

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

2 lines (1 loc) 4.17 kB
"use strict";const e=require("vue");;/* empty css */const c=require("../../../../base-ui/src/icon/icon.vue.cjs");;/* empty css */;/* empty css */const a=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 $=require("../../../../../hooks/src/designer/useDesignerContext.cjs"),p=require("../../../../../manager/src/pluginManager.cjs");;/* empty css */const b=require("../../../../base-ui/src/tree/tree.vue.cjs"),D={class:"epic-outline"},E=["onMouseenter"],I={class:"max-w-full truncate"},z={class:"epic-node-type-text w-0 flex-1 truncate"},L=e.defineComponent({__name:"outline",setup(H){const o=$.useDesignerContext(),u=o.pageSchema,S=e.computed(()=>{var i;const t=(i=o.state.selectedNode)==null?void 0:i.id;return t?[t]:[]});function q(t){o.setSelectedNode(t.componentSchema)}function h(t){t.props||(t.props={}),t.props.hidden=!t.props.hidden}function V(t){t.status||(t.status={lock:!1}),t.status.lock=!t.status.lock}function M(t){if(!t)return;const i=a.findSchemaInfoById(u.schemas,t.id);if(!i)return!1;const{index:r,schema:n,list:d}=i,l=a.generateNewSchema(n,u.schemas);d.splice(r+1,0,l),o.setSelectedNode(l),o.revoke.push("复制组件")}function w(t){if(!t)return;const i=a.findSchemaInfoById(u.schemas,t.id);if(!i)return!1;let{index:r,list:n}=i;n.splice(r,1),r===n.length&&r--,o.setSelectedNode(n[r]),o.revoke.push("删除组件")}return(t,i)=>{var r;return e.openBlock(),e.createElementBlock("div",D,[e.createVNode(e.unref(b),{options:e.unref(u).schemas,draggable:"","selected-keys":S.value,"hover-key":((r=e.unref(o).state.hoverNode)==null?void 0:r.id)??"",onNodeClick:q},{"tree-node":e.withCtx(({schema:n})=>{var d,l,k,f,_,v,g,m,y,C,N,x,B;return[e.createElementVNode("div",{class:e.normalizeClass(["ep-outline-item epic-text-padding flex",{hidden:(d=n.props)==null?void 0:d.hidden}]),onMouseenter:e.withModifiers(s=>e.unref(o).setHoverNode(n),["stop"]),onMouseleave:i[0]||(i[0]=e.withModifiers(s=>e.unref(o).setHoverNode(null),["stop"]))},[e.createElementVNode("span",I,[e.createVNode(e.unref(c),{class:"epic-component-icon translate-y-2px",name:e.unref(p.pluginManager).component.getIcon(n.type)},null,8,["name"]),e.createTextVNode(" "+e.toDisplayString(n.label??e.unref(p.pluginManager).component.getLabel(n.type)),1)]),e.createElementVNode("span",z,e.toDisplayString(n.id),1),!e.unref(p.pluginManager).component.getLocked(n)&&n.id!==e.unref(o).pageSchema.schemas[0].id?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["ep-tree-action",{active:((l=n.props)==null?void 0:l.hidden)||((k=n.status)==null?void 0:k.lock)}])},[(f=n.props)!=null&&f.hidden?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(c),{key:0,class:e.normalizeClass(["mr-2",{active:(_=n.status)==null?void 0:_.lock}]),name:(v=n.status)!=null&&v.lock?"icon--epic--lock-outline":"icon--epic--lock-open-outline",onClick:s=>V(n)},null,8,["class","name","onClick"])),(g=n.status)!=null&&g.lock?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(c),{key:1,class:e.normalizeClass(["mr-2",{active:(m=n.props)==null?void 0:m.hidden}]),name:(y=n.props)!=null&&y.hidden?"icon--epic--visibility-off-outline-rounded":"icon--epic--visibility-outline-rounded",onClick:s=>h(n)},null,8,["class","name","onClick"])),!((C=n.status)!=null&&C.lock)&&!((N=n.props)!=null&&N.hidden)?(e.openBlock(),e.createBlock(e.unref(c),{key:2,class:"mr-2",name:"icon--epic--copy-all-outline-rounded",onClick:s=>M(n)},null,8,["onClick"])):e.createCommentVNode("",!0),!((x=n.status)!=null&&x.lock)&&!((B=n.props)!=null&&B.hidden)?(e.openBlock(),e.createBlock(e.unref(c),{key:3,class:"mr-2",name:"icon--epic--delete-outline-rounded",onClick:s=>w(n)},null,8,["onClick"])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0)],42,E)]}),_:1},8,["options","selected-keys","hover-key"])])}}});module.exports=L;