@runeya/runeya
Version:
Monitor processes as a stack
2 lines (1 loc) • 2.5 kB
JavaScript
import{u as x}from"./router-CdfdQZKk.js";import{P as I}from"./Section-D0z9MjV4.js";import{_ as B}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{r as L,j as N,w as _,c as P,a as u,o as l,b as f,F as V,q as j,s as z,f as b,d as F,t as d,n as v,g as i,h as $,u as w}from"./index-CXxIspfv.js";const D=["onClick"],E={key:0},M={key:2},O={key:3,class:"badge warning"},W={__name:"Tabs",props:{tabs:{default:[]},height:{default:"calc(100vh - 220px)"},direction:{default:""},showLabels:{default:!0},contentCss:{default:()=>({})},invertColor:{default:!1}},setup(n,{expose:S}){const r=x(),o=n,a=L(),h=()=>{if(o.tabs){const t=localStorage.getItem("tab");a.value=o.tabs.find(s=>s.id===t)||o.tabs[0]}};N(()=>{var t;r.currentRoute.value.query.tab&&localStorage.setItem("tab",(t=r.currentRoute.value.query.tab)==null?void 0:t.toString()),h()}),_(()=>o.tabs,()=>{var t;!a.value&&((t=o.tabs)!=null&&t[0])&&h()}),_(()=>r.currentRoute.value,()=>{var s;const t=r.currentRoute.value.query.tab;t&&(a.value=(s=o.tabs)==null?void 0:s.find(c=>c.id===t))},{immediate:!0});const R=()=>{var s;const t=(s=a.value)!=null&&s.id?a.value.id:"";localStorage.setItem("tab",t),r.push({path:r.currentRoute.value.fullPath,query:Object.assign({},r.currentRoute.value.query||{},{tab:t})})},q=P(()=>o.tabs.filter(t=>!t.hidden));return S({currentTab:a}),(t,s)=>{var c,g,m,y;return l(),u("div",{class:v(["tabs",{[n.direction]:!0}]),style:w({height:n.height})},[f("div",{class:v(["buttons",{invert:n.invertColor}])},[(l(!0),u(V,null,j(q.value,e=>(l(),z(I,{key:e.label,appendTo:"parent",trigger:"mouseenter",placement:"right",fullWidth:!0},{trigger:b(()=>{var p,k,C,T;return[f("button",{onClick:A=>{a.value=e,R()},class:v({active:(e==null?void 0:e.id)===((p=a.value)==null?void 0:p.id)})},[e.label&&!e.icon?(l(),u("div",E,d(e.label),1)):i("",!0),e.icon?(l(),u("i",{key:1,class:v(e.icon),"aria-hidden":"true"},null,2)):i("",!0),n.showLabels?(l(),u("label",M,d(((C=(k=e==null?void 0:e.data)==null?void 0:k.value)==null?void 0:C.length)||((T=e==null?void 0:e.data)==null?void 0:T.length)||0),1)):i("",!0),e!=null&&e.warning?(l(),u("div",O,d(e.warning),1)):i("",!0)],10,D)]}),content:b(()=>[F(d(e.label),1)]),_:2},1024))),128))],2),f("div",{class:"content",style:w(n.contentCss)},[a.value?$(t.$slots,"default",{key:(c=a.value)==null?void 0:c.id,data:((m=(g=a.value)==null?void 0:g.data)==null?void 0:m.value)||((y=a.value)==null?void 0:y.data),tab:a.value},void 0,!0):i("",!0)],4)],6)}}},Q=B(W,[["__scopeId","data-v-90487616"]]);export{Q as T};