goldpankit
Version:
GoldPanKit是一款极速研发套件,可在套件中快速构建各类技术框架和项目。开源作者可发布自己的项目,并为其设定金额,实现开源项目的盈利。
2 lines (1 loc) • 7.09 kB
JavaScript
import{P as L,S as A}from"./PluginList-6bfbfed4.js";import{_ as y,r as l,o as n,c as o,F as j,f as k,b as a,a as i,t,M as I,z as F,A as h,j as v,H as m,I as f,g as q,w as g,e as b,p as z,l as E}from"./index-aa9a4821.js";import{B as D}from"./BeanAmount-b97a3229.js";import{f as U,a as O}from"./service-b1ea6629.js";import{a as H}from"./service.space-c2470b82.js";import{S as w}from"./ServiceTitle-62d26790.js";import{S as R}from"./ServiceStatus-4cc25d87.js";import"./service.version-ac5cb490.js";const G={name:"VerticalServiceList",components:{ServiceTitle:w,BeanAmount:D},props:{space:{require:!0},services:{type:Array,required:!0}}},J={class:"service-list"},K={class:"price-wrap"},Q={class:"text-info-1 text-mini"};function W(s,r,p,T,e,S){const _=l("ServiceTitle"),d=l("BeanAmount");return n(),o("ul",J,[(n(!0),o(j,null,k(p.services,u=>(n(),o("li",{key:u.name},[a(_,{space:p.space,service:u.name,"with-paths":!1},null,8,["space","service"]),i("p",null,t(u.introduce),1),i("div",K,[i("p",Q,t(s.getDateOffsetText(u.lastPublish)),1),a(d,{price:u.price.price,type:u.price.leaseType},null,8,["price","type"])])]))),128))])}const X=y(G,[["render",W],["__scopeId","data-v-15862673"]]);const Y={components:{ServiceStatus:R,ServiceTitle:w,VerticalServiceList:X,BeanAmount:D,MarkdownEditor:I,PluginList:L,ServiceStructureView:A},data(){return{loading:!0,route:{space:null,service:null},currentTab:"readme",currentMajorVersion:"",currentVersion:null,majorVersions:[],space:null,service:null,majorVersionDetail:null,relationServices:[]}},methods:{initData(){this.loading=!0,this.space=null,this.service=null,this.currentVersion=null,this.fetchSpace(),this.fetchServices(),this.fetchDetail()},changeMajorVersion(s){this.currentMajorVersion!==s&&(this.currentMajorVersion=s,this.fetchDetail(s))},fetchSpace(){H(this.route.space).then(s=>{this.space=s}).catch(s=>{this.$tip.apiFailed(s)})},fetchServices(){U({space:this.route.space,withSpaceInfo:!1,withPublisher:!1}).then(s=>{this.relationServices=s.filter(r=>this.route.service!==r.name)}).catch(s=>{this.$tip.apiFailed(s)})},fetchDetail(s){O({...this.route,majorVersion:s}).then(r=>{if(r==null){this.alert("该服务还未发布或已被删除").then(()=>{this.$router.push({name:"PublicServices"})});return}this.service=r,this.majorVersions=r.majorVersions,this.currentMajorVersion=s||this.majorVersions[0],this.majorVersionDetail=r.defaultMajorVersion,this.currentVersion=this.majorVersionDetail.version,this.majorVersionDetail.description==null&&this.majorVersionDetail.description.trim()===""&&(this.majorVersionDetail.description="No Descriptions")}).catch(r=>{if(r.code===5110||r.code===4002){this.alert(r.message).then(()=>{this.$router.push({name:"PublicServices"})});return}this.$tip.apiFailed(r)}).finally(()=>{this.loading=!1})}},beforeRouteUpdate(s,r,p){this.route.space=s.params.spaceName,this.route.service=s.params.serviceName,this.initData(),p()},created(){this.route.space=this.$route.params.spaceName,this.route.service=this.$route.params.serviceName,this.initData()}},Z=s=>(z("data-v-9027b968"),s=s(),E(),s),x={class:"page"},$={key:0,class:"wrap"},ee={class:"header"},se={class:"tech-stack-wrap"},ie={key:0,class:"major-versions"},re=["onClick"],te={class:"content-wrap"},ne={class:"dimension-wrap"},oe={class:"dimensions"},ce={key:0,class:"detail"},le={class:"info"},ae={class:"user-profile"},ue={class:"user-info"},pe=["src"],ve={class:"introduce"},he={class:"install"},me=Z(()=>i("i",{class:"iconfont icon-code"},null,-1)),_e={class:"info-list"},de=["href"],fe={key:1},Se={key:0},Ve={key:1},ge={key:0,class:"relation-services-wrap"};function be(s,r,p,T,e,S){const _=l("ServiceTitle"),d=l("ServiceStatus"),u=l("BeanAmount"),N=l("MarkdownEditor"),P=l("PluginList"),M=l("ServiceStructureView"),V=l("el-button"),C=l("VerticalServiceList"),B=F("loading");return h((n(),o("div",x,[e.space!=null&&e.service!=null?(n(),o("div",$,[i("div",ee,[a(_,{space:e.space.name,service:e.service.name,"service-label":e.service.label},null,8,["space","service","service-label"]),i("div",se,[a(d,{"with-private":e.service.withPrivate},null,8,["with-private"]),i("p",null,t(e.majorVersionDetail.subServices.length)+" "+t(s.$t("service.plugins")),1),a(u,{price:e.service.price.price,type:e.service.price.leaseType},null,8,["price","type"])]),e.majorVersions.length>1?(n(),o("ul",ie,[(n(!0),o(j,null,k(e.majorVersions,c=>(n(),o("li",{key:c,class:m({selected:c===e.currentMajorVersion}),onClick:ye=>S.changeMajorVersion(c)},"v"+t(c),11,re))),128))])):v("",!0)]),i("div",te,[i("div",ne,[i("ul",oe,[i("li",{class:m({selected:e.currentTab==="readme"}),onClick:r[0]||(r[0]=c=>e.currentTab="readme")},t(s.$t("common.readme")),3),i("li",{class:m({selected:e.currentTab==="extends"}),onClick:r[1]||(r[1]=c=>e.currentTab="extends")},t(s.$t("service.subServices")),3),i("li",{class:m({selected:e.currentTab==="structure"}),onClick:r[2]||(r[2]=c=>e.currentTab="structure")},t(s.$t("service.structure")),3)]),e.majorVersionDetail!=null?(n(),o("div",ce,[h(a(N,{modelValue:e.majorVersionDetail.description,"onUpdate:modelValue":r[3]||(r[3]=c=>e.majorVersionDetail.description=c),readonly:!0,"without-padding":!0},null,8,["modelValue"]),[[f,e.currentTab==="readme"]]),h(a(P,{plugins:e.majorVersionDetail.subServices},null,8,["plugins"]),[[f,e.currentTab==="extends"]]),e.currentVersion!=null?h((n(),q(M,{key:0,space:e.route.space,service:e.route.service,version:e.currentVersion},null,8,["space","service","version"])),[[f,e.currentTab==="structure"]]):v("",!0)])):v("",!0)]),i("div",le,[i("div",ae,[i("div",ue,[i("img",{src:s.getAccessUri(e.service.user.avatar,"/images/avatar/default.png")},null,8,pe),i("h4",null,t(e.service.user.username),1)]),i("p",ve,t(e.service.user.introduce===""||e.service.user.introduce==null?"No introduce":e.service.user.introduce),1)]),i("div",he,[a(V,{type:"important",size:"large",onClick:r[4]||(r[4]=c=>s.$router.push({name:"ServiceInstaller",params:{spaceName:e.space.name,serviceName:e.service.name},query:{major:e.currentMajorVersion}}))},{default:g(()=>[me,b(t(s.$t("service.install")),1)]),_:1}),a(V,{size:"large",onClick:r[5]||(r[5]=c=>s.$router.push({name:"CreatePlugin",query:{space:e.space.name,service:e.service.name}}))},{default:g(()=>[b(t(s.$t("plugin.create2")),1)]),_:1})]),i("ul",_e,[i("li",null,[i("label",null,t(s.$t("service.subServices")),1),i("p",null,t(e.majorVersionDetail.subServices.length),1)]),i("li",null,[i("label",null,t(s.$t("service.repository")),1),e.service.repository!=null&&e.service.repository!==""?(n(),o("a",{key:0,href:e.service.repository,target:"_blank"},t(e.service.repository),9,de)):(n(),o("p",fe,t(s.$t("common.none")),1))]),i("li",null,[i("label",null,t(s.$t("service.lastPublish")),1),e.service.lastPublish!=null?(n(),o("p",Se,t(s.getDateOffsetText(e.service.lastPublish)),1)):(n(),o("p",Ve,"None"))])]),e.relationServices.length>0?(n(),o("div",ge,[i("h4",null,t(s.$t("service.relationList")),1),a(C,{services:e.relationServices},null,8,["services"])])):v("",!0)])])])):v("",!0)])),[[B,e.loading]])}const Ce=y(Y,[["render",be],["__scopeId","data-v-9027b968"]]);export{Ce as default};