UNPKG

@runeya/runeya

Version:

Monitor processes as a stack

2 lines (1 loc) 4.67 kB
import{a as Q,u as W}from"./router-CdfdQZKk.js";import{_ as X}from"./Section-D0z9MjV4.js";import{S as Y}from"./Spinner-CkmZ5Bkp.js";import{s as Z}from"./index-B-UE6JmD.js";import{_ as $}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{l as _,a as i,o as n,e as ee,g as G,s as f,f as H,b as s,d as v,F as p,q as h,t as u,n as K,r as k,j as te,w as se}from"./index-CXxIspfv.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./Editor-B--wgkn6.js";import"./index-Bv49zKKl.js";import"./index-OI8gr_S5.js";const ne={components:{sectionCmp:X,Spinner:Y,Select:Z},props:{service:{default:null,required:!0,type:Q},isInMultiMode:{type:Boolean}},setup(l){const t=W(),d=k([]),e=k(),w=k(null),y=k(null),m=async()=>{l.service&&(d.value=await l.service.getNpmPaths(),e.value||(e.value=d.value[0]),w.value=await l.service.getPackageJSON(e.value),y.value=await l.service.outdatedNpm(e.value))};return te(m),se(()=>[l.service,e.value],m),{cwd:e,npmPaths:d,packageJson:w,outdated:y,async run(r){l.service&&(["install","build","rebuild"].includes(r)?await l.service.sendTerminalPrompt({command:{spawnCmd:`npm ${r}`,spawnOptions:{cwd:e.value}}}):await l.service.sendTerminalPrompt({command:{spawnCmd:`npm run ${r}`,spawnOptions:{cwd:e.value}}}),t.push({path:t.currentRoute.value.fullPath,query:{...t.currentRoute.value.query||{},tab:"Logs"}}))}}}},ae={key:0,class:"npm-root"},oe={class:"command-container"},ie={class:"button-container"},le={class:"command-container"},de={class:"button-container"},re=["title"],ue=["onClick"],ce={class:"dep-header"},ve={class:"dependecies"},me={key:1},fe={key:2},pe={key:1},ke={key:2};function we(l,t,d,e,w,y){var g;const m=_("Select"),r=_("section-cmp"),b=_("spinner");return n(),i(p,null,[ee(m,{modelValue:e.cwd,"onUpdate:modelValue":t[0]||(t[0]=o=>e.cwd=o),options:e.npmPaths,style:{marginBottom:"10px"}},null,8,["modelValue","options"]),(g=e.npmPaths)!=null&&g.length&&e.packageJson?(n(),i("div",ae,[(n(),f(r,{class:"scripts-container",key:d.service.label,header:"Scripts"},{default:H(()=>[s("div",oe,[s("div",ie,[s("button",{onClick:t[1]||(t[1]=o=>e.run("install"))},t[3]||(t[3]=[s("i",{class:"fas fa-play","aria-hidden":"true"},null,-1)])),t[4]||(t[4]=v(" install "))])]),s("div",le,[s("div",de,[s("button",{onClick:t[2]||(t[2]=o=>e.run("rebuild"))},t[5]||(t[5]=[s("i",{class:"fas fa-play","aria-hidden":"true"},null,-1)])),t[6]||(t[6]=v(" rebuild "))])]),(n(!0),i(p,null,h(e.packageJson.scripts,(o,c)=>(n(),i("div",{key:c,title:o},[s("div",null,[s("button",{onClick:a=>e.run(c)},t[7]||(t[7]=[s("i",{class:"fas fa-play","aria-hidden":"true"},null,-1)]),8,ue),v(" "+u(c),1)])],8,re))),128))]),_:1})),d.isInMultiMode?G("",!0):(n(),f(r,{class:"dependencies-container",key:d.service.label},{default:H(()=>[(n(!0),i(p,null,h(["dependencies","devDependencies"].filter(o=>e.packageJson[o]),o=>(n(),i("div",{class:"categ",key:o},[s("h2",ce,u(o.charAt(0).toUpperCase()+o.slice(1)),1),s("div",ve,[s("table",null,[t[12]||(t[12]=s("tr",null,[s("th",{scope:"name"},"name"),s("th",{class:"version",scope:"version"},"version"),s("th",{class:"version",scope:"wanted"},"wanted"),s("th",{class:"version",scope:"latest"},"latest")],-1)),(n(!0),i(p,null,h(e.packageJson[o],(c,a)=>{var C,S,N,P,V,x,B,J,M,q,z,I,O,R,T,D,F,L,U,j,A,E;return n(),i("tr",{key:a},[s("td",null,u(a),1),s("td",null,u(c),1),s("td",{class:K({success:e.outdated&&!((S=(C=e.outdated)==null?void 0:C[a])!=null&&S.wanted),error:((P=(N=e.outdated)==null?void 0:N[a])==null?void 0:P.wanted)&&((x=(V=e.outdated)==null?void 0:V[a])==null?void 0:x.current)!==((J=(B=e.outdated)==null?void 0:B[a])==null?void 0:J.wanted)})},[e.outdated?(M=e.outdated)!=null&&M[a]?(n(),i("div",fe,[t[9]||(t[9]=s("i",{class:"fas fa-times","aria-hidden":"true"},null,-1)),v(" "+u((z=(q=e.outdated)==null?void 0:q[a])==null?void 0:z.wanted),1)])):(n(),i("div",me,t[8]||(t[8]=[s("i",{class:"fas fa-check","aria-hidden":"true"},null,-1)]))):(n(),f(b,{key:0,size:20}))],2),s("td",{class:K({success:e.outdated&&!((O=(I=e.outdated)==null?void 0:I[a])!=null&&O.wanted),error:((T=(R=e.outdated)==null?void 0:R[a])==null?void 0:T.latest)&&((F=(D=e.outdated)==null?void 0:D[a])==null?void 0:F.current)!==((U=(L=e.outdated)==null?void 0:L[a])==null?void 0:U.latest)})},[e.outdated?(j=e.outdated)!=null&&j[a]?(n(),i("div",ke,[t[11]||(t[11]=s("i",{class:"fas fa-times","aria-hidden":"true"},null,-1)),v(" "+u((E=(A=e.outdated)==null?void 0:A[a])==null?void 0:E.latest),1)])):(n(),i("div",pe,t[10]||(t[10]=[s("i",{class:"fas fa-check","aria-hidden":"true"},null,-1)]))):(n(),f(b,{key:0,size:20}))],2)])}),128))])])]))),128))]),_:1}))])):G("",!0)],64)}const xe=$(ne,[["render",we],["__scopeId","data-v-e85015ff"]]);export{xe as default};