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

6 lines • 93.6 kB
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/i18n.store-ZJjZbIIr.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-9s1cLCyo.js","assets/KeyArray-CdPKYJo5.js","assets/Box-DSXpVc0K.js","assets/extends-CvVTau-c.js","assets/KeyboardArrowDown-D_jWdzEv.js","assets/createSimplePaletteValueFilter-Bt9IjErz.js","assets/Delete-XFKHCDuD.js","assets/TextField-CfzwSAUF.js","assets/useRovingTabIndex-DogldBjs.js","assets/List-DUtnswD8.js","assets/index-O55eiSgD.js","assets/redis-state.store-C55NDKx3.js","assets/index-DKMc78Qb.css","assets/esm-C-0NgAla.js","assets/Save-BjXEBpbN.js","assets/KeyboardArrowUp-xCWEyXLK.js","assets/redis-version-D5h1AGvN.js","assets/Download-CNMK0XxJ.js"])))=>i.map(i=>d[i]);
import{i as e,n as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{h as r,k as i,lt as a,t as o}from"./Box-DSXpVc0K.js";import{n as s,o as c}from"./i18n.store-ZJjZbIIr.js";import{l,r as u}from"./KeyboardArrowDown-D_jWdzEv.js";import{n as d,s as f,t as p,u as m}from"./TextField-CfzwSAUF.js";import{i as h,n as g,r as _,t as v}from"./Delete-XFKHCDuD.js";import{t as y}from"./ListItem-DNQFRYWX.js";import{a as b,c as x,d as S,f as C,g as w,h as T,i as E,l as D,m as O,n as k,o as A,p as j,r as M,s as N,t as P,u as F}from"./esm-C-0NgAla.js";import{t as I}from"./List-DUtnswD8.js";import{t as L}from"./preload-helper-9s1cLCyo.js";import{i as R,n as z,r as B,t as ee}from"./Save-BjXEBpbN.js";import{t as te}from"./Download-CNMK0XxJ.js";import{i as V,n as H,r as U,t as W}from"./SkipPrevious-D216pu4I.js";import{t as ne}from"./Refresh-DX5rG8wz.js";import{i as re,r as G}from"./redis-state.store-C55NDKx3.js";import{B as ie,C as ae,D as oe,L as se,M as ce,N as le,O as ue,R as de,V as fe,_ as K,a as pe,c as me,d as q,i as he,j as ge,k as _e,m as ve,r as J,s as ye,w as be,x as xe,z as Se}from"./index-O55eiSgD.js";import{t as Ce}from"./redis-version-D5h1AGvN.js";/* empty css                  */import{t as we}from"./P3xrAccordion-D_hsG8TZ.js";var Y=a(),Te=r((0,Y.jsx)(`path`,{d:`M4 9h4v11H4zm12 4h4v7h-4zm-6-9h4v16h-4z`}),`BarChart`),X=r((0,Y.jsx)(`path`,{d:`M15 4v2h3v12h-3v2h5V4zM4 20h5v-2H6V6h3V4H4z`}),`DataArray`),Ee=r((0,Y.jsx)(`path`,{d:`M17.81 4.47c-.08 0-.16-.02-.23-.06C15.66 3.42 14 3 12.01 3c-1.98 0-3.86.47-5.57 1.41-.24.13-.54.04-.68-.2-.13-.24-.04-.55.2-.68C7.82 2.52 9.86 2 12.01 2c2.13 0 3.99.47 6.03 1.52.25.13.34.43.21.67-.09.18-.26.28-.44.28M3.5 9.72c-.1 0-.2-.03-.29-.09-.23-.16-.28-.47-.12-.7.99-1.4 2.25-2.5 3.75-3.27C9.98 4.04 14 4.03 17.15 5.65c1.5.77 2.76 1.86 3.75 3.25.16.22.11.54-.12.7s-.54.11-.7-.12c-.9-1.26-2.04-2.25-3.39-2.94-2.87-1.47-6.54-1.47-9.4.01-1.36.7-2.5 1.7-3.4 2.96-.08.14-.23.21-.39.21m6.25 12.07c-.13 0-.26-.05-.35-.15-.87-.87-1.34-1.43-2.01-2.64-.69-1.23-1.05-2.73-1.05-4.34 0-2.97 2.54-5.39 5.66-5.39s5.66 2.42 5.66 5.39c0 .28-.22.5-.5.5s-.5-.22-.5-.5c0-2.42-2.09-4.39-4.66-4.39s-4.66 1.97-4.66 4.39c0 1.44.32 2.77.93 3.85.64 1.15 1.08 1.64 1.85 2.42.19.2.19.51 0 .71-.11.1-.24.15-.37.15m7.17-1.85c-1.19 0-2.24-.3-3.1-.89-1.49-1.01-2.38-2.65-2.38-4.39 0-.28.22-.5.5-.5s.5.22.5.5c0 1.41.72 2.74 1.94 3.56.71.48 1.54.71 2.54.71.24 0 .64-.03 1.04-.1.27-.05.53.13.58.41.05.27-.13.53-.41.58-.57.11-1.07.12-1.21.12M14.91 22c-.04 0-.09-.01-.13-.02-1.59-.44-2.63-1.03-3.72-2.1-1.4-1.39-2.17-3.24-2.17-5.22 0-1.62 1.38-2.94 3.08-2.94s3.08 1.32 3.08 2.94c0 1.07.93 1.94 2.08 1.94s2.08-.87 2.08-1.94c0-3.77-3.25-6.83-7.25-6.83-2.84 0-5.44 1.58-6.61 4.03-.39.81-.59 1.76-.59 2.8 0 .78.07 2.01.67 3.61.1.26-.03.55-.29.64-.26.1-.55-.04-.64-.29-.49-1.31-.73-2.61-.73-3.96 0-1.2.23-2.29.68-3.24 1.33-2.79 4.28-4.6 7.51-4.6 4.55 0 8.25 3.51 8.25 7.83 0 1.62-1.38 2.94-3.08 2.94s-3.08-1.32-3.08-2.94c0-1.07-.93-1.94-2.08-1.94s-2.08.87-2.08 1.94c0 1.71.66 3.31 1.87 4.51.95.94 1.86 1.46 3.27 1.85.27.07.42.35.35.61-.05.23-.26.38-.47.38`}),`Fingerprint`),De=r((0,Y.jsx)(`path`,{d:`M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2M8.5 13.5l2.5 3.01L14.5 12l4.5 6H5z`}),`Image`),Oe=r((0,Y.jsx)(`path`,{d:`m20.5 10 .5-2h-4l1-4h-2l-1 4h-4l1-4h-2L9 8H5l-.5 2h4l-1 4h-4L3 16h4l-1 4h2l1-4h4l-1 4h2l1-4h4l.5-2h-4l1-4zm-7 4h-4l1-4h4z`}),`Numbers`),ke=r((0,Y.jsx)(`path`,{d:`M9 1h6v2H9zm10.03 6.39 1.42-1.42c-.43-.51-.9-.99-1.41-1.41l-1.42 1.42C16.07 4.74 14.12 4 12 4c-4.97 0-9 4.03-9 9s4.02 9 9 9 9-4.03 9-9c0-2.12-.74-4.07-1.97-5.61M13 14h-2V8h2z`}),`Timer`),Ae=r((0,Y.jsx)(`path`,{d:`M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8`}),`Undo`),je=r((0,Y.jsx)(`path`,{d:`M7.41 18.59 8.83 20 12 16.83 15.17 20l1.41-1.41L12 14zm9.18-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10z`}),`UnfoldLess`),Me=r((0,Y.jsx)(`path`,{d:`M12 5.83 15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15z`}),`UnfoldMore`),Z=e(c()),Ne=e(A());function Pe(e){let t=e instanceof Uint8Array?e:new Uint8Array(e);return t.length<4?{ext:`bin`,mime:`application/octet-stream`}:t[0]===137&&t[1]===80&&t[2]===78&&t[3]===71?{ext:`png`,mime:`image/png`}:t[0]===255&&t[1]===216&&t[2]===255?{ext:`jpg`,mime:`image/jpeg`}:t[0]===71&&t[1]===73&&t[2]===70&&t[3]===56?{ext:`gif`,mime:`image/gif`}:t[0]===66&&t[1]===77?{ext:`bmp`,mime:`image/bmp`}:t[0]===82&&t[1]===73&&t[2]===70&&t[3]===70&&t.length>=12&&t[8]===87&&t[9]===69&&t[10]===66&&t[11]===80?{ext:`webp`,mime:`image/webp`}:t[0]===73&&t[1]===73&&t[2]===42&&t[3]===0||t[0]===77&&t[1]===77&&t[2]===0&&t[3]===42?{ext:`tiff`,mime:`image/tiff`}:t[0]===0&&t[1]===0&&t[2]===1&&t[3]===0?{ext:`ico`,mime:`image/x-icon`}:t[0]===37&&t[1]===80&&t[2]===68&&t[3]===70?{ext:`pdf`,mime:`application/pdf`}:t[0]===80&&t[1]===75&&t[2]===3&&t[3]===4?{ext:`zip`,mime:`application/zip`}:t[0]===31&&t[1]===139?{ext:`gz`,mime:`application/gzip`}:t[0]===66&&t[1]===90&&t[2]===104?{ext:`bz2`,mime:`application/x-bzip2`}:t[0]===253&&t[1]===55&&t[2]===122&&t[3]===88&&t.length>=6&&t[4]===90&&t[5]===0?{ext:`xz`,mime:`application/x-xz`}:t[0]===40&&t[1]===181&&t[2]===47&&t[3]===253?{ext:`zst`,mime:`application/zstd`}:t[0]===4&&t[1]===34&&t[2]===77&&t[3]===24?{ext:`lz4`,mime:`application/x-lz4`}:t[0]===55&&t[1]===122&&t[2]===188&&t[3]===175&&t.length>=6&&t[4]===39&&t[5]===28?{ext:`7z`,mime:`application/x-7z-compressed`}:t[0]===82&&t[1]===97&&t[2]===114&&t[3]===33?{ext:`rar`,mime:`application/x-rar-compressed`}:t[0]===82&&t[1]===73&&t[2]===70&&t[3]===70&&t.length>=12&&t[8]===87&&t[9]===65&&t[10]===86&&t[11]===69?{ext:`wav`,mime:`audio/wav`}:t[0]===82&&t[1]===73&&t[2]===70&&t[3]===70&&t.length>=12&&t[8]===65&&t[9]===86&&t[10]===73&&t[11]===32?{ext:`avi`,mime:`video/x-msvideo`}:t[0]===255&&(t[1]===251||t[1]===243||t[1]===242)||t[0]===73&&t[1]===68&&t[2]===51?{ext:`mp3`,mime:`audio/mpeg`}:t[0]===102&&t[1]===76&&t[2]===97&&t[3]===67?{ext:`flac`,mime:`audio/flac`}:t[0]===79&&t[1]===103&&t[2]===103&&t[3]===83?{ext:`ogg`,mime:`audio/ogg`}:t[0]===26&&t[1]===69&&t[2]===223&&t[3]===163?{ext:`webm`,mime:`video/webm`}:t.length>=8&&t[4]===102&&t[5]===116&&t[6]===121&&t[7]===112?{ext:`mp4`,mime:`video/mp4`}:t[0]===0&&t[1]===97&&t[2]===115&&t[3]===109?{ext:`wasm`,mime:`application/wasm`}:t[0]===127&&t[1]===69&&t[2]===76&&t[3]===70?{ext:`elf`,mime:`application/x-elf`}:t.length>=6&&t[0]===83&&t[1]===81&&t[2]===76&&t[3]===105&&t[4]===116&&t[5]===101?{ext:`sqlite`,mime:`application/x-sqlite3`}:t[0]===56&&t[1]===66&&t[2]===80&&t[3]===83?{ext:`psd`,mime:`image/vnd.adobe.photoshop`}:Fe(t)||{ext:`bin`,mime:`application/octet-stream`}}function Fe(e){let t=e[0];if(t===123||t===91)return{ext:`json`,mime:`application/json`};if(t===60){let t=new TextDecoder(`utf-8`,{fatal:!1}).decode(e.slice(0,Math.min(e.length,256))).toLowerCase();if(t.includes(`<svg`))return{ext:`svg`,mime:`image/svg+xml`};if(t.includes(`<!doctype html`)||t.includes(`<html`))return{ext:`html`,mime:`text/html`};if(t.includes(`<?xml`))return{ext:`xml`,mime:`application/xml`}}if(e[0]===239&&e[1]===187&&e[2]===191){if(e.length>3){if(e[3]===123||e[3]===91)return{ext:`json`,mime:`application/json`};if(e[3]===60)return{ext:`xml`,mime:`application/xml`}}return{ext:`txt`,mime:`text/plain`}}return null}function Ie(e,t=!1){let n=re.getState().keyPageCount??5,r=t?Math.ceil(e/2):e;return{page:1,pages:Math.max(Math.ceil(r/n),1),pageCount:n,startIndex:0,endIndex:n}}function Le(e,t,n=!1){let r=e.pageCount,i=n?Math.ceil(t/2):t,a=Math.max(Math.ceil(i/r),1),o=e.page;o>a&&(o=a),o<1&&(o=1);let s=r*(o-1),c=s+r;return{page:o,pages:a,pageCount:r,startIndex:s,endIndex:c}}function Re(e,t){let{page:n,pages:r,pageCount:i}=e;switch(t){case`first`:n=1;break;case`prev`:n>1&&n--;break;case`next`:n<r&&n++;break;case`last`:n=r}n<1&&(n=1),n>r&&(n=r);let a=i*(n-1),o=a+i;return{...e,page:n,startIndex:a,endIndex:o}}function ze(e,t){let n=t;n<1&&(n=1),n>e.pages&&(n=e.pages);let r=e.pageCount*(n-1),i=r+e.pageCount;return{...e,page:n,startIndex:r,endIndex:i}}function Be(e,t){if(e==null)return``;let n=String(e);switch(t){case`json`:try{return JSON.stringify(JSON.parse(n),null,2)}catch{return n}case`base64`:{let e=new TextEncoder().encode(n),t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}default:return n}}function Q(e){let t=re.getState().maxValueDisplay??1024;if(e==null)return``;let n=String(e);return t<=0?n:n.length>t?n.substring(0,t):n}function $(e){let t=re.getState().maxValueDisplay??1024;return e==null||t<=0?!1:String(e).length>t}async function Ve(e){try{await navigator.clipboard.writeText(String(e??``))}catch{}let t=(await L(async()=>{let{useI18nStore:e}=await import(`./i18n.store-ZJjZbIIr.js`).then(e=>e.t);return{useI18nStore:e}},__vite__mapDeps([0,1,2]))).useI18nStore.getState().strings;K.getState().toast(t?.status?.dataCopied)}function He(e,t,n){let r=e instanceof Uint8Array?e:new Uint8Array(e),{ext:i,mime:a}=Pe(r),o=new Blob([r],{type:a}),s=URL.createObjectURL(o),c=document.createElement(`a`);c.href=s,c.download=`${n||t}.${i}`,c.click(),URL.revokeObjectURL(s)}function Ue(e){if(!e)return[];let t=new TextEncoder().encode(e),n=[];for(let e=0;e<t.length;e+=16){let r=t.slice(e,e+16),i=r.length,a=e.toString(16).padStart(8,`0`),o=new Uint8Array(16);o.set(r);let s=Array.from(o.slice(0,8)).map(e=>e.toString(16).padStart(2,`0`)).join(` `),c=Array.from(o.slice(8)).map(e=>e.toString(16).padStart(2,`0`)).join(` `),l=s+`  `+c,u=Array.from(o).map(e=>e>=32&&e<=126?String.fromCharCode(e):`.`).join(``);if(i===16)n.push({addr:a,hexReal:l,hexPad:``,asciiReal:u,asciiPad:``});else{let e=i<=8?3*i-1:25+3*(i-8)-1;n.push({addr:a,hexReal:l.substring(0,e),hexPad:l.substring(e),asciiReal:u.substring(0,i),asciiPad:u.substring(i)})}}return n}var We={fontFamily:`'Roboto Mono', monospace`,fontSize:16,lineHeight:`22px`},Ge={overflow:`hidden`},Ke={display:`flex`,whiteSpace:`nowrap`},qe={opacity:.5,paddingRight:12,flexShrink:0},Je={paddingRight:12,flexShrink:0,whiteSpace:`pre`},Ye={borderLeft:`1px solid var(--p3xr-fieldset-border, rgba(255,255,255,0.25))`,paddingLeft:12,flexShrink:0},Xe={opacity:.5},Ze={overflowX:`auto`,overflowY:`hidden`,position:`sticky`,bottom:0};function Qe({value:e,truncated:t,style:n}){let r=(0,Z.useMemo)(()=>Ue(e),[e]),i=(0,Z.useRef)(null),a=(0,Z.useRef)(null),[o,s]=(0,Z.useState)(0),c=(0,Z.useCallback)(()=>{let e=i.current;e&&s(e.scrollWidth)},[]);(0,Z.useEffect)(()=>{c();let e=i.current;if(!e)return;let t=new ResizeObserver(()=>c());return t.observe(e),()=>t.disconnect()},[e,c]);let l=(0,Z.useCallback)(()=>{i.current&&a.current&&(i.current.scrollLeft=a.current.scrollLeft)},[]),u=n?{...We,...n}:We;return(0,Y.jsxs)(`div`,{style:u,children:[(0,Y.jsx)(`div`,{ref:i,style:Ge,children:r.map(e=>(0,Y.jsxs)(`div`,{style:Ke,children:[(0,Y.jsx)(`span`,{style:qe,children:e.addr}),(0,Y.jsxs)(`span`,{style:Je,children:[e.hexReal,(0,Y.jsx)(`span`,{style:Xe,children:e.hexPad})]}),(0,Y.jsxs)(`span`,{style:Ye,children:[e.asciiReal,(0,Y.jsx)(`span`,{style:Xe,children:e.asciiPad})]})]},e.addr))}),(0,Y.jsx)(`div`,{ref:a,style:Ze,onScroll:l,children:(0,Y.jsx)(`div`,{style:{height:1,width:o}})})]})}function $e({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:i,onRefresh:a}){let c=s(e=>e.strings),l=G(e=>e.connection),d=re(),{toast:f,generalHandleError:m,confirm:g}=K(),v=ve(),y=de(`(min-width: 960px)`),w=l?.readonly===!0,[T,D]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(!1),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)(t),[L,R]=(0,Z.useState)(n),[z,V]=(0,Z.useState)(null),[H,U]=(0,Z.useState)(!1),[W,ne]=(0,Z.useState)(!1),[ie,ae]=(0,Z.useState)(!1),[oe,se]=(0,Z.useState)({oldValue:``,newValue:``}),ce=(0,Z.useRef)(null),le=(0,Z.useCallback)(()=>{typeof F==`string`&&F.length>=d.maxValueAsBuffer?(A(!0),V(structuredClone(L))):(A(!1),V(structuredClone(F))),D(!0)},[F,L,d.maxValueAsBuffer]),ue=(0,Z.useCallback)(()=>{k?R(z):I(z),D(!1),A(!1)},[k,z]),me=(0,Z.useCallback)((e,t)=>!re.getState().showDiffBeforeSave||e===t?Promise.resolve(!0):(se({oldValue:e,newValue:t}),ae(!0),new Promise(e=>{ce.current=e})),[]),he=(0,Z.useCallback)(async()=>{let t=k?L:F,n=z;try{if(N&&JSON.parse(t),n!=null&&!await me(n,t))return;if(v.show({message:c?.intention?.save}),await q({action:`key/set`,payload:{type:e?.type,key:r,value:t}}),pe(`/key-set`),D(!1),A(!1),a(),v.hide(),d.undoEnabled&&n!==void 0&&n!==t&&await K.getState().toastWithUndo(c?.status?.saved))try{v.show({message:`Undo...`}),await q({action:`key/set`,payload:{type:e?.type,key:r,value:n}}),I(n),V(n),a(),v.hide(),K.getState().toast(c?.status?.reverted)}catch(e){K.getState().generalHandleError(e),v.hide()}}catch(e){m(e),v.hide()}},[k,F,L,N,e,r,c,a,m,z,d.undoEnabled]),ge=(0,Z.useCallback)(()=>{let t=document.createElement(`input`);t.type=`file`,t.onchange=async()=>{let n=t.files?.[0];if(!n)return;let i=new FileReader;i.onerror=e=>m(e),i.onload=async t=>{let n=t.target.result;try{if(T){await g({message:c?.confirm?.uploadBuffer}),k?R(n):I(n),f(c?.confirm?.uploadBufferDone);return}await g({message:c?.confirm?.uploadBuffer}),v.show(),await q({action:`key/set`,payload:{type:e?.type,value:n,key:r}}),pe(`/key-set`),f(c?.confirm?.uploadBufferDoneAndSave),a()}catch(e){m(e)}finally{v.hide()}},i.readAsArrayBuffer(n)},t.click()},[T,k,e,r,c,g,f,m,a]),J=(0,Z.useCallback)(()=>U(!0),[]),ye=(0,Z.useCallback)(()=>ne(!0),[]),be=(0,Z.useCallback)(async()=>{try{let t=JSON.stringify(JSON.parse(F),null,d.jsonFormat||2);I(t),v.show({message:c?.intention?.save}),await q({action:`key/set`,payload:{type:e?.type,key:r,value:t}}),pe(`/key-set`),a()}catch{f(c?.label?.jsonViewNotParsable)}finally{v.hide()}},[F,d.jsonFormat,e,r,c,a]),xe=(0,Z.useCallback)(async()=>{try{let e=await q({action:`key/string-digest`,payload:{key:r}});f(e.digest||`No digest`)}catch(e){m(e)}},[r,f,m]),Se=(0,Z.useCallback)(()=>Ve(F),[F]),we=(0,Z.useCallback)(()=>He(L,r),[L,r]),Te=()=>L?.byteLength===void 0?``:`(`+(d.prettyBytes?.(L.byteLength)??`${L.byteLength} bytes`)+`)`,X=({icon:e,label:t,color:n=`primary`,onClick:r})=>y?(0,Y.jsxs)(fe,{variant:`contained`,color:n,size:`small`,onClick:r,sx:{gap:`3px`},children:[e,(0,Y.jsx)(`span`,{children:t})]}):(0,Y.jsx)(u,{title:t,placement:`top`,children:(0,Y.jsx)(fe,{variant:`contained`,color:n,onClick:r,sx:{minWidth:40,width:40,height:40,p:0,borderRadius:`4px`},children:e})});return(0,Y.jsxs)(o,{children:[!T&&(0,Y.jsxs)(o,{className:`p3xr-key-type-actions`,children:[!w&&(0,Y.jsx)(X,{icon:(0,Y.jsx)(x,{fontSize:`small`}),label:c?.intention?.setBuffer,onClick:ge}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(te,{fontSize:`small`}),label:c?.intention?.downloadBuffer,color:`secondary`,onClick:we}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(O,{fontSize:`small`}),label:c?.intention?.jsonViewShow,color:`secondary`,onClick:J}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(j,{fontSize:`small`}),label:c?.intention?.copy,color:`secondary`,onClick:Se}),!w&&(0,Y.jsx)(X,{icon:(0,Y.jsx)(S,{fontSize:`small`}),label:c?.intention?.formatJson,onClick:be}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(C,{fontSize:`small`}),label:c?.intention?.jsonViewEditor,onClick:ye}),Ce(G.getState().info?.server?.redis_version).isAtLeast(8,4)&&(0,Y.jsx)(X,{icon:(0,Y.jsx)(Oe,{fontSize:`small`}),label:`Digest`,color:`secondary`,onClick:xe}),!w&&(0,Y.jsx)(X,{icon:(0,Y.jsx)(B,{fontSize:`small`}),label:c?.intention?.edit,onClick:le})]}),T&&(0,Y.jsxs)(o,{className:`p3xr-key-type-actions`,children:[!w&&(0,Y.jsx)(h,{sx:{mr:1},control:(0,Y.jsx)(_,{checked:N,onChange:(e,t)=>P(t),color:`secondary`}),label:c?.label?.validateJson}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(_e,{fontSize:`small`}),label:c?.intention?.cancel,color:`error`,onClick:ue}),!w&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(X,{icon:(0,Y.jsx)(x,{fontSize:`small`}),label:c?.intention?.setBuffer,onClick:ge}),(0,Y.jsx)(X,{icon:(0,Y.jsx)(ee,{fontSize:`small`}),label:c?.intention?.save,onClick:he})]})]}),(0,Y.jsx)(o,{className:`p3xr-key-type-content`,children:T?(0,Y.jsxs)(o,{className:`p3xr-key-type-editor`,children:[String(F)===`[object ArrayBuffer]`&&(0,Y.jsxs)(o,{className:`p3xr-key-type-buffer-info`,children:[typeof c?.label?.isBuffer==`function`?c.label.isBuffer({maxValueAsBuffer:d.prettyBytes(d.maxValueAsBuffer)}):``,` `,Te()]}),k&&(0,Y.jsxs)(o,{className:`p3xr-key-type-buffer-info`,children:[typeof c?.label?.isBuffer==`function`?c.label.isBuffer({maxValueAsBuffer:d.prettyBytes(d.maxValueAsBuffer)}):``,` `,Te()]}),k?(0,Y.jsx)(p,{fullWidth:!0,multiline:!0,minRows:4,value:String(L??``),onChange:e=>R(e.target.value),slotProps:{input:{sx:{fontFamily:`'Roboto Mono', monospace`,fontSize:13}}}}):(0,Y.jsx)(p,{fullWidth:!0,multiline:!0,minRows:4,value:typeof F==`string`?F:String(F??``),onChange:e=>I(e.target.value),slotProps:{input:{sx:{fontFamily:`'Roboto Mono', monospace`,fontSize:13}}}})]}):(0,Y.jsx)(o,{className:`p3xr-key-type-display`,onClick:w?void 0:le,sx:{cursor:w?`default`:`pointer`,maxWidth:`100%`,overflow:i===`hex`?`visible`:`auto`},children:d.maxValueDisplay===-1?(0,Y.jsx)(o,{sx:{opacity:.5,fontStyle:`italic`},children:c?.label?.hiddenUntilEdit}):i===`hex`?(0,Y.jsx)(Qe,{value:Q(typeof F==`string`?F:``),truncated:$(F)}):(0,Y.jsxs)(o,{component:`span`,className:`p3xr-pre`,sx:{wordBreak:`break-all`,whiteSpace:`pre-wrap`,fontFamily:`'Roboto Mono', monospace`,fontSize:16,lineHeight:`18px`},children:[Q(Be(typeof F==`string`?F:``,i)),$(F)&&(0,Y.jsx)(o,{component:`span`,sx:{opacity:.5},children:`...`})]})})}),(0,Y.jsx)(b,{open:H,value:String(F??``),onClose:()=>U(!1)}),(0,Y.jsx)(M,{open:W,value:String(F??``),onClose:async t=>{if(ne(!1),t?.obj){let n=String(F??``);V(null),D(!1),A(!1),I(t.obj),v.show({message:c?.intention?.save});try{await q({action:`key/set`,payload:{type:e?.type,key:r,value:t.obj}}),pe(`/key-set`),a(),v.hide(),d.undoEnabled&&n!==t.obj&&await K.getState().toastWithUndo(c?.status?.saved)&&(v.show({message:`Undo...`}),await q({action:`key/set`,payload:{type:e?.type,key:r,value:n}}),a(),v.hide(),K.getState().toast(c?.status?.reverted))}catch(e){m(e),v.hide()}}}}),(0,Y.jsx)(E,{open:ie,keyName:r,oldValue:oe.oldValue,newValue:oe.newValue,onConfirm:()=>{ae(!1),ce.current?.(!0)},onCancel:()=>{ae(!1),ce.current?.(!1)}})]})}function et({paging:e,onPageChange:t}){let n=s(e=>e.strings),r=i();if(e.pages<=1)return null;let a={background:`none`,border:`none`,cursor:`pointer`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,height:28,width:28,margin:0,padding:0,color:r.p3xr.inputBorderColor},c=n=>t(Re(e,n));return(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,py:`4px`},children:[(0,Y.jsx)(u,{title:n?.page?.treeControls?.pager?.first,placement:`top`,children:(0,Y.jsx)(`button`,{style:a,onClick:()=>c(`first`),children:(0,Y.jsx)(W,{sx:{fontSize:24}})})}),(0,Y.jsx)(u,{title:n?.page?.treeControls?.pager?.prev,placement:`top`,children:(0,Y.jsx)(`button`,{style:a,onClick:()=>c(`prev`),children:(0,Y.jsx)(V,{sx:{fontSize:24}})})}),(0,Y.jsx)(`input`,{type:`number`,step:1,min:1,max:e.pages,value:e.page,onChange:n=>{let r=parseInt(n.target.value,10);isNaN(r)||t(ze(e,r))},className:`p3xr-pager-input`,style:{width:64,margin:`0 4px`,verticalAlign:`middle`,textAlign:`center`,padding:0,boxSizing:`border-box`,borderStyle:`solid`,borderWidth:2,borderColor:r.p3xr.inputBorderColor,background:r.p3xr.inputBg,color:r.p3xr.inputColor,outline:`none`,fontFamily:`'Roboto Mono', monospace`,fontSize:12,MozAppearance:`textfield`}}),(0,Y.jsxs)(`span`,{style:{margin:`0 4px`,color:r.p3xr.inputColor},children:[`/ `,e.pages]}),(0,Y.jsx)(u,{title:n?.page?.treeControls?.pager?.next,placement:`top`,children:(0,Y.jsx)(`button`,{style:a,onClick:()=>c(`next`),children:(0,Y.jsx)(U,{sx:{fontSize:24}})})}),(0,Y.jsx)(u,{title:n?.page?.treeControls?.pager?.last,placement:`top`,children:(0,Y.jsx)(`button`,{style:a,onClick:()=>c(`last`),children:(0,Y.jsx)(H,{sx:{fontSize:24}})})})]})}function tt({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:a,onRefresh:c}){let l=s(e=>e.strings),d=G(e=>e.connection),{toast:f,confirm:p,generalHandleError:m}=K(),h=i(),_=d?.readonly===!0,y=h.palette.mode===`dark`,[x,S]=(0,Z.useState)(()=>Ie(t?.length??0)),[C,w]=(0,Z.useState)([]),[T,E]=(0,Z.useState)(!1),[D,A]=(0,Z.useState)(null),[M,N]=(0,Z.useState)(!1),[P,F]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{if(!t)return;let e=Le(x,t.length);S(e),w(t.slice(e.startIndex,e.endIndex).map((t,n)=>({index:e.startIndex+n,value:t})))},[t]);let I=(0,Z.useCallback)(e=>{if(S(e),!t){w([]);return}w(t.slice(e.startIndex,e.endIndex).map((t,n)=>({index:e.startIndex+n,value:t})))},[t]),L=(0,Z.useCallback)(()=>{A({type:`append`,model:{type:`list`,key:r}}),E(!0)},[r]),R=(0,Z.useCallback)(async e=>{try{await p({message:l?.confirm?.deleteListItem??l?.confirm?.areYouSure??`Are you sure?`}),await q({action:`key/list-delete-index`,payload:{key:r,index:e}}),f(l?.status?.deletedListElement),c()}catch(e){m(e)}},[r,l,p,f,c,m]),z=(0,Z.useCallback)((e,t)=>{let i=typeof t==`string`&&t.length>=G.getState().maxValueAsBuffer?n?.[e]:t;A({type:`edit`,model:{type:`list`,key:r,index:e,value:i}}),E(!0)},[r,n]),ee=(0,Z.useCallback)(e=>{E(!1),A(null),e&&c()},[c]),V=y?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,H=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,U=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`;return(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:x,onPageChange:I}),(0,Y.jsxs)(o,{className:`p3xr-key-type-table`,children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:h.palette.primary.main,color:h.palette.primary.contrastText,borderBottom:`2px solid ${U}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`},children:l?.page?.key?.list?.table?.index??`Index`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`},children:l?.page?.key?.list?.table?.value??`Value`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,display:`flex`,justifyContent:`flex-end`,alignItems:`center`},children:!_&&(0,Y.jsx)(u,{title:l?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:L})})})]}),C.map((e,t)=>(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,gap:1,px:2,py:`6px`,borderBottom:`1px solid ${U}`,bgcolor:t%2==0?H:`transparent`,"&:hover":{bgcolor:`${V} !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,cursor:`pointer`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,userSelect:`text`},onClick:()=>z(e.index,e.value),children:e.index}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`,cursor:`pointer`,overflow:`auto`,maxHeight:200,...a===`hex`?{}:{whiteSpace:`pre-wrap`,wordBreak:`break-all`,fontFamily:`'Roboto Mono', monospace`},userSelect:`text`},onClick:()=>z(e.index,e.value),children:a===`hex`?(0,Y.jsx)(Qe,{value:Q(e.value),truncated:$(e.value)}):(0,Y.jsxs)(Y.Fragment,{children:[Q(Be(e.value,a)),$(e.value)&&(0,Y.jsx)(`span`,{style:{opacity:.5},children:`...`})]})}),(0,Y.jsxs)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,whiteSpace:`nowrap`},children:[!_&&(0,Y.jsx)(u,{title:l?.intention?.delete,children:(0,Y.jsx)(v,{sx:{fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:`error.main`,"&:hover":{opacity:1}},onClick:()=>R(e.index)})}),(0,Y.jsx)(u,{title:l?.intention?.jsonViewShow,children:(0,Y.jsx)(O,{sx:{fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:`secondary.main`,"&:hover":{opacity:1}},onClick:()=>{F(String(e.value??``)),N(!0)}})}),(0,Y.jsx)(u,{title:l?.intention?.copy,children:(0,Y.jsx)(j,{sx:{fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:`secondary.main`,"&:hover":{opacity:1}},onClick:()=>Ve(e.value)})}),(0,Y.jsx)(u,{title:l?.intention?.downloadBuffer,children:(0,Y.jsx)(te,{sx:{fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:`secondary.main`,"&:hover":{opacity:1}},onClick:()=>He(n?.[e.index],r)})}),!_&&(0,Y.jsx)(u,{title:l?.intention?.edit,children:(0,Y.jsx)(B,{sx:{fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:`primary.main`,"&:hover":{opacity:1}},onClick:()=>z(e.index,e.value)})})]})]},e.index))]}),(0,Y.jsx)(k,{open:T,data:D,onClose:ee}),(0,Y.jsx)(b,{open:M,value:P,onClose:()=>N(!1)})]})}var nt=e(n(((e,t)=>{t.exports=i;var n={hoursPerDay:24,daysPerWeek:7,weeksPerMonth:4,monthsPerYear:12,daysPerYear:365.25},r={ms:[`ms`,`milli`,`millisecond`,`milliseconds`],s:[`s`,`sec`,`secs`,`second`,`seconds`],m:[`m`,`min`,`mins`,`minute`,`minutes`],h:[`h`,`hr`,`hrs`,`hour`,`hours`],d:[`d`,`day`,`days`],w:[`w`,`week`,`weeks`],mth:[`mon`,`mth`,`mths`,`month`,`months`],y:[`y`,`yr`,`yrs`,`year`,`years`]};function i(e,t,r){r=Object.assign({},n,r||{}),(typeof e==`number`||e.match(/^[-+]?[0-9.]+$/g))&&(e=parseInt(e)+`ms`);let i=0,o=a(r),l=e.toLowerCase().replace(/[^.\w+-]+/g,``).match(/[-+]?[0-9.]+[a-z]+/g);if(l===null)throw Error(`The value [${e}] could not be parsed by timestring`);return l.forEach(e=>{let t=e.match(/[0-9.]+/g)[0],n=e.match(/[a-z]+/g)[0];i+=s(t,n,o)}),t?c(i,t,o):i}function a(e){let t={ms:.001,s:1,m:60,h:3600};return t.d=e.hoursPerDay*t.h,t.w=e.daysPerWeek*t.d,t.mth=e.daysPerYear/e.monthsPerYear*t.d,t.y=e.daysPerYear*t.d,t}function o(e){for(let t of Object.keys(r))if(r[t].indexOf(e)>-1)return t;throw Error(`The unit [${e}] is not supported by timestring`)}function s(e,t,n){return e*n[o(t)]}function c(e,t,n){return e/n[o(t)]}}))());function rt({open:e,ttl:t,onClose:n}){let r=s(e=>e.strings),[i,a]=(0,Z.useState)(-1),[c,l]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{if(!e)return;let n=t??-1;if(a(n),typeof n==`number`&&n>0)try{let e=re.getState().getHumanizeDurationOptions();l((0,Ne.default)(n*1e3,{...e,delimiter:` `}))}catch{l(``)}else l(``)},[e,t]);let u=e=>{l(e);try{a((0,nt.default)(String(e),`s`))}catch{}};return e?(0,Y.jsxs)(he,{open:!0,onClose:()=>n(),width:`600px`,title:r?.confirm?.ttl?.title,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(fe,{variant:`contained`,color:`error`,size:`small`,onClick:()=>n(),children:[(0,Y.jsx)(_e,{fontSize:`small`}),(0,Y.jsx)(`span`,{style:{marginLeft:3},children:r?.intention?.cancel})]}),(0,Y.jsxs)(fe,{variant:`contained`,color:`primary`,size:`small`,onClick:()=>{let e=Number(i);isNaN(e)&&(e=Math.round(e)),n({model:{ttl:e}})},children:[(0,Y.jsx)(ke,{fontSize:`small`}),(0,Y.jsx)(`span`,{style:{marginLeft:3},children:r?.intention?.ttl})]})]}),children:[(0,Y.jsx)(o,{sx:{mb:2},children:r?.confirm?.ttl?.textContent}),(0,Y.jsx)(p,{fullWidth:!0,margin:`dense`,type:`number`,label:r?.confirm?.ttl?.placeholder,value:i,onChange:e=>a(e.target.value===``?``:Number(e.target.value)),placeholder:r?.confirm?.ttl?.placeholderPlaceholder??`-1`,slotProps:{htmlInput:{min:-1}}}),(0,Y.jsx)(p,{fullWidth:!0,margin:`dense`,label:r?.confirm?.ttl?.convertTextToTime,value:c,onChange:e=>u(e.target.value),placeholder:r?.confirm?.ttl?.convertTextToTimePlaceholder??`1h 30m`}),(0,Y.jsx)(fe,{variant:`text`,color:`secondary`,size:`small`,sx:{mt:1,textTransform:`none`},onClick:()=>window.open(`https://www.npmjs.com/package/timestring#keywords`,`_blank`),children:`https://www.npmjs.com/package/timestring`})]}):null}function it({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:a,onRefresh:c}){let l=s(e=>e.strings),d=G(e=>e.connection),{toast:f,confirm:p,generalHandleError:m}=K(),h=i(),_=d?.readonly===!0,y=h.palette.mode===`dark`,[x,S]=(0,Z.useState)(()=>Ie(t?Object.keys(t).length:0)),[C,w]=(0,Z.useState)([]),[T,E]=(0,Z.useState)(!1),[A,M]=(0,Z.useState)(null),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)(``),[L,R]=(0,Z.useState)(!1),[z,ee]=(0,Z.useState)(``),[V,H]=(0,Z.useState)(-1),[U,W]=(0,Z.useState)({}),ne=(0,Z.useRef)(0),[ie,ae]=(0,Z.useState)(0),oe=(0,Z.useRef)(c);oe.current=c;let se=(0,Z.useCallback)(async e=>{if(!(!t||!Ce(G.getState().info?.server?.redis_version).isAtLeast(8,0)))try{let t=(e||C).map(e=>e.key);if(t.length===0)return;let n=await q({action:`hash-field/ttls`,payload:{key:r,fields:t}});W(n.fieldTtls||{}),ne.current=Date.now()}catch{W({})}},[t,r,C]);(0,Z.useEffect)(()=>{if(document.getElementById(`p3xr-hash-ttl-pulse-css`))return;let e=document.createElement(`style`);e.id=`p3xr-hash-ttl-pulse-css`,e.textContent=`@keyframes p3xr-hash-ttl-pulse { 0%, 100% { opacity: 0.3; } 50% { opacity: 1; } }`,document.head.appendChild(e)},[]),(0,Z.useEffect)(()=>{if(!Object.values(U).some(e=>e>0))return;let e=setInterval(()=>{let t=Math.floor((Date.now()-ne.current)/1e3);if(Object.values(U).some(e=>e>0&&e-t<=0)){clearInterval(e),oe.current();return}ae(e=>e+1)},1e3);return()=>clearInterval(e)},[U]),(0,Z.useEffect)(()=>{if(!t)return;let e=Object.keys(t),n=Le(x,e.length);S(n);let r=e.slice(n.startIndex,n.endIndex).map(e=>({key:e,value:t[e]}));w(r),se(r)},[t]);let ce=(0,Z.useCallback)(e=>{if(S(e),!t){w([]);return}let n=Object.keys(t).slice(e.startIndex,e.endIndex).map(e=>({key:e,value:t[e]}));w(n),se(n)},[t,se]),le=(0,Z.useCallback)(()=>{M({type:`append`,model:{type:`hash`,key:r}}),E(!0)},[r]),ue=(0,Z.useCallback)(async e=>{try{await p({message:l?.confirm?.deleteHashKey??l?.confirm?.areYouSure??`Are you sure?`}),await q({action:`key/hash-delete-field`,payload:{key:r,hashKey:e}}),f(l?.status?.deletedHashKey),c()}catch(e){m(e)}},[r,l,p,f,c,m]),de=(0,Z.useCallback)((e,t)=>{let i=typeof t==`string`&&t.length>=G.getState().maxValueAsBuffer?n?.[e]:t;M({type:`edit`,model:{type:`hash`,key:r,hashKey:e,value:i}}),E(!0)},[r,n]),fe=(0,Z.useCallback)(e=>{E(!1),M(null),e&&c()},[c]),pe=(0,Z.useCallback)(async e=>{try{let t=await q({action:`hash-field/ttl-get`,payload:{key:r,field:e}});ee(e),H(t.ttl??-1),R(!0)}catch(e){m(e)}},[r,m]),me=(0,Z.useCallback)(async e=>{if(R(!1),e)try{await q({action:`hash-field/ttl`,payload:{key:r,field:z,ttl:e.model.ttl}}),f(`${z}: TTL ${e.model.ttl===-1?`removed`:e.model.ttl+`s`}`),se()}catch(e){m(e)}},[r,z,f,m,se]),he=e=>{let t=U[e];if(!t||t<=0)return-1;let n=t-Math.floor((Date.now()-ne.current)/1e3);return n>0?n:-1},ge=e=>{let t=he(e);return t<=0?``:t<300?`#f44336`:t<3600?`#ff9800`:`#4caf50`},_e=e=>he(e)>0&&he(e)<30,ve=e=>he(e)>0,J=e=>{let t=he(e);if(t<=0)return``;let n=re.getState().getHumanizeDurationOptions();return(0,Ne.default)(t*1e3,{...n,largest:2,round:!0,delimiter:` `})},ye=y?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,be=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,xe=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`,Se=e=>({fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:e,"&:hover":{opacity:1}});return(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:x,onPageChange:ce}),(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:h.palette.primary.main,color:h.palette.primary.contrastText,borderBottom:`2px solid ${xe}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`},children:l?.page?.key?.hash?.table?.hashkey??`Hash Key`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`},children:l?.page?.key?.hash?.table?.value??`Value`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,display:`flex`,justifyContent:`flex-end`,alignItems:`center`},children:!_&&(0,Y.jsx)(u,{title:l?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:le})})})]}),C.map((e,t)=>(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,gap:1,px:2,py:`6px`,borderBottom:`1px solid ${xe}`,bgcolor:t%2==0?be:`transparent`,"&:hover":{bgcolor:`${ye} !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,cursor:`pointer`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,userSelect:`text`},onClick:()=>de(e.key,e.value),children:e.key}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`,cursor:`pointer`,overflow:`auto`,maxHeight:200,...a===`hex`?{}:{whiteSpace:`pre-wrap`,wordBreak:`break-all`,fontFamily:`'Roboto Mono', monospace`},userSelect:`text`},onClick:()=>de(e.key,e.value),children:a===`hex`?(0,Y.jsx)(Qe,{value:Q(e.value),truncated:$(e.value)}):(0,Y.jsxs)(Y.Fragment,{children:[Q(Be(e.value,a)),$(e.value)&&(0,Y.jsx)(`span`,{style:{opacity:.5},children:`...`})]})}),(0,Y.jsxs)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,whiteSpace:`nowrap`},children:[!_&&Ce(G.getState().info?.server?.redis_version).isAtLeast(8,0)&&(0,Y.jsx)(u,{title:ve(e.key)?`TTL: ${J(e.key)}`:l?.intention?.ttl,children:(0,Y.jsx)(D,{style:{fontSize:24,cursor:`pointer`,marginLeft:2,marginRight:2,color:ge(e.key)||void 0,opacity:ve(e.key)?.7:.3,animation:_e(e.key)?`p3xr-hash-ttl-pulse 1s infinite`:`none`},onClick:()=>pe(e.key)})}),!_&&(0,Y.jsx)(u,{title:l?.intention?.delete,children:(0,Y.jsx)(v,{sx:Se(`error.main`),onClick:()=>ue(e.key)})}),(0,Y.jsx)(u,{title:l?.intention?.jsonViewShow,children:(0,Y.jsx)(O,{sx:Se(`secondary.main`),onClick:()=>{I(String(e.value??``)),P(!0)}})}),(0,Y.jsx)(u,{title:l?.intention?.copy,children:(0,Y.jsx)(j,{sx:Se(`secondary.main`),onClick:()=>Ve(e.value)})}),(0,Y.jsx)(u,{title:l?.intention?.downloadBuffer,children:(0,Y.jsx)(te,{sx:Se(`secondary.main`),onClick:()=>He(n?.[e.key],r,`${r}-${e.key}`)})}),!_&&(0,Y.jsx)(u,{title:l?.intention?.edit,children:(0,Y.jsx)(B,{sx:Se(`primary.main`),onClick:()=>de(e.key,e.value)})})]})]},e.key))]}),(0,Y.jsx)(k,{open:T,data:A,onClose:fe}),(0,Y.jsx)(b,{open:N,value:F,onClose:()=>P(!1)}),(0,Y.jsx)(rt,{open:L,ttl:V,onClose:me})]})}function at({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:a,onRefresh:c}){let l=s(e=>e.strings),d=G(e=>e.connection),{toast:f,confirm:p,generalHandleError:m}=K(),h=i(),_=d?.readonly===!0,y=h.palette.mode===`dark`,[x,S]=(0,Z.useState)(()=>Ie(t?.length??0)),[C,w]=(0,Z.useState)([]),[T,E]=(0,Z.useState)(!1),[D,A]=(0,Z.useState)(null),[M,N]=(0,Z.useState)(!1),[P,F]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{if(!t)return;let e=Le(x,t.length);S(e),w(t.slice(e.startIndex,e.endIndex).map((t,n)=>({index:e.startIndex+n,value:t})))},[t]);let I=(0,Z.useCallback)(e=>{if(S(e),!t){w([]);return}w(t.slice(e.startIndex,e.endIndex).map((t,n)=>({index:e.startIndex+n,value:t})))},[t]),L=(0,Z.useCallback)(()=>{A({type:`append`,model:{type:`set`,key:r}}),E(!0)},[r]),R=(0,Z.useCallback)(async e=>{try{await p({message:l?.confirm?.deleteSetMember??l?.confirm?.areYouSure??`Are you sure?`}),await q({action:`key/set-delete-member`,payload:{key:r,value:n?.[e]}}),f(l?.status?.deletedSetMember),c()}catch(e){m(e)}},[r,n,l,p,f,c,m]),z=(0,Z.useCallback)((e,t)=>{let i=typeof t==`string`&&t.length>=G.getState().maxValueAsBuffer?n?.[e]:t;A({type:`edit`,model:{type:`set`,key:r,value:i}}),E(!0)},[r,n]),ee=(0,Z.useCallback)(e=>{E(!1),A(null),e&&c()},[c]),V=y?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,H=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,U=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`,W=e=>({fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:e,"&:hover":{opacity:1}});return(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:x,onPageChange:I}),(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:h.palette.primary.main,color:h.palette.primary.contrastText,borderBottom:`2px solid ${U}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`95%`},children:l?.page?.key?.set?.table?.value??`Member`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`5%`,textAlign:`right`,display:`flex`,justifyContent:`flex-end`,alignItems:`center`},children:!_&&(0,Y.jsx)(u,{title:l?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:L})})})]}),C.map((e,t)=>(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,gap:1,px:2,py:`6px`,borderBottom:`1px solid ${U}`,bgcolor:t%2==0?H:`transparent`,"&:hover":{bgcolor:`${V} !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`95%`,cursor:`pointer`,overflow:`auto`,maxHeight:200,...a===`hex`?{}:{whiteSpace:`pre-wrap`,wordBreak:`break-all`,fontFamily:`'Roboto Mono', monospace`},userSelect:`text`},onClick:()=>z(e.index,e.value),children:a===`hex`?(0,Y.jsx)(Qe,{value:Q(e.value),truncated:$(e.value)}):(0,Y.jsxs)(Y.Fragment,{children:[Q(Be(e.value,a)),$(e.value)&&(0,Y.jsx)(`span`,{style:{opacity:.5},children:`...`})]})}),(0,Y.jsxs)(o,{component:`span`,sx:{flex:`5%`,textAlign:`right`,whiteSpace:`nowrap`},children:[!_&&(0,Y.jsx)(u,{title:l?.intention?.delete,children:(0,Y.jsx)(v,{sx:W(`error.main`),onClick:()=>R(e.index)})}),(0,Y.jsx)(u,{title:l?.intention?.jsonViewShow,children:(0,Y.jsx)(O,{sx:W(`secondary.main`),onClick:()=>{F(String(e.value??``)),N(!0)}})}),(0,Y.jsx)(u,{title:l?.intention?.copy,children:(0,Y.jsx)(j,{sx:W(`secondary.main`),onClick:()=>Ve(e.value)})}),(0,Y.jsx)(u,{title:l?.intention?.downloadBuffer,children:(0,Y.jsx)(te,{sx:W(`secondary.main`),onClick:()=>He(n?.[e.index],r)})}),!_&&(0,Y.jsx)(u,{title:l?.intention?.edit,children:(0,Y.jsx)(B,{sx:W(`primary.main`),onClick:()=>z(e.index,e.value)})})]})]},e.index))]}),(0,Y.jsx)(k,{open:T,data:D,onClose:ee}),(0,Y.jsx)(b,{open:M,value:P,onClose:()=>N(!1)})]})}function ot(e,t){if(!e)return[];let n=[];for(let t=0;t<e.length;t+=2)n.push({member:e[t],score:e[t+1],index:t/2});return n.slice(t.startIndex,t.endIndex)}function st({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:a,onRefresh:c}){let l=s(e=>e.strings),d=G(e=>e.connection),{toast:f,confirm:p,generalHandleError:m}=K(),h=i(),_=d?.readonly===!0,y=h.palette.mode===`dark`,[x,S]=(0,Z.useState)(()=>Ie(t?.length??0,!0)),[C,w]=(0,Z.useState)([]),[T,E]=(0,Z.useState)(!1),[D,A]=(0,Z.useState)(null),[M,N]=(0,Z.useState)(!1),[P,F]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{if(!t)return;let e=Le(x,t.length,!0);S(e),w(ot(t,e))},[t]);let I=(0,Z.useCallback)(e=>{S(e),w(ot(t,e))},[t]),L=(0,Z.useCallback)(()=>{A({type:`append`,model:{type:`zset`,key:r}}),E(!0)},[r]),R=(0,Z.useCallback)(async e=>{try{await p({message:l?.confirm?.deleteZSetMember??l?.confirm?.areYouSure??`Are you sure?`}),await q({action:`key/zset-delete-member`,payload:{key:r,value:n?.[e.index*2]}}),f(l?.status?.deletedZSetMember),c()}catch(e){m(e)}},[r,n,l,p,f,c,m]),z=(0,Z.useCallback)(e=>{let t=typeof e.member==`string`&&e.member.length>=G.getState().maxValueAsBuffer?n?.[e.index*2]:e.member;A({type:`edit`,model:{type:`zset`,key:r,value:t,score:e.score}}),E(!0)},[r,n]),ee=(0,Z.useCallback)(e=>{E(!1),A(null),e&&c()},[c]),V=y?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,H=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,U=y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`,W=e=>({fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:e,"&:hover":{opacity:1}});return(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:x,onPageChange:I}),(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:h.palette.primary.main,color:h.palette.primary.contrastText,borderBottom:`2px solid ${U}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`},children:l?.page?.key?.zset?.table?.score??`Score`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`},children:l?.page?.key?.zset?.table?.value??`Member`}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,display:`flex`,justifyContent:`flex-end`,alignItems:`center`},children:!_&&(0,Y.jsx)(u,{title:l?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:L})})})]}),C.map((e,t)=>(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,gap:1,px:2,py:`6px`,borderBottom:`1px solid ${U}`,bgcolor:t%2==0?H:`transparent`,"&:hover":{bgcolor:`${V} !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,cursor:`pointer`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,userSelect:`text`},onClick:()=>z(e),children:e.score}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`60%`,cursor:`pointer`,overflow:`auto`,maxHeight:200,...a===`hex`?{}:{whiteSpace:`pre-wrap`,wordBreak:`break-all`,fontFamily:`'Roboto Mono', monospace`},userSelect:`text`},onClick:()=>z(e),children:a===`hex`?(0,Y.jsx)(Qe,{value:Q(e.member),truncated:$(e.member)}):(0,Y.jsxs)(Y.Fragment,{children:[Q(Be(e.member,a)),$(e.member)&&(0,Y.jsx)(`span`,{style:{opacity:.5},children:`...`})]})}),(0,Y.jsxs)(o,{component:`span`,sx:{flex:`20%`,textAlign:`right`,whiteSpace:`nowrap`},children:[!_&&(0,Y.jsx)(u,{title:l?.intention?.delete,children:(0,Y.jsx)(v,{sx:W(`error.main`),onClick:()=>R(e)})}),(0,Y.jsx)(u,{title:l?.intention?.jsonViewShow,children:(0,Y.jsx)(O,{sx:W(`secondary.main`),onClick:()=>{F(String(e.member??``)),N(!0)}})}),(0,Y.jsx)(u,{title:l?.intention?.copy,children:(0,Y.jsx)(j,{sx:W(`secondary.main`),onClick:()=>Ve(e.member)})}),(0,Y.jsx)(u,{title:l?.intention?.downloadBuffer,children:(0,Y.jsx)(te,{sx:W(`secondary.main`),onClick:()=>He(n?.[e.index*2],r)})}),!_&&(0,Y.jsx)(u,{title:l?.intention?.edit,children:(0,Y.jsx)(B,{sx:W(`primary.main`),onClick:()=>z(e)})})]})]},e.index))]}),(0,Y.jsx)(k,{open:T,data:D,onClose:ee}),(0,Y.jsx)(b,{open:M,value:P,onClose:()=>N(!1)})]})}var ct={zn:`zh-CN`,no:`nb`,fil:`tl`};function lt(e){try{return JSON.parse(e)}catch{return e}}function ut(e){let t=new Set;for(let[n]of e){if(t.has(n))return!0;t.add(n)}return!1}function dt(e){let t={};for(let[n,r]of e)t[n]=lt(r);return t}function ft(e){return e.map(([e,t])=>({field:e,value:lt(t)}))}function pt(e){return e?e.map(e=>{let t=e[0],n=e[1],r=[];for(let e=0;e<n.length;e+=2)r.push([n[e],n[e+1]]);let i=ut(r);return{id:t,fields:r,data:i?ft(r):dt(r),hasDuplicateFields:i}}):[]}function mt(e){return e.hasDuplicateFields?{id:e.id,fields:e.data}:{id:e.id,...e.data}}function ht({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:a,onRefresh:c}){let l=s(e=>e.strings),d=s(e=>e.currentLang),f=G(e=>e.connection),{toast:p,confirm:m,generalHandleError:h}=K(),_=i(),y=f?.readonly===!0,x=_.palette.mode===`dark`,[S,C]=(0,Z.useState)([]),[w,T]=(0,Z.useState)(()=>Ie(0)),[E,D]=(0,Z.useState)([]),[A,M]=(0,Z.useState)(!1),[N,P]=(0,Z.useState)(null),[F,I]=(0,Z.useState)(!1),[L,R]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{let e=pt(t);C(e);let n=Le(w,e.length);T(n),D(e.slice(n.startIndex,n.endIndex))},[t]);let z=(0,Z.useCallback)(e=>{T(e),D(S.slice(e.startIndex,e.endIndex))},[S]),B=(0,Z.useCallback)(e=>{try{let t=parseInt(e.slice(0,e.indexOf(`-`))),n=d||`en`,r=ct[n]||n;return new Date(t).toLocaleString(r,{year:`numeric`,month:`numeric`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}catch{return e}},[d]),ee=(0,Z.useCallback)(()=>{P({type:`append`,model:{type:`stream`,key:r}}),M(!0)},[r]),V=(0,Z.useCallback)(async e=>{try{await m({message:l?.confirm?.deleteStreamTimestamp??l?.confirm?.areYouSure??`Are you sure?`}),await q({action:`key/stream-delete-timestamp`,payload:{key:r,streamTimestamp:e}}),p(l?.status?.deletedStreamTimestamp??l?.status?.deletedKey),c()}catch(e){e&&h(e)}},[r,l,m,p,c,h]),H=(0,Z.useCallback)(e=>{Ve(JSON.stringify(mt(e),null,2))},[]),U=(0,Z.useCallback)(e=>{let t=[e.id];for(let[n,r]of e.fields)t.push(n),t.push(r);let n=new Blob([t.join(`
`)],{type:`text/plain`}),i=URL.createObjectURL(n),a=document.createElement(`a`);a.href=i,a.download=`${r}-${e.id}.txt`,a.click(),URL.revokeObjectURL(i)},[r]),W=(0,Z.useCallback)(e=>{R(JSON.stringify(mt(e))),I(!0)},[]),ne=(0,Z.useCallback)(e=>{M(!1),P(null),e&&c()},[c]),re=x?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,ie=x?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,ae=x?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`,oe=e=>({fontSize:24,cursor:`pointer`,mx:`2px`,opacity:.7,color:e,"&:hover":{opacity:1}});return(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:w,onPageChange:z}),(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:_.palette.primary.main,color:_.palette.primary.contrastText,borderBottom:`2px solid ${ae}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1},children:l?.page?.key?.stream?.table?.timestamp??`Timestamp ID`}),(0,Y.jsx)(o,{component:`span`,sx:{textAlign:`right`},children:!y&&(0,Y.jsx)(u,{title:l?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:ee})})})]}),E.map((e,t)=>(0,Y.jsxs)(o,{sx:{borderBottom:`1px solid ${ae}`,bgcolor:t%2==0?re:`transparent`,"&:hover":{bgcolor:`${ie} !important`}},children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,px:2,py:`6px`,fontSize:13},children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1.5},children:[(0,Y.jsx)(`strong`,{children:e.id}),(0,Y.jsx)(o,{component:`span`,sx:{opacity:.5,fontSize:12},children:B(e.id)})]}),(0,Y.jsxs)(o,{sx:{whiteSpace:`nowrap`},children:[!y&&(0,Y.jsx)(u,{title:l?.intention?.delete,children:(0,Y.jsx)(v,{sx:oe(`error.main`),onClick:()=>V(e.id)})}),(0,Y.jsx)(u,{title:l?.intention?.jsonViewShow,children:(0,Y.jsx)(O,{sx:oe(`secondary.main`),onClick:()=>W(e)})}),(0,Y.jsx)(u,{title:l?.intention?.copy,children:(0,Y.jsx)(j,{sx:oe(`secondary.main`),onClick:()=>H(e)})}),(0,Y.jsx)(u,{title:l?.intention?.downloadBuffer,children:(0,Y.jsx)(te,{sx:oe(`secondary.main`),onClick:()=>U(e)})})]})]}),(0,Y.jsx)(o,{sx:{px:2,pb:1,overflow:`auto`,maxHeight:300},children:e.fields.map(([e,t],n)=>(0,Y.jsxs)(o,{sx:{display:`flex`,gap:1,py:`2px`},children:[(0,Y.jsx)(o,{component:`span`,sx:{minWidth:120,opacity:.7},children:e}),(0,Y.jsx)(o,{component:`span`,sx:{flex:1,maxHeight:200,overflow:`auto`,...a===`hex`?{}:{whiteSpace:`pre-wrap`,wordBreak:`break-all`,fontFamily:`'Roboto Mono', monospace`}},children:a===`hex`?(0,Y.jsx)(Qe,{value:Q(t),truncated:$(t)}):(0,Y.jsxs)(Y.Fragment,{children:[Q(Be(t,a)),$(t)&&(0,Y.jsx)(`span`,{style:{opacity:.5},children:`...`})]})})]},`${e}-${n}`))})]},e.id))]}),(0,Y.jsx)(k,{open:A,data:N,onClose:ne}),(0,Y.jsx)(b,{open:F,value:L,onClose:()=>I(!1)})]})}function gt(e,t){if(t===null)return{key:e,value:null,type:`null`};if(Array.isArray(t)){let n=t.map((e,t)=>gt(String(t),e));return{key:e,value:t,type:`array`,children:n,childCount:n.length}}if(typeof t==`object`){let n=Object.keys(t).map(e=>gt(e,t[e]));return{key:e,value:t,type:`object`,children:n,childCount:n.length}}return{key:e,value:t,type:typeof t}}function _t(e){return e.type===`null`?`null`:e.type===`string`?`"${e.value}"`:String(e.value)}function vt(){let{palette:e}=i(),t=e.mode===`dark`;return{key:t?`white`:`black`,string:e.secondary.main,number:e.primary.main,boolean:e.error.main,null:t?`rgba(255,255,255,0.4)`:`rgba(0,0,0,0.4)`}}function yt({node:e,level:t,expandedKeys:n,toggleExpand:r,wrap:i}){let a=vt(),s=`${t}-${e.key}`,c=e.type===`object`||e.type===`array`,l=n.has(s),u=c?void 0:a[e.type]??`inherit`;return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,minHeight:24,lineHeight:1.6,pl:`${t*20}px`,fontFamily:`'Roboto Mono', monospace`,fontSize:13},children:[c?(0,Y.jsx)(o,{component:`span`,onClick:()=>r(s),sx:{width:24,height:24,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,cursor:`pointer`,flexShrink:0,opacity:.6},children:l?(0,Y.jsx)(z,{sx:{fontSize:18}}):(0,Y.jsx)(R,{sx:{fontSize:18}})}):(0,Y.jsx)(o,{sx:{width:24,height:24,flexShrink:0}}),(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`flex-start`,gap:`6px`,flex:1,minWidth:0,flexWrap:`nowrap`},children:[(0,Y.jsxs)(o,{component:`span`,sx:{flexShrink:0,whiteSpace:`nowrap`},children:[(0,Y.jsx)(o,{component:`span`,sx:{fontWeight:`bold`,color:a.key},children:e.key}),(0,Y.jsx)(o,{component:`span`,sx:{opacity:.6},children:`:`})]}),c?l?null:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(o,{component:`span`,sx:{opacity:.5},children:e.type===`array`?`[`:`{`}),(0,Y.jsx)(o,{component:`span`,sx:{opacity:.4},children:`...`}),(0,Y.jsx)(o,{component:`span`,sx:{opacity:.5},children:e.type===`array`?`]`:`}`}),(0,Y.jsxs)(o,{component:`span`,sx:{opacity:.4,fontSize:11,ml:`4px`},children:[`(`,e.childCount,`)`]})]}):(0,Y.jsx)(o,{component:`span`,sx:{wordBreak:i?`break-word`:`normal`,whiteSpace:i?`normal`:`nowrap`,minWidth:0,color:u,fontStyle:e.type===`null`?`italic`:`normal`},children:_t(e)})]})]}),c&&l&&e.children?.map((e,a)=>(0,Y.jsx)(yt,{node:e,level:t+1,expandedKeys:n,toggleExpand:r,wrap:i},`${e.key}-${a}`))]})}function bt({response:e,value:t,valueBuffer:n,keyName:r,valueFormat:i,onRefresh:a}){let c=s(e=>e.strings),l=G(e=>e.connection),{toast:d,generalHandleError:f}=K(),p=ve(),m=de(`(min-width: 960px)`),h=l?.readonly===!0,[g,_]=(0,Z.useState)(void 0),[v,y]=(0,Z.useState)(!0),[b,x]=(0,Z.useState)(new Set),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(!1),[D,O]=(0,Z.useState)({oldValue:``,newValue:``}),k=(0,Z.useRef)(null),A=c?.label?.tree??`root`;(0,Z.useEffect)(()=>{try{let e=JSON.parse(t);_(e),x(new Set([`0-${A}`]))}catch{_(void 0)}},[t,A]);let P=(0,Z.useCallback)(e=>{x(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),I=(0,Z.useCallback)(()=>{if(g===void 0)return;let e=gt(A,g),t=new Set,n=(e,r)=>{let i=`${r}-${e.key}`;(e.type===`object`||e.type===`array`)&&(t.add(i),e.children?.forEach(e=>n(e,r+1)))};n(e,0),x(t)},[g,A]),L=(0,Z.useCallback)(()=>{x(new Set([`0-${A}`]))},[A]),R=(0,Z.useCallback)(()=>Ve(t),[t]),z=(0,Z.useCallback)(()=>{let e=new Blob([t],{type:`application/json`}),n=URL.createObjectURL(e),i=document.createElement(`a`);i.href=n,i.download=`${r}.json`,i.click(),URL.revokeObjectURL(n)},[t,r]);(0,Z.useCallback)((e,t)=>!re.getState().showDiffBeforeSave||e===t?Promise.resolve(!0):(O({oldValue:e,newValue:t}),T(!0),new Promise(e=>{k.current=e})),[]);let ee=(0,Z.useCallback)(async e=>{if(C(!1),!e?.obj)return;let n=t;try{let t=typeof e.obj==`string`?e.obj:JSON.stringify(e.obj);p.show(),await q({action:`key/json-set`,payload:{key:r,path:`$`,value:t}}),pe(`/key-json-set`),a(),p.hide(),re.getState().undoEnabled&&n!==void 0&&n!==t&&await K.getState().toastWithUndo(c?.status?.set)&&(p.show({message:`Undo...`}),await q({action:`key/json-set`,payload:{key:r,path:`$`,value:n}}),a(),p.hide(),K.getState().toast(c?.status?.reverted))}catch(e){e&&f(e),p.hide()}},[r,c,t,a,f]),V=({icon:e,label:t,color:n=`secondary`,onClick:r})=>m?(0,Y.jsxs)(fe,{variant:`contained`,color:n,onClick:r,children:[e,(0,Y.jsx)(`span`,{children:t})]}):(0,Y.jsx)(u,{title:t,placement:`top`,children:(0,Y.jsx)(fe,{variant:`contained`,color:n,onClick:r,sx:{minWidth:40,width:40,height:40,p:0,borderRadius:`4px`},children:e})}),H=g===void 0?null:gt(A,g);return(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{className:`p3xr-key-type-actions`,children:[(0,Y.jsx)(V,{icon:(0,Y.jsx)(j,{fontSize:`small`}),label:c?.intention?.copy,onClick:R}),(0,Y.jsx)(V,{icon:(0,Y.jsx)(te,{fontSize:`small`}),label:c?.intention?.downloadJson??`Download JSON`,onClick:z}),(0,Y.jsx)(V,{icon:(0,Y.jsx)(Me,{fontSize:`small`}),label:c?.page?.treeControls?.expandAll,onClick:I}),(0,Y.jsx)(V,{icon:(0,Y.jsx)(je,{fontSize:`small`}),label:c?.page?.treeControls?.collapseAll,onClick:L}),(0,Y.jsx)(V,{icon:v?(0,Y.jsx)(N,{fontSize:`small`}):(0,Y.jsx)(F,{fontSize:`small`}),label:v?c?.intention?.unwrap??`Unwrap`:c?.intention?.wrap??`Wrap`,onClick:()=>y(e=>!e)}),!h&&(0,Y.jsx)(V,{icon:(0,Y.jsx)(B,{fontSize:`small`}),label:c?.intention?.jsonViewEditor,color:`primary`,onClick:()=>C(!0)})]}),(0,Y.jsx)(o,{className:`p3xr-key-type-content`,sx:{overflow:`auto`},children:H?(0,Y.jsx)(yt,{node:H,level:0,expandedKeys:b,toggleExpand:P,wrap:v}):(0,Y.jsx)(o,{className:`p3xr-pre`,children:Q(t)})}),(0,Y.jsx)(M,{open:S,value:String(t??``),hideFormatSave:!0,onClose:ee}),(0,Y.jsx)(E,{open:w,keyName:r,oldValue:D.oldValue,newValue:D.newValue,onConfirm:()=>{T(!1),k.current?.(!0)},onCancel:()=>{T(!1),k.current?.(!1)}})]})}var xt=[`avg`,`min`,`max`,`sum`,`count`,`first`,`last`,`range`,`std.p`,`std.s`,`var.p`,`var.s`],St=[`#1976d2`,`#9c27b0`,`#f44336`,`#4caf50`,`#ff9800`,`#00bcd4`,`#e91e63`,`#8bc34a`];function Ct({response:e,value:t,keyName:n,onRefresh:r}){let a=s(e=>e.strings),c=s(e=>e.currentLang),l=G(e=>e.connection),{toast:h,confirm:_,generalHandleError:b}=K();ve();let x=i();de(`(min-width: 960px)`);let S=l?.readonly===!0,C=x.palette.mode===`dark`,[w,T]=(0,Z.useState)(()=>t||{}),[E,D]=(0,Z.useState)([]),[O,A]=(0,Z.useState)(``),[j,M]=(0,Z.useState)(``),[N,F]=(0,Z.useState)(``),[R,z]=(0,Z.useState)(``),[te,V]=(0,Z.useState)(`*`),[H,U]=(0,Z.useState)(``),[W,re]=(0,Z.useState)(!1),[ae,se]=(0,Z.useState)(!1),[ce,le]=(0,Z.useState)(0),[fe,pe]=(0,Z.useState)(`LAST`),[me,he]=(0,Z.useState)(``),[ge,_e]=(0,Z.useState)(``),[ye,be]=(0,Z.useState)(``),[xe,Ce]=(0,Z.useState)([]),[Te,X]=(0,Z.useState)(!1),[Ee,Oe]=(0,Z.useState)(null),[ke,Ae]=(0,Z.useState)(!1),je=(0,Z.useRef)(null),Me=(0,Z.useRef)(null),Ne=(0,Z.useRef)(null),Pe=(0,Z.useRef)(null),Fe=(0,Z.useRef)(null),Ie=(0,Z.useRef)(null),Le=(0,Z.useRef)(null),Re=(0,Z.useRef)([]),ze=(0,Z.useRef)([]);Re.current=E,ze.current=xe;let Be=P({count:E.length,getScrollElement:()=>Le.current,estimateSize:()=>40,overscan:10}),Q=(0,Z.useMemo)(()=>{if(!w)return[];let e=new Set([`labels`,`rules`,`sourceKey`,`chunks`]);return Object.entries(w).filter(([t])=>!e.has(t)).map(([e,t])=>({key:e,value:t}))},[w]),$=(0,Z.useMemo)(()=>{let e=w?.labels;return!e||typeof e!=`object`?[]:Object.entries(e).map(([e,t])=>({key:e,value:String(t)}))},[w]),Ve=(0,Z.useMemo)(()=>Array.isArray(w?.rules)?w.rules:[],[w]),He=e=>e?e.charAt(0).toUpperCase()+e.slice(1):``,Ue=(0,Z.useCallback)(e=>new Date(e).toLocaleString(c||`en`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,fractionalSecondDigits:3}),[c]),We=(0,Z.useRef)({primary:x.palette.primary.main,isDark:C});We.current={primary:x.palette.primary.main,isDark:C};let Ge=(0,Z.useRef)(c);Ge.current=c;let Ke=(0,Z.useCallback)(()=>{let{primary:e,isDark:t}=We.current;return{primary:e||(t?`#90caf9`:`#1976d2`),text:t?`rgba(255,255,255,0.87)`:`rgba(0,0,0,0.87)`,grid:t?`rgba(255,255,255,0.08)`:`rgba(0,0,0,0.08)`}},[]),qe=(0,Z.useCallback)((e,t)=>{if(t.length===0)return[e.map(e=>e.timestamp/1e3),e.map(e=>e.value)];let n=[e,...t.map(e=>e.data)],r=new Set;for(let e of n)for(let t of e)r.add(t.timestamp);let i=Array.from(r).sort((e,t)=>e-t),a=[i.map(e=>e/1e3)];for(let e of n){let t=new Map;for(let n of e)t.set(n.timestamp,n.value);a.push(i.map(e=>t.has(e)?t.get(e):null))}return a},[]),Je=(0,Z.useCallback)(()=>{Pe.current?.disconnect(),Pe.current=null,Me.current?.destroy(),Me.current=null},[]),Ye=(0,Z.useCallback)(()=>{if(!Ne.current||!je.current)return;Je();let e=je.current,t=e.clientWidth||400,r=Re.current,i=ze.current,o=Ke();Ge.current;let s=[{label:a?.label?.time,value:(e,t)=>t?new Date(t*1e3).toLocaleString(Ge.current||`en`,{year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`}):``},{label:n,stroke:o.primary,width:2,fill:o.primary+`15`}];for(let e=0;e<i.length;e++)s.push({label:i[e].key,stroke:St[(e+1)%St.length],width:2});let c={width:t,height:400,cursor:{show:!0,drag:{x:!1,y:!1}},legend:{show:!0,live:!0},scales:{x:{time:!0}},axes:[{stroke:o.text,grid:{stroke:o.grid,width:1},ticks:{stroke:o.grid},font:`11px Roboto`,values:(e,t)=>t.map(e=>new Date(e*1e3).toLocaleTimeString(Ge.current||`en`,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1}))},{stroke:o.text,grid:{stroke:o.grid,width:1},ticks:{stroke:o.grid},font:`11px Roboto Mono`,size:65}],series:s},l=qe(r,i);Me.current=new Ne.current(c,l,e);let u;Pe.current=new ResizeObserver(()=>{clearTimeout(u),u=setTimeout(()=>{let t=e.clientWidth;t>0&&Me.current?.setSize({width:t,height:400})},50)}),Pe.current.observe(e)},[Je,Ke,qe]),Xe=(0,Z.useCallback)(()=>{if(!Ne.current||!je.current)return;let e=Re.current,t=ze.current,n=2+t.length;if(!Me.current||Me.current.series?.length!==n){Ye();return}let r=qe(e,t);Me.current.setData(r,!0),r[0].length>0&&Me.current.setScale(`x`,{min:r[0][0],max:r[0][r[0].length-1]})},[Ye,qe]),Ze=(0,Z.useCallback)(async()=>{try{let e={key:n};O&&(e.from=O),j&&(e.to=j),N&&R&&(e.aggregation={type:N,timeBucket:parseInt(R,10)});let t=(await q({action:`timeseries/range`,payload:e})).data||[];D(t),Re.current=t;let r=[],i=ge.split(`,`).map(e=>e.trim()).filter(e=>e.length>0);for(let e of i)try{let t={key:e};O&&(t.from=O),j&&(t.to=j),N&&R&&(t.aggregation={type:N,timeBucket:parseInt(R,10)});let n=await q({action:`timeseries/range`,payload:t});r.push({key:e,data:n.data||[]})}catch{}if(ye.trim().length>0)try{let e={filter:ye.trim()};O&&(e.from=O),j&&(e.to=j),N&&R&&(e.aggregation={type:N,timeBucket:parseInt(R,10)});let t=await q({action:`timeseries/mrange`,payload:e});for(let e of t.data||[])e.key!==n&&r.push({key:e.key,data:e.data})}catch{}Ce(r),ze.current=r,setTimeout(()=>Xe(),0)}catch(e){b(e)}},[n,O,j,N,R,ge,ye,Xe,b]),Qe=(0,Z.useCallback)(()=>{clearTimeout(Ie.current),Ie.current=setTimeout(()=>Ze(),500)},[Ze]);(0,Z.useEffect)(()=>{let e=!1;return L(()=>import(`./uPlot.esm-C4ecZUO0.js`).then(t=>{e||(Ne.current=t.default,Ae(!0))}),[]).catch(e=>console.error(`Failed to load uPlot`,e)),()=>{e=!0,Je()}},[]),(0,Z.useEffect)(()=>{if(T(t||{}),Ze(),!S){let e=t?.labels;(e&&typeof e==`object`?Object.keys(e).length:0)===0&&q({action:`timeseries/alter`,payload:{key:n,labels:`key ${n}`}}).then(()=>{T(e=>({...e,labels:{key:n}}))}).catch(()=>{})}},[t]),(0,Z.useEffect)(()=>{if(!ke)return;let e=setTimeout(()=>{Me.current?Xe():Ye()},150);return()=>clearTimeout(e)},[ke,E]);let $e=x.palette.primary.main;(0,Z.useEffect)(()=>{if(!ke)return;let e=setTimeout(()=>{Je(),Ye()},100);return()=>clearTimeout(e)},[C,c,$e]),(0,Z.useEffect)(()=>(W?Fe.current=setInterval(()=>Ze(),1e4):clearInterval(Fe.current),()=>clearInterval(Fe.current)),[W,Ze]);let et=(0,Z.useCallback)(async()=>{if(H)try{await q({action:`timeseries/add`,payload:{key:n,timestamp:te||`*`,value:parseFloat(H)}}),h(a?.status?.added),U(``),r()}catch(e){b(e)}},[n,te,H,a,h,r,b]),tt=(0,Z.useCallback)(async e=>{try{await _({message:a?.confirm?.delete}),await q({action:`timeseries/del`,payload:{key:n,from:e.timestamp,to:e.timestamp}}),h(a?.status?.deleted),r()}catch(e){e!=null&&b(e)}},[n,a,_,h,r,b]),nt=(0,Z.useCallback)(e=>{Oe({type:`edit`,model:{type:`timeseries`,key:n,tsTimestamp:String(e.timestamp),value:e.value,originalTimestamp:e.timestamp}}),X(!0)},[n]),rt=(0,Z.useCallback)(()=>{let e=E.map(e=>`${e.timestamp} ${e.value}`).join(`
`),t=$.map(e=>`${e.key} ${e.value}`).join(` `)||`key ${n}`;Oe({type:`edit`,model:{type:`timeseries`,key:n,value:e,tsEditAll:!0,tsLabels:t}}),X(!0)},[E,$,n]),it=(0,Z.useCallback)(e=>{X(!1),Oe(null),e&&(r(),Ze())},[r,Ze]),at=(0,Z.useCallback)(()=>{se(e=>{if(!e){le(w?.retentionTime||0),pe((w?.duplicatePolicy||`LAST`).toUpperCase());let e=$.map(e=>`${e.key} ${e.value}`).join(` `);he(e||`key ${n}`)}return!e})},[w,$,n]),ot=(0,Z.useCallback)(async()=>{try{let e=me.trim().length>0?me:`key ${n}`;await q({action:`timeseries/alter`,payload:{key:n,retention:ce,duplicatePolicy:fe,labels:e}}),h(a?.status?.saved),se(!1),r()}catch(e){b(e)}},[n,ce,fe,me,a,h,r,b]),st=(0,Z.useCallback)(()=>{if(!Me.current||!je.current)return;let e=je.current.querySelector(`canvas`);if(!e)return;let t=C?`#1e1e1e`:`#ffffff`,r=C?`rgba(255,255,255,0.87)`:`rgba(0,0,0,0.87)`,i=e.width+40,a=e.height+40+30+30,o=document.createElement(`canvas`);o.width=i,o.height=a;let s=o.getContext(`2d`);s.fillStyle=t,s.fillRect(0,0,i,a),s.fillStyle=r,s.font=`bold 14px Roboto, sans-serif`,s.fillText(n,20,36),s.drawImage(e,20,50);let c=[n,...xe.map(e=>e.key)],l=[Ke().primary,...xe.map((e,t)=>St[(t+1)%St.length])],u=20,d=50+e.height+16;s.font=`12px Roboto, sans-serif`;for(let e=0;e<c.length;e++)s.fillStyle=l[e],s.fillRect(u,d-8,12,12),s.fillStyle=r,s.fillText(c[e],u+16,d+2),u+=s.measureText(c[e]).width+32;let f=o.toDataURL(`image/png`),p=document.createElement(`a`);p.href=f,p.download=`${n}-chart.png`,p.click()},[n,xe,C,Ke]),ct=C?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`,lt=C?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.04)`,ut=C?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.06)`,dt=e=>({fontSize:18,cursor:`pointer`,mx:`2px`,opacity:.7,color:e,"&:hover":{opacity:1}}),ft={minWidth:140,maxWidth:200,"& .MuiInputBase-input":{fontSize:13},"& .MuiInputLabel-root":{fontSize:13}};return(0,Y.jsxs)(o,{className:`p3xr-key-type-content`,children:[(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:a?.page?.key?.timeseries?.chart,accordionKey:`ts-chart`,actions:(0,Y.jsxs)(Y.Fragment,{children:[!S&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(B,{sx:{fontSize:18}}),label:a?.intention?.edit,breakpoint:1280,color:`inherit`,onClick:e=>{e.stopPropagation(),rt()}}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(De,{sx:{fontSize:18}}),label:a?.page?.key?.timeseries?.exportChart,breakpoint:1280,color:`inherit`,onClick:e=>{e.stopPropagation(),st()}}),(0,Y.jsx)(J,{icon:W?(0,Y.jsx)(ue,{sx:{fontSize:18}}):(0,Y.jsx)(oe,{sx:{fontSize:18}}),label:a?.label?.autoRefresh,breakpoint:1280,color:`inherit`,onClick:e=>{e.stopPropagation(),re(e=>!e)}}),!W&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(ne,{sx:{fontSize:18}}),label:a?.intention?.refresh,breakpoint:1280,color:`inherit`,onClick:e=>{e.stopPropagation(),Ze()}})]}),children:(0,Y.jsxs)(o,{sx:{p:2},children:[(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1,py:1},children:[(0,Y.jsx)(p,{size:`small`,sx:ft,label:a?.page?.key?.timeseries?.from,placeholder:`-`,value:O,onChange:e=>{A(e.target.value),Qe()}}),(0,Y.jsx)(p,{size:`small`,sx:ft,label:a?.page?.key?.timeseries?.to,placeholder:`+`,value:j,onChange:e=>{M(e.target.value),Qe()}}),(0,Y.jsxs)(m,{size:`small`,sx:ft,children:[(0,Y.jsx)(f,{sx:{fontSize:13},children:a?.page?.key?.timeseries?.aggregation}),(0,Y.jsxs)(d,{value:N,label:a?.page?.key?.timeseries?.aggregation,onChange:e=>{F(e.target.value),setTimeout(()=>Ze(),0)},sx:{fontSize:13},children:[(0,Y.jsx)(Se,{value:``,children:a?.page?.key?.timeseries?.none}),xt.map(e=>(0,Y.jsx)(Se,{value:e,children:e},e))]})]}),N&&(0,Y.jsx)(p,{size:`small`,sx:ft,type:`number`,label:a?.page?.key?.timeseries?.timeBucket,placeholder:`5000`,value:R,onChange:e=>{z(e.target.value),Qe()}}),(0,Y.jsx)(p,{size:`small`,sx:{...ft,minWidth:200},label:a?.page?.key?.timeseries?.overlay,placeholder:a?.page?.key?.timeseries?.overlayHint,value:ge,onChange:e=>{_e(e.target.value),Qe()}}),(0,Y.jsx)(p,{size:`small`,sx:{...ft,minWidth:180},label:a?.page?.key?.timeseries?.mrangeFilter,placeholder:a?.page?.key?.timeseries?.mrangeHint,value:ye,onChange:e=>{be(e.target.value),Qe()}})]}),(0,Y.jsxs)(o,{sx:{py:`4px`,opacity:.6,fontSize:13},children:[E.length,` `,a?.page?.key?.timeseries?.dataPoints]}),(0,Y.jsx)(o,{ref:je,sx:{width:`100%`,minHeight:400}}),!S&&(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1,mt:2},children:[(0,Y.jsx)(p,{size:`small`,sx:ft,label:a?.page?.key?.timeseries?.timestamp,placeholder:`* (auto)`,value:te,onChange:e=>V(e.target.value)}),(0,Y.jsx)(p,{size:`small`,sx:ft,type:`number`,label:a?.page?.key?.timeseries?.value,value:H,onChange:e=>U(e.target.value),onKeyDown:e=>{e.key===`Enter`&&et()}}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(g,{fontSize:`small`}),label:a?.intention?.add,raised:!0,color:`primary`,onClick:()=>et(),disabled:!H})]})]})}),E.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:He(a?.page?.key?.timeseries?.dataPoints)+` (${E.length})`,accordionKey:`ts-data`,children:(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:x.palette.primary.main,color:x.palette.primary.contrastText,borderBottom:`2px solid ${ut}`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1},children:a?.page?.key?.timeseries?.timestamp}),(0,Y.jsx)(o,{component:`span`,children:a?.page?.key?.timeseries?.value}),!S&&(0,Y.jsx)(o,{component:`span`,sx:{minWidth:52}})]}),(0,Y.jsx)(o,{ref:Le,sx:{height:600,overflow:`auto`},children:(0,Y.jsx)(o,{sx:{height:Be.getTotalSize(),width:`100%`,position:`relative`},children:Be.getVirtualItems().map(e=>{let t=E[e.index];return(0,Y.jsxs)(o,{sx:{position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${e.start}px)`,height:e.size,display:`flex`,alignItems:`center`,gap:1,px:2,borderBottom:`1px solid ${ut}`,bgcolor:e.index%2==0?lt:`transparent`,"&:hover":{bgcolor:`${ct} !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1,fontSize:13},children:Ue(t.timestamp)}),(0,Y.jsx)(o,{component:`span`,sx:{fontSize:13,fontFamily:`'Roboto Mono', monospace`},children:t.value}),!S&&(0,Y.jsxs)(o,{component:`span`,sx:{display:`flex`,alignItems:`center`},children:[(0,Y.jsx)(u,{title:a?.intention?.delete??`Delete`,children:(0,Y.jsx)(v,{sx:dt(`error.main`),onClick:()=>tt(t)})}),(0,Y.jsx)(u,{title:a?.intention?.edit??`Edit`,children:(0,Y.jsx)(B,{sx:dt(`primary.main`),onClick:()=>nt(t)})})]})]},e.key)})})})]})})]}),(0,Y.jsx)(`br`,{}),(0,Y.jsxs)(we,{title:a?.page?.key?.timeseries?.info,accordionKey:`ts-info`,actions:S?void 0:(0,Y.jsx)(J,{icon:ae?(0,Y.jsx)(ue,{sx:{fontSize:18}}):(0,Y.jsx)(B,{sx:{fontSize:18}}),label:a?.intention?.edit,color:`inherit`,onClick:e=>{e.stopPropagation(),at()}}),children:[ae&&(0,Y.jsx)(o,{sx:{p:2},children:(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1},children:[(0,Y.jsx)(p,{size:`small`,type:`number`,sx:{flex:1,minWidth:150},label:`${a?.page?.key?.timeseries?.retention} (ms)`,helperText:a?.page?.key?.timeseries?.retentionHint,value:ce,onChange:e=>le(Number(e.target.value))}),(0,Y.jsxs)(m,{size:`small`,sx:{flex:1,minWidth:150},children:[(0,Y.jsx)(f,{children:a?.page?.key?.timeseries?.duplicatePolicy}),(0,Y.jsx)(d,{value:fe,label:a?.page?.key?.timeseries?.duplicatePolicy,onChange:e=>pe(e.target.value),children:[`LAST`,`FIRST`,`MIN`,`MAX`,`SUM`,`BLOCK`].map(e=>(0,Y.jsx)(Se,{value:e,children:e},e))})]}),(0,Y.jsx)(p,{size:`small`,sx:{flex:1,minWidth:200},label:a?.page?.key?.timeseries?.labels,helperText:a?.page?.key?.timeseries?.labelsHint,value:me,onChange:e=>he(e.target.value)}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(ee,{fontSize:`small`}),label:a?.intention?.save,raised:!0,color:`primary`,onClick:()=>ot()})]})}),(0,Y.jsxs)(I,{disablePadding:!0,children:[Q.map(e=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{sx:{px:2,py:1},children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1,fontWeight:500},children:e.key}),(0,Y.jsx)(o,{component:`span`,sx:{wordBreak:`break-all`},children:String(e.value)})]})}),(0,Y.jsx)(ie,{})]},e.key)),$.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(y,{sx:{px:2,py:1},children:(0,Y.jsx)(`strong`,{children:a?.page?.key?.timeseries?.labels})}),(0,Y.jsx)(ie,{}),$.map(e=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{sx:{px:2,py:1},children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1,fontWeight:500},children:e.key}),(0,Y.jsx)(o,{component:`span`,sx:{wordBreak:`break-all`},children:e.value})]})}),(0,Y.jsx)(ie,{})]},e.key))]}),Ve.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(y,{sx:{px:2,py:1},children:(0,Y.jsx)(`strong`,{children:a?.page?.key?.timeseries?.rules})}),(0,Y.jsx)(ie,{}),Ve.map(e=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{sx:{px:2,py:1},children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:1,fontWeight:500},children:e.destKey}),(0,Y.jsxs)(o,{component:`span`,children:[e.aggregationType,` / `,e.bucketDuration,`ms`]})]})}),(0,Y.jsx)(ie,{})]},e.destKey))]})]})]}),(0,Y.jsx)(k,{open:Te,data:Ee,onClose:it})]})}function wt({response:e,value:t,keyName:n,onRefresh:r}){let i=s(e=>e.strings),a=G(e=>e.connection),{toast:c,confirm:l}=K(),u=a?.readonly===!0,d=e?.type||``,[f,m]=(0,Z.useState)(``),[h,_]=(0,Z.useState)(1),[b,x]=(0,Z.useState)(.5),[S,C]=(0,Z.useState)([]),[w,T]=(0,Z.useState)(!1),E=(0,Z.useRef)(null);(0,Z.useEffect)(()=>(w?E.current=setInterval(()=>{r(),d===`topk`&&P()},1e4):clearInterval(E.current),()=>clearInterval(E.current)),[w]);let D=(()=>{try{let e;if(typeof t==`object`&&t&&!ArrayBuffer.isView(t)?e=t:typeof t==`string`?e=JSON.parse(t):ArrayBuffer.isView(t)&&(e=JSON.parse(new TextDecoder().decode(t))),e&&typeof e==`object`)return Object.entries(e).map(([e,t])=>({key:e,value:t}))}catch{}return[]})();(0,Z.useEffect)(()=>{d===`topk`&&P()},[d]);async function O(){if(f.trim())try{await q({action:`probabilistic/add`,payload:{key:n,type:d,item:f.trim(),increment:h}}),c(i?.page?.key?.probabilistic?.addedSuccessfully),m(``),r(),d===`topk`&&P()}catch(e){c(e.message||`Error`)}}async function k(){if(f.trim())try{let e=(await q({action:`probabilistic/check`,payload:{key:n,type:d,item:f.trim()}})).result===1;c(`"${f}" — ${e?i?.page?.key?.probabilistic?.exists:i?.page?.key?.probabilistic?.doesNotExist}`)}catch(e){c(e.message||`Error`)}}async function A(){if(f.trim())try{await l({message:i?.confirm?.delete}),await q({action:`probabilistic/delete`,payload:{key:n,type:d,item:f.trim()}}),c(i?.page?.key?.probabilistic?.deletedSuccessfully),m(``),r()}catch(e){e?.message&&c(e.message)}}async function j(){if(f.trim())try{let e=await q({action:`probabilistic/check`,payload:{key:n,type:d,item:f.trim()}}),t=Array.isArray(e.result)?e.result[0]:e.result;c(`"${f}" — ${i?.page?.key?.probabilistic?.topkCount}: ${t}`)}catch(e){c(e.message||`Error`)}}async function M(){try{let e=await q({action:`probabilistic/check`,payload:{key:n,type:d,quantile:b}}),t=Array.isArray(e.result)?e.result[0]:e.result;c(`${i?.page?.key?.probabilistic?.quantile} ${b} = ${t}`)}catch(e){c(e.message||`Error`)}}async function N(){try{await l({message:i?.page?.key?.probabilistic?.resetConfirm}),await q({action:`probabilistic/delete`,payload:{key:n,type:`tdigest`}}),c(`Reset`),r()}catch(e){e?.message&&c(e.message)}}async function P(){try{let e=await q({action:`probabilistic/check`,payload:{key:n,type:`topk`}});C(e.result||[])}catch{C([])}}return(0,Y.jsxs)(o,{className:`p3xr-key-type-content`,children:[(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:i?.page?.key?.probabilistic?.info,accordionKey:`prob-info`,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(J,{icon:w?(0,Y.jsx)(ue,{sx:{fontSize:18}}):(0,Y.jsx)(oe,{sx:{fontSize:18}}),label:i?.label?.autoRefresh,breakpoint:1280,onClick:e=>{e.stopPropagation(),T(e=>!e)}}),!w&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(ne,{sx:{fontSize:18}}),label:i?.intention?.refresh,breakpoint:1280,onClick:e=>{e.stopPropagation(),r(),d===`topk`&&P()}})]}),children:(0,Y.jsx)(I,{disablePadding:!0,children:D.map((e,t)=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(`span`,{className:`p3xr-settings-label`,style:{flex:1},children:e.key}),(0,Y.jsx)(`span`,{className:`p3xr-settings-value`,children:String(e.value)})]})}),t<D.length-1&&(0,Y.jsx)(ie,{})]},e.key))})}),(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:d===`topk`?i?.page?.key?.probabilistic?.topkList:i?.page?.key?.probabilistic?.addItem,accordionKey:`prob-actions`,children:(0,Y.jsxs)(o,{children:[(0,Y.jsx)(o,{sx:{p:2},children:(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1.5,py:1},children:[d===`tdigest`?(0,Y.jsx)(p,{size:`small`,type:`number`,margin:`none`,className:`p3xr-timeseries-field`,label:i?.form?.key?.field?.value,value:f,onChange:e=>m(e.target.value),onKeyUp:e=>e.key===`Enter`&&O()}):(0,Y.jsx)(p,{size:`small`,margin:`none`,className:`p3xr-timeseries-field`,sx:{flex:1,minWidth:200},label:i?.page?.key?.probabilistic?.item,value:f,onChange:e=>m(e.target.value),onKeyUp:e=>e.key===`Enter`&&O()}),d===`cms`&&(0,Y.jsx)(p,{size:`small`,type:`number`,margin:`none`,className:`p3xr-timeseries-field`,sx:{maxWidth:120},label:i?.form?.key?.field?.increment,value:h,onChange:e=>_(parseInt(e.target.value)||1)}),d===`tdigest`&&(0,Y.jsx)(p,{size:`small`,type:`number`,margin:`none`,slotProps:{htmlInput:{step:.1}},className:`p3xr-timeseries-field`,sx:{maxWidth:120},label:i?.page?.key?.probabilistic?.quantile,value:b,onChange:e=>x(parseFloat(e.target.value)||.5),onKeyUp:e=>e.key===`Enter`&&M()}),!u&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(g,{fontSize:`small`}),label:i?.intention?.add,raised:!0,color:`primary`,onClick:O}),(d===`bloom`||d===`cuckoo`)&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(xe,{fontSize:`small`}),label:i?.page?.key?.probabilistic?.checkItem,raised:!0,color:`primary`,onClick:k}),d===`cuckoo`&&!u&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(v,{fontSize:`small`}),label:i?.intention?.delete,raised:!0,color:`primary`,onClick:A}),d===`cms`&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(xe,{fontSize:`small`}),label:i?.page?.key?.probabilistic?.queryCount,raised:!0,color:`primary`,onClick:j}),d===`tdigest`&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(Te,{fontSize:`small`}),label:i?.page?.key?.probabilistic?.quantile,raised:!0,color:`primary`,onClick:M}),d===`tdigest`&&!u&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(Ae,{fontSize:`small`}),label:`Reset`,raised:!0,color:`warning`,onClick:N})]})}),d===`topk`&&S.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ie,{}),(0,Y.jsx)(I,{disablePadding:!0,children:S.map((e,t)=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(`span`,{className:`p3xr-settings-label`,style:{flex:1},children:e.item}),(0,Y.jsx)(`span`,{className:`p3xr-settings-value`,children:e.count})]})}),t<S.length-1&&(0,Y.jsx)(ie,{})]},t))})]})]})})]})}function Tt({response:e,value:t,keyName:n,onRefresh:r}){let i=s(e=>e.strings),a=G(e=>e.connection),{toast:c,confirm:l}=K(),d=a?.readonly===!0,[f,m]=(0,Z.useState)([]),[h,_]=(0,Z.useState)(()=>Ie(0)),[b,x]=(0,Z.useState)([]),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(``),[E,D]=(0,Z.useState)(``),[O,k]=(0,Z.useState)(10),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(``),[P,F]=(0,Z.useState)(!1),L=(0,Z.useRef)(null),R=(()=>{try{let e;if(typeof t==`object`&&t&&!ArrayBuffer.isView(t)?e=t:typeof t==`string`?e=JSON.parse(t):ArrayBuffer.isView(t)&&(e=JSON.parse(new TextDecoder().decode(t))),e&&typeof e==`object`)return Object.entries(e).map(([e,t])=>({key:e,value:t}))}catch{}return[]})();(0,Z.useEffect)(()=>(S?L.current=setInterval(()=>{r(),z()},1e4):clearInterval(L.current),()=>clearInterval(L.current)),[S]),(0,Z.useEffect)(()=>{z()},[n]);async function z(){try{let e=(await q({action:`vectorset/elements`,payload:{key:n}})).elements||[];m(e);let t=Le(h,e.length);_(t)}catch{m([])}}async function B(){if(M.trim())try{let e=await q({action:`vectorset/sim`,payload:{key:n,mode:`element`,element:M.trim(),count:O,filter:A.trim()||void 0}});x(e.results||[]),c(i?.page?.key?.vectorset?.searchComplete)}catch(e){c(e.message||`Error`)}}async function ee(){if(M.trim())try{let e=M.split(`,`).map(Number),t=await q({action:`vectorset/sim`,payload:{key:n,mode:`vector`,values:e,count:O,filter:A.trim()||void 0}});x(t.results||[]),c(i?.page?.key?.vectorset?.searchComplete)}catch(e){c(e.message||`Error`)}}async function te(e){try{let t=(await q({action:`vectorset/getattr`,payload:{key:n,element:e}})).attributes;t&&Object.keys(t).length>0?c(`${e}: ${JSON.stringify(t)}`):c(`${e}: ${i?.page?.key?.vectorset?.noAttributes}`)}catch(e){e?.message&&c(e.message)}}async function V(){if(!(!w.trim()||!E.trim()))try{await q({action:`vectorset/add`,payload:{key:n,element:w.trim(),values:E.split(`,`).map(Number)}}),c(i?.page?.key?.vectorset?.addedSuccessfully),T(``),D(``),r(),z()}catch(e){c(e.message||`Error`)}}async function H(e){try{await l({message:i?.confirm?.delete}),await q({action:`vectorset/remove`,payload:{key:n,element:e}}),c(i?.page?.key?.vectorset?.deletedSuccessfully),r(),z()}catch(e){e?.message&&c(e.message)}}async function U(e){try{let t=await q({action:`vectorset/sim`,payload:{key:n,mode:`element`,element:e,count:O}});x(t.results||[]),c(i?.page?.key?.vectorset?.searchComplete)}catch(e){c(e.message||`Error`)}}return(0,Y.jsxs)(o,{className:`p3xr-key-type-content`,children:[(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:i?.page?.key?.vectorset?.info,accordionKey:`vs-info`,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(J,{icon:S?(0,Y.jsx)(ue,{sx:{fontSize:18}}):(0,Y.jsx)(oe,{sx:{fontSize:18}}),label:i?.label?.autoRefresh,breakpoint:1280,onClick:e=>{e.stopPropagation(),C(e=>!e)}}),!S&&(0,Y.jsx)(J,{icon:(0,Y.jsx)(ne,{sx:{fontSize:18}}),label:i?.intention?.refresh,breakpoint:1280,onClick:e=>{e.stopPropagation(),r(),z()}})]}),children:(0,Y.jsx)(I,{disablePadding:!0,children:R.map((e,t)=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(`span`,{className:`p3xr-settings-label`,style:{flex:1},children:e.key}),(0,Y.jsx)(`span`,{className:`p3xr-settings-value`,children:String(e.value)})]})}),t<R.length-1&&(0,Y.jsx)(ie,{})]},e.key))})}),(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:i?.page?.key?.vectorset?.elements,accordionKey:`vs-elements`,children:(0,Y.jsxs)(o,{children:[(0,Y.jsx)(et,{paging:h,onPageChange:e=>_(e)}),(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:1,fontWeight:`bold`,bgcolor:`primary.main`,color:`primary.contrastText`,borderBottom:`2px solid rgba(255,255,255,0.05)`},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`50%`},children:i?.page?.key?.vectorset?.element}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`},children:i?.page?.key?.vectorset?.score}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`30%`,textAlign:`right`,display:`flex`,justifyContent:`flex-end`,alignItems:`center`},children:!d&&(0,Y.jsx)(u,{title:i?.intention?.add,children:(0,Y.jsx)(g,{sx:{cursor:`pointer`,color:`inherit`},onClick:()=>F(e=>!e)})})})]}),f.slice(h.startIndex,h.startIndex+h.pageCount).map((e,t)=>(0,Y.jsxs)(o,{sx:{display:`flex`,alignItems:`center`,gap:1,px:2,py:`6px`,borderBottom:`1px solid rgba(255,255,255,0.05)`,bgcolor:t%2==0?`rgba(255,255,255,0.05)`:`transparent`,"&:hover":{bgcolor:`rgba(255,255,255,0.1) !important`}},children:[(0,Y.jsx)(o,{component:`span`,sx:{flex:`50%`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.element}),(0,Y.jsx)(o,{component:`span`,sx:{flex:`20%`,fontFamily:`'Roboto Mono', monospace`},children:e.score?.toFixed(4)}),(0,Y.jsxs)(o,{component:`span`,sx:{flex:`30%`,textAlign:`right`,whiteSpace:`nowrap`},children:[(0,Y.jsx)(u,{title:`Find similar`,children:(0,Y.jsx)(xe,{sx:{fontSize:18,cursor:`pointer`,mx:`2px`,opacity:.7,color:`secondary.main`,"&:hover":{opacity:1}},onClick:()=>{N(e.element),U(e.element)}})}),(0,Y.jsx)(u,{title:i?.page?.key?.vectorset?.attributes,children:(0,Y.jsx)(be,{sx:{fontSize:18,cursor:`pointer`,mx:`2px`,opacity:.7,color:`secondary.main`,"&:hover":{opacity:1}},onClick:()=>te(e.element)})}),!d&&(0,Y.jsx)(u,{title:i?.intention?.delete,children:(0,Y.jsx)(v,{sx:{fontSize:18,cursor:`pointer`,mx:`2px`,opacity:.7,color:`error.main`,"&:hover":{opacity:1}},onClick:()=>H(e.element)})})]})]},e.element)),!d&&P&&(0,Y.jsx)(o,{sx:{p:2},children:(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1.5,py:1},children:[(0,Y.jsx)(p,{size:`small`,margin:`none`,sx:{flex:1,minWidth:200},label:i?.page?.key?.vectorset?.elementName,value:w,onChange:e=>T(e.target.value),onKeyUp:e=>e.key===`Enter`&&V()}),(0,Y.jsx)(p,{size:`small`,margin:`none`,sx:{flex:1,minWidth:200},label:i?.page?.key?.vectorset?.vectorValues,placeholder:`0.1, 0.2, 0.3`,value:E,onChange:e=>D(e.target.value),onKeyUp:e=>e.key===`Enter`&&V()}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(g,{fontSize:`small`}),label:i?.intention?.add,raised:!0,color:`primary`,onClick:V})]})})]})}),(0,Y.jsx)(`br`,{}),(0,Y.jsx)(we,{title:i?.page?.key?.vectorset?.similaritySearch,accordionKey:`vs-sim`,children:(0,Y.jsxs)(o,{sx:{p:2},children:[(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,gap:1.5,py:1},children:[(0,Y.jsx)(p,{size:`small`,margin:`none`,sx:{flex:1,minWidth:200},label:i?.page?.key?.vectorset?.searchTerm,value:M,onChange:e=>N(e.target.value),onKeyUp:e=>e.key===`Enter`&&B()}),(0,Y.jsx)(p,{size:`small`,margin:`none`,type:`number`,sx:{width:80},label:i?.page?.key?.vectorset?.count,value:O,onChange:e=>k(parseInt(e.target.value)||10)}),Ce(G.getState().info?.server?.redis_version).isAtLeast(8,2)&&(0,Y.jsx)(p,{size:`small`,margin:`none`,sx:{flex:1,minWidth:150},label:i?.page?.key?.vectorset?.filter,placeholder:`attr == 'value'`,value:A,onChange:e=>j(e.target.value),onKeyUp:e=>e.key===`Enter`&&B()}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(ae,{fontSize:`small`}),label:i?.page?.key?.vectorset?.byElement,raised:!0,color:`primary`,onClick:B}),(0,Y.jsx)(J,{icon:(0,Y.jsx)(X,{fontSize:`small`}),label:i?.page?.key?.vectorset?.byVector,raised:!0,color:`primary`,onClick:ee})]}),b.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ie,{sx:{my:1}}),(0,Y.jsx)(I,{disablePadding:!0,children:b.map((e,t)=>(0,Y.jsxs)(o,{children:[(0,Y.jsx)(y,{children:(0,Y.jsxs)(o,{sx:{display:`flex`,width:`100%`},children:[(0,Y.jsx)(`span`,{className:`p3xr-settings-label`,style:{flex:1},children:e.element}),(0,Y.jsx)(`span`,{className:`p3xr-settings-value`,children:e.score})]})}),t<b.length-1&&(0,Y.jsx)(ie,{})]},t))})]})]})})]})}var Et=t({default:()=>Mt}),Dt=(0,Z.lazy)(()=>L(()=>import(`./KeyArray-CdPKYJo5.js`),__vite__mapDeps([3,1,4,0,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]))),Ot=typeof TextDecoder<`u`?TextDecoder:class{decode(e){return String(e)}};function kt(e){return e instanceof Uint8Array||e instanceof ArrayBuffer?e instanceof ArrayBuffer?new Uint8Array(e):e:e&&e.type===`Buffer`&&Array.isArray(e.data)?new Uint8Array(e.data):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function At(e,t){let n=new Ot,{type:r,valueBuffer:i}=e;switch(r){case`string`:e.value=n.decode(kt(i));break;case`list`:case`set`:e.value=i.map(e=>n.decode(kt(e)));break;case`array`:case`hash`:e.value={},Object.entries(i).forEach(([t,r])=>{e.value[t]=n.decode(kt(r))});break;case`zset`:e.value=[];for(let t=0;t<i.length;t+=2)e.value.push(n.decode(kt(i[t]))),e.value.push(n.decode(i[t+1]));break;case`json`:{let r=n.decode(kt(i));try{let n=JSON.parse(r),i=Array.isArray(n)?n[0]:n;e.value=JSON.stringify(i,null,t??2)}catch{e.value=r}break}case`stream`:{let t=e=>e.map(e=>Array.isArray(e)?t(e):ArrayBuffer.isView(e)||e instanceof ArrayBuffer?n.decode(kt(e)):e);e.value=i.map(e=>t(e));break}case`timeseries`:case`bloom`:case`cuckoo`:case`topk`:case`cms`:case`tdigest`:case`vectorset`:try{e.value=JSON.parse(n.decode(kt(i)))}catch{e.value={}}break;default:try{e.value=JSON.parse(n.decode(kt(i)))}catch{e.value=n.decode(kt(i))}}}function jt(e){if(e.size=0,e.type!==`stream`){if(typeof e.valueBuffer==`object`&&!Array.isArray(e.valueBuffer)&&e.length>0)for(let t of Object.keys(e.valueBuffer))e.size+=e.valueBuffer[t]?.byteLength??0;else if(Array.isArray(e.valueBuffer))for(let t of e.valueBuffer)e.size+=t?.byteLength??0;else e.valueBuffer&&(e.size=e.valueBuffer.byteLength??0)}else e.size=(e=>{let t=0,n=e=>{ArrayBuffer.isView(e)||e instanceof ArrayBuffer?t+=e.byteLength:Array.isArray(e)&&e.forEach(n)};return e.forEach(n),t})(e.valueBuffer??[])}function Mt(){let{key:e}=se(),t=decodeURIComponent(e??``),n=s(e=>e.strings),r=G(e=>e.connection),a=ce(e=>e.themeKey),c=re(e=>e.jsonFormat),d=i(),{confirm:f,toast:p,generalHandleError:m}=K(),h=de(`(min-width: 960px)`),_=r?.readonly===!0,y=d.palette.mode===`dark`,[b,x]=(0,Z.useState)(!0),[S,C]=(0,Z.useState)(null),[E,D]=(0,Z.useState)(`raw`),[O,k]=(0,Z.useState)(!1),A=(0,Z.useRef)(null),j=(0,Z.useRef)(!1),M=y?`rgba(255,255,255,0.12)`:`rgba(0,0,0,0.12)`,N=y?`rgba(255,255,255,0.1)`:`rgba(0,0,0,0.1)`;(0,Z.useEffect)(()=>{let e=le(a),n=e?`rgba(255,255,255,0.15)`:`rgba(0,0,0,0.15)`,r=e?`white`:`black`,i=document.createElement(`style`);return i.id=`p3xr-theme-styles-tree-key`,i.textContent=`[data-p3xr-tree-key="${t.replace(/"/g,`\\"`)}"] .p3xr-database-tree-node-label {
            background-color: ${n} !important; color: ${r} !important; padding: 2px;
        }`,document.getElementById(`p3xr-theme-styles-tree-key`)?.remove(),document.head.appendChild(i),()=>{document.getElementById(`p3xr-theme-styles-tree-key`)?.remove()}},[t,a]);let P=(0,Z.useCallback)(async()=>{clearInterval(A.current),x(!0);try{let e=await q({action:`key/get`,payload:{key:t}});if(e.ttl===-2){p(n?.status?.keyIsNotExisting),ge(`database.statistics`);return}e.size=0,At(e,c?2:0),jt(e),e.ttl>-1&&(j.current=!0),C(e),e.ttl>-1&&(A.current=setInterval(()=>{C(e=>{if(!e)return e;let t=e.ttl-1;return t<-1||j.current&&t<1?(clearInterval(A.current),p(n?.status?.keyIsNotExisting),G.setState({redisChanged:!0}),ge(`database.statistics`),e):{...e,ttl:t}})},1e3))}catch(e){if(console.error(e),e?.message===`Connection is closed.`)G.setState({connection:void 0}),K.getState().confirm({message:e.message,disableCancel:!0}).catch(()=>{});else{let r=n?.label?.unableToLoadKey,i=typeof r==`function`?r({key:t}):String(e);K.getState().confirm({message:i,disableCancel:!0}).catch(()=>{})}ge(`database.statistics`)}finally{x(!1)}},[t,n,c,p]);(0,Z.useEffect)(()=>(P(),()=>clearInterval(A.current)),[t]),(0,Z.useEffect)(()=>ye(`refresh-key`,()=>P()),[P]);let F=(0,Z.useCallback)(e=>{e.stopPropagation(),me.getState().addKey({event:e.nativeEvent,node:{key:t}})},[t]),I=(0,Z.useCallback)(async e=>{e.stopPropagation();try{await f({message:n?.confirm?.deleteKey}),await q({action:`key/delete`,payload:{key:t}}),pe(`/delete`),ge(`database.statistics`),p(typeof n?.status?.deletedKey==`function`?n.status.deletedKey({key:t}):``),await me.getState().refresh({withoutParent:!1,force:!0})}catch(e){m(e)}},[t,n,f,p,m]),L=(0,Z.useCallback)(async e=>{e.stopPropagation();try{let e=await K.getState().prompt({title:n?.confirm?.rename?.title,placeholder:n?.confirm?.rename?.placeholder,initialValue:t,okLabel:n?.intention?.rename,cancelLabel:n?.intention?.cancel});await q({action:`key/rename`,payload:{key:t,keyNew:e}}),pe(`/rename`),ge(`database.key`,{key:e}),p(n?.status?.renamedKey),await me.getState().refresh({withoutParent:!1,force:!0})}catch(e){m(e)}},[t,n,p,m]),R=(0,Z.useCallback)(e=>{e.stopPropagation(),k(!0)},[]),z=(0,Z.useCallback)(async e=>{if(k(!1),e)try{let r=e.model.ttl,i=String(r).trim();if(i===``||r==null)await q({action:`key/persist`,payload:{key:t}}),pe(`/persist`),await me.getState().refresh({withoutParent:!0,force:!0}),await P(),p(n?.status?.persisted);else if(/^-?\d+$/.test(i))await q({action:`key/expire`,payload:{key:t,ttl:parseInt(i)}}),pe(`/expire`),await me.getState().refresh({withoutParent:!0,force:!0}),await P(),p(n?.status?.ttlChanged);else{p(n?.status?.notInteger);return}}catch(e){m(e)}},[t,n,p,P,m]),B=(0,Z.useCallback)(async()=>{pe(`/refresh`);try{let e=await q({action:`key/get`,payload:{key:t}});if(e.ttl===-2)return;e.size=0,At(e,c?2:0),jt(e),e.ttl>-1&&(j.current=!0),C(e)}catch{}},[t,c]),ee=({icon:e,label:t,color:n,onClick:r})=>h?(0,Y.jsxs)(fe,{variant:`contained`,color:n,onClick:r,children:[e,(0,Y.jsx)(`span`,{children:t})]}):(0,Y.jsx)(u,{title:t,placement:`top`,children:(0,Y.jsx)(fe,{variant:`contained`,color:n,onClick:r,sx:{minWidth:40,width:40,height:40,p:0,borderRadius:`4px`},children:e})});if(b)return(0,Y.jsx)(o,{sx:{display:`flex`,justifyContent:`center`,alignItems:`center`,minHeight:`100%`,p:4},children:(0,Y.jsx)(l,{size:40})});if(!S)return null;let te=re.getState().getHumanizeDurationOptions();return(0,Y.jsxs)(o,{children:[(0,Y.jsxs)(o,{sx:{display:`flex`,flexWrap:`wrap`,justifyContent:`flex-end`,alignItems:`center`,gap:1,px:1,py:`4px`},children:[!_&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ee,{icon:(0,Y.jsx)(g,{fontSize:`small`}),label:n?.intention?.addKey,color:`secondary`,onClick:F}),(0,Y.jsx)(ee,{icon:(0,Y.jsx)(v,{fontSize:`small`}),label:n?.intention?.delete,color:`error`,onClick:I}),(0,Y.jsx)(ee,{icon:(0,Y.jsx)(ke,{fontSize:`small`}),label:n?.intention?.ttl,color:`primary`,onClick:R}),(0,Y.jsx)(ee,{icon:(0,Y.jsx)(Ee,{fontSize:`small`}),label:n?.intention?.rename,color:`primary`,onClick:L})]}),(0,Y.jsx)(ee,{icon:(0,Y.jsx)(ne,{fontSize:`small`}),label:n?.intention?.reloadKey,color:`secondary`,onClick:B})]}),(0,Y.jsxs)(o,{sx:{borderTop:`1px solid ${M}`},children:[(0,Y.jsxs)(o,{onClick:L,sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`,cursor:`pointer`,"&:hover":{bgcolor:N}},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.key,`:`]}),(0,Y.jsx)(o,{component:`span`,sx:{textAlign:`right`,overflow:`hidden`,textOverflow:`ellipsis`,userSelect:`text`},title:t,children:t})]}),(0,Y.jsxs)(o,{onClick:R,sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`,cursor:`pointer`,"&:hover":{bgcolor:N}},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.ttl,`:`]}),S.ttl===-1?(0,Y.jsx)(`span`,{children:n?.page?.key?.label?.ttlNotExpire}):(0,Y.jsxs)(o,{sx:{display:`flex`,flexDirection:`column`,alignItems:`flex-end`},children:[(0,Y.jsx)(`span`,{children:S.ttl}),(0,Y.jsx)(o,{component:`span`,sx:{opacity:.5,fontSize:`0.85em`,fontWeight:`normal`},children:(0,Ne.default)(S.ttl*1e3,{...te,delimiter:` `})})]})]}),(0,Y.jsxs)(o,{sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.type,`:`]}),(0,Y.jsx)(`span`,{children:n?.redisTypes?.[S.type]})]}),(0,Y.jsxs)(o,{sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.encoding,`:`]}),(0,Y.jsx)(`span`,{children:S.encoding})]}),S.compression&&(0,Y.jsxs)(o,{sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.compression,`:`]}),(0,Y.jsxs)(o,{sx:{display:`inline-flex`,alignItems:`center`,gap:`6px`},children:[(0,Y.jsx)(o,{component:`span`,sx:{bgcolor:`secondary.main`,color:`secondary.contrastText`,px:`6px`,py:`2px`,borderRadius:`4px`,fontSize:11,fontWeight:`bold`,letterSpacing:`0.5px`},children:S.compression.algorithm.toUpperCase()}),(0,Y.jsxs)(o,{component:`span`,sx:{px:`6px`,py:`2px`,borderRadius:`4px`,fontSize:11,fontWeight:`bold`,bgcolor:S.compression.ratio>=0?`success.main`:`error.main`,color:S.compression.ratio>=0?`success.contrastText`:`error.contrastText`},children:[S.compression.ratio>=0?``:`-`,Math.abs(S.compression.ratio),`%`]})]})]}),(0,Y.jsxs)(o,{sx:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`,px:2,py:1.5,borderBottom:`1px solid ${M}`},children:[(0,Y.jsxs)(`strong`,{style:{whiteSpace:`nowrap`,marginRight:16},children:[n?.page?.key?.label?.length,`:`]}),(0,Y.jsxs)(`span`,{children:[(0,Y.jsxs)(`span`,{style:{opacity:.5},children:[S.size>=1024?`(${re.getState().prettyBytes(S.size)})`:``,`\xA0`]}),S.size,`\xA0`,n?.page?.key?.label?.lengthString,S.length?(0,Y.jsxs)(`span`,{children:[`, `,S.length,` `,n?.page?.key?.label?.lengthItem]}):null]})]}),S.type!==`timeseries`&&S.type!==`json`&&![`bloom`,`cuckoo`,`topk`,`cms`,`tdigest`,`vectorset`].includes(S.type)&&(0,Y.jsxs)(o,{sx:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,px:2,py:1.5,borderBottom:`1px solid ${M}`},children:[(0,Y.jsxs)(`strong`,{style:{flex:1,whiteSpace:`nowrap`,marginRight:16},children:[n?.label?.format,`:`]}),(0,Y.jsxs)(T,{size:`small`,exclusive:!0,value:E,onChange:(e,t)=>t&&D(t),sx:{borderRadius:`4px`,overflow:`hidden`,border:`thin solid ${y?`rgba(255,255,255,0.12)`:`rgba(0,0,0,0.12)`}`,"& .MuiToggleButton-root":{height:32,fontSize:13,px:1.5,borderRadius:`0 !important`,textTransform:`none`,bgcolor:y?`rgba(255,255,255,0.05)`:`rgba(0,0,0,0.05)`},"& .MuiToggleButton-root.Mui-selected":{bgcolor:`${d.p3xr.matSysPrimary}40 !important`,color:d.p3xr.matSysPrimary},"& .MuiToggleButton-root:first-of-type":{borderRadius:`4px 0 0 4px !important`},"& .MuiToggleButton-root:last-of-type":{borderRadius:`0 4px 4px 0 !important`}},children:[(0,Y.jsx)(w,{value:`raw`,children:`Raw`}),(0,Y.jsx)(w,{value:`json`,children:`JSON`}),(0,Y.jsx)(w,{value:`hex`,children:`Hex`}),(0,Y.jsx)(w,{value:`base64`,children:`Base64`})]})]})]}),S.type===`string`&&(0,Y.jsx)($e,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`hash`&&(0,Y.jsx)(it,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`zset`&&(0,Y.jsx)(st,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`set`&&(0,Y.jsx)(at,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`list`&&(0,Y.jsx)(tt,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`stream`&&(0,Y.jsx)(ht,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`json`&&(0,Y.jsx)(bt,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`timeseries`&&(0,Y.jsx)(Ct,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),[`bloom`,`cuckoo`,`topk`,`cms`,`tdigest`].includes(S.type)&&(0,Y.jsx)(wt,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`vectorset`&&(0,Y.jsx)(Tt,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B}),S.type===`array`&&(0,Y.jsx)(Z.Suspense,{fallback:(0,Y.jsx)(o,{sx:{display:`flex`,justifyContent:`center`,p:4},children:(0,Y.jsx)(l,{size:40})}),children:(0,Y.jsx)(Dt,{response:S,value:S.value,valueBuffer:S.valueBuffer,keyName:t,valueFormat:E,onRefresh:B})}),S.type!==`string`&&S.type!==`hash`&&S.type!==`set`&&S.type!==`zset`&&S.type!==`list`&&S.type!==`stream`&&S.type!==`json`&&S.type!==`timeseries`&&![`bloom`,`cuckoo`,`topk`,`cms`,`tdigest`].includes(S.type)&&S.type!==`vectorset`&&S.type!==`array`&&(0,Y.jsx)(o,{sx:{mt:2,p:2,opacity:.7},children:n?.page?.key?.probabilistic?.noItems}),(0,Y.jsx)(rt,{open:O,ttl:S?.ttl===-1?``:S?.ttl,onClose:z})]})}export{Ie as a,$ as c,Mt as default,Ve as i,Le as l,et as n,He as o,Qe as r,Be as s,Et as t,Q as u};