snowy-designer
Version:
基于Epic-Designer-Pro版本的设计器,可视化开发页面表单
2 lines (1 loc) • 3.96 kB
JavaScript
;const e=require("vue");;/* empty css */const u=require("../../../../base-ui/src/components/icon/icon.vue.cjs");require("radix-vue");require("clsx");require("tailwind-merge");require("lucide-vue-next");require("../../../../base-ui/src/shadch-ui/button/index.cjs");require("@vueuse/core");require("../../../../base-ui/src/shadch-ui/toast/index.cjs");const x=require("../../../../base-ui/src/components/empty/empty.vue.cjs"),v=require("../../../../../utils/src/common/data.cjs");require("../../../../../hooks/src/store/index.cjs");require("lodash");const b=require("../../../../../utils/src/manager/pluginManager.cjs");require("monaco-editor");require("../../../../../utils/src/request/index.cjs");require("vuedraggable");const w=require("./apiEditModal.vue.cjs"),A={class:"epic-data-source-main p-2"},B={class:"pb-2"},M=["onClick"],S={class:"w-0px flex-1 pr-1"},L={class:"truncate"},I={class:"truncate"},j={class:"bg-green-4 color-white rounded px-2"},D=["onClick"],$=["onClick"],T=e.defineComponent({__name:"index",props:{selectable:{type:Boolean}},emits:["clickItem"],setup(h,{expose:k,emit:y}){var g;const d=h,C=y,N=(g=b.pluginManager)==null?void 0:g.getComponent("button"),p=e.ref(),i=e.inject("pageSchema"),a=e.ref(null),f=e.ref(null),n=e.reactive({apis:[],autoLoad:!0});e.provide("globalApiConfig",n),e.watch(()=>i.globalApiConfig,t=>{t&&v.deepCompareAndModify(n,t)},{deep:!0,immediate:!0});function c(t,o=null){var r;a.value=o,(r=p.value)==null||r.handleOpen(t)}function m(t,o=null){if(d.selectable){f.value=t.id,C("clickItem",t,o);return}c(t,o)}function V(t){a.value===null?n.apis.push(t):n.apis[a.value]=t,s()}function q(t){n.apis=n.apis.filter((o,r)=>t!==r),s()}function s(){if(!i.globalApiConfig){i.globalApiConfig=n;return}v.deepCompareAndModify(i.globalApiConfig,n)}const E=()=>{n.autoLoad=!n.autoLoad,s()};return k({handleClickItem:m}),(t,o)=>(e.openBlock(),e.createElementBlock("div",A,[e.createElementVNode("div",{onClick:E},e.toDisplayString(n.autoLoad?"自动":"不加载"),1),e.createElementVNode("div",B,[e.createVNode(e.unref(N),{type:"primary",class:"w-full",onClick:o[0]||(o[0]=r=>c())},{default:e.withCtx(()=>[e.createVNode(e.unref(u),{class:"mr-2 cursor-pointer",name:"icon-tianjia"}),o[1]||(o[1]=e.createTextVNode(" 新增 "))]),_:1})]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.apis,(r,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:e.normalizeClass(["epic-data-source-item group mb-2 flex cursor-pointer items-center rounded p-2 transition-all",{active:f.value===r.id}]),onClick:_=>m(r,l)},[e.createElementVNode("div",S,[e.createElementVNode("div",L,[o[2]||(o[2]=e.createTextVNode(" 名称:")),e.createElementVNode("span",null,e.toDisplayString(r.id),1)]),e.createElementVNode("div",I,[o[3]||(o[3]=e.createTextVNode(" 地址:")),e.createElementVNode("span",null,e.toDisplayString(r.url),1)]),e.createElementVNode("div",null,[e.createElementVNode("span",j,e.toDisplayString(r.method),1)])]),d.selectable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"color-white group-hover:bg-#9f7 w-28px h-28px mr-1 flex items-center justify-center rounded-full opacity-0 transition-all group-hover:opacity-100",onClick:e.withModifiers(_=>c(r,l),["stop"])},[e.createVNode(e.unref(u),{class:"cursor-pointer text-lg",name:"icon--epic--border-color-outline-rounded"})],8,D)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"color-white group-hover:bg-#f89 w-28px h-28px flex items-center justify-center rounded-full opacity-0 transition-all group-hover:opacity-100",onClick:e.withModifiers(_=>q(l),["stop"])},[e.createVNode(e.unref(u),{class:"cursor-pointer text-lg",name:"icon--epic--delete-outline-rounded"})],8,$)],10,M))),128)),e.withDirectives(e.createVNode(e.unref(x),{description:"暂无数据源"},null,512),[[e.vShow,!n.apis.length]]),e.createVNode(w,{ref_key:"apiEditModalRef",ref:p,onAdd:V},null,512)]))}});module.exports=T;