UNPKG

p3x-redis-ui-material

Version:

💿 P3X Redis UI triple frontend — Angular + React/MUI + Vue/Vuetify with 54 languages, 7 themes, Socket.IO, desktop notifications, and full feature parity

13 lines • 42.7 kB
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/jspdf.es.min-BAlLVgwF.js","assets/chunk-jRWAZmH_.js","assets/preload-helper-CuEPMksA.js","assets/typeof-DJVQKBQo.js","assets/jszip.min-CGzS1qk0.js"])))=>i.map(i=>d[i]); import{o as e}from"./chunk-jRWAZmH_.js";import{A as t,C as n,D as r,E as i,G as a,J as o,K as s,M as c,T as l,X as u,Yt as d,ht as f,it as p,k as m,t as ee,w as h,y as g,z as te}from"./i18n.store-B-qxQMr8.js";import{t as _,x as ne}from"./_plugin-vue_export-helper-Cw5qm5mn.js";import{c as v,m as y,t as b}from"./VList-mCTikV89.js";import{t as re}from"./preload-helper-CuEPMksA.js";import{t as ie}from"./redis-state.store-DsiC4fU6.js";import{t as ae}from"./common.store-BrR1MJ05.js";import{i as x,r as oe}from"./socket.service-DpzqLYDp.js";import{h as se,i as S}from"./index-Cn1nft6Q.js";import{t as C}from"./P3xrAccordion-CsX4VLoL.js";/* empty css */import{p as ce}from"./monitoring-data-fsquYrYR.js";var le={key:0,class:`p3xr-monitoring-loading`},ue={key:1},de={class:`p3xr-pair-row`},fe={class:`p3xr-pair-label`},pe={class:`p3xr-pair-value p3xr-mono`},me={class:`p3xr-pair-row`},he={class:`p3xr-pair-label`},ge={class:`p3xr-pair-value p3xr-mono`},_e={class:`p3xr-pair-row`},ve={class:`p3xr-pair-label`},ye={class:`p3xr-pair-value p3xr-mono`},be={class:`p3xr-pair-row`},xe={class:`p3xr-pair-label`},Se={class:`p3xr-pair-value p3xr-mono`},Ce={class:`p3xr-pair-row`},we={class:`p3xr-pair-label`},Te={class:`p3xr-pair-value p3xr-mono`},Ee={class:`p3xr-pair-row`},De={class:`p3xr-pair-label`},Oe={class:`p3xr-pair-value p3xr-mono`},ke={class:`p3xr-pair-row`},Ae={class:`p3xr-pair-label`},je={class:`p3xr-pair-value p3xr-mono`},Me={class:`p3xr-pair-row`},Ne={class:`p3xr-pair-label`},Pe={class:`p3xr-pair-value p3xr-mono`},Fe={class:`p3xr-pair-row`},Ie={class:`p3xr-pair-label`},Le={class:`p3xr-pair-value p3xr-mono`},Re={class:`p3xr-pair-row`},ze={class:`p3xr-pair-label`},Be={class:`p3xr-pair-value p3xr-mono`},Ve={class:`p3xr-pair-row`},He={class:`p3xr-pair-label`},Ue={class:`p3xr-pair-value p3xr-mono`},We={class:`p3xr-pair-row`},Ge={class:`p3xr-pair-label`},Ke={class:`p3xr-pair-value p3xr-mono`},qe={class:`p3xr-pair-row`},Je={class:`p3xr-pair-label`},Ye={class:`p3xr-pair-value p3xr-mono`},Xe={class:`p3xr-pair-row`},Ze={class:`p3xr-pair-label`},Qe={class:`p3xr-pair-value p3xr-mono`},$e={class:`p3xr-pair-row`},et={class:`p3xr-pair-label`},tt={class:`p3xr-pair-value p3xr-mono`},nt={class:`p3xr-pair-row`},rt={class:`p3xr-pair-label`},it={class:`p3xr-pair-value p3xr-mono`},at={class:`p3xr-pair-row`},ot={class:`p3xr-pair-label`},st={class:`p3xr-pair-value p3xr-mono`},ct={class:`p3xr-pair-row`},lt={class:`p3xr-pair-label`},ut={class:`p3xr-pair-value p3xr-mono`},dt={class:`p3xr-pair-row`},ft={class:`p3xr-pair-label`},pt={class:`p3xr-pair-value p3xr-mono`},mt={class:`p3xr-pair-row`},ht={class:`p3xr-pair-label`},gt={class:`p3xr-pair-value p3xr-mono`},_t={class:`p3xr-pair-row`},vt={class:`p3xr-pair-label`},yt={class:`p3xr-pair-value p3xr-mono`},bt={class:`p3xr-pair-row`},xt={class:`p3xr-pair-label`},St={class:`p3xr-pair-value p3xr-mono`},Ct={class:`p3xr-pair-row`},wt={class:`p3xr-pair-label`},Tt={class:`p3xr-pair-value p3xr-mono`},Et={class:`p3xr-pair-row`},Dt={class:`p3xr-pair-label`},Ot={class:`p3xr-pair-value p3xr-mono`},kt={class:`p3xr-pair-row`},At={class:`p3xr-pair-label`},jt={class:`p3xr-pair-value p3xr-mono`},Mt={class:`p3xr-pair-row`},Nt={class:`p3xr-pair-label`},Pt={class:`p3xr-pair-value p3xr-mono`},Ft={class:`p3xr-pair-row`},It={class:`p3xr-pair-label`},Lt={class:`p3xr-pair-value p3xr-mono`},Rt={class:`p3xr-pair-row`},zt={class:`p3xr-pair-label`},Bt={class:`p3xr-pair-value p3xr-mono`},Vt={class:`p3xr-pair-row`},Ht={class:`p3xr-pair-label`},Ut={class:`p3xr-pair-value p3xr-mono`},Wt={class:`p3xr-pair-row`},Gt={class:`p3xr-pair-label`},Kt={class:`p3xr-pair-value p3xr-mono`},qt={key:0,style:{padding:`16px`,opacity:`0.5`}},Jt={class:`p3xr-pair-row`},Yt={class:`p3xr-pair-label`},Xt={class:`p3xr-pair-value p3xr-mono`},Zt={key:0,style:{padding:`12px 16px`,opacity:`0.6`}},Qt={class:`p3xr-slowlog-row`},$t={class:`p3xr-kbd p3xr-kbd-small`},en={class:`p3xr-slowlog-cmd`},tn={key:0,style:{padding:`16px`,opacity:`0.5`}},nn={key:1,style:{padding:`16px`,opacity:`0.5`}},rn={class:`p3xr-client-row`},an={class:`p3xr-mono p3xr-client-addr`},on={key:0,class:`p3xr-client-name`},sn={class:`p3xr-client-info`},cn={key:0,style:{padding:`16px`,opacity:`0.5`}},ln={key:1,style:{padding:`16px`,opacity:`0.5`}},un={class:`p3xr-pair-row`},dn={class:`p3xr-pair-label`},fn={style:{opacity:`0.4`,"margin-right":`8px`}},pn={class:`p3xr-mono`,style:{"font-size":`13px`}},mn={class:`p3xr-pair-value p3xr-mono`},hn={style:{padding:`8px 16px`,display:`flex`,gap:`8px`,"align-items":`center`}},gn={key:0,style:{padding:`16px`,opacity:`0.5`}},_n={class:`p3xr-pair-row`},vn={class:`p3xr-pair-label`},yn={style:{opacity:`0.4`,"margin-right":`8px`}},bn={class:`p3xr-mono`},xn={class:`p3xr-pair-value p3xr-mono`},Sn={key:0,style:{padding:`12px 16px`,opacity:`0.6`}},Cn={class:`p3xr-pair-row`},wn={class:`p3xr-pair-label`},Tn={style:{"font-weight":`500`}},En={style:{opacity:`0.5`,"margin-left":`8px`,"font-size":`12px`}},Dn={class:`p3xr-pair-value p3xr-mono`},On={key:0,style:{opacity:`0.5`,"margin-left":`8px`}},kn={style:{padding:`8px 16px`,opacity:`0.6`,"font-size":`12px`}},An=120,w=_(c({__name:`PulsePage`,setup(c){let _=ee(),w=ie(),T=ae(),jn=ce(),E=n(()=>_.strings),D=f(null),O=f([]),Mn=f(!1),k=f([]),A=f([]),Nn=f(!1),j=f(localStorage.getItem(`p3xr-monitor-auto-clients`)===`true`),M=f(localStorage.getItem(`p3xr-monitor-auto-topkeys`)===`true`),Pn=f(!1),Fn=f(!1),N=f([]),P=f(`KEY-COUNT`),In=f(!1),F=f(!1),I=f(null),L=f(localStorage.getItem(`p3xr-monitor-auto-shards`)===`true`),R=null,Ln=f(),Rn=f(),zn=f(),Bn=f(),Vn,z,B,V,H,U,W=!1,G=null,Hn=null,Un=[],Wn=new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1}),Gn=e=>Wn.format(new Date(e)),K=n(()=>w.connection?.name),Kn=n(()=>{if(!D.value)return`-`;let e=D.value.server.uptime,t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60);return t>0?`${t}d ${n}h ${r}m`:n>0?`${n}h ${r}m`:`${r}m`});function q(e){return e<1024?e+` B`:e<1024*1024?(e/1024).toFixed(1)+` KB`:(e/(1024*1024)).toFixed(1)+` MB`}function J(e,t){let n=new Blob([e],{type:`text/plain`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=t,i.click(),URL.revokeObjectURL(r)}let Y=n(()=>{let e=w.info;if(!e)return null;let t=e.server||{},n=e.cpu||{};return{os:t.os||``,port:t.tcp_port||``,pid:t.process_id||``,configFile:t.config_file||``,cpuSys:n.used_cpu_sys,cpuUser:n.used_cpu_user}}),X=n(()=>{let e=w.info;if(!e?.persistence)return null;let t=e.persistence,n=parseInt(t.rdb_last_save_time,10);return{rdbLastSave:n?new Date(n*1e3).toLocaleString():`N/A`,rdbStatus:t.rdb_last_bgsave_status,rdbChanges:t.rdb_changes_since_last_save??`N/A`,aofEnabled:t.aof_enabled===`1`?`Yes`:`No`,aofSize:t.aof_enabled===`1`?q(parseInt(t.aof_current_size,10)||0):``}}),Z=n(()=>{let e=w.info;if(!e?.replication)return null;let t=e.replication,n={role:t.role};return t.role===`master`?n.replicas=t.connected_slaves??`0`:t.role===`slave`&&(n.masterHost=t.master_host,n.masterPort=t.master_port,n.linkStatus=t.master_link_status),n}),qn=n(()=>{let e=w.info;return e?.keyspace?Object.keys(e.keyspace).filter(e=>e.startsWith(`db`)).sort((e,t)=>parseInt(e.slice(2),10)-parseInt(t.slice(2),10)).map(t=>{let n=e.keyspace[t];return{db:t,keys:typeof n==`object`?n.keys:`0`,expires:typeof n==`object`?n.expires:`0`}}):[]}),Q=n(()=>(w.modules||[]).map(e=>({name:e.name,ver:String(e.ver??e.version??``)})));async function Jn(){try{let e=(await x({action:`monitor/info`,payload:{}})).data;D.value=e,F.value=w.connection?.cluster===!0,O.value.push(e),O.value.length>An&&O.value.shift(),W?Sr():z&&O.value.length>=2&&br()}catch{}}async function Yn(){try{k.value=(await x({action:`client/list`,payload:{}})).data,Pn.value=!0}catch{Pn.value=!0}}async function Xn(){try{A.value=(await x({action:`memory/top-keys`,payload:{topN:20}})).data,Fn.value=!0}catch{Fn.value=!0}}async function Zn(){try{N.value=(await x({action:`cluster/slot-stats`,payload:{metric:P.value,limit:20}})).slots||[],In.value=!0}catch{In.value=!0,N.value=[]}}async function Qn(e,t){t.stopPropagation();try{await T.confirm({message:E.value?.page?.monitor?.confirmKillClient}),await x({action:`client/kill`,payload:{id:e}}),T.toast(E.value?.page?.monitor?.clientKilled),await Yn()}catch(e){e!==void 0&&T.generalHandleError(e)}}function $n(){Mn.value=!Mn.value}function er(){j.value=!j.value;try{localStorage.setItem(`p3xr-monitor-auto-clients`,String(j.value))}catch{}}function tr(){M.value=!M.value;try{localStorage.setItem(`p3xr-monitor-auto-topkeys`,String(M.value))}catch{}}function nr(){if(!D.value)return;let e=D.value,t=E.value?.page?.monitor||{};J([`${t.memory}: ${e.memory.usedHuman}`,`${t.rss}: ${e.memory.rssHuman}`,`${t.peak}: ${e.memory.peakHuman}`,`${t.fragmentation}: ${e.memory.fragRatio}x`,`${t.opsPerSec}: ${e.stats.opsPerSec}`,`${t.totalCommands}: ${e.stats.totalCommands}`,`${t.clients}: ${e.clients.connected}`,`${t.blocked}: ${e.clients.blocked}`,`${t.hitsMisses}: ${e.stats.hitRate}%`,`${t.hitsAndMisses}: ${e.stats.hits} / ${e.stats.misses}`,`${t.networkIo}: ${e.stats.inputKbps.toFixed(1)} / ${e.stats.outputKbps.toFixed(1)} KB/s`,`${t.expired}: ${e.stats.expiredKeys}`,`${t.evicted}: ${e.stats.evictedKeys}`].join(` `),`${K.value}-overview.txt`)}function rr(){let e=Y.value;if(!e)return;let t=E.value?.page?.monitor||{};J([`${t.os}: ${e.os}`,`${t.port}: ${e.port}`,`${t.pid}: ${e.pid}`,`${t.configFile}: ${e.configFile}`,`${t.cpuSys} CPU: ${e.cpuSys}`,`${t.cpuUser} CPU: ${e.cpuUser}`].join(` `),`${K.value}-server-info.txt`)}function ir(){let e=X.value;if(!e)return;let t=E.value?.page?.monitor||{},n=[`${t.rdbLastSave}: ${e.rdbLastSave}`,`${t.rdbStatus}: ${e.rdbStatus}`,`${t.rdbChanges}: ${e.rdbChanges}`,`${t.aofEnabled}: ${e.aofEnabled}`];e.aofSize&&n.push(`${t.aofSize}: ${e.aofSize}`),J(n.join(` `),`${K.value}-persistence.txt`)}function ar(){let e=Z.value;if(!e)return;let t=E.value?.page?.monitor||{},n=[`${t.role}: ${e.role}`];e.replicas!==void 0&&n.push(`${t.replicas}: ${e.replicas}`),e.masterHost&&n.push(`${t.masterHost}: ${e.masterHost}:${e.masterPort}`),e.linkStatus&&n.push(`${t.linkStatus}: ${e.linkStatus}`),J(n.join(` `),`${K.value}-replication.txt`)}function or(){let e=qn.value;if(e.length===0)return;let t=E.value?.page?.monitor||{};J(e.map(e=>`${e.db}: ${t.keys}: ${e.keys}, ${t.expires}: ${e.expires}`).join(` `),`${K.value}-keyspace.txt`)}function sr(){let e=Q.value,t=E.value?.page?.monitor||{};if(e.length===0){J(t.noModules,`${K.value}-modules.txt`);return}J(e.map(e=>`${e.name} v${e.ver}`).join(` `),`${K.value}-modules.txt`)}function cr(e,t){let n=e?.querySelector(`canvas`);if(!n)return;let r=document.createElement(`canvas`);r.width=n.width,r.height=n.height;let i=r.getContext(`2d`),a=document.body.classList.contains(`p3xr-theme-dark`);i.fillStyle=getComputedStyle(document.body).getPropertyValue(`--p3xr-body-bg`).trim()||(a?`#1e1e1e`:`#ffffff`),i.fillRect(0,0,r.width,r.height),i.drawImage(n,0,0);let o=r.toDataURL(`image/png`),s=document.createElement(`a`);s.href=o,s.download=`${K.value}-${t}.png`,s.click()}async function lr(){try{let e=E.value?.page?.monitor||{};await T.confirm({message:e.confirmSlowLogReset}),await x({action:`monitor/slowlog-reset`}),T.toast(e.slowLogResetDone)}catch{}}function ur(){D.value&&J(D.value.slowlog.map(e=>`${e.duration}\u00B5s ${e.command}`).join(` `),`${K.value}-slowlog.txt`)}function dr(){J(k.value.map(e=>`${e.addr} ${e.name||``} db${e.db} ${e.cmd} idle:${e.idle}s`).join(` `),`${K.value}-clients.txt`)}async function fr(){try{I.value=(await x({action:`cluster/shards`})).data.shards}catch(e){T.generalHandleError(e)}}function pr(){L.value=!L.value,localStorage.setItem(`p3xr-monitor-auto-shards`,String(L.value)),L.value?(fr(),R=setInterval(()=>fr(),2e3)):(clearInterval(R),R=null)}function mr(e){return e.slotRanges.reduce((e,[t,n])=>e+(n-t+1),0)}function hr(){I.value&&J(I.value.map(e=>{let t=e.slotRanges.map(([e,t])=>`${e}-${t}`).join(`, `),n=mr(e),r=e.replicas.map(e=>`${e.host}:${e.port}`).join(`, `);return`${e.master.host}:${e.master.port} | ${t} | ${n} slots | replicas: ${r}`}).join(` `),`${K.value}-cluster-slots.txt`)}function gr(){J(A.value.map((e,t)=>`#${t+1} ${e.key} ${q(e.bytes)}`).join(` `),`${K.value}-topkeys.txt`)}function _r(){let e=document.body.classList.contains(`p3xr-theme-dark`),t=getComputedStyle(document.body),n=t.getPropertyValue(`--p3xr-btn-primary-bg`).trim(),r=t.getPropertyValue(`--p3xr-btn-accent-bg`).trim(),i=t.getPropertyValue(`--p3xr-btn-warn-bg`).trim();return{primary:n||(e?`#90caf9`:`#1976d2`),accent:r||(e?`#ce93d8`:`#9c27b0`),warn:i||(e?`#ef9a9a`:`#f44336`),text:e?`rgba(255,255,255,0.87)`:`rgba(0,0,0,0.87)`,grid:e?`rgba(255,255,255,0.08)`:`rgba(0,0,0,0.08)`}}function vr(){return{timestamps:O.value.map(e=>e.timestamp/1e3),memUsed:O.value.map(e=>e.memory.used/(1024*1024)),memRss:O.value.map(e=>e.memory.rss/(1024*1024)),ops:O.value.map(e=>e.stats.opsPerSec),connected:O.value.map(e=>e.clients.connected),blocked:O.value.map(e=>e.clients.blocked),netIn:O.value.map(e=>e.stats.inputKbps),netOut:O.value.map(e=>e.stats.outputKbps)}}function $(e){return e?.offsetWidth||500}function yr(e,t){let n=_r();return{width:e,height:180,cursor:{show:!0,drag:{x:!1,y:!1}},legend:{show:!0,live:!1},scales:{x:{time:!0}},axes:[{stroke:n.text,grid:{stroke:n.grid,width:1},ticks:{stroke:n.grid},font:`11px Roboto`,values:(e,t)=>t.map(e=>Gn(e*1e3))},{stroke:n.text,grid:{stroke:n.grid,width:1},ticks:{stroke:n.grid},font:`11px Roboto Mono`,size:55}],series:[{label:E.value?.label?.time,value:(e,t)=>t?Gn(t*1e3):``},...t]}}function br(){if(!z||W)return;let e=_r(),t=vr(),n=Ln.value,r=Rn.value,i=zn.value,a=Bn.value;if(!n||!r||!i||!a)return;let o=E.value?.page?.monitor||{};B=new z(yr($(n),[{label:o.memory,stroke:e.primary,width:2,fill:e.primary+`15`},{label:`RSS`,stroke:e.accent,width:2}]),[t.timestamps,t.memUsed,t.memRss],n),V=new z(yr($(r),[{label:o.opsPerSec,stroke:e.primary,width:2,fill:e.primary+`20`}]),[t.timestamps,t.ops],r),H=new z(yr($(i),[{label:o.clients,stroke:e.primary,width:2},{label:o.blocked,stroke:e.warn,width:2}]),[t.timestamps,t.connected,t.blocked],i),U=new z(yr($(a),[{label:`↓ In`,stroke:e.primary,width:2,fill:e.primary+`15`},{label:`↑ Out`,stroke:e.accent,width:2}]),[t.timestamps,t.netIn,t.netOut],a),W=!0;let s;G=new ResizeObserver(()=>{clearTimeout(s),s=setTimeout(()=>{let e=$(n),t=$(r),o=$(i),s=$(a);e>0&&B?.setSize({width:e,height:180}),t>0&&V?.setSize({width:t,height:180}),o>0&&H?.setSize({width:o,height:180}),s>0&&U?.setSize({width:s,height:180})},50)}),G.observe(n),G.observe(r),G.observe(i),G.observe(a)}function xr(){B?.destroy(),V?.destroy(),H?.destroy(),U?.destroy(),W=!1,O.value.length>=2&&br()}function Sr(){if(!W)return;let e=vr();B?.setData([e.timestamps,e.memUsed,e.memRss]),V?.setData([e.timestamps,e.ops]),H?.setData([e.timestamps,e.connected,e.blocked]),U?.setData([e.timestamps,e.netIn,e.netOut])}async function Cr(){z=(await re(()=>import(`./uPlot.esm-3Z6wRqDd.js`),[])).default,O.value.length>=2&&br()}function wr(e,t,n){let r=document.createElement(`canvas`);r.width=900*2,r.height=260*2;let i=r.getContext(`2d`);i.scale(2,2);let a=document.body.classList.contains(`p3xr-theme-dark`);i.fillStyle=getComputedStyle(document.body).getPropertyValue(`--p3xr-body-bg`).trim()||(a?`#1e1e1e`:`#ffffff`),i.fillRect(0,0,900,260);let o=e.length;if(o<2)return r;let s=1/0,c=-1/0;for(let e of t)for(let t of e.values)t<s&&(s=t),t>c&&(c=t);s===c&&(--s,c+=1);let l=c-s,u=e[0],d=e[o-1]-u||1,f=e=>60+(e-u)/d*824,p=e=>200-(e-s)/l*168;i.strokeStyle=n.grid,i.lineWidth=1;for(let e=0;e<=5;e++){let t=32+168/5*e;i.beginPath(),i.moveTo(60,t),i.lineTo(884,t),i.stroke();let r=c-l/5*e;i.fillStyle=n.text,i.font=`10px Roboto Mono, monospace`,i.textAlign=`right`,i.textBaseline=`middle`,i.fillText(r>=1e3?(r/1e3).toFixed(1)+`k`:r.toFixed(1),54,t)}let m=Math.min(6,o);i.font=`10px Roboto, sans-serif`,i.textAlign=`center`,i.textBaseline=`top`,i.fillStyle=n.text;for(let t=0;t<m;t++){let n=e[Math.round(t/(m-1)*(o-1))],r=new Date(n*1e3);i.fillText(`${String(r.getHours()).padStart(2,`0`)}:${String(r.getMinutes()).padStart(2,`0`)}:${String(r.getSeconds()).padStart(2,`0`)}`,f(n),206)}for(let n of t){i.strokeStyle=n.color,i.lineWidth=2,i.lineJoin=`round`,i.beginPath();for(let t=0;t<o;t++){let r=f(e[t]),a=p(n.values[t]);t===0?i.moveTo(r,a):i.lineTo(r,a)}if(i.stroke(),n.fill){i.fillStyle=n.color+`20`,i.beginPath(),i.moveTo(f(e[0]),p(n.values[0]));for(let t=1;t<o;t++)i.lineTo(f(e[t]),p(n.values[t]));i.lineTo(f(e[o-1]),200),i.lineTo(f(e[0]),200),i.closePath(),i.fill()}}let ee=60;i.font=`11px Roboto, sans-serif`,i.textAlign=`left`,i.textBaseline=`middle`;for(let e of t)i.fillStyle=e.color,i.fillRect(ee,240,12,8),i.fillStyle=n.text,i.fillText(e.label,ee+16,244),ee+=i.measureText(e.label).width+32;return r}function Tr(e){if(e.length===0)return null;let t=_r(),n=t.text.includes(`255`),r=[t.primary,t.accent,t.warn,n?`#ffb74d`:`#ff9800`,n?`#81c784`:`#4caf50`,n?`#4dd0e1`:`#00bcd4`,n?`#a1887f`:`#795548`,n?`#90a4ae`:`#607d8b`],i=8+e.length*28+8,a=document.createElement(`canvas`);a.width=800*2,a.height=i*2;let o=a.getContext(`2d`);o.scale(2,2);let s=document.body.classList.contains(`p3xr-theme-dark`);o.fillStyle=getComputedStyle(document.body).getPropertyValue(`--p3xr-body-bg`).trim()||(s?`#1e1e1e`:`#ffffff`),o.fillRect(0,0,800,i);let c=Math.max(...e.map(e=>e.value),1);return e.forEach((e,n)=>{let i=8+n*28;o.fillStyle=t.text,o.font=`12px Roboto, sans-serif`,o.textAlign=`right`,o.textBaseline=`middle`,o.fillText(e.label.length>15?e.label.substring(0,14)+`…`:e.label,120,i+24/2),o.fillStyle=t.grid,o.fillRect(128,i,584,24),o.fillStyle=r[n%r.length],o.fillRect(128,i,e.value/c*584,24),o.fillStyle=t.text,o.font=`11px Roboto Mono, monospace`,o.textAlign=`left`,o.fillText(q(e.value),720,i+24/2)}),a}function Er(){let e=_r(),t=E.value?.page?.monitor||{},n;if(O.value.length>=2)n=vr();else if(D.value){let e=D.value,t=Date.now()/1e3;n={timestamps:[t-1,t],memUsed:[e.memory.used/(1024*1024),e.memory.used/(1024*1024)],memRss:[e.memory.rss/(1024*1024),e.memory.rss/(1024*1024)],ops:[e.stats.opsPerSec,e.stats.opsPerSec],connected:[e.clients.connected,e.clients.connected],blocked:[e.clients.blocked,e.clients.blocked],netIn:[e.stats.inputKbps,e.stats.inputKbps],netOut:[e.stats.outputKbps,e.stats.outputKbps]}}else return[];return[{label:t.memory+` (MB)`,series:[{label:t.memory,color:e.primary,values:n.memUsed,fill:!0},{label:`RSS`,color:e.accent,values:n.memRss}]},{label:t.opsPerSec,series:[{label:t.opsPerSec,color:e.primary,values:n.ops,fill:!0}]},{label:t.clients,series:[{label:t.clients,color:e.primary,values:n.connected},{label:t.blocked,color:e.warn,values:n.blocked}]},{label:t.networkIo+` (KB/s)`,series:[{label:`↓ In`,color:e.primary,values:n.netIn,fill:!0},{label:`↑ Out`,color:e.accent,values:n.netOut}]}].map(t=>({label:t.label,canvas:wr(n.timestamps,t.series,e)}))}async function Dr(e){let t=Math.max(2400,...e.map(e=>e.canvas.width)),n=32;for(let r of e)n+=60+r.canvas.height*(t/r.canvas.width)+40;n+=32;let r=document.createElement(`canvas`);r.width=t,r.height=n;let i=r.getContext(`2d`),a=document.body.classList.contains(`p3xr-theme-dark`),o=getComputedStyle(document.body).getPropertyValue(`--p3xr-body-bg`).trim()||(a?`#1e1e1e`:`#ffffff`),s=_r();i.fillStyle=o,i.fillRect(0,0,t,n);let c=32;for(let n of e){i.fillStyle=s.text,i.font=`bold 28px Roboto, sans-serif`,i.textAlign=`left`,i.textBaseline=`top`,i.fillText(n.label,32,c),c+=60;let e=t-64,r=n.canvas.height*(e/n.canvas.width);i.drawImage(n.canvas,32,c,e,r),c+=r+40}return new Promise(e=>r.toBlob(t=>e(t),`image/png`))}async function Or(e,t,n=[]){let{jsPDF:r}=await re(async()=>{let{jsPDF:e}=await import(`./jspdf.es.min-BAlLVgwF.js`);return{jsPDF:e}},__vite__mapDeps([0,1,2,3])),i=document.body.classList.contains(`p3xr-theme-dark`),a=getComputedStyle(document.body).getPropertyValue(`--p3xr-body-bg`).trim()||(i?`#1e1e1e`:`#ffffff`),o=i?`#e0e0e0`:`#212121`,s=i?`#90caf9`:`#1565c0`,c=new r({orientation:`portrait`,unit:`mm`,format:`a4`}),l=c.internal.pageSize.getWidth(),u=c.internal.pageSize.getHeight(),d=l-24,f=12,p=()=>{c.setFillColor(a),c.rect(0,0,l,u,`F`)};p();let m=e=>{f+e>u-12&&(c.addPage(),p(),f=12)};for(let t of e)if(!t.startsWith(`====`)){if([`PULSE`,`PROFILER`,`PUBSUB`,`ANALYSIS`].includes(t.trim())){m(14),f+=4,c.setFontSize(14),c.setTextColor(s),c.text(t.trim(),12,f),f+=8;continue}if(t.startsWith(`---`)&&t.endsWith(`---`)){m(8);let e=t.replace(/^-+\s*/,``).replace(/\s*-+$/,``);f+=2,c.setFontSize(10),c.setTextColor(s),c.text(e,12,f),f+=5;continue}if(t===``){f+=2;continue}m(4),c.setTextColor(o),c.setFontSize(8);for(let e of c.splitTextToSize(t,d))m(4),c.text(e,12,f),f+=3.5}for(let e of t){c.addPage(),p(),f=12,c.setFontSize(12),c.setTextColor(s),c.text(e.label,12,f),f+=8;let t=e.canvas.toDataURL(`image/png`),n=e.canvas.height/e.canvas.width,r=Math.min(d*n,u-f-12);c.addImage(t,`PNG`,12,f,r/n>d?d:r/n,r),f+=r}n.length>0&&t.length>0&&(c.addPage(),p(),f=12);for(let e of n)if(!e.startsWith(`====`)){if([`PROFILER`,`PUBSUB`].includes(e.trim())){m(14),f+=4,c.setFontSize(14),c.setTextColor(s),c.text(e.trim(),12,f),f+=8;continue}if(e===``){f+=2;continue}m(4),c.setTextColor(o),c.setFontSize(8);for(let t of c.splitTextToSize(e,d))m(4),c.text(t,12,f),f+=3.5}return c.output(`blob`)}async function kr(){if(D.value)try{let t=(await re(async()=>{let{default:t}=await import(`./jszip.min-CGzS1qk0.js`).then(t=>e(t.default));return{default:t}},__vite__mapDeps([4,1]))).default,n=new t,r=D.value,i=[],a=E.value?.page?.monitor||{},o=E.value?.page?.analysis||{};i.push(`============================`,` PULSE`,`============================`,``,`--- ${a.title} ---`,`Redis ${r.server.version} \u00B7 ${r.server.mode} \u00B7 Uptime: ${Kn.value}`,`${a.memory}: ${r.memory.usedHuman}`,`${a.rss}: ${r.memory.rssHuman}`,`${a.peak}: ${r.memory.peakHuman}`,`${a.fragmentation}: ${r.memory.fragRatio}x`,`${a.opsPerSec}: ${r.stats.opsPerSec}`,`${a.totalCommands}: ${r.stats.totalCommands}`,`${a.clients}: ${r.clients.connected}`,`${a.blocked}: ${r.clients.blocked}`,`${a.hitsMisses}: ${r.stats.hitRate}%`,`${a.hitsAndMisses}: ${r.stats.hits} / ${r.stats.misses}`,`${a.networkIo}: ${r.stats.inputKbps.toFixed(1)} / ${r.stats.outputKbps.toFixed(1)} KB/s`,`${a.expired}: ${r.stats.expiredKeys}`,`${a.evicted}: ${r.stats.evictedKeys}`);let s=Y.value;s&&(i.push(``,`--- ${a.serverInfo} ---`),i.push(`${a.os}: ${s.os}`,`${a.port}: ${s.port}`,`${a.pid}: ${s.pid}`),s.configFile&&i.push(`${a.configFile}: ${s.configFile}`),i.push(`${a.cpuSys} CPU: ${s.cpuSys}`,`${a.cpuUser} CPU: ${s.cpuUser}`));let c=X.value;c&&(i.push(``,`--- ${a.persistence} ---`),i.push(`${a.rdbLastSave}: ${c.rdbLastSave}`,`${a.rdbStatus}: ${c.rdbStatus}`),i.push(`${a.rdbChanges}: ${c.rdbChanges}`,`${a.aofEnabled}: ${c.aofEnabled}`),c.aofSize&&i.push(`${a.aofSize}: ${c.aofSize}`));let l=Z.value;l&&(i.push(``,`--- ${a.replication} ---`),i.push(`${a.role}: ${l.role}`),l.replicas!==void 0&&i.push(`${a.replicas}: ${l.replicas}`),l.masterHost&&i.push(`${a.masterHost}: ${l.masterHost}:${l.masterPort}`),l.linkStatus&&i.push(`${a.linkStatus}: ${l.linkStatus}`));let u=qn.value;u.length>0&&(i.push(``,`--- ${a.keyspace} ---`),i.push(...u.map(e=>`${e.db}: ${a.keys}: ${e.keys}, ${a.expires}: ${e.expires}`)));let d=Q.value;d.length>0?(i.push(``,`--- ${a.modules} ---`),i.push(...d.map(e=>`${e.name} v${e.ver}`))):i.push(``,`--- ${a.modules} ---`,a.noModules),r.slowlog.length>0&&(i.push(``,`--- ${a.slowLog} ---`),i.push(...r.slowlog.map(e=>`${e.duration}\u00B5s ${e.command}`))),k.value.length>0&&(i.push(``,`--- ${a.clientList} ---`),i.push(...k.value.map(e=>`${e.addr} ${e.name||``} db${e.db} ${e.cmd} idle:${e.idle}s`))),A.value.length>0&&(i.push(``,`--- ${a.topKeys} ---`),i.push(...A.value.map((e,t)=>`#${t+1} ${e.key} ${q(e.bytes)}`)));let f=[];try{let e=(await x({action:`memory/analysis`,payload:{topN:20,maxScanKeys:5e3}})).data;if(e){let t=e.memoryInfo,n=e.expirationOverview,r=Object.keys(e.typeDistribution||{}).map(t=>({type:t,count:e.typeDistribution[t],bytes:e.typeMemory?.[t]||0})).sort((e,t)=>t.bytes-e.bytes);i.push(``,``,`============================`,` ANALYSIS`,`============================`),i.push(``,`--- ${o.keysScanned} ---`,`${o.keysScanned}: ${e.totalScanned} / ${e.dbSize}`),i.push(``,`--- ${o.memoryBreakdown} ---`),i.push(`${o.totalMemory}: ${t.usedHuman}`,`${o.rssMemory}: ${t.rssHuman}`,`${o.peakMemory}: ${t.peakHuman}`),i.push(`${o.overheadMemory}: ${q(t.overhead)}`,`${o.datasetMemory}: ${q(t.dataset)}`),i.push(`${o.luaMemory}: ${q(t.lua)}`,`${o.fragmentation}: ${t.fragRatio}x`,`${o.allocator}: ${t.allocator}`),i.push(``,`--- ${o.typeDistribution} ---`),i.push(...r.map(e=>`${e.type}: ${e.count} ${o.keyCount}, ${q(e.bytes)}`)),e.prefixMemory?.length>0&&(i.push(``,`--- ${o.prefixMemory} ---`),i.push(...e.prefixMemory.map((e,t)=>`#${t+1} ${e.prefix} \u2014 ${e.keyCount} ${o.keyCount}, ${q(e.totalBytes)}`))),i.push(``,`--- ${o.expirationOverview} ---`),i.push(`${o.withTTL}: ${n.withTTL}`,`${o.persistent}: ${n.persistent}`,`${o.avgTTL}: ${n.avgTTL}s`),f=[{name:o.typeDistribution,items:r.map(e=>({label:e.type,value:e.bytes}))},{name:o.prefixMemory,items:(e.prefixMemory||[]).slice(0,20).map(e=>({label:e.prefix,value:e.totalBytes}))}]}}catch{}let p=e=>e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,``),m=[];jn.profilerEntries.length>0&&(m.push(``,``,`============================`,` PROFILER`,`============================`,``),m.push(...jn.profilerEntries.map(e=>p(`${e.fullTimestamp} [${e.database} ${e.source}] ${e.command}`)))),jn.pubsubEntries.length>0&&(m.push(``,``,`============================`,` PUBSUB`,`============================`,``),m.push(...jn.pubsubEntries.map(e=>p(`${e.fullTimestamp} ${e.channel} ${e.message}`))));let ee=[...i,...m].join(` `),h=new TextEncoder().encode(ee),g=new Uint8Array([239,187,191]),te=new Uint8Array(g.length+h.length);te.set(g),te.set(h,g.length),n.file(`monitoring.txt`,te);let _=[];_.push(...Er());for(let e of f){if(e.items.length===0)continue;let t=Tr(e.items);t&&_.push({label:e.name,canvas:t})}if(_.length>0){let e=await Dr(_);e&&n.file(`charts.png`,e)}try{let e=await Or(i,_,m);e&&n.file(`monitoring.pdf`,e)}catch{}let ne=await n.generateAsync({type:`blob`}),v=URL.createObjectURL(ne),y=document.createElement(`a`);y.href=v,y.download=`${K.value}-monitoring.zip`,y.click(),URL.revokeObjectURL(v)}catch(e){T.generalHandleError(e)}}return a(()=>{Nn.value=w.connection?.readonly===!0,F.value=w.connection?.cluster===!0,Jn(),Yn(),Xn(),Un.push(oe(`connections`,()=>{Nn.value=w.connection?.readonly===!0,F.value=w.connection?.cluster===!0,O.value=[],W=!1,B?.destroy(),V?.destroy(),H?.destroy(),U?.destroy(),Jn(),Yn(),Xn()})),Vn=setInterval(()=>{Mn.value||(Jn(),j.value&&Yn(),M.value&&Xn())},2e3),Hn=new MutationObserver(()=>{W&&setTimeout(()=>xr(),100)}),Hn.observe(document.body,{attributes:!0,attributeFilter:[`class`]});let e=_.currentLang,t=setInterval(()=>{_.currentLang!==e&&(e=_.currentLang,W&&setTimeout(()=>xr(),100))},500);Un.push(()=>clearInterval(t)),L.value&&F.value&&(R=setInterval(()=>fr(),2e3)),te(()=>setTimeout(()=>Cr(),500))}),s(()=>{Vn&&clearInterval(Vn),R&&clearInterval(R),Un.forEach(e=>e()),Hn?.disconnect(),G?.disconnect(),B?.destroy(),V?.destroy(),H?.destroy(),U?.destroy()}),(e,n)=>(o(),r(g,null,[D.value?i(``,!0):(o(),r(`div`,le,[t(ne,null,{default:p(()=>[...n[26]||=[m(`mdi-timer-sand`,-1)]]),_:1}),h(`span`,null,d(E.value?.label?.loading),1)])),D.value?(o(),r(`div`,ue,[t(C,{title:E.value?.page?.monitor?.title,"accordion-key":`monitor-overview`},{actions:p(()=>[t(S,{onClick:n[0]||=e=>{$n(),e.stopPropagation()},label:Mn.value?E.value?.intention?.resume:E.value?.intention?.pause,icon:Mn.value?`mdi-play`:`mdi-pause`},null,8,[`label`,`icon`]),t(S,{onClick:n[1]||=e=>{nr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`]),t(S,{onClick:n[2]||=e=>{kr(),e.stopPropagation()},label:E.value?.page?.analysis?.exportAll,icon:`mdi-archive`},null,8,[`label`])]),default:p(()=>[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[t(v,null,{default:p(()=>[h(`div`,de,[h(`div`,fe,`Redis `+d(D.value.server.version)+` · `+d(D.value.server.mode),1),h(`div`,pe,d(Kn.value),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,me,[h(`div`,he,d(E.value?.page?.monitor?.memory),1),h(`div`,ge,d(D.value.memory.usedHuman),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,_e,[h(`div`,ve,d(E.value?.page?.monitor?.rss),1),h(`div`,ye,d(D.value.memory.rssHuman),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,be,[h(`div`,xe,d(E.value?.page?.monitor?.peak),1),h(`div`,Se,d(D.value.memory.peakHuman),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Ce,[h(`div`,we,d(E.value?.page?.monitor?.fragmentation),1),h(`div`,Te,d(D.value.memory.fragRatio)+`x`,1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Ee,[h(`div`,De,d(E.value?.page?.monitor?.opsPerSec),1),h(`div`,Oe,d(D.value.stats.opsPerSec),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,ke,[h(`div`,Ae,d(E.value?.page?.monitor?.totalCommands),1),h(`div`,je,d(D.value.stats.totalCommands),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Me,[h(`div`,Ne,d(E.value?.page?.monitor?.clients),1),h(`div`,Pe,d(D.value.clients.connected),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Fe,[h(`div`,Ie,d(E.value?.page?.monitor?.blocked),1),h(`div`,Le,d(D.value.clients.blocked),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Re,[h(`div`,ze,d(E.value?.page?.monitor?.hitsMisses),1),h(`div`,Be,d(D.value.stats.hitRate)+`%`,1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Ve,[h(`div`,He,d(E.value?.page?.monitor?.hitsAndMisses),1),h(`div`,Ue,d(D.value.stats.hits)+` / `+d(D.value.stats.misses),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,We,[h(`div`,Ge,d(E.value?.page?.monitor?.networkIo),1),h(`div`,Ke,d(D.value.stats.inputKbps.toFixed(1))+` / `+d(D.value.stats.outputKbps.toFixed(1))+` KB/s`,1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,qe,[h(`div`,Je,d(E.value?.page?.monitor?.expired),1),h(`div`,Ye,d(D.value.stats.expiredKeys),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Xe,[h(`div`,Ze,d(E.value?.page?.monitor?.evicted),1),h(`div`,Qe,d(D.value.stats.evictedKeys),1)])]),_:1})]),_:1})]),_:1},8,[`title`]),Y.value?(o(),r(g,{key:0},[n[27]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.serverInfo,"accordion-key":`monitor-server-info`},{actions:p(()=>[t(S,{onClick:n[3]||=e=>{rr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[Y.value.os?(o(),r(g,{key:0},[t(v,null,{default:p(()=>[h(`div`,$e,[h(`div`,et,d(E.value?.page?.monitor?.os),1),h(`div`,tt,d(Y.value.os),1)])]),_:1}),t(y)],64)):i(``,!0),Y.value.port?(o(),r(g,{key:1},[t(v,null,{default:p(()=>[h(`div`,nt,[h(`div`,rt,d(E.value?.page?.monitor?.port),1),h(`div`,it,d(Y.value.port),1)])]),_:1}),t(y)],64)):i(``,!0),Y.value.pid?(o(),r(g,{key:2},[t(v,null,{default:p(()=>[h(`div`,at,[h(`div`,ot,d(E.value?.page?.monitor?.pid),1),h(`div`,st,d(Y.value.pid),1)])]),_:1}),t(y)],64)):i(``,!0),Y.value.configFile?(o(),r(g,{key:3},[t(v,null,{default:p(()=>[h(`div`,ct,[h(`div`,lt,d(E.value?.page?.monitor?.configFile),1),h(`div`,ut,d(Y.value.configFile),1)])]),_:1}),t(y)],64)):i(``,!0),t(v,null,{default:p(()=>[h(`div`,dt,[h(`div`,ft,d(E.value?.page?.monitor?.cpuSys)+` CPU`,1),h(`div`,pt,d(Y.value.cpuSys),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,mt,[h(`div`,ht,d(E.value?.page?.monitor?.cpuUser)+` CPU`,1),h(`div`,gt,d(Y.value.cpuUser),1)])]),_:1})]),_:1})]),_:1},8,[`title`])],64)):i(``,!0),X.value?(o(),r(g,{key:1},[n[28]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.persistence,"accordion-key":`monitor-persistence`},{actions:p(()=>[t(S,{onClick:n[4]||=e=>{ir(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[t(v,null,{default:p(()=>[h(`div`,_t,[h(`div`,vt,d(E.value?.page?.monitor?.rdbLastSave),1),h(`div`,yt,d(X.value.rdbLastSave),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,bt,[h(`div`,xt,d(E.value?.page?.monitor?.rdbStatus),1),h(`div`,St,d(X.value.rdbStatus),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Ct,[h(`div`,wt,d(E.value?.page?.monitor?.rdbChanges),1),h(`div`,Tt,d(X.value.rdbChanges),1)])]),_:1}),t(y),t(v,null,{default:p(()=>[h(`div`,Et,[h(`div`,Dt,d(E.value?.page?.monitor?.aofEnabled),1),h(`div`,Ot,d(X.value.aofEnabled),1)])]),_:1}),X.value.aofSize?(o(),r(g,{key:0},[t(y),t(v,null,{default:p(()=>[h(`div`,kt,[h(`div`,At,d(E.value?.page?.monitor?.aofSize),1),h(`div`,jt,d(X.value.aofSize),1)])]),_:1})],64)):i(``,!0)]),_:1})]),_:1},8,[`title`])],64)):i(``,!0),Z.value?(o(),r(g,{key:2},[n[29]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.replication,"accordion-key":`monitor-replication`},{actions:p(()=>[t(S,{onClick:n[5]||=e=>{ar(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[t(v,null,{default:p(()=>[h(`div`,Mt,[h(`div`,Nt,d(E.value?.page?.monitor?.role),1),h(`div`,Pt,d(Z.value.role),1)])]),_:1}),Z.value.replicas===void 0?i(``,!0):(o(),r(g,{key:0},[t(y),t(v,null,{default:p(()=>[h(`div`,Ft,[h(`div`,It,d(E.value?.page?.monitor?.replicas),1),h(`div`,Lt,d(Z.value.replicas),1)])]),_:1})],64)),Z.value.masterHost?(o(),r(g,{key:1},[t(y),t(v,null,{default:p(()=>[h(`div`,Rt,[h(`div`,zt,d(E.value?.page?.monitor?.masterHost),1),h(`div`,Bt,d(Z.value.masterHost)+`:`+d(Z.value.masterPort),1)])]),_:1})],64)):i(``,!0),Z.value.linkStatus?(o(),r(g,{key:2},[t(y),t(v,null,{default:p(()=>[h(`div`,Vt,[h(`div`,Ht,d(E.value?.page?.monitor?.linkStatus),1),h(`div`,Ut,d(Z.value.linkStatus),1)])]),_:1})],64)):i(``,!0)]),_:1})]),_:1},8,[`title`])],64)):i(``,!0),qn.value.length>0?(o(),r(g,{key:3},[n[30]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.keyspace,"accordion-key":`monitor-keyspace`},{actions:p(()=>[t(S,{onClick:n[6]||=e=>{or(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(qn.value,(e,n)=>(o(),r(g,{key:e.db},[t(v,null,{default:p(()=>[h(`div`,Wt,[h(`div`,Gt,d(e.db),1),h(`div`,Kt,d(E.value?.page?.monitor?.keys)+`: `+d(e.keys)+` · `+d(E.value?.page?.monitor?.expires)+`: `+d(e.expires),1)])]),_:2},1024),n<qn.value.length-1?(o(),l(y,{key:0})):i(``,!0)],64))),128))]),_:1})]),_:1},8,[`title`])],64)):i(``,!0),n[34]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.modules,"accordion-key":`monitor-modules`},{actions:p(()=>[t(S,{onClick:n[7]||=e=>{sr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[Q.value.length===0?(o(),r(`div`,qt,d(E.value?.page?.monitor?.noModules),1)):i(``,!0),Q.value.length>0?(o(),l(b,{key:1,density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(Q.value,(e,n)=>(o(),r(g,{key:e.name},[t(v,null,{default:p(()=>[h(`div`,Jt,[h(`div`,Yt,d(e.name),1),h(`div`,Xt,`v`+d(e.ver),1)])]),_:2},1024),n<Q.value.length-1?(o(),l(y,{key:0})):i(``,!0)],64))),128))]),_:1})):i(``,!0)]),_:1},8,[`title`]),n[35]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.memory+` (MB)`,"accordion-key":`monitor-chart-memory`},{actions:p(()=>[t(S,{onClick:n[8]||=e=>{cr(Ln.value,`memory`),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[h(`div`,{ref_key:`memoryChartEl`,ref:Ln,class:`p3xr-monitoring-chart`},null,512)]),_:1},8,[`title`]),n[36]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.opsPerSec,"accordion-key":`monitor-chart-ops`},{actions:p(()=>[t(S,{onClick:n[9]||=e=>{cr(Rn.value,`ops`),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[h(`div`,{ref_key:`opsChartEl`,ref:Rn,class:`p3xr-monitoring-chart`},null,512)]),_:1},8,[`title`]),n[37]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.clients,"accordion-key":`monitor-chart-clients`},{actions:p(()=>[t(S,{onClick:n[10]||=e=>{cr(zn.value,`clients`),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[h(`div`,{ref_key:`clientsChartEl`,ref:zn,class:`p3xr-monitoring-chart`},null,512)]),_:1},8,[`title`]),n[38]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.networkIo+` (KB/s)`,"accordion-key":`monitor-chart-network`},{actions:p(()=>[t(S,{onClick:n[11]||=e=>{cr(Bn.value,`network`),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[h(`div`,{ref_key:`networkChartEl`,ref:Bn,class:`p3xr-monitoring-chart`},null,512)]),_:1},8,[`title`]),n[39]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.slowLog,"accordion-key":`monitor-slowlog`},{actions:p(()=>[Nn.value?i(``,!0):(o(),l(S,{key:0,onClick:n[12]||=e=>{lr(),e.stopPropagation()},label:`Reset`,icon:`mdi-delete-sweep`})),t(S,{onClick:n[13]||=e=>{ur(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[D.value.slowlog.length===0?(o(),r(`div`,Zt,d(E.value?.page?.monitor?.noSlowQueries),1)):(o(),l(b,{key:1,density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(D.value.slowlog,e=>(o(),r(g,{key:e.id},[t(v,null,{default:p(()=>[h(`div`,Qt,[h(`kbd`,$t,d(e.duration)+`µs`,1),h(`span`,en,d(e.command),1)])]),_:2},1024),t(y)],64))),128))]),_:1}))]),_:1},8,[`title`]),n[40]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.clientList,"accordion-key":`monitor-clients-list`},{actions:p(()=>[t(S,{onClick:n[14]||=e=>{er(),e.stopPropagation()},label:E.value?.label?.autoRefresh,icon:j.value?`mdi-checkbox-marked`:`mdi-checkbox-blank-outline`},null,8,[`label`,`icon`]),j.value?i(``,!0):(o(),l(S,{key:0,onClick:n[15]||=e=>{Yn(),e.stopPropagation()},label:E.value?.intention?.refresh,icon:`mdi-refresh`},null,8,[`label`])),t(S,{onClick:n[16]||=e=>{dr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[k.value.length===0&&Pn.value?(o(),r(`div`,tn,d(E.value?.page?.monitor?.noClients),1)):i(``,!0),k.value.length===0&&!Pn.value?(o(),r(`div`,nn,d(E.value?.label?.loading),1)):i(``,!0),k.value.length>0?(o(),l(b,{key:2,density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(k.value,e=>(o(),r(g,{key:e.id},[t(v,null,{default:p(()=>[h(`div`,rn,[h(`span`,an,d(e.addr),1),e.name?(o(),r(`span`,on,`(`+d(e.name)+`)`,1)):i(``,!0),h(`span`,sn,` db`+d(e.db)+` · `+d(e.cmd)+` · `+d(e.idle)+`s `,1),Nn.value?i(``,!0):(o(),l(ne,{key:1,class:`p3xr-client-kill`,onClick:t=>Qn(e.id,t)},{default:p(()=>[...n[31]||=[m(`mdi-close`,-1)]]),_:1},8,[`onClick`]))])]),_:2},1024),t(y)],64))),128))]),_:1})):i(``,!0)]),_:1},8,[`title`]),n[41]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.topKeys,"accordion-key":`monitor-top-keys`},{actions:p(()=>[t(S,{onClick:n[17]||=e=>{tr(),e.stopPropagation()},label:E.value?.label?.autoRefresh,icon:M.value?`mdi-checkbox-marked`:`mdi-checkbox-blank-outline`},null,8,[`label`,`icon`]),M.value?i(``,!0):(o(),l(S,{key:0,onClick:n[18]||=e=>{Xn(),e.stopPropagation()},label:E.value?.intention?.refresh,icon:`mdi-refresh`},null,8,[`label`])),t(S,{onClick:n[19]||=e=>{gr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[A.value.length===0&&Fn.value?(o(),r(`div`,cn,d(E.value?.page?.monitor?.noKeys),1)):i(``,!0),A.value.length===0&&!Fn.value?(o(),r(`div`,ln,d(E.value?.label?.loading),1)):i(``,!0),A.value.length>0?(o(),l(b,{key:2,density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(A.value,(e,n)=>(o(),r(g,{key:e.key},[t(v,null,{default:p(()=>[h(`div`,un,[h(`div`,dn,[h(`span`,fn,`#`+d(n+1),1),h(`span`,pn,d(e.key),1)]),h(`div`,mn,d(q(e.bytes)),1)])]),_:2},1024),t(y)],64))),128))]),_:1})):i(``,!0)]),_:1},8,[`title`]),F.value?(o(),r(g,{key:4},[n[32]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.slotStats,"accordion-key":`monitor-slot-stats`},{actions:p(()=>[t(S,{onClick:n[20]||=e=>{Zn(),e.stopPropagation()},label:E.value?.intention?.refresh,icon:`mdi-refresh`},null,8,[`label`])]),default:p(()=>[h(`div`,hn,[t(se,{modelValue:P.value,"onUpdate:modelValue":[n[21]||=e=>P.value=e,n[22]||=e=>Zn()],items:[{title:`Key Count`,value:`KEY-COUNT`},{title:`CPU (µs)`,value:`CPU-USEC`},{title:`Memory (bytes)`,value:`MEMORY-BYTES`}],label:`Metric`,style:{"max-width":`180px`}},null,8,[`modelValue`])]),N.value.length===0&&In.value?(o(),r(`div`,gn,`No slot data`)):i(``,!0),N.value.length>0?(o(),l(b,{key:1,density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(N.value,(e,n)=>(o(),r(g,{key:e.slot},[t(v,null,{default:p(()=>[h(`div`,_n,[h(`div`,vn,[h(`span`,yn,`#`+d(n+1),1),h(`span`,bn,`Slot `+d(e.slot),1)]),h(`div`,xn,[P.value===`KEY-COUNT`?(o(),r(g,{key:0},[m(d(e[`key-count`])+` keys`,1)],64)):i(``,!0),P.value===`CPU-USEC`?(o(),r(g,{key:1},[m(d(e[`cpu-usec`])+` µs`,1)],64)):i(``,!0),P.value===`MEMORY-BYTES`?(o(),r(g,{key:2},[m(d(q(e[`memory-bytes`])),1)],64)):i(``,!0)])])]),_:2},1024),t(y)],64))),128))]),_:1})):i(``,!0)]),_:1},8,[`title`])],64)):i(``,!0),F.value?(o(),r(g,{key:5},[n[33]||=h(`br`,null,null,-1),t(C,{title:E.value?.page?.monitor?.clusterSlotMap,"accordion-key":`monitor-cluster-slots`},{actions:p(()=>[t(S,{onClick:n[23]||=e=>{pr(),e.stopPropagation()},label:E.value?.label?.autoRefresh,icon:L.value?`mdi-checkbox-marked`:`mdi-checkbox-blank-outline`},null,8,[`label`,`icon`]),L.value?i(``,!0):(o(),l(S,{key:0,onClick:n[24]||=e=>{fr(),e.stopPropagation()},label:E.value?.intention?.refresh,icon:`mdi-refresh`},null,8,[`label`])),t(S,{onClick:n[25]||=e=>{hr(),e.stopPropagation()},label:E.value?.intention?.export,icon:`mdi-download`},null,8,[`label`])]),default:p(()=>[I.value?(o(),r(g,{key:1},[t(b,{density:`compact`,class:`pa-0`},{default:p(()=>[(o(!0),r(g,null,u(I.value,e=>(o(),r(g,{key:e.master.id},[t(v,null,{default:p(()=>[h(`div`,Cn,[h(`div`,wn,[h(`span`,Tn,d(e.master.host)+`:`+d(e.master.port),1),h(`span`,En,d(e.slotRanges.map(e=>e[0]+`-`+e[1]).join(`, `)),1)]),h(`div`,Dn,[m(d(mr(e))+` slots `,1),e.replicas.length>0?(o(),r(`span`,On,` (`+d(e.replicas.map(e=>e.host+`:`+e.port).join(`, `))+`) `,1)):i(``,!0)])])]),_:2},1024),t(y)],64))),128))]),_:1}),h(`div`,kn,` 16384 slots across `+d(I.value.length)+` masters `,1)],64)):(o(),r(`div`,Sn,d(E.value?.page?.monitor?.noClusterData),1))]),_:1},8,[`title`])],64)):i(``,!0)])):i(``,!0)],64))}}),[[`__scopeId`,`data-v-8cdfeede`]]);export{w as default};