MOON
Server: Apache
System: Linux server1.studioinfinity.com.br 2.6.32-954.3.5.lve1.4.90.el6.x86_64 #1 SMP Tue Feb 21 12:26:30 UTC 2023 x86_64
User: artinside (517)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //proc/self/root/opt/netdata/netdata-web-files/v3/4835.5942f84c551e21a122c8.chunk.js
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e.SENTRY_RELEASE={id:"8922de3783e88f1cd90ca2031b9812542c125fed"};var t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="611b0635-e54f-4d44-a2dc-a65cedeac6ff",e._sentryDebugIdIdentifier="sentry-dbid-611b0635-e54f-4d44-a2dc-a65cedeac6ff")}catch(e){}}(),(globalThis.webpackChunkcloud_frontend=globalThis.webpackChunkcloud_frontend||[]).push([[4835],{57738(e,t,n){n.d(t,{L:()=>f});n(98992),n(8872);var o=n(96540),l=n(76667),r=n(30569),s=n(63872),a=n(19186),d=n(10602),i=n(24609),c=n(30731),u=n(92726),h=n(67294),x=n(45706),g=n(3319);const m=e=>"function"===e.type&&"feed"===e.flavour,p=(e,t)=>{const n=t[0]||null;return Object.entries(e).reduce((e,t)=>{let[o,l]=t;const{pristine:r,data:s,columns:a,aggregations:d,aggregatedView:i,acceptedParams:c,requiredParams:u,...h}=l;return"chart"===h.type?e[o]={...h,nodesScope:[]}:(e=>"function"===e.type&&!m(e))(h)?e[o]={...h,selectedNodeIds:n?[n]:[]}:m(h)?e[o]={...h,selectedNodeIds:[]}:e[o]="selectedNodeIds"in h?{...h,selectedNodeIds:[]}:h,e},{})},f=()=>{const e=(0,l.Zp)(),[t,n]=(0,s.A)(),m=(0,i.vt)(),f=(0,a.ID)(),b=(0,i.bq)(),j=(0,a.QW)(),v=(0,d.CK)(),y=(0,d.nj)(),{sendLog:I}=(0,g.A)();return(0,r.yF)((0,o.useCallback)(async(o,l,r)=>{if(y)try{const{data:n}=await(0,c.f7)(m,f,r),{layout:o,containerIds:s,containers:a,cards:d,dashboard:i}=(0,x.S)(n),g=p(d,v),y=`Copy of ${i.name}`,{data:w}=await(0,c.k9)(m,f,{name:y}),C={version:w.version+1||2,snapshot:{uiState:{layout:o,containerIds:s,containers:a,cards:g,respectNodesScope:i.respectNodesScope,duplicate:{id:r}}}};await(0,c.mQ)(m,f,w.id,C),l((0,u._d)(w.id),{name:y,...C,spaceId:m,roomId:f,...w,loaded:!0}),l((0,h.hZ)(f),{...w,spaceId:m,roomId:f}),I({feature:"DuplicatedCustomDashboard",isSuccess:!0,dashboardId:w.id}),t({header:"Dashboards",text:"Dashboard duplicated!"}),e(`/spaces/${b}/rooms/${j}/dashboards/${w.slug}`,{state:{showDuplicateWizard:!0}})}catch(s){n(s)}else n({header:"Dashboards",text:"Please wait for nodes to finish loading."})},[m,f,b,j,v,y,e,t,n,I]))}},69645(e,t,n){n.d(t,{J:()=>eo,A:()=>to});var o=n(96540),l=n(78904),r=n(76667),s=n(98591),a=n(85660),d=n(92726),i=n(78385),c=n(57068),u=n(6393),h=n(19186),x=n(87083),g=n(24013),m=n(82418),p=n(74848);const f=e=>{let{compact:t,...n}=e;const[,o]=(0,s.A)("addChartModal"),r=(0,g.TG)().length>0;return(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",justifyContent:"center",overflow:{vertical:"auto"},flex:!0,basis:0,"data-testid":"dashboardBlankSlate",...n,children:[!t&&(0,p.jsx)(l.Flex,{as:"img",src:m.$,height:"35%"}),(0,p.jsx)(l.H3,{margin:[6,0,2],children:"Empty Dashboard"}),r?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l.Text,{textAlign:"center",children:"Let\u2019s fill your dashboard."}),(0,p.jsx)(l.Text,{textAlign:"center",children:"Go to a node view or node list and add one chart to this Dashboard or just use"})]}):(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l.Text,{textAlign:"center",children:"You don't have any available node to retrieve charts from."}),(0,p.jsx)(l.Text,{textAlign:"center",children:"Please verify your nodes' state and/or connect a new node to Netdata"})]}),!t&&(0,p.jsx)(l.Button,{margin:[8,0,0,0],onClick:o,disabled:!r,label:"Add chart","data-testid":"dashboardBlankSlate-addChart"})]})};var b=n(882);const j="20px",v=(0,b.css)(["background-image:radial-gradient( circle,"," ",",transparent "," );background-size:"," ",";background-position:center center;"],(0,l.getColor)("borderSecondary"),"1px","1px",j,j),y=(0,b.default)(l.Flex).attrs(e=>{let{active:t}=e;return{width:"100%",flex:!0,overflow:"hidden",...t&&{background:"mainBackground"}}}).withConfig({displayName:"gridBackground__GridBackground",componentId:"sc-86s97v-0"})(["",""],e=>{let{active:t}=e;return t&&v});n(98992),n(72577),n(81454);var I=n(32788),w=n(29263),C=n(47410),S=n(10602),k=n(23226),F=n(24609),A=n(5907),T=n(77814),N=(n(3949),n(21e3)),L=n(87733),M=n(67012),z=n(28657),B=n(87398),D=n(13752),E=n(92815),O=n(72582),$=n(78072),R=n(91832),G=n(23565),P=n(52795),_=n(54251),q=n(45087);const V=()=>(0,p.jsxs)(l.Flex,{column:!0,width:"300px",gap:1,children:[(0,p.jsx)(l.TextSmall,{strong:!0,children:"Not finding a chart?"}),(0,p.jsxs)(l.TextSmall,{children:["When selecting",(0,p.jsx)(l.TextSmall,{strong:!0,margin:[0,1],children:"All Nodes"}),"you search and add charts using their context. The outcome will be a composite chart over All Nodes, like on the Overview tab."]}),(0,p.jsxs)(l.TextSmall,{children:["When you select a",(0,p.jsx)(l.TextSmall,{strong:!0,margin:[0,1],children:"specific Node"}),"you search and add charts using their name. The result is a specific chart over the node selected, like on Single Node tab."]})]}),W=()=>(0,p.jsx)(q.A,{isBasic:!0,plain:!0,content:V,align:"bottom",children:(0,p.jsx)(l.Icon,{name:"question",color:"textDescription",size:"small"})}),H=e=>{let{spaceId:t,roomId:n,value:r,onChange:s,options:a,testid:d,selectedNodeIds:i,metadata:c}=e;const[u,h]=(0,o.useState)(),x=r?.value,g=(0,B.eg)(),m=(0,G.CS)({type:"chart",entity:x,path:"/"}),f=(0,L.K)({spaceId:t,roomId:n}),b=(0,o.useMemo)(()=>{g.getNodes({id:"newDashboardChart"}).forEach(e=>e.destroy());const{info:e,valueRange:t,height:o,colors:l}=(0,N.Ay)(c),r=g.makeChart({attributes:{id:"newDashboardChart",contextScope:[x],host:f,roomId:n,info:e,valueRange:t,height:o+207,enabledNavigation:!1,nodesScope:i,...l&&{colors:l},toolboxElements:[$.default,O.default,D.default,E.default,R.A]}});g.getRoot().appendChild(r),h((0,P.A)(r.getAttributes()));const s=r.getAttribute("chartLibrary");return r.setAttributes({...u,...(0,P.A)(m,!0)}),(0,_.A)(r,s,r.getAttribute("chartLibrary")),r},[g,x]);return(0,M.A)(()=>{if(!b||!m)return;const e=b.getAttribute("chartLibrary");b.updateAttributes({...u,...(0,P.A)(m,!0)}),(0,_.A)(b,e,b.getAttribute("chartLibrary")),b.trigger("fetch")},[b,n,x,m,u]),(0,o.useLayoutEffect)(()=>()=>b.destroy(),[]),(0,p.jsxs)(l.Flex,{gap:6,column:!0,children:[(0,p.jsxs)(l.Flex,{gap:2,column:!0,"data-testid":d,children:[(0,p.jsxs)(l.Flex,{gap:2,children:[(0,p.jsx)(l.H5,{children:"Chart context"}),(0,p.jsx)(W,{})]}),(0,p.jsx)(l.Select,{options:a,value:r,onChange:s,isClearable:!0,form:d})]}),r&&(0,p.jsx)(l.Flex,{height:{min:"320px"},column:!0,children:(0,p.jsx)(z.A,{chart:b,margin:[2,0,0]})})]})};var K=n(43116);const U={label:"All Nodes",value:"all-nodes"},Q={label:"All Nodes (no reachable nodes)",value:"all-nodes",isDisabled:!0},J=e=>{let{id:t,isLive:n,nodeStatus:o,name:l}=e;return{label:n?l:`${l} (${o})`,value:t,isDisabled:!n}},Y=e=>({value:e,label:e}),Z=e=>{let{id:t,onClose:n}=e;const r=(0,F.vt)(),s=(0,h.ID)(),a=(0,d.fz)(t,"name"),i=(0,h.XA)("name"),c=(0,S.CK)(),u=(0,g.BU)().length>0,x=(0,S.nj)(),m=(0,g.Gt)(c),f=(0,A.nM)(t),b=u?U:Q,[j,v]=(0,o.useState)(b.value),[y,N]=(0,o.useState)(null),L=(0,o.useMemo)(()=>[b,...m.map(J)],[m]),M=(0,o.useMemo)(()=>L.find(e=>{let{value:t}=e;return t===j}),[L,j]),z=(0,o.useCallback)(e=>{v(e?.value||b.value),N(null)},[]),D=(0,o.useMemo)(()=>j===b.value?[]:[j],[j]),{charts:E,error:O}=(0,T.A)(r,s,D),$=(0,o.useMemo)(()=>Object.keys(E).sort((e,t)=>e.localeCompare(t,void 0,{sensitivity:"accent",ignorePunctuation:!0})).map(Y),[E]);(0,o.useEffect)(()=>{$.length&&M&&N(e=>e||$[0].value)},[y,$,M]);const R=(0,o.useMemo)(()=>y&&Y(y),[y]),G=(0,o.useCallback)(e=>N(e?.value),[]),_=E[y],q=(0,B.eg)(),V=(0,o.useCallback)(()=>{const e=q.getNode({id:"newDashboardChart"}),t=(0,P.h)(e.getAttributes());f(t.contextScope,t,()=>setTimeout(n))},[j,_]),W=!y,[,Z]=(0,k.A)();return(0,o.useEffect)(()=>(Z(!0),()=>Z(!1))),(0,p.jsx)(I.GO,{onClose:n,children:O?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(w.z,{onClose:n,title:"Add Chart to Dashboard"}),(0,p.jsx)(I.Yv,{height:"100%",padding:[0,8],children:(0,p.jsx)(K.A,{error:O})})]}):(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(w.z,{onClose:n,title:"Add Chart to Dashboard",children:(0,p.jsx)(l.Button,{label:"Add chart",icon:"plus",onClick:V,disabled:W,"data-testid":"addChartModal-addChart-button"})}),(0,p.jsxs)(C.U,{children:["Add Charts to ",a]}),(0,p.jsx)(I.Yv,{overflow:"visible",children:(0,p.jsxs)(l.Flex,{gap:6,column:!0,children:[(0,p.jsxs)(l.Flex,{gap:2,column:!0,"data-testid":"addChartModal-selectNodes",children:[(0,p.jsxs)(l.H5,{children:["Nodes in ",i]}),(0,p.jsx)(l.Select,{options:L,value:M,onChange:z,isLoading:!x,isClearable:!0,form:"addChartModal-selectNodes"})]}),R&&(0,p.jsx)(H,{id:t,spaceId:r,roomId:s,value:R,onChange:G,options:$,testid:"addChartModal-selectChart",selectedNodeIds:D,metadata:E[y]})]})})]})})};var X=n(30569),ee=n(28864),te=n(44245),ne=n(63872);n(54520),n(37550);const oe=e=>"function"===e.type&&"feed"!==e.flavour,le=e=>"chart"===e.type||("function"===e.type&&"feed"===e.flavour||"function"!==e.type&&"selectedNodeIds"in e),re=e=>{const t=(0,u._S)(e);return(0,o.useMemo)(()=>(e=>{const t=Object.values(e),n=t.some(le),o=t.filter(oe),l=[{type:"global",hasNodeFilter:n}];return o.forEach(e=>{l.push({type:"singleNode",cardId:e.id,cardTitle:e.customTitle||e.displayName||e.id,flavour:e.flavour})}),l})(t||{}),[t])};var se=n(38757),ae=n(42721);const de=e=>{let{name:t,setName:n,isNameValid:o,setIsNameValid:r,globalNodeIds:s,setGlobalNodeIds:a,hasNodeFilter:d}=e;const i=(0,S.CK)();return(0,p.jsxs)(l.Flex,{column:!0,gap:4,children:[(0,p.jsx)(se.A,{value:t,label:"Dashboard Name",onChange:e=>n(e.target.value),isValid:o,setIsValid:r,"data-testid":"duplicateWizard-name-input"}),d&&(0,p.jsxs)(l.Flex,{column:!0,gap:2,children:[(0,p.jsx)(l.Text,{strong:!0,children:"Select Nodes"}),(0,p.jsx)(ae.A,{nodeIds:i,selectedNodeIds:s,setSelectedNodeIds:a})]})]})},ie={fn:"Function",logs:"Logs",function:"Function"},ce=e=>{let{cardTitle:t,flavour:n,selectedNodeId:o,setSelectedNodeId:r}=e;const s=(0,S.CK)();return(0,p.jsxs)(l.Flex,{column:!0,gap:4,children:[(0,p.jsxs)(l.Flex,{column:!0,gap:1,children:[(0,p.jsx)(l.Text,{strong:!0,children:t}),(0,p.jsxs)(l.Text,{color:"textLite",children:[ie[n]||"Function"," card"]})]}),(0,p.jsxs)(l.Flex,{column:!0,gap:2,children:[(0,p.jsx)(l.Text,{strong:!0,children:"Select Node"}),(0,p.jsx)(ae.A,{nodeIds:s,selectedNodeIds:o?[o]:[],setSelectedNodeIds:e=>r(e[0]||null),multi:!1})]})]})},ue=e=>{let{dashboardId:t,onClose:n}=e;const{name:s,slug:a}=(0,d.fz)(t),i=(0,S.CK)(),c=re(t),x=(0,r.Zp)(),g=(0,h.r9)(),m=(0,te.DF)(),[f,b]=(0,o.useState)(0),[j,v]=(0,o.useState)(s),[y,C]=(0,o.useState)(!0),[k,F]=(0,o.useState)([]),[A,T]=(0,o.useState)(()=>{const e={};return c.forEach(t=>{"singleNode"===t.type&&(e[t.cardId]=i[0]||null)}),e}),N=(0,ee.DH)(t),L=c[f],M=f===c.length-1,z=0===f,[B,D]=(0,o.useState)(!1),[,E]=(0,ne.A)(),O=(0,X.yF)((0,o.useCallback)((e,n)=>{const o=e((0,u.nG)({id:t}));Object.entries(o).forEach(e=>{let[o,l]=e;"chart"===l.type&&k.length>0?n((0,u.nG)({id:t,resourceId:o}),e=>({...e,nodesScope:k})):"function"===l.type&&"feed"!==l.flavour&&A[o]?n((0,u.nG)({id:t,resourceId:o}),e=>({...e,selectedNodeIds:[A[o]]})):("function"===l.type&&"feed"===l.flavour&&k.length>0||"selectedNodeIds"in l&&k.length>0)&&n((0,u.nG)({id:t,resourceId:o}),e=>({...e,selectedNodeIds:k}))}),n((0,d.Qx)({id:t}),e=>({...e,duplicate:null,...j!==s?{name:j}:{}}))},[t,k,A,j,s])),$=(0,X.yF)((0,o.useCallback)((e,n)=>{n((0,d.Qx)({id:t}),e=>({...e,duplicate:null}))},[t])),R=(0,o.useCallback)(async()=>{D(!0),O();try{const{data:e}=await N(),{slug:o}=e;if(o!==a){const e=`${g}/dashboards/${o}`;m({id:t,slug:o,path:e}),x(e,{replace:!0})}n()}catch(e){E(e),D(!1)}},[O,N,n,E,a,g,m,t,x]),G=(0,o.useCallback)(async()=>{D(!0),$();try{await N(),n()}catch(e){E(e),D(!1)}},[$,N,n,E]),P=(0,o.useCallback)(()=>{M?R():b(e=>e+1)},[M,R]),_=(0,o.useCallback)(()=>{b(e=>Math.max(0,e-1))},[]);return(0,p.jsxs)(I.GO,{onClose:n,"data-testid":"duplicateWizard-modal",children:[(0,p.jsx)(w.z,{onClose:n,title:"Set Up Duplicate",children:(0,p.jsx)(l.Flex,{gap:2,children:(0,p.jsx)(l.Button,{label:"Skip, I'll keep it as is",flavour:"hollow",onClick:G,disabled:B,"data-testid":"duplicateWizard-skip"})})}),(0,p.jsx)(I.Yv,{children:(0,p.jsxs)(l.Flex,{column:!0,gap:4,children:[(0,p.jsxs)(l.Text,{color:"textLite",children:["Step ",f+1," of ",c.length]}),"global"===L.type&&(0,p.jsx)(de,{name:j,setName:v,isNameValid:y,setIsNameValid:C,globalNodeIds:k,setGlobalNodeIds:F,hasNodeFilter:L.hasNodeFilter}),"singleNode"===L.type&&(0,p.jsx)(ce,{cardTitle:L.cardTitle,flavour:L.flavour,selectedNodeId:A[L.cardId],setSelectedNodeId:e=>T(t=>({...t,[L.cardId]:e}))}),(0,p.jsxs)(l.Flex,{justifyContent:"between",gap:2,children:[!z&&(0,p.jsx)(l.Button,{label:"Back",flavour:"hollow",onClick:_,"data-testid":"duplicateWizard-back"}),(0,p.jsx)(l.Flex,{flex:!0}),(0,p.jsx)(l.Button,{label:M?"Complete":"Next",onClick:P,disabled:!y||B,isLoading:B,"data-testid":"duplicateWizard-next"})]})]})})]})};var he=n(88255),xe=n(65380),ge=n(42790),me=n(83330),pe=n(60908),fe=(n(8872),n(85163)),be=n(71123);const je=function(e,t){let{containerIds:n,containers:o,layout:l}=e,{extraKey:r}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const s={},a=n.reduce((e,n)=>{const a=(0,be.bj)(l[n],"vertical");return e[n]={...o[n],level:0,id:n,subMenuIds:a.reduce((e,o)=>{let{id:l}=o;return"text"!==t(l).type&&e.push(`${n}|${l}`),e},[]),subMenuChartIds:[],link:`${(0,fe.A)(`menu_${n}`)}`,forceVisibility:!0,arFlavour:"anomaly",extraKey:r},a.forEach(e=>{const o=`${n}|${e.id}`,l=t(e.id);"text"!==l.type&&(s[o]={name:l.title,level:1,id:o,menuId:n,chartIds:[],link:`${(0,fe.A)(`menu_${n}_submenu_${o}`)}`,arFlavour:"anomaly",showAR:!1,extraKey:r})}),e},{});return{menuIds:n,menuById:a,subMenuById:s}};var ve=n(6304),ye=n(57738),Ie=n(99728),we=n(67294),Ce=n(51262),Se=n(39175);const ke=e=>{let{id:t}=e;const[n,r]=(0,d.TN)({id:t,key:"name"}),[s,a]=(0,o.useState)(n||"");(0,o.useEffect)(()=>{a(n||"")},[n]);const i=(0,o.useCallback)(e=>{a(e.target.value)},[]),c=(0,o.useCallback)(()=>{s!==n&&r(s||"Untitled Dashboard")},[s,n,r]);return(0,p.jsx)(l.TextInput,{value:s,onChange:i,onBlur:c,placeholder:"Untitled Dashboard","data-testid":"dashboardHeader-title-input",width:"180px"})},Fe=function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];!function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const{navigator:n}=(0,o.useContext)(r._3),l=(0,r.zy)();(0,o.useEffect)(()=>{if(!t)return;const o=n.block(t=>{const n={...t,retry(){o(),t.retry()}};e(n)});return o},[n,e,t,l])}((0,o.useCallback)(t=>{"REPLACE"!==t.action?window.confirm(e)&&t.retry():t.retry()},[e]),t)},Ae="Are you sure you want to leave this dashboard?\nChanges will be lost.";var Te=n(51571);const Ne=e=>{let{id:t}=e;const[,n]=(0,ne.A)(),o=(0,ee.DH)(t,{onFail:n}),l=(0,d.fz)(t,"processing"),r=(0,d.fz)(t,"isOwner"),s=(0,d.zN)(t);return(0,p.jsx)(Te.A,{permission:r?"dashboard:UpdateSelf":"dashboard:Update",label:"Save",onClick:()=>o(),disabled:s,isLoading:l,"data-testid":"dashboardHeaderActionBar-save-button","data-ga":"action-bar::click-save::cust-dashboard"})},Le=e=>{let{id:t}=e;const n=(e=>{const t=(0,d.zN)(e),n=(0,ee.Cb)(e),l=(0,i.x3)();return(0,o.useCallback)(()=>{if(!t){if(!window.confirm(Ae))return;n()}l(!1)},[t,n,l])})(t);return(0,p.jsxs)(l.Flex,{gap:2,alignItems:"center",children:[(0,p.jsx)(Ne,{id:t}),(0,p.jsx)(l.Button,{label:"Exit",flavour:"hollow",onClick:n,"data-testid":"dashboardHeaderActionBar-exit-button","data-ga":"action-bar::click-exit::cust-dashboard"})]})},Me=(0,o.memo)(Le),ze=e=>{let{id:t,...n}=e;const[r,s]=(0,d.TN)({id:t,key:"respectNodesScope"}),a=(0,ee.DH)(t),i=(0,o.useCallback)(()=>{s(!r),a()},[r,s]);return(0,p.jsx)(l.Toggle,{...n,colored:!0,onChange:i,checked:!r,margin:[0],labelRight:"Apply global filters"})};var Be=n(67916),De=n(12273),Ee=n(81214);const Oe=e=>{let{dashboardId:t,spaceId:n,roomId:r,onClose:s}=e;const[a,d]=(0,o.useState)(!1),[i,c]=(0,o.useState)(null),[u,h]=(0,o.useState)(!1),[{after:x,before:g}]=(0,ge.N9)();return(0,p.jsx)(l.Modal,{backdropProps:{backdropBlur:!0},onClickOutside:s,onEsc:s,children:(0,p.jsxs)(l.ModalContent,{width:"600px",children:[(0,p.jsxs)(l.ModalHeader,{children:["TV Mode URL",(0,p.jsx)(l.ModalCloseButton,{onClose:s})]}),(0,p.jsx)(l.ModalBody,{column:!0,gap:4,children:i?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(De.FU,{children:i}),(0,p.jsxs)(l.Flex,{alignItems:"center",background:"warningBackground",gap:4,padding:[3,3],round:!0,children:[(0,p.jsx)(l.Text,{color:"warning",children:"\u26a0\ufe0f"}),(0,p.jsx)(l.Text,{children:"This URL contains a unique access token. Keep it secure and only share with trusted users."})]})]}):(0,p.jsx)(l.Text,{children:"Generate a shareable TV mode URL for this dashboard. A new access token will be created automatically."})}),(0,p.jsxs)(l.ModalFooter,{gap:2,children:[(0,p.jsx)(l.Button,{flavour:"hollow",onClick:s,children:"Cancel"}),i?(0,p.jsx)(l.Button,{onClick:async()=>{if(i)try{await(0,Ee.A)(i)&&(h(!0),setTimeout(()=>h(!1),2e3))}catch(e){console.error("Failed to copy URL:",e)}},children:u?"Copied!":"Copy URL"}):(0,p.jsx)(l.Button,{onClick:async()=>{d(!0);try{const e=function(e,t,n,o){let l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;const s=window.location.origin,a=new URLSearchParams(location.search).get("agent");return`${s}/webviews/dashboards/${t}?space_id=${n}&room_id=${o}${a?`&agent=${a}`:""}#token=${e}&after=${l}&before=${r}`}((await(0,Be.Ey)({description:`TV Mode - Dashboard ${t}`,scope:"scope:all"})).data.token,t,n,r,x,g);c(e)}catch(e){console.error("Failed to create token:",e)}finally{d(!1)}},disabled:a,children:a?"Generating...":"Generate a new URL"})]})]})})};var $e=n(46587);const Re=(0,n(74891).A)(l.Button),Ge=e=>{let{dashboardId:t,spaceId:n,roomId:r,iconOnly:s,small:a}=e;const d=(0,$e.uW)("isAnonymous"),[i,c]=(0,o.useState)(!1),u=(0,o.useMemo)(()=>d?"Sign in first to generate a TV mode URL":"Generate TV Mode URL",[d]);return(0,p.jsxs)(p.Fragment,{children:[s?(0,p.jsx)(l.IconButton,{icon:"monitoring",tooltip:u,flavour:"hollow",small:a,onClick:()=>c(!0),"data-testid":"tv-button",disabled:d}):(0,p.jsx)(Re,{flavour:"hollow",icon:"monitoring",tooltip:u,onClick:()=>c(!0),"data-testid":"tv-button",textTransform:"none",disabled:d,noWrapper:!0,children:"TV mode"}),i&&(0,p.jsx)(Oe,{dashboardId:t,spaceId:n,roomId:r,onClose:()=>c(!1)})]})},Pe=e=>{let{id:t,onOpenDuplicateWizard:n}=e;const{name:r,spaceId:s,roomId:a,duplicate:c}=(0,d.fz)(t),u=(0,i.x3)(),h=(0,ye.L)(),x=(0,Ie.JT)("dashboard:Create"),g=(0,we.q)(),{hasLimitations:m,maxDashboards:f}=(0,Ce.A)(),b=g.some(e=>e===Se.LA),j=x&&!(m&&g.length-(b?1:0)>=f),[v,,y,I]=(0,ve.A)(),w=(0,o.useCallback)(()=>{I(),h(t)},[t,h,I]);return(0,p.jsxs)(l.Flex,{justifyContent:"between",alignItems:"center",padding:[4,0],"data-testid":"dashboardHeader",children:[(0,p.jsx)(l.Text,{color:"text",children:r||"Untitled Dashboard"}),(0,p.jsxs)(l.Flex,{gap:2,alignItems:"center",children:[c&&(0,p.jsx)(l.IconButton,{icon:"gear",tooltip:"Set up duplicate",flavour:"hollow",small:!0,onClick:n,"data-testid":"dashboardHeader-updateDuplicate-button","data-ga":"header::click-update-duplicate::cust-dashboard"}),(0,p.jsx)(l.IconButton,{icon:"settings",tooltip:"Edit dashboard",flavour:"hollow",small:!0,onClick:()=>u(!0),"data-testid":"dashboardHeader-edit-button","data-ga":"header::click-edit::cust-dashboard"}),(0,p.jsx)(l.IconButton,{icon:"copy",tooltip:j?"Duplicate dashboard":"Cannot duplicate",flavour:"hollow",small:!0,onClick:y,disabled:!j,"data-testid":"dashboardHeader-duplicate-button","data-ga":"header::click-duplicate::cust-dashboard"}),(0,p.jsx)(Ge,{dashboardId:t,spaceId:s,roomId:a,iconOnly:!0,small:!0})]}),v&&(0,p.jsx)(l.ConfirmationDialog,{title:"Duplicate dashboard",message:`A new dashboard named "Copy of ${r||"Untitled Dashboard"}" will be created in this room with the same layout and card configuration. Node selections will be reset so you can configure them for the new dashboard.`,confirmLabel:"Duplicate",handleConfirm:w,handleDecline:I,isConfirmPositive:!0,hideIcon:!0,"data-testid":"dashboardHeader-duplicate-confirm","data-ga":"header::confirm-duplicate::cust-dashboard"})]})},_e=e=>{let{id:t}=e;return(0,p.jsxs)(l.Flex,{justifyContent:"between",alignItems:"center",padding:[4,0],"data-testid":"dashboardHeader",children:[(0,p.jsx)(ke,{id:t}),(0,p.jsxs)(l.Flex,{gap:4,alignItems:"center",children:[(0,p.jsx)(ze,{id:t}),(0,p.jsx)(Me,{id:t})]})]})},qe=e=>{let{id:t,isEditMode:n,onOpenDuplicateWizard:o}=e;return n?(0,p.jsx)(_e,{id:t}):(0,p.jsx)(Pe,{id:t,onOpenDuplicateWizard:o})},Ve=(0,o.memo)(qe);var We=n(85877);const He="typography",Ke="metrics",Ue="functions",Qe="logs",Je="feed",Ye="infrastructure",Ze="roomOverview",Xe=[{id:He,icon:"text_add",tooltip:"Typography"},{id:Ke,icon:"room_overview",tooltip:"Metrics"},{id:Ue,icon:"live",tooltip:"Live"},{id:Qe,icon:"logs",tooltip:"Logs"},{id:Je,icon:"feed",tooltip:"Events"},{id:Ye,icon:"nodes_hollow",tooltip:"Infrastructure"},{id:Ze,icon:"room_home",tooltip:"Room Overview"}],et=(0,b.default)(l.Flex).attrs(e=>{let{$active:t}=e;return{alignItems:"center",justifyContent:"center",cursor:"pointer",padding:[3,4],round:.5,border:{side:"all",color:"primary"},background:t?"primary":"transparent",_hover:t?{background:"primary"}:{background:"primary",backgroundOpacity:.1},zIndex:51}}).withConfig({displayName:"toolbar__ToolbarButtonContainer",componentId:"sc-18uufnr-0"})(["transition:background 0.15s;"]),tt=e=>{let{id:t,icon:n,tooltip:o,isActive:r,onClick:s}=e;return(0,p.jsx)(et,{"data-testid":`toolbar-button-${t}`,$active:r,onClick:s,title:o,children:(0,p.jsx)(l.Icon,{name:n,color:r?"mainBackground":"primary",width:"16px",height:"16px"})})},nt=()=>{const e=(0,i.wz)(),t=(0,i.ww)();return(0,p.jsx)(l.Flex,{"data-testid":"palette-toolbar",column:!0,alignItems:"center",justifyContent:"center",padding:[0,2],gap:6,height:"100%",children:Xe.map(n=>(0,p.jsx)(tt,{id:n.id,icon:n.icon,tooltip:n.tooltip,isActive:e===n.id,onClick:()=>t(n.id)},n.id))})};var ot=n(25616);const lt=e=>{let{item:t}=e;const{context:n,metadata:r,nodeIds:s}=t,a=(0,B.eg)(),d=(0,F.vt)(),i=(0,h.ID)(),c=(0,L.K)({spaceId:d,roomId:i}),u=`preview-${n}`,x=(0,o.useMemo)(()=>{a.getNodes({id:u}).forEach(e=>e.destroy());const{info:e,valueRange:t,height:o,colors:l}=(0,N.Ay)(r),d=a.makeChart({attributes:{id:u,contextScope:[n],host:c,roomId:i,info:e,valueRange:t,height:(o||0)+207,enabledNavigation:!1,nodesScope:s,...l&&{colors:l}}});return a.getRoot().appendChild(d),d},[a,n,u,c,i,r,s]);return(0,o.useLayoutEffect)(()=>()=>x.destroy(),[x]),(0,p.jsx)(l.Flex,{height:{min:"320px"},column:!0,children:(0,p.jsx)(z.A,{chart:x,margin:[2,0,0]})})};var rt=n(31522),st=n(65067),at=n(56452);const dt=e=>{let{item:t}=e;const{selectedNodeIds:n,groupBy:o=[],colorBy:r=rt.jZ}=t.config,s=(0,S.CK)(),a=(0,S.nj)(),d=n?.length?n:s,i=(0,g.Gt)(d);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Node Grid"})}),(0,p.jsx)(l.Flex,{flex:!0,overflow:"auto",children:(0,p.jsx)(at.A,{nodes:i,groupBy:o,colorBy:r,loaded:a})})]})};var it=n(49181),ct=n(59092);const ut={nodeStatus:e=>(0,it.GM)(e.state),alertStatus:e=>{if((e.alerts_critical||0)>0)return"Critical";return(e.alerts_warning||0)>0?"Warning":"No alerts"}},ht=e=>{let{item:t}=e;const{selectedNodeIds:n,groupBy:r}=t.config,s=(0,S.CK)(),a=(0,S.nj)(),d=n?.length?n:s,i=(0,g.Gt)(d),c=(0,o.useMemo)(()=>(e=>{const t={reachable:0,stale:1,unreachable:2,created:3};return[...e].sort((e,n)=>(t[e.state]??4)-(t[n.state]??4))})(i),[i]),u=(0,o.useMemo)(()=>{const e=ut[r];if(!e)return null;const t={};return c.forEach(n=>{const o=e(n);t[o]||(t[o]=[]),t[o].push(n)}),Object.entries(t)},[c,r]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:`Node List (${i.length})`})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"auto",children:(0,p.jsx)(ct.A,{nodes:c,groupedNodes:u,loaded:a,nodeCount:i.length})})]})};n(25509),n(65223),n(60321),n(41927),n(11632),n(64377),n(66771),n(12516),n(68931),n(52514),n(35694),n(52774),n(49536),n(21926),n(94483),n(16215);var xt=n(41716),gt=n(19075),mt=n(94230);const pt=e=>{let{item:t}=e;const{selectedNodeIds:n}=t.config,r=(0,xt.s)("ids")||[],s=(0,xt.s)("loaded"),a=(0,gt.Gq)(r),d=(0,o.useMemo)(()=>n?.length?new Set(n):null,[n]),{critical:i,warning:c}=(0,o.useMemo)(()=>(d?a.filter(e=>d.has(e.nodeId)):a).reduce((e,t)=>{let{status:n}=t;return e[n]=(e[n]||0)+1,e},{critical:0,warning:0,clear:0}),[a,d]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Alert Status"})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"hidden",children:(0,p.jsx)(mt.A,{critical:i,warning:c,loaded:s})})]})};var ft=n(95760);const bt=e=>{let{item:t}=e;const{selectedNodeIds:n}=t.config,r=(0,S.CK)(),s=n?.length?n:r,a=(0,g.Gt)(s),d=(0,S.nj)(),i=(0,xt.s)("ids")||[],c=(0,xt.s)("loaded"),u=(0,gt.Gq)(i),h=d&&c,x=(0,o.useMemo)(()=>{const e={};return u.forEach(t=>{if(!t.nodeId)return;e[t.nodeId]||(e[t.nodeId]={critical:[],warning:[]});const n=t.status?.toLowerCase();"critical"===n?e[t.nodeId].critical.push(t):"warning"===n&&e[t.nodeId].warning.push(t)}),a.map(t=>({node:t,criticalAlerts:e[t.id]?.critical||[],warningAlerts:e[t.id]?.warning||[]})).filter(e=>{let{criticalAlerts:t,warningAlerts:n}=e;return t.length>0||n.length>0}).sort((e,t)=>{const n=1e3*e.criticalAlerts.length+e.warningAlerts.length;return 1e3*t.criticalAlerts.length+t.warningAlerts.length-n})},[a,u]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Alerts Per Node"})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"auto",children:(0,p.jsx)(ft.A,{nodesWithAlerts:x,nodeCount:a.length,loaded:h})})]})};n(74423);var jt=n(52346);const vt=72e5,yt=3e5,It=e=>{let{item:t}=e;const{selectedNodeIds:n}=t.config,r=(0,xt.s)("ids")||[],s=(0,xt.s)("loaded"),a=(0,gt.Gq)(r),d=(0,S.CK)(),i=n?.length?n:d,{buckets:c,maxTotal:u,totalAlerts:h}=(0,o.useMemo)(()=>{const e=Date.now(),t=e-vt,o=Array.from({length:24},(e,n)=>({ts:t+n*yt,critical:0,warning:0})),l=n?.length?a.filter(e=>i.includes(e.nodeId)):a;l.forEach(n=>{if(!n.lastUpdated)return;const l=1e3*n.lastUpdated;if(l<t||l>e)return;const r=Math.floor((l-t)/yt);if(r<0||r>=24)return;const s=n.status?.toLowerCase();"critical"===s?o[r].critical++:"warning"===s&&o[r].warning++});const r=Math.max(...o.map(e=>e.critical+e.warning),1),s=l.filter(n=>{const o=n.status?.toLowerCase();if("critical"!==o&&"warning"!==o)return!1;if(!n.lastUpdated)return!1;const l=1e3*n.lastUpdated;return l>=t&&l<=e}).length;return{buckets:o,maxTotal:r,totalAlerts:s}},[a,n,i]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:`Alerts by Hour (${h})`})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"hidden",padding:[2],children:(0,p.jsx)(jt.A,{buckets:c,maxTotal:u,totalAlerts:h,loaded:s})})]})};var wt=n(77125);const Ct=e=>{let{item:t}=e;const{selectedNodeIds:n,visibleItems:r}=t.config,s=(0,S.CK)(),a=n?.length?n:s,d=(0,g.Gt)(a),i=(0,S.nj)(),c=(0,xt.s)("ids")||[],u=(0,xt.s)("loaded"),h=(0,gt.Gq)(c),x=i&&u,m=(0,o.useMemo)(()=>new Set(a),[a]),f=(0,o.useMemo)(()=>{const e={Live:0,Stale:0,Offline:0,Unseen:0};return d.forEach(t=>{const n=(0,it.GM)(t.state);e[n]=(e[n]||0)+1}),e},[d]),{critical:b,warning:j,clear:v}=(0,o.useMemo)(()=>(n?.length?h.filter(e=>m.has(e.nodeId)):h).reduce((e,t)=>{let{status:n}=t;return e[n]=(e[n]||0)+1,e},{critical:0,warning:0,clear:0}),[h,n,m]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:`Nodes (${Object.values(f).reduce((e,t)=>e+t,0)})`})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"auto",children:(0,p.jsx)(wt.A,{statusCounts:f,critical:b,warning:j,clear:v,visibleItems:r,loaded:x})})]})};var St=n(58533),kt=n(87242);const Ft=[],At=e=>{let{item:t}=e;const{visibleItems:n}=t.config||{},{loaded:r,metricsCollected:s=0}=(0,St.VH)(),a=(0,F.vt)(),d=(0,h.ID)(),{charts:i,loaded:c,error:u}=(0,T.A)(a,d,Ft),x=Object.keys(i).length,{loaded:g,value:m}=(0,gt.oU)(),f=m?.length||0,b=(0,o.useMemo)(()=>[{id:"metrics",label:"Metrics available",value:s,loaded:r},{id:"charts",label:"Charts visualized",value:x,loaded:c&&!u},{id:"alerts",label:"Alerts configured",value:f,loaded:g}].filter(e=>!n||n.includes(e.id)),[s,r,x,c,u,f,g,n]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Stats Overview"})}),(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",gap:4,children:(0,p.jsx)(kt.A,{stats:b})})]})};var Tt=n(46025);const Nt=e=>{let{item:t}=e;const{dataRetention:n,loaded:o}=(0,St.VH)();return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Data Retention per Node"})}),(0,p.jsx)(l.Flex,{flex:!0,overflow:"hidden",padding:[2,3,3],children:o?n?.length?(0,p.jsx)(Tt.A,{dataRetention:n}):(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"No retention data"})}):(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Loading..."})})})]})};var Lt=n(7761),Mt=n(39431);const zt=e=>{let{item:t}=e;const{visibleItems:n}=t.config||{},o=(0,Lt.jg)();return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"transparent",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Nodes with most alerts (24h)"})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"auto",gap:3,children:(0,p.jsx)(Mt.A,{alertsStats:o,visibleItems:n,loaded:o.loaded})})]})};var Bt=n(19529);const Dt=e=>{let{item:t}=e;const{visibleItems:n}=t.config||{},{loaded:r,totalParents:s,totalChildren:a,totalStandalone:d,replicationFactor:i}=(0,Lt.c8)(),c=(0,o.useMemo)(()=>[{label:"Parents",value:s,color:["blue","indigo"],id:"parents"},{label:"Children",value:a,color:["purple","lilac"],id:"children"},{label:"Standalone",value:d,color:["yellow","yellow120"],id:"standalone"}].filter(e=>!n||n.includes(e.id)),[s,a,d,n]),u=(0,o.useMemo)(()=>[{label:"None",value:i?.r_1||0,color:rt.q5.r_1,id:"none"},{label:"Single",value:i?.r_2||0,color:rt.q5.r_2,id:"single"},{label:"Multi",value:i?.["r_*"]||0,color:rt.q5["r_*"],id:"multi"}].filter(e=>!n||n.includes(e.id)),[i,n]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"elementBackground",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:"Replication"})}),(0,p.jsx)(l.Flex,{flex:!0,column:!0,overflow:"auto",gap:3,children:(0,p.jsx)(Bt.A,{topologyData:c,replicationData:u,loaded:r})})]})};var Et=n(81989),Ot=n(44252),$t=n(13607),Rt=n(40580),Gt=n(81445),Pt=n(71488);const _t=e=>{let{item:t}=e;const{selectedFn:n,flavour:r,visibleItems:s,nodeIds:a,fnType:d,acceptedParams:i,functionParamsFilters:c,defaultCharts:u,displayName:h}=t.config,{loading:x,loaded:g,data:m,columns:f,error:b,sortedColumns:j,sortColumn:v,sortDirection:y,columnVisibility:I,pinnedColumns:w,groupByColumns:C,manualSorting:S,charts:k,onRefresh:F,histogram:A,availableHistograms:T,customCharts:N}=(0,Rt.A)({selectedFn:n,selectedNodeIds:a,fnType:d,acceptedParams:i,functionParamsFilters:c}),L=!s||s.includes("charts"),M=!s||s.includes("table"),z=L&&!!u?.length,B=L&&!!A,D=L&&!!N,E="feed"===r,O=(0,o.useCallback)(()=>{},[]);return(0,p.jsxs)(st.A,{column:!0,overflow:"hidden",background:"transparent",border:{side:"all",color:"borderSecondary"},children:[(0,p.jsx)(l.Flex,{padding:[2,3],children:(0,p.jsx)(l.Text,{strong:!0,children:h||n||"Function"})}),(0,p.jsxs)(l.Flex,{flex:!0,column:!0,overflow:"hidden",children:[!g&&x&&(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Loading..."})}),b&&(0,p.jsx)(l.Flex,{padding:[2,3],alignItems:"center",children:(0,p.jsx)(l.Text,{color:"error",children:"string"===typeof b?b:b.errorMessage||"Error"})}),g&&(z||M||B||D)&&(0,p.jsxs)(l.Flex,{flex:!0,column:!0,overflow:"hidden",gap:2,children:[B&&(0,p.jsx)(Et.A,{...M&&{height:"380px"},histogram:A,availableHistograms:T,data:m,histogramId:A?.id,filters:(c||{})[A?.id]||null,onFiltersChange:O,toolboxReload:e=>{let{disabled:t}=e;return(0,p.jsx)($t.A,{onRefresh:F,loading:x,testId:"preview-function-histogram",dataGa:"preview-function-histogram"})},hideToolbox:!0,nodeIds:a,fn:n}),z&&(0,p.jsx)(Pt.A,{defaultCharts:u,charts:k,data:m,columns:f,groupByColumns:C,loaded:g,selectedFn:n,onRefresh:F,loading:x,compact:M,hideToolbox:!0}),D&&(0,p.jsx)(Ot.A,{customCharts:N,data:m,containerWidth:0,paramsKey:{extraKey:"preview"}}),M&&(0,p.jsx)(Gt.A,{title:(0,p.jsx)($t.A,{onRefresh:F,loading:x,testId:"preview-function-table",dataGa:"preview-function-table"}),data:m,columns:f,sortedColumns:j,sortColumn:v,sortDirection:y,columnVisibility:I,pinnedColumns:w,groupByColumns:C,loaded:g,manualSorting:S,isFeed:E})]}),g&&!z&&!M&&!B&&!D&&(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:L?"No chart data":"No table data"})})]})]})},qt={chart:lt,text:null,nodeGrid:dt,nodeList:ht,alertStatus:pt,alertsPerNode:bt,hourlyAlerts:It,nodeStats:Ct,statsOverview:At,dataRetention:Nt,alertNodes:zt,replicationStats:Dt,function:_t},Vt=e=>{let{item:t}=e;const n=qt[t.type];return n?(0,p.jsx)(ot.Ay,{fallback:(0,p.jsx)(ot.dK,{canRetry:!1}),children:(0,p.jsx)(n,{item:t})}):null},Wt=e=>{let{items:t}=e;return(0,p.jsx)(l.Flex,{column:!0,gap:3,overflow:"auto",width:"100%",children:t.map(e=>(0,p.jsx)(Vt,{item:e},e.type+"-"+(e.context||e.config?.textType||e.config?.selectedFn||"")))})},Ht=e=>{let{title:t}=e;return(0,p.jsx)(l.Text,{color:"text",fontSize:"12px",lineHeight:"16px",children:t})},Kt=e=>{let{label:t="Import",onClick:n,disabled:o}=e;return(0,p.jsx)(l.Flex,{justifyContent:"end",padding:[4,0],children:(0,p.jsx)(l.Button,{label:t,onClick:n,disabled:o})})},Ut={title:!1,subtitle:!1,body:!1},Qt={title:l.H1,subtitle:l.H4,body:l.TextBig},Jt=e=>{let{type:t,label:n,preview:o,checked:r,onToggle:s}=e;const a=Qt[t];return(0,p.jsxs)(l.Flex,{column:!0,gap:2,padding:[2,3],border:{side:"all",color:"border"},width:"100%",height:{min:"78px"},children:[(0,p.jsxs)(l.Flex,{alignItems:"center",gap:1,children:[(0,p.jsx)(l.Checkbox,{checked:r,onChange:s}),(0,p.jsx)(l.Text,{color:"text",children:n})]}),(0,p.jsx)(a,{color:"textFocus",children:o})]})},Yt=e=>{let{dashboardId:t,onPreviewChange:n}=e;const[r,s]=(0,o.useState)(Ut),a=(0,A.Kv)(t),d=(0,i.WM)(),c=e=>s(t=>({...t,[e]:!t[e]}));(0,o.useEffect)(()=>{if(!n)return;const e=[];r.title&&e.push({type:"text",config:{textType:"title"}}),r.subtitle&&e.push({type:"text",config:{textType:"subtitle"}}),r.body&&e.push({type:"text",config:{textType:"body"}}),n(e)},[r,n]);const u=r.title||r.subtitle||r.body;return(0,p.jsxs)(l.Flex,{column:!0,gap:2,flex:!0,children:[(0,p.jsx)(Ht,{title:"Titles and text"}),(0,p.jsxs)(l.Flex,{column:!0,gap:2.5,children:[(0,p.jsx)(Jt,{type:"title",label:"Title",preview:"Heading 1",checked:r.title,onToggle:()=>c("title")}),(0,p.jsx)(Jt,{type:"subtitle",label:"Subtitle",preview:"Heading 2",checked:r.subtitle,onToggle:()=>c("subtitle")}),(0,p.jsx)(Jt,{type:"body",label:"Body",preview:"Lorem Ipsum",checked:r.body,onToggle:()=>c("body")})]}),(0,p.jsx)(Kt,{label:"Import components",onClick:()=>{let e=null;r.title&&(e=a({dashboardId:t,textType:"title"})),r.subtitle&&(e=a({dashboardId:t,textType:"subtitle"})),r.body&&(e=a({dashboardId:t,textType:"body"})),s(Ut),d(null),e&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{const t=document.querySelector(`[data-id="${e}"]`);t&&t.scrollIntoView({behavior:"smooth",block:"nearest"})})})},disabled:!u})]})};n(23215);var Zt=n(50694),Xt=n(58243),en=n(41061);const tn=(e,t,n)=>{const l=(0,g.Gt)(e),r=(0,h.ID)(),s=(0,Zt.Jk)(r);return(0,o.useMemo)(()=>{if(t?.length>0)return t;const e=n?Object.entries(n).filter(e=>{let[,t]=e;return t?.length>0}):[];if(0===e.length)return[];return l.filter(t=>e.every(e=>{let[n,o]=e;if("selectedGroups"===n)return o.some(e=>{const n=en.E9.find(t=>t.id===e);if(n)return n.showFn(t);const o=s?.find(t=>t.id===e);return!!o&&(0,Xt.BW)(t,o.filters,o.selectedNodeIds)});if("nodeStatuses"===n)return o.includes(t.nodeStatus);if("nodeVersions"===n)return o.includes(t.version);if("nodeCapabilities"===n)return o.some(e=>t.capabilities&&e in t.capabilities);if("os.nm"===n)return o.includes(t.os?.nm);if(n.startsWith("label.")){const e=n.replace("label.","");return t.labels&&o.some(n=>{const[,o]=n.includes("|")?n.split("|",2):[e,n];return t.labels[e]===o})}return!0})).map(e=>e.id)},[l,t,n,s])},nn=e=>{let{label:t}=e;return(0,p.jsx)(l.Text,{color:"textLite",fontSize:"11px",lineHeight:"14px",children:t})};var on=n(98054),ln=n(33099),rn=n(47427);const sn=e=>{let{children:t,...n}=e;return(0,p.jsx)(l.Flex,{alignItems:"center",gap:2,padding:[1,2],cursor:"pointer",_hover:{background:"borderSecondary"},...n,children:t})},an=e=>{let{dashboardId:t,onPreviewChange:n}=e;const[r,s]=(0,o.useState)(new Set),[a,d]=(0,o.useState)(null),[c,u]=(0,o.useState)(null),[h,x]=(0,o.useState)([]),[g,m]=(0,o.useState)({}),f=(0,S.CK)(),b=tn(f,h,g),{menuIds:j,menuById:v,roomCharts:y}=(0,ln.A)(b),I=(0,A.nM)(t),w=(0,i.WM)(),C=(0,B.eg)();(0,o.useEffect)(()=>{if(!n)return;const e=setTimeout(()=>{const e=Array.from(r).filter(e=>y[e]).map(e=>({type:"chart",context:e,metadata:y[e],nodeIds:b}));n(e)},150);return()=>clearTimeout(e)},[r,b,y,n]);const k=(0,o.useMemo)(()=>c?j.filter(e=>{const t=v[e];return!!t&&t.contexts?.some(e=>c.has(e))}):j,[j,v,c]),F=(0,o.useMemo)(()=>{if(!a||!v[a])return[];const e=(v[a].contexts||[]).filter(e=>y[e]).map(e=>({id:e,context:e,title:y[e].title||e}));return c?e.filter(e=>c.has(e.context)):e},[a,v,y,c]),T=(0,o.useCallback)(e=>{s(t=>{const n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),N=(0,o.useCallback)(()=>{const e=b.length>0?{nodesScope:b}:{},t=Array.from(r),n=t.length;let o=null;t.forEach((t,l)=>{const r=1===n||3===n&&2===l?12:6;let s={};const a=C.getNode({id:`preview-${t}`});a&&(s=(0,P.h)(a.getAttributes())),I([t],{...e,...s,itemLayout:{width:r}},e=>{o=e.id})}),s(new Set),w(null),o&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{const e=document.querySelector(`[data-id="${o}"]`);e&&e.scrollIntoView({behavior:"smooth",block:"nearest"})})})},[r,I,b,w,C]),L=(0,o.useCallback)(e=>e.contexts?.some(e=>y[e]),[y]),M=r.size>0,z=j.length>0;return(0,p.jsxs)(l.Flex,{column:!0,height:"100%",gap:1,overflow:"hidden",children:[(0,p.jsx)(Ht,{title:"Metrics"}),(0,p.jsx)(nn,{label:"Select Nodes"}),(0,p.jsx)(ae.A,{nodeIds:f,selectedNodeIds:h,setSelectedNodeIds:x,filters:g,setFilters:m}),(0,p.jsx)(nn,{label:"Select Metrics"}),(0,p.jsx)(rn.A,{onFilteredContextIdsChange:u}),(0,p.jsxs)(l.Flex,{height:"100%",overflow:"hidden",children:[(0,p.jsx)(l.Flex,{column:!0,width:"280px",overflow:{vertical:"auto"},padding:[2,0],border:{side:"right",color:"borderSecondary"},children:z?(0,p.jsx)(on.A,{menuIds:k,menuById:v,selectedId:a,onSelect:d,isItemVisible:L}):(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Loading categories..."})})}),(0,p.jsxs)(l.Flex,{column:!0,flex:!0,overflow:{vertical:"auto"},padding:[2,0],children:[!a&&(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Select a category"})}),a&&0===F.length&&(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"No metrics in this category"})}),F.map(e=>(0,p.jsxs)(sn,{onClick:()=>T(e.context),children:[(0,p.jsx)(l.Checkbox,{checked:r.has(e.context),onChange:t=>{t.stopPropagation(),T(e.context)}}),(0,p.jsx)(l.Text,{ellipsis:!0,children:e.title})]},e.id))]})]}),(0,p.jsx)(Kt,{label:M?`Import (${r.size})`:"Import",onClick:N,disabled:!M})]})};var dn=n(16373);const cn=e=>{let{value:t,onChange:n}=e;return(0,p.jsx)(l.TextInput,{value:t,onChange:e=>n(e.target.value),placeholder:"Search functions...",iconLeft:(0,p.jsx)(l.Icon,{name:"magnify",color:"textLite",size:"small"}),width:"100%",height:"32px"})};var un=n(15744);const hn=(e,t)=>(0,o.useMemo)(()=>{const n=t?e.filter(e=>e.name.toLowerCase().includes(t.toLowerCase())):e,o={},l=[],r=new Set;un.A.forEach(e=>{const t=e.id||e.title.toLowerCase(),s=n.filter(t=>{return n=t.name,o=e.match,!!o?.some(e=>n===e||n.startsWith(e+"-")||n.startsWith(e))&&(r.add(t.slug),!0);var n,o});if(!s.length)return;l.push(t);const a=s.map(e=>e.slug);o[t]={name:e.title,icon:e.icon,childrenIds:a,descendantIds:a},s.forEach(e=>{o[e.slug]={name:e.name,slug:e.slug,isFunction:!0}})});const s=n.filter(e=>!r.has(e.slug));if(s.length)if(s.forEach(e=>{o[e.slug]={name:e.name,slug:e.slug,isFunction:!0}}),l.length>0){l.push("other");const e=s.map(e=>e.slug);o.other={name:"Other",childrenIds:e,descendantIds:e}}else s.forEach(e=>l.push(e.slug));return{menuIds:l,menuById:o}},[e,t]);var xn=n(1011),gn=n(84103);const mn={type:"table"},pn=(e,t,n)=>{const[l,r]=(0,o.useState)({loading:!1,data:null,error:null}),s=(0,h.ID)(),a=(0,g.yN)(t),d=(0,o.useRef)(!1);return(0,o.useEffect)(()=>{if(!e)return void r({loading:!1,data:null,error:null});if("feed"===n)return void r({loading:!1,data:mn,error:null});if(!t?.length)return void r({loading:!1,data:null,error:null});d.current=!1,r(e=>({...e,loading:!0,error:null}));const o=Date.now();return(0,gn.JJ)({roomId:s,cloudNodeIds:a,nodeIds:t,fn:e,after:o-9e5,before:o,transactionId:(0,xn.A)()}).then(e=>{if(d.current)return;r({loading:!1,data:e?.data||e,error:null})}).catch(e=>{d.current||r({loading:!1,data:null,error:e})}),()=>{d.current=!0}},[e,s,t?.length,a?.[0]]),l};var fn=n(7414),bn=n(380);const jn=e=>{let{flavour:t,visibleItems:n,onToggle:o,defaultCharts:l}=e;const r=(0,fn.nV)({defaultCharts:l},t);return r.length<=1?null:(0,p.jsx)(bn.A,{items:r,selected:n,onChange:o})},vn={fn:"Live",logs:"Logs",feed:"Events"},yn={fn:"Select Function",logs:"Logs Viewer",feed:"Select Event"},In=e=>{let{flavour:t,dashboardId:n,onPreviewChange:r}=e;const[s,a]=(0,o.useState)([]),[d,c]=(0,o.useState)({}),[u,h]=(0,o.useState)(""),[x,g]=(0,o.useState)(null),[m,f]=(0,o.useState)(["charts","table"]),[b,j]=(0,o.useState)({}),v="feed"===t,y=(0,S.CK)();(0,o.useEffect)(()=>{!v&&0===s.length&&y.length>0&&a([y[0]])},[v,y]);const I=tn(y,s,d),{loaded:w,value:C}=(0,dn.vx)({},t),k=(0,o.useMemo)(()=>I.length?C.filter(e=>I.some(t=>e.nodes?.[t])):C,[C,I]),{menuIds:F,menuById:T}=hn(k,u),N=F.length>1||!!T[F[0]]?.childrenIds?.length;(0,o.useEffect)(()=>{if(!x||!T[x]){for(const e of F){const t=T[e];if(t?.isFunction)return void g(e);if(t?.childrenIds?.length)return void g(t.childrenIds[0])}g(null)}},[F,T]);const L=(0,A.VI)(n),M=(0,i.WM)(),z="feed"!==t,B=I.length>0,D=B?I:z?[]:y,{loading:E,data:O}=pn(x,D,t);(0,o.useEffect)(()=>{r&&r(x&&!E&&O?[{type:"function",config:{selectedFn:x,flavour:t,visibleItems:m,nodeIds:D,fnType:O.type||"",displayName:T[x]?.name||"",defaultCharts:O.defaultCharts||[],acceptedParams:O.acceptedParams||[],functionParamsFilters:b}}]:[])},[x,m,b,D,O,E,r,t,T]);const $=(0,o.useCallback)(e=>{g(t=>t===e?null:e),f(["charts","table"]),j({})},[]),R=!!x&&!!O&&!E&&(!z||B),G=(0,o.useCallback)(()=>{if(!R)return;const e=L({dashboardId:n,flavour:t,selectedFn:x,displayName:T[x]?.name||"",selectedNodeIds:D,visibleItems:m,fnType:O.type||"",defaultCharts:O.defaultCharts||[],acceptedParams:O.acceptedParams||[],requiredParams:O.requiredParams||[],columns:O.columns||{},functionParamsFilters:b});M(null),e&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{const t=document.querySelector(`[data-id="${e}"]`);t&&t.scrollIntoView({behavior:"smooth",block:"nearest"})})})},[R,L,n,t,x,T,D,m,O,b,M]);return z&&!B?(0,p.jsxs)(l.Flex,{column:!0,height:"100%",gap:1,overflow:"hidden",children:[(0,p.jsx)(Ht,{title:vn[t]||"Live"}),(0,p.jsx)(nn,{label:"Select Node"}),(0,p.jsx)(ae.A,{nodeIds:y,selectedNodeIds:s,setSelectedNodeIds:a,filters:d,setFilters:c,multi:!1}),(0,p.jsx)(l.Flex,{flex:!0,alignItems:"center",justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Select a node to see available functions"})})]}):(0,p.jsxs)(l.Flex,{column:!0,height:"100%",gap:1,overflow:"hidden",children:[(0,p.jsx)(Ht,{title:vn[t]||"Live"}),"feed"!==t&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(nn,{label:v?"Select Nodes":"Select Node"}),(0,p.jsx)(ae.A,{nodeIds:y,selectedNodeIds:s,setSelectedNodeIds:a,filters:d,setFilters:c,multi:v})]}),!v&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(nn,{label:"Search"}),(0,p.jsx)(cn,{value:u,onChange:h})]}),(0,p.jsxs)(l.Flex,{height:"100%",overflow:"hidden",children:[N&&(0,p.jsxs)(l.Flex,{column:!0,width:"280px",overflow:{vertical:"auto"},padding:[2,0],border:{side:"right",color:"borderSecondary"},children:[(0,p.jsx)(nn,{label:yn[t]||"Select Function"}),F.length>0?(0,p.jsx)(on.A,{menuIds:F,menuById:T,selectedId:x,onSelect:$}):(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:w?"No functions available":"Loading functions..."})})]}),(0,p.jsxs)(l.Flex,{column:!0,flex:!0,overflow:{vertical:"auto"},padding:[2],children:[!x&&(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:w?"No functions available":"Loading functions..."})}),x&&E&&(0,p.jsx)(l.Flex,{padding:[4],justifyContent:"center",children:(0,p.jsx)(l.Text,{color:"textLite",children:"Loading function info..."})}),x&&!E&&O&&(0,p.jsxs)(l.Flex,{column:!0,gap:2,children:[(0,p.jsx)(l.Text,{strong:!0,children:T[x]?.name||x}),(0,p.jsx)(jn,{flavour:t,visibleItems:m,onToggle:f,defaultCharts:O?.defaultCharts})]})]})]}),(0,p.jsx)(Kt,{label:"Import",onClick:G,disabled:!R})]})};n(30670),n(71517),n(11379),n(93777),n(14190),n(12359),n(86097),n(17273),n(27415),n(19929),n(37583),n(55122),n(20230),n(57268),n(79733);const wn=e=>{let{children:t,...n}=e;return(0,p.jsx)(l.Flex,{column:!0,round:1,overflow:"hidden",border:{side:"all",color:"borderSecondary"},background:"mainBackground",...n,children:t})},Cn="nodeGrid",Sn="nodeList",kn="alertStatus",Fn="alertsPerNode",An="hourlyAlerts",Tn={Live:"success",Stale:"warning",Offline:"textLite",Unseen:"textDescription"},Nn=e=>{let{nodeStatusCounts:t}=e;if(0===Object.values(t).reduce((e,t)=>e+t,0))return(0,p.jsx)(wn,{padding:[2],children:(0,p.jsx)(l.Text,{color:"textLite",fontSize:"10px",children:"No nodes"})});const n=Object.entries(t).flatMap(e=>{let[t,n]=e;return Array.from({length:n},(e,n)=>({key:`${t}-${n}`,color:Tn[t]}))});return(0,p.jsx)(wn,{padding:[2],children:(0,p.jsx)(l.Flex,{gap:1,flexWrap:!0,children:n.slice(0,96).map(e=>{let{key:t,color:n}=e;return(0,p.jsx)(l.Flex,{width:"8px",height:"8px",round:"50%",background:n},t)})})})},Ln=e=>{let{nodes:t}=e;const n=t.slice(0,4);return 0===n.length?(0,p.jsx)(wn,{children:(0,p.jsx)(l.Text,{color:"textLite",fontSize:"10px",padding:[1],children:"No nodes"})}):(0,p.jsxs)(wn,{children:[n.map((e,t)=>(0,p.jsxs)(l.Flex,{alignItems:"center",padding:[1],gap:2,border:t<n.length-1?{side:"bottom",color:"borderSecondary"}:void 0,children:[(0,p.jsx)(l.Text,{fontSize:"10px",flex:!0,truncate:!0,children:e.name}),(0,p.jsx)(l.Flex,{flex:!0}),(0,p.jsx)(l.Flex,{width:"8px",height:"8px",round:"50%",background:Tn[(0,it.GM)(e.state)]})]},e.id)),t.length>4&&(0,p.jsx)(l.Flex,{padding:[1],justifyContent:"center",children:(0,p.jsxs)(l.Text,{fontSize:"9px",color:"textLite",children:["+",t.length-4," more"]})})]})},Mn=e=>{let{alertCounts:t}=e;return(0,p.jsx)(wn,{children:(0,p.jsxs)(l.Flex,{children:[(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",justifyContent:"center",padding:[2],flex:!0,background:"error",backgroundOpacity:.2,children:[(0,p.jsx)(l.Text,{fontSize:"10px",color:"error",children:"Critical"}),(0,p.jsx)(l.Text,{fontSize:"20px",strong:!0,color:"error",children:t.critical})]}),(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",justifyContent:"center",padding:[2],flex:!0,background:"warning",backgroundOpacity:.2,children:[(0,p.jsx)(l.Text,{fontSize:"10px",color:"warning",children:"Warning"}),(0,p.jsx)(l.Text,{fontSize:"20px",strong:!0,color:"warning",children:t.warning})]})]})})},zn=e=>{let{alertsByNode:t}=e;const n=t.slice(0,3);return 0===n.length?(0,p.jsx)(wn,{padding:[2],children:(0,p.jsx)(l.Text,{color:"textLite",fontSize:"10px",children:"No alerts"})}):(0,p.jsxs)(wn,{padding:[2],children:[n.map(e=>(0,p.jsxs)(l.Flex,{alignItems:"center",gap:2,margin:[0,0,1,0],children:[(0,p.jsx)(l.Text,{fontSize:"11px",truncate:!0,flex:!0,children:e.name}),(0,p.jsxs)(l.Flex,{gap:1,alignItems:"center",children:[e.critical>0&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l.Flex,{width:"6px",height:"6px",round:"50%",background:"error"}),(0,p.jsx)(l.Text,{fontSize:"10px",color:"textLite",children:e.critical})]}),e.warning>0&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(l.Flex,{width:"6px",height:"6px",round:"50%",background:"warning"}),(0,p.jsx)(l.Text,{fontSize:"10px",color:"textLite",children:e.warning})]})]})]},e.nodeId)),t.length>3&&(0,p.jsxs)(l.Text,{fontSize:"9px",color:"textLite",children:["+",t.length-3," more"]})]})},Bn=e=>{let{buckets:t}=e;const n=Math.max(1,...t.map(e=>e.critical+e.warning));return(0,p.jsx)(wn,{padding:[2],children:(0,p.jsx)(l.Flex,{alignItems:"end",justifyContent:"center",gap:1,height:"50px",children:t.map((e,t)=>{const o=e.critical+e.warning,r=Math.max(2,Math.round(o/n*48)),s=e.critical>0?"error":e.warning>0?"warning":"mainBackgroundDisabled";return(0,p.jsx)(l.Flex,{width:"6px",height:`${r}px`,background:s,round:1},t)})})})},Dn=e=>{let{nodeStatusCounts:t}=e;const n=Object.values(t).reduce((e,t)=>e+t,0);return(0,p.jsxs)(wn,{padding:[2],children:[(0,p.jsx)(l.Flex,{justifyContent:"space-around",children:Object.entries(Tn).map(e=>{let[n,o]=e;return(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",gap:0,children:[(0,p.jsx)(l.Flex,{width:"8px",height:"8px",round:"50%",background:o}),(0,p.jsx)(l.Text,{fontSize:"10px",children:t[n]||0})]},n)})}),n>0&&(0,p.jsx)(l.Flex,{justifyContent:"center",margin:[1,0,0,0],children:(0,p.jsxs)(l.Text,{fontSize:"9px",color:"textLite",children:[n," nodes"]})})]})},En=e=>{let{children:t,...n}=e;return(0,p.jsx)(l.Flex,{column:!0,gap:2,flex:!0,width:{min:0},...n,children:t})},On=e=>{let{label:t,checked:n,onToggle:o}=e;return(0,p.jsx)(l.Checkbox,{checked:n,onChange:o,label:t})},$n=e=>{let{dashboardId:t,onPreviewChange:n}=e;const[r,s]=(0,o.useState)([]),[a,d]=(0,o.useState)({}),[c,u]=(0,o.useState)(new Set),[h,x]=(0,o.useState)({nodeStats:[]}),m=(0,S.CK)(),f=tn(m,r,a),b=(0,g.Gt)(m),j=(0,xt.s)("ids")||[],v=(0,gt.Gq)(j),y=(0,o.useMemo)(()=>{if(0===f.length)return b;const e=new Set(f);return b.filter(t=>e.has(t.id))},[b,f]),I=(0,o.useMemo)(()=>{const e={Live:0,Stale:0,Offline:0,Unseen:0};return y.forEach(t=>{const n=(0,it.GM)(t.state);e[n]=(e[n]||0)+1}),e},[y]),w=(0,o.useMemo)(()=>{if(0===f.length)return v;const e=new Set(f);return v.filter(t=>e.has(t.nodeId))},[v,f]),C=(0,o.useMemo)(()=>{const e={critical:0,warning:0,clear:0};return w.forEach(t=>{void 0!==e[t.status]&&e[t.status]++}),e},[w]),k=(0,o.useMemo)(()=>{const e={};w.forEach(t=>{e[t.nodeId]||(e[t.nodeId]={critical:0,warning:0}),"critical"===t.status&&e[t.nodeId].critical++,"warning"===t.status&&e[t.nodeId].warning++});const t=new Map(y.map(e=>[e.id,e.name]));return Object.entries(e).map(e=>{let[n,o]=e;return{nodeId:n,name:t.get(n)||n,...o}}).sort((e,t)=>1e3*t.critical+t.warning-(1e3*e.critical+e.warning))},[w,y]),F=(0,o.useMemo)(()=>{const e=Array.from({length:24},()=>({critical:0,warning:0}));return w.forEach(t=>{if(!t.lastUpdated)return;const n=new Date(1e3*t.lastUpdated).getHours();"critical"===t.status&&e[n].critical++,"warning"===t.status&&e[n].warning++}),e},[w]),T=(0,i.WM)(),N=(0,A.hu)(t),L=(0,A.Pp)(t),M=(0,A.Rt)(t),z=(0,A.HR)(t),B=(0,A.h$)(t),D=(0,A.Qv)(t),E=(0,o.useCallback)(e=>{u(t=>{const n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),O=(0,o.useCallback)((e,t)=>{x(n=>({...n,[e]:t}))},[]),$=(0,o.useCallback)(()=>{const e=f.length>0?{selectedNodeIds:f}:{};let t=null;c.forEach(n=>{switch(n){case Cn:t=N(e);break;case Sn:t=L(e);break;case kn:t=M(e);break;case Fn:t=z(e);break;case An:t=B(e)}}),h.nodeStats.length>0&&(t=D({...e,visibleItems:h.nodeStats})),u(new Set),x({nodeStats:[]}),T(null),t&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{const e=document.querySelector(`[data-id="${t}"]`);e&&e.scrollIntoView({behavior:"smooth",block:"nearest"})})})},[c,h,f,T,N,L,M,z,B,D]),R=c.size>0||h.nodeStats.length>0;return(0,o.useEffect)(()=>{if(!n)return;if(!R)return void n([]);const e=[...c].map(e=>({type:e,config:{selectedNodeIds:f}}));h.nodeStats.length>0&&e.push({type:"nodeStats",config:{selectedNodeIds:f,visibleItems:h.nodeStats}}),n(e)},[R,c,h,f,n]),(0,p.jsxs)(l.Flex,{column:!0,height:"100%",overflow:"hidden",children:[(0,p.jsx)(Ht,{title:"Infrastructure"}),(0,p.jsxs)(l.Flex,{column:!0,flex:!0,overflow:"auto",padding:[3],gap:4,children:[(0,p.jsx)(ae.A,{nodeIds:m,selectedNodeIds:r,setSelectedNodeIds:s,filters:a,setFilters:d}),(0,p.jsxs)(l.Flex,{gap:3,children:[(0,p.jsxs)(En,{children:[(0,p.jsx)(On,{label:"Node grid",checked:c.has(Cn),onToggle:()=>E(Cn)}),(0,p.jsx)(Nn,{nodeStatusCounts:I})]}),(0,p.jsxs)(En,{children:[(0,p.jsx)(On,{label:"Node List",checked:c.has(Sn),onToggle:()=>E(Sn)}),(0,p.jsx)(Ln,{nodes:y})]})]}),(0,p.jsxs)(l.Flex,{column:!0,gap:3,children:[(0,p.jsx)(l.Text,{strong:!0,children:"Alerts"}),(0,p.jsxs)(l.Flex,{gap:3,children:[(0,p.jsxs)(En,{children:[(0,p.jsx)(On,{label:"Alert Status",checked:c.has(kn),onToggle:()=>E(kn)}),(0,p.jsx)(Mn,{alertCounts:C})]}),(0,p.jsxs)(En,{children:[(0,p.jsx)(On,{label:"Alerts per Node",checked:c.has(Fn),onToggle:()=>E(Fn)}),(0,p.jsx)(zn,{alertsByNode:k})]})]}),(0,p.jsxs)(En,{children:[(0,p.jsx)(On,{label:"Hourly Alerts",checked:c.has(An),onToggle:()=>E(An)}),(0,p.jsx)(Bn,{buckets:F})]})]}),(0,p.jsx)(bn.f,{label:"Node Stats",items:fn.Qu.nodeStats,selected:h.nodeStats,onChange:e=>O("nodeStats",e),children:(0,p.jsx)(Dn,{nodeStatusCounts:I})})]}),(0,p.jsx)(Kt,{label:"Import",onClick:$,disabled:!R})]})},Rn="dataRetention",Gn=()=>(0,p.jsx)(wn,{padding:[2],children:(0,p.jsxs)(l.Flex,{justifyContent:"space-around",children:[(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Metrics"}),(0,p.jsx)(l.Text,{fontSize:"14px",strong:!0,children:"1.2K"})]}),(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Charts"}),(0,p.jsx)(l.Text,{fontSize:"14px",strong:!0,children:"340"})]}),(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Alerts"}),(0,p.jsx)(l.Text,{fontSize:"14px",strong:!0,children:"52"})]})]})}),Pn=e=>{let{alertsByNode:t}=e;const n=t.slice(0,3);return(0,p.jsxs)(wn,{padding:[2],children:[(0,p.jsx)(l.Flex,{alignItems:"end",justifyContent:"center",gap:1,height:"30px",children:n.map(e=>{const t=e.critical+e.warning,o=Math.max(1,...n.map(e=>e.critical+e.warning)),r=Math.max(4,Math.round(t/o*28));return(0,p.jsxs)(l.Flex,{width:"12px",height:`${r}px`,round:1,children:[e.critical>0&&(0,p.jsx)(l.Flex,{flex:!0,background:"error",round:1}),e.warning>0&&(0,p.jsx)(l.Flex,{flex:!0,background:"warning",round:1})]},e.nodeId)})}),0===n.length&&(0,p.jsx)(l.Text,{fontSize:"10px",color:"textLite",children:"No alerts"})]})},_n=()=>(0,p.jsx)(wn,{padding:[2],children:(0,p.jsx)(l.Flex,{alignItems:"end",justifyContent:"center",gap:2,height:"30px",children:[18,24,12,20,8].map((e,t)=>(0,p.jsx)(l.Flex,{width:"8px",height:`${e}px`,background:"primary",round:1},t))})}),qn=()=>(0,p.jsx)(wn,{padding:[2],children:(0,p.jsxs)(l.Flex,{justifyContent:"space-around",children:[(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Parents"}),(0,p.jsx)(l.Text,{fontSize:"12px",strong:!0,children:"P"})]}),(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Children"}),(0,p.jsx)(l.Text,{fontSize:"12px",strong:!0,children:"C"})]}),(0,p.jsxs)(l.Flex,{column:!0,alignItems:"center",children:[(0,p.jsx)(l.Text,{fontSize:"8px",color:"textLite",children:"Standalone"}),(0,p.jsx)(l.Text,{fontSize:"12px",strong:!0,children:"S"})]})]})}),Vn=e=>{let{children:t,...n}=e;return(0,p.jsx)(l.Flex,{column:!0,gap:2,flex:!0,width:{min:0},...n,children:t})},Wn=e=>{let{label:t,checked:n,onToggle:o}=e;return(0,p.jsx)(l.Checkbox,{checked:n,onChange:o,label:t})},Hn=e=>{let{dashboardId:t,onPreviewChange:n}=e;const[r,s]=(0,o.useState)(new Set),[a,d]=(0,o.useState)({statsOverview:[],alertNodes:[],replicationStats:[]}),c=(0,S.CK)(),u=(0,g.Gt)(c),h=(0,xt.s)("ids")||[],x=(0,gt.Gq)(h),m=(0,o.useMemo)(()=>{const e={};x.forEach(t=>{e[t.nodeId]||(e[t.nodeId]={critical:0,warning:0}),"critical"===t.status&&e[t.nodeId].critical++,"warning"===t.status&&e[t.nodeId].warning++});const t=new Map(u.map(e=>[e.id,e.name]));return Object.entries(e).map(e=>{let[n,o]=e;return{nodeId:n,name:t.get(n)||n,...o}}).sort((e,t)=>1e3*t.critical+t.warning-(1e3*e.critical+e.warning))},[x,u]),f=(0,i.WM)(),b=(0,A.fM)(t),j=(0,A.Vs)(t),v=(0,A.ez)(t),y=(0,A.cj)(t),I=(0,o.useCallback)(e=>{s(t=>{const n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),w=(0,o.useCallback)((e,t)=>{d(n=>({...n,[e]:t}))},[]),C=Object.values(a).some(e=>e.length>0),k=r.size>0||C;(0,o.useEffect)(()=>{if(!n)return;if(!k)return void n([]);const e=Array.from(r).map(e=>({type:e,config:{}}));Object.entries(a).forEach(t=>{let[n,o]=t;o.length>0&&e.push({type:n,config:{visibleItems:o}})}),n(e)},[k,r,a,n]);const F=(0,o.useCallback)(()=>{let e=null;r.forEach(t=>{if(t===Rn)e=j({})}),Object.entries(a).forEach(t=>{let[n,o]=t;if(0===o.length)return;const l={statsOverview:b,alertNodes:v,replicationStats:y}[n];l&&(e=l({visibleItems:o}))}),s(new Set),d({statsOverview:[],alertNodes:[],replicationStats:[]}),f(null),e&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{const t=document.querySelector(`[data-id="${e}"]`);t&&t.scrollIntoView({behavior:"smooth",block:"nearest"})})})},[r,a,f,b,j,v,y]);return(0,p.jsxs)(l.Flex,{column:!0,height:"100%",overflow:"hidden",children:[(0,p.jsx)(Ht,{title:"Room Overview"}),(0,p.jsxs)(l.Flex,{column:!0,flex:!0,overflow:"auto",padding:[3],gap:4,children:[(0,p.jsx)(bn.f,{label:"Stats Overview",items:fn.Qu.statsOverview,selected:a.statsOverview,onChange:e=>w("statsOverview",e),children:(0,p.jsx)(Gn,{})}),(0,p.jsx)(bn.f,{label:"Alert Nodes",items:fn.Qu.alertNodes,selected:a.alertNodes,onChange:e=>w("alertNodes",e),children:(0,p.jsx)(Pn,{alertsByNode:m})}),(0,p.jsxs)(Vn,{children:[(0,p.jsx)(Wn,{label:"Data Retention",checked:r.has(Rn),onToggle:()=>I(Rn)}),(0,p.jsx)(_n,{})]}),(0,p.jsx)(bn.f,{label:"Replication",items:fn.Qu.replicationStats,selected:a.replicationStats,onChange:e=>w("replicationStats",e),children:(0,p.jsx)(qn,{})})]}),(0,p.jsx)(Kt,{label:"Import",onClick:F,disabled:!k})]})},Kn={[He]:Yt,[Ke]:an,[Ue]:e=>(0,p.jsx)(In,{...e,flavour:"fn"}),[Qe]:e=>(0,p.jsx)(In,{...e,flavour:"logs"}),[Je]:e=>(0,p.jsx)(In,{...e,flavour:"feed"}),[Ye]:$n,[Ze]:Hn},Un={[He]:718,[Ke]:680,[Ue]:680,[Qe]:680,[Je]:680,[Ye]:680,[Ze]:680},Qn={top:"top",left:"right"},Jn=(0,b.default)(l.Flex).withConfig({displayName:"palette__AnimatedContainer",componentId:"sc-112dxl5-0"})(["transition:width 0.2s ease-out;max-width:calc(100vw - 200px);"]),Yn=e=>{let{panelId:t,dashboardId:n,targetRef:r,onClose:s}=e;const[a,d]=(0,o.useState)([]),i=(0,o.useMemo)(()=>Kn[t],[t]),c=Un[t]||680,u=a.length>0,h=u?c+420:c;return i&&r.current?(0,p.jsx)(l.Drop,{align:Qn,target:r.current,onEsc:s,onClickOutside:s,dataDrop:"palette-panel-drop",zIndex:68,backdrop:!0,backdropProps:{background:["transparent","full"],zIndex:50},margin:[2,0,0,2],children:(0,p.jsxs)(Jn,{width:`${h}px`,height:{max:"80vh"},background:"panelBg",overflow:"hidden",children:[(0,p.jsx)(l.Flex,{width:`${c}px`,padding:[4],children:(0,p.jsx)(i,{dashboardId:n,onPreviewChange:d})}),u&&(0,p.jsx)(l.Flex,{flex:!0,padding:[4],border:{side:"left",color:"borderSecondary"},overflow:"auto",background:"panelBg",children:(0,p.jsx)(Wt,{items:a})})]})}):null},Zn=e=>{let{dashboardId:t}=e;const n=(0,i.wz)(),r=(0,i.WM)(),s=(0,o.useRef)(null),a=(0,o.useCallback)(()=>r(null),[]);return(0,p.jsxs)(l.Flex,{ref:s,height:"100%",children:[(0,p.jsx)(nt,{}),n&&(0,p.jsx)(Yn,{panelId:n,dashboardId:t,targetRef:s,onClose:a},n)]})},Xn=()=>((0,xe.A)(),null),eo=(0,o.memo)(e=>{let{id:t,roomId:n,nodeIds:l=[],isOnTV:h}=e;const[x,,,g]=(0,s.A)("addChartModal"),{fullyLoaded:m,cardIds:b,name:j}=(0,d.fz)(t),v=(0,i.tD)(),I=(0,i.x3)(),w=(0,o.useRef)(!1);(0,o.useEffect)(()=>{m&&!w.current&&(w.current=!0,I(0===b.length))},[m,b.length,I]);const C=(0,r.zy)(),S=(0,r.Zp)(),[k,F]=(0,o.useState)(!1);(0,o.useEffect)(()=>{m&&C.state?.showDuplicateWizard&&(F(!0),S(C.pathname,{replace:!0,state:{}}))},[m]);const A=(0,o.useCallback)(()=>F(!0),[]),T=(0,o.useCallback)(()=>F(!1),[]);(e=>{const t=(0,d.zN)(e),n=(0,i.tD)();Fe(Ae,n&&!t)})(t);const[N,{width:L}]=(0,a.A)(),[M,z]=(0,ge.N9)("chartName",{key:n,extraKey:t,flavour:"val"}),B=(0,c.Xc)(t),D=(0,u.T6)(t);return(0,p.jsx)(pe.Ay,{feature:"custom-dashboard",children:(0,p.jsx)(St.Ay,{children:(0,p.jsxs)(me.A,{getObject:D,ids:B,getMenu:je,extraKey:t,children:[(0,p.jsx)(Xn,{}),!h&&v&&(0,p.jsx)(Zn,{dashboardId:t}),(0,p.jsxs)(he.A,{ref:N,overflow:"hidden",background:"mainBackground",padding:[0,4],children:[!h&&(0,p.jsx)(Ve,{id:t,isEditMode:v,onOpenDuplicateWizard:A}),m&&b.length>0&&(0,p.jsx)(y,{active:v&&!h,children:(0,p.jsx)(We.A,{id:t,containerWidth:L,initialChartName:M,onChartNameChange:z,isOnTV:h})}),m&&0===b.length&&!h&&(0,p.jsx)(y,{active:!0,children:(0,p.jsx)(f,{})}),x&&!h&&(0,p.jsx)(Z,{id:t,onClose:g}),k&&(0,p.jsx)(ue,{dashboardId:t,onClose:T})]})]})})})}),to=(0,o.memo)(e=>{let{id:t,isOnTV:n}=e;const o=(0,h.ID)(),l=(0,x.w7)({extraKey:"dashboard",merge:!1,scoped:!0}),r=(0,g.TG)(l);return(0,p.jsx)(eo,{id:t,roomId:o,nodeIds:r,isOnTV:n})})},1623(e,t,n){n.d(t,{A:()=>r});var o=n(63474),l=n(74848);const r=()=>(0,l.jsx)(o.O2,{"data-testid":"dashboardLoading"})},15744(e,t,n){n.d(t,{A:()=>l});var o=n(66188);const l=[{title:"System",icon:o.G06,grouping:!0,match:["block-devices","ipmi-sensors","mount-points","network-connections","network-interfaces","processes","systemd-list-units","systemd-services"]},{title:"Containers",icon:"serviceContainer",grouping:!0,match:["containers-vms"]},{id:"docker",title:"Docker",icon:"serviceDockerHubPress",flatten:!0,grouping:!0},{id:"snmp",title:"SNMP",icon:o.fKj,flatten:!0,grouping:!0},{title:"Databases",icon:o.hem,grouping:!0,match:["clickhouse","cockroachdb","couchbase","elasticsearch","mongodb","mssql","mysql","oracledb","postgres","proxysql","redis","rethinkdb","sql","yugabytedb"]},{title:"Netdata",icon:o.$Fj,match:["netdata"]}]}}]);