@odigos/ui-kit 0.0.131 → 0.0.133

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.133](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.132...ui-kit-v0.0.133) (2025-12-03)
4
+
5
+
6
+ ### Features
7
+
8
+ * enhance PodsInfo component to display pod status with badge and update mock data for pod statuses ([#495](https://github.com/odigos-io/ui-kit/issues/495)) ([0cc06f4](https://github.com/odigos-io/ui-kit/commit/0cc06f4b63f498bc32565d5813dec32eda2f366d))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * types of get functions to include undefined in response 2 ([#493](https://github.com/odigos-io/ui-kit/issues/493)) ([a2d207b](https://github.com/odigos-io/ui-kit/commit/a2d207b50e9c7508866230e902dd833878251621))
14
+
15
+ ## [0.0.132](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.131...ui-kit-v0.0.132) (2025-12-03)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * handle undefined values in gateway and node collector data retrieval ([#491](https://github.com/odigos-io/ui-kit/issues/491)) ([8f20271](https://github.com/odigos-io/ui-kit/commit/8f2027113b63742d26200050263d9983d321095f))
21
+
3
22
  ## [0.0.131](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.130...ui-kit-v0.0.131) (2025-12-03)
4
23
 
5
24
 
@@ -2021,4 +2021,4 @@ import{SamplerIcon as e,PiiMaskingIcon as t,ImageErrorIcon as n,K8sLogo as o,Add
2021
2021
  background-color: ${({theme:e})=>e.v2.colors.silver[500]};
2022
2022
  }
2023
2023
  `}
2024
- `,Cu=({label:e,leftIcon:t,rightIcon:n,disabled:o})=>{const i=wi.useTheme(),a=o?i.v2.colors.grey[400]:i.v2.colors.white[500];return ht.createElement(Eu,{$disabled:o},t&&ht.createElement(t,{fill:a,size:16}),ht.createElement(Ci,{color:a,size:vi.XS},e),n&&ht.createElement(n,{fill:a,size:16}))};export{_a as $,qt as A,Li as B,Ya as C,Pp as D,Eo as E,Er as F,Ic as G,Qd as H,zp as I,Mc as J,Jt as K,Ac as L,sn as M,zi as N,un as O,Ga as P,Cd as Q,wd as R,$p as S,wi as T,ml as U,Yc as V,En as W,Kd as X,si as Y,ai as Z,Zo as _,Da as a,ba as a$,Jo as a0,Fl as a1,pl as a2,ha as a3,an as a4,ei as a5,ka as a6,On as a7,zn as a8,Or as a9,qs as aA,Yl as aB,tp as aC,ca as aD,Po as aE,_i as aF,ma as aG,li as aH,oi as aI,cs as aJ,io as aK,Fo as aL,Kn as aM,gd as aN,_n as aO,no as aP,to as aQ,Fd as aR,Sa as aS,Qo as aT,Aa as aU,qn as aV,Gn as aW,Vn as aX,Hn as aY,Ea as aZ,La as a_,al as aa,on as ab,ii as ac,Gc as ad,Zc as ae,Za as af,ld as ag,qo as ah,ra as ai,_r as aj,Qn as ak,Br as al,zo as am,ar as an,pn as ao,$o as ap,ni as aq,Wn as ar,Qr as as,ao as at,os as au,er as av,tr as aw,bc as ax,oo as ay,nr as az,xo as b,pd as b$,Dd as b0,Xa as b1,Ra as b2,Io as b3,tc as b4,Uo as b5,Ln as b6,Ho as b7,Ma as b8,Ta as b9,Hd as bA,eo as bB,Fa as bC,Rn as bD,qa as bE,yo as bF,Ca as bG,gn as bH,Ts as bI,qr as bJ,kc as bK,fo as bL,vo as bM,Hr as bN,gs as bO,$s as bP,Ao as bQ,Ro as bR,Pa as bS,Os as bT,Dn as bU,nn as bV,Va as bW,ts as bX,Zn as bY,So as bZ,ya as b_,pi as ba,Vo as bb,Wr as bc,Sr as bd,Pr as be,Gr as bf,rn as bg,Oo as bh,jn as bi,wo as bj,An as bk,Ia as bl,ko as bm,Mn as bn,Fn as bo,Un as bp,Ud as bq,Qs as br,lo as bs,wn as bt,Nn as bu,kn as bv,In as bw,yn as bx,vn as by,bn as bz,Ka as c,vp as c$,Yo as c0,Yn as c1,pr as c2,mo as c3,Kr as c4,Ht as c5,Kt as c6,Yt as c7,Xt as c8,Qt as c9,Lo as cA,Mo as cB,Bo as cC,jo as cD,Wo as cE,Ko as cF,Vt as cG,va as cH,za as cI,Cs as cJ,bs as cK,dl as cL,El as cM,Nl as cN,uc as cO,$c as cP,Yr as cQ,$l as cR,Ti as cS,Ni as cT,Ii as cU,cp as cV,Qa as cW,Ai as cX,Wi as cY,dp as cZ,hp as c_,Zt as ca,en as cb,tn as cc,dn as cd,mn as ce,hn as cf,xn as cg,$n as ch,fn as ci,Cn as cj,Sn as ck,Tn as cl,Bn as cm,Jn as cn,ro as co,so as cp,co as cq,po as cr,uo as cs,ho as ct,go as cu,bo as cv,Co as cw,Do as cx,No as cy,_o as cz,mp as d,Sp as d0,Ap as d1,Tp as d2,Wp as d3,Np as d4,Kp as d5,Zp as d6,tu as d7,iu as d8,au as d9,lu as da,cu as db,pu as dc,Cu as dd,ki as de,Ci as e,gp as f,Xn as g,Ri as h,fr as i,vu as j,Ja as k,vi as l,hu as m,Bi as n,yp as o,kp as p,cn as q,Go as r,Gs as s,Ml as t,Ha as u,lr as v,qi as w,Gt as x,Hl as y,ln as z};
2024
+ `,Cu=({label:e,leftIcon:t,rightIcon:n,disabled:o})=>{const i=wi.useTheme(),a=o?i.v2.colors.grey[400]:i.v2.colors.white[500];return ht.createElement(Eu,{$disabled:o},t&&ht.createElement(t,{fill:a,size:16}),ht.createElement(Ci,{color:a,size:vi.XS},e),n&&ht.createElement(n,{fill:a,size:16}))};export{Zo as $,qt as A,Li as B,Ya as C,Pp as D,ln as E,Er as F,Eo as G,Ic as H,zp as I,Qd as J,Jt as K,Mc as L,Ac as M,sn as N,un as O,Ga as P,zi as Q,Cd as R,$p as S,wi as T,wd as U,ml as V,En as W,Yc as X,Kd as Y,si as Z,ai as _,Da as a,La as a$,_a as a0,Jo as a1,Fl as a2,pl as a3,ha as a4,an as a5,ei as a6,ka as a7,On as a8,zn as a9,nr as aA,qs as aB,Yl as aC,tp as aD,ca as aE,Po as aF,_i as aG,ma as aH,li as aI,oi as aJ,cs as aK,io as aL,Fo as aM,Kn as aN,gd as aO,_n as aP,no as aQ,to as aR,Fd as aS,Sa as aT,Qo as aU,Aa as aV,qn as aW,Gn as aX,Vn as aY,Hn as aZ,Ea as a_,Or as aa,al as ab,on as ac,ii as ad,Gc as ae,Zc as af,Za as ag,ld as ah,qo as ai,ra as aj,_r as ak,Qn as al,Br as am,zo as an,ar as ao,pn as ap,$o as aq,ni as ar,Wn as as,Qr as at,ao as au,os as av,er as aw,tr as ax,bc as ay,oo as az,xo as b,ya as b$,ba as b0,Dd as b1,Xa as b2,Ra as b3,Io as b4,tc as b5,Uo as b6,Ln as b7,Ho as b8,Ma as b9,bn as bA,Hd as bB,eo as bC,Fa as bD,Rn as bE,qa as bF,yo as bG,Ca as bH,gn as bI,Ts as bJ,qr as bK,kc as bL,fo as bM,vo as bN,Hr as bO,gs as bP,$s as bQ,Ao as bR,Ro as bS,Pa as bT,Os as bU,Dn as bV,nn as bW,Va as bX,ts as bY,Zn as bZ,So as b_,Ta as ba,pi as bb,Vo as bc,Wr as bd,Sr as be,Pr as bf,Gr as bg,rn as bh,Oo as bi,jn as bj,wo as bk,An as bl,Ia as bm,ko as bn,Mn as bo,Fn as bp,Un as bq,Ud as br,Qs as bs,lo as bt,wn as bu,Nn as bv,kn as bw,In as bx,yn as by,vn as bz,Ka as c,vp as c$,pd as c0,Yo as c1,Yn as c2,pr as c3,mo as c4,Kr as c5,Ht as c6,Kt as c7,Yt as c8,Xt as c9,_o as cA,Lo as cB,Mo as cC,Bo as cD,jo as cE,Wo as cF,Ko as cG,Vt as cH,va as cI,za as cJ,Cs as cK,bs as cL,dl as cM,El as cN,Nl as cO,uc as cP,$c as cQ,Yr as cR,$l as cS,Ti as cT,Ni as cU,Ii as cV,cp as cW,Qa as cX,Wi as cY,dp as cZ,hp as c_,Qt as ca,Zt as cb,en as cc,tn as cd,dn as ce,mn as cf,hn as cg,xn as ch,$n as ci,fn as cj,Cn as ck,Sn as cl,Tn as cm,Bn as cn,Jn as co,ro as cp,so as cq,co as cr,po as cs,uo as ct,ho as cu,go as cv,bo as cw,Co as cx,Do as cy,No as cz,mp as d,Sp as d0,Ap as d1,Tp as d2,Wp as d3,Np as d4,Kp as d5,Zp as d6,tu as d7,iu as d8,au as d9,lu as da,cu as db,pu as dc,Cu as dd,ki as de,Ci as e,gp as f,Xn as g,Ri as h,fr as i,Ai as j,vu as k,Ja as l,vi as m,hu as n,Bi as o,yp as p,kp as q,cn as r,Go as s,Gs as t,Ha as u,Ml as v,lr as w,qi as x,Gt as y,Hl as z};
@@ -1 +1 @@
1
- export{cX as Badge,n as Button,B as ButtonSize,cY as ButtonTab,cZ as ButtonTabList,h as ButtonVariants,d0 as Checkbox,d2 as CheckboxList,d1 as CheckboxListDirection,c$ as CheckboxSize,d as DataCard,D as Drawer,d3 as Header,I as IconButton,d4 as IconButtonSize,d5 as Input,d6 as Modal,d7 as Navbar,d8 as Note,da as Radio,dc as RadioGroup,db as RadioGroupDirection,d9 as RadioSize,S as SectionCard,f as SectionCardActionType,c_ as SectionCardSize,m as Segment,o as StatusCard,j as Table,dd as Tag,p as TextCard,e as Typography,l as TypographySize,de as TypographyVariants}from"../chunks/ui-components-c940a3cc.js";import"../icons.js";import"react";import"zustand";import"javascript-time-ago";import"../chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
1
+ export{j as Badge,o as Button,B as ButtonSize,cY as ButtonTab,cZ as ButtonTabList,h as ButtonVariants,d0 as Checkbox,d2 as CheckboxList,d1 as CheckboxListDirection,c$ as CheckboxSize,d as DataCard,D as Drawer,d3 as Header,I as IconButton,d4 as IconButtonSize,d5 as Input,d6 as Modal,d7 as Navbar,d8 as Note,da as Radio,dc as RadioGroup,db as RadioGroupDirection,d9 as RadioSize,S as SectionCard,f as SectionCardActionType,c_ as SectionCardSize,n as Segment,p as StatusCard,k as Table,dd as Tag,q as TextCard,e as Typography,m as TypographySize,de as TypographyVariants}from"../chunks/ui-components-c87427ab.js";import"../icons.js";import"react";import"zustand";import"javascript-time-ago";import"../chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
package/lib/components.js CHANGED
@@ -1 +1 @@
1
- export{ai as AutocompleteInput,aD as Badge,aG as Button,a3 as CancelWarning,C as CenterThis,v as Checkbox,i as Code,a9 as ConditionDetails,aa as DataCard,s as DataCardFieldTypes,br as DataCardFields,cL as DataFinger,aJ as DataTab,a2 as DeleteWarning,bO as DescribeRow,aj as Divider,U as DocsButton,a1 as Drawer,cN as DrawerFooter,cM as DrawerHeader,b4 as Dropdown,cO as ErrorBoundary,bd as ExtendArrow,F as FadeLoader,w as FieldError,t as FieldLabel,c as FlexColumn,k as FlexRow,cP as Header,bc as IconButton,bX as IconGroup,ax as IconTitleBadge,as as IconWrapped,bK as IconsNav,cQ as ImageControlled,y as Input,L as InputList,G as InputTable,aA as InteractiveTable,J as KeyValueInputsList,aF as LoadingText,ad as Modal,af as ModalBody,V as MonitorsCheckboxes,au as MonitorsIcons,ae as NavigationButtons,aB as NoDataFound,ag as NotificationNote,cW as Overlay,P as PageContent,a$ as Popup,b$ as PopupForm,c4 as ScrollX,aN as ScrollY,R as SectionTitle,Q as Segment,b0 as SelectionButton,aR as SkeletonLoader,al as Status,bq as Stepper,cR as TabList,av as TableContainer,aw as TableTitleWrap,az as TableWrap,bA as Tag,N as Text,X as TextArea,H as Toggle,c2 as ToggleCodeComponent,an as Tooltip,aC as TraceLoader,b1 as VerticalScroll,cV as WarningModal,cS as getLinksFromText,cT as getStrongsFromText,cU as renderText}from"./chunks/ui-components-c940a3cc.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
1
+ export{aj as AutocompleteInput,aE as Badge,aH as Button,a4 as CancelWarning,C as CenterThis,w as Checkbox,i as Code,aa as ConditionDetails,ab as DataCard,t as DataCardFieldTypes,bs as DataCardFields,cM as DataFinger,aK as DataTab,a3 as DeleteWarning,bP as DescribeRow,ak as Divider,V as DocsButton,a2 as Drawer,cO as DrawerFooter,cN as DrawerHeader,b5 as Dropdown,cP as ErrorBoundary,be as ExtendArrow,F as FadeLoader,x as FieldError,v as FieldLabel,c as FlexColumn,l as FlexRow,cQ as Header,bd as IconButton,bY as IconGroup,ay as IconTitleBadge,at as IconWrapped,bL as IconsNav,cR as ImageControlled,z as Input,M as InputList,H as InputTable,aB as InteractiveTable,L as KeyValueInputsList,aG as LoadingText,ae as Modal,ag as ModalBody,X as MonitorsCheckboxes,av as MonitorsIcons,af as NavigationButtons,aC as NoDataFound,ah as NotificationNote,cX as Overlay,P as PageContent,b0 as Popup,c0 as PopupForm,c5 as ScrollX,aO as ScrollY,U as SectionTitle,R as Segment,b1 as SelectionButton,aS as SkeletonLoader,am as Status,br as Stepper,cS as TabList,aw as TableContainer,ax as TableTitleWrap,aA as TableWrap,bB as Tag,Q as Text,Y as TextArea,J as Toggle,c3 as ToggleCodeComponent,ao as Tooltip,aD as TraceLoader,b2 as VerticalScroll,cW as WarningModal,cT as getLinksFromText,cU as getStrongsFromText,cV as renderText}from"./chunks/ui-components-c87427ab.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
package/lib/constants.js CHANGED
@@ -1 +1 @@
1
- export{a7 as ACTION_OPTIONS,a0 as BUTTON_TEXTS,bb as DEFAULT_DATA_STREAM_NAME,bo as DESTINATION_CATEGORIES,b5 as DISPLAY_LANGUAGES,r as DISPLAY_TITLES,ah as FORM_ALERTS,bD as INSTRUMENTATION_RULE_OPTIONS,cE as LANGUAGE_OPTIONS,b6 as MONITORS_OPTIONS,b7 as STORAGE_KEYS,cF as TOKEN_ABOUT_TO_EXPIRE}from"./chunks/ui-components-c940a3cc.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
1
+ export{a8 as ACTION_OPTIONS,a1 as BUTTON_TEXTS,bc as DEFAULT_DATA_STREAM_NAME,bp as DESTINATION_CATEGORIES,b6 as DISPLAY_LANGUAGES,s as DISPLAY_TITLES,ai as FORM_ALERTS,bE as INSTRUMENTATION_RULE_OPTIONS,cF as LANGUAGE_OPTIONS,b7 as MONITORS_OPTIONS,b8 as STORAGE_KEYS,cG as TOKEN_ABOUT_TO_EXPIRE}from"./chunks/ui-components-c87427ab.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
@@ -1,4 +1,4 @@
1
- import e,{useState as a,useEffect as t,useMemo as l,useCallback as i}from"react";import{T as s,u as o,a as n,g as r,b as d,D as c,C as u,F as g,S as b,c as p,d as m,e as y,I as k,f as C,B as w,h as v,i as f,j as h,k as L,l as x,m as P,n as R,o as I,p as D,q as M,O as $,W as A,P as N}from"../chunks/ui-components-c940a3cc.js";import S from"styled-components";import{PodIcon as T,ChevronUpIcon as V,ChevronDownIcon as z,YamlIcon as j,VIcon as O,CopyIcon as U,PipelineCollectorIcon as E,DownloadIcon as H,RefreshIcon as q,GatewayIcon as G}from"../icons.js";import"zustand";import"javascript-time-ago";import"../chunks/vendor-55cc654c.js";import"react-dom";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";const Y=S.div`
1
+ import e,{useState as a,useEffect as l,useMemo as t,useCallback as i}from"react";import{T as s,u as o,a as n,g as r,b as d,D as c,C as u,F as g,S as b,c as p,d as m,e as y,I as k,f as C,B as w,h as v,i as f,j as h,k as L,l as x,m as P,n as R,o as I,p as D,q as M,r as $,O as A,W as N,P as S}from"../chunks/ui-components-c87427ab.js";import T from"styled-components";import{PodIcon as V,ChevronUpIcon as z,ChevronDownIcon as j,YamlIcon as O,VIcon as U,CopyIcon as E,PipelineCollectorIcon as H,DownloadIcon as q,RefreshIcon as G,GatewayIcon as Y}from"../icons.js";import"zustand";import"javascript-time-ago";import"../chunks/vendor-55cc654c.js";import"react-dom";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";const F=T.div`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  justify-content: space-between;
@@ -6,10 +6,10 @@ import e,{useState as a,useEffect as t,useMemo as l,useCallback as i}from"react"
6
6
  padding: 8px 12px;
7
7
  border-radius: 12px;
8
8
  background-color: ${({theme:e})=>e.v2.colors.silver[800]};
9
- `,F=S.div`
9
+ `,W=T.div`
10
10
  animation-name: ${s.animations.fade.in};
11
- `,W=({pod:i,getExtendedPodInfo:s,onClose:h})=>{const{formatTimeAgo:L}=o(),{clickCopy:x,isCopied:P}=n(),[R,I]=a(null),[D,M]=a(!1);t(()=>{i?s(i.namespace,i.name).then(I):(I(null),M(!1))},[i]);const $=l(()=>[{id:r(),title:"Node",label:R?.node??"-"},{id:r(),title:"Role",label:R?.role??"-"},{id:r(),title:"Status",badge:{status:d(R?.status),label:R?.status??"-"}}],[R]),A=l(()=>R?.containers?.map(e=>({id:r(),items:[{id:r(),title:"Container",label:e.name??"-"},{id:r(),title:"Status",badge:{status:d(e.status),label:e.status??"-"},label:e.startedAt?`(since ${L(e.startedAt)})`:""},{id:r(),title:"Image Version",label:e.image?.split(":")?.[1]??"-"},{id:r(),title:"Image Repository",label:e.image?.split(":")?.[0]??"-"},{id:r(),title:"Restarts",label:e.restarts.toString()},{id:r(),title:"State Reason",label:e.stateReason??"-"},{id:r(),title:"Resource Requests",label:`CPU ${e.resources.requests.cpu} • Memory ${e.resources.requests.memory}`},{id:r(),title:"Resource Limits",label:`CPU ${e.resources.limits.cpu} • Memory ${e.resources.limits.memory}`}]}))||[],[R]);return e.createElement(c,{isOpen:!!i,header:{icon:T,title:"Pod Information",onClose:h}},R?null:e.createElement(u,null,e.createElement(g,null)),R?e.createElement(e.Fragment,null,e.createElement(b,{icon:T,title:R.name},e.createElement(p,{$gap:24},e.createElement(m,{cellsPerRow:3,items:$}),A.length>0&&e.createElement(p,{$gap:12},e.createElement(Y,null,e.createElement(y,null,"Containers Overview"),e.createElement(k,{icon:D?V:z,onClick:()=>M(e=>!e)})),D&&A.map(({id:a,items:t})=>e.createElement(F,{key:a},e.createElement(m,{cellsPerRow:2,items:t})))))),e.createElement(b,{icon:j,title:"YAML",actions:[{id:r(),type:C.Button,props:{label:"",leftIcon:P?O:U,onClick:()=>x(R.manifestYAML),disabled:P,size:w.S,variant:v.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(f,{code:R.manifestYAML,language:"yaml",theme:"duotoneDark"})))):null)};var B;!function(e){e.PodName="podName",e.Ready="ready",e.Status="status",e.Restarts="restarts",e.NodeName="nodeName",e.Age="age",e.DockerImage="dockerImage"}(B||(B={}));const J=[{key:B.PodName,label:"Pod Name",sortable:!0},{key:B.Ready,label:"Ready",sortable:!0,textAlign:"right"},{key:B.Status,label:"Status",sortable:!0},{key:B.Restarts,label:"Restarts",sortable:!0,textAlign:"right"},{key:B.NodeName,label:"Node Name",sortable:!0},{key:B.Age,label:"Age",sortable:!0,textAlign:"right"},{key:B.DockerImage,label:"Docker Image",sortable:!0,textAlign:"right"}],K=({isLoading:t,tableRowsMaxHeight:i,pods:s,getExtendedPodInfo:n})=>{const{formatTimeAgo:r}=o(),[d,c]=a(null),u=l(()=>s.map(e=>({onClick:()=>c(e),cells:[{key:B.PodName,rawValue:e.name},{key:B.Ready,rawValue:e.ready},{key:B.Status,rawValue:e.status??"-"},{key:B.Restarts,rawValue:e.restartsCount},{key:B.NodeName,rawValue:e.nodeName},{key:B.Age,rawValue:r(e.creationTimestamp)},{key:B.DockerImage,rawValue:e.image}]})),[s]);return e.createElement(b,{icon:T,title:"Pods"},e.createElement(h,{maxHeight:i,isLoading:t,columns:J,rows:u}),e.createElement(W,{pod:d,getExtendedPodInfo:n,onClose:()=>c(null)}))};var Q;!function(e){e.Gateway="gateway",e.Node="node"}(Q||(Q={}));const X=[{value:Q.Gateway,label:"Gateway"},{value:Q.Node,label:"Node Collector"}],Z=S.div`
11
+ `,B=({pod:i,getExtendedPodInfo:s,onClose:h})=>{const{formatTimeAgo:L}=o(),{clickCopy:x,isCopied:P}=n(),[R,I]=a(null),[D,M]=a(!1);l(()=>{i?s(i.namespace,i.name).then(e=>I(e??null)):(I(null),M(!1))},[i]);const $=t(()=>[{id:r(),title:"Node",label:R?.node??"-"},{id:r(),title:"Role",label:R?.role??"-"},{id:r(),title:"Status",badge:{status:d(R?.status),label:R?.status??"-"}}],[R]),A=t(()=>R?.containers?.map(e=>({id:r(),items:[{id:r(),title:"Container",label:e.name??"-"},{id:r(),title:"Status",badge:{status:d(e.status),label:e.status??"-"},label:e.startedAt?`(since ${L(e.startedAt)})`:""},{id:r(),title:"Image Version",label:e.image?.split(":")?.[1]??"-"},{id:r(),title:"Image Repository",label:e.image?.split(":")?.[0]??"-"},{id:r(),title:"Restarts",label:e.restarts.toString()},{id:r(),title:"State Reason",label:e.stateReason??"-"},{id:r(),title:"Resource Requests",label:`CPU ${e.resources.requests.cpu} • Memory ${e.resources.requests.memory}`},{id:r(),title:"Resource Limits",label:`CPU ${e.resources.limits.cpu} • Memory ${e.resources.limits.memory}`}]}))||[],[R]);return e.createElement(c,{isOpen:!!i,header:{icon:V,title:"Pod Information",onClose:h}},R?null:e.createElement(u,null,e.createElement(g,null)),R?e.createElement(e.Fragment,null,e.createElement(b,{icon:V,title:R.name},e.createElement(p,{$gap:24},e.createElement(m,{cellsPerRow:3,items:$}),A.length>0&&e.createElement(p,{$gap:12},e.createElement(F,null,e.createElement(y,null,"Containers Overview"),e.createElement(k,{icon:D?z:j,onClick:()=>M(e=>!e)})),D&&A.map(({id:a,items:l})=>e.createElement(W,{key:a},e.createElement(m,{cellsPerRow:2,items:l})))))),e.createElement(b,{icon:O,title:"YAML",actions:[{id:r(),type:C.Button,props:{label:"",leftIcon:P?U:E,onClick:()=>x(R.manifestYAML),disabled:P,size:w.S,variant:v.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(f,{code:R.manifestYAML,language:"yaml",theme:"duotoneDark"})))):null)};var J;!function(e){e.PodName="podName",e.Ready="ready",e.Status="status",e.Restarts="restarts",e.NodeName="nodeName",e.Age="age",e.DockerImage="dockerImage"}(J||(J={}));const K=[{key:J.PodName,label:"Pod Name",sortable:!0},{key:J.Ready,label:"Ready",sortable:!0,textAlign:"right"},{key:J.Status,label:"Status",sortable:!0},{key:J.Restarts,label:"Restarts",sortable:!0,textAlign:"right"},{key:J.NodeName,label:"Node Name",sortable:!0},{key:J.Age,label:"Age",sortable:!0,textAlign:"right"},{key:J.DockerImage,label:"Docker Image",sortable:!0,textAlign:"right"}],Q=({isLoading:l,tableRowsMaxHeight:i,pods:s,getExtendedPodInfo:n})=>{const{formatTimeAgo:r}=o(),[c,u]=a(null),g=t(()=>s.map(a=>({onClick:()=>u(a),cells:[{key:J.PodName,rawValue:a.name},{key:J.Ready,rawValue:a.ready},{key:J.Status,rawValue:a.status??"-",component:a.status?()=>e.createElement(h,{status:d(a.status),label:a.status}):void 0},{key:J.Restarts,rawValue:a.restartsCount},{key:J.NodeName,rawValue:a.nodeName},{key:J.Age,rawValue:r(a.creationTimestamp)},{key:J.DockerImage,rawValue:a.image}]})),[s]);return e.createElement(b,{icon:V,title:"Pods"},e.createElement(L,{maxHeight:i,isLoading:l,columns:K,rows:g}),e.createElement(B,{pod:c,getExtendedPodInfo:n,onClose:()=>u(null)}))};var X;!function(e){e.Gateway="gateway",e.Node="node"}(X||(X={}));const Z=[{value:X.Gateway,label:"Gateway"},{value:X.Node,label:"Node Collector"}],_=T.div`
12
12
  display: flex;
13
13
  align-items: center;
14
14
  justify-content: space-between;
15
- `,_=({selectedTab:a,setSelectedTab:t,onClickDownloadDiagnose:l,onClickRefresh:i,isLoading:s})=>e.createElement(Z,null,e.createElement(L,{$gap:12},e.createElement(L,{$gap:8},e.createElement(E,{size:32}),e.createElement(y,{size:x.M,weight:500},"Pipeline Collectors")),e.createElement(P,{options:X,selected:a,setSelected:t})),e.createElement(L,{$gap:8},l&&e.createElement(R,{label:"Download Diagnose",leftIcon:H,size:w.S,variant:v.Text,onClick:l}),i&&e.createElement(R,{label:"Refresh",leftIcon:q,size:w.S,variant:v.Text,onClick:i,loading:s}))),ee=({isOpen:a,onClose:t,title:l,yaml:i})=>{const{clickCopy:s,isCopied:o}=n();return e.createElement(c,{isOpen:a,header:{icon:G,title:l,onClose:t}},e.createElement(b,{icon:j,title:"YAML",actions:[{id:r(),type:C.Button,props:{label:"",leftIcon:o?O:U,onClick:()=>s(i),disabled:o,size:w.S,variant:v.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(f,{code:i,language:"yaml",theme:"duotoneDark"}))))},ae=({icon:t,title:l,badge:i,statusCard:s,textCards:o,yaml:n})=>{const[d,c]=a(!1);return e.createElement(b,{icon:t,title:l,badge:i,actions:[{id:r(),type:C.Button,props:{variant:v.Secondary,size:w.S,leftIcon:j,label:"View YAML",onClick:()=>c(!0)}}]},e.createElement(L,{$gap:16},e.createElement(I,{...s}),o.map(a=>e.createElement(D,{key:a.title,...a}))),e.createElement(ee,{isOpen:d,onClose:()=>c(!1),title:l,yaml:n}))},te=e=>{switch(e){case A.Healthy:return"All desired replicas are updated, available, and ready";case A.Updating:return"Workload is progressing towards desired state (e.g., updating pods)";case A.Degraded:return"Progressing but with availability issues (e.g., not enough available replicas)";case A.Failed:return"Progress deadline exceeded or an unrecoverable error occurred";case A.Down:return"No available replicas";case A.Unknown:return"Status cannot be determined from current signals";default:return"Status unknown"}},le=({tableRowsMaxHeight:s,getGatewayInfo:n,getGatewayPods:r,getNodeCollectorInfo:c,getNodeCollectorPods:u,getExtendedPodInfo:g})=>{const{formatTimeAgo:b}=o(),[p,m]=a(!1),[y,k]=a(Q.Gateway),[C,w]=a(null),[v,f]=a([]),[h,L]=a(null),[x,P]=a([]),R=i(async()=>{switch(m(!0),y){case Q.Gateway:w(await n()),f(await r());break;case Q.Node:L(await c()),P(await u())}m(!1)},[y]);t(()=>{R().catch(e=>{})},[R]);const I=l(()=>(e=>{const a=X.find(a=>a.value===e);return a?.label??"Pipeline Collectors"})(y),[y]),D=l(()=>((e,a,t,l)=>{const i={status:$.Disabled,label:"No rollouts yet"};let s=!1,o=null;switch(e){case Q.Gateway:s=a?.rolloutInProgress??!1,o=a?.lastRolloutAt??null;break;case Q.Node:s=t?.rolloutInProgress??!1,o=t?.lastRolloutAt??null;break;default:return i}return s?{status:M.Info,label:"Rollout in progress",rightIcon:q,useSecondaryTone:!0}:o?{status:$.Disabled,label:`Last Rollout: ${l(o)}`}:i})(y,C,h,b),[C,h,y,b]),S=l(()=>((e,a,t,l)=>{if(l)return{status:M.Info,title:"Loading",description:"Fetching data..."};let i=$.Unknown,s=A.Unknown,o=te(A.Unknown);switch(e){case Q.Gateway:i=d(a?.status),s=a?.status??s,o=a?.status?te(a.status):o;break;case Q.Node:i=d(a?.status),s=t?.status??s,o=t?.status?te(t.status):o}return{status:i,title:s,description:o}})(y,C,h,p),[C,h,y,p]),T=l(()=>((e,a,t,l)=>{switch(e){case Q.Gateway:return[{title:"HPA Spec (Replicas)",cells:[{label:"Min.",value:a?.hpa.min.toString()??"-",isLoading:l},{label:"Max.",value:a?.hpa.max.toString()??"-",isLoading:l},{label:"Current",value:a?.hpa.current.toString()??"-",isLoading:l},{label:"Desired",value:a?.hpa.desired.toString()??"-",isLoading:l}]},{title:"Requests",cells:[{label:"CPU",value:a?.resources.requests.cpu??"-",isLoading:l},{label:"Memory",value:a?.resources.requests.memory??"-",isLoading:l}]},{title:"Limits",cells:[{label:"CPU",value:a?.resources.limits.cpu??"-",isLoading:l},{label:"Memory",value:a?.resources.limits.memory??"-",isLoading:l}]},{title:"Docker Image",cells:[{value:a?.imageVersion??"-",isLoading:l}]}];case Q.Node:return[{title:"Nodes",cells:[{label:"Desired",value:t?.nodes.desired.toString()??"-",isLoading:l},{label:"Ready",value:t?.nodes.ready.toString()??"-",isLoading:l}]},{title:"Requests",cells:[{label:"CPU",value:t?.resources.requests.cpu??"-",isLoading:l},{label:"Memory",value:t?.resources.requests.memory??"-",isLoading:l}]},{title:"Limits",cells:[{label:"CPU",value:t?.resources.limits.cpu??"-",isLoading:l},{label:"Memory",value:t?.resources.limits.memory??"-",isLoading:l}]},{title:"Docker Image",cells:[{value:t?.imageVersion??"-",isLoading:l}]}];default:return[]}})(y,C,h,p),[C,h,y,p]),V=l(()=>(y===Q.Gateway?C?.manifestYAML:h?.manifestYAML)??"",[C,h,y]),z=l(()=>y===Q.Gateway?v:x,[v,x,y]);return e.createElement(N,null,e.createElement(_,{isLoading:p,selectedTab:y,setSelectedTab:k,onClickDownloadDiagnose:void 0,onClickRefresh:R}),e.createElement(ae,{icon:G,title:I,badge:D,statusCard:S,textCards:T,yaml:V}),e.createElement(K,{isLoading:p,tableRowsMaxHeight:s,pods:z,getExtendedPodInfo:g}))};export{le as PipelineCollectors};
15
+ `,ee=({selectedTab:a,setSelectedTab:l,onClickDownloadDiagnose:t,onClickRefresh:i,isLoading:s})=>e.createElement(_,null,e.createElement(x,{$gap:12},e.createElement(x,{$gap:8},e.createElement(H,{size:32}),e.createElement(y,{size:P.M,weight:500},"Pipeline Collectors")),e.createElement(R,{options:Z,selected:a,setSelected:l})),e.createElement(x,{$gap:8},t&&e.createElement(I,{label:"Download Diagnose",leftIcon:q,size:w.S,variant:v.Text,onClick:t}),i&&e.createElement(I,{label:"Refresh",leftIcon:G,size:w.S,variant:v.Text,onClick:i,loading:s}))),ae=({isOpen:a,onClose:l,title:t,yaml:i})=>{const{clickCopy:s,isCopied:o}=n();return e.createElement(c,{isOpen:a,header:{icon:Y,title:t,onClose:l}},e.createElement(b,{icon:O,title:"YAML",actions:[{id:r(),type:C.Button,props:{label:"",leftIcon:o?U:E,onClick:()=>s(i),disabled:o,size:w.S,variant:v.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(f,{code:i,language:"yaml",theme:"duotoneDark"}))))},le=({icon:l,title:t,badge:i,statusCard:s,textCards:o,yaml:n})=>{const[d,c]=a(!1);return e.createElement(b,{icon:l,title:t,badge:i,actions:[{id:r(),type:C.Button,props:{variant:v.Secondary,size:w.S,leftIcon:O,label:"View YAML",onClick:()=>c(!0)}}]},e.createElement(x,{$gap:16},e.createElement(D,{...s}),o.map(a=>e.createElement(M,{key:a.title,...a}))),e.createElement(ae,{isOpen:d,onClose:()=>c(!1),title:t,yaml:n}))},te=e=>{switch(e){case N.Healthy:return"All desired replicas are updated, available, and ready";case N.Updating:return"Workload is progressing towards desired state (e.g., updating pods)";case N.Degraded:return"Progressing but with availability issues (e.g., not enough available replicas)";case N.Failed:return"Progress deadline exceeded or an unrecoverable error occurred";case N.Down:return"No available replicas";case N.Unknown:return"Status cannot be determined from current signals";default:return"Status unknown"}},ie=({tableRowsMaxHeight:s,getGatewayInfo:n,getGatewayPods:r,getNodeCollectorInfo:c,getNodeCollectorPods:u,getExtendedPodInfo:g})=>{const{formatTimeAgo:b}=o(),[p,m]=a(!1),[y,k]=a(X.Gateway),[C,w]=a(null),[v,f]=a([]),[h,L]=a(null),[x,P]=a([]),R=i(async()=>{switch(m(!0),y){case X.Gateway:w(await n()??null),f(await r()??[]);break;case X.Node:L(await c()??null),P(await u()??[])}m(!1)},[y]);l(()=>{R().catch(e=>{})},[R]);const I=t(()=>(e=>{const a=Z.find(a=>a.value===e);return a?.label??"Pipeline Collectors"})(y),[y]),D=t(()=>((e,a,l,t)=>{const i={status:A.Disabled,label:"No rollouts yet"};let s=!1,o=null;switch(e){case X.Gateway:s=a?.rolloutInProgress??!1,o=a?.lastRolloutAt??null;break;case X.Node:s=l?.rolloutInProgress??!1,o=l?.lastRolloutAt??null;break;default:return i}return s?{status:$.Info,label:"Rollout in progress",rightIcon:G,useSecondaryTone:!0}:o?{status:A.Disabled,label:`Last Rollout: ${t(o)}`}:i})(y,C,h,b),[C,h,y,b]),M=t(()=>((e,a,l,t)=>{if(t)return{status:$.Info,title:"Loading",description:"Fetching data..."};let i=A.Unknown,s=N.Unknown,o=te(N.Unknown);switch(e){case X.Gateway:i=d(a?.status),s=a?.status??s,o=a?.status?te(a.status):o;break;case X.Node:i=d(a?.status),s=l?.status??s,o=l?.status?te(l.status):o}return{status:i,title:s,description:o}})(y,C,h,p),[C,h,y,p]),T=t(()=>((e,a,l,t)=>{switch(e){case X.Gateway:return[{title:"HPA Spec (Replicas)",cells:[{label:"Min.",value:a?.hpa.min.toString()??"-",isLoading:t},{label:"Max.",value:a?.hpa.max.toString()??"-",isLoading:t},{label:"Current",value:a?.hpa.current.toString()??"-",isLoading:t},{label:"Desired",value:a?.hpa.desired.toString()??"-",isLoading:t}]},{title:"Requests",cells:[{label:"CPU",value:a?.resources.requests.cpu??"-",isLoading:t},{label:"Memory",value:a?.resources.requests.memory??"-",isLoading:t}]},{title:"Limits",cells:[{label:"CPU",value:a?.resources.limits.cpu??"-",isLoading:t},{label:"Memory",value:a?.resources.limits.memory??"-",isLoading:t}]},{title:"Docker Image",cells:[{value:a?.imageVersion??"-",isLoading:t}]}];case X.Node:return[{title:"Nodes",cells:[{label:"Desired",value:l?.nodes.desired.toString()??"-",isLoading:t},{label:"Ready",value:l?.nodes.ready.toString()??"-",isLoading:t}]},{title:"Requests",cells:[{label:"CPU",value:l?.resources.requests.cpu??"-",isLoading:t},{label:"Memory",value:l?.resources.requests.memory??"-",isLoading:t}]},{title:"Limits",cells:[{label:"CPU",value:l?.resources.limits.cpu??"-",isLoading:t},{label:"Memory",value:l?.resources.limits.memory??"-",isLoading:t}]},{title:"Docker Image",cells:[{value:l?.imageVersion??"-",isLoading:t}]}];default:return[]}})(y,C,h,p),[C,h,y,p]),V=t(()=>(y===X.Gateway?C?.manifestYAML:h?.manifestYAML)??"",[C,h,y]),z=t(()=>y===X.Gateway?v:x,[v,x,y]);return e.createElement(S,null,e.createElement(ee,{isLoading:p,selectedTab:y,setSelectedTab:k,onClickDownloadDiagnose:void 0,onClickRefresh:R}),e.createElement(le,{icon:Y,title:I,badge:D,statusCard:M,textCards:T,yaml:V}),e.createElement(Q,{isLoading:p,tableRowsMaxHeight:s,pods:z,getExtendedPodInfo:g}))};export{ie as PipelineCollectors};
package/lib/containers.js CHANGED
@@ -1,4 +1,4 @@
1
- import e,{useState as t,useEffect as i,forwardRef as a,useRef as n,useImperativeHandle as o,useMemo as l,Fragment as r,useCallback as s,Children as c}from"react";import d,{css as u}from"styled-components";import{r as p,s as m,A as h,K as g,t as y,v,w as b,x as f,y as x,z as $,E as C,G as S,H as k,J as w,L as T,M as D,N,T as E,Q as O,R as F,U as I,V as A,X as M,Y as R,Z as L,_ as P,$ as K,a0 as j,a1 as V,a2 as q,a3 as z,a4 as H,q as B,a5 as W,a6 as _,a7 as U,a8 as J,a9 as G,aa as Y,ab as X,c as Z,ac as Q,ad as ee,ae as te,af as ie,ag as ae,ah as ne,ai as oe,aj as le,ak as re,al as se,k as ce,am as de,an as ue,ao as pe,ap as me,aq as he,ar as ge,as as ye,at as ve,au as be,av as fe,aw as xe,ax as $e,ay as Ce,az as Se,aA as ke,C as we,aB as Te,aC as De,aD as Ne,aE as Ee,aF as Oe,aG as Fe,aH as Ie,aI as Ae,aJ as Me,F as Re,aK as Le,aL as Pe,aM as Ke,aN as je,aO as Ve,aP as qe,aQ as ze,aR as He,aS as Be,aT as We,aU as _e,aV as Ue,aW as Je,aX as Ge,aY as Ye,aZ as Xe,a_ as Ze,a$ as Qe,b0 as et,b1 as tt,b2 as it,b3 as at,b4 as nt,b5 as ot,b6 as lt,b7 as rt,b8 as st,b9 as ct,ba as dt,bb as ut,bc as pt,bd as mt,be as ht,bf as gt,bg as yt,bh as vt,bi as bt,bj as ft,bk as xt,bl as $t,bm as Ct,bn as St,bo as kt,bp as wt,bq as Tt,br as Dt,bs as Nt,bt as Et,bu as Ot,bv as Ft,bw as It,bx as At,by as Mt,bz as Rt,bA as Lt,bB as Pt,bC as Kt,bD as jt,bE as Vt,bF as qt,u as zt,bG as Ht,bH as Bt,bI as Wt,bJ as _t,bK as Ut,bL as Jt,bM as Gt,bN as Yt,bO as Xt,bP as Zt,bQ as Qt,bR as ei,bS as ti,bT as ii,bU as ai,bV as ni,bW as oi,bX as li,bY as ri,bZ as si,a as ci,b_ as di,b$ as ui,c0 as pi,c1 as mi,c2 as hi,c3 as gi,c4 as yi}from"./chunks/ui-components-c940a3cc.js";import{VSquareIcon as vi,XSquareIcon as bi,EditIcon as fi,TrashIcon as xi,OdigosLogoText as $i,PlusIcon as Ci,SearchIcon as Si,FilterIcon as ki,DataStreamIcon as wi,VIcon as Ti,OdigosLogo as Di,ArrowIcon as Ni,RefreshLeftArrowIcon as Ei,NotificationIcon as Oi,UserIcon as Fi,ImageErrorIcon as Ii,OverviewIcon as Ai,InstrumentationRuleIcon as Mi,ActionIcon as Ri,SourceIcon as Li,DestinationIcon as Pi,SlackLogo as Ki,CopyIcon as ji,KeyIcon as Vi,TerminalIcon as qi,ExclamationTriangleIcon as zi,TraceViewIcon as Hi}from"./icons.js";import{MarkerType as Bi,useNodesState as Wi,useEdgesState as _i,applyNodeChanges as Ui}from"@xyflow/react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";const Ji=e=>{const{type:t,name:i,notes:a,signals:n,disabled:o,fields:{collectContainerAttributes:l,collectReplicaSetAttributes:r,collectWorkloadId:s,collectClusterId:c,labelsAttributes:d,annotationsAttributes:u,clusterAttributes:y,overwriteExistingValues:v,attributeNamesToDelete:b,renames:f,piiCategories:x,fallbackSamplingRatio:$,samplingPercentage:C,endpointsFilters:S,servicesNameFilters:k,attributeFilters:w}}=e,T=[{title:p.TYPE,value:t},{type:m.ActiveStatus,title:p.STATUS,value:String(!o)},{type:m.Monitors,title:p.SIGNALS_FOR_PROCESSING,value:n?.map(e=>e.toLowerCase()).join(", ")||""},{title:p.NAME,value:i||""},{title:p.NOTES,value:a||""},{type:m.Divider}];if(t===h.K8sAttributes&&(T.push({title:"Collect Container Attributes",value:String(l)}),T.push({title:"Collect ReplicaSet Attributes",value:String(r)}),T.push({title:"Collect Workload ID",value:String(s)}),T.push({title:"Collect Cluster ID",value:String(c)}),d?.length&&T.push({type:m.Divider}),d?.forEach(({labelKey:e,attributeKey:t,from:i},a)=>{let n="";n+=`Label Key: ${e}\n`,n+=`Attribute Key: ${t}\n`,n+=`From: ${i||g.Pod}\n`,T.push({title:"Label"+(d.length>1?` #${a+1}`:""),value:n})}),u?.length&&T.push({type:m.Divider}),u?.forEach(({annotationKey:e,attributeKey:t,from:i},a)=>{let n="";n+=`Annotation Key: ${e}\n`,n+=`Attribute Key: ${t}\n`,n+=`From: ${i||g.Pod}\n`,T.push({title:"Annotation"+(u.length>1?` #${a+1}`:""),value:n})})),t===h.AddClusterInfo){T.push({title:"Overwrite Existing Values",value:String(v||!1)});let e="";y?.forEach(({attributeName:t,attributeStringValue:i},a)=>{e+=`${t}: ${i}`,a<y.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.DeleteAttributes){let e="";b?.forEach((t,i)=>{e+=t,i<b.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.RenameAttributes){let e="";const t=Object.entries(f||{});t.forEach(([i,a],n)=>{e+=`${i}: ${a}`,n<t.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.PiiMasking){let e="";x?.forEach((t,i)=>{e+=t,i<x.length-1&&(e+=", ")}),T.push({title:"Categories",value:e})}return t===h.ErrorSampler&&T.push({title:"Sampling Ratio",value:String($)}),t===h.ProbabilisticSampler&&T.push({title:"Sampling Percentage",value:String(C)}),t===h.LatencySampler&&S?.forEach(({serviceName:e,httpRoute:t,minimumLatencyThreshold:i,fallbackSamplingRatio:a},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`HTTP Route: ${t}\n`,o+=`Min. Latency: ${i}\n`,o+=`Fallback Sampling Ratio: ${a}`,T.push({title:"Endpoint"+(S.length>1?` #${n+1}`:""),value:o})}),t===h.ServiceNameSampler&&k?.forEach(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:i},a)=>{let n="";n+=`Service Name: ${e}\n`,n+=`Sampling Ratio: ${t}\n`,n+=`Fallback Sampling Ratio: ${i}`,T.push({title:"Filter"+(k.length>1?` #${a+1}`:""),value:n})}),t===h.SpanAttributeSampler&&w?.forEach(({serviceName:e,attributeKey:t,fallbackSamplingRatio:i,condition:a},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`Attribute Key: ${t}\n`,o+=`Fallback Sampling Ratio: ${i}\n`;const l=Object.keys(a)[0];o+=`Condition: ${l}\n`,o+=`Operation: ${a[l]?.operation}\n`,o+=`Expected Value: ${a[l]?.expectedValue}`,"jsonCondition"===l&&(o+=`\nJSON Path: ${a[l].jsonPath}`),T.push({title:"Filter"+(w.length>1?` #${n+1}`:""),value:o})}),T},Gi=f.PiiCategories,Yi=d.div`
1
+ import e,{useState as t,useEffect as i,forwardRef as a,useRef as n,useImperativeHandle as o,useMemo as l,Fragment as r,useCallback as s,Children as c}from"react";import d,{css as u}from"styled-components";import{s as p,t as m,A as h,K as g,v as y,w as v,x as b,y as f,z as x,E as $,G as C,H as S,J as k,L as w,M as T,N as D,Q as N,T as E,R as O,U as F,V as I,X as A,Y as M,Z as R,_ as L,$ as P,a0 as K,a1 as j,a2 as V,a3 as q,a4 as z,a5 as H,r as B,a6 as W,a7 as _,a8 as U,a9 as J,aa as G,ab as Y,ac as X,c as Z,ad as Q,ae as ee,af as te,ag as ie,ah as ae,ai as ne,aj as oe,ak as le,al as re,am as se,l as ce,an as de,ao as ue,ap as pe,aq as me,ar as he,as as ge,at as ye,au as ve,av as be,aw as fe,ax as xe,ay as $e,az as Ce,aA as Se,aB as ke,C as we,aC as Te,aD as De,aE as Ne,aF as Ee,aG as Oe,aH as Fe,aI as Ie,aJ as Ae,aK as Me,F as Re,aL as Le,aM as Pe,aN as Ke,aO as je,aP as Ve,aQ as qe,aR as ze,aS as He,aT as Be,aU as We,aV as _e,aW as Ue,aX as Je,aY as Ge,aZ as Ye,a_ as Xe,a$ as Ze,b0 as Qe,b1 as et,b2 as tt,b3 as it,b4 as at,b5 as nt,b6 as ot,b7 as lt,b8 as rt,b9 as st,ba as ct,bb as dt,bc as ut,bd as pt,be as mt,bf as ht,bg as gt,bh as yt,bi as vt,bj as bt,bk as ft,bl as xt,bm as $t,bn as Ct,bo as St,bp as kt,bq as wt,br as Tt,bs as Dt,bt as Nt,bu as Et,bv as Ot,bw as Ft,bx as It,by as At,bz as Mt,bA as Rt,bB as Lt,bC as Pt,bD as Kt,bE as jt,bF as Vt,bG as qt,u as zt,bH as Ht,bI as Bt,bJ as Wt,bK as _t,bL as Ut,bM as Jt,bN as Gt,bO as Yt,bP as Xt,bQ as Zt,bR as Qt,bS as ei,bT as ti,bU as ii,bV as ai,bW as ni,bX as oi,bY as li,bZ as ri,b_ as si,a as ci,b$ as di,c0 as ui,c1 as pi,c2 as mi,c3 as hi,c4 as gi,c5 as yi}from"./chunks/ui-components-c87427ab.js";import{VSquareIcon as vi,XSquareIcon as bi,EditIcon as fi,TrashIcon as xi,OdigosLogoText as $i,PlusIcon as Ci,SearchIcon as Si,FilterIcon as ki,DataStreamIcon as wi,VIcon as Ti,OdigosLogo as Di,ArrowIcon as Ni,RefreshLeftArrowIcon as Ei,NotificationIcon as Oi,UserIcon as Fi,ImageErrorIcon as Ii,OverviewIcon as Ai,InstrumentationRuleIcon as Mi,ActionIcon as Ri,SourceIcon as Li,DestinationIcon as Pi,SlackLogo as Ki,CopyIcon as ji,KeyIcon as Vi,TerminalIcon as qi,ExclamationTriangleIcon as zi,TraceViewIcon as Hi}from"./icons.js";import{MarkerType as Bi,useNodesState as Wi,useEdgesState as _i,applyNodeChanges as Ui}from"@xyflow/react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";const Ji=e=>{const{type:t,name:i,notes:a,signals:n,disabled:o,fields:{collectContainerAttributes:l,collectReplicaSetAttributes:r,collectWorkloadId:s,collectClusterId:c,labelsAttributes:d,annotationsAttributes:u,clusterAttributes:y,overwriteExistingValues:v,attributeNamesToDelete:b,renames:f,piiCategories:x,fallbackSamplingRatio:$,samplingPercentage:C,endpointsFilters:S,servicesNameFilters:k,attributeFilters:w}}=e,T=[{title:p.TYPE,value:t},{type:m.ActiveStatus,title:p.STATUS,value:String(!o)},{type:m.Monitors,title:p.SIGNALS_FOR_PROCESSING,value:n?.map(e=>e.toLowerCase()).join(", ")||""},{title:p.NAME,value:i||""},{title:p.NOTES,value:a||""},{type:m.Divider}];if(t===h.K8sAttributes&&(T.push({title:"Collect Container Attributes",value:String(l)}),T.push({title:"Collect ReplicaSet Attributes",value:String(r)}),T.push({title:"Collect Workload ID",value:String(s)}),T.push({title:"Collect Cluster ID",value:String(c)}),d?.length&&T.push({type:m.Divider}),d?.forEach(({labelKey:e,attributeKey:t,from:i},a)=>{let n="";n+=`Label Key: ${e}\n`,n+=`Attribute Key: ${t}\n`,n+=`From: ${i||g.Pod}\n`,T.push({title:"Label"+(d.length>1?` #${a+1}`:""),value:n})}),u?.length&&T.push({type:m.Divider}),u?.forEach(({annotationKey:e,attributeKey:t,from:i},a)=>{let n="";n+=`Annotation Key: ${e}\n`,n+=`Attribute Key: ${t}\n`,n+=`From: ${i||g.Pod}\n`,T.push({title:"Annotation"+(u.length>1?` #${a+1}`:""),value:n})})),t===h.AddClusterInfo){T.push({title:"Overwrite Existing Values",value:String(v||!1)});let e="";y?.forEach(({attributeName:t,attributeStringValue:i},a)=>{e+=`${t}: ${i}`,a<y.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.DeleteAttributes){let e="";b?.forEach((t,i)=>{e+=t,i<b.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.RenameAttributes){let e="";const t=Object.entries(f||{});t.forEach(([i,a],n)=>{e+=`${i}: ${a}`,n<t.length-1&&(e+=", ")}),T.push({title:"Attributes",value:e})}if(t===h.PiiMasking){let e="";x?.forEach((t,i)=>{e+=t,i<x.length-1&&(e+=", ")}),T.push({title:"Categories",value:e})}return t===h.ErrorSampler&&T.push({title:"Sampling Ratio",value:String($)}),t===h.ProbabilisticSampler&&T.push({title:"Sampling Percentage",value:String(C)}),t===h.LatencySampler&&S?.forEach(({serviceName:e,httpRoute:t,minimumLatencyThreshold:i,fallbackSamplingRatio:a},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`HTTP Route: ${t}\n`,o+=`Min. Latency: ${i}\n`,o+=`Fallback Sampling Ratio: ${a}`,T.push({title:"Endpoint"+(S.length>1?` #${n+1}`:""),value:o})}),t===h.ServiceNameSampler&&k?.forEach(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:i},a)=>{let n="";n+=`Service Name: ${e}\n`,n+=`Sampling Ratio: ${t}\n`,n+=`Fallback Sampling Ratio: ${i}`,T.push({title:"Filter"+(k.length>1?` #${a+1}`:""),value:n})}),t===h.SpanAttributeSampler&&w?.forEach(({serviceName:e,attributeKey:t,fallbackSamplingRatio:i,condition:a},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`Attribute Key: ${t}\n`,o+=`Fallback Sampling Ratio: ${i}\n`;const l=Object.keys(a)[0];o+=`Condition: ${l}\n`,o+=`Operation: ${a[l]?.operation}\n`,o+=`Expected Value: ${a[l]?.expectedValue}`,"jsonCondition"===l&&(o+=`\nJSON Path: ${a[l].jsonPath}`),T.push({title:"Filter"+(w.length>1?` #${n+1}`:""),value:o})}),T},Gi=f.PiiCategories,Yi=d.div`
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  gap: 32px;
package/lib/functions.js CHANGED
@@ -1 +1 @@
1
- export{bn as capitalizeFirstLetter,cm as cleanObjectEmptyStringsValues,bi as compareCondition,bp as deepClone,ar as filterActions,aX as filterDestinations,aY as filterDestinationsByStream,aV as filterSources,aW as filterSourcesByStream,cn as flattenObjectKeys,aM as formatBytes,c1 as formatDuration,g as generateId,a8 as getActionIcon,ak as getConditionsBooleans,aQ as getContainersIcons,bY as getContainersInstrumentedCount,aP as getDestinationIcon,ay as getEntityIcon,aK as getEntityId,at as getEntityLabel,co as getIdFromSseTarget,aO as getInstrumentationRuleIcon,cp as getMainContainerLanguage,bs as getMetricForEntity,cq as getMonitorIcon,cr as getPlatformIcon,cs as getPlatformLabel,bB as getProgrammingLanguageIcon,c3 as getRecursiveValues,ct as getSseTargetFromId,cu as getStatusColor,b as getStatusFromPodStatus,ap as getStatusIcon,bL as getStatusTypeFromOdigosHealth,cv as getValueForRange,bF as getWorkloadId,bm as getYamlFieldsForDestination,bM as hasUnhealthyInstances,E as isEmpty,cw as isLegalK8sLabel,bZ as isOverTime,bQ as isStringABoolean,cx as isTimeElapsed,cy as isValidVersion,am as mapConditions,bh as mapDestinationFieldsForDisplay,aL as mapExportedSignals,cz as numbersOnly,bR as parseBooleanFromString,cA as parseJsonStringToPrettyString,cB as removeEmptyValuesFromObject,bj as safeJsonParse,cC as safeJsonStringify,aE as sleep,b3 as splitCamelString,cD as stringifyNonStringValues}from"./chunks/ui-components-c940a3cc.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
1
+ export{bo as capitalizeFirstLetter,cn as cleanObjectEmptyStringsValues,bj as compareCondition,bq as deepClone,as as filterActions,aY as filterDestinations,aZ as filterDestinationsByStream,aW as filterSources,aX as filterSourcesByStream,co as flattenObjectKeys,aN as formatBytes,c2 as formatDuration,g as generateId,a9 as getActionIcon,al as getConditionsBooleans,aR as getContainersIcons,bZ as getContainersInstrumentedCount,aQ as getDestinationIcon,az as getEntityIcon,aL as getEntityId,au as getEntityLabel,cp as getIdFromSseTarget,aP as getInstrumentationRuleIcon,cq as getMainContainerLanguage,bt as getMetricForEntity,cr as getMonitorIcon,cs as getPlatformIcon,ct as getPlatformLabel,bC as getProgrammingLanguageIcon,c4 as getRecursiveValues,cu as getSseTargetFromId,cv as getStatusColor,b as getStatusFromPodStatus,aq as getStatusIcon,bM as getStatusTypeFromOdigosHealth,cw as getValueForRange,bG as getWorkloadId,bn as getYamlFieldsForDestination,bN as hasUnhealthyInstances,G as isEmpty,cx as isLegalK8sLabel,b_ as isOverTime,bR as isStringABoolean,cy as isTimeElapsed,cz as isValidVersion,an as mapConditions,bi as mapDestinationFieldsForDisplay,aM as mapExportedSignals,cA as numbersOnly,bS as parseBooleanFromString,cB as parseJsonStringToPrettyString,cC as removeEmptyValuesFromObject,bk as safeJsonParse,cD as safeJsonStringify,aF as sleep,b4 as splitCamelString,cE as stringifyNonStringValues}from"./chunks/ui-components-c87427ab.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
package/lib/hooks.js CHANGED
@@ -1 +1 @@
1
- export{a6 as useActionFormData,cH as useBodyScroll,aZ as useClickNode,bG as useClickNotification,aS as useConnection,aU as useContainerSize,a as useCopy,b9 as useDataStreamFormData,bl as useDestinationFormData,b_ as useGenericForm,cI as useInfiniteScroll,bC as useInstrumentationRuleFormData,$ as useKeyDown,b2 as useOnClickOutside,a_ as usePopup,b8 as useSessionStorage,bS as useSourceFormData,bW as useSourceSelectionFormData,u as useTimeAgo,bE as useTransition}from"./chunks/ui-components-c940a3cc.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";
1
+ export{a7 as useActionFormData,cI as useBodyScroll,a_ as useClickNode,bH as useClickNotification,aT as useConnection,aV as useContainerSize,a as useCopy,ba as useDataStreamFormData,bm as useDestinationFormData,b$ as useGenericForm,cJ as useInfiniteScroll,bD as useInstrumentationRuleFormData,a0 as useKeyDown,b3 as useOnClickOutside,a$ as usePopup,b9 as useSessionStorage,bT as useSourceFormData,bX as useSourceSelectionFormData,u as useTimeAgo,bF as useTransition}from"./chunks/ui-components-c87427ab.js";import"./icons.js";import"react";import"zustand";import"javascript-time-ago";import"./chunks/vendor-55cc654c.js";import"react-dom";import"styled-components";import"@xyflow/react";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";