@odigos/ui-kit 0.0.135 → 0.0.136
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 +16 -0
- package/lib/chunks/ui-components-d05b354a.js +2050 -0
- package/lib/components/_v2/cards/data-card/index.d.ts +1 -0
- package/lib/components/_v2/cards/section-card/index.d.ts +1 -0
- package/lib/components/_v2/cli-command/index.d.ts +7 -0
- package/lib/components/_v2/icon-button/index.d.ts +2 -2
- package/lib/components/_v2/index.d.ts +1 -0
- package/lib/components/v2.js +1 -1
- package/lib/components.js +1 -1
- package/lib/constants.js +1 -1
- package/lib/containers/_v2/pipeline-collectors/pods-info/index.d.ts +1 -1
- package/lib/containers/v2.js +9 -5
- package/lib/containers.js +26 -26
- package/lib/functions/get-status-from-pod-status/index.d.ts +3 -2
- package/lib/functions.js +1 -1
- package/lib/hooks/useCopy.d.ts +10 -1
- package/lib/hooks.js +1 -1
- package/lib/icons.js +1 -1
- package/lib/snippets.js +1 -1
- package/lib/store.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/types/pipeline-collectors/index.d.ts +46 -34
- package/lib/types.js +1 -1
- package/lib/visuals.js +1 -1
- package/package.json +1 -1
- package/lib/chunks/ui-components-c87427ab.js +0 -2024
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type FC } from 'react';
|
|
1
|
+
import { type MouseEventHandler, type FC } from 'react';
|
|
2
2
|
import type { SVG } from '@/types';
|
|
3
3
|
export declare enum IconButtonSize {
|
|
4
4
|
XS = 16,
|
|
@@ -9,6 +9,6 @@ export declare enum IconButtonSize {
|
|
|
9
9
|
export interface IconButtonProps {
|
|
10
10
|
icon: SVG;
|
|
11
11
|
size?: IconButtonSize;
|
|
12
|
-
onClick
|
|
12
|
+
onClick?: MouseEventHandler;
|
|
13
13
|
}
|
|
14
14
|
export declare const IconButton: FC<IconButtonProps>;
|
package/lib/components/v2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{n as Badge,r as Button,B as ButtonSize,c$ as ButtonTab,d0 as ButtonTabList,i as ButtonVariants,d3 as Checkbox,d5 as CheckboxList,d4 as CheckboxListDirection,d2 as CheckboxSize,f as CliCommand,d as DataCard,D as Drawer,d6 as Header,I as IconButton,c2 as IconButtonSize,d7 as Input,d8 as Modal,d9 as Navbar,da as Note,dc as Radio,de as RadioGroup,dd as RadioGroupDirection,db as RadioSize,S as SectionCard,h as SectionCardActionType,d1 as SectionCardSize,q as Segment,s as StatusCard,k as Table,df as Tag,t as TextCard,e as Typography,p as TypographySize,dg as TypographyVariants}from"../chunks/ui-components-d05b354a.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{
|
|
1
|
+
export{al as AutocompleteInput,aG as Badge,aJ as Button,a6 as CancelWarning,C as CenterThis,y as Checkbox,j as Code,ac as ConditionDetails,ad as DataCard,w as DataCardFieldTypes,bu as DataCardFields,cP as DataFinger,aM as DataTab,a5 as DeleteWarning,bR as DescribeRow,am as Divider,Y as DocsButton,a4 as Drawer,cR as DrawerFooter,cQ as DrawerHeader,b7 as Dropdown,cS as ErrorBoundary,bg as ExtendArrow,F as FadeLoader,z as FieldError,x as FieldLabel,c as FlexColumn,o as FlexRow,cT as Header,bf as IconButton,b_ as IconGroup,aA as IconTitleBadge,av as IconWrapped,bN as IconsNav,cU as ImageControlled,G as Input,Q as InputList,L as InputTable,aD as InteractiveTable,N as KeyValueInputsList,aI as LoadingText,ag as Modal,ai as ModalBody,Z as MonitorsCheckboxes,ax as MonitorsIcons,ah as NavigationButtons,aE as NoDataFound,aj as NotificationNote,c_ as Overlay,P as PageContent,b2 as Popup,c3 as PopupForm,c8 as ScrollX,aQ as ScrollY,X as SectionTitle,V as Segment,b3 as SelectionButton,aU as SkeletonLoader,ao as Status,bt as Stepper,cV as TabList,ay as TableContainer,az as TableTitleWrap,aC as TableWrap,bD as Tag,U as Text,_ as TextArea,M as Toggle,c6 as ToggleCodeComponent,aq as Tooltip,aF as TraceLoader,b4 as VerticalScroll,cZ as WarningModal,cW as getLinksFromText,cX as getStrongsFromText,cY as renderText}from"./chunks/ui-components-d05b354a.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{
|
|
1
|
+
export{aa as ACTION_OPTIONS,a3 as BUTTON_TEXTS,be as DEFAULT_DATA_STREAM_NAME,br as DESTINATION_CATEGORIES,b8 as DISPLAY_LANGUAGES,v as DISPLAY_TITLES,ak as FORM_ALERTS,bG as INSTRUMENTATION_RULE_OPTIONS,cI as LANGUAGE_OPTIONS,b9 as MONITORS_OPTIONS,ba as STORAGE_KEYS,cJ as TOKEN_ABOUT_TO_EXPIRE}from"./chunks/ui-components-d05b354a.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,5 +1,5 @@
|
|
|
1
1
|
import { type FC, type CSSProperties } from 'react';
|
|
2
|
-
import type
|
|
2
|
+
import { type GetExtendedPodInfo, type PodInfo } from '@/types';
|
|
3
3
|
export interface PodsInfoProps {
|
|
4
4
|
isLoading?: boolean;
|
|
5
5
|
tableRowsMaxHeight: CSSProperties['maxHeight'];
|
package/lib/containers/v2.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import e,{useState as a,useEffect as
|
|
1
|
+
import e,{useState as a,useEffect as t,useMemo as l,useCallback as s}from"react";import{T as i,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,h as v,B as w,i as f,j as h,k as L,l as x,m as P,n as R,o as $,p as I,q as A,r as D,s as M,t as S,O as N,W as z,P as T}from"../chunks/ui-components-d05b354a.js";import V,{useTheme as j}from"styled-components";import{PodIcon as O,ChevronUpIcon as U,ChevronDownIcon as E,TerminalIcon as H,YamlIcon as q,VIcon as G,CopyIcon as Y,VSquareIcon as F,XSquareIcon as W,PipelineCollectorIcon as B,DownloadIcon as K,RefreshIcon as J,GatewayIcon as Q}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 X=V.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
justify-content: space-between;
|
|
@@ -6,10 +6,14 @@ import e,{useState as a,useEffect as l,useMemo as t,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
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
cursor: pointer;
|
|
10
|
+
&:hover {
|
|
11
|
+
background: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
12
|
+
}
|
|
13
|
+
`,Z=V.div`
|
|
14
|
+
animation-name: ${i.animations.fade.in};
|
|
15
|
+
`,_=({pod:s,getExtendedPodInfo:i,onClose:L})=>{const{formatTimeAgo:x}=o(),{clickCopy:P,isCopied:R}=n(),[$,I]=a(null),[A,D]=a(!1);t(()=>{s?i(s.namespace,s.name).then(e=>I(e??null)):(I(null),D(!1))},[s]);const M=l(()=>[{id:r(),title:"Node",label:$?.node??"-",withCopy:!0},{id:r(),title:"Status",badge:{status:d($?.status),label:$?.status??"-"}}],[$]),S=l(()=>$?.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 ${x(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}`}]}))||[],[$]);return e.createElement(c,{isOpen:!!s,header:{icon:O,title:"Pod Information",onClose:L}},$?null:e.createElement(u,null,e.createElement(g,null)),$?e.createElement(e.Fragment,null,e.createElement(b,{icon:O,title:$.name,withCopyTitle:!0},e.createElement(p,{$gap:24},e.createElement(m,{cellsPerRow:2,items:M}),S.length>0&&e.createElement(p,{$gap:12},e.createElement(X,{onClick:()=>D(e=>!e)},e.createElement(y,null,"Containers Overview"),e.createElement(k,{icon:A?U:E})),A&&S.map(({id:a,items:t})=>e.createElement(Z,{key:a},e.createElement(m,{cellsPerRow:2,items:t})))))),e.createElement(b,{icon:H,title:"Kubectl Commands"},e.createElement(p,{$gap:12},e.createElement(C,{value:`kubectl get pod ${$.name} -n ${$.namespace} -o yaml`}),e.createElement(C,{value:`kubectl describe pod ${$.name} -n ${$.namespace}`}),e.createElement(C,{value:`kubectl logs ${$.name} -n ${$.namespace}`}))),e.createElement(b,{icon:q,title:"YAML",actions:[{id:r(),type:v.Button,props:{label:"",leftIcon:R?G:Y,onClick:()=>P($.manifestYAML),disabled:R,size:w.S,variant:f.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(h,{code:$.manifestYAML,language:"yaml",theme:"duotoneDark"})))):null)};var ee;!function(e){e.PodName="podName",e.Ready="ready",e.Started="started",e.Status="status",e.Restarts="restarts",e.NodeName="nodeName",e.Age="age",e.DockerImage="dockerImage"}(ee||(ee={}));const ae=[{key:ee.PodName,label:"Pod Name",sortable:!0},{key:ee.Ready,label:"Ready",sortable:!0,textAlign:"right"},{key:ee.Started,label:"Started",sortable:!0,textAlign:"right"},{key:ee.Status,label:"Status",sortable:!0},{key:ee.Restarts,label:"Restarts",sortable:!0,textAlign:"right"},{key:ee.NodeName,label:"Node Name",sortable:!0},{key:ee.Age,label:"Age",sortable:!0,textAlign:"right"},{key:ee.DockerImage,label:"Docker Image",sortable:!0,textAlign:"right"}],te=({isLoading:t,tableRowsMaxHeight:s,pods:i,getExtendedPodInfo:n})=>{const r=j(),{formatTimeAgo:c}=o(),[u,g]=a(null),p=l(()=>{const a=a=>a?e.createElement(F,{fill:x(r,P.Success,"500"),size:20}):e.createElement(W,{fill:x(r,P.Error,"500"),size:20});return i.map(t=>({onClick:()=>g(t),cells:[{key:ee.PodName,rawValue:t.name},{key:ee.Ready,rawValue:t.ready,component:()=>a(t.ready)},{key:ee.Started,rawValue:t.started,component:()=>a(t.started)},{key:ee.Status,rawValue:t.status,component:()=>{return a=t.status,e.createElement(R,{status:d(a),label:a});var a}},{key:ee.Restarts,rawValue:t.restartsCount.toString()},{key:ee.NodeName,rawValue:t.nodeName},{key:ee.Age,rawValue:c(t.creationTimestamp)},{key:ee.DockerImage,rawValue:t.image}]}))},[i,r]);return e.createElement(b,{icon:O,title:"Pods"},e.createElement(L,{maxHeight:s,isLoading:t,columns:ae,rows:p}),e.createElement(_,{pod:u,getExtendedPodInfo:n,onClose:()=>g(null)}))};var le;!function(e){e.Gateway="gateway",e.Node="node"}(le||(le={}));const se=[{value:le.Gateway,label:"Gateway"},{value:le.Node,label:"Node Collector"}],ie=V.div`
|
|
12
16
|
display: flex;
|
|
13
17
|
align-items: center;
|
|
14
18
|
justify-content: space-between;
|
|
15
|
-
`,
|
|
19
|
+
`,oe=({selectedTab:a,setSelectedTab:t,onClickDownloadDiagnose:l,onClickRefresh:s,isLoading:i})=>e.createElement(ie,null,e.createElement($,{$gap:12},e.createElement($,{$gap:8},e.createElement(B,{size:32}),e.createElement(y,{size:I.M,weight:500},"Pipeline Collectors")),e.createElement(A,{options:se,selected:a,setSelected:t})),e.createElement($,{$gap:8},l&&e.createElement(D,{label:"Download Diagnose",leftIcon:K,size:w.S,variant:f.Text,onClick:l}),s&&e.createElement(D,{label:"Refresh",leftIcon:J,size:w.S,variant:f.Text,onClick:s,loading:i}))),ne=({isOpen:a,onClose:t,title:l,yaml:s})=>{const{clickCopy:i,isCopied:o}=n();return e.createElement(c,{isOpen:a,header:{icon:Q,title:l,onClose:t}},e.createElement(b,{icon:q,title:"YAML",actions:[{id:r(),type:v.Button,props:{label:"",leftIcon:o?G:Y,onClick:()=>i(s),disabled:o,size:w.S,variant:f.Secondary}}]},e.createElement("div",{style:{padding:"0 12px"}},e.createElement(h,{code:s,language:"yaml",theme:"duotoneDark"}))))},re=({icon:t,title:l,badge:s,statusCard:i,textCards:o,yaml:n})=>{const[d,c]=a(!1);return e.createElement(b,{icon:t,title:l,badge:s,actions:[{id:r(),type:v.Button,props:{variant:f.Secondary,size:w.S,leftIcon:q,label:"View YAML",onClick:()=>c(!0)}}]},e.createElement($,{$gap:16},e.createElement(M,{...i}),o.map(a=>e.createElement(S,{key:a.title,...a}))),e.createElement(ne,{isOpen:d,onClose:()=>c(!1),title:l,yaml:n}))},de=e=>{switch(e){case z.Healthy:return"All desired replicas are updated, available, and ready";case z.Updating:return"Workload is progressing towards desired state (e.g., updating pods)";case z.Degraded:return"Progressing but with availability issues (e.g., not enough available replicas)";case z.Failed:return"Progress deadline exceeded or an unrecoverable error occurred";case z.Down:return"No available replicas";case z.Unknown:return"Status cannot be determined from current signals";default:return"Status unknown"}},ce=({tableRowsMaxHeight:i,getGatewayInfo:n,getGatewayPods:r,getNodeCollectorInfo:c,getNodeCollectorPods:u,getExtendedPodInfo:g})=>{const{formatTimeAgo:b}=o(),[p,m]=a(!1),[y,k]=a(le.Gateway),[C,v]=a(null),[w,f]=a([]),[h,L]=a(null),[x,R]=a([]),$=s(async()=>{switch(m(!0),y){case le.Gateway:v(await n()??null),f(await r()??[]);break;case le.Node:L(await c()??null),R(await u()??[])}m(!1)},[y]);t(()=>{$().catch(e=>{})},[$]);const I=l(()=>(e=>{const a=se.find(a=>a.value===e);return a?.label??"Pipeline Collectors"})(y),[y]),A=l(()=>((e,a,t,l)=>{const s={status:N.Disabled,label:"No rollouts yet"};let i=!1,o=null;switch(e){case le.Gateway:i=a?.rolloutInProgress??!1,o=a?.lastRolloutAt??null;break;case le.Node:i=t?.rolloutInProgress??!1,o=t?.lastRolloutAt??null;break;default:return s}return i?{status:P.Info,label:"Rollout in progress",rightIcon:J,useSecondaryTone:!0}:o?{status:N.Disabled,label:`Last Rollout: ${l(o)}`}:s})(y,C,h,b),[C,h,y,b]),D=l(()=>((e,a,t,l)=>{let s=l?P.Info:N.Unknown,i=l?"Loading":z.Unknown,o=l?"Fetching data...":de(z.Unknown);switch(e){case le.Gateway:s=a?.status?d(a?.status):s,i=a?.status??i,o=a?.status?de(a.status):o;break;case le.Node:s=t?.status?d(t?.status):s,i=t?.status??i,o=t?.status?de(t.status):o}return{status:s,title:i,description:o}})(y,C,h,p),[C,h,y,p]),M=l(()=>((e,a,t,l)=>{switch(e){case le.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 le.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]),S=l(()=>(y===le.Gateway?C?.manifestYAML:h?.manifestYAML)??"",[C,h,y]),V=l(()=>y===le.Gateway?w:x,[w,x,y]);return e.createElement(T,null,e.createElement(oe,{isLoading:p,selectedTab:y,setSelectedTab:k,onClickDownloadDiagnose:void 0,onClickRefresh:$}),e.createElement(re,{icon:Q,title:I,badge:A,statusCard:D,textCards:M,yaml:S}),e.createElement(te,{isLoading:p,tableRowsMaxHeight:i,pods:V,getExtendedPodInfo:g}))};export{ce as PipelineCollectors};
|